aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLauro Ramos Venancio <lauro.venancio@gmail.com>2007-08-01 20:07:59 +0000
committerLauro Ramos Venancio <lauro.venancio@gmail.com>2007-08-01 20:07:59 +0000
commitdd487c159bb93639ce574ab2e5340be5cbf4a4d1 (patch)
treea021575ae2d63bdf1034c536a37959935676cc94
parentf3c13c82e34b8e90f1080cfe06c6f1328a2d44e1 (diff)
downloadexternal_llvm-dd487c159bb93639ce574ab2e5340be5cbf4a4d1.zip
external_llvm-dd487c159bb93639ce574ab2e5340be5cbf4a4d1.tar.gz
external_llvm-dd487c159bb93639ce574ab2e5340be5cbf4a4d1.tar.bz2
Add a test for the load/store alignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40687 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/CFrontend/2007-08-01-LoadStoreAlign.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/CFrontend/2007-08-01-LoadStoreAlign.c b/test/CFrontend/2007-08-01-LoadStoreAlign.c
new file mode 100644
index 0000000..3d5b1fb
--- /dev/null
+++ b/test/CFrontend/2007-08-01-LoadStoreAlign.c
@@ -0,0 +1,17 @@
+// RUN: %llvmgcc -O3 -S -o - -emit-llvm %s | grep -c {align 1} | grep 2
+// RUN: %llvmgcc -O3 -S -o - -emit-llvm %s | llvm-as | llc
+
+struct p {
+ char a;
+ int b;
+} __attribute__ ((packed));
+
+struct p t = { 1, 10 };
+struct p u;
+
+int main () {
+ int tmp = t.b;
+ u.b = tmp;
+ return tmp;
+
+}