766 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=gfx908 -run-pass postrapseudos -verify-machineinstrs %s -o - | FileCheck -check-prefix=GFX908 %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx90a -run-pass postrapseudos -verify-machineinstrs %s -o - | FileCheck -check-prefix=GFX90A %s4# RUN: llc -mtriple=amdgcn -mcpu=gfx942 -run-pass postrapseudos -verify-machineinstrs %s -o - | FileCheck -check-prefix=GFX942 %s5# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 -run-pass postrapseudos -verify-machineinstrs %s -o - | FileCheck -check-prefix=GFX10 %s6# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -run-pass postrapseudos -verify-machineinstrs %s -o - | FileCheck -check-prefix=GFX10 %s7# RUN: llc -mtriple=amdgcn -mcpu=gfx1250 -run-pass postrapseudos %s -o - | FileCheck -check-prefix=GFX1250 %s8 9---10name: copy_v64_to_v6411tracksRegLiveness: true12body: |13 bb.0:14 liveins: $vgpr2_vgpr315 ; GFX908-LABEL: name: copy_v64_to_v6416 ; GFX908: liveins: $vgpr2_vgpr317 ; GFX908-NEXT: {{ $}}18 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr2_vgpr319 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec20 ;21 ; GFX90A-LABEL: name: copy_v64_to_v6422 ; GFX90A: liveins: $vgpr2_vgpr323 ; GFX90A-NEXT: {{ $}}24 ; GFX90A-NEXT: $vgpr0_vgpr1 = V_PK_MOV_B32 8, $vgpr2_vgpr3, 12, $vgpr2_vgpr3, 0, 0, 0, 0, 0, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec25 ;26 ; GFX942-LABEL: name: copy_v64_to_v6427 ; GFX942: liveins: $vgpr2_vgpr328 ; GFX942-NEXT: {{ $}}29 ; GFX942-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $vgpr2_vgpr3, implicit $exec, implicit $exec30 ;31 ; GFX10-LABEL: name: copy_v64_to_v6432 ; GFX10: liveins: $vgpr2_vgpr333 ; GFX10-NEXT: {{ $}}34 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr2_vgpr335 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec36 ; GFX1250-LABEL: name: copy_v64_to_v6437 ; GFX1250: liveins: $vgpr2_vgpr338 ; GFX1250-NEXT: {{ $}}39 ; GFX1250-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $vgpr2_vgpr3, implicit $exec, implicit $exec40 $vgpr0_vgpr1 = COPY killed $vgpr2_vgpr3, implicit $exec41...42 43---44name: copy_s64_to_v6445tracksRegLiveness: true46body: |47 bb.0:48 liveins: $sgpr2_sgpr349 ; GFX908-LABEL: name: copy_s64_to_v6450 ; GFX908: liveins: $sgpr2_sgpr351 ; GFX908-NEXT: {{ $}}52 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $sgpr2_sgpr353 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr3, implicit $exec, implicit killed $sgpr2_sgpr3, implicit $exec54 ;55 ; GFX90A-LABEL: name: copy_s64_to_v6456 ; GFX90A: liveins: $sgpr2_sgpr357 ; GFX90A-NEXT: {{ $}}58 ; GFX90A-NEXT: $vgpr0_vgpr1 = V_PK_MOV_B32 8, $sgpr2_sgpr3, 12, $sgpr2_sgpr3, 0, 0, 0, 0, 0, implicit $exec, implicit killed $sgpr2_sgpr3, implicit $exec59 ;60 ; GFX942-LABEL: name: copy_s64_to_v6461 ; GFX942: liveins: $sgpr2_sgpr362 ; GFX942-NEXT: {{ $}}63 ; GFX942-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $sgpr2_sgpr3, implicit $exec, implicit $exec64 ;65 ; GFX10-LABEL: name: copy_s64_to_v6466 ; GFX10: liveins: $sgpr2_sgpr367 ; GFX10-NEXT: {{ $}}68 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $sgpr2_sgpr369 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr3, implicit $exec, implicit killed $sgpr2_sgpr3, implicit $exec70 ; GFX1250-LABEL: name: copy_s64_to_v6471 ; GFX1250: liveins: $sgpr2_sgpr372 ; GFX1250-NEXT: {{ $}}73 ; GFX1250-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $sgpr2_sgpr3, implicit $exec, implicit $exec74 $vgpr0_vgpr1 = COPY killed $sgpr2_sgpr3, implicit $exec75...76 77---78name: copy_a64_to_v6479tracksRegLiveness: true80body: |81 bb.0:82 liveins: $agpr2_agpr383 ; GFX908-LABEL: name: copy_a64_to_v6484 ; GFX908: liveins: $agpr2_agpr385 ; GFX908-NEXT: {{ $}}86 ; GFX908-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $agpr2_agpr387 ; GFX908-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit killed $agpr2_agpr3, implicit $exec88 ;89 ; GFX90A-LABEL: name: copy_a64_to_v6490 ; GFX90A: liveins: $agpr2_agpr391 ; GFX90A-NEXT: {{ $}}92 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $agpr2_agpr393 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit killed $agpr2_agpr3, implicit $exec94 ;95 ; GFX942-LABEL: name: copy_a64_to_v6496 ; GFX942: liveins: $agpr2_agpr397 ; GFX942-NEXT: {{ $}}98 ; GFX942-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $agpr2_agpr399 ; GFX942-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit killed $agpr2_agpr3, implicit $exec100 ;101 ; GFX10-LABEL: name: copy_a64_to_v64102 ; GFX10: liveins: $agpr2_agpr3103 ; GFX10-NEXT: {{ $}}104 ; GFX10-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $agpr2_agpr3105 ; GFX10-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit killed $agpr2_agpr3, implicit $exec106 ; GFX1250-LABEL: name: copy_a64_to_v64107 ; GFX1250: liveins: $agpr2_agpr3108 ; GFX1250-NEXT: {{ $}}109 ; GFX1250-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $agpr2_agpr3110 ; GFX1250-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit killed $agpr2_agpr3, implicit $exec111 $vgpr0_vgpr1 = COPY killed $agpr2_agpr3, implicit $exec112...113 114---115name: copy_v128_to_v128_fwd116tracksRegLiveness: true117body: |118 bb.0:119 liveins: $vgpr2_vgpr3_vgpr4_vgpr5120 ; GFX908-LABEL: name: copy_v128_to_v128_fwd121 ; GFX908: liveins: $vgpr2_vgpr3_vgpr4_vgpr5122 ; GFX908-NEXT: {{ $}}123 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr2_vgpr3_vgpr4_vgpr5124 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5125 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5126 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5, implicit $exec127 ;128 ; GFX90A-LABEL: name: copy_v128_to_v128_fwd129 ; GFX90A: liveins: $vgpr2_vgpr3_vgpr4_vgpr5130 ; GFX90A-NEXT: {{ $}}131 ; GFX90A-NEXT: $vgpr0_vgpr1 = V_PK_MOV_B32 8, $vgpr2_vgpr3, 12, $vgpr2_vgpr3, 0, 0, 0, 0, 0, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3132 ; GFX90A-NEXT: $vgpr2_vgpr3 = V_PK_MOV_B32 8, $vgpr4_vgpr5, 12, $vgpr4_vgpr5, 0, 0, 0, 0, 0, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5, implicit $exec133 ;134 ; GFX942-LABEL: name: copy_v128_to_v128_fwd135 ; GFX942: liveins: $vgpr2_vgpr3_vgpr4_vgpr5136 ; GFX942-NEXT: {{ $}}137 ; GFX942-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 $vgpr2_vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr2_vgpr3_vgpr4_vgpr5138 ; GFX942-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 $vgpr4_vgpr5, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5, implicit $exec139 ;140 ; GFX10-LABEL: name: copy_v128_to_v128_fwd141 ; GFX10: liveins: $vgpr2_vgpr3_vgpr4_vgpr5142 ; GFX10-NEXT: {{ $}}143 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr2_vgpr3_vgpr4_vgpr5144 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5145 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5146 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5, implicit $exec147 ; GFX1250-LABEL: name: copy_v128_to_v128_fwd148 ; GFX1250: liveins: $vgpr2_vgpr3_vgpr4_vgpr5149 ; GFX1250-NEXT: {{ $}}150 ; GFX1250-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 $vgpr2_vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr2_vgpr3_vgpr4_vgpr5151 ; GFX1250-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 $vgpr4_vgpr5, implicit $exec, implicit $vgpr2_vgpr3_vgpr4_vgpr5, implicit $exec152 $vgpr0_vgpr1_vgpr2_vgpr3 = COPY killed $vgpr2_vgpr3_vgpr4_vgpr5, implicit $exec153...154 155---156name: copy_v128_to_v128_back157tracksRegLiveness: true158body: |159 bb.0:160 liveins: $vgpr0_vgpr1_vgpr2_vgpr3161 ; GFX908-LABEL: name: copy_v128_to_v128_back162 ; GFX908: liveins: $vgpr0_vgpr1_vgpr2_vgpr3163 ; GFX908-NEXT: {{ $}}164 ; GFX908-NEXT: $vgpr5 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3165 ; GFX908-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3166 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3167 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3, implicit $exec168 ;169 ; GFX90A-LABEL: name: copy_v128_to_v128_back170 ; GFX90A: liveins: $vgpr0_vgpr1_vgpr2_vgpr3171 ; GFX90A-NEXT: {{ $}}172 ; GFX90A-NEXT: $vgpr4_vgpr5 = V_PK_MOV_B32 8, $vgpr2_vgpr3, 12, $vgpr2_vgpr3, 0, 0, 0, 0, 0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3, implicit-def $vgpr2_vgpr3_vgpr4_vgpr5173 ; GFX90A-NEXT: $vgpr2_vgpr3 = V_PK_MOV_B32 8, $vgpr0_vgpr1, 12, $vgpr0_vgpr1, 0, 0, 0, 0, 0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3, implicit $exec174 ;175 ; GFX942-LABEL: name: copy_v128_to_v128_back176 ; GFX942: liveins: $vgpr0_vgpr1_vgpr2_vgpr3177 ; GFX942-NEXT: {{ $}}178 ; GFX942-NEXT: $vgpr4_vgpr5 = V_MOV_B64_e32 $vgpr2_vgpr3, implicit $exec, implicit-def $vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3179 ; GFX942-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 $vgpr0_vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3, implicit $exec180 ;181 ; GFX10-LABEL: name: copy_v128_to_v128_back182 ; GFX10: liveins: $vgpr0_vgpr1_vgpr2_vgpr3183 ; GFX10-NEXT: {{ $}}184 ; GFX10-NEXT: $vgpr5 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3185 ; GFX10-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3186 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3187 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3, implicit $exec188 ; GFX1250-LABEL: name: copy_v128_to_v128_back189 ; GFX1250: liveins: $vgpr0_vgpr1_vgpr2_vgpr3190 ; GFX1250-NEXT: {{ $}}191 ; GFX1250-NEXT: $vgpr4_vgpr5 = V_MOV_B64_e32 $vgpr2_vgpr3, implicit $exec, implicit-def $vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3192 ; GFX1250-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 $vgpr0_vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3, implicit $exec193 $vgpr2_vgpr3_vgpr4_vgpr5 = COPY killed $vgpr0_vgpr1_vgpr2_vgpr3, implicit $exec194...195 196---197name: copy_v96_to_v96198tracksRegLiveness: true199body: |200 bb.0:201 liveins: $vgpr4_vgpr5_vgpr6202 ; GFX908-LABEL: name: copy_v96_to_v96203 ; GFX908: liveins: $vgpr4_vgpr5_vgpr6204 ; GFX908-NEXT: {{ $}}205 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr4_vgpr5_vgpr6206 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr4_vgpr5_vgpr6207 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr6, implicit $exec, implicit killed $vgpr4_vgpr5_vgpr6, implicit $exec208 ;209 ; GFX90A-LABEL: name: copy_v96_to_v96210 ; GFX90A: liveins: $vgpr4_vgpr5_vgpr6211 ; GFX90A-NEXT: {{ $}}212 ; GFX90A-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr4_vgpr5_vgpr6213 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr4_vgpr5_vgpr6214 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr6, implicit $exec, implicit killed $vgpr4_vgpr5_vgpr6, implicit $exec215 ;216 ; GFX942-LABEL: name: copy_v96_to_v96217 ; GFX942: liveins: $vgpr4_vgpr5_vgpr6218 ; GFX942-NEXT: {{ $}}219 ; GFX942-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr4_vgpr5_vgpr6220 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr4_vgpr5_vgpr6221 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr6, implicit $exec, implicit killed $vgpr4_vgpr5_vgpr6, implicit $exec222 ;223 ; GFX10-LABEL: name: copy_v96_to_v96224 ; GFX10: liveins: $vgpr4_vgpr5_vgpr6225 ; GFX10-NEXT: {{ $}}226 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr4_vgpr5_vgpr6227 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr4_vgpr5_vgpr6228 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr6, implicit $exec, implicit killed $vgpr4_vgpr5_vgpr6, implicit $exec229 ; GFX1250-LABEL: name: copy_v96_to_v96230 ; GFX1250: liveins: $vgpr4_vgpr5_vgpr6231 ; GFX1250-NEXT: {{ $}}232 ; GFX1250-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr4_vgpr5_vgpr6233 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr5, implicit $exec, implicit $vgpr4_vgpr5_vgpr6234 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr6, implicit $exec, implicit killed $vgpr4_vgpr5_vgpr6, implicit $exec235 $vgpr0_vgpr1_vgpr2 = COPY killed $vgpr4_vgpr5_vgpr6, implicit $exec236...237 238---239name: copy_v64_to_v64_undef_sub0240tracksRegLiveness: true241body: |242 bb.0:243 liveins: $vgpr3244 ; GFX908-LABEL: name: copy_v64_to_v64_undef_sub0245 ; GFX908: liveins: $vgpr3246 ; GFX908-NEXT: {{ $}}247 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr2_vgpr3248 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec249 ;250 ; GFX90A-LABEL: name: copy_v64_to_v64_undef_sub0251 ; GFX90A: liveins: $vgpr3252 ; GFX90A-NEXT: {{ $}}253 ; GFX90A-NEXT: $vgpr0_vgpr1 = V_PK_MOV_B32 8, $vgpr2_vgpr3, 12, $vgpr2_vgpr3, 0, 0, 0, 0, 0, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec254 ;255 ; GFX942-LABEL: name: copy_v64_to_v64_undef_sub0256 ; GFX942: liveins: $vgpr3257 ; GFX942-NEXT: {{ $}}258 ; GFX942-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $vgpr2_vgpr3, implicit $exec, implicit $exec259 ;260 ; GFX10-LABEL: name: copy_v64_to_v64_undef_sub0261 ; GFX10: liveins: $vgpr3262 ; GFX10-NEXT: {{ $}}263 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr2_vgpr3264 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec265 ; GFX1250-LABEL: name: copy_v64_to_v64_undef_sub0266 ; GFX1250: liveins: $vgpr3267 ; GFX1250-NEXT: {{ $}}268 ; GFX1250-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $vgpr2_vgpr3, implicit $exec, implicit $exec269 $vgpr0_vgpr1 = COPY killed $vgpr2_vgpr3, implicit $exec270...271 272---273name: copy_v64_to_v64_undef_sub1274tracksRegLiveness: true275body: |276 bb.0:277 liveins: $vgpr2278 ; GFX908-LABEL: name: copy_v64_to_v64_undef_sub1279 ; GFX908: liveins: $vgpr2280 ; GFX908-NEXT: {{ $}}281 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr2_vgpr3282 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec283 ;284 ; GFX90A-LABEL: name: copy_v64_to_v64_undef_sub1285 ; GFX90A: liveins: $vgpr2286 ; GFX90A-NEXT: {{ $}}287 ; GFX90A-NEXT: $vgpr0_vgpr1 = V_PK_MOV_B32 8, $vgpr2_vgpr3, 12, $vgpr2_vgpr3, 0, 0, 0, 0, 0, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec288 ;289 ; GFX942-LABEL: name: copy_v64_to_v64_undef_sub1290 ; GFX942: liveins: $vgpr2291 ; GFX942-NEXT: {{ $}}292 ; GFX942-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $vgpr2_vgpr3, implicit $exec, implicit $exec293 ;294 ; GFX10-LABEL: name: copy_v64_to_v64_undef_sub1295 ; GFX10: liveins: $vgpr2296 ; GFX10-NEXT: {{ $}}297 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr2_vgpr3298 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit killed $vgpr2_vgpr3, implicit $exec299 ; GFX1250-LABEL: name: copy_v64_to_v64_undef_sub1300 ; GFX1250: liveins: $vgpr2301 ; GFX1250-NEXT: {{ $}}302 ; GFX1250-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 killed $vgpr2_vgpr3, implicit $exec, implicit $exec303 $vgpr0_vgpr1 = COPY killed $vgpr2_vgpr3, implicit $exec304...305 306---307name: copy_s128_to_v128_killed308tracksRegLiveness: true309body: |310 bb.0:311 liveins: $sgpr4_sgpr5_sgpr6_sgpr7312 ; GFX908-LABEL: name: copy_s128_to_v128_killed313 ; GFX908: liveins: $sgpr4_sgpr5_sgpr6_sgpr7314 ; GFX908-NEXT: {{ $}}315 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $sgpr4_sgpr5_sgpr6_sgpr7316 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr5, implicit $exec, implicit $sgpr4_sgpr5_sgpr6_sgpr7317 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr6, implicit $exec, implicit $sgpr4_sgpr5_sgpr6_sgpr7318 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr7, implicit $exec, implicit killed $sgpr4_sgpr5_sgpr6_sgpr7319 ;320 ; GFX90A-LABEL: name: copy_s128_to_v128_killed321 ; GFX90A: liveins: $sgpr4_sgpr5_sgpr6_sgpr7322 ; GFX90A-NEXT: {{ $}}323 ; GFX90A-NEXT: $vgpr0_vgpr1 = V_PK_MOV_B32 8, $sgpr4_sgpr5, 12, $sgpr4_sgpr5, 0, 0, 0, 0, 0, implicit $exec, implicit $sgpr4_sgpr5_sgpr6_sgpr7, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3324 ; GFX90A-NEXT: $vgpr2_vgpr3 = V_PK_MOV_B32 8, $sgpr6_sgpr7, 12, $sgpr6_sgpr7, 0, 0, 0, 0, 0, implicit $exec, implicit killed $sgpr4_sgpr5_sgpr6_sgpr7325 ;326 ; GFX942-LABEL: name: copy_s128_to_v128_killed327 ; GFX942: liveins: $sgpr4_sgpr5_sgpr6_sgpr7328 ; GFX942-NEXT: {{ $}}329 ; GFX942-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 $sgpr4_sgpr5, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $sgpr4_sgpr5_sgpr6_sgpr7330 ; GFX942-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 $sgpr6_sgpr7, implicit $exec, implicit killed $sgpr4_sgpr5_sgpr6_sgpr7331 ;332 ; GFX10-LABEL: name: copy_s128_to_v128_killed333 ; GFX10: liveins: $sgpr4_sgpr5_sgpr6_sgpr7334 ; GFX10-NEXT: {{ $}}335 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr4, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $sgpr4_sgpr5_sgpr6_sgpr7336 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr5, implicit $exec, implicit $sgpr4_sgpr5_sgpr6_sgpr7337 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr6, implicit $exec, implicit $sgpr4_sgpr5_sgpr6_sgpr7338 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr7, implicit $exec, implicit killed $sgpr4_sgpr5_sgpr6_sgpr7339 ; GFX1250-LABEL: name: copy_s128_to_v128_killed340 ; GFX1250: liveins: $sgpr4_sgpr5_sgpr6_sgpr7341 ; GFX1250-NEXT: {{ $}}342 ; GFX1250-NEXT: $vgpr0_vgpr1 = V_MOV_B64_e32 $sgpr4_sgpr5, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $sgpr4_sgpr5_sgpr6_sgpr7343 ; GFX1250-NEXT: $vgpr2_vgpr3 = V_MOV_B64_e32 $sgpr6_sgpr7, implicit $exec, implicit killed $sgpr4_sgpr5_sgpr6_sgpr7344 $vgpr0_vgpr1_vgpr2_vgpr3 = COPY killed $sgpr4_sgpr5_sgpr6_sgpr7345...346 347---348name: copy_v64_to_v64_unaligned349tracksRegLiveness: true350body: |351 bb.0:352 liveins: $vgpr2_vgpr3353 ; GFX908-LABEL: name: copy_v64_to_v64_unaligned354 ; GFX908: liveins: $vgpr2_vgpr3355 ; GFX908-NEXT: {{ $}}356 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $vgpr2_vgpr3357 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3, implicit $exec358 ;359 ; GFX90A-LABEL: name: copy_v64_to_v64_unaligned360 ; GFX90A: liveins: $vgpr2_vgpr3361 ; GFX90A-NEXT: {{ $}}362 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $vgpr2_vgpr3363 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3, implicit $exec364 ;365 ; GFX942-LABEL: name: copy_v64_to_v64_unaligned366 ; GFX942: liveins: $vgpr2_vgpr3367 ; GFX942-NEXT: {{ $}}368 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $vgpr2_vgpr3369 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3, implicit $exec370 ;371 ; GFX10-LABEL: name: copy_v64_to_v64_unaligned372 ; GFX10: liveins: $vgpr2_vgpr3373 ; GFX10-NEXT: {{ $}}374 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $vgpr2_vgpr3375 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3, implicit $exec376 ; GFX1250-LABEL: name: copy_v64_to_v64_unaligned377 ; GFX1250: liveins: $vgpr2_vgpr3378 ; GFX1250-NEXT: {{ $}}379 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr2, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $vgpr2_vgpr3380 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit $vgpr2_vgpr3, implicit $exec381 $vgpr1_vgpr2 = COPY killed $vgpr2_vgpr3, implicit $exec382...383 384---385name: copy_v64_unaligned_to_v64386tracksRegLiveness: true387body: |388 bb.0:389 liveins: $vgpr3_vgpr4390 ; GFX908-LABEL: name: copy_v64_unaligned_to_v64391 ; GFX908: liveins: $vgpr3_vgpr4392 ; GFX908-NEXT: {{ $}}393 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr3_vgpr4394 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit killed $vgpr3_vgpr4, implicit $exec395 ;396 ; GFX90A-LABEL: name: copy_v64_unaligned_to_v64397 ; GFX90A: liveins: $vgpr3_vgpr4398 ; GFX90A-NEXT: {{ $}}399 ; GFX90A-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr3_vgpr4400 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit killed $vgpr3_vgpr4, implicit $exec401 ;402 ; GFX942-LABEL: name: copy_v64_unaligned_to_v64403 ; GFX942: liveins: $vgpr3_vgpr4404 ; GFX942-NEXT: {{ $}}405 ; GFX942-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr3_vgpr4406 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit killed $vgpr3_vgpr4, implicit $exec407 ;408 ; GFX10-LABEL: name: copy_v64_unaligned_to_v64409 ; GFX10: liveins: $vgpr3_vgpr4410 ; GFX10-NEXT: {{ $}}411 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr3_vgpr4412 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit killed $vgpr3_vgpr4, implicit $exec413 ; GFX1250-LABEL: name: copy_v64_unaligned_to_v64414 ; GFX1250: liveins: $vgpr3_vgpr4415 ; GFX1250-NEXT: {{ $}}416 ; GFX1250-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr3_vgpr4417 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr4, implicit $exec, implicit killed $vgpr3_vgpr4, implicit $exec418 $vgpr0_vgpr1 = COPY killed $vgpr3_vgpr4, implicit $exec419...420 421---422name: copy_v128_to_v128_unaligned423tracksRegLiveness: true424body: |425 bb.0:426 liveins: $vgpr8_vgpr9_vgpr10_vgpr11427 ; GFX908-LABEL: name: copy_v128_to_v128_unaligned428 ; GFX908: liveins: $vgpr8_vgpr9_vgpr10_vgpr11429 ; GFX908-NEXT: {{ $}}430 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr8_vgpr9_vgpr10_vgpr11431 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11432 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11433 ; GFX908-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr11, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10_vgpr11, implicit $exec434 ;435 ; GFX90A-LABEL: name: copy_v128_to_v128_unaligned436 ; GFX90A: liveins: $vgpr8_vgpr9_vgpr10_vgpr11437 ; GFX90A-NEXT: {{ $}}438 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr8_vgpr9_vgpr10_vgpr11439 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11440 ; GFX90A-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11441 ; GFX90A-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr11, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10_vgpr11, implicit $exec442 ;443 ; GFX942-LABEL: name: copy_v128_to_v128_unaligned444 ; GFX942: liveins: $vgpr8_vgpr9_vgpr10_vgpr11445 ; GFX942-NEXT: {{ $}}446 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr8_vgpr9_vgpr10_vgpr11447 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11448 ; GFX942-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11449 ; GFX942-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr11, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10_vgpr11, implicit $exec450 ;451 ; GFX10-LABEL: name: copy_v128_to_v128_unaligned452 ; GFX10: liveins: $vgpr8_vgpr9_vgpr10_vgpr11453 ; GFX10-NEXT: {{ $}}454 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr8_vgpr9_vgpr10_vgpr11455 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11456 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11457 ; GFX10-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr11, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10_vgpr11, implicit $exec458 ; GFX1250-LABEL: name: copy_v128_to_v128_unaligned459 ; GFX1250: liveins: $vgpr8_vgpr9_vgpr10_vgpr11460 ; GFX1250-NEXT: {{ $}}461 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr8_vgpr9_vgpr10_vgpr11462 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11463 ; GFX1250-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit $vgpr8_vgpr9_vgpr10_vgpr11464 ; GFX1250-NEXT: $vgpr4 = V_MOV_B32_e32 $vgpr11, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10_vgpr11, implicit $exec465 $vgpr1_vgpr2_vgpr3_vgpr4 = COPY killed $vgpr8_vgpr9_vgpr10_vgpr11, implicit $exec466...467 468---469name: copy_v128_unaligned_to_v128470tracksRegLiveness: true471body: |472 bb.0:473 liveins: $vgpr7_vgpr8_vgpr9_vgpr10474 ; GFX908-LABEL: name: copy_v128_unaligned_to_v128475 ; GFX908: liveins: $vgpr7_vgpr8_vgpr9_vgpr10476 ; GFX908-NEXT: {{ $}}477 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr7_vgpr8_vgpr9_vgpr10478 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10479 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10480 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9_vgpr10, implicit $exec481 ;482 ; GFX90A-LABEL: name: copy_v128_unaligned_to_v128483 ; GFX90A: liveins: $vgpr7_vgpr8_vgpr9_vgpr10484 ; GFX90A-NEXT: {{ $}}485 ; GFX90A-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr7_vgpr8_vgpr9_vgpr10486 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10487 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10488 ; GFX90A-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9_vgpr10, implicit $exec489 ;490 ; GFX942-LABEL: name: copy_v128_unaligned_to_v128491 ; GFX942: liveins: $vgpr7_vgpr8_vgpr9_vgpr10492 ; GFX942-NEXT: {{ $}}493 ; GFX942-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr7_vgpr8_vgpr9_vgpr10494 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10495 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10496 ; GFX942-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9_vgpr10, implicit $exec497 ;498 ; GFX10-LABEL: name: copy_v128_unaligned_to_v128499 ; GFX10: liveins: $vgpr7_vgpr8_vgpr9_vgpr10500 ; GFX10-NEXT: {{ $}}501 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr7_vgpr8_vgpr9_vgpr10502 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10503 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10504 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9_vgpr10, implicit $exec505 ; GFX1250-LABEL: name: copy_v128_unaligned_to_v128506 ; GFX1250: liveins: $vgpr7_vgpr8_vgpr9_vgpr10507 ; GFX1250-NEXT: {{ $}}508 ; GFX1250-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr7_vgpr8_vgpr9_vgpr10509 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10510 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr7_vgpr8_vgpr9_vgpr10511 ; GFX1250-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9_vgpr10, implicit $exec512 $vgpr0_vgpr1_vgpr2_vgpr3 = COPY killed $vgpr7_vgpr8_vgpr9_vgpr10, implicit $exec513...514 515---516name: copy_s64_to_v64_unaligned517tracksRegLiveness: true518body: |519 bb.0:520 liveins: $sgpr8_sgpr9521 ; GFX908-LABEL: name: copy_s64_to_v64_unaligned522 ; GFX908: liveins: $sgpr8_sgpr9523 ; GFX908-NEXT: {{ $}}524 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $sgpr8_sgpr9525 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit killed $sgpr8_sgpr9, implicit $exec526 ;527 ; GFX90A-LABEL: name: copy_s64_to_v64_unaligned528 ; GFX90A: liveins: $sgpr8_sgpr9529 ; GFX90A-NEXT: {{ $}}530 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $sgpr8_sgpr9531 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit killed $sgpr8_sgpr9, implicit $exec532 ;533 ; GFX942-LABEL: name: copy_s64_to_v64_unaligned534 ; GFX942: liveins: $sgpr8_sgpr9535 ; GFX942-NEXT: {{ $}}536 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $sgpr8_sgpr9537 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit killed $sgpr8_sgpr9, implicit $exec538 ;539 ; GFX10-LABEL: name: copy_s64_to_v64_unaligned540 ; GFX10: liveins: $sgpr8_sgpr9541 ; GFX10-NEXT: {{ $}}542 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $sgpr8_sgpr9543 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit killed $sgpr8_sgpr9, implicit $exec544 ; GFX1250-LABEL: name: copy_s64_to_v64_unaligned545 ; GFX1250: liveins: $sgpr8_sgpr9546 ; GFX1250-NEXT: {{ $}}547 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2, implicit $sgpr8_sgpr9548 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit killed $sgpr8_sgpr9, implicit $exec549 $vgpr1_vgpr2 = COPY killed $sgpr8_sgpr9, implicit $exec550...551 552---553name: copy_s128_to_v128_unaligned554tracksRegLiveness: true555body: |556 bb.0:557 liveins: $sgpr8_sgpr9_sgpr10_sgpr11558 ; GFX908-LABEL: name: copy_s128_to_v128_unaligned559 ; GFX908: liveins: $sgpr8_sgpr9_sgpr10_sgpr11560 ; GFX908-NEXT: {{ $}}561 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $sgpr8_sgpr9_sgpr10_sgpr11562 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11563 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr10, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11564 ; GFX908-NEXT: $vgpr4 = V_MOV_B32_e32 $sgpr11, implicit $exec, implicit killed $sgpr8_sgpr9_sgpr10_sgpr11, implicit $exec565 ;566 ; GFX90A-LABEL: name: copy_s128_to_v128_unaligned567 ; GFX90A: liveins: $sgpr8_sgpr9_sgpr10_sgpr11568 ; GFX90A-NEXT: {{ $}}569 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $sgpr8_sgpr9_sgpr10_sgpr11570 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11571 ; GFX90A-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr10, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11572 ; GFX90A-NEXT: $vgpr4 = V_MOV_B32_e32 $sgpr11, implicit $exec, implicit killed $sgpr8_sgpr9_sgpr10_sgpr11, implicit $exec573 ;574 ; GFX942-LABEL: name: copy_s128_to_v128_unaligned575 ; GFX942: liveins: $sgpr8_sgpr9_sgpr10_sgpr11576 ; GFX942-NEXT: {{ $}}577 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $sgpr8_sgpr9_sgpr10_sgpr11578 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11579 ; GFX942-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr10, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11580 ; GFX942-NEXT: $vgpr4 = V_MOV_B32_e32 $sgpr11, implicit $exec, implicit killed $sgpr8_sgpr9_sgpr10_sgpr11, implicit $exec581 ;582 ; GFX10-LABEL: name: copy_s128_to_v128_unaligned583 ; GFX10: liveins: $sgpr8_sgpr9_sgpr10_sgpr11584 ; GFX10-NEXT: {{ $}}585 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $sgpr8_sgpr9_sgpr10_sgpr11586 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11587 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr10, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11588 ; GFX10-NEXT: $vgpr4 = V_MOV_B32_e32 $sgpr11, implicit $exec, implicit killed $sgpr8_sgpr9_sgpr10_sgpr11, implicit $exec589 ; GFX1250-LABEL: name: copy_s128_to_v128_unaligned590 ; GFX1250: liveins: $sgpr8_sgpr9_sgpr10_sgpr11591 ; GFX1250-NEXT: {{ $}}592 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3_vgpr4, implicit $sgpr8_sgpr9_sgpr10_sgpr11593 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr9, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11594 ; GFX1250-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr10, implicit $exec, implicit $sgpr8_sgpr9_sgpr10_sgpr11595 ; GFX1250-NEXT: $vgpr4 = V_MOV_B32_e32 $sgpr11, implicit $exec, implicit killed $sgpr8_sgpr9_sgpr10_sgpr11, implicit $exec596 $vgpr1_vgpr2_vgpr3_vgpr4 = COPY killed $sgpr8_sgpr9_sgpr10_sgpr11, implicit $exec597...598 599---600name: copy_v96_to_v96_unaligned601tracksRegLiveness: true602body: |603 bb.0:604 liveins: $vgpr8_vgpr9_vgpr10605 ; GFX908-LABEL: name: copy_v96_to_v96_unaligned606 ; GFX908: liveins: $vgpr8_vgpr9_vgpr10607 ; GFX908-NEXT: {{ $}}608 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $vgpr8_vgpr9_vgpr10609 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10610 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10, implicit $exec611 ;612 ; GFX90A-LABEL: name: copy_v96_to_v96_unaligned613 ; GFX90A: liveins: $vgpr8_vgpr9_vgpr10614 ; GFX90A-NEXT: {{ $}}615 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $vgpr8_vgpr9_vgpr10616 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10617 ; GFX90A-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10, implicit $exec618 ;619 ; GFX942-LABEL: name: copy_v96_to_v96_unaligned620 ; GFX942: liveins: $vgpr8_vgpr9_vgpr10621 ; GFX942-NEXT: {{ $}}622 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $vgpr8_vgpr9_vgpr10623 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10624 ; GFX942-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10, implicit $exec625 ;626 ; GFX10-LABEL: name: copy_v96_to_v96_unaligned627 ; GFX10: liveins: $vgpr8_vgpr9_vgpr10628 ; GFX10-NEXT: {{ $}}629 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $vgpr8_vgpr9_vgpr10630 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10631 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10, implicit $exec632 ; GFX1250-LABEL: name: copy_v96_to_v96_unaligned633 ; GFX1250: liveins: $vgpr8_vgpr9_vgpr10634 ; GFX1250-NEXT: {{ $}}635 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $vgpr8_vgpr9_vgpr10636 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit $vgpr8_vgpr9_vgpr10637 ; GFX1250-NEXT: $vgpr3 = V_MOV_B32_e32 $vgpr10, implicit $exec, implicit killed $vgpr8_vgpr9_vgpr10, implicit $exec638 $vgpr1_vgpr2_vgpr3 = COPY killed $vgpr8_vgpr9_vgpr10, implicit $exec639...640 641---642name: copy_v96_unaligned_to_v96643tracksRegLiveness: true644body: |645 bb.0:646 liveins: $vgpr7_vgpr8_vgpr9647 ; GFX908-LABEL: name: copy_v96_unaligned_to_v96648 ; GFX908: liveins: $vgpr7_vgpr8_vgpr9649 ; GFX908-NEXT: {{ $}}650 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr7_vgpr8_vgpr9651 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9652 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9, implicit $exec653 ;654 ; GFX90A-LABEL: name: copy_v96_unaligned_to_v96655 ; GFX90A: liveins: $vgpr7_vgpr8_vgpr9656 ; GFX90A-NEXT: {{ $}}657 ; GFX90A-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr7_vgpr8_vgpr9658 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9659 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9, implicit $exec660 ;661 ; GFX942-LABEL: name: copy_v96_unaligned_to_v96662 ; GFX942: liveins: $vgpr7_vgpr8_vgpr9663 ; GFX942-NEXT: {{ $}}664 ; GFX942-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr7_vgpr8_vgpr9665 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9666 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9, implicit $exec667 ;668 ; GFX10-LABEL: name: copy_v96_unaligned_to_v96669 ; GFX10: liveins: $vgpr7_vgpr8_vgpr9670 ; GFX10-NEXT: {{ $}}671 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr7_vgpr8_vgpr9672 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9673 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9, implicit $exec674 ; GFX1250-LABEL: name: copy_v96_unaligned_to_v96675 ; GFX1250: liveins: $vgpr7_vgpr8_vgpr9676 ; GFX1250-NEXT: {{ $}}677 ; GFX1250-NEXT: $vgpr0 = V_MOV_B32_e32 $vgpr7, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr7_vgpr8_vgpr9678 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $vgpr8, implicit $exec, implicit $vgpr7_vgpr8_vgpr9679 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $vgpr9, implicit $exec, implicit killed $vgpr7_vgpr8_vgpr9, implicit $exec680 $vgpr0_vgpr1_vgpr2 = COPY killed $vgpr7_vgpr8_vgpr9, implicit $exec681...682 683---684name: copy_s96_to_v96685tracksRegLiveness: true686body: |687 bb.0:688 liveins: $sgpr0_sgpr1_sgpr2689 ; GFX908-LABEL: name: copy_s96_to_v96690 ; GFX908: liveins: $sgpr0_sgpr1_sgpr2691 ; GFX908-NEXT: {{ $}}692 ; GFX908-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $sgpr0_sgpr1_sgpr2693 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2694 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec695 ;696 ; GFX90A-LABEL: name: copy_s96_to_v96697 ; GFX90A: liveins: $sgpr0_sgpr1_sgpr2698 ; GFX90A-NEXT: {{ $}}699 ; GFX90A-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $sgpr0_sgpr1_sgpr2700 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2701 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec702 ;703 ; GFX942-LABEL: name: copy_s96_to_v96704 ; GFX942: liveins: $sgpr0_sgpr1_sgpr2705 ; GFX942-NEXT: {{ $}}706 ; GFX942-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $sgpr0_sgpr1_sgpr2707 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2708 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec709 ;710 ; GFX10-LABEL: name: copy_s96_to_v96711 ; GFX10: liveins: $sgpr0_sgpr1_sgpr2712 ; GFX10-NEXT: {{ $}}713 ; GFX10-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $sgpr0_sgpr1_sgpr2714 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2715 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec716 ; GFX1250-LABEL: name: copy_s96_to_v96717 ; GFX1250: liveins: $sgpr0_sgpr1_sgpr2718 ; GFX1250-NEXT: {{ $}}719 ; GFX1250-NEXT: $vgpr0 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $sgpr0_sgpr1_sgpr2720 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2721 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec722 $vgpr0_vgpr1_vgpr2 = COPY killed $sgpr0_sgpr1_sgpr2, implicit $exec723...724 725---726name: copy_s96_to_v96_unaligned727tracksRegLiveness: true728body: |729 bb.0:730 liveins: $sgpr0_sgpr1_sgpr2731 ; GFX908-LABEL: name: copy_s96_to_v96_unaligned732 ; GFX908: liveins: $sgpr0_sgpr1_sgpr2733 ; GFX908-NEXT: {{ $}}734 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $sgpr0_sgpr1_sgpr2735 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2736 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec737 ;738 ; GFX90A-LABEL: name: copy_s96_to_v96_unaligned739 ; GFX90A: liveins: $sgpr0_sgpr1_sgpr2740 ; GFX90A-NEXT: {{ $}}741 ; GFX90A-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $sgpr0_sgpr1_sgpr2742 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2743 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec744 ;745 ; GFX942-LABEL: name: copy_s96_to_v96_unaligned746 ; GFX942: liveins: $sgpr0_sgpr1_sgpr2747 ; GFX942-NEXT: {{ $}}748 ; GFX942-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $sgpr0_sgpr1_sgpr2749 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2750 ; GFX942-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec751 ;752 ; GFX10-LABEL: name: copy_s96_to_v96_unaligned753 ; GFX10: liveins: $sgpr0_sgpr1_sgpr2754 ; GFX10-NEXT: {{ $}}755 ; GFX10-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $sgpr0_sgpr1_sgpr2756 ; GFX10-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2757 ; GFX10-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec758 ; GFX1250-LABEL: name: copy_s96_to_v96_unaligned759 ; GFX1250: liveins: $sgpr0_sgpr1_sgpr2760 ; GFX1250-NEXT: {{ $}}761 ; GFX1250-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr2, implicit $exec, implicit-def $vgpr1_vgpr2_vgpr3, implicit $sgpr0_sgpr1_sgpr2762 ; GFX1250-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr1, implicit $exec, implicit $sgpr0_sgpr1_sgpr2763 ; GFX1250-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr0, implicit $exec, implicit killed $sgpr0_sgpr1_sgpr2, implicit $exec764 $vgpr1_vgpr2_vgpr3 = COPY killed $sgpr0_sgpr1_sgpr2, implicit $exec765...766