aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2009-11-30 00:38:56 +0000
committerNick Lewycky <nicholas@mxc.ca>2009-11-30 00:38:56 +0000
commitf215dece88649838a64b0d7740184713c487cf54 (patch)
tree193758fb4a6e08686f869ff36462140f28f72561
parent0425dc773b82135ec8b6e5e6a5140c06de86c6ce (diff)
downloadexternal_llvm-f215dece88649838a64b0d7740184713c487cf54.zip
external_llvm-f215dece88649838a64b0d7740184713c487cf54.tar.gz
external_llvm-f215dece88649838a64b0d7740184713c487cf54.tar.bz2
Commit r90099 made LLVM simplify one of these constant expressions a little
more. Update the syntax we're checking for and filecheckize it too. This will fix the selfhost buildbots but will 'break' the others (sigh) because they're still linked against older LLVM which is emitting less optimized IR. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90104 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/FrontendC/pr4349.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/test/FrontendC/pr4349.c b/test/FrontendC/pr4349.c
index 890482e..652ef10 100644
--- a/test/FrontendC/pr4349.c
+++ b/test/FrontendC/pr4349.c
@@ -1,9 +1,4 @@
-// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep svars2 | grep {\\\[2 x \\\[2 x i8\\\]\\\]}
-// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep svars2 | grep {, i\[\[:digit:\]\]\\+ 1)} | count 1
-// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep svars3 | grep {\\\[2 x i16\\\]}
-// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep svars3 | grep {, i\[\[:digit:\]\]\\+ 1)} | count 1
-// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep svars4 | grep {\\\[2 x \\\[2 x i8\\\]\\\]} | count 1
-// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep svars4 | grep {, i\[\[:digit:\]\]\\+ 1, i\[\[:digit:\]\]\\+ 1)} | count 1
+// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | FileCheck %s
// PR 4349
union reg
@@ -21,18 +16,22 @@ struct svar
{
void *ptr;
};
+// CHECK: @svars1 = global [1 x %struct.svar] [%struct.svar { i8* bitcast (%struct.cpu* @cpu to i8*) }]
struct svar svars1[] =
{
{ &((cpu.pc).w[0]) }
};
+// CHECK: @svars2 = global [1 x %struct.svar] [%struct.svar { i8* getelementptr ([2 x i8]* bitcast (%struct.cpu* @cpu to [2 x i8]*), i32 0, i32 1) }]
struct svar svars2[] =
{
{ &((cpu.pc).b[0][1]) }
};
+// CHECK: @svars3 = global [1 x %struct.svar] [%struct.svar { i8* bitcast (i16* getelementptr ([2 x i16]* bitcast (%struct.cpu* @cpu to [2 x i16]*), i32 0, i32 1) to i8*) }]
struct svar svars3[] =
{
{ &((cpu.pc).w[1]) }
};
+// CHECK: @svars4 = global [1 x %struct.svar] [%struct.svar { i8* getelementptr ([2 x [2 x i8]]* bitcast (%struct.cpu* @cpu to [2 x [2 x i8]]*), i32 0, i32 1, i32 1) }]
struct svar svars4[] =
{
{ &((cpu.pc).b[1][1]) }