brintos

brintos / llvm-project-archived public Read only

0
0
Text · 45.6 KiB · 3a2b099 Raw
791 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -verify-machineinstrs -run-pass=postmisched %s -o - | FileCheck -check-prefix=SCHED %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -verify-machineinstrs -run-pass=postmisched,gcn-create-vopd %s -o - | FileCheck -check-prefixes=PAIR,PAIR-GFX11 %s4# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 -verify-machineinstrs -run-pass=postmisched %s -o - | FileCheck -check-prefix=SCHED %s5# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 -verify-machineinstrs -run-pass=postmisched,gcn-create-vopd %s -o - | FileCheck -check-prefixes=PAIR,PAIR-GFX12 %s6 7# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 -passes=postmisched,gcn-create-vopd %s -o - | FileCheck -check-prefixes=PAIR,PAIR-GFX12 %s8 9--- |10  @lds = external addrspace(3) global [8 x i8]11  define void @vopd_schedule() { ret void }12  define void @vopd_fmamk() { ret void }13  define void @vopd_fmamk_fail() { ret void }14  define void @vopd_cndmask() { ret void }15  define void @vopd_mov() { ret void }16  define void @vopd_mov_mov() { ret void }17  define void @vopd_constants_fail() { ret void }18  define void @vopd_constants_inlinable() { ret void }19  define void @vopd_constants_same() { ret void }20  define void @vopd_mov_fmaak_constants_same() { ret void }21  define void @vopd_debug() { ret void }22  define void @vopd_schedule_unconstrained() { ret void }23  define void @vopd_schedule_unconstrained_2() { ret void }24  define void @vopd_mov_fixup() { ret void }25  define void @vopd_mov_fixup_fail() { ret void }26  define void @vopd_no_combine_dependent_subreg() { ret void }27  define void @vopd_mov_mov_same_src_bank() { ret void }28  define void @vopd_combine_opy_overwrites_opx() { ret void }29  define void @vopd_no_combine_opx_overwrites_opy() { ret void }30...31 32---33name:            vopd_schedule34tracksRegLiveness: true35body:             |36  bb.0:37 38    ; SCHED-LABEL: name: vopd_schedule39    ; SCHED: $vgpr0 = IMPLICIT_DEF40    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF41    ; SCHED-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec42    ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec43    ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec44    ; SCHED-NEXT: $vgpr4 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec45    ;46    ; PAIR-GFX11-LABEL: name: vopd_schedule47    ; PAIR-GFX11: $vgpr0 = IMPLICIT_DEF48    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF49    ; PAIR-GFX11-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec50    ; PAIR-GFX11-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx11 $vgpr1, $vgpr1, killed $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec51    ; PAIR-GFX11-NEXT: $vgpr4 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec52    ;53    ; PAIR-GFX12-LABEL: name: vopd_schedule54    ; PAIR-GFX12: $vgpr0 = IMPLICIT_DEF55    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF56    ; PAIR-GFX12-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec57    ; PAIR-GFX12-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx12 $vgpr1, $vgpr1, killed $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec58    ; PAIR-GFX12-NEXT: $vgpr4 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec59    $vgpr0 = IMPLICIT_DEF60    $vgpr1 = IMPLICIT_DEF61    $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec62    ; can fuse vgpr3 and vgpr6 writing insts only due to reg constraints63    $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec64    $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec65    $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec66 67...68 69---70name:            vopd_fmamk71tracksRegLiveness: true72body:             |73  bb.0:74 75    ; SCHED-LABEL: name: vopd_fmamk76    ; SCHED: $vgpr2 = IMPLICIT_DEF77    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF78    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF79    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF80    ; SCHED-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 10, killed $vgpr3, implicit $mode, implicit $exec81    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec82    ;83    ; PAIR-GFX11-LABEL: name: vopd_fmamk84    ; PAIR-GFX11: $vgpr2 = IMPLICIT_DEF85    ; PAIR-GFX11-NEXT: $vgpr0 = IMPLICIT_DEF86    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF87    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF88    ; PAIR-GFX11-NEXT: $vgpr5, $vgpr2 = V_DUAL_FMAMK_F32_X_FMAC_F32_e32_gfx11 killed $vgpr0, 10, killed $vgpr3, killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec89    ;90    ; PAIR-GFX12-LABEL: name: vopd_fmamk91    ; PAIR-GFX12: $vgpr2 = IMPLICIT_DEF92    ; PAIR-GFX12-NEXT: $vgpr0 = IMPLICIT_DEF93    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF94    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF95    ; PAIR-GFX12-NEXT: $vgpr5, $vgpr2 = V_DUAL_FMAMK_F32_X_FMAC_F32_e32_gfx12 killed $vgpr0, 10, killed $vgpr3, killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec96    $vgpr0 = IMPLICIT_DEF97    $vgpr1 = IMPLICIT_DEF98    $vgpr2 = IMPLICIT_DEF99    $vgpr3 = IMPLICIT_DEF100    ; should pair101    $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr2, implicit $mode, implicit $exec102    $vgpr5 = V_FMAMK_F32 $vgpr0, 10, $vgpr3, implicit $mode, implicit $exec103 104...105 106---107name:            vopd_fmamk_fail108tracksRegLiveness: true109body:             |110  bb.0:111 112    ; SCHED-LABEL: name: vopd_fmamk_fail113    ; SCHED: $vgpr1 = IMPLICIT_DEF114    ; SCHED-NEXT: $vgpr2 = V_XOR_B32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec115    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF116    ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF117    ; SCHED-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 10, killed $vgpr4, implicit $mode, implicit $exec118    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec119    ;120    ; PAIR-LABEL: name: vopd_fmamk_fail121    ; PAIR: $vgpr1 = IMPLICIT_DEF122    ; PAIR-NEXT: $vgpr2 = V_XOR_B32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec123    ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF124    ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF125    ; PAIR-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 10, killed $vgpr4, implicit $mode, implicit $exec126    ; PAIR-NEXT: $vgpr2 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec127    $vgpr0 = IMPLICIT_DEF128    $vgpr1 = IMPLICIT_DEF129    $vgpr2 = V_XOR_B32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec130    $vgpr4 = IMPLICIT_DEF131    ; should not pair132    $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr2, implicit $mode, implicit $exec133    $vgpr5 = V_FMAMK_F32 $vgpr0, 10, $vgpr4, implicit $mode, implicit $exec134 135...136 137---138name:            vopd_cndmask139tracksRegLiveness: true140body:             |141  bb.0:142    liveins: $vcc_lo143    ; SCHED-LABEL: name: vopd_cndmask144    ; SCHED: liveins: $vcc_lo145    ; SCHED-NEXT: {{  $}}146    ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF147    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF148    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF149    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF150    ; SCHED-NEXT: $sgpr20 = IMPLICIT_DEF151    ; SCHED-NEXT: $vgpr4 = V_FMAMK_F32 $sgpr20, 12345, $vgpr3, implicit $mode, implicit $exec152    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 $sgpr20, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec153    ; SCHED-NEXT: $vgpr5 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo154    ; SCHED-NEXT: $vgpr7 = V_CNDMASK_B32_e32 killed $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo155    ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 $sgpr20, $vgpr3, implicit $mode, implicit $exec156    ; SCHED-NEXT: $vgpr9 = V_CNDMASK_B32_e32 killed $sgpr20, killed $vgpr3, implicit $mode, implicit $exec, implicit killed $vcc_lo157    ;158    ; PAIR-GFX11-LABEL: name: vopd_cndmask159    ; PAIR-GFX11: liveins: $vcc_lo160    ; PAIR-GFX11-NEXT: {{  $}}161    ; PAIR-GFX11-NEXT: $vgpr2 = IMPLICIT_DEF162    ; PAIR-GFX11-NEXT: $vgpr0 = IMPLICIT_DEF163    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF164    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF165    ; PAIR-GFX11-NEXT: $sgpr20 = IMPLICIT_DEF166    ; PAIR-GFX11-NEXT: $vgpr4 = V_FMAMK_F32 $sgpr20, 12345, $vgpr3, implicit $mode, implicit $exec167    ; PAIR-GFX11-NEXT: $vgpr2, $vgpr5 = V_DUAL_FMAC_F32_e32_X_CNDMASK_B32_e32_gfx11 $sgpr20, killed $vgpr1, killed $vgpr2, $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo168    ; PAIR-GFX11-NEXT: $vgpr7 = V_CNDMASK_B32_e32 killed $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo169    ; PAIR-GFX11-NEXT: $vgpr6 = V_ADD_F32_e32 $sgpr20, $vgpr3, implicit $mode, implicit $exec170    ; PAIR-GFX11-NEXT: $vgpr9 = V_CNDMASK_B32_e32 killed $sgpr20, killed $vgpr3, implicit $mode, implicit $exec, implicit killed $vcc_lo171    ;172    ; PAIR-GFX12-LABEL: name: vopd_cndmask173    ; PAIR-GFX12: liveins: $vcc_lo174    ; PAIR-GFX12-NEXT: {{  $}}175    ; PAIR-GFX12-NEXT: $vgpr2 = IMPLICIT_DEF176    ; PAIR-GFX12-NEXT: $vgpr0 = IMPLICIT_DEF177    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF178    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF179    ; PAIR-GFX12-NEXT: $sgpr20 = IMPLICIT_DEF180    ; PAIR-GFX12-NEXT: $vgpr4 = V_FMAMK_F32 $sgpr20, 12345, $vgpr3, implicit $mode, implicit $exec181    ; PAIR-GFX12-NEXT: $vgpr2, $vgpr5 = V_DUAL_FMAC_F32_e32_X_CNDMASK_B32_e32_gfx12 $sgpr20, killed $vgpr1, killed $vgpr2, $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo182    ; PAIR-GFX12-NEXT: $vgpr7 = V_CNDMASK_B32_e32 killed $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo183    ; PAIR-GFX12-NEXT: $vgpr6 = V_ADD_F32_e32 $sgpr20, $vgpr3, implicit $mode, implicit $exec184    ; PAIR-GFX12-NEXT: $vgpr9 = V_CNDMASK_B32_e32 killed $sgpr20, killed $vgpr3, implicit $mode, implicit $exec, implicit killed $vcc_lo185    $vgpr0 = IMPLICIT_DEF186    $vgpr1 = IMPLICIT_DEF187    $vgpr2 = IMPLICIT_DEF188    $vgpr3 = IMPLICIT_DEF189    $sgpr20 = IMPLICIT_DEF190    ; should pair191    $vgpr2 = V_FMAC_F32_e32 $sgpr20, $vgpr1, $vgpr2, implicit $mode, implicit $exec192    $vgpr5 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc193    ; should not pair, uses 3 scalars (implicit vcc)194    $vgpr4 = V_FMAMK_F32 $sgpr20, 12345, $vgpr3, implicit $mode, implicit $exec195    $vgpr7 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc196    ; should not pair, uses 3 scalars (implicit vcc)197    $vgpr6 = V_ADD_F32_e32 $sgpr20, $vgpr3, implicit $mode, implicit $exec198    $vgpr9 = V_CNDMASK_B32_e32 $sgpr20, $vgpr3, implicit $mode, implicit $exec, implicit $vcc199 200...201 202---203name:            vopd_mov204tracksRegLiveness: true205body:             |206  bb.0:207 208    ; SCHED-LABEL: name: vopd_mov209    ; SCHED: $vgpr0 = IMPLICIT_DEF210    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF211    ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 killed $vgpr0, implicit $exec212    ; SCHED-NEXT: $vgpr3 = V_ADD_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec213    ;214    ; PAIR-GFX11-LABEL: name: vopd_mov215    ; PAIR-GFX11: $vgpr0 = IMPLICIT_DEF216    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF217    ; PAIR-GFX11-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_ADD_F32_e32_gfx11 killed $vgpr0, killed $vgpr1, $vgpr1, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec218    ;219    ; PAIR-GFX12-LABEL: name: vopd_mov220    ; PAIR-GFX12: $vgpr0 = IMPLICIT_DEF221    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF222    ; PAIR-GFX12-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_ADD_F32_e32_gfx12 killed $vgpr0, killed $vgpr1, $vgpr1, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec223    $vgpr0 = IMPLICIT_DEF224    $vgpr1 = IMPLICIT_DEF225    $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec226    $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec227 228...229 230---231name:            vopd_mov_mov232tracksRegLiveness: true233body:             |234  bb.0:235 236    ; SCHED-LABEL: name: vopd_mov_mov237    ; SCHED: $sgpr0 = IMPLICIT_DEF238    ; SCHED-NEXT: $sgpr7 = IMPLICIT_DEF239    ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 killed $sgpr0, implicit $exec240    ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 killed $sgpr7, implicit $exec241    ;242    ; PAIR-GFX11-LABEL: name: vopd_mov_mov243    ; PAIR-GFX11: $sgpr0 = IMPLICIT_DEF244    ; PAIR-GFX11-NEXT: $sgpr7 = IMPLICIT_DEF245    ; PAIR-GFX11-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_MOV_B32_e32_gfx11 killed $sgpr0, killed $sgpr7, implicit $exec, implicit $exec, implicit $exec246    ;247    ; PAIR-GFX12-LABEL: name: vopd_mov_mov248    ; PAIR-GFX12: $sgpr0 = IMPLICIT_DEF249    ; PAIR-GFX12-NEXT: $sgpr7 = IMPLICIT_DEF250    ; PAIR-GFX12-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_MOV_B32_e32_gfx12 killed $sgpr0, killed $sgpr7, implicit $exec, implicit $exec, implicit $exec251    $sgpr0 = IMPLICIT_DEF252    $sgpr7 = IMPLICIT_DEF253    $vgpr2 = V_MOV_B32_e32 $sgpr0, implicit $exec254    $vgpr3 = V_MOV_B32_e32 $sgpr7, implicit $exec255 256...257 258 259---260name:            vopd_constants_fail261tracksRegLiveness: true262body:             |263  bb.0:264 265    ; SCHED-LABEL: name: vopd_constants_fail266    ; SCHED: $vgpr2 = IMPLICIT_DEF267    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF268    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF269    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF270    ; SCHED-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 100, killed $vgpr3, implicit $mode, implicit $exec271    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 99, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec272    ;273    ; PAIR-LABEL: name: vopd_constants_fail274    ; PAIR: $vgpr2 = IMPLICIT_DEF275    ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF276    ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF277    ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF278    ; PAIR-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 100, killed $vgpr3, implicit $mode, implicit $exec279    ; PAIR-NEXT: $vgpr2 = V_FMAC_F32_e32 99, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec280    $vgpr0 = IMPLICIT_DEF281    $vgpr1 = IMPLICIT_DEF282    $vgpr2 = IMPLICIT_DEF283    $vgpr3 = IMPLICIT_DEF284    ; should not pair with two different literals285    $vgpr2 = V_FMAC_F32_e32 99, $vgpr1, $vgpr2, implicit $mode, implicit $exec286    $vgpr5 = V_FMAMK_F32 $vgpr0, 100, $vgpr3, implicit $mode, implicit $exec287 288...289 290---291name:            vopd_constants_inlinable292tracksRegLiveness: true293body:             |294  bb.0:295    ; SCHED-LABEL: name: vopd_constants_inlinable296    ; SCHED: $vgpr2 = IMPLICIT_DEF297    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF298    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF299    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF300    ; SCHED-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 100, killed $vgpr3, implicit $mode, implicit $exec301    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 4, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec302    ;303    ; PAIR-GFX11-LABEL: name: vopd_constants_inlinable304    ; PAIR-GFX11: $vgpr2 = IMPLICIT_DEF305    ; PAIR-GFX11-NEXT: $vgpr0 = IMPLICIT_DEF306    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF307    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF308    ; PAIR-GFX11-NEXT: $vgpr5, $vgpr2 = V_DUAL_FMAMK_F32_X_FMAC_F32_e32_gfx11 killed $vgpr0, 100, killed $vgpr3, 4, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec309    ;310    ; PAIR-GFX12-LABEL: name: vopd_constants_inlinable311    ; PAIR-GFX12: $vgpr2 = IMPLICIT_DEF312    ; PAIR-GFX12-NEXT: $vgpr0 = IMPLICIT_DEF313    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF314    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF315    ; PAIR-GFX12-NEXT: $vgpr5, $vgpr2 = V_DUAL_FMAMK_F32_X_FMAC_F32_e32_gfx12 killed $vgpr0, 100, killed $vgpr3, 4, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec316    $vgpr0 = IMPLICIT_DEF317    $vgpr1 = IMPLICIT_DEF318    $vgpr2 = IMPLICIT_DEF319    $vgpr3 = IMPLICIT_DEF320    ; can pair since 4 is inlinable321    $vgpr2 = V_FMAC_F32_e32 4, $vgpr1, $vgpr2, implicit $mode, implicit $exec322    $vgpr5 = V_FMAMK_F32 $vgpr0, 100, $vgpr3, implicit $mode, implicit $exec323 324...325 326 327---328name:            vopd_constants_same329tracksRegLiveness: true330body:             |331  bb.0:332 333    ; SCHED-LABEL: name: vopd_constants_same334    ; SCHED: $vgpr2 = IMPLICIT_DEF335    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF336    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF337    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF338    ; SCHED-NEXT: $vgpr5 = V_FMAMK_F32 killed $vgpr0, 100, killed $vgpr3, implicit $mode, implicit $exec339    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 100, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec340    ;341    ; PAIR-GFX11-LABEL: name: vopd_constants_same342    ; PAIR-GFX11: $vgpr2 = IMPLICIT_DEF343    ; PAIR-GFX11-NEXT: $vgpr0 = IMPLICIT_DEF344    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF345    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF346    ; PAIR-GFX11-NEXT: $vgpr5, $vgpr2 = V_DUAL_FMAMK_F32_X_FMAC_F32_e32_gfx11 killed $vgpr0, 100, killed $vgpr3, 100, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec347    ;348    ; PAIR-GFX12-LABEL: name: vopd_constants_same349    ; PAIR-GFX12: $vgpr2 = IMPLICIT_DEF350    ; PAIR-GFX12-NEXT: $vgpr0 = IMPLICIT_DEF351    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF352    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF353    ; PAIR-GFX12-NEXT: $vgpr5, $vgpr2 = V_DUAL_FMAMK_F32_X_FMAC_F32_e32_gfx12 killed $vgpr0, 100, killed $vgpr3, 100, killed $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec354    $vgpr0 = IMPLICIT_DEF355    $vgpr1 = IMPLICIT_DEF356    $vgpr2 = IMPLICIT_DEF357    $vgpr3 = IMPLICIT_DEF358    ; should be able to pair using 1 deduplicated literal359    $vgpr2 = V_FMAC_F32_e32 100, $vgpr1, $vgpr2, implicit $mode, implicit $exec360    $vgpr5 = V_FMAMK_F32 $vgpr0, 100, $vgpr3, implicit $mode, implicit $exec361 362...363 364---365name:            vopd_mov_fmaak_constants_same366tracksRegLiveness: true367body:             |368  bb.0:369 370    ; SCHED-LABEL: name: vopd_mov_fmaak_constants_same371    ; SCHED: $vgpr0 = IMPLICIT_DEF372    ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF373    ; SCHED-NEXT: $vgpr1 = V_MOV_B32_e32 981467136, implicit $exec374    ; SCHED-NEXT: $vgpr2 = V_FMAAK_F32 killed $sgpr0, killed $vgpr0, 981467136, implicit $mode, implicit $exec375    ;376    ; PAIR-GFX11-LABEL: name: vopd_mov_fmaak_constants_same377    ; PAIR-GFX11: $vgpr0 = IMPLICIT_DEF378    ; PAIR-GFX11-NEXT: $sgpr0 = IMPLICIT_DEF379    ; PAIR-GFX11-NEXT: $vgpr1, $vgpr2 = V_DUAL_MOV_B32_e32_X_FMAAK_F32_gfx11 981467136, killed $sgpr0, killed $vgpr0, 981467136, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec380    ;381    ; PAIR-GFX12-LABEL: name: vopd_mov_fmaak_constants_same382    ; PAIR-GFX12: $vgpr0 = IMPLICIT_DEF383    ; PAIR-GFX12-NEXT: $sgpr0 = IMPLICIT_DEF384    ; PAIR-GFX12-NEXT: $vgpr1, $vgpr2 = V_DUAL_MOV_B32_e32_X_FMAAK_F32_gfx12 981467136, killed $sgpr0, killed $vgpr0, 981467136, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec385    $vgpr0 = IMPLICIT_DEF386    $sgpr0 = IMPLICIT_DEF387    ; should be able to pair using 1 deduplicated literal388    $vgpr1 = V_MOV_B32_e32 981467136, implicit $exec389    $vgpr2 = V_FMAAK_F32 $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec390 391...392 393---394name:            vopd_debug395tracksRegLiveness: true396body:             |397  bb.0:398 399    ; SCHED-LABEL: name: vopd_debug400    ; SCHED: $vgpr0 = IMPLICIT_DEF401    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF402    ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec403    ; SCHED-NEXT: DBG_VALUE $vgpr0, 0, 0404    ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec405    ;406    ; PAIR-GFX11-LABEL: name: vopd_debug407    ; PAIR-GFX11: $vgpr0 = IMPLICIT_DEF408    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF409    ; PAIR-GFX11-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx11 killed $vgpr1, $vgpr1, killed $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec410    ; PAIR-GFX11-NEXT: DBG_VALUE $vgpr0, 0, 0411    ;412    ; PAIR-GFX12-LABEL: name: vopd_debug413    ; PAIR-GFX12: $vgpr0 = IMPLICIT_DEF414    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF415    ; PAIR-GFX12-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx12 killed $vgpr1, $vgpr1, killed $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec416    ; PAIR-GFX12-NEXT: DBG_VALUE $vgpr0, 0, 0417    $vgpr0 = IMPLICIT_DEF418    $vgpr1 = IMPLICIT_DEF419    ; TODO Debug values disable VOPD creation420    $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec421    DBG_VALUE $vgpr0, 0, 0422    $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec423 424...425 426---427name:            vopd_schedule_unconstrained428tracksRegLiveness: true429body:             |430  bb.0:431    liveins: $vcc_lo432 433    ; SCHED-LABEL: name: vopd_schedule_unconstrained434    ; SCHED: liveins: $vcc_lo435    ; SCHED-NEXT: {{  $}}436    ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF437    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF438    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF439    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF440    ; SCHED-NEXT: $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec441    ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec442    ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec443    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec444    ; SCHED-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec445    ; SCHED-NEXT: $vgpr12 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec446    ; SCHED-NEXT: $vgpr11 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo447    ; SCHED-NEXT: $vgpr19 = V_CNDMASK_B32_e32 $vgpr0, killed $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo448    ; SCHED-NEXT: $vgpr17 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec449    ; SCHED-NEXT: $vgpr10 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo450    ; SCHED-NEXT: $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit killed $vcc_lo451    ; SCHED-NEXT: $vgpr16 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec452    ; SCHED-NEXT: $vgpr14 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec453    ;454    ; PAIR-GFX11-LABEL: name: vopd_schedule_unconstrained455    ; PAIR-GFX11: liveins: $vcc_lo456    ; PAIR-GFX11-NEXT: {{  $}}457    ; PAIR-GFX11-NEXT: $vgpr2 = IMPLICIT_DEF458    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF459    ; PAIR-GFX11-NEXT: $vgpr0 = IMPLICIT_DEF460    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF461    ; PAIR-GFX11-NEXT: $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec462    ; PAIR-GFX11-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx11 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec463    ; PAIR-GFX11-NEXT: $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec464    ; PAIR-GFX11-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec465    ; PAIR-GFX11-NEXT: $vgpr12, $vgpr11 = V_DUAL_ADD_F32_e32_X_CNDMASK_B32_e32_gfx11 $vgpr1, $vgpr1, $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo466    ; PAIR-GFX11-NEXT: $vgpr19 = V_CNDMASK_B32_e32 $vgpr0, killed $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo467    ; PAIR-GFX11-NEXT: $vgpr17, $vgpr10 = V_DUAL_MUL_F32_e32_X_CNDMASK_B32_e32_gfx11 killed $vgpr0, $vgpr0, $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo468    ; PAIR-GFX11-NEXT: $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit killed $vcc_lo469    ; PAIR-GFX11-NEXT: $vgpr16 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec470    ; PAIR-GFX11-NEXT: $vgpr14 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec471    ;472    ; PAIR-GFX12-LABEL: name: vopd_schedule_unconstrained473    ; PAIR-GFX12: liveins: $vcc_lo474    ; PAIR-GFX12-NEXT: {{  $}}475    ; PAIR-GFX12-NEXT: $vgpr2 = IMPLICIT_DEF476    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF477    ; PAIR-GFX12-NEXT: $vgpr0 = IMPLICIT_DEF478    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF479    ; PAIR-GFX12-NEXT: $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec480    ; PAIR-GFX12-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx12 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec481    ; PAIR-GFX12-NEXT: $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec482    ; PAIR-GFX12-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec483    ; PAIR-GFX12-NEXT: $vgpr12, $vgpr11 = V_DUAL_ADD_F32_e32_X_CNDMASK_B32_e32_gfx12 $vgpr1, $vgpr1, $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo484    ; PAIR-GFX12-NEXT: $vgpr19 = V_CNDMASK_B32_e32 $vgpr0, killed $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo485    ; PAIR-GFX12-NEXT: $vgpr17, $vgpr10 = V_DUAL_MUL_F32_e32_X_CNDMASK_B32_e32_gfx12 killed $vgpr0, $vgpr0, $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo486    ; PAIR-GFX12-NEXT: $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit killed $vcc_lo487    ; PAIR-GFX12-NEXT: $vgpr16 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec488    ; PAIR-GFX12-NEXT: $vgpr14 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec489    $vgpr0 = IMPLICIT_DEF490    $vgpr1 = IMPLICIT_DEF491    $vgpr2 = IMPLICIT_DEF492    $vgpr3 = IMPLICIT_DEF493    $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, $vgpr2, implicit $mode, implicit $exec494    $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec495    $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec496    $vgpr10 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc497    $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec498    $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec499    ; $vgpr9 = V_FMAMK_F32 $vgpr0, 10, $vgpr2, implicit $mode, implicit $exec500    $vgpr11 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc501    $vgpr19 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc502    $vgpr12 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec503    $vgpr17 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec504    ; $vgpr18 = V_FMAMK_F32 $vgpr0, 10, $vgpr3, implicit $mode, implicit $exec505    ; $vgpr11 = V_FMAC_F32_e32 10, $vgpr1, $vgpr11, implicit $mode, implicit $exec506    $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc507    $vgpr16 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec508    $vgpr14 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec509 510...511 512---513name:            vopd_schedule_unconstrained_2514tracksRegLiveness: true515body:             |516  bb.0:517    liveins: $vcc_lo518 519    ; SCHED-LABEL: name: vopd_schedule_unconstrained_2520    ; SCHED: liveins: $vcc_lo521    ; SCHED-NEXT: {{  $}}522    ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF523    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF524    ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF525    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF526    ; SCHED-NEXT: $vgpr20 = IMPLICIT_DEF527    ; SCHED-NEXT: $vgpr16 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec528    ; SCHED-NEXT: $vgpr35 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec529    ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec530    ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec531    ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec532    ; SCHED-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec533    ; SCHED-NEXT: $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec534    ; SCHED-NEXT: $vgpr29 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo535    ; SCHED-NEXT: $vgpr19 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo536    ; SCHED-NEXT: $vgpr20 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr20, implicit $mode, implicit $exec537    ; SCHED-NEXT: $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo538    ; SCHED-NEXT: $vgpr10 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo539    ; SCHED-NEXT: $vgpr17 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec540    ; SCHED-NEXT: $vgpr11 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo541    ; SCHED-NEXT: $vgpr12 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec542    ; SCHED-NEXT: $vgpr37 = V_CNDMASK_B32_e32 $vgpr0, killed $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo543    ; SCHED-NEXT: $vgpr14 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec544    ; SCHED-NEXT: $vgpr20 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec545    ; SCHED-NEXT: $vgpr21 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec546    ; SCHED-NEXT: $vgpr24 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec547    ; SCHED-NEXT: $vgpr28 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo548    ; SCHED-NEXT: $vgpr22 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec549    ; SCHED-NEXT: $vgpr31 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec550    ; SCHED-NEXT: $vgpr33 = V_CNDMASK_B32_e32 $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit killed $vcc_lo551    ; SCHED-NEXT: $vgpr34 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec552    ; SCHED-NEXT: $vgpr32 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec553    ;554    ; PAIR-GFX11-LABEL: name: vopd_schedule_unconstrained_2555    ; PAIR-GFX11: liveins: $vcc_lo556    ; PAIR-GFX11-NEXT: {{  $}}557    ; PAIR-GFX11-NEXT: $vgpr2 = IMPLICIT_DEF558    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF559    ; PAIR-GFX11-NEXT: $vgpr0 = IMPLICIT_DEF560    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF561    ; PAIR-GFX11-NEXT: $vgpr20 = IMPLICIT_DEF562    ; PAIR-GFX11-NEXT: $vgpr16, $vgpr35 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx11 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec563    ; PAIR-GFX11-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx11 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec564    ; PAIR-GFX11-NEXT: $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec565    ; PAIR-GFX11-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec566    ; PAIR-GFX11-NEXT: $vgpr4, $vgpr29 = V_DUAL_SUB_F32_e32_X_CNDMASK_B32_e32_gfx11 $vgpr1, $vgpr1, $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo567    ; PAIR-GFX11-NEXT: $vgpr19, $vgpr20 = V_DUAL_CNDMASK_B32_e32_X_FMAC_F32_e32_gfx11 $vgpr0, $vgpr3, 10, $vgpr1, killed $vgpr20, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec568    ; PAIR-GFX11-NEXT: $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo569    ; PAIR-GFX11-NEXT: $vgpr10, $vgpr17 = V_DUAL_CNDMASK_B32_e32_X_MUL_F32_e32_gfx11 $vgpr1, $vgpr2, $vgpr0, $vgpr0, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec570    ; PAIR-GFX11-NEXT: $vgpr11, $vgpr12 = V_DUAL_CNDMASK_B32_e32_X_ADD_F32_e32_gfx11 $vgpr0, $vgpr3, $vgpr1, $vgpr1, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec571    ; PAIR-GFX11-NEXT: $vgpr37, $vgpr14 = V_DUAL_CNDMASK_B32_e32_X_SUB_F32_e32_gfx11 $vgpr0, killed $vgpr3, $vgpr1, $vgpr1, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec572    ; PAIR-GFX11-NEXT: $vgpr20 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec573    ; PAIR-GFX11-NEXT: $vgpr21, $vgpr24 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx11 $vgpr1, $vgpr1, killed $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec574    ; PAIR-GFX11-NEXT: $vgpr28 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo575    ; PAIR-GFX11-NEXT: $vgpr22 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec576    ; PAIR-GFX11-NEXT: $vgpr31 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec577    ; PAIR-GFX11-NEXT: $vgpr33 = V_CNDMASK_B32_e32 $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit killed $vcc_lo578    ; PAIR-GFX11-NEXT: $vgpr34 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec579    ; PAIR-GFX11-NEXT: $vgpr32 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec580    ;581    ; PAIR-GFX12-LABEL: name: vopd_schedule_unconstrained_2582    ; PAIR-GFX12: liveins: $vcc_lo583    ; PAIR-GFX12-NEXT: {{  $}}584    ; PAIR-GFX12-NEXT: $vgpr2 = IMPLICIT_DEF585    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF586    ; PAIR-GFX12-NEXT: $vgpr0 = IMPLICIT_DEF587    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF588    ; PAIR-GFX12-NEXT: $vgpr20 = IMPLICIT_DEF589    ; PAIR-GFX12-NEXT: $vgpr16, $vgpr35 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx12 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec590    ; PAIR-GFX12-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx12 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec591    ; PAIR-GFX12-NEXT: $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec592    ; PAIR-GFX12-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec593    ; PAIR-GFX12-NEXT: $vgpr4, $vgpr29 = V_DUAL_SUB_F32_e32_X_CNDMASK_B32_e32_gfx12 $vgpr1, $vgpr1, $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $vcc_lo594    ; PAIR-GFX12-NEXT: $vgpr19, $vgpr20 = V_DUAL_CNDMASK_B32_e32_X_FMAC_F32_e32_gfx12 $vgpr0, $vgpr3, 10, $vgpr1, killed $vgpr20, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec595    ; PAIR-GFX12-NEXT: $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo596    ; PAIR-GFX12-NEXT: $vgpr10, $vgpr17 = V_DUAL_CNDMASK_B32_e32_X_MUL_F32_e32_gfx12 $vgpr1, $vgpr2, $vgpr0, $vgpr0, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec597    ; PAIR-GFX12-NEXT: $vgpr11, $vgpr12 = V_DUAL_CNDMASK_B32_e32_X_ADD_F32_e32_gfx12 $vgpr0, $vgpr3, $vgpr1, $vgpr1, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec598    ; PAIR-GFX12-NEXT: $vgpr37, $vgpr14 = V_DUAL_CNDMASK_B32_e32_X_SUB_F32_e32_gfx12 $vgpr0, killed $vgpr3, $vgpr1, $vgpr1, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $mode, implicit $exec, implicit $vcc_lo, implicit $mode, implicit $exec599    ; PAIR-GFX12-NEXT: $vgpr20 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec600    ; PAIR-GFX12-NEXT: $vgpr21, $vgpr24 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx12 $vgpr1, $vgpr1, killed $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec601    ; PAIR-GFX12-NEXT: $vgpr28 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc_lo602    ; PAIR-GFX12-NEXT: $vgpr22 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec603    ; PAIR-GFX12-NEXT: $vgpr31 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec604    ; PAIR-GFX12-NEXT: $vgpr33 = V_CNDMASK_B32_e32 $vgpr1, killed $vgpr2, implicit $mode, implicit $exec, implicit killed $vcc_lo605    ; PAIR-GFX12-NEXT: $vgpr34 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec606    ; PAIR-GFX12-NEXT: $vgpr32 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec607    $vgpr0 = IMPLICIT_DEF608    $vgpr1 = IMPLICIT_DEF609    $vgpr2 = IMPLICIT_DEF610    $vgpr3 = IMPLICIT_DEF611    $vgpr2 = V_FMAC_F32_e32 10, $vgpr1, $vgpr2, implicit $mode, implicit $exec612    $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec613    $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec614    $vgpr10 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc615    $vgpr4 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec616    $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec617    ; $vgpr9 = V_FMAMK_F32 $vgpr0, 10, $vgpr2, implicit $mode, implicit $exec618    $vgpr11 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc619    $vgpr19 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc620    $vgpr12 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec621    $vgpr17 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec622    ; $vgpr18 = V_FMAMK_F32 $vgpr0, 10, $vgpr3, implicit $mode, implicit $exec623    ; $vgpr11 = V_FMAC_F32_e32 10, $vgpr1, $vgpr11, implicit $mode, implicit $exec624    $vgpr15 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc625    $vgpr16 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec626    $vgpr14 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec627    $vgpr20 = IMPLICIT_DEF628    $vgpr20 = V_FMAC_F32_e32 10, $vgpr1, $vgpr20, implicit $mode, implicit $exec629    $vgpr20 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec630    $vgpr21 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec631    $vgpr28 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc632    $vgpr22 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec633    $vgpr24 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec634    ; $vgpr9 = V_FMAMK_F32 $vgpr0, 10, $vgpr2, implicit $mode, implicit $exec635    $vgpr29 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc636    $vgpr37 = V_CNDMASK_B32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec, implicit $vcc637    $vgpr31 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec638    $vgpr35 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec639    ; $vgpr18 = V_FMAMK_F32 $vgpr0, 10, $vgpr3, implicit $mode, implicit $exec640    ; $vgpr11 = V_FMAC_F32_e32 10, $vgpr1, $vgpr11, implicit $mode, implicit $exec641    $vgpr33 = V_CNDMASK_B32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec, implicit $vcc642    $vgpr34 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec643    $vgpr32 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec644 645...646 647---648name: vopd_mov_fixup649tracksRegLiveness: true650body: |651  bb.0:652    ; SCHED-LABEL: name: vopd_mov_fixup653    ; SCHED: $vgpr0 = IMPLICIT_DEF654    ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF655    ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec656    ; SCHED-NEXT: $vgpr3 = V_ADD_F32_e32 killed $vgpr0, killed $vgpr1, implicit $mode, implicit $exec657    ; SCHED-NEXT: $vgpr4 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec658    ; SCHED-NEXT: $vgpr5 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec659    ;660    ; PAIR-GFX11-LABEL: name: vopd_mov_fixup661    ; PAIR-GFX11: $vgpr0 = IMPLICIT_DEF662    ; PAIR-GFX11-NEXT: $vgpr1 = IMPLICIT_DEF663    ; PAIR-GFX11-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_ADD_F32_e32_gfx11 target-flags(amdgpu-abs32-lo) @lds, killed $vgpr0, killed $vgpr1, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec664    ; PAIR-GFX11-NEXT: $vgpr4, $vgpr5 = V_DUAL_MOV_B32_e32_X_MOV_B32_e32_gfx11 target-flags(amdgpu-abs32-lo) @lds, target-flags(amdgpu-abs32-lo) @lds, implicit $exec, implicit $exec, implicit $exec665    ;666    ; PAIR-GFX12-LABEL: name: vopd_mov_fixup667    ; PAIR-GFX12: $vgpr0 = IMPLICIT_DEF668    ; PAIR-GFX12-NEXT: $vgpr1 = IMPLICIT_DEF669    ; PAIR-GFX12-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_ADD_F32_e32_gfx12 target-flags(amdgpu-abs32-lo) @lds, killed $vgpr0, killed $vgpr1, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec670    ; PAIR-GFX12-NEXT: $vgpr4, $vgpr5 = V_DUAL_MOV_B32_e32_X_MOV_B32_e32_gfx12 target-flags(amdgpu-abs32-lo) @lds, target-flags(amdgpu-abs32-lo) @lds, implicit $exec, implicit $exec, implicit $exec671    $vgpr0 = IMPLICIT_DEF672    $vgpr1 = IMPLICIT_DEF673    ; should pair674    $vgpr2 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec675    $vgpr3 = V_ADD_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec676    ; should pair677    $vgpr4 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec678    $vgpr5 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec679...680 681---682name: vopd_mov_fixup_fail683tracksRegLiveness: true684body: |685  bb.0:686    ; SCHED-LABEL: name: vopd_mov_fixup_fail687    ; SCHED: $vgpr0 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec688    ; SCHED-NEXT: $vgpr1 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds + 4, implicit $exec689    ;690    ; PAIR-LABEL: name: vopd_mov_fixup_fail691    ; PAIR: $vgpr0 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec692    ; PAIR-NEXT: $vgpr1 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds + 4, implicit $exec693    $vgpr0 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds, implicit $exec694    $vgpr1 = V_MOV_B32_e32 target-flags(amdgpu-abs32-lo) @lds + 4, implicit $exec695...696 697---698name:            vopd_no_combine_dependent_subreg699tracksRegLiveness: true700body:             |701  bb.0:702 703    ; SCHED-LABEL: name: vopd_no_combine_dependent_subreg704    ; SCHED: $vgpr0 = IMPLICIT_DEF705    ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit-def $vgpr2_vgpr3, implicit $exec706    ; SCHED-NEXT: $vgpr5 = V_ADD_F32_e32 killed $vgpr0, killed $vgpr3, implicit $mode, implicit $exec707    ;708    ; PAIR-LABEL: name: vopd_no_combine_dependent_subreg709    ; PAIR: $vgpr0 = IMPLICIT_DEF710    ; PAIR-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit-def $vgpr2_vgpr3, implicit $exec711    ; PAIR-NEXT: $vgpr5 = V_ADD_F32_e32 killed $vgpr0, killed $vgpr3, implicit $mode, implicit $exec712    $vgpr0 = IMPLICIT_DEF713    $vgpr2 = V_MOV_B32_e32 0, implicit-def $vgpr2_vgpr3, implicit $exec714    $vgpr5 = V_ADD_F32_e32 $vgpr0, $vgpr3, implicit $mode, implicit $exec715...716 717---718name:            vopd_mov_mov_same_src_bank719tracksRegLiveness: true720body:             |721  bb.0:722 723    ; SCHED-LABEL: name: vopd_mov_mov_same_src_bank724    ; SCHED: $vgpr1 = IMPLICIT_DEF725    ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF726    ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 killed $vgpr1, implicit $exec727    ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 killed $vgpr5, implicit $exec728    ;729    ; PAIR-GFX11-LABEL: name: vopd_mov_mov_same_src_bank730    ; PAIR-GFX11: $vgpr1 = IMPLICIT_DEF731    ; PAIR-GFX11-NEXT: $vgpr5 = IMPLICIT_DEF732    ; PAIR-GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 killed $vgpr1, implicit $exec733    ; PAIR-GFX11-NEXT: $vgpr3 = V_MOV_B32_e32 killed $vgpr5, implicit $exec734    ;735    ; PAIR-GFX12-LABEL: name: vopd_mov_mov_same_src_bank736    ; PAIR-GFX12: $vgpr1 = IMPLICIT_DEF737    ; PAIR-GFX12-NEXT: $vgpr5 = IMPLICIT_DEF738    ; PAIR-GFX12-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_MOV_B32_e32_gfx12 killed $vgpr1, killed $vgpr5, implicit $exec, implicit $exec, implicit $exec739    $vgpr1 = IMPLICIT_DEF740    $vgpr5 = IMPLICIT_DEF741    $vgpr2 = V_MOV_B32_e32 $vgpr1, implicit $exec742    $vgpr3 = V_MOV_B32_e32 $vgpr5, implicit $exec743...744 745---746# There is no race between mov and add, they are executed at the same time747name:            vopd_combine_opy_overwrites_opx748tracksRegLiveness: true749body:             |750  bb.0:751    ; SCHED-LABEL: name: vopd_combine_opy_overwrites_opx752    ; SCHED: $vgpr1 = IMPLICIT_DEF753    ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF754    ; SCHED-NEXT: $vgpr0 = V_MOV_B32_e32 killed $vgpr1, implicit $exec755    ; SCHED-NEXT: $vgpr1 = V_ADD_F32_e32 killed $vgpr3, $vgpr3, implicit $mode, implicit $exec756    ;757    ; PAIR-GFX11-LABEL: name: vopd_combine_opy_overwrites_opx758    ; PAIR-GFX11: $vgpr1 = IMPLICIT_DEF759    ; PAIR-GFX11-NEXT: $vgpr3 = IMPLICIT_DEF760    ; PAIR-GFX11-NEXT: $vgpr0, $vgpr1 = V_DUAL_MOV_B32_e32_X_ADD_F32_e32_gfx11 killed $vgpr1, killed $vgpr3, $vgpr3, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec761    ;762    ; PAIR-GFX12-LABEL: name: vopd_combine_opy_overwrites_opx763    ; PAIR-GFX12: $vgpr1 = IMPLICIT_DEF764    ; PAIR-GFX12-NEXT: $vgpr3 = IMPLICIT_DEF765    ; PAIR-GFX12-NEXT: $vgpr0, $vgpr1 = V_DUAL_MOV_B32_e32_X_ADD_F32_e32_gfx12 killed $vgpr1, killed $vgpr3, $vgpr3, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec766    $vgpr1 = IMPLICIT_DEF767    $vgpr3 = IMPLICIT_DEF768    $vgpr0 = V_MOV_B32_e32 $vgpr1, implicit $exec769    $vgpr1 = V_ADD_F32_e32 $vgpr3, $vgpr3, implicit $mode, implicit $exec770...771 772---773# OPY cannot cosume value produced by OPX774name:            vopd_no_combine_opx_overwrites_opy775tracksRegLiveness: true776body:             |777  bb.0:778    ; SCHED-LABEL: name: vopd_no_combine_opx_overwrites_opy779    ; SCHED: $vgpr1 = IMPLICIT_DEF780    ; SCHED-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr1, implicit $exec781    ; SCHED-NEXT: $vgpr3 = V_ADD_F32_e32 killed $vgpr0, killed $vgpr1, implicit $mode, implicit $exec782    ;783    ; PAIR-LABEL: name: vopd_no_combine_opx_overwrites_opy784    ; PAIR: $vgpr1 = IMPLICIT_DEF785    ; PAIR-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr1, implicit $exec786    ; PAIR-NEXT: $vgpr3 = V_ADD_F32_e32 killed $vgpr0, killed $vgpr1, implicit $mode, implicit $exec787    $vgpr1 = IMPLICIT_DEF788    $vgpr0 = V_MOV_B32_e32 $vgpr1, implicit $exec789    $vgpr3 = V_ADD_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec790...791