mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01:00
6fa4110be7
When processing inline asm that contains errors, make sure we can recover gracefully by creating an UNDEF SDValue for the inline asm statement before returning from SelectionDAGBuilder::visitInlineAsm. This is necessary for consumers that don't exit on the first error that is emitted (e.g. clang) and that would assert later on. Fixes PR24071. Patch by Diana Picus. llvm-svn: 269811
12 lines
372 B
LLVM
12 lines
372 B
LLVM
; RUN: not llc -march=arm64 < %s 2> %t
|
|
; RUN: FileCheck --check-prefix=CHECK-ERRORS < %t %s
|
|
|
|
; Check for at least one invalid constant.
|
|
; CHECK-ERRORS: error: invalid operand for inline asm constraint 'J'
|
|
|
|
define i32 @constraint_J(i32 %i, i32 %j) nounwind ssp {
|
|
entry:
|
|
%0 = tail call i32 asm sideeffect "sub $0, $1, $2", "=r,r,J"(i32 %i, i32 2) nounwind
|
|
ret i32 %0
|
|
}
|