diff options
| author | Eric Christopher <echristo@apple.com> | 2012-08-16 23:50:41 +0000 |
|---|---|---|
| committer | Eric Christopher <echristo@apple.com> | 2012-08-16 23:50:41 +0000 |
| commit | 9e49188a01806042704e7e9e768cfa26cab7b964 (patch) | |
| tree | 6c7ce9c11c3e7a3f8688f57c863e1b440a2fad44 | |
| parent | ae6b9d2de3294d0b233eeb0b53fcdd7359b5b6b3 (diff) | |
| download | bcm5719-llvm-9e49188a01806042704e7e9e768cfa26cab7b964.tar.gz bcm5719-llvm-9e49188a01806042704e7e9e768cfa26cab7b964.zip | |
Add a missing 'break' to ensure that we reject inline assembly
constraints we don't recognize.
llvm-svn: 162064
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 2 | ||||
| -rw-r--r-- | clang/test/Sema/arm-asm.c | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 883864fd9a1..769f777dc8f 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -3085,7 +3085,7 @@ public: TargetInfo::ConstraintInfo &Info) const { // FIXME: Check if this is complete switch (*Name) { - default: + default: break; case 'l': // r0-r7 case 'h': // r8-r15 case 'w': // VFP Floating point register single precision diff --git a/clang/test/Sema/arm-asm.c b/clang/test/Sema/arm-asm.c new file mode 100644 index 00000000000..3fc0eeb7543 --- /dev/null +++ b/clang/test/Sema/arm-asm.c @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 %s -triple armv7-apple-darwin -verify -fsyntax-only + +void f (void) { + int Val; + asm volatile ("lw (r1), %0[val]": "=&b"(Val)); // expected-error {{invalid output constraint '=&b' in asm}} + return; +} |

