// 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:     -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:     -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();
}
