[X86] combineTargetShuffle - commute VPERMV3 shuffles so any load is on the RHS
[llvm-project.git] / llvm / test / CodeGen / SystemZ / vec-rem.ll
blob6f5da959c5ea8bc49c3b855631c1dacfd0d7afe0
1 ; Verify that we do not create illegal scalar urems after type legalization.
3 ; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z13
5 define <16 x i8> @main(i16 %arg) {
6 bb:
7   %tmp6 = insertelement <16 x i16> undef, i16 %arg, i32 0
8   %tmp7 = shufflevector <16 x i16> %tmp6, <16 x i16> undef, <16 x i32> zeroinitializer
9   %tmp8 = insertelement <16 x i8> <i8 undef, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>, i8 undef, i32 0
10   %tmp11 = urem <16 x i16> %tmp7, <i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265, i16 29265>
11   %tmp12 = trunc <16 x i16> %tmp11 to <16 x i8>
12   ret <16 x i8> %tmp12