Davide Italiano | 6cb6f99 | 2017-02-12 05:05:35 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s >%t.bc |
| 2 | |
Teresa Johnson | b77ab09 | 2018-05-04 23:59:34 +0000 | [diff] [blame] | 3 | ; Check pass remarks emitted to YAML file |
Davide Italiano | 6cb6f99 | 2017-02-12 05:05:35 +0000 | [diff] [blame] | 4 | ; RUN: rm -f %t.yaml |
Peter Collingbourne | 7faa60c | 2017-04-11 18:12:00 +0000 | [diff] [blame] | 5 | ; RUN: llvm-lto2 run -pass-remarks-output=%t.yaml \ |
Davide Italiano | 6cb6f99 | 2017-02-12 05:05:35 +0000 | [diff] [blame] | 6 | ; RUN: -pass-remarks-with-hotness \ |
| 7 | ; RUN: -r %t.bc,tinkywinky,p \ |
| 8 | ; RUN: -r %t.bc,patatino,px \ |
| 9 | ; RUN: -r %t.bc,main,px -o %t.o %t.bc |
| 10 | ; RUN: cat %t.yaml | FileCheck %s -check-prefix=YAML |
| 11 | |
Teresa Johnson | b77ab09 | 2018-05-04 23:59:34 +0000 | [diff] [blame] | 12 | ; Check pass remarks emitted to stderr |
| 13 | ; RUN: llvm-lto2 run -pass-remarks=inline \ |
| 14 | ; RUN: -pass-remarks-with-hotness \ |
| 15 | ; RUN: -r %t.bc,tinkywinky,p \ |
| 16 | ; RUN: -r %t.bc,patatino,px \ |
| 17 | ; RUN: -r %t.bc,main,px -o %t.o %t.bc 2>&1 | FileCheck %s |
| 18 | |
Davide Italiano | 6cb6f99 | 2017-02-12 05:05:35 +0000 | [diff] [blame] | 19 | ; YAML: --- !Passed |
| 20 | ; YAML-NEXT: Pass: inline |
| 21 | ; YAML-NEXT: Name: Inlined |
| 22 | ; YAML-NEXT: Function: main |
| 23 | ; YAML-NEXT: Hotness: 300 |
| 24 | ; YAML-NEXT: Args: |
| 25 | ; YAML-NEXT: - Callee: tinkywinky |
| 26 | ; YAML-NEXT: - String: ' inlined into ' |
| 27 | ; YAML-NEXT: - Caller: main |
David Bolvansky | c0aa4b7 | 2018-08-05 14:53:08 +0000 | [diff] [blame] | 28 | ; YAML-NEXT: - String: ' with ' |
| 29 | ; YAML-NEXT: - String: '(cost=' |
Sam Elliott | e604b56 | 2017-08-21 16:45:47 +0000 | [diff] [blame] | 30 | ; YAML-NEXT: - Cost: '-15000' |
David Bolvansky | c0aa4b7 | 2018-08-05 14:53:08 +0000 | [diff] [blame] | 31 | ; YAML-NEXT: - String: ', threshold=' |
Sam Elliott | e604b56 | 2017-08-21 16:45:47 +0000 | [diff] [blame] | 32 | ; YAML-NEXT: - Threshold: '337' |
| 33 | ; YAML-NEXT: - String: ')' |
Davide Italiano | 6cb6f99 | 2017-02-12 05:05:35 +0000 | [diff] [blame] | 34 | ; YAML-NEXT: ... |
| 35 | |
David Bolvansky | c0aa4b7 | 2018-08-05 14:53:08 +0000 | [diff] [blame] | 36 | ; CHECK: tinkywinky inlined into main with (cost=-15000, threshold=337) (hotness: 300) |
Teresa Johnson | b77ab09 | 2018-05-04 23:59:34 +0000 | [diff] [blame] | 37 | |
Davide Italiano | 6cb6f99 | 2017-02-12 05:05:35 +0000 | [diff] [blame] | 38 | target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" |
| 39 | target triple = "x86_64-scei-ps4" |
| 40 | |
| 41 | declare i32 @patatino() |
| 42 | |
| 43 | define i32 @tinkywinky() { |
| 44 | %a = call i32 @patatino() |
| 45 | ret i32 %a |
| 46 | } |
| 47 | |
| 48 | define i32 @main() !prof !0 { |
| 49 | %i = call i32 @tinkywinky() |
| 50 | ret i32 %i |
| 51 | } |
| 52 | |
| 53 | !0 = !{!"function_entry_count", i64 300} |