@@ -11,9 +11,9 @@ declare <1024 x i1> @llvm.ppc.mma.dmxvi8gerx4(<256 x i1>, <16 x i8>)
1111define void @test_dmxvi8gerx4 (ptr %vpp , ptr %vcp , ptr %resp ) {
1212; CHECK-LABEL: test_dmxvi8gerx4:
1313; CHECK: # %bb.0: # %entry
14- ; CHECK-NEXT: lxv v3, 0(r3)
15- ; CHECK-NEXT: lxv vs0, 0(r4)
1614; CHECK-NEXT: lxv v2, 16(r3)
15+ ; CHECK-NEXT: lxv vs0, 0(r4)
16+ ; CHECK-NEXT: lxv v3, 0(r3)
1717; CHECK-NEXT: dmxvi8gerx4 dmr0, vsp34, vs0
1818; CHECK-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
1919; CHECK-NEXT: stxvp vsp34, 96(r5)
@@ -25,9 +25,9 @@ define void @test_dmxvi8gerx4(ptr %vpp, ptr %vcp, ptr %resp) {
2525;
2626; CHECK-BE-LABEL: test_dmxvi8gerx4:
2727; CHECK-BE: # %bb.0: # %entry
28- ; CHECK-BE-NEXT: lxv v3, 16(r3)
29- ; CHECK-BE-NEXT: lxv vs0, 0(r4)
3028; CHECK-BE-NEXT: lxv v2, 0(r3)
29+ ; CHECK-BE-NEXT: lxv vs0, 0(r4)
30+ ; CHECK-BE-NEXT: lxv v3, 16(r3)
3131; CHECK-BE-NEXT: dmxvi8gerx4 dmr0, vsp34, vs0
3232; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
3333; CHECK-BE-NEXT: stxvp vsp36, 96(r5)
@@ -55,9 +55,9 @@ define void @test_dmxvi8gerx4pp(ptr %vop, ptr %vpp, ptr %vcp, ptr %resp) {
5555; CHECK-NEXT: lxvp vsp34, 64(r3)
5656; CHECK-NEXT: lxvp vsp36, 96(r3)
5757; CHECK-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
58- ; CHECK-NEXT: lxv v3, 0(r4)
59- ; CHECK-NEXT: lxv vs0, 0(r5)
6058; CHECK-NEXT: lxv v2, 16(r4)
59+ ; CHECK-NEXT: lxv vs0, 0(r5)
60+ ; CHECK-NEXT: lxv v3, 0(r4)
6161; CHECK-NEXT: dmxvi8gerx4pp dmr0, vsp34, vs0
6262; CHECK-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
6363; CHECK-NEXT: stxvp vsp34, 96(r6)
@@ -69,23 +69,23 @@ define void @test_dmxvi8gerx4pp(ptr %vop, ptr %vpp, ptr %vcp, ptr %resp) {
6969;
7070; CHECK-BE-LABEL: test_dmxvi8gerx4pp:
7171; CHECK-BE: # %bb.0: # %entry
72- ; CHECK-BE-NEXT: lxvp vsp34, 96(r3)
73- ; CHECK-BE-NEXT: lxvp vsp36, 64(r3)
74- ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc_hi0, vsp36, vsp34, 1
75- ; CHECK-BE-NEXT: lxvp vsp34, 32(r3)
76- ; CHECK-BE-NEXT: lxvp vsp36, 0(r3)
77- ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
78- ; CHECK-BE-NEXT: lxv v3, 16 (r4)
79- ; CHECK-BE-NEXT: lxv vs0, 0(r5)
80- ; CHECK-BE-NEXT: lxv v2, 0 (r4)
81- ; CHECK-BE-NEXT: dmxvi8gerx4pp dmr0, vsp34, vs0
82- ; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
83- ; CHECK-BE-NEXT: stxvp vsp36, 96(r6)
84- ; CHECK-BE-NEXT: stxvp vsp34, 64(r6)
85- ; CHECK-BE-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
86- ; CHECK-BE-NEXT: stxvp vsp36, 32(r6)
87- ; CHECK-BE-NEXT: stxvp vsp34, 0(r6)
88- ; CHECK-BE-NEXT: blr
72+ ; CHECK-BE-NEXT: lxvp vsp34, 96(r3)
73+ ; CHECK-BE-NEXT: lxvp vsp36, 64(r3)
74+ ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc_hi0, vsp36, vsp34, 1
75+ ; CHECK-BE-NEXT: lxvp vsp34, 32(r3)
76+ ; CHECK-BE-NEXT: lxvp vsp36, 0(r3)
77+ ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
78+ ; CHECK-BE-NEXT: lxv v2, 0 (r4)
79+ ; CHECK-BE-NEXT: lxv vs0, 0(r5)
80+ ; CHECK-BE-NEXT: lxv v3, 16 (r4)
81+ ; CHECK-BE-NEXT: dmxvi8gerx4pp dmr0, vsp34, vs0
82+ ; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
83+ ; CHECK-BE-NEXT: stxvp vsp36, 96(r6)
84+ ; CHECK-BE-NEXT: stxvp vsp34, 64(r6)
85+ ; CHECK-BE-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
86+ ; CHECK-BE-NEXT: stxvp vsp36, 32(r6)
87+ ; CHECK-BE-NEXT: stxvp vsp34, 0(r6)
88+ ; CHECK-BE-NEXT: blr
8989entry:
9090 %v.dmr = load <1024 x i1 >, ptr %vop , align 64
9191 %v1 = load <256 x i1 >, ptr %vpp , align 32
@@ -106,9 +106,9 @@ define void @test_dmxvi8gerx4spp(ptr %vop, ptr %vpp, ptr %vcp, ptr %resp) {
106106; CHECK-NEXT: lxvp vsp34, 64(r3)
107107; CHECK-NEXT: lxvp vsp36, 96(r3)
108108; CHECK-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
109- ; CHECK-NEXT: lxv v3, 0(r4)
110- ; CHECK-NEXT: lxv vs0, 0(r5)
111109; CHECK-NEXT: lxv v2, 16(r4)
110+ ; CHECK-NEXT: lxv vs0, 0(r5)
111+ ; CHECK-NEXT: lxv v3, 0(r4)
112112; CHECK-NEXT: dmxvi8gerx4spp dmr0, vsp34, vs0
113113; CHECK-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
114114; CHECK-NEXT: stxvp vsp34, 96(r6)
@@ -120,23 +120,23 @@ define void @test_dmxvi8gerx4spp(ptr %vop, ptr %vpp, ptr %vcp, ptr %resp) {
120120;
121121; CHECK-BE-LABEL: test_dmxvi8gerx4spp:
122122; CHECK-BE: # %bb.0: # %entry
123- ; CHECK-BE-NEXT: lxvp vsp34, 96(r3)
124- ; CHECK-BE-NEXT: lxvp vsp36, 64(r3)
125- ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc_hi0, vsp36, vsp34, 1
126- ; CHECK-BE-NEXT: lxvp vsp34, 32(r3)
127- ; CHECK-BE-NEXT: lxvp vsp36, 0(r3)
128- ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
129- ; CHECK-BE-NEXT: lxv v3, 16 (r4)
130- ; CHECK-BE-NEXT: lxv vs0, 0(r5)
131- ; CHECK-BE-NEXT: lxv v2, 0 (r4)
132- ; CHECK-BE-NEXT: dmxvi8gerx4spp dmr0, vsp34, vs0
133- ; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
134- ; CHECK-BE-NEXT: stxvp vsp36, 96(r6)
135- ; CHECK-BE-NEXT: stxvp vsp34, 64(r6)
136- ; CHECK-BE-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
137- ; CHECK-BE-NEXT: stxvp vsp36, 32(r6)
138- ; CHECK-BE-NEXT: stxvp vsp34, 0(r6)
139- ; CHECK-BE-NEXT: blr
123+ ; CHECK-BE-NEXT: lxvp vsp34, 96(r3)
124+ ; CHECK-BE-NEXT: lxvp vsp36, 64(r3)
125+ ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc_hi0, vsp36, vsp34, 1
126+ ; CHECK-BE-NEXT: lxvp vsp34, 32(r3)
127+ ; CHECK-BE-NEXT: lxvp vsp36, 0(r3)
128+ ; CHECK-BE-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
129+ ; CHECK-BE-NEXT: lxv v2, 0 (r4)
130+ ; CHECK-BE-NEXT: lxv vs0, 0(r5)
131+ ; CHECK-BE-NEXT: lxv v3, 16 (r4)
132+ ; CHECK-BE-NEXT: dmxvi8gerx4spp dmr0, vsp34, vs0
133+ ; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
134+ ; CHECK-BE-NEXT: stxvp vsp36, 96(r6)
135+ ; CHECK-BE-NEXT: stxvp vsp34, 64(r6)
136+ ; CHECK-BE-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
137+ ; CHECK-BE-NEXT: stxvp vsp36, 32(r6)
138+ ; CHECK-BE-NEXT: stxvp vsp34, 0(r6)
139+ ; CHECK-BE-NEXT: blr
140140entry:
141141 %v.dmr = load <1024 x i1 >, ptr %vop , align 64
142142 %v1 = load <256 x i1 >, ptr %vpp , align 32
@@ -157,9 +157,9 @@ define void @test_pmdmxvi8gerx4pp(ptr %vop, ptr %vpp, ptr %vcp, ptr %resp) {
157157; CHECK-NEXT: lxvp vsp34, 64(r3)
158158; CHECK-NEXT: lxvp vsp36, 96(r3)
159159; CHECK-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
160- ; CHECK-NEXT: lxv v3, 0(r4)
161- ; CHECK-NEXT: lxv vs0, 0(r5)
162160; CHECK-NEXT: lxv v2, 16(r4)
161+ ; CHECK-NEXT: lxv vs0, 0(r5)
162+ ; CHECK-NEXT: lxv v3, 0(r4)
163163; CHECK-NEXT: pmdmxvi8gerx4pp dmr0, vsp34, vs0, 42, 7, 9
164164; CHECK-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
165165; CHECK-NEXT: stxvp vsp34, 96(r6)
@@ -177,9 +177,9 @@ define void @test_pmdmxvi8gerx4pp(ptr %vop, ptr %vpp, ptr %vcp, ptr %resp) {
177177; CHECK-BE-NEXT: lxvp vsp34, 32(r3)
178178; CHECK-BE-NEXT: lxvp vsp36, 0(r3)
179179; CHECK-BE-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
180- ; CHECK-BE-NEXT: lxv v3, 16(r4)
181- ; CHECK-BE-NEXT: lxv vs0, 0(r5)
182180; CHECK-BE-NEXT: lxv v2, 0(r4)
181+ ; CHECK-BE-NEXT: lxv vs0, 0(r5)
182+ ; CHECK-BE-NEXT: lxv v3, 16(r4)
183183; CHECK-BE-NEXT: pmdmxvi8gerx4pp dmr0, vsp34, vs0, 42, 7, 9
184184; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
185185; CHECK-BE-NEXT: stxvp vsp36, 96(r6)
@@ -202,9 +202,9 @@ declare <1024 x i1> @llvm.ppc.mma.pmdmxvi8gerx4(<256 x i1>, <16 x i8>, i32, i32,
202202define void @test_pmdmxvi8gerx4 (ptr %vpp , ptr %vcp , ptr %resp ) {
203203; CHECK-LABEL: test_pmdmxvi8gerx4:
204204; CHECK: # %bb.0: # %entry
205- ; CHECK-NEXT: lxv v3, 0(r3)
206- ; CHECK-NEXT: lxv vs0, 0(r4)
207205; CHECK-NEXT: lxv v2, 16(r3)
206+ ; CHECK-NEXT: lxv vs0, 0(r4)
207+ ; CHECK-NEXT: lxv v3, 0(r3)
208208; CHECK-NEXT: pmdmxvi8gerx4 dmr0, vsp34, vs0, 55, 5, 10
209209; CHECK-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
210210; CHECK-NEXT: stxvp vsp34, 96(r5)
@@ -216,17 +216,17 @@ define void @test_pmdmxvi8gerx4(ptr %vpp, ptr %vcp, ptr %resp) {
216216;
217217; CHECK-BE-LABEL: test_pmdmxvi8gerx4:
218218; CHECK-BE: # %bb.0: # %entry
219- ; CHECK-BE-NEXT: lxv v3, 16 (r3)
220- ; CHECK-BE-NEXT: lxv vs0, 0(r4)
221- ; CHECK-BE-NEXT: lxv v2, 0 (r3)
222- ; CHECK-BE-NEXT: pmdmxvi8gerx4 dmr0, vsp34, vs0, 55, 5, 10
223- ; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
224- ; CHECK-BE-NEXT: stxvp vsp36, 96(r5)
225- ; CHECK-BE-NEXT: stxvp vsp34, 64(r5)
226- ; CHECK-BE-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
227- ; CHECK-BE-NEXT: stxvp vsp36, 32(r5)
228- ; CHECK-BE-NEXT: stxvp vsp34, 0(r5)
229- ; CHECK-BE-NEXT: blr
219+ ; CHECK-BE-NEXT: lxv v2, 0 (r3)
220+ ; CHECK-BE-NEXT: lxv vs0, 0(r4)
221+ ; CHECK-BE-NEXT: lxv v3, 16 (r3)
222+ ; CHECK-BE-NEXT: pmdmxvi8gerx4 dmr0, vsp34, vs0, 55, 5, 10
223+ ; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
224+ ; CHECK-BE-NEXT: stxvp vsp36, 96(r5)
225+ ; CHECK-BE-NEXT: stxvp vsp34, 64(r5)
226+ ; CHECK-BE-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
227+ ; CHECK-BE-NEXT: stxvp vsp36, 32(r5)
228+ ; CHECK-BE-NEXT: stxvp vsp34, 0(r5)
229+ ; CHECK-BE-NEXT: blr
230230entry:
231231 %v1 = load <256 x i1 >, ptr %vpp , align 32
232232 %v2 = load <16 x i8 >, ptr %vcp , align 32
@@ -246,9 +246,9 @@ define dso_local void @test_pmdmxvi8gerx4spp(ptr %vop, ptr %vpp, ptr %vcp, ptr %
246246; CHECK-NEXT: lxvp vsp34, 64(r3)
247247; CHECK-NEXT: lxvp vsp36, 96(r3)
248248; CHECK-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
249- ; CHECK-NEXT: lxv v3, 0(r4)
250- ; CHECK-NEXT: lxv vs0, 0(r5)
251249; CHECK-NEXT: lxv v2, 16(r4)
250+ ; CHECK-NEXT: lxv vs0, 0(r5)
251+ ; CHECK-NEXT: lxv v3, 0(r4)
252252; CHECK-NEXT: pmdmxvi8gerx4spp dmr0, vsp34, vs0, 100, 6, 12
253253; CHECK-NEXT: dmxxextfdmr512 wacc0, vsp34, vsp36, 0
254254; CHECK-NEXT: stxvp vsp34, 96(r6)
@@ -266,9 +266,9 @@ define dso_local void @test_pmdmxvi8gerx4spp(ptr %vop, ptr %vpp, ptr %vcp, ptr %
266266; CHECK-BE-NEXT: lxvp vsp34, 32(r3)
267267; CHECK-BE-NEXT: lxvp vsp36, 0(r3)
268268; CHECK-BE-NEXT: dmxxinstfdmr512 wacc0, vsp36, vsp34, 0
269- ; CHECK-BE-NEXT: lxv v3, 16(r4)
270- ; CHECK-BE-NEXT: lxv vs0, 0(r5)
271269; CHECK-BE-NEXT: lxv v2, 0(r4)
270+ ; CHECK-BE-NEXT: lxv vs0, 0(r5)
271+ ; CHECK-BE-NEXT: lxv v3, 16(r4)
272272; CHECK-BE-NEXT: pmdmxvi8gerx4spp dmr0, vsp34, vs0, 100, 6, 12
273273; CHECK-BE-NEXT: dmxxextfdmr512 wacc_hi0, vsp34, vsp36, 1
274274; CHECK-BE-NEXT: stxvp vsp36, 96(r6)
0 commit comments