From 5bf93a364c902f64d9edaefe21cfd4c57d3309f9 Mon Sep 17 00:00:00 2001 From: Adam Nemet Date: Fri, 1 Dec 2017 19:59:42 +0000 Subject: [PATCH] Fix opt-remark with hotness testcase for sample-based PGO 1. Require hotness on all remark lines with -verify. 3. Fix the samplePGO file to actually produce hotness on each line. The second remark has hotness 60 rather 30 which I don't quite understand but testing this is strictly better than before. It also unblocks the commit of D40678. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@319577 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../optimization-remark-with-hotness-sample.proftext | 10 +++++----- test/Frontend/optimization-remark-with-hotness.c | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/test/Frontend/Inputs/optimization-remark-with-hotness-sample.proftext b/test/Frontend/Inputs/optimization-remark-with-hotness-sample.proftext index 730dc4a0d5..0eef9bdc01 100644 --- a/test/Frontend/Inputs/optimization-remark-with-hotness-sample.proftext +++ b/test/Frontend/Inputs/optimization-remark-with-hotness-sample.proftext @@ -1,7 +1,7 @@ -foo:0:0 - 0: 0 +foo:29:29 + 0: 29 bar:29:29 - 9: foo:0 -main:0:0 - 0: 0 bar:0 + 8: 29 foo:29 +main:29:1 + 3: 29 bar:29 diff --git a/test/Frontend/optimization-remark-with-hotness.c b/test/Frontend/optimization-remark-with-hotness.c index 06e1b8af36..ca9d020cb5 100644 --- a/test/Frontend/optimization-remark-with-hotness.c +++ b/test/Frontend/optimization-remark-with-hotness.c @@ -56,13 +56,13 @@ void bar(int x) { // THRESHOLD-NOT: hotness // NO_PGO: '-fdiagnostics-show-hotness' requires profile-guided optimization information // NO_PGO: '-fdiagnostics-hotness-threshold=' requires profile-guided optimization information - // expected-remark@+1 {{foo inlined into bar with cost=always}} + // expected-remark@+1 {{foo inlined into bar with cost=always (hotness:}} sum += foo(x, x - 2); } int main(int argc, const char *argv[]) { for (int i = 0; i < 30; i++) - // expected-remark@+1 {{bar not inlined into main because it should never be inlined}} + // expected-remark@+1 {{bar not inlined into main because it should never be inlined (cost=never) (hotness:}} bar(argc); return sum; } -- 2.50.1