diff options
author | Dale Johannesen <dalej@apple.com> | 2009-06-11 20:48:09 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2009-06-11 20:48:09 +0000 |
commit | 7512beb75147e357dc4870f42d1088a27f65d1d2 (patch) | |
tree | 47e08c5ed09a995a95227a4855d275aea9f0f2da /test | |
parent | e4261471bec1485cf9dbb3fa9a727d3ff8d3e0eb (diff) | |
download | external_llvm-7512beb75147e357dc4870f42d1088a27f65d1d2.zip external_llvm-7512beb75147e357dc4870f42d1088a27f65d1d2.tar.gz external_llvm-7512beb75147e357dc4870f42d1088a27f65d1d2.tar.bz2 |
Test for rev 73205 (PR 4349)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73206 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/FrontendC/pr4349.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test/FrontendC/pr4349.c b/test/FrontendC/pr4349.c new file mode 100644 index 0000000..10ba996 --- /dev/null +++ b/test/FrontendC/pr4349.c @@ -0,0 +1,39 @@ +// 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 {i32 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 {i32 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 {i32 1, i32 1} | count 1 +// PR 4349 + +union reg +{ + unsigned char b[2][2]; + unsigned short w[2]; + unsigned int d; +}; +struct cpu +{ + union reg pc; +}; +extern struct cpu cpu; +struct svar +{ + void *ptr; +}; +struct svar svars1[] = +{ + { &((cpu.pc).w[0]) } +}; +struct svar svars2[] = +{ + { &((cpu.pc).b[0][1]) } +}; +struct svar svars3[] = +{ + { &((cpu.pc).w[1]) } +}; +struct svar svars4[] = +{ + { &((cpu.pc).b[1][1]) } +}; |