@@ -153,7 +153,7 @@ define dso_local i32 @variadics2(i32 noundef %first, ...) {
153153; CHECK-PTX-NEXT: .reg .b64 %SPL;
154154; CHECK-PTX-NEXT: .reg .b16 %rs<6>;
155155; CHECK-PTX-NEXT: .reg .b32 %r<7>;
156- ; CHECK-PTX-NEXT: .reg .b64 %rd<11 >;
156+ ; CHECK-PTX-NEXT: .reg .b64 %rd<7 >;
157157; CHECK-PTX-EMPTY:
158158; CHECK-PTX-NEXT: // %bb.0: // %entry
159159; CHECK-PTX-NEXT: mov.u64 %SPL, __local_depot2;
@@ -163,24 +163,20 @@ define dso_local i32 @variadics2(i32 noundef %first, ...) {
163163; CHECK-PTX-NEXT: add.s64 %rd2, %rd1, 7;
164164; CHECK-PTX-NEXT: and.b64 %rd3, %rd2, -8;
165165; CHECK-PTX-NEXT: ld.u32 %r2, [%rd3];
166- ; CHECK-PTX-NEXT: or.b64 %rd4, %rd3, 4;
167- ; CHECK-PTX-NEXT: ld.s8 %r3, [%rd4];
168- ; CHECK-PTX-NEXT: or.b64 %rd5, %rd3, 5;
169- ; CHECK-PTX-NEXT: or.b64 %rd6, %rd3, 7;
170- ; CHECK-PTX-NEXT: ld.u8 %rs1, [%rd6];
166+ ; CHECK-PTX-NEXT: ld.s8 %r3, [%rd3+4];
167+ ; CHECK-PTX-NEXT: ld.u8 %rs1, [%rd3+7];
171168; CHECK-PTX-NEXT: st.u8 [%SP+2], %rs1;
172- ; CHECK-PTX-NEXT: ld.u8 %rs2, [%rd5];
173- ; CHECK-PTX-NEXT: or.b64 %rd7, %rd3, 6;
174- ; CHECK-PTX-NEXT: ld.u8 %rs3, [%rd7];
169+ ; CHECK-PTX-NEXT: ld.u8 %rs2, [%rd3+5];
170+ ; CHECK-PTX-NEXT: ld.u8 %rs3, [%rd3+6];
175171; CHECK-PTX-NEXT: shl.b16 %rs4, %rs3, 8;
176172; CHECK-PTX-NEXT: or.b16 %rs5, %rs4, %rs2;
177173; CHECK-PTX-NEXT: st.u16 [%SP], %rs5;
178- ; CHECK-PTX-NEXT: ld.u64 %rd8 , [%rd3+8];
174+ ; CHECK-PTX-NEXT: ld.u64 %rd4 , [%rd3+8];
179175; CHECK-PTX-NEXT: add.s32 %r4, %r1, %r2;
180176; CHECK-PTX-NEXT: add.s32 %r5, %r4, %r3;
181- ; CHECK-PTX-NEXT: cvt.u64.u32 %rd9 , %r5;
182- ; CHECK-PTX-NEXT: add.s64 %rd10 , %rd9 , %rd8 ;
183- ; CHECK-PTX-NEXT: cvt.u32.u64 %r6, %rd10 ;
177+ ; CHECK-PTX-NEXT: cvt.u64.u32 %rd5 , %r5;
178+ ; CHECK-PTX-NEXT: add.s64 %rd6 , %rd5 , %rd4 ;
179+ ; CHECK-PTX-NEXT: cvt.u32.u64 %r6, %rd6 ;
184180; CHECK-PTX-NEXT: st.param.b32 [func_retval0], %r6;
185181; CHECK-PTX-NEXT: ret;
186182entry:
@@ -219,7 +215,7 @@ define dso_local i32 @bar() {
219215; CHECK-PTX-NEXT: .reg .b64 %SPL;
220216; CHECK-PTX-NEXT: .reg .b16 %rs<10>;
221217; CHECK-PTX-NEXT: .reg .b32 %r<4>;
222- ; CHECK-PTX-NEXT: .reg .b64 %rd<8 >;
218+ ; CHECK-PTX-NEXT: .reg .b64 %rd<7 >;
223219; CHECK-PTX-EMPTY:
224220; CHECK-PTX-NEXT: // %bb.0: // %entry
225221; CHECK-PTX-NEXT: mov.u64 %SPL, __local_depot3;
@@ -240,17 +236,16 @@ define dso_local i32 @bar() {
240236; CHECK-PTX-NEXT: st.u16 [%SP], %rs8;
241237; CHECK-PTX-NEXT: mov.b32 %r1, 1;
242238; CHECK-PTX-NEXT: st.u32 [%SP+8], %r1;
243- ; CHECK-PTX-NEXT: add.u64 %rd5, %SP, 8;
244- ; CHECK-PTX-NEXT: or.b64 %rd6, %rd5, 4;
245239; CHECK-PTX-NEXT: mov.b16 %rs9, 1;
246- ; CHECK-PTX-NEXT: st.u8 [%rd6], %rs9;
247- ; CHECK-PTX-NEXT: mov.b64 %rd7, 1;
248- ; CHECK-PTX-NEXT: st.u64 [%SP+16], %rd7;
240+ ; CHECK-PTX-NEXT: st.u8 [%SP+12], %rs9;
241+ ; CHECK-PTX-NEXT: mov.b64 %rd5, 1;
242+ ; CHECK-PTX-NEXT: st.u64 [%SP+16], %rd5;
243+ ; CHECK-PTX-NEXT: add.u64 %rd6, %SP, 8;
249244; CHECK-PTX-NEXT: { // callseq 1, 0
250245; CHECK-PTX-NEXT: .param .b32 param0;
251246; CHECK-PTX-NEXT: st.param.b32 [param0], 1;
252247; CHECK-PTX-NEXT: .param .b64 param1;
253- ; CHECK-PTX-NEXT: st.param.b64 [param1], %rd5 ;
248+ ; CHECK-PTX-NEXT: st.param.b64 [param1], %rd6 ;
254249; CHECK-PTX-NEXT: .param .b32 retval0;
255250; CHECK-PTX-NEXT: call.uni (retval0),
256251; CHECK-PTX-NEXT: variadics2,
0 commit comments