summaryrefslogtreecommitdiff
path: root/test/Driver/arm-alignment.c
diff options
context:
space:
mode:
authorRenato Golin <renato.golin@linaro.org>2013-08-28 23:56:07 +0000
committerRenato Golin <renato.golin@linaro.org>2013-08-28 23:56:07 +0000
commitb69f9e0ab44e67ae4a36ab28e4e185078f2346ee (patch)
tree2ac5e3103d04712d21103c75f6aba44739e472a9 /test/Driver/arm-alignment.c
parent9d57b8dea3b139dc2e2976ffccef50c74ac03873 (diff)
downloadclang-b69f9e0ab44e67ae4a36ab28e4e185078f2346ee.tar.gz
use the last passed -munaligned-access / -mno-unaligned-access
Passing inconsistent munaligned-access / mno-unaligned-access flags, intentionally resulted in a warning and the flag no-unaligned-access being used. Gcc does, at least in practice, use the last flag in such a case. This patch updates clang behaviour accordingly; use the last flag or base alignment behaviour on the target (which llvm will do if no flag is explicitly passed) Patch by Jeroen Hofstee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189542 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Driver/arm-alignment.c')
-rw-r--r--test/Driver/arm-alignment.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/Driver/arm-alignment.c b/test/Driver/arm-alignment.c
index 024c46be74..dad66ba589 100644
--- a/test/Driver/arm-alignment.c
+++ b/test/Driver/arm-alignment.c
@@ -1,9 +1,25 @@
// RUN: %clang -target arm-none-gnueeabi -munaligned-access -### %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-UNALIGNED < %t %s
+// RUN: %clang -target arm-none-gnueeabi -mstrict-align -munaligned-access -### %s 2> %t
+// RUN: FileCheck --check-prefix=CHECK-UNALIGNED < %t %s
+
+// RUN: %clang -target arm-none-gnueeabi -mno-unaligned-access -munaligned-access -### %s 2> %t
+// RUN: FileCheck --check-prefix=CHECK-UNALIGNED < %t %s
+
// CHECK-UNALIGNED: "-backend-option" "-arm-no-strict-align"
+
// RUN: %clang -target arm-none-gnueeabi -mno-unaligned-access -### %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-ALIGNED < %t %s
+// RUN: %clang -target arm-none-gnueeabi -mstrict-align -### %s 2> %t
+// RUN: FileCheck --check-prefix=CHECK-ALIGNED < %t %s
+
+// RUN: %clang -target arm-none-gnueabi -munaligned-access -mno-unaligned-access -### %s 2> %t
+// RUN: FileCheck --check-prefix=CHECK-ALIGNED < %t %s
+
+// RUN: %clang -target arm-none-gnueabi -munaligned-access -mstrict-align -### %s 2> %t
+// RUN: FileCheck --check-prefix=CHECK-ALIGNED < %t %s
+
// CHECK-ALIGNED: "-backend-option" "-arm-strict-align"