3517 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 22# RUN: llc -mtriple=amdgcn -mcpu=gfx1250 -run-pass=postmisched %s -o - | FileCheck -check-prefix=SCHED %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx1250 -run-pass=postmisched,gcn-create-vopd %s -o - | FileCheck -check-prefix=PAIR %s4 5---6name: vopd_combine_low_vgprs7tracksRegLiveness: true8body: |9 bb.0:10 11 ; SCHED-LABEL: name: vopd_combine_low_vgprs12 ; SCHED: $vgpr0 = IMPLICIT_DEF13 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF14 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec15 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec16 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec17 ;18 ; PAIR-LABEL: name: vopd_combine_low_vgprs19 ; PAIR: $vgpr0 = IMPLICIT_DEF20 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF21 ; PAIR-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 $vgpr1, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec22 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec23 $vgpr0 = IMPLICIT_DEF24 $vgpr1 = IMPLICIT_DEF25 $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec26 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec27 $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec28...29 30---31name: vopd_combine_hi_vgprs32tracksRegLiveness: true33body: |34 bb.0:35 36 ; SCHED-LABEL: name: vopd_combine_hi_vgprs37 ; SCHED: $vgpr300 = IMPLICIT_DEF38 ; SCHED-NEXT: $vgpr301 = IMPLICIT_DEF39 ; SCHED-NEXT: $vgpr303 = V_SUB_F32_e32 $vgpr301, $vgpr301, implicit $mode, implicit $exec40 ; SCHED-NEXT: $vgpr306 = V_MUL_F32_e32 $vgpr300, $vgpr300, implicit $mode, implicit $exec41 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr300, $vgpr301, implicit $exec42 ;43 ; PAIR-LABEL: name: vopd_combine_hi_vgprs44 ; PAIR: $vgpr300 = IMPLICIT_DEF45 ; PAIR-NEXT: $vgpr301 = IMPLICIT_DEF46 ; PAIR-NEXT: $vgpr303, $vgpr306 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 $vgpr301, $vgpr301, $vgpr300, $vgpr300, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec47 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr300, $vgpr301, implicit $exec48 $vgpr300 = IMPLICIT_DEF49 $vgpr301 = IMPLICIT_DEF50 $vgpr303 = V_SUB_F32_e32 $vgpr301, $vgpr301, implicit $mode, implicit $exec51 $vgpr4 = V_BFM_B32_e32 $vgpr300, $vgpr301, implicit $exec52 $vgpr306 = V_MUL_F32_e32 killed $vgpr300, $vgpr300, implicit $mode, implicit $exec53...54 55---56name: vopd_combine_hi_vgprs_above_51257tracksRegLiveness: true58body: |59 bb.0:60 61 ; SCHED-LABEL: name: vopd_combine_hi_vgprs_above_51262 ; SCHED: $vgpr812 = IMPLICIT_DEF63 ; SCHED-NEXT: $vgpr813 = IMPLICIT_DEF64 ; SCHED-NEXT: $vgpr559 = V_SUB_F32_e32 $vgpr813, $vgpr813, implicit $mode, implicit $exec65 ; SCHED-NEXT: $vgpr562 = V_MUL_F32_e32 $vgpr812, $vgpr812, implicit $mode, implicit $exec66 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr812, $vgpr813, implicit $exec67 ;68 ; PAIR-LABEL: name: vopd_combine_hi_vgprs_above_51269 ; PAIR: $vgpr812 = IMPLICIT_DEF70 ; PAIR-NEXT: $vgpr813 = IMPLICIT_DEF71 ; PAIR-NEXT: $vgpr559, $vgpr562 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 $vgpr813, $vgpr813, $vgpr812, $vgpr812, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec72 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr812, $vgpr813, implicit $exec73 $vgpr812 = IMPLICIT_DEF74 $vgpr813 = IMPLICIT_DEF75 $vgpr559 = V_SUB_F32_e32 $vgpr813, $vgpr813, implicit $mode, implicit $exec76 $vgpr4 = V_BFM_B32_e32 $vgpr812, $vgpr813, implicit $exec77 $vgpr562 = V_MUL_F32_e32 killed $vgpr812, $vgpr812, implicit $mode, implicit $exec78...79 80---81name: mixed_vgprs_low_and_hi_dst82tracksRegLiveness: true83body: |84 bb.0:85 86 ; SCHED-LABEL: name: mixed_vgprs_low_and_hi_dst87 ; SCHED: $vgpr0 = IMPLICIT_DEF88 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF89 ; SCHED-NEXT: $vgpr303 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec90 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec91 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec92 ;93 ; PAIR-LABEL: name: mixed_vgprs_low_and_hi_dst94 ; PAIR: $vgpr0 = IMPLICIT_DEF95 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF96 ; PAIR-NEXT: $vgpr303 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec97 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec98 ; PAIR-NEXT: $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec99 $vgpr0 = IMPLICIT_DEF100 $vgpr1 = IMPLICIT_DEF101 $vgpr303 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec102 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec103 $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec104...105 106---107name: mixed_vgprs_low_and_hi_scr0108tracksRegLiveness: true109body: |110 bb.0:111 112 ; SCHED-LABEL: name: mixed_vgprs_low_and_hi_scr0113 ; SCHED: $vgpr0 = IMPLICIT_DEF114 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF115 ; SCHED-NEXT: $vgpr300 = IMPLICIT_DEF116 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec117 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec118 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr300, killed $vgpr0, implicit $mode, implicit $exec119 ;120 ; PAIR-LABEL: name: mixed_vgprs_low_and_hi_scr0121 ; PAIR: $vgpr0 = IMPLICIT_DEF122 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF123 ; PAIR-NEXT: $vgpr300 = IMPLICIT_DEF124 ; PAIR-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec125 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec126 ; PAIR-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr300, killed $vgpr0, implicit $mode, implicit $exec127 $vgpr0 = IMPLICIT_DEF128 $vgpr1 = IMPLICIT_DEF129 $vgpr300 = IMPLICIT_DEF130 $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec131 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec132 $vgpr6 = V_MUL_F32_e32 killed $vgpr300, $vgpr0, implicit $mode, implicit $exec133...134 135---136name: mixed_vgprs_low_and_hi_scr1137tracksRegLiveness: true138body: |139 bb.0:140 141 ; SCHED-LABEL: name: mixed_vgprs_low_and_hi_scr1142 ; SCHED: $vgpr0 = IMPLICIT_DEF143 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF144 ; SCHED-NEXT: $vgpr300 = IMPLICIT_DEF145 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr301, implicit $mode, implicit $exec146 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec147 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr300, killed $vgpr0, implicit $mode, implicit $exec148 ;149 ; PAIR-LABEL: name: mixed_vgprs_low_and_hi_scr1150 ; PAIR: $vgpr0 = IMPLICIT_DEF151 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF152 ; PAIR-NEXT: $vgpr300 = IMPLICIT_DEF153 ; PAIR-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr301, implicit $mode, implicit $exec154 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec155 ; PAIR-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr300, killed $vgpr0, implicit $mode, implicit $exec156 $vgpr0 = IMPLICIT_DEF157 $vgpr1 = IMPLICIT_DEF158 $vgpr300 = IMPLICIT_DEF159 $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr301, implicit $mode, implicit $exec160 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec161 $vgpr6 = V_MUL_F32_e32 killed $vgpr300, $vgpr0, implicit $mode, implicit $exec162...163 164---165name: mixed_vgprs_hi_and_hi_dst_different_msb166tracksRegLiveness: true167body: |168 bb.0:169 170 ; SCHED-LABEL: name: mixed_vgprs_hi_and_hi_dst_different_msb171 ; SCHED: $vgpr0 = IMPLICIT_DEF172 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF173 ; SCHED-NEXT: $vgpr559 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec174 ; SCHED-NEXT: $vgpr303 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec175 ;176 ; PAIR-LABEL: name: mixed_vgprs_hi_and_hi_dst_different_msb177 ; PAIR: $vgpr0 = IMPLICIT_DEF178 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF179 ; PAIR-NEXT: $vgpr559 = V_SUB_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec180 ; PAIR-NEXT: $vgpr303 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec181 $vgpr0 = IMPLICIT_DEF182 $vgpr1 = IMPLICIT_DEF183 $vgpr559 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec184 $vgpr303 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec185...186 187---188name: mixed_vgprs_low_and_hi_scr0_different_msb189tracksRegLiveness: true190body: |191 bb.0:192 193 ; SCHED-LABEL: name: mixed_vgprs_low_and_hi_scr0_different_msb194 ; SCHED: $vgpr0 = IMPLICIT_DEF195 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF196 ; SCHED-NEXT: $vgpr513 = IMPLICIT_DEF197 ; SCHED-NEXT: $vgpr812 = IMPLICIT_DEF198 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr513, killed $vgpr1, implicit $mode, implicit $exec199 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr812, killed $vgpr0, implicit $mode, implicit $exec200 ;201 ; PAIR-LABEL: name: mixed_vgprs_low_and_hi_scr0_different_msb202 ; PAIR: $vgpr0 = IMPLICIT_DEF203 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF204 ; PAIR-NEXT: $vgpr513 = IMPLICIT_DEF205 ; PAIR-NEXT: $vgpr812 = IMPLICIT_DEF206 ; PAIR-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr513, killed $vgpr1, implicit $mode, implicit $exec207 ; PAIR-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr812, killed $vgpr0, implicit $mode, implicit $exec208 $vgpr0 = IMPLICIT_DEF209 $vgpr1 = IMPLICIT_DEF210 $vgpr513 = IMPLICIT_DEF211 $vgpr812 = IMPLICIT_DEF212 $vgpr3 = V_SUB_F32_e32 $vgpr513, $vgpr1, implicit $mode, implicit $exec213 $vgpr6 = V_MUL_F32_e32 killed $vgpr812, $vgpr0, implicit $mode, implicit $exec214...215 216---217name: vopd_combine_sgpr_src0218tracksRegLiveness: true219body: |220 bb.0:221 222 ; SCHED-LABEL: name: vopd_combine_sgpr_src0223 ; SCHED: $vgpr0 = IMPLICIT_DEF224 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF225 ; SCHED-NEXT: $vgpr300 = IMPLICIT_DEF226 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF227 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 killed $sgpr0, $vgpr1, implicit $mode, implicit $exec228 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr300, $vgpr0, implicit $mode, implicit $exec229 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec230 ;231 ; PAIR-LABEL: name: vopd_combine_sgpr_src0232 ; PAIR: $vgpr0 = IMPLICIT_DEF233 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF234 ; PAIR-NEXT: $vgpr300 = IMPLICIT_DEF235 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF236 ; PAIR-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 killed $sgpr0, $vgpr1, $vgpr300, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec237 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec238 $vgpr0 = IMPLICIT_DEF239 $vgpr1 = IMPLICIT_DEF240 $vgpr300 = IMPLICIT_DEF241 $sgpr0 = IMPLICIT_DEF242 $vgpr3 = V_SUB_F32_e32 $sgpr0, $vgpr1, implicit $mode, implicit $exec243 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec244 $vgpr6 = V_MUL_F32_e32 killed $vgpr300, $vgpr0, implicit $mode, implicit $exec245...246 247---248name: vopd_combine_imm_src0249tracksRegLiveness: true250body: |251 bb.0:252 253 ; SCHED-LABEL: name: vopd_combine_imm_src0254 ; SCHED: $vgpr0 = IMPLICIT_DEF255 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF256 ; SCHED-NEXT: $vgpr300 = IMPLICIT_DEF257 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 0, $vgpr1, implicit $mode, implicit $exec258 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr300, $vgpr0, implicit $mode, implicit $exec259 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec260 ;261 ; PAIR-LABEL: name: vopd_combine_imm_src0262 ; PAIR: $vgpr0 = IMPLICIT_DEF263 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF264 ; PAIR-NEXT: $vgpr300 = IMPLICIT_DEF265 ; PAIR-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 0, $vgpr1, $vgpr300, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec266 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec267 $vgpr0 = IMPLICIT_DEF268 $vgpr1 = IMPLICIT_DEF269 $vgpr300 = IMPLICIT_DEF270 $vgpr3 = V_SUB_F32_e32 0, $vgpr1, implicit $mode, implicit $exec271 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec272 $vgpr6 = V_MUL_F32_e32 killed $vgpr300, $vgpr0, implicit $mode, implicit $exec273...274 275---276name: vopd_mov_max_i32277tracksRegLiveness: true278body: |279 bb.0:280 281 ; SCHED-LABEL: name: vopd_mov_max_i32282 ; SCHED: $vgpr0 = IMPLICIT_DEF283 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF284 ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec285 ; SCHED-NEXT: $vgpr3 = V_MAX_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec286 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec287 ;288 ; PAIR-LABEL: name: vopd_mov_max_i32289 ; PAIR: $vgpr0 = IMPLICIT_DEF290 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF291 ; PAIR-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_MAX_I32_e32_gfx1250 $vgpr0, $vgpr1, $vgpr1, implicit $exec, implicit $exec, implicit $mode, implicit $exec292 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec293 $vgpr0 = IMPLICIT_DEF294 $vgpr1 = IMPLICIT_DEF295 $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec296 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec297 $vgpr3 = V_MAX_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec298...299 300---301name: vopd_mov_min_i32302tracksRegLiveness: true303body: |304 bb.0:305 306 ; SCHED-LABEL: name: vopd_mov_min_i32307 ; SCHED: $vgpr0 = IMPLICIT_DEF308 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF309 ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec310 ; SCHED-NEXT: $vgpr3 = V_MIN_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec311 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec312 ;313 ; PAIR-LABEL: name: vopd_mov_min_i32314 ; PAIR: $vgpr0 = IMPLICIT_DEF315 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF316 ; PAIR-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_MIN_I32_e32_gfx1250 $vgpr0, $vgpr1, $vgpr1, implicit $exec, implicit $exec, implicit $mode, implicit $exec317 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec318 $vgpr0 = IMPLICIT_DEF319 $vgpr1 = IMPLICIT_DEF320 $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec321 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec322 $vgpr3 = V_MIN_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec323...324 325---326name: vopd_no_combine_max_i32_max_i32327tracksRegLiveness: true328body: |329 bb.0:330 331 ; SCHED-LABEL: name: vopd_no_combine_max_i32_max_i32332 ; SCHED: $vgpr0 = IMPLICIT_DEF333 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF334 ; SCHED-NEXT: $vgpr2 = V_MAX_I32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec335 ; SCHED-NEXT: $vgpr3 = V_MAX_I32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec336 ;337 ; PAIR-LABEL: name: vopd_no_combine_max_i32_max_i32338 ; PAIR: $vgpr0 = IMPLICIT_DEF339 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF340 ; PAIR-NEXT: $vgpr2 = V_MAX_I32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec341 ; PAIR-NEXT: $vgpr3 = V_MAX_I32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec342 $vgpr0 = IMPLICIT_DEF343 $vgpr1 = IMPLICIT_DEF344 $vgpr2 = V_MAX_I32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec345 $vgpr3 = V_MAX_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec346...347 348---349name: vopd_no_combine_min_i32_min_i32350tracksRegLiveness: true351body: |352 bb.0:353 354 ; SCHED-LABEL: name: vopd_no_combine_min_i32_min_i32355 ; SCHED: $vgpr0 = IMPLICIT_DEF356 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF357 ; SCHED-NEXT: $vgpr2 = V_MIN_I32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec358 ; SCHED-NEXT: $vgpr3 = V_MIN_I32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec359 ;360 ; PAIR-LABEL: name: vopd_no_combine_min_i32_min_i32361 ; PAIR: $vgpr0 = IMPLICIT_DEF362 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF363 ; PAIR-NEXT: $vgpr2 = V_MIN_I32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec364 ; PAIR-NEXT: $vgpr3 = V_MIN_I32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec365 $vgpr0 = IMPLICIT_DEF366 $vgpr1 = IMPLICIT_DEF367 $vgpr2 = V_MIN_I32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec368 $vgpr3 = V_MIN_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec369...370 371---372name: vopd_mov_sub_nc_i32373tracksRegLiveness: true374body: |375 bb.0:376 377 ; SCHED-LABEL: name: vopd_mov_sub_nc_i32378 ; SCHED: $vgpr0 = IMPLICIT_DEF379 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF380 ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec381 ; SCHED-NEXT: $vgpr3 = V_SUB_U32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec382 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec383 ;384 ; PAIR-LABEL: name: vopd_mov_sub_nc_i32385 ; PAIR: $vgpr0 = IMPLICIT_DEF386 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF387 ; PAIR-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_SUB_U32_e32_gfx1250 $vgpr0, $vgpr1, $vgpr1, implicit $exec, implicit $exec, implicit $mode, implicit $exec388 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec389 $vgpr0 = IMPLICIT_DEF390 $vgpr1 = IMPLICIT_DEF391 $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec392 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec393 $vgpr3 = V_SUB_U32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec394...395 396---397name: vopd_mov_lshrrev_b32398tracksRegLiveness: true399body: |400 bb.0:401 402 ; SCHED-LABEL: name: vopd_mov_lshrrev_b32403 ; SCHED: $vgpr0 = IMPLICIT_DEF404 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF405 ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec406 ; SCHED-NEXT: $vgpr3 = V_LSHRREV_B32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec407 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec408 ;409 ; PAIR-LABEL: name: vopd_mov_lshrrev_b32410 ; PAIR: $vgpr0 = IMPLICIT_DEF411 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF412 ; PAIR-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_LSHRREV_B32_e32_gfx1250 $vgpr0, $vgpr1, $vgpr1, implicit $exec, implicit $exec, implicit $mode, implicit $exec413 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec414 $vgpr0 = IMPLICIT_DEF415 $vgpr1 = IMPLICIT_DEF416 $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec417 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec418 $vgpr3 = V_LSHRREV_B32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec419...420 421---422name: vopd_mov_ashrrev_i32423tracksRegLiveness: true424body: |425 bb.0:426 427 ; SCHED-LABEL: name: vopd_mov_ashrrev_i32428 ; SCHED: $vgpr0 = IMPLICIT_DEF429 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF430 ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec431 ; SCHED-NEXT: $vgpr3 = V_ASHRREV_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec432 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec433 ;434 ; PAIR-LABEL: name: vopd_mov_ashrrev_i32435 ; PAIR: $vgpr0 = IMPLICIT_DEF436 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF437 ; PAIR-NEXT: $vgpr2, $vgpr3 = V_DUAL_MOV_B32_e32_X_ASHRREV_I32_e32_gfx1250 $vgpr0, $vgpr1, $vgpr1, implicit $exec, implicit $exec, implicit $mode, implicit $exec438 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec439 $vgpr0 = IMPLICIT_DEF440 $vgpr1 = IMPLICIT_DEF441 $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec442 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec443 $vgpr3 = V_ASHRREV_I32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec444...445 446---447name: vopd_no_combine_same_vgprs_banks448tracksRegLiveness: true449body: |450 bb.0:451 452 ; SCHED-LABEL: name: vopd_no_combine_same_vgprs_banks453 ; SCHED: $vgpr0 = IMPLICIT_DEF454 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF455 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF456 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec457 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec458 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 killed $vgpr0, killed $vgpr5, implicit $mode, implicit $exec459 ;460 ; PAIR-LABEL: name: vopd_no_combine_same_vgprs_banks461 ; PAIR: $vgpr0 = IMPLICIT_DEF462 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF463 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF464 ; PAIR-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec465 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec466 ; PAIR-NEXT: $vgpr6 = V_MUL_F32_e32 killed $vgpr0, killed $vgpr5, implicit $mode, implicit $exec467 $vgpr0 = IMPLICIT_DEF468 $vgpr1 = IMPLICIT_DEF469 $vgpr5 = IMPLICIT_DEF470 $vgpr3 = V_SUB_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec471 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec472 $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr5, implicit $mode, implicit $exec473...474 475---476name: vopd_combine_same_vgprs477tracksRegLiveness: true478body: |479 bb.0:480 481 ; SCHED-LABEL: name: vopd_combine_same_vgprs482 ; SCHED: $vgpr0 = IMPLICIT_DEF483 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF484 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec485 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec486 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec487 ;488 ; PAIR-LABEL: name: vopd_combine_same_vgprs489 ; PAIR: $vgpr0 = IMPLICIT_DEF490 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF491 ; PAIR-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 $vgpr0, $vgpr1, $vgpr0, $vgpr1, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec492 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec493 $vgpr0 = IMPLICIT_DEF494 $vgpr1 = IMPLICIT_DEF495 $vgpr3 = V_SUB_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec496 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec497 $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr1, implicit $mode, implicit $exec498...499 500---501name: vopd_combine_same_dst_parity502tracksRegLiveness: true503body: |504 bb.0:505 506 ; SCHED-LABEL: name: vopd_combine_same_dst_parity507 ; SCHED: $vgpr0 = IMPLICIT_DEF508 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF509 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec510 ; SCHED-NEXT: $vgpr5 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec511 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec512 ;513 ; PAIR-LABEL: name: vopd_combine_same_dst_parity514 ; PAIR: $vgpr0 = IMPLICIT_DEF515 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF516 ; PAIR-NEXT: $vgpr3, $vgpr5 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_e96_gfx1250 0, $vgpr1, 0, $vgpr1, 0, $vgpr0, 0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec517 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec518 $vgpr0 = IMPLICIT_DEF519 $vgpr1 = IMPLICIT_DEF520 $vgpr3 = V_SUB_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec521 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec522 $vgpr5 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec523...524 525---526name: vopd_combine_x_fmaak527tracksRegLiveness: true528body: |529 bb.0:530 531 ; SCHED-LABEL: name: vopd_combine_x_fmaak532 ; SCHED: $vgpr0 = IMPLICIT_DEF533 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF534 ; SCHED-NEXT: $vgpr1 = V_FMAAK_F32 killed $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec535 ; SCHED-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec536 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, $vgpr0, implicit $exec537 ;538 ; PAIR-LABEL: name: vopd_combine_x_fmaak539 ; PAIR: $vgpr0 = IMPLICIT_DEF540 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF541 ; PAIR-NEXT: $vgpr1, $vgpr2 = V_DUAL_FMAAK_F32_X_MOV_B32_e32_gfx1250 killed $sgpr0, $vgpr0, 981467136, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $exec542 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, $vgpr0, implicit $exec543 $vgpr0 = IMPLICIT_DEF544 $sgpr0 = IMPLICIT_DEF545 $vgpr1 = V_FMAAK_F32 $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec546 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec547 $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec548...549 550---551name: vopd_combine_y_fmaak552tracksRegLiveness: true553body: |554 bb.0:555 556 ; SCHED-LABEL: name: vopd_combine_y_fmaak557 ; SCHED: $vgpr0 = IMPLICIT_DEF558 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF559 ; SCHED-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr0, implicit $exec560 ; SCHED-NEXT: $vgpr2 = V_FMAAK_F32 killed $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec561 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, $vgpr0, implicit $exec562 ;563 ; PAIR-LABEL: name: vopd_combine_y_fmaak564 ; PAIR: $vgpr0 = IMPLICIT_DEF565 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF566 ; PAIR-NEXT: $vgpr1, $vgpr2 = V_DUAL_MOV_B32_e32_X_FMAAK_F32_gfx1250 $vgpr0, killed $sgpr0, $vgpr0, 981467136, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec567 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, $vgpr0, implicit $exec568 $vgpr0 = IMPLICIT_DEF569 $sgpr0 = IMPLICIT_DEF570 $vgpr1 = V_MOV_B32_e32 $vgpr0, implicit $exec571 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec572 $vgpr2 = V_FMAAK_F32 $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec573...574 575---576name: vopd_no_combine_x_fmaak_same_dst_parity577tracksRegLiveness: true578body: |579 bb.0:580 581 ; SCHED-LABEL: name: vopd_no_combine_x_fmaak_same_dst_parity582 ; SCHED: $vgpr0 = IMPLICIT_DEF583 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF584 ; SCHED-NEXT: $vgpr1 = V_FMAAK_F32 killed $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec585 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec586 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 killed $vgpr0, implicit $exec587 ;588 ; PAIR-LABEL: name: vopd_no_combine_x_fmaak_same_dst_parity589 ; PAIR: $vgpr0 = IMPLICIT_DEF590 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF591 ; PAIR-NEXT: $vgpr1 = V_FMAAK_F32 killed $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec592 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec593 ; PAIR-NEXT: $vgpr3 = V_MOV_B32_e32 killed $vgpr0, implicit $exec594 $vgpr0 = IMPLICIT_DEF595 $sgpr0 = IMPLICIT_DEF596 $vgpr1 = V_FMAAK_F32 $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec597 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec598 $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec599...600 601---602name: vopd_no_combine_y_fmaak_same_dst_parity603tracksRegLiveness: true604body: |605 bb.0:606 607 ; SCHED-LABEL: name: vopd_no_combine_y_fmaak_same_dst_parity608 ; SCHED: $vgpr0 = IMPLICIT_DEF609 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF610 ; SCHED-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr0, implicit $exec611 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec612 ; SCHED-NEXT: $vgpr3 = V_FMAAK_F32 killed $sgpr0, killed $vgpr0, 981467136, implicit $mode, implicit $exec613 ;614 ; PAIR-LABEL: name: vopd_no_combine_y_fmaak_same_dst_parity615 ; PAIR: $vgpr0 = IMPLICIT_DEF616 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF617 ; PAIR-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr0, implicit $exec618 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec619 ; PAIR-NEXT: $vgpr3 = V_FMAAK_F32 killed $sgpr0, killed $vgpr0, 981467136, implicit $mode, implicit $exec620 $vgpr0 = IMPLICIT_DEF621 $sgpr0 = IMPLICIT_DEF622 $vgpr1 = V_MOV_B32_e32 $vgpr0, implicit $exec623 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr0, implicit $exec624 $vgpr3 = V_FMAAK_F32 $sgpr0, $vgpr0, 981467136, implicit $mode, implicit $exec625...626 627---628name: vopd_combine_literal_x629tracksRegLiveness: true630body: |631 bb.0:632 633 ; SCHED-LABEL: name: vopd_combine_literal_x634 ; SCHED: $vgpr0 = IMPLICIT_DEF635 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF636 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec637 ; SCHED-NEXT: $vgpr6 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec638 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec639 ;640 ; PAIR-LABEL: name: vopd_combine_literal_x641 ; PAIR: $vgpr0 = IMPLICIT_DEF642 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF643 ; PAIR-NEXT: $vgpr3, $vgpr6 = V_DUAL_SUB_F32_e32_X_MUL_F32_e32_gfx1250 12345, $vgpr1, $vgpr0, $vgpr0, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec644 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec645 $vgpr0 = IMPLICIT_DEF646 $vgpr1 = IMPLICIT_DEF647 $vgpr3 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec648 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec649 $vgpr6 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec650...651 652---653name: vopd_combine_literal_y654tracksRegLiveness: true655body: |656 bb.0:657 658 ; SCHED-LABEL: name: vopd_combine_literal_y659 ; SCHED: $vgpr0 = IMPLICIT_DEF660 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF661 ; SCHED-NEXT: $vgpr3 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec662 ; SCHED-NEXT: $vgpr6 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec663 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec664 ;665 ; PAIR-LABEL: name: vopd_combine_literal_y666 ; PAIR: $vgpr0 = IMPLICIT_DEF667 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF668 ; PAIR-NEXT: $vgpr3, $vgpr6 = V_DUAL_MUL_F32_e32_X_SUB_F32_e32_gfx1250 $vgpr0, $vgpr0, 12345, $vgpr1, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec669 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec670 $vgpr0 = IMPLICIT_DEF671 $vgpr1 = IMPLICIT_DEF672 $vgpr3 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec673 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec674 $vgpr6 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec675...676 677# Below 2 tests cannot use VOPD because of the vdst parity and cannot use678# VOPD3 because of the literal use.679---680name: vopd_no_combine_literal_x681tracksRegLiveness: true682body: |683 bb.0:684 685 ; SCHED-LABEL: name: vopd_no_combine_literal_x686 ; SCHED: $vgpr0 = IMPLICIT_DEF687 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF688 ; SCHED-NEXT: $vgpr3 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec689 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec690 ; SCHED-NEXT: $vgpr5 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec691 ;692 ; PAIR-LABEL: name: vopd_no_combine_literal_x693 ; PAIR: $vgpr0 = IMPLICIT_DEF694 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF695 ; PAIR-NEXT: $vgpr3 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec696 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 $vgpr0, killed $vgpr1, implicit $exec697 ; PAIR-NEXT: $vgpr5 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec698 $vgpr0 = IMPLICIT_DEF699 $vgpr1 = IMPLICIT_DEF700 $vgpr3 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec701 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec702 $vgpr5 = V_MUL_F32_e32 killed $vgpr0, $vgpr0, implicit $mode, implicit $exec703...704 705---706name: vopd_no_combine_literal_y707tracksRegLiveness: true708body: |709 bb.0:710 711 ; SCHED-LABEL: name: vopd_no_combine_literal_y712 ; SCHED: $vgpr0 = IMPLICIT_DEF713 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF714 ; SCHED-NEXT: $vgpr3 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec715 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, $vgpr1, implicit $exec716 ; SCHED-NEXT: $vgpr5 = V_SUB_F32_e32 12345, killed $vgpr1, implicit $mode, implicit $exec717 ;718 ; PAIR-LABEL: name: vopd_no_combine_literal_y719 ; PAIR: $vgpr0 = IMPLICIT_DEF720 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF721 ; PAIR-NEXT: $vgpr3 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec722 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e32 killed $vgpr0, $vgpr1, implicit $exec723 ; PAIR-NEXT: $vgpr5 = V_SUB_F32_e32 12345, killed $vgpr1, implicit $mode, implicit $exec724 $vgpr0 = IMPLICIT_DEF725 $vgpr1 = IMPLICIT_DEF726 $vgpr3 = V_MUL_F32_e32 $vgpr0, $vgpr0, implicit $mode, implicit $exec727 $vgpr4 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec728 $vgpr5 = V_SUB_F32_e32 12345, $vgpr1, implicit $mode, implicit $exec729...730 731---732name: vopd_combine_add_u32_add_f32733tracksRegLiveness: true734body: |735 bb.0:736 737 ; SCHED-LABEL: name: vopd_combine_add_u32_add_f32738 ; SCHED: $vgpr0 = IMPLICIT_DEF739 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF740 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF741 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF742 ; SCHED-NEXT: $vgpr4 = V_ADD_U32_e32 $vgpr0, $vgpr1, implicit $exec743 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec744 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec745 ;746 ; PAIR-LABEL: name: vopd_combine_add_u32_add_f32747 ; PAIR: $vgpr0 = IMPLICIT_DEF748 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF749 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF750 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF751 ; PAIR-NEXT: $vgpr4, $vgpr6 = V_DUAL_ADD_U32_e32_X_ADD_F32_e32_e96_gfx1250 $vgpr0, $vgpr1, 0, killed $vgpr2, 0, killed $vgpr3, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec752 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec753 $vgpr0 = IMPLICIT_DEF754 $vgpr1 = IMPLICIT_DEF755 $vgpr2 = IMPLICIT_DEF756 $vgpr3 = IMPLICIT_DEF757 $vgpr4 = V_ADD_U32_e32 $vgpr0, $vgpr1, implicit $exec758 $vgpr7 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec759 $vgpr6 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec760...761 762---763name: vopd_combine_add_f32_add_u32764tracksRegLiveness: true765body: |766 bb.0:767 768 ; SCHED-LABEL: name: vopd_combine_add_f32_add_u32769 ; SCHED: $vgpr0 = IMPLICIT_DEF770 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF771 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF772 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF773 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec774 ; SCHED-NEXT: $vgpr4 = V_ADD_U32_e32 $vgpr0, $vgpr1, implicit $exec775 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec776 ;777 ; PAIR-LABEL: name: vopd_combine_add_f32_add_u32778 ; PAIR: $vgpr0 = IMPLICIT_DEF779 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF780 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF781 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF782 ; PAIR-NEXT: $vgpr6, $vgpr4 = V_DUAL_ADD_F32_e32_X_ADD_U32_e32_e96_gfx1250 0, killed $vgpr2, 0, killed $vgpr3, $vgpr0, $vgpr1, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $exec783 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec784 $vgpr0 = IMPLICIT_DEF785 $vgpr1 = IMPLICIT_DEF786 $vgpr2 = IMPLICIT_DEF787 $vgpr3 = IMPLICIT_DEF788 $vgpr6 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec789 $vgpr7 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec790 $vgpr4 = V_ADD_U32_e32 $vgpr0, $vgpr1, implicit $exec791...792 793---794name: vopd_combine_add_u32_add_f32_same_dst_parity795tracksRegLiveness: true796body: |797 bb.0:798 799 ; SCHED-LABEL: name: vopd_combine_add_u32_add_f32_same_dst_parity800 ; SCHED: $vgpr0 = IMPLICIT_DEF801 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF802 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF803 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF804 ; SCHED-NEXT: $vgpr4 = V_ADD_U32_e32 killed $vgpr0, killed $vgpr1, implicit $exec805 ; SCHED-NEXT: $vgpr5 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec806 ;807 ; PAIR-LABEL: name: vopd_combine_add_u32_add_f32_same_dst_parity808 ; PAIR: $vgpr0 = IMPLICIT_DEF809 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF810 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF811 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF812 ; PAIR-NEXT: $vgpr5, $vgpr4 = V_DUAL_ADD_F32_e32_X_ADD_U32_e32_gfx1250 killed $vgpr2, killed $vgpr3, killed $vgpr0, killed $vgpr1, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $exec813 $vgpr0 = IMPLICIT_DEF814 $vgpr1 = IMPLICIT_DEF815 $vgpr2 = IMPLICIT_DEF816 $vgpr3 = IMPLICIT_DEF817 $vgpr4 = V_ADD_U32_e32 $vgpr0, $vgpr1, implicit $exec818 $vgpr5 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec819...820 821---822name: vopd_combine_add_f32_add_u32_same_dst_parity823tracksRegLiveness: true824body: |825 bb.0:826 827 ; SCHED-LABEL: name: vopd_combine_add_f32_add_u32_same_dst_parity828 ; SCHED: $vgpr0 = IMPLICIT_DEF829 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF830 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF831 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF832 ; SCHED-NEXT: $vgpr5 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec833 ; SCHED-NEXT: $vgpr4 = V_ADD_U32_e32 killed $vgpr0, killed $vgpr1, implicit $exec834 ;835 ; PAIR-LABEL: name: vopd_combine_add_f32_add_u32_same_dst_parity836 ; PAIR: $vgpr0 = IMPLICIT_DEF837 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF838 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF839 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF840 ; PAIR-NEXT: $vgpr5, $vgpr4 = V_DUAL_ADD_F32_e32_X_ADD_U32_e32_gfx1250 killed $vgpr2, killed $vgpr3, killed $vgpr0, killed $vgpr1, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $exec841 $vgpr0 = IMPLICIT_DEF842 $vgpr1 = IMPLICIT_DEF843 $vgpr2 = IMPLICIT_DEF844 $vgpr3 = IMPLICIT_DEF845 $vgpr5 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec846 $vgpr4 = V_ADD_U32_e32 $vgpr0, $vgpr1, implicit $exec847...848 849---850name: vopd_combine_lshl_lshl851tracksRegLiveness: true852body: |853 bb.0:854 855 ; SCHED-LABEL: name: vopd_combine_lshl_lshl856 ; SCHED: $vgpr0 = IMPLICIT_DEF857 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF858 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF859 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF860 ; SCHED-NEXT: $vgpr4 = V_LSHLREV_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec861 ; SCHED-NEXT: $vgpr6 = V_LSHLREV_B32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec862 ;863 ; PAIR-LABEL: name: vopd_combine_lshl_lshl864 ; PAIR: $vgpr0 = IMPLICIT_DEF865 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF866 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF867 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF868 ; PAIR-NEXT: $vgpr4, $vgpr6 = V_DUAL_LSHLREV_B32_e32_X_LSHLREV_B32_e32_e96_gfx1250 killed $vgpr0, killed $vgpr1, killed $vgpr2, killed $vgpr3, implicit $exec, implicit $exec, implicit $mode, implicit $exec869 $vgpr0 = IMPLICIT_DEF870 $vgpr1 = IMPLICIT_DEF871 $vgpr2 = IMPLICIT_DEF872 $vgpr3 = IMPLICIT_DEF873 $vgpr4 = V_LSHLREV_B32_e32 $vgpr0, $vgpr1, implicit $exec874 $vgpr6 = V_LSHLREV_B32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec875...876 877---878name: vopd_combine_ashr_ashr879tracksRegLiveness: true880body: |881 bb.0:882 883 ; SCHED-LABEL: name: vopd_combine_ashr_ashr884 ; SCHED: $vgpr0 = IMPLICIT_DEF885 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF886 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF887 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF888 ; SCHED-NEXT: $vgpr4 = V_ASHRREV_I32_e32 killed $vgpr0, killed $vgpr1, implicit $exec889 ; SCHED-NEXT: $vgpr5 = V_ASHRREV_I32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec890 ;891 ; PAIR-LABEL: name: vopd_combine_ashr_ashr892 ; PAIR: $vgpr0 = IMPLICIT_DEF893 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF894 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF895 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF896 ; PAIR-NEXT: $vgpr4, $vgpr5 = V_DUAL_ASHRREV_I32_e32_X_ASHRREV_I32_e32_e96_gfx1250 killed $vgpr0, killed $vgpr1, killed $vgpr2, killed $vgpr3, implicit $exec, implicit $exec, implicit $mode, implicit $exec897 $vgpr0 = IMPLICIT_DEF898 $vgpr1 = IMPLICIT_DEF899 $vgpr2 = IMPLICIT_DEF900 $vgpr3 = IMPLICIT_DEF901 $vgpr4 = V_ASHRREV_I32_e32 $vgpr0, $vgpr1, implicit $exec902 $vgpr5 = V_ASHRREV_I32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec903...904 905---906name: vopd_combine_lshr_lshr907tracksRegLiveness: true908body: |909 bb.0:910 911 ; SCHED-LABEL: name: vopd_combine_lshr_lshr912 ; SCHED: $vgpr300 = IMPLICIT_DEF913 ; SCHED-NEXT: $vgpr301 = IMPLICIT_DEF914 ; SCHED-NEXT: $vgpr302 = IMPLICIT_DEF915 ; SCHED-NEXT: $vgpr303 = IMPLICIT_DEF916 ; SCHED-NEXT: $vgpr304 = V_LSHRREV_B32_e32 $vgpr300, $vgpr301, implicit $exec917 ; SCHED-NEXT: $vgpr305 = V_LSHRREV_B32_e32 $vgpr302, $vgpr303, implicit $mode, implicit $exec918 ;919 ; PAIR-LABEL: name: vopd_combine_lshr_lshr920 ; PAIR: $vgpr300 = IMPLICIT_DEF921 ; PAIR-NEXT: $vgpr301 = IMPLICIT_DEF922 ; PAIR-NEXT: $vgpr302 = IMPLICIT_DEF923 ; PAIR-NEXT: $vgpr303 = IMPLICIT_DEF924 ; PAIR-NEXT: $vgpr304, $vgpr305 = V_DUAL_LSHRREV_B32_e32_X_LSHRREV_B32_e32_e96_gfx1250 $vgpr300, $vgpr301, $vgpr302, $vgpr303, implicit $exec, implicit $exec, implicit $mode, implicit $exec925 $vgpr300 = IMPLICIT_DEF926 $vgpr301 = IMPLICIT_DEF927 $vgpr302 = IMPLICIT_DEF928 $vgpr303 = IMPLICIT_DEF929 $vgpr304 = V_LSHRREV_B32_e32 $vgpr300, $vgpr301, implicit $exec930 $vgpr305 = V_LSHRREV_B32_e32 $vgpr302, $vgpr303, implicit $mode, implicit $exec931...932 933---934name: vopd_combine_sub_u32_sub_u32935tracksRegLiveness: true936body: |937 bb.0:938 939 ; SCHED-LABEL: name: vopd_combine_sub_u32_sub_u32940 ; SCHED: $vgpr0 = IMPLICIT_DEF941 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF942 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF943 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF944 ; SCHED-NEXT: $vgpr4 = V_SUB_U32_e32 killed $vgpr0, killed $vgpr1, implicit $exec945 ; SCHED-NEXT: $vgpr5 = V_SUB_U32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec946 ;947 ; PAIR-LABEL: name: vopd_combine_sub_u32_sub_u32948 ; PAIR: $vgpr0 = IMPLICIT_DEF949 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF950 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF951 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF952 ; PAIR-NEXT: $vgpr4, $vgpr5 = V_DUAL_SUB_U32_e32_X_SUB_U32_e32_e96_gfx1250 killed $vgpr0, killed $vgpr1, killed $vgpr2, killed $vgpr3, implicit $exec, implicit $exec, implicit $mode, implicit $exec953 $vgpr0 = IMPLICIT_DEF954 $vgpr1 = IMPLICIT_DEF955 $vgpr2 = IMPLICIT_DEF956 $vgpr3 = IMPLICIT_DEF957 $vgpr4 = V_SUB_U32_e32 $vgpr0, $vgpr1, implicit $exec958 $vgpr5 = V_SUB_U32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec959...960 961---962name: vopd_no_combine_sub_u32_sub_u32_lit963tracksRegLiveness: true964body: |965 bb.0:966 967 ; SCHED-LABEL: name: vopd_no_combine_sub_u32_sub_u32_lit968 ; SCHED: $vgpr0 = IMPLICIT_DEF969 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF970 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF971 ; SCHED-NEXT: $vgpr4 = V_SUB_U32_e32 killed $vgpr0, killed $vgpr1, implicit $exec972 ; SCHED-NEXT: $vgpr5 = V_SUB_U32_e32 300, killed $vgpr2, implicit $mode, implicit $exec973 ;974 ; PAIR-LABEL: name: vopd_no_combine_sub_u32_sub_u32_lit975 ; PAIR: $vgpr0 = IMPLICIT_DEF976 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF977 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF978 ; PAIR-NEXT: $vgpr4 = V_SUB_U32_e32 killed $vgpr0, killed $vgpr1, implicit $exec979 ; PAIR-NEXT: $vgpr5 = V_SUB_U32_e32 300, killed $vgpr2, implicit $mode, implicit $exec980 $vgpr0 = IMPLICIT_DEF981 $vgpr1 = IMPLICIT_DEF982 $vgpr2 = IMPLICIT_DEF983 $vgpr4 = V_SUB_U32_e32 $vgpr0, $vgpr1, implicit $exec984 $vgpr5 = V_SUB_U32_e32 300, $vgpr2, implicit $mode, implicit $exec985...986 987---988name: vopd_combine_fmac_fmac989tracksRegLiveness: true990body: |991 bb.0:992 993 ; SCHED-LABEL: name: vopd_combine_fmac_fmac994 ; SCHED: $vgpr2 = IMPLICIT_DEF995 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF996 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF997 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF998 ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec999 ; SCHED-NEXT: $vgpr3 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr3, implicit $mode, implicit $exec1000 ;1001 ; PAIR-LABEL: name: vopd_combine_fmac_fmac1002 ; PAIR: $vgpr2 = IMPLICIT_DEF1003 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1004 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF1005 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1006 ; PAIR-NEXT: $vgpr2, $vgpr3 = V_DUAL_FMAC_F32_e32_X_FMAC_F32_e32_gfx1250 $vgpr1, $vgpr1, killed $vgpr2, killed $vgpr1, $vgpr1, killed $vgpr3, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1007 $vgpr0 = IMPLICIT_DEF1008 $vgpr1 = IMPLICIT_DEF1009 $vgpr2 = IMPLICIT_DEF1010 $vgpr3 = IMPLICIT_DEF1011 $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr2, implicit $mode, implicit $exec1012 $vgpr3 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr3, implicit $mode, implicit $exec1013...1014 1015---1016name: vopd_combine_fmac_fmac_same_dst_parity1017tracksRegLiveness: true1018body: |1019 bb.0:1020 1021 ; SCHED-LABEL: name: vopd_combine_fmac_fmac_same_dst_parity1022 ; SCHED: $vgpr2 = IMPLICIT_DEF1023 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1024 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF1025 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1026 ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec1027 ; SCHED-NEXT: $vgpr4 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr4, implicit $mode, implicit $exec1028 ;1029 ; PAIR-LABEL: name: vopd_combine_fmac_fmac_same_dst_parity1030 ; PAIR: $vgpr2 = IMPLICIT_DEF1031 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1032 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF1033 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1034 ; PAIR-NEXT: $vgpr2, $vgpr4 = V_DUAL_FMAC_F32_e32_X_FMAC_F32_e32_e96_gfx1250 0, $vgpr1, 0, $vgpr1, killed $vgpr2, 0, killed $vgpr1, 0, $vgpr1, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1035 $vgpr0 = IMPLICIT_DEF1036 $vgpr1 = IMPLICIT_DEF1037 $vgpr2 = IMPLICIT_DEF1038 $vgpr4 = IMPLICIT_DEF1039 $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr2, implicit $mode, implicit $exec1040 $vgpr4 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr4, implicit $mode, implicit $exec1041...1042 1043---1044name: vopd_no_combine_fmac_fmac_same_dst1045tracksRegLiveness: true1046body: |1047 bb.0:1048 1049 ; SCHED-LABEL: name: vopd_no_combine_fmac_fmac_same_dst1050 ; SCHED: $vgpr2 = IMPLICIT_DEF1051 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1052 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF1053 ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec1054 ; SCHED-NEXT: $vgpr2 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec1055 ;1056 ; PAIR-LABEL: name: vopd_no_combine_fmac_fmac_same_dst1057 ; PAIR: $vgpr2 = IMPLICIT_DEF1058 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1059 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF1060 ; PAIR-NEXT: $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec1061 ; PAIR-NEXT: $vgpr2 = V_FMAC_F32_e32 killed $vgpr1, $vgpr1, killed $vgpr2, implicit $mode, implicit $exec1062 $vgpr0 = IMPLICIT_DEF1063 $vgpr1 = IMPLICIT_DEF1064 $vgpr2 = IMPLICIT_DEF1065 $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr2, implicit $mode, implicit $exec1066 $vgpr2 = V_FMAC_F32_e32 $vgpr1, $vgpr1, $vgpr2, implicit $mode, implicit $exec1067...1068 1069---1070name: vopd_no_combine_add_f32_fadd_f32_same_dst1071tracksRegLiveness: true1072body: |1073 bb.0:1074 1075 ; SCHED-LABEL: name: vopd_no_combine_add_f32_fadd_f32_same_dst1076 ; SCHED: $vgpr1 = IMPLICIT_DEF1077 ; SCHED-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec1078 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF1079 ; SCHED-NEXT: $vgpr2 = V_ADD_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec1080 ;1081 ; PAIR-LABEL: name: vopd_no_combine_add_f32_fadd_f32_same_dst1082 ; PAIR: $vgpr1 = IMPLICIT_DEF1083 ; PAIR-NEXT: $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec1084 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF1085 ; PAIR-NEXT: $vgpr2 = V_ADD_F32_e32 killed $vgpr1, $vgpr1, implicit $mode, implicit $exec1086 $vgpr0 = IMPLICIT_DEF1087 $vgpr1 = IMPLICIT_DEF1088 $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec1089 $vgpr2 = V_ADD_F32_e32 $vgpr1, $vgpr1, implicit $mode, implicit $exec1090...1091 1092---1093name: vopd_combine_add_f64_add_f321094tracksRegLiveness: true1095body: |1096 bb.0:1097 1098 ; SCHED-LABEL: name: vopd_combine_add_f64_add_f321099 ; SCHED: $vgpr0 = IMPLICIT_DEF1100 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1101 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1102 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1103 ; SCHED-NEXT: $vgpr8_vgpr9 = IMPLICIT_DEF1104 ; SCHED-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr8_vgpr9, implicit $mode, implicit $exec1105 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec1106 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec1107 ;1108 ; PAIR-LABEL: name: vopd_combine_add_f64_add_f321109 ; PAIR: $vgpr0 = IMPLICIT_DEF1110 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1111 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1112 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1113 ; PAIR-NEXT: $vgpr8_vgpr9 = IMPLICIT_DEF1114 ; PAIR-NEXT: $vgpr4_vgpr5, $vgpr6 = V_DUAL_ADD_F64_pseudo_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr8_vgpr9, 0, killed $vgpr2, 0, killed $vgpr3, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1115 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec1116 $vgpr0 = IMPLICIT_DEF1117 $vgpr1 = IMPLICIT_DEF1118 $vgpr2 = IMPLICIT_DEF1119 $vgpr3 = IMPLICIT_DEF1120 $vgpr8_vgpr9 = IMPLICIT_DEF1121 $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr8_vgpr9, implicit $mode, implicit $exec1122 $vgpr7 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec1123 $vgpr6 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec1124...1125 1126---1127name: vopd_combine_add_f32_add_f641128tracksRegLiveness: true1129body: |1130 bb.0:1131 1132 ; SCHED-LABEL: name: vopd_combine_add_f32_add_f641133 ; SCHED: $vgpr0 = IMPLICIT_DEF1134 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1135 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1136 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1137 ; SCHED-NEXT: $vgpr8_vgpr9 = IMPLICIT_DEF1138 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec1139 ; SCHED-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr8_vgpr9, implicit $mode, implicit $exec1140 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec1141 ;1142 ; PAIR-LABEL: name: vopd_combine_add_f32_add_f641143 ; PAIR: $vgpr0 = IMPLICIT_DEF1144 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1145 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1146 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1147 ; PAIR-NEXT: $vgpr8_vgpr9 = IMPLICIT_DEF1148 ; PAIR-NEXT: $vgpr4_vgpr5, $vgpr6 = V_DUAL_ADD_F64_pseudo_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr8_vgpr9, 0, killed $vgpr2, 0, killed $vgpr3, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1149 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec1150 $vgpr0 = IMPLICIT_DEF1151 $vgpr1 = IMPLICIT_DEF1152 $vgpr2 = IMPLICIT_DEF1153 $vgpr3 = IMPLICIT_DEF1154 $vgpr8_vgpr9 = IMPLICIT_DEF1155 $vgpr6 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec1156 $vgpr7 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec1157 $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr8_vgpr9, implicit $mode, implicit $exec1158...1159 1160---1161name: vopd_no_combine_add_f64_add_f641162tracksRegLiveness: true1163body: |1164 bb.0:1165 1166 ; SCHED-LABEL: name: vopd_no_combine_add_f64_add_f641167 ; SCHED: $vgpr8_vgpr9 = IMPLICIT_DEF1168 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF1169 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1170 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1171 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1172 ; SCHED-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1173 ; SCHED-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr8_vgpr9, implicit $mode, implicit $exec1174 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec1175 ; SCHED-NEXT: $vgpr6_vgpr7 = V_ADD_F64_pseudo_e32 killed $vgpr0_vgpr1, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1176 ;1177 ; PAIR-LABEL: name: vopd_no_combine_add_f64_add_f641178 ; PAIR: $vgpr8_vgpr9 = IMPLICIT_DEF1179 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF1180 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1181 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1182 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1183 ; PAIR-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1184 ; PAIR-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr8_vgpr9, implicit $mode, implicit $exec1185 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec1186 ; PAIR-NEXT: $vgpr6_vgpr7 = V_ADD_F64_pseudo_e32 killed $vgpr0_vgpr1, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1187 $vgpr0 = IMPLICIT_DEF1188 $vgpr1 = IMPLICIT_DEF1189 $vgpr2 = IMPLICIT_DEF1190 $vgpr3 = IMPLICIT_DEF1191 $vgpr8_vgpr9 = IMPLICIT_DEF1192 $vgpr10_vgpr11 = IMPLICIT_DEF1193 $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr8_vgpr9, implicit $mode, implicit $exec1194 $vgpr8 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec1195 $vgpr6_vgpr7 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr10_vgpr11, implicit $mode, implicit $exec1196...1197 1198---1199name: vopd_no_combine_add_f64_add_f32_overlapping_dst1200tracksRegLiveness: true1201body: |1202 bb.0:1203 1204 ; SCHED-LABEL: name: vopd_no_combine_add_f64_add_f32_overlapping_dst1205 ; SCHED: $vgpr0 = IMPLICIT_DEF1206 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1207 ; SCHED-NEXT: $vgpr8_vgpr9 = IMPLICIT_DEF1208 ; SCHED-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr8_vgpr9, implicit $mode, implicit $exec1209 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1210 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1211 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec1212 ; SCHED-NEXT: $vgpr5 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec1213 ;1214 ; PAIR-LABEL: name: vopd_no_combine_add_f64_add_f32_overlapping_dst1215 ; PAIR: $vgpr0 = IMPLICIT_DEF1216 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1217 ; PAIR-NEXT: $vgpr8_vgpr9 = IMPLICIT_DEF1218 ; PAIR-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr8_vgpr9, implicit $mode, implicit $exec1219 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1220 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1221 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e32 killed $vgpr0, killed $vgpr1, implicit $exec1222 ; PAIR-NEXT: $vgpr5 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr3, implicit $mode, implicit $exec1223 $vgpr0 = IMPLICIT_DEF1224 $vgpr1 = IMPLICIT_DEF1225 $vgpr2 = IMPLICIT_DEF1226 $vgpr3 = IMPLICIT_DEF1227 $vgpr8_vgpr9 = IMPLICIT_DEF1228 $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr8_vgpr9, implicit $mode, implicit $exec1229 $vgpr7 = V_BFM_B32_e32 $vgpr0, $vgpr1, implicit $exec1230 $vgpr5 = V_ADD_F32_e32 $vgpr2, $vgpr3, implicit $mode, implicit $exec1231...1232 1233---1234name: vopd_no_combine_add_f64_add_f32_overlapping_src_sub11235tracksRegLiveness: true1236body: |1237 bb.0:1238 1239 ; SCHED-LABEL: name: vopd_no_combine_add_f64_add_f32_overlapping_src_sub11240 ; SCHED: $vgpr0 = IMPLICIT_DEF1241 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1242 ; SCHED-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1243 ; SCHED-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 killed $vgpr0_vgpr1, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1244 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1245 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr5, implicit $mode, implicit $exec1246 ;1247 ; PAIR-LABEL: name: vopd_no_combine_add_f64_add_f32_overlapping_src_sub11248 ; PAIR: $vgpr0 = IMPLICIT_DEF1249 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1250 ; PAIR-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1251 ; PAIR-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 killed $vgpr0_vgpr1, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1252 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1253 ; PAIR-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr5, implicit $mode, implicit $exec1254 $vgpr0 = IMPLICIT_DEF1255 $vgpr1 = IMPLICIT_DEF1256 $vgpr2 = IMPLICIT_DEF1257 $vgpr10_vgpr11 = IMPLICIT_DEF1258 $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr10_vgpr11, implicit $mode, implicit $exec1259 $vgpr6 = V_ADD_F32_e32 $vgpr2, $vgpr5, implicit $mode, implicit $exec1260...1261 1262---1263name: vopd_no_combine_add_f64_add_f32_overlapping_src_sub01264tracksRegLiveness: true1265body: |1266 bb.0:1267 1268 ; SCHED-LABEL: name: vopd_no_combine_add_f64_add_f32_overlapping_src_sub01269 ; SCHED: $vgpr0 = IMPLICIT_DEF1270 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1271 ; SCHED-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1272 ; SCHED-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 killed $vgpr0_vgpr1, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1273 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1274 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr4, implicit $mode, implicit $exec1275 ;1276 ; PAIR-LABEL: name: vopd_no_combine_add_f64_add_f32_overlapping_src_sub01277 ; PAIR: $vgpr0 = IMPLICIT_DEF1278 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1279 ; PAIR-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1280 ; PAIR-NEXT: $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 killed $vgpr0_vgpr1, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1281 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1282 ; PAIR-NEXT: $vgpr6 = V_ADD_F32_e32 killed $vgpr2, killed $vgpr4, implicit $mode, implicit $exec1283 $vgpr0 = IMPLICIT_DEF1284 $vgpr1 = IMPLICIT_DEF1285 $vgpr2 = IMPLICIT_DEF1286 $vgpr10_vgpr11 = IMPLICIT_DEF1287 $vgpr4_vgpr5 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr10_vgpr11, implicit $mode, implicit $exec1288 $vgpr6 = V_ADD_F32_e32 $vgpr2, $vgpr4, implicit $mode, implicit $exec1289...1290 1291---1292name: vopd_combine_fma_fma1293tracksRegLiveness: true1294body: |1295 bb.0:1296 1297 ; SCHED-LABEL: name: vopd_combine_fma_fma1298 ; SCHED: $vgpr0 = IMPLICIT_DEF1299 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1300 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1301 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1302 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1303 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1304 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1305 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1306 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1307 ;1308 ; PAIR-LABEL: name: vopd_combine_fma_fma1309 ; PAIR: $vgpr0 = IMPLICIT_DEF1310 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1311 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1312 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1313 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1314 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1315 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_FMA_F32_e64_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1316 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1317 $vgpr0 = IMPLICIT_DEF1318 $vgpr1 = IMPLICIT_DEF1319 $vgpr2 = IMPLICIT_DEF1320 $vgpr3 = IMPLICIT_DEF1321 $vgpr4 = IMPLICIT_DEF1322 $vgpr5 = IMPLICIT_DEF1323 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1324 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1325 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1326...1327 1328---1329name: vopd_no_combine_fma_fma_bank_conflict_src21330tracksRegLiveness: true1331body: |1332 bb.0:1333 1334 ; SCHED-LABEL: name: vopd_no_combine_fma_fma_bank_conflict_src21335 ; SCHED: $vgpr0 = IMPLICIT_DEF1336 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1337 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1338 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1339 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1340 ; SCHED-NEXT: $vgpr10 = IMPLICIT_DEF1341 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1342 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1343 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr10, 0, 0, implicit $mode, implicit $exec1344 ;1345 ; PAIR-LABEL: name: vopd_no_combine_fma_fma_bank_conflict_src21346 ; PAIR: $vgpr0 = IMPLICIT_DEF1347 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1348 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1349 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1350 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1351 ; PAIR-NEXT: $vgpr10 = IMPLICIT_DEF1352 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1353 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1354 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr10, 0, 0, implicit $mode, implicit $exec1355 $vgpr0 = IMPLICIT_DEF1356 $vgpr1 = IMPLICIT_DEF1357 $vgpr2 = IMPLICIT_DEF1358 $vgpr3 = IMPLICIT_DEF1359 $vgpr4 = IMPLICIT_DEF1360 $vgpr10 = IMPLICIT_DEF1361 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1362 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1363 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr10, 0, 0, implicit $mode, implicit $exec1364...1365 1366---1367name: vopd_combine_fma_add_f321368tracksRegLiveness: true1369body: |1370 bb.0:1371 1372 ; SCHED-LABEL: name: vopd_combine_fma_add_f321373 ; SCHED: $vgpr0 = IMPLICIT_DEF1374 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1375 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1376 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1377 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1378 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1379 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr4, implicit $mode, implicit $exec1380 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1381 ;1382 ; PAIR-LABEL: name: vopd_combine_fma_add_f321383 ; PAIR: $vgpr0 = IMPLICIT_DEF1384 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1385 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1386 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1387 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1388 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_FMA_F32_e64_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, killed $vgpr3, 0, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1389 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1390 $vgpr0 = IMPLICIT_DEF1391 $vgpr1 = IMPLICIT_DEF1392 $vgpr2 = IMPLICIT_DEF1393 $vgpr3 = IMPLICIT_DEF1394 $vgpr4 = IMPLICIT_DEF1395 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1396 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1397 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec1398...1399 1400---1401name: vopd_combine_add_f32_fma1402tracksRegLiveness: true1403body: |1404 bb.0:1405 1406 ; SCHED-LABEL: name: vopd_combine_add_f32_fma1407 ; SCHED: $vgpr0 = IMPLICIT_DEF1408 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1409 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1410 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1411 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1412 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr4, implicit $mode, implicit $exec1413 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1414 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1415 ;1416 ; PAIR-LABEL: name: vopd_combine_add_f32_fma1417 ; PAIR: $vgpr0 = IMPLICIT_DEF1418 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1419 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1420 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1421 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1422 ; PAIR-NEXT: $vgpr7, $vgpr6 = V_DUAL_ADD_F32_e32_X_FMA_F32_e64_e96_gfx1250 0, killed $vgpr3, 0, killed $vgpr4, 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1423 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1424 $vgpr0 = IMPLICIT_DEF1425 $vgpr1 = IMPLICIT_DEF1426 $vgpr2 = IMPLICIT_DEF1427 $vgpr3 = IMPLICIT_DEF1428 $vgpr4 = IMPLICIT_DEF1429 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec1430 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1431 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1432...1433 1434---1435name: vopd_combine_fma_add_f641436tracksRegLiveness: true1437body: |1438 bb.0:1439 1440 ; SCHED-LABEL: name: vopd_combine_fma_add_f641441 ; SCHED: $vgpr0 = IMPLICIT_DEF1442 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1443 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1444 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1445 ; SCHED-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1446 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1447 ; SCHED-NEXT: $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 killed $vgpr2_vgpr3, killed $vgpr10_vgpr11, implicit $mode, implicit $exec1448 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1449 ;1450 ; PAIR-LABEL: name: vopd_combine_fma_add_f641451 ; PAIR: $vgpr0 = IMPLICIT_DEF1452 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1453 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1454 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1455 ; PAIR-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF1456 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr6 = V_DUAL_ADD_F64_pseudo_e32_X_FMA_F32_e64_e96_gfx1250 0, killed $vgpr2_vgpr3, 0, killed $vgpr10_vgpr11, 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1457 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1458 $vgpr0 = IMPLICIT_DEF1459 $vgpr1 = IMPLICIT_DEF1460 $vgpr2 = IMPLICIT_DEF1461 $vgpr3 = IMPLICIT_DEF1462 $vgpr10_vgpr11 = IMPLICIT_DEF1463 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1464 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1465 $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 $vgpr2_vgpr3, $vgpr10_vgpr11, implicit $mode, implicit $exec1466...1467 1468---1469name: vopd_no_combine_fma_src0_mod_fma1470tracksRegLiveness: true1471body: |1472 bb.0:1473 1474 ; SCHED-LABEL: name: vopd_no_combine_fma_src0_mod_fma1475 ; SCHED: $vgpr0 = IMPLICIT_DEF1476 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1477 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1478 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1479 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1480 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1481 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 3, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1482 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1483 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1484 ;1485 ; PAIR-LABEL: name: vopd_no_combine_fma_src0_mod_fma1486 ; PAIR: $vgpr0 = IMPLICIT_DEF1487 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1488 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1489 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1490 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1491 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1492 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 3, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1493 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1494 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1495 $vgpr0 = IMPLICIT_DEF1496 $vgpr1 = IMPLICIT_DEF1497 $vgpr2 = IMPLICIT_DEF1498 $vgpr3 = IMPLICIT_DEF1499 $vgpr4 = IMPLICIT_DEF1500 $vgpr5 = IMPLICIT_DEF1501 $vgpr6 = V_FMA_F32_e64 3, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1502 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1503 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1504...1505 1506---1507name: vopd_no_combine_fma_fma_src1_mod1508tracksRegLiveness: true1509body: |1510 bb.0:1511 1512 ; SCHED-LABEL: name: vopd_no_combine_fma_fma_src1_mod1513 ; SCHED: $vgpr0 = IMPLICIT_DEF1514 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1515 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1516 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1517 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1518 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1519 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1520 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1521 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 2, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1522 ;1523 ; PAIR-LABEL: name: vopd_no_combine_fma_fma_src1_mod1524 ; PAIR: $vgpr0 = IMPLICIT_DEF1525 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1526 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1527 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1528 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1529 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1530 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1531 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1532 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 2, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1533 $vgpr0 = IMPLICIT_DEF1534 $vgpr1 = IMPLICIT_DEF1535 $vgpr2 = IMPLICIT_DEF1536 $vgpr3 = IMPLICIT_DEF1537 $vgpr4 = IMPLICIT_DEF1538 $vgpr5 = IMPLICIT_DEF1539 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1540 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1541 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 2, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1542...1543 1544---1545name: vopd_no_combine_fma_fma_src2_mod1546tracksRegLiveness: true1547body: |1548 bb.0:1549 1550 ; SCHED-LABEL: name: vopd_no_combine_fma_fma_src2_mod1551 ; SCHED: $vgpr0 = IMPLICIT_DEF1552 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1553 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1554 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1555 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1556 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1557 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1558 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1559 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 3, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1560 ;1561 ; PAIR-LABEL: name: vopd_no_combine_fma_fma_src2_mod1562 ; PAIR: $vgpr0 = IMPLICIT_DEF1563 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1564 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1565 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1566 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1567 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1568 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1569 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1570 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 3, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1571 $vgpr0 = IMPLICIT_DEF1572 $vgpr1 = IMPLICIT_DEF1573 $vgpr2 = IMPLICIT_DEF1574 $vgpr3 = IMPLICIT_DEF1575 $vgpr4 = IMPLICIT_DEF1576 $vgpr5 = IMPLICIT_DEF1577 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1578 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1579 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 3, $vgpr5, 0, 0, implicit $mode, implicit $exec1580...1581 1582---1583name: vopd_no_combine_fma_clamp_fma1584tracksRegLiveness: true1585body: |1586 bb.0:1587 1588 ; SCHED-LABEL: name: vopd_no_combine_fma_clamp_fma1589 ; SCHED: $vgpr0 = IMPLICIT_DEF1590 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1591 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1592 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1593 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1594 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1595 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 1, 0, implicit $mode, implicit $exec1596 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1597 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1598 ;1599 ; PAIR-LABEL: name: vopd_no_combine_fma_clamp_fma1600 ; PAIR: $vgpr0 = IMPLICIT_DEF1601 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1602 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1603 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1604 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1605 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1606 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 1, 0, implicit $mode, implicit $exec1607 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1608 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1609 $vgpr0 = IMPLICIT_DEF1610 $vgpr1 = IMPLICIT_DEF1611 $vgpr2 = IMPLICIT_DEF1612 $vgpr3 = IMPLICIT_DEF1613 $vgpr4 = IMPLICIT_DEF1614 $vgpr5 = IMPLICIT_DEF1615 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 1, 0, implicit $mode, implicit $exec1616 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1617 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1618...1619 1620---1621name: vopd_no_combine_fma_fma_omod1622tracksRegLiveness: true1623body: |1624 bb.0:1625 1626 ; SCHED-LABEL: name: vopd_no_combine_fma_fma_omod1627 ; SCHED: $vgpr0 = IMPLICIT_DEF1628 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1629 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1630 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1631 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1632 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1633 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1634 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1635 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 1, implicit $mode, implicit $exec1636 ;1637 ; PAIR-LABEL: name: vopd_no_combine_fma_fma_omod1638 ; PAIR: $vgpr0 = IMPLICIT_DEF1639 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1640 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1641 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1642 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1643 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1644 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1645 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1646 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 1, implicit $mode, implicit $exec1647 $vgpr0 = IMPLICIT_DEF1648 $vgpr1 = IMPLICIT_DEF1649 $vgpr2 = IMPLICIT_DEF1650 $vgpr3 = IMPLICIT_DEF1651 $vgpr4 = IMPLICIT_DEF1652 $vgpr5 = IMPLICIT_DEF1653 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1654 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1655 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 1, implicit $mode, implicit $exec1656...1657 1658---1659name: vopd_combine_fma_fma_neg1660tracksRegLiveness: true1661body: |1662 bb.0:1663 1664 ; SCHED-LABEL: name: vopd_combine_fma_fma_neg1665 ; SCHED: $vgpr0 = IMPLICIT_DEF1666 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1667 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1668 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1669 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1670 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1671 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 1, $vgpr0, 1, $vgpr1, 1, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1672 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 1, killed $vgpr3, 1, killed $vgpr4, 1, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1673 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1674 ;1675 ; PAIR-LABEL: name: vopd_combine_fma_fma_neg1676 ; PAIR: $vgpr0 = IMPLICIT_DEF1677 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1678 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1679 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1680 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1681 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1682 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_FMA_F32_e64_X_FMA_F32_e64_e96_gfx1250 1, $vgpr0, 1, $vgpr1, 1, killed $vgpr2, 1, killed $vgpr3, 1, killed $vgpr4, 1, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1683 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1684 $vgpr0 = IMPLICIT_DEF1685 $vgpr1 = IMPLICIT_DEF1686 $vgpr2 = IMPLICIT_DEF1687 $vgpr3 = IMPLICIT_DEF1688 $vgpr4 = IMPLICIT_DEF1689 $vgpr5 = IMPLICIT_DEF1690 $vgpr6 = V_FMA_F32_e64 1, $vgpr0, 1, $vgpr1, 1, $vgpr2, 0, 0, implicit $mode, implicit $exec1691 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1692 $vgpr7 = V_FMA_F32_e64 1, $vgpr3, 1, $vgpr4, 1, $vgpr5, 0, 0, implicit $mode, implicit $exec1693...1694 1695---1696name: vopd_combine_fma_fma_src0_neg1697tracksRegLiveness: true1698body: |1699 bb.0:1700 1701 ; SCHED-LABEL: name: vopd_combine_fma_fma_src0_neg1702 ; SCHED: $sgpr0 = IMPLICIT_DEF1703 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1704 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1705 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1706 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1707 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1708 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 1, $sgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1709 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1710 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $sgpr0, killed $vgpr1, implicit $exec1711 ;1712 ; PAIR-LABEL: name: vopd_combine_fma_fma_src0_neg1713 ; PAIR: $sgpr0 = IMPLICIT_DEF1714 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1715 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1716 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1717 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1718 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1719 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_FMA_F32_e64_X_FMA_F32_e64_e96_gfx1250 1, $sgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1720 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $sgpr0, killed $vgpr1, implicit $exec1721 $sgpr0 = IMPLICIT_DEF1722 $vgpr1 = IMPLICIT_DEF1723 $vgpr2 = IMPLICIT_DEF1724 $vgpr3 = IMPLICIT_DEF1725 $vgpr4 = IMPLICIT_DEF1726 $vgpr5 = IMPLICIT_DEF1727 $vgpr6 = V_FMA_F32_e64 1, $sgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1728 $vgpr8 = V_BFM_B32_e64 $sgpr0, $vgpr1, implicit $exec1729 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1730...1731 1732---1733name: vopd_combine_fma_fma_src1_neg1734tracksRegLiveness: true1735body: |1736 bb.0:1737 1738 ; SCHED-LABEL: name: vopd_combine_fma_fma_src1_neg1739 ; SCHED: $vgpr0 = IMPLICIT_DEF1740 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1741 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1742 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1743 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1744 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1745 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1746 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 1, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1747 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1748 ;1749 ; PAIR-LABEL: name: vopd_combine_fma_fma_src1_neg1750 ; PAIR: $vgpr0 = IMPLICIT_DEF1751 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1752 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1753 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1754 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1755 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1756 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_FMA_F32_e64_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, killed $vgpr3, 1, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1757 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1758 $vgpr0 = IMPLICIT_DEF1759 $vgpr1 = IMPLICIT_DEF1760 $vgpr2 = IMPLICIT_DEF1761 $vgpr3 = IMPLICIT_DEF1762 $vgpr4 = IMPLICIT_DEF1763 $vgpr5 = IMPLICIT_DEF1764 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec1765 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1766 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 1, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1767...1768 1769---1770name: vopd_combine_fma_fma_src2_neg1771tracksRegLiveness: true1772body: |1773 bb.0:1774 1775 ; SCHED-LABEL: name: vopd_combine_fma_fma_src2_neg1776 ; SCHED: $vgpr0 = IMPLICIT_DEF1777 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1778 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1779 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1780 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1781 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1782 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 1, killed $vgpr2, 0, 0, implicit $mode, implicit $exec1783 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1784 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1785 ;1786 ; PAIR-LABEL: name: vopd_combine_fma_fma_src2_neg1787 ; PAIR: $vgpr0 = IMPLICIT_DEF1788 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1789 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1790 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1791 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1792 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1793 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_FMA_F32_e64_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0, 0, $vgpr1, 1, killed $vgpr2, 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1794 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1795 $vgpr0 = IMPLICIT_DEF1796 $vgpr1 = IMPLICIT_DEF1797 $vgpr2 = IMPLICIT_DEF1798 $vgpr3 = IMPLICIT_DEF1799 $vgpr4 = IMPLICIT_DEF1800 $vgpr5 = IMPLICIT_DEF1801 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 1, $vgpr2, 0, 0, implicit $mode, implicit $exec1802 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1803 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1804...1805 1806---1807name: vopd_combine_fma_f64_fma_f32_neg1808tracksRegLiveness: true1809body: |1810 bb.0:1811 1812 ; SCHED-LABEL: name: vopd_combine_fma_f64_fma_f32_neg1813 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF1814 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF1815 ; SCHED-NEXT: $vgpr4_vgpr5 = IMPLICIT_DEF1816 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF1817 ; SCHED-NEXT: $vgpr7 = IMPLICIT_DEF1818 ; SCHED-NEXT: $vgpr8 = IMPLICIT_DEF1819 ; SCHED-NEXT: $vgpr10_vgpr11 = V_FMA_F64_e64 1, $vgpr0_vgpr1, 1, killed $vgpr2_vgpr3, 1, killed $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec1820 ; SCHED-NEXT: $vgpr9 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr8, 0, killed $vgpr7, 0, 0, implicit $mode, implicit $exec1821 ; SCHED-NEXT: $vgpr12 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1822 ;1823 ; PAIR-LABEL: name: vopd_combine_fma_f64_fma_f32_neg1824 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF1825 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF1826 ; PAIR-NEXT: $vgpr4_vgpr5 = IMPLICIT_DEF1827 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF1828 ; PAIR-NEXT: $vgpr7 = IMPLICIT_DEF1829 ; PAIR-NEXT: $vgpr8 = IMPLICIT_DEF1830 ; PAIR-NEXT: $vgpr10_vgpr11, $vgpr9 = V_DUAL_FMA_F64_e64_X_FMA_F32_e64_e96_gfx1250 1, $vgpr0_vgpr1, 1, killed $vgpr2_vgpr3, 1, killed $vgpr4_vgpr5, 0, killed $vgpr6, 0, killed $vgpr8, 0, killed $vgpr7, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec1831 ; PAIR-NEXT: $vgpr12 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1832 $vgpr0_vgpr1 = IMPLICIT_DEF1833 $vgpr2_vgpr3 = IMPLICIT_DEF1834 $vgpr4_vgpr5 = IMPLICIT_DEF1835 $vgpr6 = IMPLICIT_DEF1836 $vgpr7 = IMPLICIT_DEF1837 $vgpr8 = IMPLICIT_DEF1838 $vgpr10_vgpr11 = V_FMA_F64_e64 1, $vgpr0_vgpr1, 1, $vgpr2_vgpr3, 1, $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec1839 $vgpr12 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1840 $vgpr9 = V_FMA_F32_e64 0, $vgpr6, 0, $vgpr8, 0, $vgpr7, 0, 0, implicit $mode, implicit $exec1841...1842 1843---1844name: vopd_combine_lshl_add_u64_fma1845tracksRegLiveness: true1846body: |1847 bb.0:1848 1849 ; SCHED-LABEL: name: vopd_combine_lshl_add_u64_fma1850 ; SCHED: $vgpr0 = IMPLICIT_DEF1851 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1852 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1853 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1854 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1855 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1856 ; SCHED-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1857 ; SCHED-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1858 ; SCHED-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr2, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec1859 ;1860 ; PAIR-LABEL: name: vopd_combine_lshl_add_u64_fma1861 ; PAIR: $vgpr0 = IMPLICIT_DEF1862 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1863 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1864 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1865 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1866 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1867 ; PAIR-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1868 ; PAIR-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1869 ; PAIR-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr2, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec1870 $vgpr0 = IMPLICIT_DEF1871 $vgpr1 = IMPLICIT_DEF1872 $vgpr2 = IMPLICIT_DEF1873 $vgpr3 = IMPLICIT_DEF1874 $vgpr4 = IMPLICIT_DEF1875 $vgpr5 = IMPLICIT_DEF1876 $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1877 $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1878 $vgpr8 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr2, 0, $vgpr4, 0, 0, implicit $mode, implicit $exec1879...1880 1881---1882name: vopd_combine_fma_lshl_add_u641883tracksRegLiveness: true1884body: |1885 bb.0:1886 1887 ; SCHED-LABEL: name: vopd_combine_fma_lshl_add_u641888 ; SCHED: $vgpr0 = IMPLICIT_DEF1889 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1890 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1891 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1892 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1893 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1894 ; SCHED-NEXT: $vgpr8 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr2, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1895 ; SCHED-NEXT: $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1896 ; SCHED-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 killed $vgpr0_vgpr1, $vgpr1, killed $vgpr2_vgpr3, implicit $exec1897 ;1898 ; PAIR-LABEL: name: vopd_combine_fma_lshl_add_u641899 ; PAIR: $vgpr0 = IMPLICIT_DEF1900 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1901 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1902 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1903 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1904 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1905 ; PAIR-NEXT: $vgpr8 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr2, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec1906 ; PAIR-NEXT: $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1907 ; PAIR-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 killed $vgpr0_vgpr1, $vgpr1, killed $vgpr2_vgpr3, implicit $exec1908 $vgpr0 = IMPLICIT_DEF1909 $vgpr1 = IMPLICIT_DEF1910 $vgpr2 = IMPLICIT_DEF1911 $vgpr3 = IMPLICIT_DEF1912 $vgpr4 = IMPLICIT_DEF1913 $vgpr5 = IMPLICIT_DEF1914 $vgpr8 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr2, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec1915 $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1916 $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1917...1918 1919---1920name: vopd_no_combine_lshl_add_u64_fma_overlapping_src21921tracksRegLiveness: true1922body: |1923 bb.0:1924 1925 ; SCHED-LABEL: name: vopd_no_combine_lshl_add_u64_fma_overlapping_src21926 ; SCHED: $vgpr0 = IMPLICIT_DEF1927 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1928 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1929 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1930 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1931 ; SCHED-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1932 ; SCHED-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1933 ; SCHED-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, $vgpr3, 0, 0, implicit $mode, implicit $exec1934 ;1935 ; PAIR-LABEL: name: vopd_no_combine_lshl_add_u64_fma_overlapping_src21936 ; PAIR: $vgpr0 = IMPLICIT_DEF1937 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1938 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1939 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1940 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1941 ; PAIR-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1942 ; PAIR-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec1943 ; PAIR-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, $vgpr3, 0, 0, implicit $mode, implicit $exec1944 $vgpr0 = IMPLICIT_DEF1945 $vgpr1 = IMPLICIT_DEF1946 $vgpr2 = IMPLICIT_DEF1947 $vgpr3 = IMPLICIT_DEF1948 $vgpr4 = IMPLICIT_DEF1949 $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr1, $vgpr2_vgpr3, implicit $exec1950 $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1951 $vgpr8 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr3, 0, 0, implicit $mode, implicit $exec1952...1953 1954---1955name: vopd_no_combine_lshl_add_u64_fma_src0_conflict1956tracksRegLiveness: true1957body: |1958 bb.0:1959 1960 ; SCHED-LABEL: name: vopd_no_combine_lshl_add_u64_fma_src0_conflict1961 ; SCHED: $vgpr0 = IMPLICIT_DEF1962 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF1963 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF1964 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF1965 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF1966 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF1967 ; SCHED-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, killed $vgpr5, $vgpr2_vgpr3, implicit $exec1968 ; SCHED-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, $vgpr1, implicit $exec1969 ; SCHED-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr1, 0, killed $vgpr3, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec1970 ;1971 ; PAIR-LABEL: name: vopd_no_combine_lshl_add_u64_fma_src0_conflict1972 ; PAIR: $vgpr0 = IMPLICIT_DEF1973 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF1974 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF1975 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF1976 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF1977 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF1978 ; PAIR-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, killed $vgpr5, $vgpr2_vgpr3, implicit $exec1979 ; PAIR-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, $vgpr1, implicit $exec1980 ; PAIR-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr1, 0, killed $vgpr3, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec1981 $vgpr0 = IMPLICIT_DEF1982 $vgpr1 = IMPLICIT_DEF1983 $vgpr2 = IMPLICIT_DEF1984 $vgpr3 = IMPLICIT_DEF1985 $vgpr4 = IMPLICIT_DEF1986 $vgpr5 = IMPLICIT_DEF1987 $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr5, $vgpr2_vgpr3, implicit $exec1988 $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec1989 $vgpr8 = V_FMA_F32_e64 0, $vgpr1, 0, $vgpr3, 0, $vgpr4, 0, 0, implicit $mode, implicit $exec1990...1991 1992---1993name: vopd_no_combine_lshl_add_u64_fma_src1_conflict1994tracksRegLiveness: true1995body: |1996 bb.0:1997 1998 ; SCHED-LABEL: name: vopd_no_combine_lshl_add_u64_fma_src1_conflict1999 ; SCHED: $vgpr0 = IMPLICIT_DEF2000 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2001 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2002 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2003 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2004 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2005 ; SCHED-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr5, $vgpr2_vgpr3, implicit $exec2006 ; SCHED-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2007 ; SCHED-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr5, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec2008 ;2009 ; PAIR-LABEL: name: vopd_no_combine_lshl_add_u64_fma_src1_conflict2010 ; PAIR: $vgpr0 = IMPLICIT_DEF2011 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2012 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2013 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2014 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2015 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2016 ; PAIR-NEXT: $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr5, $vgpr2_vgpr3, implicit $exec2017 ; PAIR-NEXT: $vgpr9 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2018 ; PAIR-NEXT: $vgpr8 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr5, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec2019 $vgpr0 = IMPLICIT_DEF2020 $vgpr1 = IMPLICIT_DEF2021 $vgpr2 = IMPLICIT_DEF2022 $vgpr3 = IMPLICIT_DEF2023 $vgpr4 = IMPLICIT_DEF2024 $vgpr5 = IMPLICIT_DEF2025 $vgpr6_vgpr7 = V_LSHL_ADD_U64_e64 $vgpr0_vgpr1, $vgpr5, $vgpr2_vgpr3, implicit $exec2026 $vgpr9 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2027 $vgpr8 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr5, 0, $vgpr4, 0, 0, implicit $mode, implicit $exec2028...2029 2030---2031name: vopd_combine_fma_f64_fma_f322032tracksRegLiveness: true2033body: |2034 bb.0:2035 2036 ; SCHED-LABEL: name: vopd_combine_fma_f64_fma_f322037 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF2038 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2039 ; SCHED-NEXT: $vgpr4_vgpr5 = IMPLICIT_DEF2040 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF2041 ; SCHED-NEXT: $vgpr7 = IMPLICIT_DEF2042 ; SCHED-NEXT: $vgpr8 = IMPLICIT_DEF2043 ; SCHED-NEXT: $vgpr10_vgpr11 = V_FMA_F64_e64 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec2044 ; SCHED-NEXT: $vgpr9 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr8, 0, killed $vgpr7, 0, 0, implicit $mode, implicit $exec2045 ; SCHED-NEXT: $vgpr12 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2046 ;2047 ; PAIR-LABEL: name: vopd_combine_fma_f64_fma_f322048 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF2049 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2050 ; PAIR-NEXT: $vgpr4_vgpr5 = IMPLICIT_DEF2051 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF2052 ; PAIR-NEXT: $vgpr7 = IMPLICIT_DEF2053 ; PAIR-NEXT: $vgpr8 = IMPLICIT_DEF2054 ; PAIR-NEXT: $vgpr10_vgpr11, $vgpr9 = V_DUAL_FMA_F64_e64_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr4_vgpr5, 0, killed $vgpr6, 0, killed $vgpr8, 0, killed $vgpr7, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2055 ; PAIR-NEXT: $vgpr12 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2056 $vgpr0_vgpr1 = IMPLICIT_DEF2057 $vgpr2_vgpr3 = IMPLICIT_DEF2058 $vgpr4_vgpr5 = IMPLICIT_DEF2059 $vgpr6 = IMPLICIT_DEF2060 $vgpr7 = IMPLICIT_DEF2061 $vgpr8 = IMPLICIT_DEF2062 $vgpr10_vgpr11 = V_FMA_F64_e64 0, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec2063 $vgpr12 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2064 $vgpr9 = V_FMA_F32_e64 0, $vgpr6, 0, $vgpr8, 0, $vgpr7, 0, 0, implicit $mode, implicit $exec2065...2066 2067---2068name: vopd_no_combine_fma_f64_fma_f32_overlapping_src12069tracksRegLiveness: true2070body: |2071 bb.0:2072 2073 ; SCHED-LABEL: name: vopd_no_combine_fma_f64_fma_f32_overlapping_src12074 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF2075 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2076 ; SCHED-NEXT: $vgpr4_vgpr5 = IMPLICIT_DEF2077 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF2078 ; SCHED-NEXT: $vgpr7 = IMPLICIT_DEF2079 ; SCHED-NEXT: $vgpr10_vgpr11 = V_FMA_F64_e64 0, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, killed $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec2080 ; SCHED-NEXT: $vgpr12 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2081 ; SCHED-NEXT: $vgpr9 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr3, 0, killed $vgpr7, 0, 0, implicit $mode, implicit $exec2082 ;2083 ; PAIR-LABEL: name: vopd_no_combine_fma_f64_fma_f32_overlapping_src12084 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF2085 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2086 ; PAIR-NEXT: $vgpr4_vgpr5 = IMPLICIT_DEF2087 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF2088 ; PAIR-NEXT: $vgpr7 = IMPLICIT_DEF2089 ; PAIR-NEXT: $vgpr10_vgpr11 = V_FMA_F64_e64 0, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, killed $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec2090 ; PAIR-NEXT: $vgpr12 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2091 ; PAIR-NEXT: $vgpr9 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr3, 0, killed $vgpr7, 0, 0, implicit $mode, implicit $exec2092 $vgpr0_vgpr1 = IMPLICIT_DEF2093 $vgpr2_vgpr3 = IMPLICIT_DEF2094 $vgpr4_vgpr5 = IMPLICIT_DEF2095 $vgpr6 = IMPLICIT_DEF2096 $vgpr7 = IMPLICIT_DEF2097 $vgpr10_vgpr11 = V_FMA_F64_e64 0, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, $vgpr4_vgpr5, 0, 0, implicit $mode, implicit $exec2098 $vgpr12 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2099 $vgpr9 = V_FMA_F32_e64 0, $vgpr6, 0, $vgpr3, 0, $vgpr7, 0, 0, implicit $mode, implicit $exec2100...2101 2102---2103name: vopd_combine_fma_f32_add_f64_e322104tracksRegLiveness: true2105body: |2106 bb.0:2107 2108 ; SCHED-LABEL: name: vopd_combine_fma_f32_add_f64_e322109 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF2110 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2111 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2112 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2113 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF2114 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2115 ; SCHED-NEXT: $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr2_vgpr3, implicit $mode, implicit $exec2116 ; SCHED-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2117 ;2118 ; PAIR-LABEL: name: vopd_combine_fma_f32_add_f64_e322119 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF2120 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2121 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2122 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2123 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF2124 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_ADD_F64_pseudo_e32_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr6, 0, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2125 ; PAIR-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2126 $vgpr0_vgpr1 = IMPLICIT_DEF2127 $vgpr2_vgpr3 = IMPLICIT_DEF2128 $vgpr4 = IMPLICIT_DEF2129 $vgpr5 = IMPLICIT_DEF2130 $vgpr6 = IMPLICIT_DEF2131 $vgpr7 = V_FMA_F32_e64 0, $vgpr6, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec2132 $vgpr10 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2133 $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr2_vgpr3, implicit $mode, implicit $exec2134...2135 2136---2137name: vopd_combine_fma_f32_add_f64_e642138tracksRegLiveness: true2139body: |2140 bb.0:2141 2142 ; SCHED-LABEL: name: vopd_combine_fma_f32_add_f64_e642143 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF2144 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2145 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2146 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2147 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF2148 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2149 ; SCHED-NEXT: $vgpr8_vgpr9 = V_ADD_F64_pseudo_e64 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec2150 ; SCHED-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2151 ;2152 ; PAIR-LABEL: name: vopd_combine_fma_f32_add_f64_e642153 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF2154 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2155 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2156 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2157 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF2158 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_ADD_F64_pseudo_e32_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr6, 0, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2159 ; PAIR-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2160 $vgpr0_vgpr1 = IMPLICIT_DEF2161 $vgpr2_vgpr3 = IMPLICIT_DEF2162 $vgpr4 = IMPLICIT_DEF2163 $vgpr5 = IMPLICIT_DEF2164 $vgpr6 = IMPLICIT_DEF2165 $vgpr7 = V_FMA_F32_e64 0, $vgpr6, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec2166 $vgpr10 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2167 $vgpr8_vgpr9 = V_ADD_F64_pseudo_e64 0, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec2168...2169 2170---2171name: vopd_combine_fma_f32_add_f64_e64_neg2172tracksRegLiveness: true2173body: |2174 bb.0:2175 2176 ; SCHED-LABEL: name: vopd_combine_fma_f32_add_f64_e64_neg2177 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF2178 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2179 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2180 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2181 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF2182 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr6, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2183 ; SCHED-NEXT: $vgpr8_vgpr9 = V_ADD_F64_pseudo_e64 1, $vgpr0_vgpr1, 1, killed $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec2184 ; SCHED-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2185 ;2186 ; PAIR-LABEL: name: vopd_combine_fma_f32_add_f64_e64_neg2187 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF2188 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2189 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2190 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2191 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF2192 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_ADD_F64_pseudo_e32_X_FMA_F32_e64_e96_gfx1250 1, $vgpr0_vgpr1, 1, killed $vgpr2_vgpr3, 0, killed $vgpr6, 0, killed $vgpr4, 0, killed $vgpr5, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2193 ; PAIR-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2194 $vgpr0_vgpr1 = IMPLICIT_DEF2195 $vgpr2_vgpr3 = IMPLICIT_DEF2196 $vgpr4 = IMPLICIT_DEF2197 $vgpr5 = IMPLICIT_DEF2198 $vgpr6 = IMPLICIT_DEF2199 $vgpr7 = V_FMA_F32_e64 0, $vgpr6, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec2200 $vgpr10 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2201 $vgpr8_vgpr9 = V_ADD_F64_pseudo_e64 1, $vgpr0_vgpr1, 1, $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec2202...2203 2204---2205name: vopd_combine_fma_bitop2206tracksRegLiveness: true2207body: |2208 bb.0:2209 2210 ; SCHED-LABEL: name: vopd_combine_fma_bitop2211 ; SCHED: $vgpr0 = IMPLICIT_DEF2212 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2213 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2214 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2215 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2216 ; SCHED-NEXT: $vgpr5 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2217 ; SCHED-NEXT: $vgpr6 = V_BITOP3_B32_e64 killed $vgpr3, killed $vgpr4, 0, 123, implicit $exec2218 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2219 ;2220 ; PAIR-LABEL: name: vopd_combine_fma_bitop2221 ; PAIR: $vgpr0 = IMPLICIT_DEF2222 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2223 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2224 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2225 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2226 ; PAIR-NEXT: $vgpr5, $vgpr6 = V_DUAL_FMA_F32_e64_X_BITOP2_B32_e64_e96_gfx1250 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, killed $vgpr3, killed $vgpr4, 123, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $exec2227 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2228 $vgpr0 = IMPLICIT_DEF2229 $vgpr1 = IMPLICIT_DEF2230 $vgpr2 = IMPLICIT_DEF2231 $vgpr3 = IMPLICIT_DEF2232 $vgpr4 = IMPLICIT_DEF2233 $vgpr5 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec2234 $vgpr7 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2235 $vgpr6 = V_BITOP3_B32_e64 $vgpr3, $vgpr4, 0, 123, implicit $exec2236...2237 2238# Make sure bitop3 modifier does not count against constant bus limit.2239---2240name: vopd_combine_fma_bitop_2_scalar_src2241tracksRegLiveness: true2242body: |2243 bb.0:2244 2245 ; SCHED-LABEL: name: vopd_combine_fma_bitop_2_scalar_src2246 ; SCHED: $sgpr0 = IMPLICIT_DEF2247 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2248 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2249 ; SCHED-NEXT: $sgpr3 = IMPLICIT_DEF2250 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2251 ; SCHED-NEXT: $vgpr5 = V_FMA_F32_e64 0, $sgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2252 ; SCHED-NEXT: $vgpr6 = V_BITOP3_B32_e64 killed $sgpr3, killed $vgpr4, 0, 123, implicit $exec2253 ; SCHED-NEXT: $vgpr7 = V_BFM_B32_e64 killed $sgpr0, killed $vgpr1, implicit $exec2254 ;2255 ; PAIR-LABEL: name: vopd_combine_fma_bitop_2_scalar_src2256 ; PAIR: $sgpr0 = IMPLICIT_DEF2257 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2258 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2259 ; PAIR-NEXT: $sgpr3 = IMPLICIT_DEF2260 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2261 ; PAIR-NEXT: $vgpr5, $vgpr6 = V_DUAL_FMA_F32_e64_X_BITOP2_B32_e64_e96_gfx1250 0, $sgpr0, 0, $vgpr1, 0, killed $vgpr2, killed $sgpr3, killed $vgpr4, 123, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $exec2262 ; PAIR-NEXT: $vgpr7 = V_BFM_B32_e64 killed $sgpr0, killed $vgpr1, implicit $exec2263 $sgpr0 = IMPLICIT_DEF2264 $vgpr1 = IMPLICIT_DEF2265 $vgpr2 = IMPLICIT_DEF2266 $sgpr3 = IMPLICIT_DEF2267 $vgpr4 = IMPLICIT_DEF2268 $vgpr5 = V_FMA_F32_e64 0, $sgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec2269 $vgpr7 = V_BFM_B32_e64 $sgpr0, $vgpr1, implicit $exec2270 $vgpr6 = V_BITOP3_B32_e64 $sgpr3, $vgpr4, 0, 123, implicit $exec2271...2272 2273---2274name: vopd_combine_bitop_mov_b322275tracksRegLiveness: true2276body: |2277 bb.0:2278 2279 ; SCHED-LABEL: name: vopd_combine_bitop_mov_b322280 ; SCHED: $vgpr0 = IMPLICIT_DEF2281 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2282 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2283 ; SCHED-NEXT: $vgpr3 = V_BITOP3_B32_e64 $vgpr0, $vgpr1, 0, 20, implicit $exec2284 ; SCHED-NEXT: $vgpr5 = V_MOV_B32_e32 killed $vgpr2, implicit $exec2285 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2286 ;2287 ; PAIR-LABEL: name: vopd_combine_bitop_mov_b322288 ; PAIR: $vgpr0 = IMPLICIT_DEF2289 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2290 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2291 ; PAIR-NEXT: $vgpr5, $vgpr3 = V_DUAL_MOV_B32_e32_X_BITOP2_B32_e64_e96_gfx1250 killed $vgpr2, $vgpr0, $vgpr1, 20, implicit $exec, implicit $exec, implicit $exec2292 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2293 $vgpr0 = IMPLICIT_DEF2294 $vgpr1 = IMPLICIT_DEF2295 $vgpr2 = IMPLICIT_DEF2296 $vgpr3 = V_BITOP3_B32_e64 $vgpr0, $vgpr1, 0, 20, implicit $exec2297 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2298 $vgpr5 = V_MOV_B32_e32 $vgpr2, implicit $exec2299...2300 2301---2302name: vopd_no_combine_mov_b32_bitop_non_imm_src22303tracksRegLiveness: true2304body: |2305 bb.0:2306 2307 ; SCHED-LABEL: name: vopd_no_combine_mov_b32_bitop_non_imm_src22308 ; SCHED: $vgpr0 = IMPLICIT_DEF2309 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2310 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2311 ; SCHED-NEXT: $vgpr5 = V_MOV_B32_e32 $vgpr2, implicit $exec2312 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2313 ; SCHED-NEXT: $vgpr3 = V_BITOP3_B32_e64 killed $vgpr0, killed $vgpr1, killed $vgpr2, 20, implicit $exec2314 ;2315 ; PAIR-LABEL: name: vopd_no_combine_mov_b32_bitop_non_imm_src22316 ; PAIR: $vgpr0 = IMPLICIT_DEF2317 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2318 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2319 ; PAIR-NEXT: $vgpr5 = V_MOV_B32_e32 $vgpr2, implicit $exec2320 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2321 ; PAIR-NEXT: $vgpr3 = V_BITOP3_B32_e64 killed $vgpr0, killed $vgpr1, killed $vgpr2, 20, implicit $exec2322 $vgpr0 = IMPLICIT_DEF2323 $vgpr1 = IMPLICIT_DEF2324 $vgpr2 = IMPLICIT_DEF2325 $vgpr5 = V_MOV_B32_e32 $vgpr2, implicit $exec2326 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2327 $vgpr3 = V_BITOP3_B32_e64 $vgpr0, $vgpr1, $vgpr2, 20, implicit $exec2328...2329 2330---2331name: vopd_no_combine_mov_b32_bitop_non_zero_src22332tracksRegLiveness: true2333body: |2334 bb.0:2335 2336 ; SCHED-LABEL: name: vopd_no_combine_mov_b32_bitop_non_zero_src22337 ; SCHED: $vgpr0 = IMPLICIT_DEF2338 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2339 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2340 ; SCHED-NEXT: $vgpr5 = V_MOV_B32_e32 killed $vgpr2, implicit $exec2341 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2342 ; SCHED-NEXT: $vgpr3 = V_BITOP3_B32_e64 killed $vgpr0, killed $vgpr1, 1, 20, implicit $exec2343 ;2344 ; PAIR-LABEL: name: vopd_no_combine_mov_b32_bitop_non_zero_src22345 ; PAIR: $vgpr0 = IMPLICIT_DEF2346 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2347 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2348 ; PAIR-NEXT: $vgpr5 = V_MOV_B32_e32 killed $vgpr2, implicit $exec2349 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2350 ; PAIR-NEXT: $vgpr3 = V_BITOP3_B32_e64 killed $vgpr0, killed $vgpr1, 1, 20, implicit $exec2351 $vgpr0 = IMPLICIT_DEF2352 $vgpr1 = IMPLICIT_DEF2353 $vgpr2 = IMPLICIT_DEF2354 $vgpr5 = V_MOV_B32_e32 $vgpr2, implicit $exec2355 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2356 $vgpr3 = V_BITOP3_B32_e64 $vgpr0, $vgpr1, 1, 20, implicit $exec2357...2358 2359---2360name: vopd_no_combine_bitop3_mov_dpp_vgpr_src22361tracksRegLiveness: true2362body: |2363 bb.0:2364 ; SCHED-LABEL: name: vopd_no_combine_bitop3_mov_dpp_vgpr_src22365 ; SCHED: $vgpr1 = IMPLICIT_DEF2366 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2367 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2368 ; SCHED-NEXT: renamable $vgpr1 = V_MOV_B32_dpp killed $vgpr1, $vgpr3, 258, 15, 15, 0, implicit $exec2369 ; SCHED-NEXT: renamable $vgpr1 = V_BITOP3_B32_e64 killed $vgpr3, killed $vgpr4, killed $vgpr1, 128, implicit $exec2370 ; SCHED-NEXT: renamable $vgpr3 = V_MOV_B32_e32 -1, implicit $exec2371 ;2372 ; PAIR-LABEL: name: vopd_no_combine_bitop3_mov_dpp_vgpr_src22373 ; PAIR: $vgpr1 = IMPLICIT_DEF2374 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2375 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2376 ; PAIR-NEXT: renamable $vgpr1 = V_MOV_B32_dpp killed $vgpr1, $vgpr3, 258, 15, 15, 0, implicit $exec2377 ; PAIR-NEXT: renamable $vgpr1 = V_BITOP3_B32_e64 killed $vgpr3, killed $vgpr4, killed $vgpr1, 128, implicit $exec2378 ; PAIR-NEXT: renamable $vgpr3 = V_MOV_B32_e32 -1, implicit $exec2379 $vgpr1 = IMPLICIT_DEF2380 $vgpr3 = IMPLICIT_DEF2381 $vgpr4 = IMPLICIT_DEF2382 2383 renamable $vgpr1 = V_MOV_B32_dpp killed $vgpr1, $vgpr3, 258, 15, 15, 0, implicit $exec2384 renamable $vgpr1 = V_BITOP3_B32_e64 killed $vgpr3, $vgpr4, killed $vgpr1, 128, implicit $exec2385 renamable $vgpr3 = V_MOV_B32_e32 -1, implicit $exec2386...2387 2388---2389name: vopd_combine_mov_or2390tracksRegLiveness: true2391body: |2392 bb.0:2393 2394 ; SCHED-LABEL: name: vopd_combine_mov_or2395 ; SCHED: $vgpr0 = IMPLICIT_DEF2396 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2397 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2398 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2399 ; SCHED-NEXT: $vgpr5 = V_OR_B32_e32 $vgpr1, killed $vgpr2, implicit $exec2400 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2401 ;2402 ; PAIR-LABEL: name: vopd_combine_mov_or2403 ; PAIR: $vgpr0 = IMPLICIT_DEF2404 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2405 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2406 ; PAIR-NEXT: $vgpr3, $vgpr5 = V_DUAL_MOV_B32_e32_X_BITOP2_B32_e64_e96_gfx1250 $vgpr0, $vgpr1, killed $vgpr2, 84, implicit $exec, implicit $exec, implicit $exec2407 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2408 $vgpr0 = IMPLICIT_DEF2409 $vgpr1 = IMPLICIT_DEF2410 $vgpr2 = IMPLICIT_DEF2411 $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2412 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2413 $vgpr5 = V_OR_B32_e32 $vgpr1, $vgpr2, implicit $exec2414...2415 2416---2417name: vopd_combine_mov_and2418tracksRegLiveness: true2419body: |2420 bb.0:2421 2422 ; SCHED-LABEL: name: vopd_combine_mov_and2423 ; SCHED: $vgpr0 = IMPLICIT_DEF2424 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2425 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2426 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2427 ; SCHED-NEXT: $vgpr5 = V_AND_B32_e32 $vgpr1, killed $vgpr2, implicit $exec2428 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2429 ;2430 ; PAIR-LABEL: name: vopd_combine_mov_and2431 ; PAIR: $vgpr0 = IMPLICIT_DEF2432 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2433 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2434 ; PAIR-NEXT: $vgpr3, $vgpr5 = V_DUAL_MOV_B32_e32_X_BITOP2_B32_e64_e96_gfx1250 $vgpr0, $vgpr1, killed $vgpr2, 64, implicit $exec, implicit $exec, implicit $exec2435 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2436 $vgpr0 = IMPLICIT_DEF2437 $vgpr1 = IMPLICIT_DEF2438 $vgpr2 = IMPLICIT_DEF2439 $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2440 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2441 $vgpr5 = V_AND_B32_e32 $vgpr1, $vgpr2, implicit $exec2442...2443 2444---2445name: vopd_combine_mov_xor2446tracksRegLiveness: true2447body: |2448 bb.0:2449 2450 ; SCHED-LABEL: name: vopd_combine_mov_xor2451 ; SCHED: $vgpr0 = IMPLICIT_DEF2452 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2453 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2454 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2455 ; SCHED-NEXT: $vgpr5 = V_XOR_B32_e32 $vgpr1, killed $vgpr2, implicit $exec2456 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2457 ;2458 ; PAIR-LABEL: name: vopd_combine_mov_xor2459 ; PAIR: $vgpr0 = IMPLICIT_DEF2460 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2461 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2462 ; PAIR-NEXT: $vgpr3, $vgpr5 = V_DUAL_MOV_B32_e32_X_BITOP2_B32_e64_e96_gfx1250 $vgpr0, $vgpr1, killed $vgpr2, 20, implicit $exec, implicit $exec, implicit $exec2463 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2464 $vgpr0 = IMPLICIT_DEF2465 $vgpr1 = IMPLICIT_DEF2466 $vgpr2 = IMPLICIT_DEF2467 $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2468 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2469 $vgpr5 = V_XOR_B32_e32 $vgpr1, $vgpr2, implicit $exec2470...2471 2472---2473name: vopd_combine_mov_xnor2474tracksRegLiveness: true2475body: |2476 bb.0:2477 2478 ; SCHED-LABEL: name: vopd_combine_mov_xnor2479 ; SCHED: $vgpr0 = IMPLICIT_DEF2480 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2481 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2482 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2483 ; SCHED-NEXT: $vgpr5 = V_XNOR_B32_e32 $vgpr1, killed $vgpr2, implicit $exec2484 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2485 ;2486 ; PAIR-LABEL: name: vopd_combine_mov_xnor2487 ; PAIR: $vgpr0 = IMPLICIT_DEF2488 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2489 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2490 ; PAIR-NEXT: $vgpr3, $vgpr5 = V_DUAL_MOV_B32_e32_X_BITOP2_B32_e64_e96_gfx1250 $vgpr0, $vgpr1, killed $vgpr2, 65, implicit $exec, implicit $exec, implicit $exec2491 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2492 $vgpr0 = IMPLICIT_DEF2493 $vgpr1 = IMPLICIT_DEF2494 $vgpr2 = IMPLICIT_DEF2495 $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2496 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2497 $vgpr5 = V_XNOR_B32_e32 $vgpr1, $vgpr2, implicit $exec2498...2499 2500# V_NOT_B32 can also be combined to BITOP2, but we need to come up with a fake src12501# which would satisfy all register constraints and does not break liveness.2502# This is not trivial at the very least.2503---2504name: vopd_combine_mov_not2505tracksRegLiveness: true2506body: |2507 bb.0:2508 2509 ; SCHED-LABEL: name: vopd_combine_mov_not2510 ; SCHED: $vgpr0 = IMPLICIT_DEF2511 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2512 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2513 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, $vgpr1, implicit $exec2514 ; SCHED-NEXT: $vgpr5 = V_NOT_B32_e32 killed $vgpr1, implicit $exec2515 ;2516 ; PAIR-LABEL: name: vopd_combine_mov_not2517 ; PAIR: $vgpr0 = IMPLICIT_DEF2518 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2519 ; PAIR-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2520 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, $vgpr1, implicit $exec2521 ; PAIR-NEXT: $vgpr5 = V_NOT_B32_e32 killed $vgpr1, implicit $exec2522 $vgpr0 = IMPLICIT_DEF2523 $vgpr1 = IMPLICIT_DEF2524 $vgpr3 = V_MOV_B32_e32 $vgpr0, implicit $exec2525 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2526 $vgpr5 = V_NOT_B32_e32 $vgpr1, implicit $exec2527...2528 2529---2530name: vopd_combine_fadd_not2531tracksRegLiveness: true2532body: |2533 bb.0:2534 2535 ; SCHED-LABEL: name: vopd_combine_fadd_not2536 ; SCHED: $vgpr0 = IMPLICIT_DEF2537 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2538 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2539 ; SCHED-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec2540 ; SCHED-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2541 ; SCHED-NEXT: $vgpr5 = V_NOT_B32_e32 killed $vgpr2, implicit $exec2542 ;2543 ; PAIR-LABEL: name: vopd_combine_fadd_not2544 ; PAIR: $vgpr0 = IMPLICIT_DEF2545 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2546 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2547 ; PAIR-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec2548 ; PAIR-NEXT: $vgpr4 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2549 ; PAIR-NEXT: $vgpr5 = V_NOT_B32_e32 killed $vgpr2, implicit $exec2550 $vgpr0 = IMPLICIT_DEF2551 $vgpr1 = IMPLICIT_DEF2552 $vgpr2 = IMPLICIT_DEF2553 $vgpr3 = V_ADD_F32_e32 $vgpr0, $vgpr1, implicit $mode, implicit $exec2554 $vgpr4 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2555 $vgpr5 = V_NOT_B32_e32 $vgpr2, implicit $exec2556...2557 2558---2559name: vopd_combine_fadd_f64_not2560tracksRegLiveness: true2561body: |2562 bb.0:2563 2564 ; SCHED-LABEL: name: vopd_combine_fadd_f64_not2565 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF2566 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2567 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF2568 ; SCHED-NEXT: $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr2_vgpr3, implicit $mode, implicit $exec2569 ; SCHED-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2570 ; SCHED-NEXT: $vgpr11 = V_NOT_B32_e32 killed $vgpr6, implicit $exec2571 ;2572 ; PAIR-LABEL: name: vopd_combine_fadd_f64_not2573 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF2574 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF2575 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF2576 ; PAIR-NEXT: $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr2_vgpr3, implicit $mode, implicit $exec2577 ; PAIR-NEXT: $vgpr10 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2578 ; PAIR-NEXT: $vgpr11 = V_NOT_B32_e32 killed $vgpr6, implicit $exec2579 $vgpr0_vgpr1 = IMPLICIT_DEF2580 $vgpr2_vgpr3 = IMPLICIT_DEF2581 $vgpr6 = IMPLICIT_DEF2582 $vgpr8_vgpr9 = V_ADD_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr2_vgpr3, implicit $mode, implicit $exec2583 $vgpr10 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2584 $vgpr11 = V_NOT_B32_e32 $vgpr6, implicit $exec2585...2586 2587---2588name: vopd_no_combine_src1_imm2589tracksRegLiveness: true2590body: |2591 bb.0:2592 2593 ; SCHED-LABEL: name: vopd_no_combine_src1_imm2594 ; SCHED: $vgpr0 = IMPLICIT_DEF2595 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2596 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2597 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2598 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2599 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2600 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, 1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2601 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2602 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2603 ;2604 ; PAIR-LABEL: name: vopd_no_combine_src1_imm2605 ; PAIR: $vgpr0 = IMPLICIT_DEF2606 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2607 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2608 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2609 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2610 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2611 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, 1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2612 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2613 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2614 $vgpr0 = IMPLICIT_DEF2615 $vgpr1 = IMPLICIT_DEF2616 $vgpr2 = IMPLICIT_DEF2617 $vgpr3 = IMPLICIT_DEF2618 $vgpr4 = IMPLICIT_DEF2619 $vgpr5 = IMPLICIT_DEF2620 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, 1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec2621 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2622 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec2623...2624 2625---2626name: vopd_no_combine_src2_imm2627tracksRegLiveness: true2628body: |2629 bb.0:2630 2631 ; SCHED-LABEL: name: vopd_no_combine_src2_imm2632 ; SCHED: $vgpr0 = IMPLICIT_DEF2633 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2634 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2635 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2636 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2637 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2638 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2639 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2640 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, 1, 0, 0, implicit $mode, implicit $exec2641 ;2642 ; PAIR-LABEL: name: vopd_no_combine_src2_imm2643 ; PAIR: $vgpr0 = IMPLICIT_DEF2644 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2645 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2646 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2647 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2648 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2649 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2650 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2651 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, 1, 0, 0, implicit $mode, implicit $exec2652 $vgpr0 = IMPLICIT_DEF2653 $vgpr1 = IMPLICIT_DEF2654 $vgpr2 = IMPLICIT_DEF2655 $vgpr3 = IMPLICIT_DEF2656 $vgpr4 = IMPLICIT_DEF2657 $vgpr5 = IMPLICIT_DEF2658 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec2659 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2660 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, 1, 0, 0, implicit $mode, implicit $exec2661...2662 2663---2664name: vopd_no_combine_src1_sgpr2665tracksRegLiveness: true2666body: |2667 bb.0:2668 2669 ; SCHED-LABEL: name: vopd_no_combine_src1_sgpr2670 ; SCHED: $vgpr0 = IMPLICIT_DEF2671 ; SCHED-NEXT: $sgpr1 = IMPLICIT_DEF2672 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2673 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2674 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2675 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2676 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2677 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, killed $sgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2678 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2679 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2680 ;2681 ; PAIR-LABEL: name: vopd_no_combine_src1_sgpr2682 ; PAIR: $vgpr0 = IMPLICIT_DEF2683 ; PAIR-NEXT: $sgpr1 = IMPLICIT_DEF2684 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2685 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2686 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2687 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2688 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2689 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, killed $sgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2690 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2691 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2692 $vgpr0 = IMPLICIT_DEF2693 $sgpr1 = IMPLICIT_DEF2694 $vgpr1 = IMPLICIT_DEF2695 $vgpr2 = IMPLICIT_DEF2696 $vgpr3 = IMPLICIT_DEF2697 $vgpr4 = IMPLICIT_DEF2698 $vgpr5 = IMPLICIT_DEF2699 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $sgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec2700 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2701 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec2702...2703 2704---2705name: vopd_no_combine_src2_sgpr2706tracksRegLiveness: true2707body: |2708 bb.0:2709 2710 ; SCHED-LABEL: name: vopd_no_combine_src2_sgpr2711 ; SCHED: $vgpr0 = IMPLICIT_DEF2712 ; SCHED-NEXT: $sgpr1 = IMPLICIT_DEF2713 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2714 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF2715 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2716 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2717 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2718 ; SCHED-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2719 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2720 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $sgpr1, 0, 0, implicit $mode, implicit $exec2721 ;2722 ; PAIR-LABEL: name: vopd_no_combine_src2_sgpr2723 ; PAIR: $vgpr0 = IMPLICIT_DEF2724 ; PAIR-NEXT: $sgpr1 = IMPLICIT_DEF2725 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2726 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF2727 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2728 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2729 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2730 ; PAIR-NEXT: $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec2731 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2732 ; PAIR-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $sgpr1, 0, 0, implicit $mode, implicit $exec2733 $vgpr0 = IMPLICIT_DEF2734 $sgpr1 = IMPLICIT_DEF2735 $vgpr1 = IMPLICIT_DEF2736 $vgpr2 = IMPLICIT_DEF2737 $vgpr3 = IMPLICIT_DEF2738 $vgpr4 = IMPLICIT_DEF2739 $vgpr5 = IMPLICIT_DEF2740 $vgpr6 = V_FMA_F32_e64 0, $vgpr0, 0, $vgpr1, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec2741 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2742 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $sgpr1, 0, 0, implicit $mode, implicit $exec2743...2744 2745---2746name: vopd_combine_cndmask_fadd2747tracksRegLiveness: true2748body: |2749 bb.0:2750 liveins: $vcc_lo2751 2752 ; SCHED-LABEL: name: vopd_combine_cndmask_fadd2753 ; SCHED: liveins: $vcc_lo2754 ; SCHED-NEXT: {{ $}}2755 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF2756 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2757 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2758 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2759 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $exec, implicit killed $vcc_lo2760 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr4, implicit $mode, implicit $exec2761 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2762 ;2763 ; PAIR-LABEL: name: vopd_combine_cndmask_fadd2764 ; PAIR: liveins: $vcc_lo2765 ; PAIR-NEXT: {{ $}}2766 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF2767 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2768 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2769 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2770 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_ADD_F32_e32_gfx1250 $vgpr0, $vgpr1, killed $vgpr3, killed $vgpr4, implicit $vcc_lo, implicit $exec, implicit $mode, implicit $exec, implicit killed $vcc_lo, implicit $mode, implicit $exec2771 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2772 $vgpr0 = IMPLICIT_DEF2773 $vgpr1 = IMPLICIT_DEF2774 $vgpr3 = IMPLICIT_DEF2775 $vgpr4 = IMPLICIT_DEF2776 $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $exec, implicit $vcc2777 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2778 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec2779...2780 2781---2782name: vopd_combine_cndmask_fma2783tracksRegLiveness: true2784body: |2785 bb.0:2786 liveins: $vcc_lo2787 2788 ; SCHED-LABEL: name: vopd_combine_cndmask_fma2789 ; SCHED: liveins: $vcc_lo2790 ; SCHED-NEXT: {{ $}}2791 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF2792 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2793 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2794 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2795 ; SCHED-NEXT: $vgpr5 = IMPLICIT_DEF2796 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $exec, implicit killed $vcc_lo2797 ; SCHED-NEXT: $vgpr7 = V_FMA_F32_e64 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, 0, 0, implicit $mode, implicit $exec2798 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2799 ;2800 ; PAIR-LABEL: name: vopd_combine_cndmask_fma2801 ; PAIR: liveins: $vcc_lo2802 ; PAIR-NEXT: {{ $}}2803 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF2804 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2805 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2806 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2807 ; PAIR-NEXT: $vgpr5 = IMPLICIT_DEF2808 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_FMA_F32_e64_e96_gfx1250 0, $vgpr0, 0, $vgpr1, $vcc_lo, 0, killed $vgpr3, 0, killed $vgpr4, 0, killed $vgpr5, implicit $exec, implicit $mode, implicit $exec, implicit killed $vcc_lo, implicit $mode, implicit $exec2809 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2810 $vgpr0 = IMPLICIT_DEF2811 $vgpr1 = IMPLICIT_DEF2812 $vgpr3 = IMPLICIT_DEF2813 $vgpr4 = IMPLICIT_DEF2814 $vgpr5 = IMPLICIT_DEF2815 $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $exec, implicit $vcc2816 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2817 $vgpr7 = V_FMA_F32_e64 0, $vgpr3, 0, $vgpr4, 0, $vgpr5, 0, 0, implicit $mode, implicit $exec2818...2819 2820---2821name: vopd_combine_cndmask_e64_vcc_fadd2822tracksRegLiveness: true2823body: |2824 bb.0:2825 2826 ; SCHED-LABEL: name: vopd_combine_cndmask_e64_vcc_fadd2827 ; SCHED: $vgpr0 = IMPLICIT_DEF2828 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2829 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2830 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2831 ; SCHED-NEXT: $vcc = IMPLICIT_DEF2832 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, killed $vcc_lo, implicit $exec2833 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr4, implicit $mode, implicit $exec2834 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2835 ;2836 ; PAIR-LABEL: name: vopd_combine_cndmask_e64_vcc_fadd2837 ; PAIR: $vgpr0 = IMPLICIT_DEF2838 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2839 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2840 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2841 ; PAIR-NEXT: $vcc = IMPLICIT_DEF2842 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, killed $vcc_lo, 0, killed $vgpr3, 0, killed $vgpr4, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2843 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2844 $vgpr0 = IMPLICIT_DEF2845 $vgpr1 = IMPLICIT_DEF2846 $vgpr3 = IMPLICIT_DEF2847 $vgpr4 = IMPLICIT_DEF2848 $vcc = IMPLICIT_DEF2849 $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, $vcc_lo, implicit $exec2850 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2851 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec2852...2853 2854---2855name: vopd_combine_cndmask_e64_sgpr_fadd2856tracksRegLiveness: true2857body: |2858 bb.0:2859 2860 ; SCHED-LABEL: name: vopd_combine_cndmask_e64_sgpr_fadd2861 ; SCHED: $vgpr0 = IMPLICIT_DEF2862 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2863 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2864 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2865 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF2866 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, killed $sgpr0, implicit $exec2867 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr4, implicit $mode, implicit $exec2868 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2869 ;2870 ; PAIR-LABEL: name: vopd_combine_cndmask_e64_sgpr_fadd2871 ; PAIR: $vgpr0 = IMPLICIT_DEF2872 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2873 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2874 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2875 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF2876 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, killed $sgpr0, 0, killed $vgpr3, 0, killed $vgpr4, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2877 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2878 $vgpr0 = IMPLICIT_DEF2879 $vgpr1 = IMPLICIT_DEF2880 $vgpr3 = IMPLICIT_DEF2881 $vgpr4 = IMPLICIT_DEF2882 $sgpr0 = IMPLICIT_DEF2883 $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, $sgpr0, implicit $exec2884 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2885 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec2886...2887 2888---2889name: vopd_combine_cndmask_e64_neg_vcc_fadd2890tracksRegLiveness: true2891body: |2892 bb.0:2893 2894 ; SCHED-LABEL: name: vopd_combine_cndmask_e64_neg_vcc_fadd2895 ; SCHED: $vgpr0 = IMPLICIT_DEF2896 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2897 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF2898 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2899 ; SCHED-NEXT: $vcc = IMPLICIT_DEF2900 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 1, $vgpr1, killed $vcc_lo, implicit $exec2901 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr4, implicit $mode, implicit $exec2902 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2903 ;2904 ; PAIR-LABEL: name: vopd_combine_cndmask_e64_neg_vcc_fadd2905 ; PAIR: $vgpr0 = IMPLICIT_DEF2906 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2907 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF2908 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2909 ; PAIR-NEXT: $vcc = IMPLICIT_DEF2910 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0, 1, $vgpr1, killed $vcc_lo, 0, killed $vgpr3, 0, killed $vgpr4, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec2911 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2912 $vgpr0 = IMPLICIT_DEF2913 $vgpr1 = IMPLICIT_DEF2914 $vgpr3 = IMPLICIT_DEF2915 $vgpr4 = IMPLICIT_DEF2916 $vcc = IMPLICIT_DEF2917 $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 1, $vgpr1, $vcc_lo, implicit $exec2918 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2919 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec2920...2921 2922---2923name: vopd_no_combine_cndmask_e64_vcc_fadd_constant_bus_limit2924tracksRegLiveness: true2925body: |2926 bb.0:2927 2928 ; SCHED-LABEL: name: vopd_no_combine_cndmask_e64_vcc_fadd_constant_bus_limit2929 ; SCHED: $vgpr0 = IMPLICIT_DEF2930 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2931 ; SCHED-NEXT: $sgpr3 = IMPLICIT_DEF2932 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2933 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF2934 ; SCHED-NEXT: $vcc = IMPLICIT_DEF2935 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, killed $sgpr0, 0, $vgpr1, killed $vcc_lo, implicit $exec2936 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2937 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $sgpr3, killed $vgpr4, implicit $mode, implicit $exec2938 ;2939 ; PAIR-LABEL: name: vopd_no_combine_cndmask_e64_vcc_fadd_constant_bus_limit2940 ; PAIR: $vgpr0 = IMPLICIT_DEF2941 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2942 ; PAIR-NEXT: $sgpr3 = IMPLICIT_DEF2943 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2944 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF2945 ; PAIR-NEXT: $vcc = IMPLICIT_DEF2946 ; PAIR-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, killed $sgpr0, 0, $vgpr1, killed $vcc_lo, implicit $exec2947 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2948 ; PAIR-NEXT: $vgpr7 = V_ADD_F32_e32 killed $sgpr3, killed $vgpr4, implicit $mode, implicit $exec2949 $vgpr0 = IMPLICIT_DEF2950 $vgpr1 = IMPLICIT_DEF2951 $sgpr3 = IMPLICIT_DEF2952 $vgpr4 = IMPLICIT_DEF2953 $sgpr0 = IMPLICIT_DEF2954 $vcc = IMPLICIT_DEF2955 $vgpr6 = V_CNDMASK_B32_e64 0, $sgpr0, 0, $vgpr1, $vcc_lo, implicit $exec2956 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2957 $vgpr7 = V_ADD_F32_e32 $sgpr3, $vgpr4, implicit $mode, implicit $exec2958...2959 2960---2961name: vopd_no_combine_cndmask_e64_vcc_fadd_sgpr_src12962tracksRegLiveness: true2963body: |2964 bb.0:2965 2966 ; SCHED-LABEL: name: vopd_no_combine_cndmask_e64_vcc_fadd_sgpr_src12967 ; SCHED: $vgpr0 = IMPLICIT_DEF2968 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF2969 ; SCHED-NEXT: $sgpr3 = IMPLICIT_DEF2970 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF2971 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF2972 ; SCHED-NEXT: $vcc = IMPLICIT_DEF2973 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, killed $sgpr0, killed $vcc_lo, implicit $exec2974 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2975 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $sgpr3, killed $vgpr4, implicit $mode, implicit $exec2976 ;2977 ; PAIR-LABEL: name: vopd_no_combine_cndmask_e64_vcc_fadd_sgpr_src12978 ; PAIR: $vgpr0 = IMPLICIT_DEF2979 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF2980 ; PAIR-NEXT: $sgpr3 = IMPLICIT_DEF2981 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF2982 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF2983 ; PAIR-NEXT: $vcc = IMPLICIT_DEF2984 ; PAIR-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, killed $sgpr0, killed $vcc_lo, implicit $exec2985 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec2986 ; PAIR-NEXT: $vgpr7 = V_ADD_F32_e32 killed $sgpr3, killed $vgpr4, implicit $mode, implicit $exec2987 $vgpr0 = IMPLICIT_DEF2988 $vgpr1 = IMPLICIT_DEF2989 $sgpr3 = IMPLICIT_DEF2990 $vgpr4 = IMPLICIT_DEF2991 $sgpr0 = IMPLICIT_DEF2992 $vcc = IMPLICIT_DEF2993 $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $sgpr0, $vcc_lo, implicit $exec2994 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec2995 $vgpr7 = V_ADD_F32_e32 $sgpr3, $vgpr4, implicit $mode, implicit $exec2996...2997 2998---2999name: vopd_combine_cndmask_e64_cndmask_e323000tracksRegLiveness: true3001body: |3002 bb.0:3003 liveins: $vcc_lo3004 3005 ; SCHED-LABEL: name: vopd_combine_cndmask_e64_cndmask_e323006 ; SCHED: liveins: $vcc_lo3007 ; SCHED-NEXT: {{ $}}3008 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF3009 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3010 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3011 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3012 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF3013 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, killed $sgpr0, implicit $exec3014 ; SCHED-NEXT: $vgpr7 = V_CNDMASK_B32_e32 killed $vgpr3, killed $vgpr4, implicit killed $vcc_lo, implicit $exec3015 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3016 ;3017 ; PAIR-LABEL: name: vopd_combine_cndmask_e64_cndmask_e323018 ; PAIR: liveins: $vcc_lo3019 ; PAIR-NEXT: {{ $}}3020 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF3021 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3022 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3023 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3024 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF3025 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_CNDMASK_B32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, killed $sgpr0, 0, killed $vgpr3, 0, killed $vgpr4, $vcc_lo, implicit $exec, implicit $exec, implicit killed $vcc_lo, implicit $exec3026 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3027 $vgpr0 = IMPLICIT_DEF3028 $vgpr1 = IMPLICIT_DEF3029 $vgpr3 = IMPLICIT_DEF3030 $vgpr4 = IMPLICIT_DEF3031 $sgpr0 = IMPLICIT_DEF3032 $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, $sgpr0, implicit $exec3033 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3034 $vgpr7 = V_CNDMASK_B32_e32 $vgpr3, $vgpr4, implicit $vcc, implicit $exec3035...3036 3037---3038name: vopd_combine_cndmask_e32_cndmask_e643039tracksRegLiveness: true3040body: |3041 bb.0:3042 liveins: $vcc_lo3043 3044 ; SCHED-LABEL: name: vopd_combine_cndmask_e32_cndmask_e643045 ; SCHED: liveins: $vcc_lo3046 ; SCHED-NEXT: {{ $}}3047 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF3048 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3049 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3050 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3051 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF3052 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit killed $vcc_lo, implicit $exec3053 ; SCHED-NEXT: $vgpr7 = V_CNDMASK_B32_e64 0, killed $vgpr3, 0, killed $vgpr4, killed $sgpr0, implicit $exec3054 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3055 ;3056 ; PAIR-LABEL: name: vopd_combine_cndmask_e32_cndmask_e643057 ; PAIR: liveins: $vcc_lo3058 ; PAIR-NEXT: {{ $}}3059 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF3060 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3061 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3062 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3063 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF3064 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_CNDMASK_B32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, $vcc_lo, 0, killed $vgpr3, 0, killed $vgpr4, killed $sgpr0, implicit $exec, implicit killed $vcc_lo, implicit $exec, implicit $exec3065 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3066 $vgpr0 = IMPLICIT_DEF3067 $vgpr1 = IMPLICIT_DEF3068 $vgpr3 = IMPLICIT_DEF3069 $vgpr4 = IMPLICIT_DEF3070 $sgpr0 = IMPLICIT_DEF3071 $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $vcc, implicit $exec3072 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3073 $vgpr7 = V_CNDMASK_B32_e64 0, $vgpr3, 0, $vgpr4, $sgpr0, implicit $exec3074...3075 3076---3077name: vopd_combine_cndmask_e32_cndmask_e323078tracksRegLiveness: true3079body: |3080 bb.0:3081 liveins: $vcc_lo3082 3083 ; SCHED-LABEL: name: vopd_combine_cndmask_e32_cndmask_e323084 ; SCHED: liveins: $vcc_lo3085 ; SCHED-NEXT: {{ $}}3086 ; SCHED-NEXT: $vgpr0 = IMPLICIT_DEF3087 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3088 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3089 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3090 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF3091 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $vcc_lo, implicit $exec3092 ; SCHED-NEXT: $vgpr7 = V_CNDMASK_B32_e32 killed $vgpr3, killed $vgpr4, implicit killed $vcc_lo, implicit $exec3093 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3094 ;3095 ; PAIR-LABEL: name: vopd_combine_cndmask_e32_cndmask_e323096 ; PAIR: liveins: $vcc_lo3097 ; PAIR-NEXT: {{ $}}3098 ; PAIR-NEXT: $vgpr0 = IMPLICIT_DEF3099 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3100 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3101 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3102 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF3103 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_CNDMASK_B32_e32_gfx1250 $vgpr0, $vgpr1, killed $vgpr3, killed $vgpr4, implicit $vcc_lo, implicit $exec, implicit $vcc_lo, implicit $exec, implicit killed $vcc_lo, implicit $exec3104 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3105 $vgpr0 = IMPLICIT_DEF3106 $vgpr1 = IMPLICIT_DEF3107 $vgpr3 = IMPLICIT_DEF3108 $vgpr4 = IMPLICIT_DEF3109 $sgpr0 = IMPLICIT_DEF3110 $vgpr6 = V_CNDMASK_B32_e32 $vgpr0, $vgpr1, implicit $vcc, implicit $exec3111 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3112 $vgpr7 = V_CNDMASK_B32_e32 $vgpr3, $vgpr4, implicit $vcc, implicit $exec3113...3114 3115---3116name: vopd_combine_cndmask_e64_cndmask_e643117tracksRegLiveness: true3118body: |3119 bb.0:3120 3121 ; SCHED-LABEL: name: vopd_combine_cndmask_e64_cndmask_e643122 ; SCHED: $vgpr0 = IMPLICIT_DEF3123 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3124 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3125 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3126 ; SCHED-NEXT: $sgpr0 = IMPLICIT_DEF3127 ; SCHED-NEXT: $sgpr1 = IMPLICIT_DEF3128 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, killed $sgpr0, implicit $exec3129 ; SCHED-NEXT: $vgpr7 = V_CNDMASK_B32_e64 0, killed $vgpr3, 0, killed $vgpr4, killed $sgpr1, implicit $exec3130 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3131 ;3132 ; PAIR-LABEL: name: vopd_combine_cndmask_e64_cndmask_e643133 ; PAIR: $vgpr0 = IMPLICIT_DEF3134 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3135 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3136 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3137 ; PAIR-NEXT: $sgpr0 = IMPLICIT_DEF3138 ; PAIR-NEXT: $sgpr1 = IMPLICIT_DEF3139 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_CNDMASK_B32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, killed $sgpr0, 0, killed $vgpr3, 0, killed $vgpr4, killed $sgpr1, implicit $exec, implicit $exec, implicit $exec3140 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3141 $vgpr0 = IMPLICIT_DEF3142 $vgpr1 = IMPLICIT_DEF3143 $vgpr3 = IMPLICIT_DEF3144 $vgpr4 = IMPLICIT_DEF3145 $sgpr0 = IMPLICIT_DEF3146 $sgpr1 = IMPLICIT_DEF3147 $vgpr6 = V_CNDMASK_B32_e64 0, $vgpr0, 0, $vgpr1, $sgpr0, implicit $exec3148 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3149 $vgpr7 = V_CNDMASK_B32_e64 0, $vgpr3, 0, $vgpr4, $sgpr1, implicit $exec3150...3151 3152---3153name: vopd_combine_fadd_e64_fadd_e643154tracksRegLiveness: true3155body: |3156 bb.0:3157 3158 ; SCHED-LABEL: name: vopd_combine_fadd_e64_fadd_e643159 ; SCHED: $vgpr0 = IMPLICIT_DEF3160 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3161 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF3162 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3163 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 0, $vgpr1, 0, 0, implicit $mode, implicit $exec3164 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e64 0, killed $vgpr3, 0, killed $vgpr2, 0, 0, implicit $mode, implicit $exec3165 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3166 ;3167 ; PAIR-LABEL: name: vopd_combine_fadd_e64_fadd_e643168 ; PAIR: $vgpr0 = IMPLICIT_DEF3169 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3170 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF3171 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3172 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_ADD_F32_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0, 0, $vgpr1, 0, killed $vgpr3, 0, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3173 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3174 $vgpr0 = IMPLICIT_DEF3175 $vgpr1 = IMPLICIT_DEF3176 $vgpr2 = IMPLICIT_DEF3177 $vgpr3 = IMPLICIT_DEF3178 $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 0, $vgpr1, 0, 0, implicit $mode, implicit $exec3179 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3180 $vgpr7 = V_ADD_F32_e64 0, $vgpr3, 0, $vgpr2, 0, 0, implicit $mode, implicit $exec3181...3182 3183---3184name: vopd_combine_fadd_e64_neg_fadd_e323185tracksRegLiveness: true3186body: |3187 bb.0:3188 3189 ; SCHED-LABEL: name: vopd_combine_fadd_e64_neg_fadd_e323190 ; SCHED: $vgpr0 = IMPLICIT_DEF3191 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3192 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF3193 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3194 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 1, $vgpr1, 0, 0, implicit $mode, implicit $exec3195 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr2, implicit $mode, implicit $exec3196 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3197 ;3198 ; PAIR-LABEL: name: vopd_combine_fadd_e64_neg_fadd_e323199 ; PAIR: $vgpr0 = IMPLICIT_DEF3200 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3201 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF3202 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3203 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_ADD_F32_e32_X_ADD_F32_e32_e96_gfx1250 0, $vgpr0, 1, $vgpr1, 0, killed $vgpr3, 0, killed $vgpr2, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3204 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3205 $vgpr0 = IMPLICIT_DEF3206 $vgpr1 = IMPLICIT_DEF3207 $vgpr2 = IMPLICIT_DEF3208 $vgpr3 = IMPLICIT_DEF3209 $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 1, $vgpr1, 0, 0, implicit $mode, implicit $exec3210 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3211 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr2, implicit $mode, implicit $exec3212...3213 3214---3215name: vopd_no_combine_fadd_e64_abs_neg_fadd_e323216tracksRegLiveness: true3217body: |3218 bb.0:3219 3220 ; SCHED-LABEL: name: vopd_no_combine_fadd_e64_abs_neg_fadd_e323221 ; SCHED: $vgpr0 = IMPLICIT_DEF3222 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3223 ; SCHED-NEXT: $vgpr2 = IMPLICIT_DEF3224 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3225 ; SCHED-NEXT: $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 3, $vgpr1, 0, 0, implicit $mode, implicit $exec3226 ; SCHED-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3227 ; SCHED-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr2, implicit $mode, implicit $exec3228 ;3229 ; PAIR-LABEL: name: vopd_no_combine_fadd_e64_abs_neg_fadd_e323230 ; PAIR: $vgpr0 = IMPLICIT_DEF3231 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3232 ; PAIR-NEXT: $vgpr2 = IMPLICIT_DEF3233 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3234 ; PAIR-NEXT: $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 3, $vgpr1, 0, 0, implicit $mode, implicit $exec3235 ; PAIR-NEXT: $vgpr8 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3236 ; PAIR-NEXT: $vgpr7 = V_ADD_F32_e32 killed $vgpr3, killed $vgpr2, implicit $mode, implicit $exec3237 $vgpr0 = IMPLICIT_DEF3238 $vgpr1 = IMPLICIT_DEF3239 $vgpr2 = IMPLICIT_DEF3240 $vgpr3 = IMPLICIT_DEF3241 $vgpr6 = V_ADD_F32_e64 0, $vgpr0, 3, $vgpr1, 0, 0, implicit $mode, implicit $exec3242 $vgpr8 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3243 $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr2, implicit $mode, implicit $exec3244...3245 3246---3247name: vopd_combine_mul_f64_e64_sub_f32_neg3248tracksRegLiveness: true3249body: |3250 bb.0:3251 3252 ; SCHED-LABEL: name: vopd_combine_mul_f64_e64_sub_f32_neg3253 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF3254 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3255 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3256 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3257 ; SCHED-NEXT: $vgpr8_vgpr9 = V_MUL_F64_pseudo_e64 1, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec3258 ; SCHED-NEXT: $vgpr7 = V_SUB_F32_e64 0, killed $vgpr6, 1, killed $vgpr4, 0, 0, implicit $mode, implicit $exec3259 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3260 ;3261 ; PAIR-LABEL: name: vopd_combine_mul_f64_e64_sub_f32_neg3262 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF3263 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3264 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3265 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3266 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_MUL_F64_pseudo_e32_X_SUB_F32_e32_e96_gfx1250 1, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr6, 1, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3267 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3268 $vgpr0_vgpr1 = IMPLICIT_DEF3269 $vgpr2_vgpr3 = IMPLICIT_DEF3270 $vgpr4 = IMPLICIT_DEF3271 $vgpr6 = IMPLICIT_DEF3272 $vgpr8_vgpr9 = V_MUL_F64_pseudo_e64 1, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec3273 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3274 $vgpr7 = V_SUB_F32_e64 0, $vgpr6, 1, $vgpr4, 0, 0, implicit $mode, implicit $exec3275...3276 3277---3278name: vopd_combine_mul_f64_e32_subrev_f32_neg3279tracksRegLiveness: true3280body: |3281 bb.0:3282 3283 ; SCHED-LABEL: name: vopd_combine_mul_f64_e32_subrev_f32_neg3284 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF3285 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3286 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3287 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3288 ; SCHED-NEXT: $vgpr8_vgpr9 = V_MUL_F64_pseudo_e32 $vgpr0_vgpr1, killed $vgpr2_vgpr3, implicit $mode, implicit $exec3289 ; SCHED-NEXT: $vgpr7 = V_SUBREV_F32_e64 1, killed $vgpr6, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec3290 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3291 ;3292 ; PAIR-LABEL: name: vopd_combine_mul_f64_e32_subrev_f32_neg3293 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF3294 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3295 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3296 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3297 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_MUL_F64_pseudo_e32_X_SUBREV_F32_e32_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 1, killed $vgpr6, 0, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3298 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3299 $vgpr0_vgpr1 = IMPLICIT_DEF3300 $vgpr2_vgpr3 = IMPLICIT_DEF3301 $vgpr4 = IMPLICIT_DEF3302 $vgpr6 = IMPLICIT_DEF3303 $vgpr8_vgpr9 = V_MUL_F64_pseudo_e32 $vgpr0_vgpr1, $vgpr2_vgpr3, implicit $mode, implicit $exec3304 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3305 $vgpr7 = V_SUBREV_F32_e64 1, $vgpr6, 0, $vgpr4, 0, 0, implicit $mode, implicit $exec3306...3307 3308---3309name: vopd_combine_min_num_f64_e64_mul_f32_neg3310tracksRegLiveness: true3311body: |3312 bb.0:3313 3314 ; SCHED-LABEL: name: vopd_combine_min_num_f64_e64_mul_f32_neg3315 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF3316 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3317 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3318 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3319 ; SCHED-NEXT: $vgpr8_vgpr9 = V_MIN_NUM_F64_e64 1, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec3320 ; SCHED-NEXT: $vgpr7 = V_MUL_F32_e64 0, killed $vgpr6, 1, killed $vgpr4, 0, 0, implicit $mode, implicit $exec3321 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3322 ;3323 ; PAIR-LABEL: name: vopd_combine_min_num_f64_e64_mul_f32_neg3324 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF3325 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3326 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3327 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3328 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_MIN_NUM_F64_e32_X_MUL_F32_e32_e96_gfx1250 1, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr6, 1, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3329 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3330 $vgpr0_vgpr1 = IMPLICIT_DEF3331 $vgpr2_vgpr3 = IMPLICIT_DEF3332 $vgpr4 = IMPLICIT_DEF3333 $vgpr6 = IMPLICIT_DEF3334 $vgpr8_vgpr9 = V_MIN_NUM_F64_e64 1, $vgpr0_vgpr1, 0, $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec3335 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3336 $vgpr7 = V_MUL_F32_e64 0, $vgpr6, 1, $vgpr4, 0, 0, implicit $mode, implicit $exec3337...3338 3339---3340name: vopd_combine_min_num_f64_e32_mul_legacy_f32_neg3341tracksRegLiveness: true3342body: |3343 bb.0:3344 3345 ; SCHED-LABEL: name: vopd_combine_min_num_f64_e32_mul_legacy_f32_neg3346 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF3347 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3348 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3349 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3350 ; SCHED-NEXT: $vgpr8_vgpr9 = V_MIN_NUM_F64_e32 $vgpr0_vgpr1, killed $vgpr2_vgpr3, implicit $mode, implicit $exec3351 ; SCHED-NEXT: $vgpr7 = V_MUL_LEGACY_F32_e64 1, killed $vgpr6, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec3352 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3353 ;3354 ; PAIR-LABEL: name: vopd_combine_min_num_f64_e32_mul_legacy_f32_neg3355 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF3356 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3357 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3358 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3359 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_MIN_NUM_F64_e32_X_MUL_LEGACY_F32_e32_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 1, killed $vgpr6, 0, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3360 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3361 $vgpr0_vgpr1 = IMPLICIT_DEF3362 $vgpr2_vgpr3 = IMPLICIT_DEF3363 $vgpr4 = IMPLICIT_DEF3364 $vgpr6 = IMPLICIT_DEF3365 $vgpr8_vgpr9 = V_MIN_NUM_F64_e32 $vgpr0_vgpr1, $vgpr2_vgpr3, implicit $mode, implicit $exec3366 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3367 $vgpr7 = V_MUL_LEGACY_F32_e64 1, $vgpr6, 0, $vgpr4, 0, 0, implicit $mode, implicit $exec3368...3369 3370---3371name: vopd_combine_max_num_f64_e64_min_f32_neg3372tracksRegLiveness: true3373body: |3374 bb.0:3375 3376 ; SCHED-LABEL: name: vopd_combine_max_num_f64_e64_min_f32_neg3377 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF3378 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3379 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3380 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3381 ; SCHED-NEXT: $vgpr8_vgpr9 = V_MAX_NUM_F64_e64 0, $vgpr0_vgpr1, 1, killed $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec3382 ; SCHED-NEXT: $vgpr7 = V_MIN_F32_e64 1, killed $vgpr6, 0, killed $vgpr4, 0, 0, implicit $mode, implicit $exec3383 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3384 ;3385 ; PAIR-LABEL: name: vopd_combine_max_num_f64_e64_min_f32_neg3386 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF3387 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3388 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3389 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3390 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_MAX_NUM_F64_e32_X_MIN_F32_e32_e96_gfx1250 0, $vgpr0_vgpr1, 1, killed $vgpr2_vgpr3, 1, killed $vgpr6, 0, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3391 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3392 $vgpr0_vgpr1 = IMPLICIT_DEF3393 $vgpr2_vgpr3 = IMPLICIT_DEF3394 $vgpr4 = IMPLICIT_DEF3395 $vgpr6 = IMPLICIT_DEF3396 $vgpr8_vgpr9 = V_MAX_NUM_F64_e64 0, $vgpr0_vgpr1, 1, $vgpr2_vgpr3, 0, 0, implicit $mode, implicit $exec3397 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3398 $vgpr7 = V_MIN_F32_e64 1, $vgpr6, 0, $vgpr4, 0, 0, implicit $mode, implicit $exec3399...3400 3401---3402name: vopd_combine_max_num_f64_e32_max_f32_neg3403tracksRegLiveness: true3404body: |3405 bb.0:3406 3407 ; SCHED-LABEL: name: vopd_combine_max_num_f64_e32_max_f32_neg3408 ; SCHED: $vgpr0_vgpr1 = IMPLICIT_DEF3409 ; SCHED-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3410 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3411 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3412 ; SCHED-NEXT: $vgpr8_vgpr9 = V_MAX_NUM_F64_e32 $vgpr0_vgpr1, killed $vgpr2_vgpr3, implicit $mode, implicit $exec3413 ; SCHED-NEXT: $vgpr7 = V_MAX_F32_e64 0, killed $vgpr6, 1, killed $vgpr4, 0, 0, implicit $mode, implicit $exec3414 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3415 ;3416 ; PAIR-LABEL: name: vopd_combine_max_num_f64_e32_max_f32_neg3417 ; PAIR: $vgpr0_vgpr1 = IMPLICIT_DEF3418 ; PAIR-NEXT: $vgpr2_vgpr3 = IMPLICIT_DEF3419 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3420 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3421 ; PAIR-NEXT: $vgpr8_vgpr9, $vgpr7 = V_DUAL_MAX_NUM_F64_e32_X_MAX_F32_e32_e96_gfx1250 0, $vgpr0_vgpr1, 0, killed $vgpr2_vgpr3, 0, killed $vgpr6, 1, killed $vgpr4, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3422 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3423 $vgpr0_vgpr1 = IMPLICIT_DEF3424 $vgpr2_vgpr3 = IMPLICIT_DEF3425 $vgpr4 = IMPLICIT_DEF3426 $vgpr6 = IMPLICIT_DEF3427 $vgpr8_vgpr9 = V_MAX_NUM_F64_e32 $vgpr0_vgpr1, $vgpr2_vgpr3, implicit $mode, implicit $exec3428 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3429 $vgpr7 = V_MAX_F32_e64 0, $vgpr6, 1, $vgpr4, 0, 0, implicit $mode, implicit $exec3430...3431 3432---3433name: vopd_combine_add_f64_fmac_f32_e64_neg3434tracksRegLiveness: true3435body: |3436 bb.0:3437 3438 ; SCHED-LABEL: name: vopd_combine_add_f64_fmac_f32_e64_neg3439 ; SCHED: $vgpr0 = IMPLICIT_DEF3440 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3441 ; SCHED-NEXT: $vgpr6 = IMPLICIT_DEF3442 ; SCHED-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF3443 ; SCHED-NEXT: $vgpr2_vgpr3 = V_ADD_F64_pseudo_e32 10, killed $vgpr10_vgpr11, implicit $mode, implicit $exec3444 ; SCHED-NEXT: $vgpr6 = V_FMAC_F32_e64 0, $vgpr0, 1, $vgpr1, 0, killed $vgpr6, 0, 0, implicit $mode, implicit $exec3445 ; SCHED-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 10, implicit $exec3446 ; SCHED-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3447 ;3448 ; PAIR-LABEL: name: vopd_combine_add_f64_fmac_f32_e64_neg3449 ; PAIR: $vgpr0 = IMPLICIT_DEF3450 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3451 ; PAIR-NEXT: $vgpr6 = IMPLICIT_DEF3452 ; PAIR-NEXT: $vgpr10_vgpr11 = IMPLICIT_DEF3453 ; PAIR-NEXT: $vgpr2_vgpr3, $vgpr6 = V_DUAL_ADD_F64_pseudo_e32_X_FMAC_F32_e32_e96_gfx1250 0, 10, 0, killed $vgpr10_vgpr11, 0, $vgpr0, 1, $vgpr1, killed $vgpr6, implicit $mode, implicit $exec, implicit $mode, implicit $exec, implicit $mode, implicit $exec3454 ; PAIR-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 10, implicit $exec3455 ; PAIR-NEXT: $vgpr5 = V_BFM_B32_e64 killed $vgpr0, killed $vgpr1, implicit $exec3456 $vgpr0 = IMPLICIT_DEF3457 $vgpr1 = IMPLICIT_DEF3458 $vgpr6 = IMPLICIT_DEF3459 $vgpr10_vgpr11 = IMPLICIT_DEF3460 $vgpr2_vgpr3 = V_ADD_F64_pseudo_e32 10, $vgpr10_vgpr11, implicit $mode, implicit $exec3461 $vgpr2_vgpr3 = V_MOV_B64_e32 10, implicit $exec3462 $vgpr5 = V_BFM_B32_e64 $vgpr0, $vgpr1, implicit $exec3463 $vgpr6 = V_FMAC_F32_e64 0, $vgpr0, 1, $vgpr1, 0, $vgpr6, 0, 0, implicit $mode, implicit $exec3464...3465 3466---3467name: vopd_combine_cndmask_e64_neg_cndmask_e64_neg3468tracksRegLiveness: true3469body: |3470 bb.0:3471 3472 ; SCHED-LABEL: name: vopd_combine_cndmask_e64_neg_cndmask_e64_neg3473 ; SCHED: $vgpr0 = IMPLICIT_DEF3474 ; SCHED-NEXT: $vgpr1 = IMPLICIT_DEF3475 ; SCHED-NEXT: $vgpr3 = IMPLICIT_DEF3476 ; SCHED-NEXT: $vgpr4 = IMPLICIT_DEF3477 ; SCHED-NEXT: $vcc = IMPLICIT_DEF3478 ; SCHED-NEXT: $vgpr6 = V_CNDMASK_B32_e64 1, killed $vgpr0, 0, killed $vgpr1, $vcc_lo, implicit $exec3479 ; SCHED-NEXT: $vgpr7 = V_CNDMASK_B32_e64 1, killed $vgpr3, 0, killed $vgpr4, killed $vcc_lo, implicit $exec3480 ;3481 ; PAIR-LABEL: name: vopd_combine_cndmask_e64_neg_cndmask_e64_neg3482 ; PAIR: $vgpr0 = IMPLICIT_DEF3483 ; PAIR-NEXT: $vgpr1 = IMPLICIT_DEF3484 ; PAIR-NEXT: $vgpr3 = IMPLICIT_DEF3485 ; PAIR-NEXT: $vgpr4 = IMPLICIT_DEF3486 ; PAIR-NEXT: $vcc = IMPLICIT_DEF3487 ; PAIR-NEXT: $vgpr6, $vgpr7 = V_DUAL_CNDMASK_B32_e32_X_CNDMASK_B32_e32_e96_gfx1250 1, killed $vgpr0, 0, killed $vgpr1, $vcc_lo, 1, killed $vgpr3, 0, killed $vgpr4, killed $vcc_lo, implicit $exec, implicit $exec, implicit $exec3488 $vgpr0 = IMPLICIT_DEF3489 $vgpr1 = IMPLICIT_DEF3490 $vgpr3 = IMPLICIT_DEF3491 $vgpr4 = IMPLICIT_DEF3492 $vcc = IMPLICIT_DEF3493 $vgpr6 = V_CNDMASK_B32_e64 1, $vgpr0, 0, $vgpr1, $vcc_lo, implicit $exec3494 $vgpr7 = V_CNDMASK_B32_e64 1, $vgpr3, 0, $vgpr4, $vcc_lo, implicit $exec3495...3496 3497---3498name: vopd_no_combine_dpp3499tracksRegLiveness: true3500body: |3501 bb.0:3502 liveins: $vgpr0, $vgpr1, $vgpr23503 ; SCHED-LABEL: name: vopd_no_combine_dpp3504 ; SCHED: liveins: $vgpr0, $vgpr1, $vgpr23505 ; SCHED-NEXT: {{ $}}3506 ; SCHED-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec3507 ; SCHED-NEXT: $vgpr0 = V_ADD_F32_e64_dpp killed $vgpr0, 0, killed $vgpr2, 0, killed $vgpr1, 0, 1, 1, 15, 15, 1, implicit $mode, implicit $exec3508 ;3509 ; PAIR-LABEL: name: vopd_no_combine_dpp3510 ; PAIR: liveins: $vgpr0, $vgpr1, $vgpr23511 ; PAIR-NEXT: {{ $}}3512 ; PAIR-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec3513 ; PAIR-NEXT: $vgpr0 = V_ADD_F32_e64_dpp killed $vgpr0, 0, killed $vgpr2, 0, killed $vgpr1, 0, 1, 1, 15, 15, 1, implicit $mode, implicit $exec3514 $vgpr3 = V_MOV_B32_e32 0, implicit $exec3515 $vgpr0 = V_ADD_F32_e64_dpp $vgpr0, 0, $vgpr2, 0, $vgpr1, 0, 1, 1, 15, 15, 1, implicit $mode, implicit $exec3516...3517