35 lines
1.2 KiB
C++
35 lines
1.2 KiB
C++
|
// Without hotness threshold, print both hot and cold remarks.
|
||
|
// RUN: %clang_cc1 -triple x86_64-linux %s -emit-llvm-only -O3 \
|
||
|
// RUN: -fprofile-sample-use=%S/Inputs/remarks-hotness.prof \
|
||
|
// RUN: -Rpass=inline -Rpass-analysis=inline -Rpass-missed=inline \
|
||
|
// RUN: -fexperimental-new-pass-manager -fdiagnostics-show-hotness 2>&1 \
|
||
|
// RUN: | FileCheck -check-prefix=REMARKS %s
|
||
|
|
||
|
// With auto hotness threshold, only print hot remarks.
|
||
|
// RUN: %clang_cc1 -triple x86_64-linux %s -emit-llvm-only -O3 \
|
||
|
// RUN: -fprofile-sample-use=%S/Inputs/remarks-hotness.prof \
|
||
|
// RUN: -Rpass=inline -Rpass-analysis=inline -Rpass-missed=inline \
|
||
|
// RUN: -fexperimental-new-pass-manager -fdiagnostics-show-hotness \
|
||
|
// RUN: -fdiagnostics-hotness-threshold=auto 2>&1 \
|
||
|
// RUN: | FileCheck -check-prefix=HOT_CALL %s
|
||
|
|
||
|
int callee1() {
|
||
|
return 1;
|
||
|
}
|
||
|
|
||
|
__attribute__((noinline)) int callee2() {
|
||
|
return 2;
|
||
|
}
|
||
|
|
||
|
// REMARKS: _Z7callee1v inlined into _Z7caller1v
|
||
|
// HOT_CALL: _Z7callee1v inlined into _Z7caller1v
|
||
|
int caller1() {
|
||
|
return callee1();
|
||
|
}
|
||
|
|
||
|
// REMARKS: _Z7callee2v not inlined into _Z7caller2v
|
||
|
// HOT_CALL-NOT: _Z7callee2v not inlined into _Z7caller2v
|
||
|
int caller2() {
|
||
|
return callee2();
|
||
|
}
|