brintos

brintos / llvm-project-archived public Read only

0
0
Text · 59.4 KiB · 3d38e49 Raw
1014 lines · plain
1# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -verify-machineinstrs -run-pass si-load-store-opt -o - %s | FileCheck -check-prefix=GFX11 %s2 3# GFX11-LABEL: name: image_sample_l_merged_v1v34# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)5# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub06# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub37 8name: image_sample_l_merged_v1v39body:             |10  bb.0.entry:11    %0:sgpr_64 = COPY $sgpr0_sgpr112    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 013    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9914    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 015    %4:vgpr_32 = COPY %2.sub316    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)17    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)18    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)19...20---21# GFX11-LABEL: name: image_sample_l_merged_v1v3_reversed22# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)23# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub324# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub0_sub1_sub225 26name: image_sample_l_merged_v1v3_reversed27body:             |28  bb.0.entry:29    %0:sgpr_64 = COPY $sgpr0_sgpr130    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 031    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9932    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 033    %4:vgpr_32 = COPY %2.sub334    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)35    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)36    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)37...38---39 40# GFX11-LABEL: name: image_sample_l_merged_v2v241# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)42# GFX11: %{{[0-9]+}}:vreg_64 = COPY %8.sub0_sub143# GFX11: %{{[0-9]+}}:vreg_64 = COPY killed %8.sub2_sub344 45name: image_sample_l_merged_v2v246body:             |47  bb.0.entry:48    %0:sgpr_64 = COPY $sgpr0_sgpr149    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 050    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9951    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 052    %4:vgpr_32 = COPY %2.sub353    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)54    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 3, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 8, align 16, addrspace 4)55    %7:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 12, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 8, align 16, addrspace 4)56...57---58 59# GFX11-LABEL: name: image_sample_l_merged_v2v2_reversed60# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)61# GFX11: %{{[0-9]+}}:vreg_64 = COPY %8.sub2_sub362# GFX11: %{{[0-9]+}}:vreg_64 = COPY killed %8.sub0_sub163 64name: image_sample_l_merged_v2v2_reversed65body:             |66  bb.0.entry:67    %0:sgpr_64 = COPY $sgpr0_sgpr168    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 069    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9970    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 071    %4:vgpr_32 = COPY %2.sub372    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)73    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 12, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 8, align 16, addrspace 4)74    %7:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 3, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 8, align 16, addrspace 4)75...76---77 78# GFX11-LABEL: name: image_sample_l_merged_v3v179# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)80# GFX11: %{{[0-9]+}}:vreg_96 = COPY %8.sub0_sub1_sub281# GFX11: %{{[0-9]+}}:vgpr_32 = COPY killed %8.sub382 83name: image_sample_l_merged_v3v184body:             |85  bb.0.entry:86    %0:sgpr_64 = COPY $sgpr0_sgpr187    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 088    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9989    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 090    %4:vgpr_32 = COPY %2.sub391    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)92    %6:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)93    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)94...95---96 97# GFX11-LABEL: name: image_sample_l_merged_v3v1_reversed98# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)99# GFX11: %{{[0-9]+}}:vreg_96 = COPY %8.sub1_sub2_sub3100# GFX11: %{{[0-9]+}}:vgpr_32 = COPY killed %8.sub0101 102name: image_sample_l_merged_v3v1_reversed103body:             |104  bb.0.entry:105    %0:sgpr_64 = COPY $sgpr0_sgpr1106    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0107    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99108    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0109    %4:vgpr_32 = COPY %2.sub3110    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)111    %6:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)112    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)113...114---115 116# GFX11-LABEL: name: image_sample_l_divided_merged117# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)118 119name: image_sample_l_divided_merged120body:             |121  bb.0.entry:122    %0:sgpr_64 = COPY $sgpr0_sgpr1123    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0124    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99125    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0126    %4:vgpr_32 = COPY %2.sub3127    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)128    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)129    %7:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)130    %8:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)131    %9:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %7:vgpr_32, %7:vgpr_32, %7:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)132    %10:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)133    %11:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)134...135---136 137# GFX11-LABEL: name: image_sample_l_divided_not_merged138# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)139# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)140 141name: image_sample_l_divided_not_merged142body:             |143  bb.0.entry:144    %0:sgpr_64 = COPY $sgpr0_sgpr1145    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0146    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99147    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0148    %4:vreg_128 = COPY %2149    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)150    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)151    IMAGE_STORE_V4_V2_nsa_gfx11 %4:vreg_128, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (store 16)152    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)153...154---155 156# GFX11-LABEL: name: image_sample_l_dmask_overlapped_not_merged157# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)158# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)159 160name: image_sample_l_dmask_overlapped_not_merged161body:             |162  bb.0.entry:163    %0:sgpr_64 = COPY $sgpr0_sgpr1164    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0165    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99166    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0167    %4:vgpr_32 = COPY %2.sub3168    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)169    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)170    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)171...172---173 174# GFX11-LABEL: name: image_sample_l_dmask_not_disjoint_not_merged175# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)176# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 11, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)177 178name: image_sample_l_dmask_not_disjoint_not_merged179body:             |180  bb.0.entry:181    %0:sgpr_64 = COPY $sgpr0_sgpr1182    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0183    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99184    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0185    %4:vgpr_32 = COPY %2.sub3186    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)187    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)188    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 11, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)189...190---191 192# GFX11-LABEL: name: image_sample_l_not_merged_0193# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)194# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %6, %6, %6, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)195 196name: image_sample_l_not_merged_0197body:             |198  bb.0.entry:199    %0:sgpr_64 = COPY $sgpr0_sgpr1200    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0201    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99202    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0203    %4:vgpr_32 = COPY %2.sub3204    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)205    %6:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 1, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)206    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)207    %8:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %6, %6, %6, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)208...209---210 211# GFX11-LABEL: name: image_sample_l_not_merged_1212# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %6, %6, %6, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)213# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %6, %6, %6, %4, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)214 215name: image_sample_l_not_merged_1216body:             |217  bb.0.entry:218    %0:sgpr_64 = COPY $sgpr0_sgpr1219    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0220    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99221    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0222    %4:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0223    %5:vgpr_32 = COPY %2.sub3224    %6:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)225    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %6, %6, %6, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)226    %8:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %6, %6, %6, %4, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)227...228---229 230# GFX11-LABEL: name: image_sample_l_not_merged_2231# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %6, %6, %6, %4, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)232# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %6, %6, %6, %4, %3, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)233 234name: image_sample_l_not_merged_2235body:             |236  bb.0.entry:237    %0:sgpr_64 = COPY $sgpr0_sgpr1238    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0239    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99240    %3:sgpr_128 = COPY $sgpr92_sgpr93_sgpr94_sgpr95241    %4:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0242    %5:vgpr_32 = COPY %2.sub3243    %6:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)244    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %6, %6, %6, %4, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)245    %8:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %6, %6, %6, %4, %3, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)246...247---248 249# GFX11-LABEL: name: image_sample_l_not_merged_3250# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)251# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)252 253name: image_sample_l_not_merged_3254body:             |255  bb.0.entry:256    %0:sgpr_64 = COPY $sgpr0_sgpr1257    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0258    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99259    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0260    %4:vgpr_32 = COPY %2.sub3261    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)262    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)263    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)264...265---266 267# GFX11-LABEL: name: image_sample_l_not_merged_4268# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)269# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)270 271name: image_sample_l_not_merged_4272body:             |273  bb.0.entry:274    %0:sgpr_64 = COPY $sgpr0_sgpr1275    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0276    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99277    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0278    %4:vgpr_32 = COPY %2.sub3279    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)280    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)281    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)282...283---284 285# GFX11-LABEL: name: image_sample_l_not_merged_5286# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)287# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)288 289name: image_sample_l_not_merged_5290body:             |291  bb.0.entry:292    %0:sgpr_64 = COPY $sgpr0_sgpr1293    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0294    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99295    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0296    %4:vgpr_32 = COPY %2.sub3297    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)298    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)299    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)300...301---302 303# GFX11-LABEL: name: image_sample_l_not_merged_6304# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)305# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)306 307name: image_sample_l_not_merged_6308body:             |309  bb.0.entry:310    %0:sgpr_64 = COPY $sgpr0_sgpr1311    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0312    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99313    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0314    %4:vgpr_32 = COPY %2.sub3315    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)316    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)317    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)318...319---320 321# GFX11-LABEL: name: image_sample_l_not_merged_7322# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V2_nsa_gfx11 %5, %5, %3, %2, 8, 1, -1, 0, 0, 1, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)323# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)324 325name: image_sample_l_not_merged_7326body:             |327  bb.0.entry:328    %0:sgpr_64 = COPY $sgpr0_sgpr1329    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0330    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99331    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0332    %4:vgpr_32 = COPY %2.sub3333    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)334    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V2_nsa_gfx11 %5, %5, %3, %2, 8, 1, -1, 0, 0, 1, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)335    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)336...337---338 339# GFX11-LABEL: name: image_sample_l_not_merged_8340# GFX11: %{{[0-9]+}}:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 1, 0, 0, implicit $exec :: (dereferenceable load (s64), addrspace 4)341# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)342 343name: image_sample_l_not_merged_8344body:             |345  bb.0.entry:346    %0:sgpr_64 = COPY $sgpr0_sgpr1347    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0348    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99349    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0350    %4:vgpr_32 = COPY %2.sub3351    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)352    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 1, 0, 0, implicit $exec :: (dereferenceable load 8, addrspace 4)353    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)354...355---356 357# GFX11-LABEL: name: image_sample_l_not_merged_9358# GFX11: %{{[0-9]+}}:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s64), addrspace 4)359# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)360 361name: image_sample_l_not_merged_9362body:             |363  bb.0.entry:364    %0:sgpr_64 = COPY $sgpr0_sgpr1365    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0366    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99367    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0368    %4:vgpr_32 = COPY %2.sub3369    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)370    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load 8, addrspace 4)371    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)372...373---374 375# GFX11-LABEL: name: image_sample_l_not_merged_10376# GFX11: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)377# GFX11: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 1, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)378 379name: image_sample_l_not_merged_10380body:             |381  bb.0.entry:382    %0:sgpr_64 = COPY $sgpr0_sgpr1383    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0384    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99385    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0386    %4:vgpr_32 = COPY %2.sub3387    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)388    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx11 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)389    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx11 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 1, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)390...391---392 393 394 395 396# GFX11-LABEL: name: image_sample_merged_v1v3397# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_V4_V2_nsa_gfx11 %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)398# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0399# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3400 401name: image_sample_merged_v1v3402body:             |403  bb.0.entry:404    %0:sgpr_64 = COPY $sgpr0_sgpr1405    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0406    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99407    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0408    %4:vgpr_32 = COPY %2.sub3409    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)410    %6:vgpr_32 = IMAGE_SAMPLE_V1_V2_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)411    %7:vreg_96 = IMAGE_SAMPLE_V3_V2_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)412...413---414 415 416# GFX11-LABEL: name: image_sample_b_merged_v1v3417# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)418# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0419# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3420 421name: image_sample_b_merged_v1v3422body:             |423  bb.0.entry:424    %0:sgpr_64 = COPY $sgpr0_sgpr1425    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0426    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99427    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0428    %4:vgpr_32 = COPY %2.sub3429    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)430    %6:vgpr_32 = IMAGE_SAMPLE_B_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)431    %7:vreg_96 = IMAGE_SAMPLE_B_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)432...433---434 435 436# GFX11-LABEL: name: image_sample_b_cl_merged_v1v3437# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_CL_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)438# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0439# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3440 441name: image_sample_b_cl_merged_v1v3442body:             |443  bb.0.entry:444    %0:sgpr_64 = COPY $sgpr0_sgpr1445    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0446    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99447    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0448    %4:vgpr_32 = COPY %2.sub3449    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)450    %6:vgpr_32 = IMAGE_SAMPLE_B_CL_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)451    %7:vreg_96 = IMAGE_SAMPLE_B_CL_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)452...453---454 455 456# GFX11-LABEL: name: image_sample_b_cl_o_merged_v1v3457# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_CL_O_V4_V5_nsa_gfx11 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)458# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0459# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3460 461name: image_sample_b_cl_o_merged_v1v3462body:             |463  bb.0.entry:464    %0:sgpr_64 = COPY $sgpr0_sgpr1465    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0466    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99467    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0468    %4:vgpr_32 = COPY %2.sub3469    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)470    %6:vgpr_32 = IMAGE_SAMPLE_B_CL_O_V1_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)471    %7:vreg_96 = IMAGE_SAMPLE_B_CL_O_V3_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)472...473---474 475 476# GFX11-LABEL: name: image_sample_b_o_merged_v1v3477# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_O_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)478# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0479# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3480 481name: image_sample_b_o_merged_v1v3482body:             |483  bb.0.entry:484    %0:sgpr_64 = COPY $sgpr0_sgpr1485    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0486    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99487    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0488    %4:vgpr_32 = COPY %2.sub3489    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)490    %6:vgpr_32 = IMAGE_SAMPLE_B_O_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)491    %7:vreg_96 = IMAGE_SAMPLE_B_O_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)492...493---494 495 496# GFX11-LABEL: name: image_sample_c_merged_v1v3497# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)498# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0499# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3500 501name: image_sample_c_merged_v1v3502body:             |503  bb.0.entry:504    %0:sgpr_64 = COPY $sgpr0_sgpr1505    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0506    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99507    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0508    %4:vgpr_32 = COPY %2.sub3509    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)510    %6:vgpr_32 = IMAGE_SAMPLE_C_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)511    %7:vreg_96 = IMAGE_SAMPLE_C_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)512...513---514 515 516# GFX11-LABEL: name: image_sample_cl_merged_v1v3517# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CL_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)518# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0519# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3520 521name: image_sample_cl_merged_v1v3522body:             |523  bb.0.entry:524    %0:sgpr_64 = COPY $sgpr0_sgpr1525    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0526    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99527    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0528    %4:vgpr_32 = COPY %2.sub3529    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)530    %6:vgpr_32 = IMAGE_SAMPLE_CL_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)531    %7:vreg_96 = IMAGE_SAMPLE_CL_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)532...533---534 535 536# GFX11-LABEL: name: image_sample_cl_o_merged_v1v3537# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CL_O_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)538# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0539# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3540 541name: image_sample_cl_o_merged_v1v3542body:             |543  bb.0.entry:544    %0:sgpr_64 = COPY $sgpr0_sgpr1545    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0546    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99547    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0548    %4:vgpr_32 = COPY %2.sub3549    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)550    %6:vgpr_32 = IMAGE_SAMPLE_CL_O_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)551    %7:vreg_96 = IMAGE_SAMPLE_CL_O_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)552...553---554 555 556# GFX11-LABEL: name: image_sample_c_b_merged_v1v3557# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)558# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0559# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3560 561name: image_sample_c_b_merged_v1v3562body:             |563  bb.0.entry:564    %0:sgpr_64 = COPY $sgpr0_sgpr1565    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0566    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99567    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0568    %4:vgpr_32 = COPY %2.sub3569    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)570    %6:vgpr_32 = IMAGE_SAMPLE_C_B_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)571    %7:vreg_96 = IMAGE_SAMPLE_C_B_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)572...573---574 575 576# GFX11-LABEL: name: image_sample_c_b_cl_merged_v1v3577# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_CL_V4_V5_nsa_gfx11 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)578# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0579# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3580 581name: image_sample_c_b_cl_merged_v1v3582body:             |583  bb.0.entry:584    %0:sgpr_64 = COPY $sgpr0_sgpr1585    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0586    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99587    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0588    %4:vgpr_32 = COPY %2.sub3589    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)590    %6:vgpr_32 = IMAGE_SAMPLE_C_B_CL_V1_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)591    %7:vreg_96 = IMAGE_SAMPLE_C_B_CL_V3_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)592...593---594 595 596# GFX11-LABEL: name: image_sample_c_b_cl_o_merged_v1v3597# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_CL_O_V4_V6_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)598# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0599# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3600 601name: image_sample_c_b_cl_o_merged_v1v3602body:             |603  bb.0.entry:604    %0:sgpr_64 = COPY $sgpr0_sgpr1605    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0606    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99607    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0608    %4:vgpr_32 = COPY %2.sub3609    %5:vreg_192 = IMPLICIT_DEF610    %6:vgpr_32 = IMAGE_SAMPLE_C_B_CL_O_V1_V6_gfx11 %5:vreg_192, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)611    %7:vreg_96 = IMAGE_SAMPLE_C_B_CL_O_V3_V6_gfx11 %5:vreg_192, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)612...613---614 615 616# GFX11-LABEL: name: image_sample_c_b_o_merged_v1v3617# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_O_V4_V5_nsa_gfx11 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)618# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0619# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3620 621name: image_sample_c_b_o_merged_v1v3622body:             |623  bb.0.entry:624    %0:sgpr_64 = COPY $sgpr0_sgpr1625    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0626    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99627    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0628    %4:vgpr_32 = COPY %2.sub3629    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)630    %6:vgpr_32 = IMAGE_SAMPLE_C_B_O_V1_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)631    %7:vreg_96 = IMAGE_SAMPLE_C_B_O_V3_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)632...633---634 635 636# GFX11-LABEL: name: image_sample_c_cl_merged_v1v3637# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CL_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)638# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0639# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3640 641name: image_sample_c_cl_merged_v1v3642body:             |643  bb.0.entry:644    %0:sgpr_64 = COPY $sgpr0_sgpr1645    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0646    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99647    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0648    %4:vgpr_32 = COPY %2.sub3649    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)650    %6:vgpr_32 = IMAGE_SAMPLE_C_CL_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)651    %7:vreg_96 = IMAGE_SAMPLE_C_CL_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)652...653---654 655 656# GFX11-LABEL: name: image_sample_c_cl_o_merged_v1v3657# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CL_O_V4_V5_nsa_gfx11 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)658# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0659# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3660 661name: image_sample_c_cl_o_merged_v1v3662body:             |663  bb.0.entry:664    %0:sgpr_64 = COPY $sgpr0_sgpr1665    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0666    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99667    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0668    %4:vgpr_32 = COPY %2.sub3669    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)670    %6:vgpr_32 = IMAGE_SAMPLE_C_CL_O_V1_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)671    %7:vreg_96 = IMAGE_SAMPLE_C_CL_O_V3_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)672...673---674 675 676# GFX11-LABEL: name: image_sample_c_d_merged_v1v3677# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_V4_V7_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)678# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0679# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3680 681name: image_sample_c_d_merged_v1v3682body:             |683  bb.0.entry:684    %0:sgpr_64 = COPY $sgpr0_sgpr1685    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0686    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99687    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0688    %4:vgpr_32 = COPY %2.sub3689    %5:vreg_224 = IMPLICIT_DEF690    %6:vgpr_32 = IMAGE_SAMPLE_C_D_V1_V7_gfx11 %5:vreg_224, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)691    %7:vreg_96 = IMAGE_SAMPLE_C_D_V3_V7_gfx11 %5:vreg_224, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)692...693---694 695 696# GFX11-LABEL: name: image_sample_c_d_cl_merged_v1v3697# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_CL_V4_V8_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)698# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0699# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3700 701name: image_sample_c_d_cl_merged_v1v3702body:             |703  bb.0.entry:704    %0:sgpr_64 = COPY $sgpr0_sgpr1705    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0706    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99707    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0708    %4:vgpr_32 = COPY %2.sub3709    %5:vreg_256 = IMPLICIT_DEF710    %6:vgpr_32 = IMAGE_SAMPLE_C_D_CL_V1_V8_gfx11 %5:vreg_256, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)711    %7:vreg_96 = IMAGE_SAMPLE_C_D_CL_V3_V8_gfx11 %5:vreg_256, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)712...713---714 715 716# GFX11-LABEL: name: image_sample_c_d_cl_o_merged_v1v3717# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_CL_O_V4_V9_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)718# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0719# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3720 721name: image_sample_c_d_cl_o_merged_v1v3722body:             |723  bb.0.entry:724    %0:sgpr_64 = COPY $sgpr0_sgpr1725    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0726    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99727    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0728    %4:vgpr_32 = COPY %2.sub3729    %5:vreg_288 = IMPLICIT_DEF730    %6:vgpr_32 = IMAGE_SAMPLE_C_D_CL_O_V1_V9_gfx11 %5:vreg_288, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)731    %7:vreg_96 = IMAGE_SAMPLE_C_D_CL_O_V3_V9_gfx11 %5:vreg_288, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)732...733---734 735 736# GFX11-LABEL: name: image_sample_c_d_o_merged_v1v3737# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_O_V4_V8_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)738# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0739# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3740 741name: image_sample_c_d_o_merged_v1v3742body:             |743  bb.0.entry:744    %0:sgpr_64 = COPY $sgpr0_sgpr1745    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0746    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99747    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0748    %4:vgpr_32 = COPY %2.sub3749    %5:vreg_256 = IMPLICIT_DEF750    %6:vgpr_32 = IMAGE_SAMPLE_C_D_O_V1_V8_gfx11 %5:vreg_256, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)751    %7:vreg_96 = IMAGE_SAMPLE_C_D_O_V3_V8_gfx11 %5:vreg_256, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)752...753---754 755 756# GFX11-LABEL: name: image_sample_c_l_merged_v1v3757# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_L_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)758# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0759# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3760 761name: image_sample_c_l_merged_v1v3762body:             |763  bb.0.entry:764    %0:sgpr_64 = COPY $sgpr0_sgpr1765    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0766    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99767    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0768    %4:vgpr_32 = COPY %2.sub3769    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)770    %6:vgpr_32 = IMAGE_SAMPLE_C_L_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)771    %7:vreg_96 = IMAGE_SAMPLE_C_L_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)772...773---774 775 776# GFX11-LABEL: name: image_sample_c_lz_merged_v1v3777# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_LZ_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)778# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0779# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3780 781name: image_sample_c_lz_merged_v1v3782body:             |783  bb.0.entry:784    %0:sgpr_64 = COPY $sgpr0_sgpr1785    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0786    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99787    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0788    %4:vgpr_32 = COPY %2.sub3789    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)790    %6:vgpr_32 = IMAGE_SAMPLE_C_LZ_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)791    %7:vreg_96 = IMAGE_SAMPLE_C_LZ_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)792...793---794 795 796# GFX11-LABEL: name: image_sample_c_lz_o_merged_v1v3797# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_LZ_O_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)798# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0799# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3800 801name: image_sample_c_lz_o_merged_v1v3802body:             |803  bb.0.entry:804    %0:sgpr_64 = COPY $sgpr0_sgpr1805    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0806    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99807    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0808    %4:vgpr_32 = COPY %2.sub3809    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)810    %6:vgpr_32 = IMAGE_SAMPLE_C_LZ_O_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)811    %7:vreg_96 = IMAGE_SAMPLE_C_LZ_O_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)812...813---814 815 816# GFX11-LABEL: name: image_sample_c_l_o_merged_v1v3817# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_L_O_V4_V5_nsa_gfx11 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)818# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0819# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3820 821name: image_sample_c_l_o_merged_v1v3822body:             |823  bb.0.entry:824    %0:sgpr_64 = COPY $sgpr0_sgpr1825    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0826    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99827    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0828    %4:vgpr_32 = COPY %2.sub3829    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)830    %6:vgpr_32 = IMAGE_SAMPLE_C_L_O_V1_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)831    %7:vreg_96 = IMAGE_SAMPLE_C_L_O_V3_V5_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)832...833---834 835 836# GFX11-LABEL: name: image_sample_c_o_merged_v1v3837# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_O_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)838# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0839# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3840 841name: image_sample_c_o_merged_v1v3842body:             |843  bb.0.entry:844    %0:sgpr_64 = COPY $sgpr0_sgpr1845    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0846    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99847    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0848    %4:vgpr_32 = COPY %2.sub3849    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)850    %6:vgpr_32 = IMAGE_SAMPLE_C_O_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)851    %7:vreg_96 = IMAGE_SAMPLE_C_O_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)852...853---854 855 856# GFX11-LABEL: name: image_sample_d_merged_v1v3857# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_V4_V6_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)858# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0859# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3860 861name: image_sample_d_merged_v1v3862body:             |863  bb.0.entry:864    %0:sgpr_64 = COPY $sgpr0_sgpr1865    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0866    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99867    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0868    %4:vgpr_32 = COPY %2.sub3869    %5:vreg_192 = IMPLICIT_DEF870    %6:vgpr_32 = IMAGE_SAMPLE_D_V1_V6_gfx11 %5:vreg_192, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)871    %7:vreg_96 = IMAGE_SAMPLE_D_V3_V6_gfx11 %5:vreg_192, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)872...873---874 875 876# GFX11-LABEL: name: image_sample_d_cl_merged_v1v3877# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_CL_V4_V7_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)878# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0879# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3880 881name: image_sample_d_cl_merged_v1v3882body:             |883  bb.0.entry:884    %0:sgpr_64 = COPY $sgpr0_sgpr1885    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0886    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99887    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0888    %4:vgpr_32 = COPY %2.sub3889    %5:vreg_224 = IMPLICIT_DEF890    %6:vgpr_32 = IMAGE_SAMPLE_D_CL_V1_V7_gfx11 %5:vreg_224, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)891    %7:vreg_96 = IMAGE_SAMPLE_D_CL_V3_V7_gfx11 %5:vreg_224, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)892...893---894 895 896# GFX11-LABEL: name: image_sample_d_cl_o_merged_v1v3897# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_CL_O_V4_V8_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)898# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0899# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3900 901name: image_sample_d_cl_o_merged_v1v3902body:             |903  bb.0.entry:904    %0:sgpr_64 = COPY $sgpr0_sgpr1905    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0906    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99907    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0908    %4:vgpr_32 = COPY %2.sub3909    %5:vreg_256 = IMPLICIT_DEF910    %6:vgpr_32 = IMAGE_SAMPLE_D_CL_O_V1_V8_gfx11 %5:vreg_256, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)911    %7:vreg_96 = IMAGE_SAMPLE_D_CL_O_V3_V8_gfx11 %5:vreg_256, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)912...913---914 915 916# GFX11-LABEL: name: image_sample_d_o_merged_v1v3917# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_O_V4_V7_gfx11 %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)918# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0919# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3920 921name: image_sample_d_o_merged_v1v3922body:             |923  bb.0.entry:924    %0:sgpr_64 = COPY $sgpr0_sgpr1925    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0926    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99927    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0928    %4:vgpr_32 = COPY %2.sub3929    %5:vreg_224 = IMPLICIT_DEF930    %6:vgpr_32 = IMAGE_SAMPLE_D_O_V1_V7_gfx11 %5:vreg_224, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)931    %7:vreg_96 = IMAGE_SAMPLE_D_O_V3_V7_gfx11 %5:vreg_224, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)932...933---934 935 936# GFX11-LABEL: name: image_sample_lz_merged_v1v3937# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_LZ_V4_V2_nsa_gfx11 %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)938# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0939# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3940 941name: image_sample_lz_merged_v1v3942body:             |943  bb.0.entry:944    %0:sgpr_64 = COPY $sgpr0_sgpr1945    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0946    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99947    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0948    %4:vgpr_32 = COPY %2.sub3949    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)950    %6:vgpr_32 = IMAGE_SAMPLE_LZ_V1_V2_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)951    %7:vreg_96 = IMAGE_SAMPLE_LZ_V3_V2_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)952...953---954 955 956# GFX11-LABEL: name: image_sample_lz_o_merged_v1v3957# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_LZ_O_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)958# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0959# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3960 961name: image_sample_lz_o_merged_v1v3962body:             |963  bb.0.entry:964    %0:sgpr_64 = COPY $sgpr0_sgpr1965    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0966    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99967    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0968    %4:vgpr_32 = COPY %2.sub3969    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)970    %6:vgpr_32 = IMAGE_SAMPLE_LZ_O_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)971    %7:vreg_96 = IMAGE_SAMPLE_LZ_O_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)972...973---974 975 976# GFX11-LABEL: name: image_sample_l_o_merged_v1v3977# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_O_V4_V4_nsa_gfx11 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)978# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0979# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3980 981name: image_sample_l_o_merged_v1v3982body:             |983  bb.0.entry:984    %0:sgpr_64 = COPY $sgpr0_sgpr1985    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0986    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99987    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0988    %4:vgpr_32 = COPY %2.sub3989    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)990    %6:vgpr_32 = IMAGE_SAMPLE_L_O_V1_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)991    %7:vreg_96 = IMAGE_SAMPLE_L_O_V3_V4_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)992...993---994 995 996# GFX11-LABEL: name: image_sample_o_merged_v1v3997# GFX11: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_O_V4_V3_nsa_gfx11 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)998# GFX11: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0999# GFX11: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31000 1001name: image_sample_o_merged_v1v31002body:             |1003  bb.0.entry:1004    %0:sgpr_64 = COPY $sgpr0_sgpr11005    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01006    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991007    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01008    %4:vgpr_32 = COPY %2.sub31009    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load 16)1010    %6:vgpr_32 = IMAGE_SAMPLE_O_V1_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 4, addrspace 4)1011    %7:vreg_96 = IMAGE_SAMPLE_O_V3_V3_nsa_gfx11 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load 12, align 16, addrspace 4)1012...1013---1014