1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/test/tools/llvm-opt-report/func-dm.test
Hal Finkel 274ef1457a [llvm-opt-report] Fix context-sensitive lines where nothing happened
Don't print a line multiple times, each for different inlining contexts, if
nothing happened in any context. This prevents situations like this:

 [[
  > main:
 65     |       if ((i * ni + j) % 20 == 0) fprintf
  > print_array:
 65     |       if ((i * ni + j) % 20 == 0) fprintf
 ]]

which could happen if different optimizations were missed in different inlining
contexts.

llvm-svn: 291361
2017-01-07 20:21:17 +00:00

18 lines
524 B
Plaintext

RUN: llvm-opt-report -r %p %p/Inputs/dm.yaml | FileCheck -strict-whitespace %s
; CHECK: < {{.*[/\]}}dm.c
; CHECK-NEXT: 1 | void bar(void);
; CHECK-NEXT: 2 | void foo(int n) {
; CHECK-NEXT: 3 | if (n) { bar(); } else { while (1) {} }
; CHECK-NEXT: 4 | }
; CHECK-NEXT: 5 |
; CHECK-NEXT: 6 | void quack(void) {
; CHECK-NEXT: 7 I | foo(0);
; CHECK-NEXT: 8 | }
; CHECK-NEXT: 9 |
; CHECK-NEXT: 10 | void quack2(void) {
; CHECK-NEXT: 11 I | foo(4);
; CHECK-NEXT: 12 | }
; CHECK-NEXT: 13 |