]> granicus.if.org Git - clang/commitdiff
Fix opt-remark with hotness testcase for sample-based PGO
authorAdam Nemet <anemet@apple.com>
Fri, 1 Dec 2017 19:59:42 +0000 (19:59 +0000)
committerAdam Nemet <anemet@apple.com>
Fri, 1 Dec 2017 19:59:42 +0000 (19:59 +0000)
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

test/Frontend/Inputs/optimization-remark-with-hotness-sample.proftext
test/Frontend/optimization-remark-with-hotness.c

index 730dc4a0d5b1853f3ca60b4045b46db76f88de61..0eef9bdc012c4e6dd337faf7219b24625210cf48 100644 (file)
@@ -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
 
index 06e1b8af3632396d222bb41c37fd918bc4e2ebcc..ca9d020cb51cb9b9d5d0c2945ce0826e9d03ae82 100644 (file)
@@ -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;
 }