diff options
| author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2013-04-18 18:32:48 +0000 |
|---|---|---|
| committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2013-04-18 18:32:48 +0000 |
| commit | b86ea8a29f7ef8f35f068ad4f4c290de84327f7c (patch) | |
| tree | 5676b8af37cac1df584c6aeb58850e9a76c54a27 /clang/test/CodeGen/pragma-pack-1.c | |
| parent | c62789f47e2c2736a3969851dbd00845b92b8445 (diff) | |
| download | bcm5719-llvm-b86ea8a29f7ef8f35f068ad4f4c290de84327f7c.tar.gz bcm5719-llvm-b86ea8a29f7ef8f35f068ad4f4c290de84327f7c.zip | |
some more tests for r179743.
llvm-svn: 179781
Diffstat (limited to 'clang/test/CodeGen/pragma-pack-1.c')
| -rw-r--r-- | clang/test/CodeGen/pragma-pack-1.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/clang/test/CodeGen/pragma-pack-1.c b/clang/test/CodeGen/pragma-pack-1.c index 06cbf4c16c0..2a71c8f79b3 100644 --- a/clang/test/CodeGen/pragma-pack-1.c +++ b/clang/test/CodeGen/pragma-pack-1.c @@ -24,10 +24,45 @@ struct S } d2; } ss; +struct S3 +{ + char a[3]; +#pragma pack(push, 2) + struct T3 + { + char b; + int c; + } d; +#pragma pack(pop) + struct T32 + { + char b; + int c; + } e; +} s3; + +struct S4 +{ + char a[3]; +#pragma align=packed + struct T4 + { + char b; + int c; + } d; + int e; +} s4; + // CHECK: [[struct_ref:%[a-zA-Z0-9_.]+]] = type <{ [[struct_ref]]* }> // CHECK: [[struct_S:%[a-zA-Z0-9_.]+]] = type { [3 x i8], [[struct_T:%[a-zA-Z0-9_.]+]], [[struct_T2:%[a-zA-Z0-9_.]+]] } // CHECK: [[struct_T]] = type <{ i8, i32 }> // CHECK: [[struct_T2]] = type { i8, i32 } +// CHECK: %struct.S3 = type <{ [3 x i8], i8, %struct.T3, [2 x i8], %struct.T32 }> +// CHECK: %struct.T3 = type <{ i8, i8, i32 }> +// CHECK: %struct.T32 = type { i8, i32 } +// CHECK: %struct.S4 = type { [3 x i8], %struct.T4, i32 } +// CHECK: %struct.T4 = type <{ i8, i32 }> + // CHECK: @refs = common global [[struct_ref]] // CHECK: @ss = common global [[struct_S]] |

