Stephen Hines | 176edba | 2014-12-01 14:53:08 -0800 | [diff] [blame] | 1 | // This file tests that -fprofile-sample-use enables location tracking |
| 2 | // generation in the same way that -Rpass does. The sample profiler needs |
| 3 | // to associate line locations in the profile to the code, so it needs the |
| 4 | // frontend to emit source location annotations. |
| 5 | |
| 6 | // RUN: %clang_cc1 %s -fprofile-sample-use=%S/Inputs/profile-sample-use-loc-tracking.prof -emit-llvm -o - 2>/dev/null | FileCheck %s |
| 7 | |
| 8 | // -fprofile-sample-use should produce source location annotations, exclusively |
| 9 | // (just like -gmlt). |
| 10 | // CHECK: , !dbg ! |
| 11 | // CHECK-NOT: DW_TAG_base_type |
| 12 | |
| 13 | // But llvm.dbg.cu should be missing (to prevent writing debug info to |
| 14 | // the final output). |
| 15 | // CHECK-NOT: !llvm.dbg.cu = !{ |
| 16 | |
| 17 | int bar(int j) { |
| 18 | return (j + j - 2) * (j - 2) * j; |
| 19 | } |