llvm/test/Assembler/inline-asm-clobber.ll
Akira Hatanaka cbbae7f41d [inline asm] Add a check in InlineAsm::ConstraintInfo::Parse to make sure '{'
follows '~' in a clobber constraint string.

Previously llc would hit an llvm_unreachable when compiling an inline-asm
instruction with malformed constraint string "~x{21}". This commit enables
LLParser to catch the error earlier and print a more helpful diagnostic.

rdar://problem/14206559


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217288 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-05 22:30:32 +00:00

11 lines
266 B
LLVM

; RUN: not llvm-as <%s 2>&1 | FileCheck %s
; "~x{21}" is not a valid clobber constraint.
; CHECK: invalid type for inline asm constraint string
define void @foo() nounwind {
call void asm sideeffect "mov x0, #42", "~{x0},~{x19},~x{21}"() nounwind
ret void
}