mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-16 16:37:30 +00:00
7845b7dd45
The exit-on-error flag in the ARM test is necessary in order to avoid an unreachable in the DAGTypeLegalizer, when trying to expand a physical register. We can also avoid this situation by introducing a bitcast early on, where the invalid scalar-to-vector conversion is detected. We also add a test for PowerPC, which goes through a similar code path in the SelectionDAGBuilder. Fixes PR27765. Differential Revision: http://reviews.llvm.org/D21061 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272644 91177308-0d34-0410-b5e6-96231b3b80d8
15 lines
623 B
LLVM
15 lines
623 B
LLVM
; RUN: not llc -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr8a -mattr=+altivec %s -o - 2>&1 | FileCheck %s
|
|
|
|
define hidden void @f(i32 %x) {
|
|
; CHECK: scalar-to-vector conversion failed, possible invalid constraint for vector type
|
|
tail call void asm sideeffect "nop", "{v1}"(i32 %x) nounwind
|
|
|
|
; CHECK: scalar-to-vector conversion failed, possible invalid constraint for vector type
|
|
tail call void asm sideeffect "nop", "{vsl1}"(i32 %x) nounwind
|
|
|
|
; CHECK: scalar-to-vector conversion failed, possible invalid constraint for vector type
|
|
tail call void asm sideeffect "nop", "{vsh1}"(i32 %x) nounwind
|
|
|
|
ret void
|
|
}
|