@@ -446,17 +446,16 @@ define void @callee_need_to_spill_fp_exec_to_memory() #2 {
446
446
; WAVE64-NEXT: .cfi_undefined 60
447
447
; WAVE64-NEXT: .cfi_undefined 61
448
448
; WAVE64-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
449
- ; WAVE64-NEXT: s_mov_b32 s4, s33
449
+ ; WAVE64-NEXT: s_mov_b32 s40, s33
450
+ ; WAVE64-NEXT: .cfi_register 65, 72
450
451
; WAVE64-NEXT: s_mov_b32 s33, s32
451
- ; WAVE64-NEXT: s_xor_saveexec_b64 s[6:7 ], -1
452
+ ; WAVE64-NEXT: s_xor_saveexec_b64 s[4:5 ], -1
452
453
; WAVE64-NEXT: buffer_store_dword v39, off, s[0:3], s33 offset:192 ; 4-byte Folded Spill
453
454
; WAVE64-NEXT: .cfi_offset 2599, 12288
454
- ; WAVE64-NEXT: s_mov_b64 exec, s[6:7 ]
455
+ ; WAVE64-NEXT: s_mov_b64 exec, s[4:5 ]
455
456
; WAVE64-NEXT: v_writelane_b32 v39, exec_lo, 32
456
457
; WAVE64-NEXT: v_writelane_b32 v39, exec_hi, 33
457
458
; WAVE64-NEXT: .cfi_llvm_vector_registers 17, 2599, 32, 32, 2599, 33, 32
458
- ; WAVE64-NEXT: v_writelane_b32 v39, s4, 34
459
- ; WAVE64-NEXT: .cfi_llvm_vector_registers 65, 2599, 34, 32
460
459
; WAVE64-NEXT: .cfi_def_cfa_register 65
461
460
; WAVE64-NEXT: s_addk_i32 s32, 0x3200
462
461
; WAVE64-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:188 ; 4-byte Folded Spill
@@ -706,12 +705,11 @@ define void @callee_need_to_spill_fp_exec_to_memory() #2 {
706
705
; WAVE64-NEXT: v_readlane_b32 s35, v39, 1
707
706
; WAVE64-NEXT: v_readlane_b32 s34, v39, 0
708
707
; WAVE64-NEXT: s_mov_b32 s32, s33
709
- ; WAVE64-NEXT: v_readlane_b32 s4, v39, 34
710
- ; WAVE64-NEXT: s_xor_saveexec_b64 s[6:7], -1
708
+ ; WAVE64-NEXT: s_xor_saveexec_b64 s[4:5], -1
711
709
; WAVE64-NEXT: buffer_load_dword v39, off, s[0:3], s33 offset:192 ; 4-byte Folded Reload
712
- ; WAVE64-NEXT: s_mov_b64 exec, s[6:7 ]
710
+ ; WAVE64-NEXT: s_mov_b64 exec, s[4:5 ]
713
711
; WAVE64-NEXT: .cfi_def_cfa_register 64
714
- ; WAVE64-NEXT: s_mov_b32 s33, s4
712
+ ; WAVE64-NEXT: s_mov_b32 s33, s40
715
713
; WAVE64-NEXT: s_waitcnt vmcnt(0)
716
714
; WAVE64-NEXT: s_setpc_b64 s[30:31]
717
715
;
@@ -830,21 +828,19 @@ define void @callee_need_to_spill_fp_exec_to_memory() #2 {
830
828
; WAVE32-NEXT: .cfi_undefined 60
831
829
; WAVE32-NEXT: .cfi_undefined 61
832
830
; WAVE32-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
833
- ; WAVE32-NEXT: s_mov_b32 s4, s33
831
+ ; WAVE32-NEXT: s_mov_b32 s40, s33
832
+ ; WAVE32-NEXT: .cfi_register 65, 72
834
833
; WAVE32-NEXT: s_mov_b32 s33, s32
835
- ; WAVE32-NEXT: s_xor_saveexec_b32 s5 , -1
834
+ ; WAVE32-NEXT: s_xor_saveexec_b32 s4 , -1
836
835
; WAVE32-NEXT: buffer_store_dword v39, off, s[0:3], s33 offset:192 ; 4-byte Folded Spill
837
836
; WAVE32-NEXT: .cfi_offset 1575, 6144
838
837
; WAVE32-NEXT: s_waitcnt_depctr 0xffe3
839
- ; WAVE32-NEXT: s_mov_b32 exec_lo, s5
838
+ ; WAVE32-NEXT: s_mov_b32 exec_lo, s4
840
839
; WAVE32-NEXT: v_mov_b32_e32 v0, exec_lo
841
840
; WAVE32-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:196 ; 4-byte Folded Spill
842
841
; WAVE32-NEXT: .cfi_offset 1, 6272
843
- ; WAVE32-NEXT: v_mov_b32_e32 v0, s4
844
- ; WAVE32-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:200 ; 4-byte Folded Spill
845
- ; WAVE32-NEXT: .cfi_offset 65, 6400
846
842
; WAVE32-NEXT: .cfi_def_cfa_register 65
847
- ; WAVE32-NEXT: s_addk_i32 s32, 0x1a00
843
+ ; WAVE32-NEXT: s_addk_i32 s32, 0x1980
848
844
; WAVE32-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:188 ; 4-byte Folded Spill
849
845
; WAVE32-NEXT: .cfi_llvm_vector_offset 1576, 32, 1, 32, 6016
850
846
; WAVE32-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:184 ; 4-byte Folded Spill
@@ -1011,7 +1007,7 @@ define void @callee_need_to_spill_fp_exec_to_memory() #2 {
1011
1007
; WAVE32-NEXT: ;;#ASMSTART
1012
1008
; WAVE32-NEXT: ; clobber all VGPRs except v39
1013
1009
; WAVE32-NEXT: ;;#ASMEND
1014
- ; WAVE32-NEXT: s_clause 0x30
1010
+ ; WAVE32-NEXT: s_clause 0x2f
1015
1011
; WAVE32-NEXT: buffer_load_dword v127, off, s[0:3], s33
1016
1012
; WAVE32-NEXT: buffer_load_dword v126, off, s[0:3], s33 offset:4
1017
1013
; WAVE32-NEXT: buffer_load_dword v125, off, s[0:3], s33 offset:8
@@ -1060,7 +1056,6 @@ define void @callee_need_to_spill_fp_exec_to_memory() #2 {
1060
1056
; WAVE32-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:180
1061
1057
; WAVE32-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:184
1062
1058
; WAVE32-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:188
1063
- ; WAVE32-NEXT: buffer_load_dword v0, off, s[0:3], s33 offset:200
1064
1059
; WAVE32-NEXT: v_readlane_b32 s97, v39, 31
1065
1060
; WAVE32-NEXT: v_readlane_b32 s96, v39, 30
1066
1061
; WAVE32-NEXT: v_readlane_b32 s87, v39, 29
@@ -1094,14 +1089,12 @@ define void @callee_need_to_spill_fp_exec_to_memory() #2 {
1094
1089
; WAVE32-NEXT: v_readlane_b32 s35, v39, 1
1095
1090
; WAVE32-NEXT: v_readlane_b32 s34, v39, 0
1096
1091
; WAVE32-NEXT: s_mov_b32 s32, s33
1097
- ; WAVE32-NEXT: s_waitcnt vmcnt(0)
1098
- ; WAVE32-NEXT: v_readfirstlane_b32 s4, v0
1099
- ; WAVE32-NEXT: s_xor_saveexec_b32 s5, -1
1092
+ ; WAVE32-NEXT: s_xor_saveexec_b32 s4, -1
1100
1093
; WAVE32-NEXT: buffer_load_dword v39, off, s[0:3], s33 offset:192 ; 4-byte Folded Reload
1101
1094
; WAVE32-NEXT: s_waitcnt_depctr 0xffe3
1102
- ; WAVE32-NEXT: s_mov_b32 exec_lo, s5
1095
+ ; WAVE32-NEXT: s_mov_b32 exec_lo, s4
1103
1096
; WAVE32-NEXT: .cfi_def_cfa_register 64
1104
- ; WAVE32-NEXT: s_mov_b32 s33, s4
1097
+ ; WAVE32-NEXT: s_mov_b32 s33, s40
1105
1098
; WAVE32-NEXT: s_waitcnt vmcnt(0)
1106
1099
; WAVE32-NEXT: s_setpc_b64 s[30:31]
1107
1100
call void asm sideeffect "; clobber nonpreserved and 32 CSR SGPRs" ,
0 commit comments