mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-01 16:33:37 +01:00
570aa6f801
shuffle could be skipped. The check is invalid because the loop index i doesn't correspond to the element actually inserted. The correct check is already done a few lines earlier, for whether the element is already in the right spot, so this shouldn't have any effect on the codegen for code that was already correct. llvm-svn: 52486
11 lines
378 B
LLVM
11 lines
378 B
LLVM
; RUN: llvm-as < %s | llc -march=x86 -mcpu=i386 -mattr=+sse2 | grep pinsrw
|
|
|
|
; Test to make sure we actually insert the bottom element of the vector
|
|
define <8 x i16> @a(<8 x i16> %a) nounwind {
|
|
entry:
|
|
shufflevector <8 x i16> %a, <8 x i16> zeroinitializer, <8 x i32> < i32 0, i32 8, i32 8, i32 8, i32 8, i32 8, i32 8, i32 8 >
|
|
%add = add <8 x i16> %0, %a
|
|
ret <8 x i16> %add
|
|
}
|
|
|