diff options
author | Justin Bogner <mail@justinbogner.com> | 2014-03-11 06:49:34 +0000 |
---|---|---|
committer | Justin Bogner <mail@justinbogner.com> | 2014-03-11 06:49:34 +0000 |
commit | ffaa2330b9d51fa3705b779b55fa841b367c8bba (patch) | |
tree | d6b24cd9b8f31426ffe5af482d13e31071682bd0 /clang/test | |
parent | 0e18ed2ebaab77dbb13a71c2b70cdf74aaac8b0a (diff) | |
download | bcm5719-llvm-ffaa2330b9d51fa3705b779b55fa841b367c8bba.tar.gz bcm5719-llvm-ffaa2330b9d51fa3705b779b55fa841b367c8bba.zip |
test: Regenerate profile data for PGO tests
Some of this data had gotten out of date, so we weren't quite testing
what we thought we were. This also moves the outdated data test to its
own file to simplify regenerating the test data.
llvm-svn: 203546
Diffstat (limited to 'clang/test')
-rw-r--r-- | clang/test/Profile/Inputs/c-attributes.profdata | 27 | ||||
-rw-r--r-- | clang/test/Profile/Inputs/c-general.profdata | 10 | ||||
-rw-r--r-- | clang/test/Profile/Inputs/c-outdated-data.profdata | 8 | ||||
-rw-r--r-- | clang/test/Profile/Inputs/cxx-class.profdata | 25 | ||||
-rw-r--r-- | clang/test/Profile/Inputs/objc-general.profdata | 1 | ||||
-rw-r--r-- | clang/test/Profile/c-general.c | 17 | ||||
-rw-r--r-- | clang/test/Profile/c-outdated-data.c | 24 | ||||
-rw-r--r-- | clang/test/Profile/cxx-class.cpp | 2 |
8 files changed, 56 insertions, 58 deletions
diff --git a/clang/test/Profile/Inputs/c-attributes.profdata b/clang/test/Profile/Inputs/c-attributes.profdata index 0419b3b3bef..38decbd5568 100644 --- a/clang/test/Profile/Inputs/c-attributes.profdata +++ b/clang/test/Profile/Inputs/c-attributes.profdata @@ -1,39 +1,24 @@ -hot_100_percent 4 +hot_100_percent 2 100000 4999950000 -0 -0 -hot_40_percent 4 +hot_40_percent 2 40000 799980000 -0 -0 -normal_func 4 +normal_func 2 20000 199990000 -0 -0 -cold_func 4 +cold_func 2 500 124750 -0 -0 -main 13 +main 6 1 -100000 -0 0 +100000 40000 -0 -0 20000 -0 -0 500 -0 -0 diff --git a/clang/test/Profile/Inputs/c-general.profdata b/clang/test/Profile/Inputs/c-general.profdata index e87f78e6b56..083b8fe55b4 100644 --- a/clang/test/Profile/Inputs/c-general.profdata +++ b/clang/test/Profile/Inputs/c-general.profdata @@ -92,9 +92,6 @@ big_switch 17 2 2 -issue_with_one_counter 1 -0 - boolean_operators 8 1 100 @@ -122,13 +119,6 @@ do_fallthrough 4 2 8 -no_usable_data 5 -1 -1 -1 -1 -1 - main 1 1 diff --git a/clang/test/Profile/Inputs/c-outdated-data.profdata b/clang/test/Profile/Inputs/c-outdated-data.profdata new file mode 100644 index 00000000000..e1c51a6975d --- /dev/null +++ b/clang/test/Profile/Inputs/c-outdated-data.profdata @@ -0,0 +1,8 @@ +no_usable_data 3 +1 +0 +0 + +main 1 +1 + diff --git a/clang/test/Profile/Inputs/cxx-class.profdata b/clang/test/Profile/Inputs/cxx-class.profdata index 6605eb446c7..983ab551165 100644 --- a/clang/test/Profile/Inputs/cxx-class.profdata +++ b/clang/test/Profile/Inputs/cxx-class.profdata @@ -1,20 +1,27 @@ -_ZN6SimpleC2Ei 2 +_Z14simple_wrapperv 2 +1 100 -99 -_ZN6Simple6methodEv 2 -100 -99 +main 1 +1 + +_ZN6SimpleD1Ev 2 +0 +0 _ZN6SimpleD2Ev 2 100 99 -_ZN14simple_wrapperEv 4 -1 +_ZN6Simple6methodEv 2 100 +99 + +_ZN6SimpleC1Ei 2 0 0 -main 1 -1 +_ZN6SimpleC2Ei 2 +100 +99 + diff --git a/clang/test/Profile/Inputs/objc-general.profdata b/clang/test/Profile/Inputs/objc-general.profdata index da421583b81..06c9832b3c5 100644 --- a/clang/test/Profile/Inputs/objc-general.profdata +++ b/clang/test/Profile/Inputs/objc-general.profdata @@ -8,3 +8,4 @@ objc-general.m:+[A foreach:] 2 main 1 1 + diff --git a/clang/test/Profile/c-general.c b/clang/test/Profile/c-general.c index 43ebf511827..7945d8dfc80 100644 --- a/clang/test/Profile/c-general.c +++ b/clang/test/Profile/c-general.c @@ -11,7 +11,6 @@ // PGOGEN: @[[BSC:__llvm_pgo_ctr[0-9]*]] = private global [17 x i64] zeroinitializer // PGOGEN: @[[BOC:__llvm_pgo_ctr[0-9]*]] = private global [8 x i64] zeroinitializer // PGOGEN: @[[BLC:__llvm_pgo_ctr[0-9]*]] = private global [9 x i64] zeroinitializer -// PGOGEN: @[[NOC:__llvm_pgo_ctr[0-9]*]] = private global [2 x i64] zeroinitializer // PGOGEN: @[[MAC:__llvm_pgo_ctr[0-9]*]] = private global [1 x i64] zeroinitializer // PGOGEN: @[[STC:__llvm_pgo_ctr[0-9]*]] = private global [2 x i64] zeroinitializer @@ -426,21 +425,6 @@ void do_fallthrough() { } } -// PGOGEN-LABEL: @no_usable_data() -// PGOUSE-LABEL: @no_usable_data() -// PGOGEN: store {{.*}} @[[NOC]], i64 0, i64 0 -void no_usable_data() { - // The input data for PGOUSE is deliberately invalid for this function, so - // that we can test that we reject and ignore it properly. - int i = 0; - - // PGOGEN: store {{.*}} @[[NOC]], i64 0, i64 1 - if (i) {} - - // PGOGEN-NOT: store {{.*}} @[[NOC]], - // PGOUSE-NOT: br {{.*}} !prof ![0-9]+ -} - // PGOGEN-LABEL: @static_func() // PGOUSE-LABEL: @static_func() // PGOGEN: store {{.*}} @[[STC]], i64 0, i64 0 @@ -531,7 +515,6 @@ int main(int argc, const char *argv[]) { boolean_operators(); boolop_loops(); do_fallthrough(); - no_usable_data(); static_func(); return 0; } diff --git a/clang/test/Profile/c-outdated-data.c b/clang/test/Profile/c-outdated-data.c new file mode 100644 index 00000000000..fe5a5c75cca --- /dev/null +++ b/clang/test/Profile/c-outdated-data.c @@ -0,0 +1,24 @@ +// Test that outdated data is ignored. + +// RUN: %clang_cc1 -triple x86_64-apple-macosx10.9 -main-file-name c-outdated-data.c %s -o - -emit-llvm -fprofile-instr-use=%S/Inputs/c-outdated-data.profdata | FileCheck -check-prefix=PGOUSE %s + +// TODO: We should have a warning or a remark that tells us the profile data was +// discarded, rather than just checking that we fail to add metadata. + +// PGOUSE-LABEL: @no_usable_data() +void no_usable_data() { + int i = 0; + + if (i) {} + +#ifdef GENERATE_OUTDATED_DATA + if (i) {} +#endif + + // PGOUSE-NOT: br {{.*}} !prof ![0-9]+ +} + +int main(int argc, const char *argv[]) { + no_usable_data(); + return 0; +} diff --git a/clang/test/Profile/cxx-class.cpp b/clang/test/Profile/cxx-class.cpp index 5934a0adb7d..7432bc3ccee 100644 --- a/clang/test/Profile/cxx-class.cpp +++ b/clang/test/Profile/cxx-class.cpp @@ -69,7 +69,7 @@ void simple_wrapper() { // WRPUSE-NOT: br {{.*}} !prof ![0-9]+ // WRPUSE: ret } -// WRPUSE: ![[SW1]] = metadata !{metadata !"branch_weights", i32 100, i32 2} +// WRPUSE: ![[SW1]] = metadata !{metadata !"branch_weights", i32 101, i32 2} int main(int argc, const char *argv[]) { simple_wrapper(); |