summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/bool_test.c
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2012-11-13 02:05:15 +0000
committerEli Friedman <eli.friedman@gmail.com>2012-11-13 02:05:15 +0000
commitb369f449245720eda2f31d11ac25f49b7fee43ec (patch)
treef6e3ee869ce6450e8ebad5cdf5199d65fc4a9096 /clang/test/CodeGen/bool_test.c
parent4f10a3e9f058bb8fdcfc3799a1939d1391b96de3 (diff)
downloadbcm5719-llvm-b369f449245720eda2f31d11ac25f49b7fee43ec.tar.gz
bcm5719-llvm-b369f449245720eda2f31d11ac25f49b7fee43ec.zip
Fix IR generation for bool on PPC (and any other target where bool is not 8 bits in memory).
PR11777. llvm-svn: 167802
Diffstat (limited to 'clang/test/CodeGen/bool_test.c')
-rw-r--r--clang/test/CodeGen/bool_test.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/clang/test/CodeGen/bool_test.c b/clang/test/CodeGen/bool_test.c
index 715f8467b58..83d83307715 100644
--- a/clang/test/CodeGen/bool_test.c
+++ b/clang/test/CodeGen/bool_test.c
@@ -1,6 +1,18 @@
// REQUIRES: ppc32-registered-target
-// RUN: %clang_cc1 -triple powerpc-apple-darwin -emit-llvm -o - %s| FileCheck -check-prefix=DARWINPPC-CHECK %s
+// RUN: %clang_cc1 -triple powerpc-apple-macosx10.4.0 -emit-llvm -o - %s -O2 -disable-llvm-optzns | FileCheck %s
int boolsize = sizeof(_Bool);
-//DARWINPPC-CHECK: boolsize = global i32 4, align 4
+// CHECK: boolsize = global i32 4, align 4
+void f(_Bool *x, _Bool *y) {
+ *x = *y;
+}
+
+// CHECK: define void @f(
+// CHECK: [[FROMMEM:%.*]] = load i32* %
+// CHECK: [[BOOLVAL:%.*]] = trunc i32 [[FROMMEM]] to i1
+// CHECK: [[TOMEM:%.*]] = zext i1 [[BOOLVAL]] to i32
+// CHECK: store i32 [[TOMEM]]
+// CHECK: ret void
+
+// CHECK: metadata !{i32 0, i32 2}
OpenPOWER on IntegriCloud