[X86] combineTargetShuffle - commute VPERMV3 shuffles so any load is on the RHS
[llvm-project.git] / llvm / test / CodeGen / SystemZ / vec-move-22.ll
blobda9d068d2be9be99878f7f226e0b9938a0a2b063
1 ; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z13 | FileCheck %s
3 ; Test that a loaded value which is used both in a vector and scalar context
4 ; is not transformed to a vlrep + vlgvg.
6 ; CHECK-NOT: vlrep
8 define void @fun(i64 %arg, ptr %Addr, ptr %Dst) {
9   %tmp10 = load ptr, ptr %Addr
10   store i64 %arg, ptr %tmp10
11   %tmp12 = insertelement <2 x ptr> undef, ptr %tmp10, i32 0
12   %tmp13 = insertelement <2 x ptr> %tmp12, ptr %tmp10, i32 1
13   store <2 x ptr> %tmp13, ptr %Dst
14   ret void