From da4a7c01bfdeb9b8647d38c57f96a9dea64dc66a Mon Sep 17 00:00:00 2001 From: Dmitry Preobrazhensky Date: Mon, 12 Mar 2018 15:03:34 +0000 Subject: [PATCH] [AMDGPU][MC] Corrected GATHER4 opcodes See bug 36252: https://bugs.llvm.org/show_bug.cgi?id=36252 Differential Revision: https://reviews.llvm.org/D43874 Reviewers: artem.tamazov, arsenm llvm-svn: 327278 --- .../Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp | 27 +- .../AMDGPU/Disassembler/AMDGPUDisassembler.cpp | 11 +- llvm/lib/Target/AMDGPU/MIMGInstructions.td | 163 +- .../AMDGPU/llvm.amdgcn.image.gather4.d16.ll | 35 - .../CodeGen/AMDGPU/llvm.amdgcn.image.gather4.ll | 21 - llvm/test/MC/AMDGPU/gfx7_asm_all.s | 1656 ++++-------------- llvm/test/MC/AMDGPU/gfx8_asm_all.s | 1776 ++++++-------------- llvm/test/MC/AMDGPU/gfx9_asm_all.s | 483 ++---- llvm/test/MC/AMDGPU/mimg-err.s | 7 + llvm/test/MC/AMDGPU/mimg.s | 35 + llvm/test/MC/Disassembler/AMDGPU/mimg_vi.txt | 31 + 11 files changed, 1206 insertions(+), 3039 deletions(-) diff --git a/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp b/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp index 1885b59..9e2957e 100644 --- a/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp +++ b/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp @@ -1053,6 +1053,7 @@ private: bool validateEarlyClobberLimitations(const MCInst &Inst); bool validateIntClampSupported(const MCInst &Inst); bool validateMIMGAtomicDMask(const MCInst &Inst); + bool validateMIMGGatherDMask(const MCInst &Inst); bool validateMIMGDataSize(const MCInst &Inst); bool validateMIMGR128(const MCInst &Inst); bool validateMIMGD16(const MCInst &Inst); @@ -2299,7 +2300,7 @@ bool AMDGPUAsmParser::validateMIMGDataSize(const MCInst &Inst) { if ((Desc.TSFlags & SIInstrFlags::MIMG) == 0) return true; - // Gather4 instructions seem to have special rules not described in spec. + // Gather4 instructions do not need validation: dst size is hardcoded. if (Desc.TSFlags & SIInstrFlags::Gather4) return true; @@ -2345,6 +2346,25 @@ bool AMDGPUAsmParser::validateMIMGAtomicDMask(const MCInst &Inst) { return DMask == 0x1 || DMask == 0x3 || DMask == 0xf; } +bool AMDGPUAsmParser::validateMIMGGatherDMask(const MCInst &Inst) { + + const unsigned Opc = Inst.getOpcode(); + const MCInstrDesc &Desc = MII.get(Opc); + + if ((Desc.TSFlags & SIInstrFlags::Gather4) == 0) + return true; + + int DMaskIdx = AMDGPU::getNamedOperandIdx(Opc, AMDGPU::OpName::dmask); + unsigned DMask = Inst.getOperand(DMaskIdx).getImm() & 0xf; + + // GATHER4 instructions use dmask in a different fashion compared to + // other MIMG instructions. The only useful DMASK values are + // 1=red, 2=green, 4=blue, 8=alpha. (e.g. 1 returns + // (red,red,red,red) etc.) The ISA document doesn't mention + // this. + return DMask == 0x1 || DMask == 0x2 || DMask == 0x4 || DMask == 0x8; +} + bool AMDGPUAsmParser::validateMIMGR128(const MCInst &Inst) { const unsigned Opc = Inst.getOpcode(); @@ -2412,6 +2432,11 @@ bool AMDGPUAsmParser::validateInstruction(const MCInst &Inst, "invalid atomic image dmask"); return false; } + if (!validateMIMGGatherDMask(Inst)) { + Error(IDLoc, + "invalid image_gather dmask: only one bit must be set"); + return false; + } return true; } diff --git a/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp b/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp index 578fe50..75356e9 100644 --- a/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp +++ b/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp @@ -273,6 +273,11 @@ DecodeStatus AMDGPUDisassembler::convertSDWAInst(MCInst &MI) const { // Consequently, decoded instructions always show address // as if it has 1 dword, which could be not really so. DecodeStatus AMDGPUDisassembler::convertMIMGInst(MCInst &MI) const { + + if (MCII->get(MI.getOpcode()).TSFlags & SIInstrFlags::Gather4) { + return MCDisassembler::Success; + } + int VDstIdx = AMDGPU::getNamedOperandIdx(MI.getOpcode(), AMDGPU::OpName::vdst); @@ -289,7 +294,7 @@ DecodeStatus AMDGPUDisassembler::convertMIMGInst(MCInst &MI) const { assert(DMaskIdx != -1); assert(TFEIdx != -1); - bool isAtomic = (VDstIdx != -1); + bool IsAtomic = (VDstIdx != -1); unsigned DMask = MI.getOperand(DMaskIdx).getImm() & 0xf; if (DMask == 0) @@ -310,7 +315,7 @@ DecodeStatus AMDGPUDisassembler::convertMIMGInst(MCInst &MI) const { int NewOpcode = -1; - if (isAtomic) { + if (IsAtomic) { if (DMask == 0x1 || DMask == 0x3 || DMask == 0xF) { NewOpcode = AMDGPU::getMaskedMIMGAtomicOp(*MCII, MI.getOpcode(), DstSize); } @@ -342,7 +347,7 @@ DecodeStatus AMDGPUDisassembler::convertMIMGInst(MCInst &MI) const { // in the instruction encoding. MI.getOperand(VDataIdx) = MCOperand::createReg(NewVdata); - if (isAtomic) { + if (IsAtomic) { // Atomic operations have an additional operand (a copy of data) MI.getOperand(VDstIdx) = MCOperand::createReg(NewVdata); } diff --git a/llvm/lib/Target/AMDGPU/MIMGInstructions.td b/llvm/lib/Target/AMDGPU/MIMGInstructions.td index d31d33a..a00cdaa 100644 --- a/llvm/lib/Target/AMDGPU/MIMGInstructions.td +++ b/llvm/lib/Target/AMDGPU/MIMGInstructions.td @@ -283,7 +283,10 @@ multiclass MIMG_Sampler_WQM op, string asm> : MIMG_Sampler; class MIMG_Gather_Helper op, string asm, RegisterClass dst_rc, - RegisterClass src_rc, bit wqm, bit d16_bit=0> : MIMG < + RegisterClass src_rc, + bit wqm, + bit d16_bit=0, + string dns=""> : MIMG < (outs dst_rc:$vdata), (ins src_rc:$vaddr, SReg_256:$srsrc, SReg_128:$ssamp, dmask:$dmask, unorm:$unorm, GLC:$glc, slc:$slc, @@ -305,49 +308,37 @@ class MIMG_Gather_Helper op, string asm, let WQM = wqm; let D16 = d16; - let isAsmParserOnly = 1; // TBD: fix it later + let DecoderNamespace = dns; + let isAsmParserOnly = !if(!eq(dns,""), 1, 0); } -multiclass MIMG_Gather_Src_Helper_Helper op, string asm, +multiclass MIMG_Gather_Src_Helper op, string asm, RegisterClass dst_rc, - int channels, bit wqm, - bit d16_bit, string suffix> { - def _V1 # suffix : MIMG_Gather_Helper , - MIMG_Mask; - def _V2 # suffix : MIMG_Gather_Helper , - MIMG_Mask; - def _V4 # suffix : MIMG_Gather_Helper , - MIMG_Mask; - def _V8 # suffix : MIMG_Gather_Helper , - MIMG_Mask; - def _V16 # suffix : MIMG_Gather_Helper , - MIMG_Mask; + bit wqm, bit d16_bit, + string prefix, + string suffix> { + def prefix # _V1 # suffix : MIMG_Gather_Helper ; + def prefix # _V2 # suffix : MIMG_Gather_Helper ; + def prefix # _V4 # suffix : MIMG_Gather_Helper ; + def prefix # _V8 # suffix : MIMG_Gather_Helper ; + def prefix # _V16 # suffix : MIMG_Gather_Helper ; } -multiclass MIMG_Gather_Src_Helper op, string asm, - RegisterClass dst_rc, - int channels, bit wqm> { - defm : MIMG_Gather_Src_Helper_Helper; +multiclass MIMG_Gather op, string asm, bit wqm=0> { + defm : MIMG_Gather_Src_Helper; let d16 = 1 in { - let SubtargetPredicate = HasPackedD16VMem in { - defm : MIMG_Gather_Src_Helper_Helper; + let AssemblerPredicate = HasPackedD16VMem in { + defm : MIMG_Gather_Src_Helper; } // End HasPackedD16VMem. - let SubtargetPredicate = HasUnpackedD16VMem, DecoderNamespace = "GFX80_UNPACKED" in { - defm : MIMG_Gather_Src_Helper_Helper; + let AssemblerPredicate = HasUnpackedD16VMem, DecoderNamespace = "GFX80_UNPACKED" in { + defm : MIMG_Gather_Src_Helper; } // End HasUnpackedD16VMem. } // End d16 = 1. } -multiclass MIMG_Gather op, string asm, bit wqm=0> { - defm _V1 : MIMG_Gather_Src_Helper; - defm _V2 : MIMG_Gather_Src_Helper; - defm _V3 : MIMG_Gather_Src_Helper; - defm _V4 : MIMG_Gather_Src_Helper; -} - multiclass MIMG_Gather_WQM op, string asm> : MIMG_Gather; //===----------------------------------------------------------------------===// @@ -514,6 +505,22 @@ multiclass ImageSampleAltPatterns { } // End HasPackedD16VMem. } +// ImageGather4 patterns. +multiclass ImageGather4Patterns { + defm : ImageSampleDataPatterns(opcode # _V4), v4f32>; +} + +// ImageGather4 alternative patterns for illegal vector half Types. +multiclass ImageGather4AltPatterns { + let SubtargetPredicate = HasUnpackedD16VMem in { + defm : ImageSampleDataPatterns(opcode # _V4), v4i32, "_D16_gfx80">; + } // End HasUnpackedD16VMem. + + let SubtargetPredicate = HasPackedD16VMem in { + defm : ImageSampleDataPatterns(opcode # _V2), v2i32, "_D16">; + } // End HasPackedD16VMem. +} + // ImageLoad for amdgcn. multiclass ImageLoadPattern { def : GCNPat < @@ -695,36 +702,36 @@ defm : ImageSamplePatterns; // Basic gather4. -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; // Gather4 with comparison. -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; // Gather4 with offsets. -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; // Gather4 with comparison and offsets. -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; -defm : ImageSamplePatterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; +defm : ImageGather4Patterns; // Basic sample alternative. defm : ImageSampleAltPatterns; @@ -775,36 +782,36 @@ defm : ImageSampleAltPatterns; defm : ImageSampleAltPatterns; // Basic gather4 alternative. -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; // Gather4 with comparison alternative. -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; // Gather4 with offsets alternative. -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; // Gather4 with comparison and offsets alternative. -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; -defm : ImageSampleAltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; +defm : ImageGather4AltPatterns; defm : ImageSamplePatterns; diff --git a/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.ll b/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.ll index f0451c2..bb3279b 100644 --- a/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.ll +++ b/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.ll @@ -3,39 +3,6 @@ ; RUN: llc < %s -march=amdgcn -mcpu=gfx900 -verify-machineinstrs | FileCheck -check-prefix=GCN -check-prefix=PACKED -check-prefix=GFX9 %s -; GCN-LABEL: {{^}}image_gather4_f16: -; GCN: image_gather4 v[[HALF:[0-9]+]], v[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}] dmask:0x1 d16 - -; UNPACKED: flat_store_short v[{{[0-9]+:[0-9]+}}], v[[HALF]] - -; GFX81: flat_store_short v[{{[0-9]+:[0-9]+}}], v[[HALF]] - -; GFX9: global_store_short v[{{[0-9]+:[0-9]+}}], v[[HALF]], off -define amdgpu_kernel void @image_gather4_f16(<4 x float> %coords, <8 x i32> inreg %rsrc, <4 x i32> inreg %sample, half addrspace(1)* %out) { -main_body: - %tex = call half @llvm.amdgcn.image.gather4.f16.v4f32.v8i32(<4 x float> %coords, <8 x i32> %rsrc, <4 x i32> %sample, i32 1, i1 0, i1 0, i1 0, i1 0, i1 0) - store half %tex, half addrspace(1)* %out - ret void -} - -; GCN-LABEL: {{^}}image_gather4_v2f16: -; UNPACKED: image_gather4 v{{\[}}{{[0-9]+}}:[[HI:[0-9]+]]{{\]}}, v[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}] dmask:0x3 d16 -; UNPACKED: flat_store_short v[{{[0-9]+:[0-9]+}}], v[[HI]] - -; PACKED: image_gather4 v[[DATA:[0-9]+]], v[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}] dmask:0x3 d16 - -; GFX81: v_lshrrev_b32_e32 v[[HI:[0-9]+]], 16, v[[DATA]] -; GFX81: flat_store_short v[{{[0-9]+:[0-9]+}}], v[[HI]] - -; GFX9: global_store_short_d16_hi v[{{[0-9]+:[0-9]+}}], v[[DATA]], off -define amdgpu_kernel void @image_gather4_v2f16(<4 x float> %coords, <8 x i32> inreg %rsrc, <4 x i32> inreg %sample, half addrspace(1)* %out) { -main_body: - %tex = call <2 x half> @llvm.amdgcn.image.gather4.v2f16.v4f32.v8i32(<4 x float> %coords, <8 x i32> %rsrc, <4 x i32> %sample, i32 3, i1 0, i1 0, i1 0, i1 0, i1 0) - %elt = extractelement <2 x half> %tex, i32 1 - store half %elt, half addrspace(1)* %out - ret void -} - ; GCN-LABEL: {{^}}image_gather4_v4f16: ; UNPACKED: image_gather4 v{{\[}}{{[0-9]+}}:[[HI:[0-9]+]]{{\]}}, v[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}], s[{{[0-9]+:[0-9]+}}] dmask:0xf d16 ; UNPACKED: flat_store_short v[{{[0-9]+:[0-9]+}}], v[[HI]] @@ -126,8 +93,6 @@ main_body: ret void } -declare half @llvm.amdgcn.image.gather4.f16.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) -declare <2 x half> @llvm.amdgcn.image.gather4.v2f16.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) declare <4 x half> @llvm.amdgcn.image.gather4.v4f16.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) diff --git a/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.ll b/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.ll index a9351db..63b8012 100644 --- a/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.ll +++ b/llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.ll @@ -320,24 +320,6 @@ main_body: ret void } -; GCN-LABEL: {{^}}gather4_f32: -; GCN: image_gather4 {{v[0-9]+}}, {{v\[[0-9]+:[0-9]+\]}}, {{s\[[0-9]+:[0-9]+\]}}, {{s\[[0-9]+:[0-9]+\]}} dmask:0x1 da -define amdgpu_kernel void @gather4_f32(float addrspace(1)* %out) { -main_body: - %r = call float @llvm.amdgcn.image.gather4.f32.v4f32.v8i32(<4 x float> undef, <8 x i32> undef, <4 x i32> undef, i32 1, i1 0, i1 0, i1 0, i1 0, i1 1) - store float %r, float addrspace(1)* %out - ret void -} - -; GCN-LABEL: {{^}}gather4_v2f32: -; GCN: image_gather4 {{v\[[0-9]+:[0-9]+\]}}, {{v\[[0-9]+:[0-9]+\]}}, {{s\[[0-9]+:[0-9]+\]}}, {{s\[[0-9]+:[0-9]+\]}} dmask:0x3 da -define amdgpu_kernel void @gather4_v2f32(<2 x float> addrspace(1)* %out) { -main_body: - %r = call <2 x float> @llvm.amdgcn.image.gather4.v2f32.v4f32.v8i32(<4 x float> undef, <8 x i32> undef, <4 x i32> undef, i32 3, i1 0, i1 0, i1 0, i1 0, i1 1) - store <2 x float> %r, <2 x float> addrspace(1)* %out - ret void -} - declare <4 x float> @llvm.amdgcn.image.gather4.v4f32.v2f32.v8i32(<2 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 declare <4 x float> @llvm.amdgcn.image.gather4.v4f32.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 declare <4 x float> @llvm.amdgcn.image.gather4.cl.v4f32.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 @@ -377,7 +359,4 @@ declare <4 x float> @llvm.amdgcn.image.gather4.c.b.cl.o.v4f32.v8f32.v8i32(<8 x f declare <4 x float> @llvm.amdgcn.image.gather4.c.lz.o.v4f32.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 declare <4 x float> @llvm.amdgcn.image.gather4.c.lz.o.v4f32.v8f32.v8i32(<8 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 -declare float @llvm.amdgcn.image.gather4.f32.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 -declare <2 x float> @llvm.amdgcn.image.gather4.v2f32.v4f32.v8i32(<4 x float>, <8 x i32>, <4 x i32>, i32, i1, i1, i1, i1, i1) #0 - attributes #0 = { nounwind readnone } diff --git a/llvm/test/MC/AMDGPU/gfx7_asm_all.s b/llvm/test/MC/AMDGPU/gfx7_asm_all.s index a4669f3..2dcc240 100644 --- a/llvm/test/MC/AMDGPU/gfx7_asm_all.s +++ b/llvm/test/MC/AMDGPU/gfx7_asm_all.s @@ -5076,2020 +5076,1084 @@ image_sample_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x0 image_sample_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0xbc,0xf0,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0xfc,0x62,0x00] -image_gather4 v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0xff,0x05,0x62,0x00] -image_gather4 v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x63,0x00] -image_gather4 v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x78,0x00] -image_gather4 v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x82,0x00] -image_gather4 v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x22,0x03] -image_gather4 v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x00,0xf3,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x01,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x02,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0xff,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x63,0x00] -image_gather4_cl v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x78,0x00] -image_gather4_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x82,0x00] -image_gather4_cl v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_cl v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x22,0x03] -image_gather4_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x04,0xf3,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x05,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x06,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_l v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0xff,0x05,0x62,0x00] -image_gather4_l v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x63,0x00] -image_gather4_l v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x78,0x00] -image_gather4_l v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_l v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x82,0x00] -image_gather4_l v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_l v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x22,0x03] -image_gather4_l v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x10,0xf3,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x11,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x12,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x78,0x00] -image_gather4_b v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_b v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x22,0x03] -image_gather4_b v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x14,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x15,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x16,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b_cl v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x78,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x22,0x03] -image_gather4_b_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x18,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x19,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x1a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_lz v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_lz v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x78,0x00] -image_gather4_lz v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_lz v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_lz v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_lz v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x22,0x03] -image_gather4_lz v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x1c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x1d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x1e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x20,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x21,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x22,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_cl v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x24,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x25,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x26,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_l v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_l v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_l v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_l v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_l v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x30,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x31,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x32,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_b v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_b v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x34,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x35,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x36,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b_cl v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_b_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x38,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x39,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x3a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_lz v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_lz v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_lz v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x3c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x3d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x3e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0xff,0x05,0x62,0x00] -image_gather4_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x63,0x00] -image_gather4_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x78,0x00] -image_gather4_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x82,0x00] -image_gather4_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x22,0x03] -image_gather4_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x40,0xf3,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x41,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x42,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0xff,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x63,0x00] -image_gather4_cl_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x78,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x82,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x22,0x03] -image_gather4_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x44,0xf3,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x45,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x46,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_l_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0xff,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x63,0x00] -image_gather4_l_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x78,0x00] -image_gather4_l_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x82,0x00] -image_gather4_l_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x22,0x03] -image_gather4_l_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x50,0xf3,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x51,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x52,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x78,0x00] -image_gather4_b_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x22,0x03] -image_gather4_b_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x54,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x55,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x56,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b_cl_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x78,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x22,0x03] -image_gather4_b_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x58,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x59,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x5a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_lz_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_lz_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x78,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x22,0x03] -image_gather4_lz_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x5c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x5d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x5e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x60,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x61,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x62,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_cl_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x64,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x65,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x66,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_l_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_l_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_l_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x70,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x71,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x72,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_b_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x74,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x75,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x76,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b_cl_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_b_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x78,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x79,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x7a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_lz_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_lz_o v5, v1, s[96:103], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[96:103], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x78,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[100:103] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[100:103] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x22,0x03] -image_gather4_c_lz_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 -// CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0xc2,0x03] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x7c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x7d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x7e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x7c,0xf1,0x01,0x05,0x62,0x00] image_get_lod v5, v1, s[8:15], s[12:15] dmask:0x1 diff --git a/llvm/test/MC/AMDGPU/gfx8_asm_all.s b/llvm/test/MC/AMDGPU/gfx8_asm_all.s index 2711a4a..cb4b9265 100644 --- a/llvm/test/MC/AMDGPU/gfx8_asm_all.s +++ b/llvm/test/MC/AMDGPU/gfx8_asm_all.s @@ -5001,2022 +5001,1302 @@ image_sample_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x0 image_sample_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0xbc,0xf0,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0xfc,0x62,0x00] -image_gather4 v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0xff,0x05,0x62,0x00] -image_gather4 v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x63,0x00] -image_gather4 v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x77,0x00] -image_gather4 v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4 v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4 v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x82,0x00] -image_gather4 v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x02,0x03] -image_gather4 v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0xc2,0x03] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x00,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x00,0xf3,0x01,0x05,0x62,0x00] -image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x01,0xf1,0x01,0x05,0x62,0x00] - -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x02,0xf1,0x01,0x05,0x62,0x00] -image_gather4 v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x00,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0xff,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x63,0x00] -image_gather4_cl v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x77,0x00] -image_gather4_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_cl v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x82,0x00] -image_gather4_cl v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_cl v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x02,0x03] -image_gather4_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_cl v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x04,0xf3,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x05,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x06,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_l v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0xff,0x05,0x62,0x00] -image_gather4_l v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x63,0x00] -image_gather4_l v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x77,0x00] -image_gather4_l v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_l v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_l v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x82,0x00] -image_gather4_l v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_l v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x02,0x03] -image_gather4_l v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_l v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x10,0xf3,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x11,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x12,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x77,0x00] -image_gather4_b v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_b v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_b v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x02,0x03] -image_gather4_b v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_b v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x14,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x15,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x16,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b_cl v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x77,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b_cl v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_b_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x02,0x03] -image_gather4_b_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x18,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x18,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x19,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x1a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x18,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x18,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_lz v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_lz v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x77,0x00] -image_gather4_lz v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_lz v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_lz v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_lz v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_lz v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x02,0x03] -image_gather4_lz v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_lz v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x1c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x1c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x1d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x1e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x1c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x1c,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x20,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x21,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x22,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_cl v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_cl v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x24,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x24,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x25,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x26,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x24,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x24,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_l v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_l v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_l v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_l v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_l v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_l v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_l v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x30,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x30,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_l v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x31,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x32,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x30,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x30,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_b v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_b v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_b v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x34,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x34,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x35,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x36,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x34,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x34,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b_cl v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b_cl v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_b_cl v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x38,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x38,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x39,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x3a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x38,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x38,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_lz v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_lz v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_lz v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_lz v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_lz v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x3c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x3d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x3e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0xff,0x05,0x62,0x00] -image_gather4_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x63,0x00] -image_gather4_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x77,0x00] -image_gather4_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x82,0x00] -image_gather4_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x02,0x03] -image_gather4_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x40,0xf3,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x41,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x42,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0xff,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x63,0x00] -image_gather4_cl_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x77,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_cl_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x82,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x02,0x03] -image_gather4_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x44,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x44,0xf3,0x01,0x05,0x62,0x00] -image_gather4_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x45,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x46,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x44,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x44,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_l_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0xff,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x63,0x00] -image_gather4_l_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x77,0x00] -image_gather4_l_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_l_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_l_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x82,0x00] -image_gather4_l_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x02,0x03] -image_gather4_l_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x50,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x50,0xf3,0x01,0x05,0x62,0x00] -image_gather4_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x51,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x52,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x50,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x50,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x77,0x00] -image_gather4_b_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_b_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x02,0x03] -image_gather4_b_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x54,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x54,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x55,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x56,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x54,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x54,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0xff,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b_cl_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x77,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x02,0x03] -image_gather4_b_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x58,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x58,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x59,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x5a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x58,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x58,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_lz_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_lz_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x77,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_lz_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_lz_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x02,0x03] -image_gather4_lz_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x5c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x5d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x5e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x60,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x60,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x61,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x62,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x60,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x60,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_cl_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x64,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x64,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x65,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x66,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x64,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x64,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_l_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_l_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_l_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_l_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x70,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x70,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x71,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x72,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_l_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x70,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_l_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x70,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_b_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_b_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x74,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x74,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x75,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x76,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x74,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x74,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_b_cl_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_b_cl_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_b_cl_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x78,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x78,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x79,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x7a,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_b_cl_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x78,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_b_cl_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x78,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v252, v1, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[252:255], v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_lz_o v5, v255, s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v255, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0xff,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[12:19], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_lz_o v5, v1, s[92:99], s[12:15] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[16:19] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, ttmp[4:11], s[12:15] dmask:0x1 +// CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x7d,0x00] + +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[96:99] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_lz_o v5, v1, s[8:15], ttmp[8:11] dmask:0x1 +image_gather4_c_lz_o v[5:8], v1, s[8:15], ttmp[8:11] dmask:0x1 // CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0xc2,0x03] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x2 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x4 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x8 +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v[5:7], v1, s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x7c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x7c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x7c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v[5:6], v1, s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x7d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x7e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz_o v5, v1, s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x7c,0xf1,0x01,0x05,0x62,0x00] +image_gather4_c_lz_o v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x7c,0xf1,0x01,0x05,0x62,0x80] + image_get_lod v5, v1, s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x80,0xf1,0x01,0x05,0x62,0x00] diff --git a/llvm/test/MC/AMDGPU/gfx9_asm_all.s b/llvm/test/MC/AMDGPU/gfx9_asm_all.s index 5073bad..1815a2e 100644 --- a/llvm/test/MC/AMDGPU/gfx9_asm_all.s +++ b/llvm/test/MC/AMDGPU/gfx9_asm_all.s @@ -4140,573 +4140,342 @@ image_sample_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x0 image_sample_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0xdc,0xf0,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_cl v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_cl v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x63,0x00] -image_gather4_cl v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_cl v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x77,0x00] -image_gather4_cl v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_cl v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x82,0x00] -image_gather4_cl v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_cl v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x02,0x03] -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x04,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x04,0xf3,0x01,0x05,0x62,0x00] -image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x05,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x06,0xf1,0x01,0x05,0x62,0x00] -image_gather4_cl v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x04,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_cl v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x04,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_l v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_l v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x63,0x00] -image_gather4_l v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_l v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x77,0x00] -image_gather4_l v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_l v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x82,0x00] -image_gather4_l v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_l v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x02,0x03] -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x10,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x10,0xf3,0x01,0x05,0x62,0x00] -image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x11,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x12,0xf1,0x01,0x05,0x62,0x00] -image_gather4_l v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_l v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x10,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_l v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x10,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_b v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_b v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x63,0x00] -image_gather4_b v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_b v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x77,0x00] -image_gather4_b v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_b v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x82,0x00] -image_gather4_b v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_b v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x02,0x03] -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x14,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x14,0xf3,0x01,0x05,0x62,0x00] -image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x15,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x16,0xf1,0x01,0x05,0x62,0x00] -image_gather4_b v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_b v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x14,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_b v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x14,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_c v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_c v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_c v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_c v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x20,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x20,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x21,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x22,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_c v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x20,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_c v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x20,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_c_lz v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_c_lz v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_c_lz v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x77,0x00] -image_gather4_c_lz v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_c_lz v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x02,0x03] -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x3c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x3c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x3d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x3e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_c_lz v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_c_lz v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x3c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_c_lz v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x3c,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_o v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_o v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x63,0x00] -image_gather4_o v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_o v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x77,0x00] -image_gather4_o v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_o v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x82,0x00] -image_gather4_o v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_o v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x02,0x03] -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x40,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x40,0xf3,0x01,0x05,0x62,0x00] -image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x41,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x42,0xf1,0x01,0x05,0x62,0x00] -image_gather4_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x40,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x40,0xf1,0x01,0x05,0x62,0x80] + +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v252, v[1:4], s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[252:255], v[1:4], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0xfc,0x62,0x00] -image_gather4_lz_o v5, v[252:255], s[8:15], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v[252:255], s[8:15], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0xfc,0x05,0x62,0x00] -image_gather4_lz_o v5, v[1:4], s[12:19], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v[1:4], s[12:19], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x63,0x00] -image_gather4_lz_o v5, v[1:4], s[92:99], s[12:15] dmask:0x1 +image_gather4_lz_o v[5:8], v[1:4], s[92:99], s[12:15] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x77,0x00] -image_gather4_lz_o v5, v[1:4], s[8:15], s[16:19] dmask:0x1 +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[16:19] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x82,0x00] -image_gather4_lz_o v5, v[1:4], s[8:15], s[96:99] dmask:0x1 +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[96:99] dmask:0x1 // CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x02,0x03] -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x2 +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 // CHECK: [0x00,0x02,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x3 -// CHECK: [0x00,0x03,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x4 +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 // CHECK: [0x00,0x04,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x5 -// CHECK: [0x00,0x05,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x6 -// CHECK: [0x00,0x06,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0x7 -// CHECK: [0x00,0x07,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x8 +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 // CHECK: [0x00,0x08,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x9 -// CHECK: [0x00,0x09,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xa -// CHECK: [0x00,0x0a,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xb -// CHECK: [0x00,0x0b,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0xc -// CHECK: [0x00,0x0c,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xd -// CHECK: [0x00,0x0d,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v[5:7], v[1:4], s[8:15], s[12:15] dmask:0xe -// CHECK: [0x00,0x0e,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x0 -// CHECK: [0x00,0x00,0x5c,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 unorm +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 unorm // CHECK: [0x00,0x11,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 glc +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 glc // CHECK: [0x00,0x21,0x5c,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 slc +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 slc // CHECK: [0x00,0x01,0x5c,0xf3,0x01,0x05,0x62,0x00] -image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 tfe -// CHECK: [0x00,0x01,0x5d,0xf1,0x01,0x05,0x62,0x00] - -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 lwe +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 lwe // CHECK: [0x00,0x01,0x5e,0xf1,0x01,0x05,0x62,0x00] -image_gather4_lz_o v5, v[1:4], s[8:15], s[12:15] dmask:0x1 da +image_gather4_lz_o v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x1 da // CHECK: [0x00,0x41,0x5c,0xf1,0x01,0x05,0x62,0x00] +image_gather4_lz_o v[5:6], v[1:4], s[8:15], s[12:15] dmask:0x1 d16 +// CHECK: [0x00,0x01,0x5c,0xf1,0x01,0x05,0x62,0x80] + buffer_load_format_x v5, off, s[8:11], s3 offset:4095 // CHECK: [0xff,0x0f,0x00,0xe0,0x00,0x05,0x02,0x03] diff --git a/llvm/test/MC/AMDGPU/mimg-err.s b/llvm/test/MC/AMDGPU/mimg-err.s index 132b600..822ffdd 100644 --- a/llvm/test/MC/AMDGPU/mimg-err.s +++ b/llvm/test/MC/AMDGPU/mimg-err.s @@ -58,3 +58,10 @@ image_atomic_add v[6:7], v255, s[8:15] dmask:0x2 tfe image_atomic_cmpswap v[4:7], v[192:195], s[28:35] dmask:0xe tfe // NOGCN: error: invalid atomic image dmask + +//===----------------------------------------------------------------------===// +// Image Gather +//===----------------------------------------------------------------------===// + +image_gather4_cl v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x3 +// NOGCN: error: invalid image_gather dmask: only one bit must be set diff --git a/llvm/test/MC/AMDGPU/mimg.s b/llvm/test/MC/AMDGPU/mimg.s index cbd0913..2482fd7 100644 --- a/llvm/test/MC/AMDGPU/mimg.s +++ b/llvm/test/MC/AMDGPU/mimg.s @@ -234,3 +234,38 @@ image_atomic_add v10, v6, s[8:15] dmask:0x1 r128 // SICI: image_atomic_add v10, v6, s[8:15] dmask:0x1 r128 ; encoding: [0x00,0x81,0x44,0xf0,0x06,0x0a,0x02,0x00] // VI: image_atomic_add v10, v6, s[8:15] dmask:0x1 r128 ; encoding: [0x00,0x81,0x48,0xf0,0x06,0x0a,0x02,0x00] // NOGFX9: error: r128 modifier is not supported on this GPU + +//===----------------------------------------------------------------------===// +// Image Gather4 +//===----------------------------------------------------------------------===// + +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 +// GCN: image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x00] + +image_gather4 v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 +// GCN: image_gather4 v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x2 ; encoding: [0x00,0x02,0x00,0xf1,0x01,0x05,0x62,0x00] + +image_gather4 v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 +// GCN: image_gather4 v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x4 ; encoding: [0x00,0x04,0x00,0xf1,0x01,0x05,0x62,0x00] + +image_gather4 v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 +// GCN: image_gather4 v[5:8], v[1:4], s[8:15], s[12:15] dmask:0x8 ; encoding: [0x00,0x08,0x00,0xf1,0x01,0x05,0x62,0x00] + +image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 +// NOSICI: error: instruction not supported on this GPU +// GFX8_0: image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x1 d16 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x80] +// NOGFX8_1: error: instruction not supported on this GPU +// NOGFX9: error: instruction not supported on this GPU + +image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 d16 +// NOSICI: error: d16 modifier is not supported on this GPU +// NOGFX8_0: error: instruction not supported on this GPU +// GFX8_1: image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 d16 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x80] +// GFX9: image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 d16 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x80] + +// FIXME: d16 is handled as an optional modifier, should it be corrected? +image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 +// NOSICI: error: d16 modifier is not supported on this GPU +// NOGFX8_0: error: instruction not supported on this GPU +// GFX8_1: image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 d16 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x80] +// GFX9: image_gather4 v[5:6], v1, s[8:15], s[12:15] dmask:0x1 d16 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0x05,0x62,0x80] diff --git a/llvm/test/MC/Disassembler/AMDGPU/mimg_vi.txt b/llvm/test/MC/Disassembler/AMDGPU/mimg_vi.txt index 5708416..ed1f38a 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/mimg_vi.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/mimg_vi.txt @@ -155,3 +155,34 @@ # VI: image_atomic_cmpswap v[5:6], v1, s[8:15] dmask:0xe unorm ; encoding: [0x00,0x1e,0x44,0xf0,0x01,0x05,0x02,0x00] 0x00,0x1e,0x44,0xf0,0x01,0x05,0x02,0x00 + +#===------------------------------------------------------------------------===# +# Image gather +#===------------------------------------------------------------------------===# + +# VI: image_gather4 v[252:255], v1, s[8:15], s[12:15] dmask:0x1 ; encoding: [0x00,0x01,0x00,0xf1,0x01,0xfc,0x62,0x00] +0x00,0x01,0x00,0xf1,0x01,0xfc,0x62,0x00 + +# VI: image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x2 ; encoding: [0x00,0x02,0x00,0xf1,0x01,0x05,0x62,0x00] +0x00,0x02,0x00,0xf1,0x01,0x05,0x62,0x00 + +# VI: image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x4 ; encoding: [0x00,0x04,0x00,0xf1,0x01,0x05,0x62,0x00] +0x00,0x04,0x00,0xf1,0x01,0x05,0x62,0x00 + +# VI: image_gather4 v[5:8], v1, s[8:15], s[12:15] dmask:0x8 ; encoding: [0x00,0x08,0x00,0xf1,0x01,0x05,0x62,0x00] +0x00,0x08,0x00,0xf1,0x01,0x05,0x62,0x00 + +# GFX80: image_gather4 v[252:255], v1, s[8:15], s[12:15] dmask:0x1 unorm glc slc lwe da d16 ; encoding: [0x00,0x71,0x02,0xf3,0x01,0xfc,0x62,0x80] +# GFX81: image_gather4 v[252:253], v1, s[8:15], s[12:15] dmask:0x1 unorm glc slc lwe da d16 ; encoding: [0x00,0x71,0x02,0xf3,0x01,0xfc,0x62,0x80] +0x00,0x71,0x02,0xf3,0x01,0xfc,0x62,0x80 + +#===------------------------------------------------------------------------===# +# Invalid image gather (incorrect dmask value or tfe). +# Disassembler may produce a partially incorrect instruction but should not fail. +#===------------------------------------------------------------------------===# + +# VI: image_gather4 v[252:255], v1, s[8:15], s[12:15] dmask:0x3 ; encoding: [0x00,0x03,0x00,0xf1,0x01,0xfc,0x62,0x00] +0x00,0x03,0x00,0xf1,0x01,0xfc,0x62,0x00 + +# VI: image_gather4 v[252:255], v1, s[8:15], s[12:15] dmask:0x1 unorm glc slc tfe lwe da ; encoding: [0x00,0x71,0x03,0xf3,0x01,0xfc,0x62,0x00] +0x00,0x71,0x03,0xf3,0x01,0xfc,0x62,0x00 -- 2.7.4