diff options
author | Sanjay Patel <spatel@rotateright.com> | 2015-09-09 22:39:06 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2015-09-09 22:39:06 +0000 |
commit | daf34e9d851aa520a187cfd602b97d3d3c1faa89 (patch) | |
tree | 828cd367995e247b2befcab84aa2c13dfd011be7 /clang/test/CodeGen/builtin-unpredictable.c | |
parent | 140038a4ee3f6870849d2d0de50bfb1f00e3ac5c (diff) | |
download | bcm5719-llvm-daf34e9d851aa520a187cfd602b97d3d3c1faa89.tar.gz bcm5719-llvm-daf34e9d851aa520a187cfd602b97d3d3c1faa89.zip |
convert builtin_unpredictable on a switch into metadata for LLVM
llvm-svn: 247203
Diffstat (limited to 'clang/test/CodeGen/builtin-unpredictable.c')
-rw-r--r-- | clang/test/CodeGen/builtin-unpredictable.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/clang/test/CodeGen/builtin-unpredictable.c b/clang/test/CodeGen/builtin-unpredictable.c index b06318e4c89..653f231cad2 100644 --- a/clang/test/CodeGen/builtin-unpredictable.c +++ b/clang/test/CodeGen/builtin-unpredictable.c @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm -o - %s -O1 | FileCheck %s +// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm -disable-llvm-optzns -o - %s -O1 | FileCheck %s // RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm -o - %s -O0 | FileCheck %s --check-prefix=CHECK_O0 // When optimizing, the builtin should be converted to metadata. @@ -11,7 +11,6 @@ void branch(int x) { // CHECK-NOT: builtin_unpredictable // CHECK: !unpredictable [[METADATA:.+]] -// CHECK: [[METADATA]] = !{} // CHECK_O0-NOT: builtin_unpredictable // CHECK_O0-NOT: !unpredictable @@ -20,8 +19,15 @@ void branch(int x) { foo (); } -// TODO: Add metadata for unpredictable switches. int unpredictable_switch(int x) { +// CHECK-LABEL: @unpredictable_switch( + +// CHECK-NOT: builtin_unpredictable +// CHECK: !unpredictable [[METADATA:.+]] + +// CHECK_O0-NOT: builtin_unpredictable +// CHECK_O0-NOT: !unpredictable + switch(__builtin_unpredictable(x)) { default: return 0; @@ -36,3 +42,5 @@ int unpredictable_switch(int x) { return 0; } +// CHECK: [[METADATA]] = !{} + |