summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/builtin-unpredictable.c
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2015-09-09 22:39:06 +0000
committerSanjay Patel <spatel@rotateright.com>2015-09-09 22:39:06 +0000
commitdaf34e9d851aa520a187cfd602b97d3d3c1faa89 (patch)
tree828cd367995e247b2befcab84aa2c13dfd011be7 /clang/test/CodeGen/builtin-unpredictable.c
parent140038a4ee3f6870849d2d0de50bfb1f00e3ac5c (diff)
downloadbcm5719-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.c14
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]] = !{}
+
OpenPOWER on IntegriCloud