diff options
| author | Dale Johannesen <dalej@apple.com> | 2010-08-19 00:09:07 +0000 |
|---|---|---|
| committer | Dale Johannesen <dalej@apple.com> | 2010-08-19 00:09:07 +0000 |
| commit | 8d5f0208f2a2c407159223bc77d7c1870a5aba79 (patch) | |
| tree | 5ade449613c6d9d91845283cc8725ce1f9c89f93 /llvm/test/FrontendC | |
| parent | 768d3b510cf516773769bd81e1b571e6fce6e430 (diff) | |
| download | bcm5719-llvm-8d5f0208f2a2c407159223bc77d7c1870a5aba79.tar.gz bcm5719-llvm-8d5f0208f2a2c407159223bc77d7c1870a5aba79.zip | |
Testcase for llvm-gcc checkin 111482.
llvm-svn: 111483
Diffstat (limited to 'llvm/test/FrontendC')
| -rw-r--r-- | llvm/test/FrontendC/misaligned-param.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/test/FrontendC/misaligned-param.c b/llvm/test/FrontendC/misaligned-param.c new file mode 100644 index 00000000000..022dcaaa4af --- /dev/null +++ b/llvm/test/FrontendC/misaligned-param.c @@ -0,0 +1,15 @@ +// RUN: %llvmgcc %s -m32 -S -o - | FileCheck %s +// Misaligned parameter must be memcpy'd to correctly aligned temporary. +// XFAIL: * +// XTARGET: x86,i386,i686,darwin + +struct s { int x; long double y; }; +long double foo(struct s x, int i, struct s y) { +// CHECK: foo +// CHECK: %x_addr = alloca %struct.s, align 16 +// CHECK: %y_addr = alloca %struct.s, align 16 +// CHECK: memcpy +// CHECK: memcpy +// CHECK: bar + return bar(&x, &y); +} |

