mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 11:42:57 +01:00
fe9adb9248
This patch corresponds to review: https://reviews.llvm.org/D23155 This patch removes the VSHRC register class (based on D20310) and adds exploitation of the Power9 sub-word integer loads into VSX registers as well as vector sign extensions. The new instructions are useful for a few purposes: Int to Fp conversions of 1 or 2-byte values loaded from memory Building vectors of 1 or 2-byte integers with values loaded from memory Storing individual 1 or 2-byte elements from integer vectors This patch implements all of those uses. llvm-svn: 283190
12 lines
466 B
LLVM
12 lines
466 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
|
|
|
|
ret void
|
|
}
|