summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorTanya Lattner <tonic@nondot.org>2009-08-31 06:21:04 +0000
committerTanya Lattner <tonic@nondot.org>2009-08-31 06:21:04 +0000
commit02ba489396a6ef879ac8419e7bb7e63b3e7f5e4b (patch)
tree28d1845eb936b51c5751a29261fa8fd8ebf9ed4b /test
parent36ddc978d930c58f15989e5150592d80ec9658b9 (diff)
Merge from mainline.
Fix a few tests to be -Asserts agnostic. - Ugh. fix a GCC type punning warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80546 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/blocks-seq.c22
-rw-r--r--test/CodeGen/x86_64-arguments.c12
-rw-r--r--test/CodeGenCXX/member-pointers-zero-init.cpp2
3 files changed, 20 insertions, 16 deletions
diff --git a/test/CodeGen/blocks-seq.c b/test/CodeGen/blocks-seq.c
index bda7e71f5f..eac2acd3dd 100644
--- a/test/CodeGen/blocks-seq.c
+++ b/test/CodeGen/blocks-seq.c
@@ -1,13 +1,15 @@
-// RUN: clang-cc -fblocks -triple x86_64-apple-darwin10 -emit-llvm -o %t %s &&
-// RUN: grep '%call = call i32 (...)\* @rhs()' %t | count 1 &&
-// If this fails, see about sliding %4, %5, %6 and %7...
-// RUN: grep '%forwarding1 = getelementptr inbounds %0\* %i, i32 0, i32 1' %t | count 1 &&
-// RUN: grep '%4 = bitcast i8\*\* %forwarding1 to %0\*\*' %t | count 1 &&
-// RUN: grep '%5 = load %0\*\* %4' %t | count 1 &&
-// RUN: grep '%call2 = call i32 (...)\* @rhs()' %t | count 1 &&
-// RUN: grep '%forwarding3 = getelementptr inbounds %0\* %i, i32 0, i32 1' %t | count 1 &&
-// RUN: grep '%6 = bitcast i8\*\* %forwarding3 to %0\*\*' %t | count 1 &&
-// RUN: grep '%7 = load %0\*\* %6' %t | count 1
+// FIXME: We forcibly strip the names so that the test doesn't vary between
+// builds with and without asserts. We need a better solution for this.
+
+// RUN: clang-cc -fblocks -triple x86_64-apple-darwin10 -emit-llvm-bc -o - %s | opt -strip | llvm-dis > %t &&
+// RUN: grep '%7 = call i32 (...)\* @rhs()' %t | count 1 &&
+// RUN: grep '%8 = getelementptr inbounds %0\* %1, i32 0, i32 1' %t | count 1 &&
+// RUN: grep '%9 = bitcast i8\*\* %8 to %0\*\*' %t | count 1 &&
+// RUN: grep '%10 = load %0\*\* %9' %t | count 1 &&
+// RUN: grep '%12 = call i32 (...)\* @rhs()' %t | count 1 &&
+// RUN: grep '%13 = getelementptr inbounds %0\* %1, i32 0, i32 1' %t | count 1 &&
+// RUN: grep '%14 = bitcast i8\*\* %13 to %0\*\*' %t | count 1 &&
+// RUN: grep '%15 = load %0\*\* %14' %t | count 1
int rhs();
diff --git a/test/CodeGen/x86_64-arguments.c b/test/CodeGen/x86_64-arguments.c
index 6a38cd3a08..19f9cdaa29 100644
--- a/test/CodeGen/x86_64-arguments.c
+++ b/test/CodeGen/x86_64-arguments.c
@@ -72,8 +72,9 @@ void f12_1(struct s12 a0) {}
// RUN: grep 'define void @f13(.struct.s13_0. noalias sret .agg.result, i32 .a, i32 .b, i32 .c, i32 .d, .struct.s13_1. byval .e, i32 .f)' %t &&
struct s13_0 { long long f0[3]; };
+struct s13_1 { long long f0[2]; };
struct s13_0 f13(int a, int b, int c, int d,
- struct s13_1 { long long f0[2]; } e, int f) { while (1) {} }
+ struct s13_1 e, int f) { while (1) {} }
// RUN: grep 'define void @f14(.*, i8 signext .X)' %t &&
void f14(int a, int b, int c, int d, int e, int f,
@@ -89,9 +90,10 @@ void f17(float a, float b, float c, float d, float e, float f, float g, float h,
long double X) {}
// Check for valid coercion.
-// RUN: grep '.1 = bitcast i64. .tmp to .struct.f18_s0.' %t &&
-// RUN: grep '.2 = load .struct.f18_s0. .1, align 1' %t &&
-// RUN: grep 'store .struct.f18_s0 .2, .struct.f18_s0. .f18_arg1' %t &&
-void f18(int a, struct f18_s0 { int f0; } f18_arg1) { while (1) {} }
+// RUN: grep '.. = bitcast i64. .* to .struct.f18_s0.' %t &&
+// RUN: grep '.. = load .struct.f18_s0. .., align 1' %t &&
+// RUN: grep 'store .struct.f18_s0 .., .struct.f18_s0. .f18_arg1' %t &&
+struct f18_s0 { int f0; };
+void f18(int a, struct f18_s0 f18_arg1) { while (1) {} }
// RUN: true
diff --git a/test/CodeGenCXX/member-pointers-zero-init.cpp b/test/CodeGenCXX/member-pointers-zero-init.cpp
index db7c71a0d4..482c077da6 100644
--- a/test/CodeGenCXX/member-pointers-zero-init.cpp
+++ b/test/CodeGenCXX/member-pointers-zero-init.cpp
@@ -14,7 +14,7 @@ int A::* aa[2];
int A::* aaa[2][2];
void f() {
- // RUN: grep "%.obool = icmp ne i64 %.mp, -1" %t
+ // RUN: grep "%.* = icmp ne i64 %.*, -1" %t
if (a) { }
// FIXME: This doesn't yet work