[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / PowerPC / load-v4i8-improved.ll
blob9af36ae811c565750069782b13f5c314ee48c4b0
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -verify-machineinstrs -mcpu=pwr8 -mtriple=powerpc64le-unknown-linux-gnu < %s \
3 ; RUN:   -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names | FileCheck --check-prefix=CHECK-LE \
4 ; RUN:   -implicit-check-not vmrg -implicit-check-not=vperm %s
5 ; RUN: llc -verify-machineinstrs -mcpu=pwr8 -mtriple=powerpc64-unknown-linux-gnu < %s \
6 ; RUN:   -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names | FileCheck \
7 ; RUN:   -implicit-check-not vmrg -implicit-check-not=vperm %s
8 ; RUN: llc -verify-machineinstrs -mcpu=pwr8 -mtriple=powerpc64-ibm-aix-xcoff < %s \
9 ; RUN:   -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names | FileCheck \
10 ; RUN:   -implicit-check-not vmrg -implicit-check-not=vperm %s
11 ; RUN: llc -verify-machineinstrs -mcpu=pwr8 -mtriple=powerpc-ibm-aix-xcoff < %s \
12 ; RUN:   -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names | FileCheck \
13 ; RUN:   --check-prefix=CHECK-AIX-32 -implicit-check-not vmrg \
14 ; RUN:   -implicit-check-not=vperm %s
16 define <16 x i8> @test(ptr %s, ptr %t) {
17 ; CHECK-LE-LABEL: test:
18 ; CHECK-LE:       # %bb.0: # %entry
19 ; CHECK-LE-NEXT:    lfiwzx f0, 0, r3
20 ; CHECK-LE-NEXT:    xxspltw v2, vs0, 1
21 ; CHECK-LE-NEXT:    blr
23 ; CHECK-LABEL: test:
24 ; CHECK:       # %bb.0: # %entry
25 ; CHECK-NEXT:    lfiwzx f0, 0, r3
26 ; CHECK-NEXT:    xxspltw v2, vs0, 1
27 ; CHECK-NEXT:    blr
29 ; CHECK-AIX-32-LABEL: test:
30 ; CHECK-AIX-32:       # %bb.0: # %entry
31 ; CHECK-AIX-32-NEXT:    lfiwzx f0, 0, r3
32 ; CHECK-AIX-32-NEXT:    xxspltw v2, vs0, 1
33 ; CHECK-AIX-32-NEXT:    blr
35 entry:
36   %0 = load <4 x i8>, ptr %s, align 4
37   %1 = shufflevector <4 x i8> %0, <4 x i8> undef, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
38   ret <16 x i8> %1