@@ -181,32 +181,32 @@ define void @combine_v16i8(ptr noundef align 16 %ptr1, ptr noundef align 16 %ptr
181181; ENABLED-NEXT: prmt.b32 %r5, %r4, 0, 0x7773U;
182182; ENABLED-NEXT: prmt.b32 %r6, %r4, 0, 0x7772U;
183183; ENABLED-NEXT: prmt.b32 %r7, %r4, 0, 0x7771U;
184- ; ENABLED-NEXT: prmt.b32 %r8, %r4, 0, 0x7770U;
185- ; ENABLED-NEXT: prmt.b32 %r9, %r3, 0, 0x7773U;
186- ; ENABLED-NEXT: prmt.b32 %r10, %r3, 0, 0x7772U;
187- ; ENABLED-NEXT: prmt.b32 %r11, %r3, 0, 0x7771U;
188- ; ENABLED-NEXT: prmt.b32 %r12, %r3, 0, 0x7770U;
189- ; ENABLED-NEXT: prmt.b32 %r13, %r2, 0, 0x7773U;
190- ; ENABLED-NEXT: prmt.b32 %r14, %r2, 0, 0x7772U;
191- ; ENABLED-NEXT: prmt.b32 %r15, %r2, 0, 0x7771U;
192- ; ENABLED-NEXT: prmt.b32 %r16, %r2, 0, 0x7770U;
193- ; ENABLED-NEXT: prmt.b32 %r17, %r1, 0, 0x7773U;
194- ; ENABLED-NEXT: prmt.b32 %r18, %r1, 0, 0x7772U;
195- ; ENABLED-NEXT: prmt.b32 %r19, %r1, 0, 0x7771U;
196- ; ENABLED-NEXT: prmt.b32 %r20, %r1, 0, 0x7770U;
184+ ; ENABLED-NEXT: prmt.b32 %r8, %r3, 0, 0x7773U;
185+ ; ENABLED-NEXT: prmt.b32 %r9, %r3, 0, 0x7772U;
186+ ; ENABLED-NEXT: prmt.b32 %r10, %r3, 0, 0x7771U;
187+ ; ENABLED-NEXT: prmt.b32 %r11, %r2, 0, 0x7773U;
188+ ; ENABLED-NEXT: prmt.b32 %r12, %r2, 0, 0x7772U;
189+ ; ENABLED-NEXT: prmt.b32 %r13, %r2, 0, 0x7771U;
190+ ; ENABLED-NEXT: prmt.b32 %r14, %r1, 0, 0x7773U;
191+ ; ENABLED-NEXT: prmt.b32 %r15, %r1, 0, 0x7772U;
192+ ; ENABLED-NEXT: prmt.b32 %r16, %r1, 0, 0x7771U;
197193; ENABLED-NEXT: ld.param.b64 %rd2, [combine_v16i8_param_1];
198- ; ENABLED-NEXT: add.s32 %r21, %r20, %r19;
199- ; ENABLED-NEXT: add.s32 %r22, %r21, %r18;
200- ; ENABLED-NEXT: add.s32 %r23, %r22, %r17;
201- ; ENABLED-NEXT: add.s32 %r24, %r23, %r16;
202- ; ENABLED-NEXT: add.s32 %r25, %r24, %r15;
203- ; ENABLED-NEXT: add.s32 %r26, %r25, %r14;
204- ; ENABLED-NEXT: add.s32 %r27, %r26, %r13;
205- ; ENABLED-NEXT: add.s32 %r28, %r27, %r12;
206- ; ENABLED-NEXT: add.s32 %r29, %r28, %r11;
207- ; ENABLED-NEXT: add.s32 %r30, %r29, %r10;
208- ; ENABLED-NEXT: add.s32 %r31, %r30, %r9;
209- ; ENABLED-NEXT: add.s32 %r32, %r31, %r8;
194+ ; ENABLED-NEXT: and.b32 %r17, %r1, 255;
195+ ; ENABLED-NEXT: and.b32 %r18, %r2, 255;
196+ ; ENABLED-NEXT: and.b32 %r19, %r3, 255;
197+ ; ENABLED-NEXT: and.b32 %r20, %r4, 255;
198+ ; ENABLED-NEXT: add.s32 %r21, %r17, %r16;
199+ ; ENABLED-NEXT: add.s32 %r22, %r21, %r15;
200+ ; ENABLED-NEXT: add.s32 %r23, %r22, %r14;
201+ ; ENABLED-NEXT: add.s32 %r24, %r23, %r18;
202+ ; ENABLED-NEXT: add.s32 %r25, %r24, %r13;
203+ ; ENABLED-NEXT: add.s32 %r26, %r25, %r12;
204+ ; ENABLED-NEXT: add.s32 %r27, %r26, %r11;
205+ ; ENABLED-NEXT: add.s32 %r28, %r27, %r19;
206+ ; ENABLED-NEXT: add.s32 %r29, %r28, %r10;
207+ ; ENABLED-NEXT: add.s32 %r30, %r29, %r9;
208+ ; ENABLED-NEXT: add.s32 %r31, %r30, %r8;
209+ ; ENABLED-NEXT: add.s32 %r32, %r31, %r20;
210210; ENABLED-NEXT: add.s32 %r33, %r32, %r7;
211211; ENABLED-NEXT: add.s32 %r34, %r33, %r6;
212212; ENABLED-NEXT: add.s32 %r35, %r34, %r5;
@@ -332,36 +332,36 @@ define void @combine_v16i8_unaligned(ptr noundef align 8 %ptr1, ptr noundef alig
332332; ENABLED-NEXT: prmt.b32 %r3, %r2, 0, 0x7773U;
333333; ENABLED-NEXT: prmt.b32 %r4, %r2, 0, 0x7772U;
334334; ENABLED-NEXT: prmt.b32 %r5, %r2, 0, 0x7771U;
335- ; ENABLED-NEXT: prmt.b32 %r6, %r2, 0, 0x7770U;
336- ; ENABLED-NEXT: prmt.b32 %r7, %r1, 0, 0x7773U;
337- ; ENABLED-NEXT: prmt.b32 %r8, %r1, 0, 0x7772U;
338- ; ENABLED-NEXT: prmt.b32 %r9, %r1, 0, 0x7771U;
339- ; ENABLED-NEXT: prmt.b32 %r10, %r1, 0, 0x7770U;
335+ ; ENABLED-NEXT: prmt.b32 %r6, %r1, 0, 0x7773U;
336+ ; ENABLED-NEXT: prmt.b32 %r7, %r1, 0, 0x7772U;
337+ ; ENABLED-NEXT: prmt.b32 %r8, %r1, 0, 0x7771U;
340338; ENABLED-NEXT: ld.param.b64 %rd2, [combine_v16i8_unaligned_param_1];
341- ; ENABLED-NEXT: ld.v2.b32 {%r11, %r12}, [%rd1+8];
342- ; ENABLED-NEXT: prmt.b32 %r13, %r12, 0, 0x7773U;
343- ; ENABLED-NEXT: prmt.b32 %r14, %r12, 0, 0x7772U;
344- ; ENABLED-NEXT: prmt.b32 %r15, %r12, 0, 0x7771U;
345- ; ENABLED-NEXT: prmt.b32 %r16, %r12, 0, 0x7770U;
346- ; ENABLED-NEXT: prmt.b32 %r17, %r11, 0, 0x7773U;
347- ; ENABLED-NEXT: prmt.b32 %r18, %r11, 0, 0x7772U;
348- ; ENABLED-NEXT: prmt.b32 %r19, %r11, 0, 0x7771U;
349- ; ENABLED-NEXT: prmt.b32 %r20, %r11, 0, 0x7770U;
350- ; ENABLED-NEXT: add.s32 %r21, %r10, %r9;
351- ; ENABLED-NEXT: add.s32 %r22, %r21, %r8;
352- ; ENABLED-NEXT: add.s32 %r23, %r22, %r7;
353- ; ENABLED-NEXT: add.s32 %r24, %r23, %r6;
339+ ; ENABLED-NEXT: ld.v2.b32 {%r9, %r10}, [%rd1+8];
340+ ; ENABLED-NEXT: prmt.b32 %r11, %r10, 0, 0x7773U;
341+ ; ENABLED-NEXT: prmt.b32 %r12, %r10, 0, 0x7772U;
342+ ; ENABLED-NEXT: prmt.b32 %r13, %r10, 0, 0x7771U;
343+ ; ENABLED-NEXT: prmt.b32 %r14, %r9, 0, 0x7773U;
344+ ; ENABLED-NEXT: prmt.b32 %r15, %r9, 0, 0x7772U;
345+ ; ENABLED-NEXT: prmt.b32 %r16, %r9, 0, 0x7771U;
346+ ; ENABLED-NEXT: and.b32 %r17, %r1, 255;
347+ ; ENABLED-NEXT: and.b32 %r18, %r2, 255;
348+ ; ENABLED-NEXT: and.b32 %r19, %r9, 255;
349+ ; ENABLED-NEXT: and.b32 %r20, %r10, 255;
350+ ; ENABLED-NEXT: add.s32 %r21, %r17, %r8;
351+ ; ENABLED-NEXT: add.s32 %r22, %r21, %r7;
352+ ; ENABLED-NEXT: add.s32 %r23, %r22, %r6;
353+ ; ENABLED-NEXT: add.s32 %r24, %r23, %r18;
354354; ENABLED-NEXT: add.s32 %r25, %r24, %r5;
355355; ENABLED-NEXT: add.s32 %r26, %r25, %r4;
356356; ENABLED-NEXT: add.s32 %r27, %r26, %r3;
357- ; ENABLED-NEXT: add.s32 %r28, %r27, %r20 ;
358- ; ENABLED-NEXT: add.s32 %r29, %r28, %r19 ;
359- ; ENABLED-NEXT: add.s32 %r30, %r29, %r18 ;
360- ; ENABLED-NEXT: add.s32 %r31, %r30, %r17 ;
361- ; ENABLED-NEXT: add.s32 %r32, %r31, %r16 ;
362- ; ENABLED-NEXT: add.s32 %r33, %r32, %r15 ;
363- ; ENABLED-NEXT: add.s32 %r34, %r33, %r14 ;
364- ; ENABLED-NEXT: add.s32 %r35, %r34, %r13 ;
357+ ; ENABLED-NEXT: add.s32 %r28, %r27, %r19 ;
358+ ; ENABLED-NEXT: add.s32 %r29, %r28, %r16 ;
359+ ; ENABLED-NEXT: add.s32 %r30, %r29, %r15 ;
360+ ; ENABLED-NEXT: add.s32 %r31, %r30, %r14 ;
361+ ; ENABLED-NEXT: add.s32 %r32, %r31, %r20 ;
362+ ; ENABLED-NEXT: add.s32 %r33, %r32, %r13 ;
363+ ; ENABLED-NEXT: add.s32 %r34, %r33, %r12 ;
364+ ; ENABLED-NEXT: add.s32 %r35, %r34, %r11 ;
365365; ENABLED-NEXT: st.b32 [%rd2], %r35;
366366; ENABLED-NEXT: ret;
367367;
0 commit comments