brintos

brintos / llvm-project-archived public Read only

0
0
Text · 29.8 KiB · 21455a9 Raw
866 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn--amdhsa -mcpu=gfx942 -verify-machineinstrs -run-pass peephole-opt -o - %s | FileCheck -check-prefixes=GCN,GFX942 %s3# RUN: llc -mtriple=amdgcn--amdhsa -mcpu=gfx1250 -run-pass peephole-opt -o - %s | FileCheck -check-prefixes=GCN,GFX1250 %s4 5---6name:            fold_simm_virtual7body:             |8  bb.0:9 10    ; GCN-LABEL: name: fold_simm_virtual11    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 012    ; GCN-NEXT: SI_RETURN_TO_EPILOG13    %0:sreg_32 = S_MOV_B32 014    %1:sreg_32 = COPY killed %015    SI_RETURN_TO_EPILOG16 17...18 19---20name:            fold_simm_physical21body:             |22  bb.0:23 24    ; GCN-LABEL: name: fold_simm_physical25    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 026    ; GCN-NEXT: $sgpr1 = S_MOV_B32 027    ; GCN-NEXT: SI_RETURN_TO_EPILOG28    %0:sreg_32 = S_MOV_B32 029    $sgpr1 = COPY killed %030    SI_RETURN_TO_EPILOG31 32...33 34---35name:            dont_fold_simm_scc36body:             |37  bb.0:38 39    ; GCN-LABEL: name: dont_fold_simm_scc40    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 041    ; GCN-NEXT: $scc = COPY killed [[S_MOV_B32_]]42    ; GCN-NEXT: SI_RETURN_TO_EPILOG43    %0:sreg_32 = S_MOV_B32 044    $scc = COPY killed %045    SI_RETURN_TO_EPILOG46 47...48 49---50name:            fold_simm_16_sub_to_lo51body:             |52  bb.0:53 54    ; GCN-LABEL: name: fold_simm_16_sub_to_lo55    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 204856    ; GCN-NEXT: [[COPY:%[0-9]+]]:sgpr_lo16 = COPY killed [[S_MOV_B32_]].lo1657    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[COPY]]58    %0:sreg_32 = S_MOV_B32 204859    %1:sgpr_lo16 = COPY killed %0.lo1660    SI_RETURN_TO_EPILOG %161 62...63 64---65name:            fold_simm_16_sub_to_phys66body:             |67  bb.0:68 69    ; GCN-LABEL: name: fold_simm_16_sub_to_phys70    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 204871    ; GCN-NEXT: $sgpr0 = S_MOV_B32 204872    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo1673    %0:sreg_32 = S_MOV_B32 204874    $sgpr0_lo16 = COPY killed %0.lo1675    SI_RETURN_TO_EPILOG $sgpr0_lo1676 77...78 79---80name:            fold_aimm_16_sub_to_phys81body:             |82  bb.0:83 84    ; GCN-LABEL: name: fold_aimm_16_sub_to_phys85    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 086    ; GCN-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 0, implicit $exec87    ; GCN-NEXT: SI_RETURN_TO_EPILOG $agpr0_lo1688    %0:sreg_32 = S_MOV_B32 089    $agpr0_lo16 = COPY killed %0.lo1690    SI_RETURN_TO_EPILOG $agpr0_lo1691 92...93 94---95name:            fold_vimm_16_sub_to_lo96body:             |97  bb.0:98 99    ; GCN-LABEL: name: fold_vimm_16_sub_to_lo100    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 2048101    ; GCN-NEXT: [[COPY:%[0-9]+]]:vgpr_16 = COPY killed [[S_MOV_B32_]].lo16102    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[COPY]]103    %0:sreg_32 = S_MOV_B32 2048104    %1:vgpr_16 = COPY killed %0.lo16105    SI_RETURN_TO_EPILOG %1106 107...108 109---110name:            fold_vimm_16_sub_to_phys111body:             |112  bb.0:113 114    ; GCN-LABEL: name: fold_vimm_16_sub_to_phys115    ; GCN: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 2048116    ; GCN-NEXT: $vgpr0_lo16 = COPY killed [[S_MOV_B32_]].lo16117    ; GCN-NEXT: SI_RETURN_TO_EPILOG $vgpr0_lo16118    %0:sreg_32 = S_MOV_B32 2048119    $vgpr0_lo16 = COPY killed %0.lo16120    SI_RETURN_TO_EPILOG $vgpr0_lo16121 122...123 124---125name:            fold_sreg_64_sub0_to_vgpr_32126body:             |127  bb.0:128 129    ; GCN-LABEL: name: fold_sreg_64_sub0_to_vgpr_32130    ; GCN: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200131    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 -1412567312, implicit $exec132    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]133    %0:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200134    %1:vgpr_32 = COPY killed %0.sub0135    SI_RETURN_TO_EPILOG %1136 137...138 139---140name:            fold_sreg_64_sub1_to_vgpr_32141body:             |142  bb.0:143 144    ; GCN-LABEL: name: fold_sreg_64_sub1_to_vgpr_32145    ; GCN: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 1311768467750121200146    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 305419896, implicit $exec147    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]148    %0:sreg_64 = S_MOV_B64 1311768467750121200149    %1:vgpr_32 = COPY killed %0.sub1150    SI_RETURN_TO_EPILOG %1151 152...153 154---155name:            fold_vreg_64_sub1_to_vgpr_32156body:             |157  bb.0:158 159    ; GCN-LABEL: name: fold_vreg_64_sub1_to_vgpr_32160    ; GCN: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec161    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 305419896, implicit $exec162    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]163    %0:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec164    %1:vgpr_32 = COPY killed %0.sub1165    SI_RETURN_TO_EPILOG %1166 167...168 169---170name:            fold_sreg_64_to_vreg_64171body:             |172  bb.0:173 174    ; GCN-LABEL: name: fold_sreg_64_to_vreg_64175    ; GCN: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200176    ; GCN-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec177    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B]]178    %0:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200179    %1:vreg_64_align2 = COPY killed %0180    SI_RETURN_TO_EPILOG %1181 182...183 184---185name:            fold_sreg_64_to_sreg_64186body:             |187  bb.0:188 189    ; GCN-LABEL: name: fold_sreg_64_to_sreg_64190    ; GCN: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 1311768467750121200191    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[S_MOV_B64_]]192    %0:sreg_64 = S_MOV_B64 1311768467750121200193    %1:sreg_64 = COPY killed %0194    SI_RETURN_TO_EPILOG %1195 196...197 198---199name:            fold_sreg_64_lo16_to_sgpr_lo16200body:             |201  bb.0:202 203    ; GCN-LABEL: name: fold_sreg_64_lo16_to_sgpr_lo16204    ; GCN: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585205    ; GCN-NEXT: $sgpr0 = S_MOV_B32 1206    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo16207    %0:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585208    $sgpr0_lo16 = COPY killed %0.lo16209    SI_RETURN_TO_EPILOG $sgpr0_lo16210 211...212 213---214name:            fold_sreg_64_hi16_to_sgpr_lo16215body:             |216  bb.0:217 218    ; GCN-LABEL: name: fold_sreg_64_hi16_to_sgpr_lo16219    ; GCN: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585220    ; GCN-NEXT: $sgpr0 = S_MOV_B32 2221    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo16222    %0:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585223    $sgpr0_lo16 = COPY killed %0.hi16224    SI_RETURN_TO_EPILOG $sgpr0_lo16225 226...227 228---229name:            fold_sreg_64_sub1_lo16_to_sgpr_lo16230body:             |231  bb.0:232 233    ; GCN-LABEL: name: fold_sreg_64_sub1_lo16_to_sgpr_lo16234    ; GCN: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585235    ; GCN-NEXT: $sgpr0 = S_MOV_B32 3236    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo16237    %0:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585238    $sgpr0_lo16 = COPY killed %0.sub1_lo16239    SI_RETURN_TO_EPILOG $sgpr0_lo16240 241...242 243---244name:            fold_sreg_64_sub1_hi16_to_sgpr_lo16245body:             |246  bb.0:247 248    ; GCN-LABEL: name: fold_sreg_64_sub1_hi16_to_sgpr_lo16249    ; GCN: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585250    ; GCN-NEXT: $sgpr0 = S_MOV_B32 4251    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo16252    %0:sreg_64 = S_MOV_B64_IMM_PSEUDO 1125912791875585253    $sgpr0_lo16 = COPY killed %0.sub1_hi16254    SI_RETURN_TO_EPILOG $sgpr0_lo16255 256...257 258---259name:            fmac_sreg_64_sub0_src0_to_fmamk260tracksRegLiveness: true261body:             |262  bb.0:263 264    ; GCN-LABEL: name: fmac_sreg_64_sub0_src0_to_fmamk265    ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF266    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF267    ; GCN-NEXT: [[V_FMAMK_F32_:%[0-9]+]]:vgpr_32 = V_FMAMK_F32 [[DEF]], -1412567312, [[DEF1]], implicit $mode, implicit $exec268    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMAMK_F32_]]269    %0:vgpr_32 = IMPLICIT_DEF270    %1:vgpr_32 = IMPLICIT_DEF271    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200272    %3:vgpr_32 = V_FMAC_F32_e64 0, %2.sub0, 0, %0, 0, %1, 0, 0, implicit $mode, implicit $exec273    SI_RETURN_TO_EPILOG %3274...275 276---277name:            fmac_sreg_64_sub1_src0_to_fmamk278tracksRegLiveness: true279body:             |280  bb.0:281 282    ; GCN-LABEL: name: fmac_sreg_64_sub1_src0_to_fmamk283    ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF284    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF285    ; GCN-NEXT: [[V_FMAMK_F32_:%[0-9]+]]:vgpr_32 = V_FMAMK_F32 [[DEF]], 305419896, [[DEF1]], implicit $mode, implicit $exec286    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMAMK_F32_]]287    %0:vgpr_32 = IMPLICIT_DEF288    %1:vgpr_32 = IMPLICIT_DEF289    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200290    %3:vgpr_32 = V_FMAC_F32_e64 0, %2.sub1, 0, %0, 0, %1, 0, 0, implicit $mode, implicit $exec291    SI_RETURN_TO_EPILOG %3292...293 294---295name:            fmac_sreg_64_sub1_src1_to_fmaak296tracksRegLiveness: true297body:             |298  bb.0:299 300    ; GCN-LABEL: name: fmac_sreg_64_sub1_src1_to_fmaak301    ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF302    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF303    ; GCN-NEXT: [[V_FMAMK_F32_:%[0-9]+]]:vgpr_32 = V_FMAMK_F32 [[DEF]], 305419896, [[DEF1]], implicit $mode, implicit $exec304    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMAMK_F32_]]305    %0:vgpr_32 = IMPLICIT_DEF306    %1:vgpr_32 = IMPLICIT_DEF307    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200308    %3:vgpr_32 = V_FMAC_F32_e64 0, %0, 0, %2.sub1, 0, %1, 0, 0, implicit $mode, implicit $exec309    SI_RETURN_TO_EPILOG %3310...311 312---313name:            fma_sreg_64_sub0_to_fmaak314tracksRegLiveness: true315body:             |316  bb.0:317 318    ; GCN-LABEL: name: fma_sreg_64_sub0_to_fmaak319    ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF320    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF321    ; GCN-NEXT: [[V_FMAAK_F32_:%[0-9]+]]:vgpr_32 = V_FMAAK_F32 [[DEF]], [[DEF1]], -1412567312, implicit $mode, implicit $exec322    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMAAK_F32_]]323    %0:vgpr_32 = IMPLICIT_DEF324    %1:vgpr_32 = IMPLICIT_DEF325    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200326    %3:vgpr_32 = V_FMA_F32_e64 0, %0, 0, %1, 0, %2.sub0, 0, 0, implicit $mode, implicit $exec327    SI_RETURN_TO_EPILOG %3328...329 330---331name:            fma_sreg_64_sub1_to_fmaak332tracksRegLiveness: true333body:             |334  bb.0:335 336    ; GCN-LABEL: name: fma_sreg_64_sub1_to_fmaak337    ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF338    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF339    ; GCN-NEXT: [[V_FMAAK_F32_:%[0-9]+]]:vgpr_32 = V_FMAAK_F32 [[DEF]], [[DEF1]], 305419896, implicit $mode, implicit $exec340    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMAAK_F32_]]341    %0:vgpr_32 = IMPLICIT_DEF342    %1:vgpr_32 = IMPLICIT_DEF343    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200344    %3:vgpr_32 = V_FMA_F32_e64 0, %0, 0, %1, 0, %2.sub1, 0, 0, implicit $mode, implicit $exec345    SI_RETURN_TO_EPILOG %3346...347 348---349name:            fold_aimm_virtual350body:             |351  bb.0:352 353    ; GCN-LABEL: name: fold_aimm_virtual354    ; GCN: [[V_ACCVGPR_WRITE_B32_e64_:%[0-9]+]]:agpr_32 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec355    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_ACCVGPR_WRITE_B32_e64_]]356    %0:agpr_32 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec357    %1:agpr_32 = COPY killed %0358    SI_RETURN_TO_EPILOG implicit %1359 360...361 362---363name:            fold_aimm_virtual_copy_to_vgpr364body:             |365  bb.0:366 367    ; GCN-LABEL: name: fold_aimm_virtual_copy_to_vgpr368    ; GCN: [[V_ACCVGPR_WRITE_B32_e64_:%[0-9]+]]:agpr_32 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec369    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 64, implicit $exec370    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B32_e32_]]371    %0:agpr_32 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec372    %1:vgpr_32 = COPY killed %0373    SI_RETURN_TO_EPILOG implicit %1374 375...376 377---378name:            fold_v_mov_b64_64_sub0_to_vgpr_32379body:             |380  bb.0:381 382    ; GCN-LABEL: name: fold_v_mov_b64_64_sub0_to_vgpr_32383    ; GCN: [[V_MOV_B64_e32_:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec384    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 -1412567312, implicit $exec385    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]386    %0:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec387    %1:vgpr_32 = COPY killed %0.sub0388    SI_RETURN_TO_EPILOG %1389 390...391 392---393name:            fold_v_mov_b64_64_sub1_to_vgpr_32394body:             |395  bb.0:396 397    ; GCN-LABEL: name: fold_v_mov_b64_64_sub1_to_vgpr_32398    ; GCN: [[V_MOV_B64_e32_:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec399    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 305419896, implicit $exec400    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]401    %0:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec402    %1:vgpr_32 = COPY killed %0.sub1403    SI_RETURN_TO_EPILOG %1404 405...406 407---408name:            fold_v_mov_b64_64409body:             |410  bb.0:411 412    ; GCN-LABEL: name: fold_v_mov_b64_64413    ; GCN: [[V_MOV_B64_e32_:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec414    ; GCN-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec415    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B]]416    %0:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec417    %1:vreg_64_align2 = COPY killed %0418    SI_RETURN_TO_EPILOG implicit %1419 420...421 422---423name:            fold_v_mov_b64_64_to_unaligned424body:             |425  bb.0:426    ; GCN-LABEL: name: fold_v_mov_b64_64_to_unaligned427    ; GCN: [[V_MOV_B64_e32_:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec428    ; GCN-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec429    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B]]430    %0:vreg_64_align2 = V_MOV_B64_e32 1311768467750121200, implicit $exec431    %1:vreg_64 = COPY killed %0432    SI_RETURN_TO_EPILOG implicit %1433...434 435---436name:            fold_v_mov_b64_pseudo_64_to_unaligned437body:             |438  bb.0:439    ; GCN-LABEL: name: fold_v_mov_b64_pseudo_64_to_unaligned440    ; GCN: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec441    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B]]442    %0:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec443    %1:vreg_64 = COPY killed %0444    SI_RETURN_TO_EPILOG implicit %1445...446 447---448name:            fold_s_brev_b32_simm_virtual_0449body:             |450  bb.0:451 452    ; GCN-LABEL: name: fold_s_brev_b32_simm_virtual_0453    ; GCN: [[S_BREV_B32_:%[0-9]+]]:sreg_32 = S_BREV_B32 1454    ; GCN-NEXT: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 -2147483648455    ; GCN-NEXT: SI_RETURN_TO_EPILOG456    %0:sreg_32 = S_BREV_B32 1457    %1:sreg_32 = COPY killed %0458    SI_RETURN_TO_EPILOG459 460...461 462---463name:            fold_s_brev_b32_simm_virtual_1464body:             |465  bb.0:466 467    ; GCN-LABEL: name: fold_s_brev_b32_simm_virtual_1468    ; GCN: [[S_BREV_B32_:%[0-9]+]]:sreg_32 = S_BREV_B32 -64469    ; GCN-NEXT: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 67108863470    ; GCN-NEXT: SI_RETURN_TO_EPILOG471    %0:sreg_32 = S_BREV_B32 -64472    %1:sreg_32 = COPY killed %0473    SI_RETURN_TO_EPILOG474 475...476 477---478name:            fold_v_bfrev_b32_e32_imm479body:             |480  bb.0:481 482    ; GCN-LABEL: name: fold_v_bfrev_b32_e32_imm483    ; GCN: [[V_BFREV_B32_e32_:%[0-9]+]]:vgpr_32 = V_BFREV_B32_e32 1, implicit $exec484    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 -2147483648, implicit $exec485    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]486    %0:vgpr_32 = V_BFREV_B32_e32 1, implicit $exec487    %1:vgpr_32 = COPY killed %0488    SI_RETURN_TO_EPILOG %1489 490...491 492---493name:            fold_v_bfrev_b32_e64_imm494body:             |495  bb.0:496 497    ; GCN-LABEL: name: fold_v_bfrev_b32_e64_imm498    ; GCN: [[V_BFREV_B32_e64_:%[0-9]+]]:vgpr_32 = V_BFREV_B32_e64 1, implicit $exec499    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 -2147483648, implicit $exec500    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]501    %0:vgpr_32 = V_BFREV_B32_e64 1, implicit $exec502    %1:vgpr_32 = COPY killed %0503    SI_RETURN_TO_EPILOG %1504 505...506 507---508name:            fold_s_not_b32_simm_virtual_0509body:             |510  bb.0:511 512    ; GCN-LABEL: name: fold_s_not_b32_simm_virtual_0513    ; GCN: [[S_NOT_B32_:%[0-9]+]]:sreg_32 = S_NOT_B32 1, implicit-def $scc514    ; GCN-NEXT: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 -2515    ; GCN-NEXT: SI_RETURN_TO_EPILOG516    %0:sreg_32 = S_NOT_B32 1, implicit-def $scc517    %1:sreg_32 = COPY killed %0518    SI_RETURN_TO_EPILOG519 520...521 522---523name:            fold_s_not_b32_simm_virtual_1524body:             |525  bb.0:526 527    ; GCN-LABEL: name: fold_s_not_b32_simm_virtual_1528    ; GCN: [[S_NOT_B32_:%[0-9]+]]:sreg_32 = S_NOT_B32 -64, implicit-def $scc529    ; GCN-NEXT: [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 63530    ; GCN-NEXT: SI_RETURN_TO_EPILOG531    %0:sreg_32 = S_NOT_B32 -64, implicit-def $scc532    %1:sreg_32 = COPY killed %0533    SI_RETURN_TO_EPILOG534 535...536 537---538name:            fold_v_not_b32_e32_imm539body:             |540  bb.0:541 542    ; GCN-LABEL: name: fold_v_not_b32_e32_imm543    ; GCN: [[V_NOT_B32_e32_:%[0-9]+]]:vgpr_32 = V_NOT_B32_e32 1, implicit $exec544    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 -2, implicit $exec545    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]546    %0:vgpr_32 = V_NOT_B32_e32 1, implicit $exec547    %1:vgpr_32 = COPY killed %0548    SI_RETURN_TO_EPILOG %1549 550...551 552---553name:            fold_v_not_b32_e64_imm554body:             |555  bb.0:556 557    ; GCN-LABEL: name: fold_v_not_b32_e64_imm558    ; GCN: [[V_NOT_B32_e64_:%[0-9]+]]:vgpr_32 = V_NOT_B32_e64 1, implicit $exec559    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 -2, implicit $exec560    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_MOV_B32_e32_]]561    %0:vgpr_32 = V_NOT_B32_e64 1, implicit $exec562    %1:vgpr_32 = COPY killed %0563    SI_RETURN_TO_EPILOG %1564 565...566 567---568name:            fmac_sreg_64_src0_to_fmamk_f64569tracksRegLiveness: true570body:             |571  bb.0:572 573    ; GFX942-LABEL: name: fmac_sreg_64_src0_to_fmamk_f64574    ; GFX942: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF575    ; GFX942-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF576    ; GFX942-NEXT: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200577    ; GFX942-NEXT: [[V_FMAC_F64_e64_:%[0-9]+]]:vreg_64_align2 = V_FMAC_F64_e64 0, [[S_MOV_B]], 0, [[DEF]], 0, [[DEF1]], 0, 0, implicit $mode, implicit $exec578    ; GFX942-NEXT: SI_RETURN_TO_EPILOG [[V_FMAC_F64_e64_]]579    ;580    ; GFX1250-LABEL: name: fmac_sreg_64_src0_to_fmamk_f64581    ; GFX1250: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF582    ; GFX1250-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF583    ; GFX1250-NEXT: [[V_FMAMK_F64_:%[0-9]+]]:vreg_64_align2 = V_FMAMK_F64 [[DEF]], 1311768467750121200, [[DEF1]], implicit $mode, implicit $exec584    ; GFX1250-NEXT: SI_RETURN_TO_EPILOG [[V_FMAMK_F64_]]585    %0:vreg_64_align2 = IMPLICIT_DEF586    %1:vreg_64_align2 = IMPLICIT_DEF587    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200588    %3:vreg_64_align2 = V_FMAC_F64_e64 0, %2, 0, %0, 0, %1, 0, 0, implicit $mode, implicit $exec589    SI_RETURN_TO_EPILOG %3590...591 592---593name:            fmac_sreg_64_src1_to_fmamk_f64594tracksRegLiveness: true595body:             |596  bb.0:597 598    ; GCN-LABEL: name: fmac_sreg_64_src1_to_fmamk_f64599    ; GCN: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF600    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF601    ; GCN-NEXT: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200602    ; GCN-NEXT: [[V_FMAC_F64_e64_:%[0-9]+]]:vreg_64_align2 = V_FMAC_F64_e64 0, [[DEF]], 0, [[DEF1]], 0, [[DEF1]], 0, 0, implicit $mode, implicit $exec603    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMAC_F64_e64_]]604    %0:vreg_64_align2 = IMPLICIT_DEF605    %1:vreg_64_align2 = IMPLICIT_DEF606    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200607    %3:vreg_64_align2 = V_FMAC_F64_e64 0, %0, 0, %1, 0, %1, 0, 0, implicit $mode, implicit $exec608    SI_RETURN_TO_EPILOG %3609...610 611---612name:            fmac_vreg_64_to_fmaak_f64613tracksRegLiveness: true614body:             |615  bb.0:616 617    ; GFX942-LABEL: name: fmac_vreg_64_to_fmaak_f64618    ; GFX942: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF619    ; GFX942-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF620    ; GFX942-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec621    ; GFX942-NEXT: [[V_FMAC_F64_e64_:%[0-9]+]]:vreg_64_align2 = V_FMAC_F64_e64 0, [[DEF]], 0, [[DEF1]], 0, [[V_MOV_B]], 0, 0, implicit $mode, implicit $exec622    ; GFX942-NEXT: SI_RETURN_TO_EPILOG [[V_FMAC_F64_e64_]]623    ;624    ; GFX1250-LABEL: name: fmac_vreg_64_to_fmaak_f64625    ; GFX1250: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF626    ; GFX1250-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF627    ; GFX1250-NEXT: [[V_FMAAK_F64_:%[0-9]+]]:vreg_64_align2 = V_FMAAK_F64 [[DEF]], [[DEF1]], 1311768467750121200, implicit $mode, implicit $exec628    ; GFX1250-NEXT: SI_RETURN_TO_EPILOG [[V_FMAAK_F64_]]629    %0:vreg_64_align2 = IMPLICIT_DEF630    %1:vreg_64_align2 = IMPLICIT_DEF631    %2:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec632    %3:vreg_64_align2 = V_FMAC_F64_e64 0, %0, 0, %1, 0, %2, 0, 0, implicit $mode, implicit $exec633    SI_RETURN_TO_EPILOG %3634...635 636---637name:            fma_sreg_64_src0_to_fmamk_f64638tracksRegLiveness: true639body:             |640  bb.0:641 642    ; GFX942-LABEL: name: fma_sreg_64_src0_to_fmamk_f64643    ; GFX942: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF644    ; GFX942-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF645    ; GFX942-NEXT: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200646    ; GFX942-NEXT: [[V_FMA_F64_e64_:%[0-9]+]]:vreg_64_align2 = V_FMA_F64_e64 0, [[S_MOV_B]], 0, [[DEF]], 0, [[DEF1]], 0, 0, implicit $mode, implicit $exec647    ; GFX942-NEXT: SI_RETURN_TO_EPILOG [[V_FMA_F64_e64_]]648    ;649    ; GFX1250-LABEL: name: fma_sreg_64_src0_to_fmamk_f64650    ; GFX1250: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF651    ; GFX1250-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF652    ; GFX1250-NEXT: [[V_FMAMK_F64_:%[0-9]+]]:vreg_64_align2 = V_FMAMK_F64 [[DEF]], 1311768467750121200, [[DEF1]], implicit $mode, implicit $exec653    ; GFX1250-NEXT: SI_RETURN_TO_EPILOG [[V_FMAMK_F64_]]654    %0:vreg_64_align2 = IMPLICIT_DEF655    %1:vreg_64_align2 = IMPLICIT_DEF656    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200657    %3:vreg_64_align2 = V_FMA_F64_e64 0, %2, 0, %0, 0, %1, 0, 0, implicit $mode, implicit $exec658    SI_RETURN_TO_EPILOG %3659...660 661---662name:            fma_sreg_64_src1_to_fmamk_f64663tracksRegLiveness: true664body:             |665  bb.0:666 667    ; GCN-LABEL: name: fma_sreg_64_src1_to_fmamk_f64668    ; GCN: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF669    ; GCN-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF670    ; GCN-NEXT: [[S_MOV_B:%[0-9]+]]:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200671    ; GCN-NEXT: [[V_FMA_F64_e64_:%[0-9]+]]:vreg_64_align2 = V_FMA_F64_e64 0, [[DEF]], 0, [[DEF1]], 0, [[DEF1]], 0, 0, implicit $mode, implicit $exec672    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[V_FMA_F64_e64_]]673    %0:vreg_64_align2 = IMPLICIT_DEF674    %1:vreg_64_align2 = IMPLICIT_DEF675    %2:sreg_64 = S_MOV_B64_IMM_PSEUDO 1311768467750121200676    %3:vreg_64_align2 = V_FMA_F64_e64 0, %0, 0, %1, 0, %1, 0, 0, implicit $mode, implicit $exec677    SI_RETURN_TO_EPILOG %3678...679 680---681name:            fma_vreg_64_to_fmaak_f64682tracksRegLiveness: true683body:             |684  bb.0:685 686    ; GFX942-LABEL: name: fma_vreg_64_to_fmaak_f64687    ; GFX942: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF688    ; GFX942-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF689    ; GFX942-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec690    ; GFX942-NEXT: [[V_FMA_F64_e64_:%[0-9]+]]:vreg_64_align2 = V_FMA_F64_e64 0, [[DEF]], 0, [[DEF1]], 0, [[V_MOV_B]], 0, 0, implicit $mode, implicit $exec691    ; GFX942-NEXT: SI_RETURN_TO_EPILOG [[V_FMA_F64_e64_]]692    ;693    ; GFX1250-LABEL: name: fma_vreg_64_to_fmaak_f64694    ; GFX1250: [[DEF:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF695    ; GFX1250-NEXT: [[DEF1:%[0-9]+]]:vreg_64_align2 = IMPLICIT_DEF696    ; GFX1250-NEXT: [[V_FMAAK_F64_:%[0-9]+]]:vreg_64_align2 = V_FMAAK_F64 [[DEF]], [[DEF1]], 1311768467750121200, implicit $mode, implicit $exec697    ; GFX1250-NEXT: SI_RETURN_TO_EPILOG [[V_FMAAK_F64_]]698    %0:vreg_64_align2 = IMPLICIT_DEF699    %1:vreg_64_align2 = IMPLICIT_DEF700    %2:vreg_64_align2 = V_MOV_B64_PSEUDO 1311768467750121200, implicit $exec701    %3:vreg_64_align2 = V_FMA_F64_e64 0, %0, 0, %1, 0, %2, 0, 0, implicit $mode, implicit $exec702    SI_RETURN_TO_EPILOG %3703...704 705---706name:            fold_v_mov_b32_e32_literal_to_agpr707body:             |708  bb.0:709    ; GCN-LABEL: name: fold_v_mov_b32_e32_literal_to_agpr710    ; GCN: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 999, implicit $exec711    ; GCN-NEXT: [[COPY:%[0-9]+]]:agpr_32 = COPY killed [[V_MOV_B32_e32_]]712    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[COPY]]713    %0:vgpr_32 = V_MOV_B32_e32 999, implicit $exec714    %1:agpr_32 = COPY killed %0715    SI_RETURN_TO_EPILOG implicit %1716...717 718---719name:            fold_v_mov_b32_e32_inlineimm_to_agpr720body:             |721  bb.0:722    ; GCN-LABEL: name: fold_v_mov_b32_e32_inlineimm_to_agpr723    ; GCN: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 64, implicit $exec724    ; GCN-NEXT: [[V_ACCVGPR_WRITE_B32_e64_:%[0-9]+]]:agpr_32 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec725    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_ACCVGPR_WRITE_B32_e64_]]726    %0:vgpr_32 = V_MOV_B32_e32 64, implicit $exec727    %1:agpr_32 = COPY killed %0728    SI_RETURN_TO_EPILOG implicit %1729...730 731---732name:            fold_av_mov_b32_imm_pseudo_inlineimm_to_vgpr733body:             |734  bb.0:735    ; GCN-LABEL: name: fold_av_mov_b32_imm_pseudo_inlineimm_to_vgpr736    ; GCN: [[AV_MOV_:%[0-9]+]]:av_32 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec737    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 64, implicit $exec738    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B32_e32_]]739    %0:av_32 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec740    %1:vgpr_32 = COPY killed %0741    SI_RETURN_TO_EPILOG implicit %1742...743 744---745name:            fold_av_mov_b32_imm_pseudo_inlineimm_to_agpr746body:             |747  bb.0:748    ; GCN-LABEL: name: fold_av_mov_b32_imm_pseudo_inlineimm_to_agpr749    ; GCN: [[AV_MOV_:%[0-9]+]]:av_32 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec750    ; GCN-NEXT: [[V_ACCVGPR_WRITE_B32_e64_:%[0-9]+]]:agpr_32 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec751    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_ACCVGPR_WRITE_B32_e64_]]752    %0:av_32 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec753    %1:agpr_32 = COPY killed %0754    SI_RETURN_TO_EPILOG implicit %1755...756 757---758name:            fold_av_mov_b32_imm_pseudo_inlineimm_to_av759body:             |760  bb.0:761    ; GCN-LABEL: name: fold_av_mov_b32_imm_pseudo_inlineimm_to_av762    ; GCN: [[AV_MOV_:%[0-9]+]]:av_32 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec763    ; GCN-NEXT: [[V_MOV_B32_e32_:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 64, implicit $exec764    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B32_e32_]]765    %0:av_32 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec766    %1:av_32 = COPY killed %0767    SI_RETURN_TO_EPILOG implicit %1768...769 770---771name:            fold_av_mov_b64_imm_pseudo_inlineimm_to_vgpr772body:             |773  bb.0:774    ; GCN-LABEL: name: fold_av_mov_b64_imm_pseudo_inlineimm_to_vgpr775    ; GCN: [[AV_MOV_:%[0-9]+]]:av_64_align2 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec776    ; GCN-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 64, implicit $exec777    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B]]778    %0:av_64_align2 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec779    %1:vreg_64_align2 = COPY killed %0780    SI_RETURN_TO_EPILOG implicit %1781...782 783---784name:            fold_av_mov_b64_imm_pseudo_inlineimm_to_agpr785body:             |786  bb.0:787    ; GCN-LABEL: name: fold_av_mov_b64_imm_pseudo_inlineimm_to_agpr788    ; GCN: [[AV_MOV_:%[0-9]+]]:av_64_align2 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec789    ; GCN-NEXT: [[COPY:%[0-9]+]]:areg_64_align2 = COPY killed [[AV_MOV_]]790    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[COPY]]791    %0:av_64_align2 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec792    %1:areg_64_align2 = COPY killed %0793    SI_RETURN_TO_EPILOG implicit %1794...795 796---797name:            fold_av_mov_b64_imm_pseudo_inlineimm_to_av798body:             |799  bb.0:800    ; GCN-LABEL: name: fold_av_mov_b64_imm_pseudo_inlineimm_to_av801    ; GCN: [[AV_MOV_:%[0-9]+]]:av_64_align2 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec802    ; GCN-NEXT: [[V_MOV_B:%[0-9]+]]:vreg_64_align2 = V_MOV_B64_PSEUDO 64, implicit $exec803    ; GCN-NEXT: SI_RETURN_TO_EPILOG implicit [[V_MOV_B]]804    %0:av_64_align2 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec805    %1:av_64_align2 = COPY killed %0806    SI_RETURN_TO_EPILOG implicit %1807...808 809---810name:            fold_simm_16_sub_to_lo_from_mov_64_virt_sgpr16811body:             |812  bb.0:813 814    ; GCN-LABEL: name: fold_simm_16_sub_to_lo_from_mov_64_virt_sgpr16815    ; GCN: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 64816    ; GCN-NEXT: [[COPY:%[0-9]+]]:sgpr_lo16 = COPY killed [[S_MOV_B64_]].lo16817    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[COPY]]818    %0:sreg_64 = S_MOV_B64 64819    %1:sgpr_lo16 = COPY killed %0.lo16820    SI_RETURN_TO_EPILOG %1821 822...823---824name:            fold_simm_16_sub_to_hi_from_mov_64_inline_imm_virt_sgpr16825body:             |826  bb.0:827 828    ; GCN-LABEL: name: fold_simm_16_sub_to_hi_from_mov_64_inline_imm_virt_sgpr16829    ; GCN: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 64830    ; GCN-NEXT: [[COPY:%[0-9]+]]:sgpr_lo16 = COPY killed [[S_MOV_B64_]].hi16831    ; GCN-NEXT: SI_RETURN_TO_EPILOG [[COPY]]832    %0:sreg_64 = S_MOV_B64 64833    %1:sgpr_lo16 = COPY killed %0.hi16834    SI_RETURN_TO_EPILOG %1835 836...837 838---839name:            fold_simm_16_sub_to_lo_from_mov_64_phys_sgpr16_lo840body:             |841  bb.0:842 843    ; GCN-LABEL: name: fold_simm_16_sub_to_lo_from_mov_64_phys_sgpr16_lo844    ; GCN: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 64845    ; GCN-NEXT: $sgpr0 = S_MOV_B32 64846    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo16847    %0:sreg_64 = S_MOV_B64 64848    $sgpr0_lo16 = COPY killed %0.lo16849    SI_RETURN_TO_EPILOG $sgpr0_lo16850 851...852---853name:            fold_simm_16_sub_to_hi_from_mov_64_inline_imm_phys_sgpr16_lo854body:             |855  bb.0:856 857    ; GCN-LABEL: name: fold_simm_16_sub_to_hi_from_mov_64_inline_imm_phys_sgpr16_lo858    ; GCN: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 64859    ; GCN-NEXT: $sgpr0 = S_MOV_B32 0860    ; GCN-NEXT: SI_RETURN_TO_EPILOG $sgpr0_lo16861    %0:sreg_64 = S_MOV_B64 64862    $sgpr0_lo16 = COPY killed %0.hi16863    SI_RETURN_TO_EPILOG $sgpr0_lo16864 865...866