blob: 36f347222d5f0dfff56166341fb88af729bc6c25 [file] [log] [blame]
Ehsan Amiria538b0f2016-08-03 18:17:35 +00001; RUN: llc -verify-machineinstrs -mcpu=pwr8 -mtriple=powerpc64le-unknown-linux-gnu < %s | FileCheck \
Nemanja Ivanovic44513e52016-07-05 09:22:29 +00002; RUN: -implicit-check-not vmrg -implicit-check-not=vperm %s
Ehsan Amiria538b0f2016-08-03 18:17:35 +00003; RUN: llc -verify-machineinstrs -mcpu=pwr8 -mtriple=powerpc64-unknown-linux-gnu < %s | FileCheck \
Nemanja Ivanovic11049f82016-10-04 06:59:23 +00004; RUN: -implicit-check-not vmrg -implicit-check-not=vperm %s
Nemanja Ivanovic44513e52016-07-05 09:22:29 +00005
6define <16 x i8> @test(i32* %s, i32* %t) {
7entry:
8 %0 = bitcast i32* %s to <4 x i8>*
9 %1 = load <4 x i8>, <4 x i8>* %0, align 4
10 %2 = shufflevector <4 x i8> %1, <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>
11 ret <16 x i8> %2
12; CHECK-LABEL: test
Nemanja Ivanovic11049f82016-10-04 06:59:23 +000013; CHECK: lxsiwax 34, 0, 3
14; CHECK: xxspltw 34, 34, 1
Nemanja Ivanovic44513e52016-07-05 09:22:29 +000015}