diff --git a/llvm/lib/Target/AMDGPU/DSInstructions.td b/llvm/lib/Target/AMDGPU/DSInstructions.td index 1a10a8fcaadca..3a895923fa4b9 100644 --- a/llvm/lib/Target/AMDGPU/DSInstructions.td +++ b/llvm/lib/Target/AMDGPU/DSInstructions.td @@ -711,17 +711,33 @@ def DS_ADD_SRC2_F32 : DS_1A<"ds_add_src2_f32">; //===----------------------------------------------------------------------===// -// Instruction definitions for GFX11 and newer. +// Instruction definitions for GFX11. //===----------------------------------------------------------------------===// -let SubtargetPredicate = isGFX11Plus in { +let SubtargetPredicate = isGFX11Only in { def DS_ADD_GS_REG_RTN : DS_0A1D_RET_GDS<"ds_add_gs_reg_rtn", VReg_64, VGPR_32>; def DS_SUB_GS_REG_RTN : DS_0A1D_RET_GDS<"ds_sub_gs_reg_rtn", VReg_64, VGPR_32>; + +} // let SubtargetPredicate = isGFX11Only + +let SubtargetPredicate = isGFX11Plus in { + def DS_BVH_STACK_RTN_B32 : DS_BVH_STACK<"ds_bvh_stack_rtn_b32">; } // let SubtargetPredicate = isGFX11Plus +//===----------------------------------------------------------------------===// +// Instruction definitions for GFX12 and newer. +//===----------------------------------------------------------------------===// + +let SubtargetPredicate = isGFX12Plus in { + +defm DS_SUB_CLAMP_U32 : DS_1A1D_NORET_mc<"ds_sub_clamp_u32">; +defm DS_SUB_CLAMP_RTN_U32 : DS_1A1D_RET_mc<"ds_sub_clamp_rtn_u32", VGPR_32, "ds_sub_clamp_u32">; + +} // let SubtargetPredicate = isGFX12Plus + //===----------------------------------------------------------------------===// // DS Patterns //===----------------------------------------------------------------------===// @@ -1169,11 +1185,12 @@ def : GCNPat < //===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===// -// Base ENC_DS for GFX6, GFX7, GFX10, GFX11. +// Base ENC_DS for GFX6, GFX7, GFX10, GFX11, GFX12. //===----------------------------------------------------------------------===// -class Base_DS_Real_gfx6_gfx7_gfx10_gfx11 op, DS_Pseudo ps, int ef, string opName = ps.Mnemonic> : - DS_Real, SIMCInstr { +class Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12 op, DS_Pseudo ps, int ef, + string opName = ps.Mnemonic> + : DS_Real, SIMCInstr { let Inst{7-0} = !if(ps.has_offset0, offset0, 0); let Inst{15-8} = !if(ps.has_offset1, offset1, 0); @@ -1186,75 +1203,118 @@ class Base_DS_Real_gfx6_gfx7_gfx10_gfx11 op, DS_Pseudo ps, int ef, strin let Inst{63-56} = !if(ps.has_vdst, vdst{7-0}, 0); } +//===----------------------------------------------------------------------===// +// GFX12. +//===----------------------------------------------------------------------===// + +let AssemblerPredicate = isGFX12Plus, DecoderNamespace = "GFX12" in { + multiclass DS_Real_gfx12 op> { + defvar ps = !cast(NAME); + def _gfx12 : + Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12; + } + + multiclass DS_Real_Renamed_gfx12 op, DS_Pseudo backing_pseudo, + string real_name> { + def _gfx12 : + Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12, + MnemonicAlias, + Requires<[isGFX12Plus]>; + } +} // End AssemblerPredicate = isGFX12Plus, DecoderNamespace = "GFX12" + +defm DS_MIN_NUM_F32 : DS_Real_Renamed_gfx12<0x012, DS_MIN_F32, "ds_min_num_f32">; +defm DS_MAX_NUM_F32 : DS_Real_Renamed_gfx12<0x013, DS_MAX_F32, "ds_max_num_f32">; +defm DS_MIN_NUM_RTN_F32 : DS_Real_Renamed_gfx12<0x032, DS_MIN_RTN_F32, "ds_min_num_rtn_f32">; +defm DS_MAX_NUM_RTN_F32 : DS_Real_Renamed_gfx12<0x033, DS_MAX_RTN_F32, "ds_max_num_rtn_f32">; +defm DS_MIN_NUM_F64 : DS_Real_Renamed_gfx12<0x052, DS_MIN_F64, "ds_min_num_f64">; +defm DS_MAX_NUM_F64 : DS_Real_Renamed_gfx12<0x053, DS_MAX_F64, "ds_max_num_f64">; +defm DS_MIN_NUM_RTN_F64 : DS_Real_Renamed_gfx12<0x072, DS_MIN_RTN_F64, "ds_min_num_rtn_f64">; +defm DS_MAX_NUM_RTN_F64 : DS_Real_Renamed_gfx12<0x073, DS_MAX_RTN_F64, "ds_max_num_rtn_f64">; +defm DS_SUB_CLAMP_U32 : DS_Real_gfx12<0x099>; +defm DS_SUB_CLAMP_RTN_U32 : DS_Real_gfx12<0x0a9>; + //===----------------------------------------------------------------------===// // GFX11. //===----------------------------------------------------------------------===// -let AssemblerPredicate = isGFX11Plus, DecoderNamespace = "GFX11" in { +let AssemblerPredicate = isGFX11Only, DecoderNamespace = "GFX11" in { multiclass DS_Real_gfx11 op> { - def _gfx11 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11(NAME), + def _gfx11 : + Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12(NAME), SIEncodingFamily.GFX11>; } multiclass DS_Real_Renamed_gfx11 op, DS_Pseudo backing_pseudo, string real_name> { - def _gfx11 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11, - MnemonicAlias, Requires<[isGFX11Plus]>; + def _gfx11 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12, + MnemonicAlias, Requires<[isGFX11Only]>; } -} // End AssemblerPredicate = isGFX11Plus, DecoderNamespace = "GFX11" - -defm DS_STORE_B32 : DS_Real_Renamed_gfx11<0x00d, DS_WRITE_B32, "ds_store_b32">; -defm DS_STORE_2ADDR_B32 : DS_Real_Renamed_gfx11<0x00e, DS_WRITE2_B32, "ds_store_2addr_b32">; -defm DS_STORE_2ADDR_STRIDE64_B32 : DS_Real_Renamed_gfx11<0x00f, DS_WRITE2ST64_B32, "ds_store_2addr_stride64_b32">; -defm DS_STORE_B8 : DS_Real_Renamed_gfx11<0x01e, DS_WRITE_B8, "ds_store_b8">; -defm DS_STORE_B16 : DS_Real_Renamed_gfx11<0x01f, DS_WRITE_B16, "ds_store_b16">; -defm DS_STOREXCHG_RTN_B32 : DS_Real_Renamed_gfx11<0x02d, DS_WRXCHG_RTN_B32, "ds_storexchg_rtn_b32">; -defm DS_STOREXCHG_2ADDR_RTN_B32 : DS_Real_Renamed_gfx11<0x02e, DS_WRXCHG2_RTN_B32, "ds_storexchg_2addr_rtn_b32">; -defm DS_STOREXCHG_2ADDR_STRIDE64_RTN_B32 : DS_Real_Renamed_gfx11<0x02f, DS_WRXCHG2ST64_RTN_B32, "ds_storexchg_2addr_stride64_rtn_b32">; -defm DS_LOAD_B32 : DS_Real_Renamed_gfx11<0x036, DS_READ_B32, "ds_load_b32">; -defm DS_LOAD_2ADDR_B32 : DS_Real_Renamed_gfx11<0x037, DS_READ2_B32, "ds_load_2addr_b32">; -defm DS_LOAD_2ADDR_STRIDE64_B32 : DS_Real_Renamed_gfx11<0x038, DS_READ2ST64_B32, "ds_load_2addr_stride64_b32">; -defm DS_LOAD_I8 : DS_Real_Renamed_gfx11<0x039, DS_READ_I8, "ds_load_i8">; -defm DS_LOAD_U8 : DS_Real_Renamed_gfx11<0x03a, DS_READ_U8, "ds_load_u8">; -defm DS_LOAD_I16 : DS_Real_Renamed_gfx11<0x03b, DS_READ_I16, "ds_load_i16">; -defm DS_LOAD_U16 : DS_Real_Renamed_gfx11<0x03c, DS_READ_U16, "ds_load_u16">; -defm DS_STORE_B64 : DS_Real_Renamed_gfx11<0x04d, DS_WRITE_B64, "ds_store_b64">; -defm DS_STORE_2ADDR_B64 : DS_Real_Renamed_gfx11<0x04e, DS_WRITE2_B64, "ds_store_2addr_b64">; -defm DS_STORE_2ADDR_STRIDE64_B64 : DS_Real_Renamed_gfx11<0x04f, DS_WRITE2ST64_B64, "ds_store_2addr_stride64_b64">; -defm DS_STOREXCHG_RTN_B64 : DS_Real_Renamed_gfx11<0x06d, DS_WRXCHG_RTN_B64, "ds_storexchg_rtn_b64">; -defm DS_STOREXCHG_2ADDR_RTN_B64 : DS_Real_Renamed_gfx11<0x06e, DS_WRXCHG2_RTN_B64, "ds_storexchg_2addr_rtn_b64">; -defm DS_STOREXCHG_2ADDR_STRIDE64_RTN_B64 : DS_Real_Renamed_gfx11<0x06f, DS_WRXCHG2ST64_RTN_B64, "ds_storexchg_2addr_stride64_rtn_b64">; -defm DS_LOAD_B64 : DS_Real_Renamed_gfx11<0x076, DS_READ_B64, "ds_load_b64">; -defm DS_LOAD_2ADDR_B64 : DS_Real_Renamed_gfx11<0x077, DS_READ2_B64, "ds_load_2addr_b64">; -defm DS_LOAD_2ADDR_STRIDE64_B64 : DS_Real_Renamed_gfx11<0x078, DS_READ2ST64_B64, "ds_load_2addr_stride64_b64">; -defm DS_STORE_B8_D16_HI : DS_Real_Renamed_gfx11<0x0a0, DS_WRITE_B8_D16_HI, "ds_store_b8_d16_hi">; -defm DS_STORE_B16_D16_HI : DS_Real_Renamed_gfx11<0x0a1, DS_WRITE_B16_D16_HI, "ds_store_b16_d16_hi">; -defm DS_LOAD_U8_D16 : DS_Real_Renamed_gfx11<0x0a2, DS_READ_U8_D16, "ds_load_u8_d16">; -defm DS_LOAD_U8_D16_HI : DS_Real_Renamed_gfx11<0x0a3, DS_READ_U8_D16_HI, "ds_load_u8_d16_hi">; -defm DS_LOAD_I8_D16 : DS_Real_Renamed_gfx11<0x0a4, DS_READ_I8_D16, "ds_load_i8_d16">; -defm DS_LOAD_I8_D16_HI : DS_Real_Renamed_gfx11<0x0a5, DS_READ_I8_D16_HI, "ds_load_i8_d16_hi">; -defm DS_LOAD_U16_D16 : DS_Real_Renamed_gfx11<0x0a6, DS_READ_U16_D16, "ds_load_u16_d16">; -defm DS_LOAD_U16_D16_HI : DS_Real_Renamed_gfx11<0x0a7, DS_READ_U16_D16_HI, "ds_load_u16_d16_hi">; -defm DS_STORE_ADDTID_B32 : DS_Real_Renamed_gfx11<0x0b0, DS_WRITE_ADDTID_B32, "ds_store_addtid_b32">; -defm DS_LOAD_ADDTID_B32 : DS_Real_Renamed_gfx11<0x0b1, DS_READ_ADDTID_B32, "ds_load_addtid_b32">; -defm DS_STORE_B96 : DS_Real_Renamed_gfx11<0x0de, DS_WRITE_B96, "ds_store_b96">; -defm DS_STORE_B128 : DS_Real_Renamed_gfx11<0x0df, DS_WRITE_B128, "ds_store_b128">; -defm DS_LOAD_B96 : DS_Real_Renamed_gfx11<0x0fe, DS_READ_B96, "ds_load_b96">; -defm DS_LOAD_B128 : DS_Real_Renamed_gfx11<0x0ff, DS_READ_B128, "ds_load_b128">; +} // End AssemblerPredicate = isGFX11Only, DecoderNamespace = "GFX11" + +multiclass DS_Real_gfx11_gfx12 op> + : DS_Real_gfx11, DS_Real_gfx12; + +multiclass DS_Real_Renamed_gfx11_gfx12 op, DS_Pseudo backing_pseudo, + string real_name> + : DS_Real_Renamed_gfx11, + DS_Real_Renamed_gfx12; + +defm DS_STORE_B32 : DS_Real_Renamed_gfx11_gfx12<0x00d, DS_WRITE_B32, "ds_store_b32">; +defm DS_STORE_2ADDR_B32 : DS_Real_Renamed_gfx11_gfx12<0x00e, DS_WRITE2_B32, "ds_store_2addr_b32">; +defm DS_STORE_2ADDR_STRIDE64_B32 : DS_Real_Renamed_gfx11_gfx12<0x00f, DS_WRITE2ST64_B32, "ds_store_2addr_stride64_b32">; +defm DS_STORE_B8 : DS_Real_Renamed_gfx11_gfx12<0x01e, DS_WRITE_B8, "ds_store_b8">; +defm DS_STORE_B16 : DS_Real_Renamed_gfx11_gfx12<0x01f, DS_WRITE_B16, "ds_store_b16">; +defm DS_STOREXCHG_RTN_B32 : DS_Real_Renamed_gfx11_gfx12<0x02d, DS_WRXCHG_RTN_B32, "ds_storexchg_rtn_b32">; +defm DS_STOREXCHG_2ADDR_RTN_B32 : DS_Real_Renamed_gfx11_gfx12<0x02e, DS_WRXCHG2_RTN_B32, "ds_storexchg_2addr_rtn_b32">; +defm DS_STOREXCHG_2ADDR_STRIDE64_RTN_B32 : DS_Real_Renamed_gfx11_gfx12<0x02f, DS_WRXCHG2ST64_RTN_B32, "ds_storexchg_2addr_stride64_rtn_b32">; +defm DS_LOAD_B32 : DS_Real_Renamed_gfx11_gfx12<0x036, DS_READ_B32, "ds_load_b32">; +defm DS_LOAD_2ADDR_B32 : DS_Real_Renamed_gfx11_gfx12<0x037, DS_READ2_B32, "ds_load_2addr_b32">; +defm DS_LOAD_2ADDR_STRIDE64_B32 : DS_Real_Renamed_gfx11_gfx12<0x038, DS_READ2ST64_B32, "ds_load_2addr_stride64_b32">; +defm DS_LOAD_I8 : DS_Real_Renamed_gfx11_gfx12<0x039, DS_READ_I8, "ds_load_i8">; +defm DS_LOAD_U8 : DS_Real_Renamed_gfx11_gfx12<0x03a, DS_READ_U8, "ds_load_u8">; +defm DS_LOAD_I16 : DS_Real_Renamed_gfx11_gfx12<0x03b, DS_READ_I16, "ds_load_i16">; +defm DS_LOAD_U16 : DS_Real_Renamed_gfx11_gfx12<0x03c, DS_READ_U16, "ds_load_u16">; +defm DS_STORE_B64 : DS_Real_Renamed_gfx11_gfx12<0x04d, DS_WRITE_B64, "ds_store_b64">; +defm DS_STORE_2ADDR_B64 : DS_Real_Renamed_gfx11_gfx12<0x04e, DS_WRITE2_B64, "ds_store_2addr_b64">; +defm DS_STORE_2ADDR_STRIDE64_B64 : DS_Real_Renamed_gfx11_gfx12<0x04f, DS_WRITE2ST64_B64, "ds_store_2addr_stride64_b64">; +defm DS_STOREXCHG_RTN_B64 : DS_Real_Renamed_gfx11_gfx12<0x06d, DS_WRXCHG_RTN_B64, "ds_storexchg_rtn_b64">; +defm DS_STOREXCHG_2ADDR_RTN_B64 : DS_Real_Renamed_gfx11_gfx12<0x06e, DS_WRXCHG2_RTN_B64, "ds_storexchg_2addr_rtn_b64">; +defm DS_STOREXCHG_2ADDR_STRIDE64_RTN_B64 : DS_Real_Renamed_gfx11_gfx12<0x06f, DS_WRXCHG2ST64_RTN_B64, "ds_storexchg_2addr_stride64_rtn_b64">; +defm DS_LOAD_B64 : DS_Real_Renamed_gfx11_gfx12<0x076, DS_READ_B64, "ds_load_b64">; +defm DS_LOAD_2ADDR_B64 : DS_Real_Renamed_gfx11_gfx12<0x077, DS_READ2_B64, "ds_load_2addr_b64">; +defm DS_LOAD_2ADDR_STRIDE64_B64 : DS_Real_Renamed_gfx11_gfx12<0x078, DS_READ2ST64_B64, "ds_load_2addr_stride64_b64">; +defm DS_STORE_B8_D16_HI : DS_Real_Renamed_gfx11_gfx12<0x0a0, DS_WRITE_B8_D16_HI, "ds_store_b8_d16_hi">; +defm DS_STORE_B16_D16_HI : DS_Real_Renamed_gfx11_gfx12<0x0a1, DS_WRITE_B16_D16_HI, "ds_store_b16_d16_hi">; +defm DS_LOAD_U8_D16 : DS_Real_Renamed_gfx11_gfx12<0x0a2, DS_READ_U8_D16, "ds_load_u8_d16">; +defm DS_LOAD_U8_D16_HI : DS_Real_Renamed_gfx11_gfx12<0x0a3, DS_READ_U8_D16_HI, "ds_load_u8_d16_hi">; +defm DS_LOAD_I8_D16 : DS_Real_Renamed_gfx11_gfx12<0x0a4, DS_READ_I8_D16, "ds_load_i8_d16">; +defm DS_LOAD_I8_D16_HI : DS_Real_Renamed_gfx11_gfx12<0x0a5, DS_READ_I8_D16_HI, "ds_load_i8_d16_hi">; +defm DS_LOAD_U16_D16 : DS_Real_Renamed_gfx11_gfx12<0x0a6, DS_READ_U16_D16, "ds_load_u16_d16">; +defm DS_LOAD_U16_D16_HI : DS_Real_Renamed_gfx11_gfx12<0x0a7, DS_READ_U16_D16_HI, "ds_load_u16_d16_hi">; +defm DS_STORE_ADDTID_B32 : DS_Real_Renamed_gfx11_gfx12<0x0b0, DS_WRITE_ADDTID_B32, "ds_store_addtid_b32">; +defm DS_LOAD_ADDTID_B32 : DS_Real_Renamed_gfx11_gfx12<0x0b1, DS_READ_ADDTID_B32, "ds_load_addtid_b32">; +defm DS_STORE_B96 : DS_Real_Renamed_gfx11_gfx12<0x0de, DS_WRITE_B96, "ds_store_b96">; +defm DS_STORE_B128 : DS_Real_Renamed_gfx11_gfx12<0x0df, DS_WRITE_B128, "ds_store_b128">; +defm DS_LOAD_B96 : DS_Real_Renamed_gfx11_gfx12<0x0fe, DS_READ_B96, "ds_load_b96">; +defm DS_LOAD_B128 : DS_Real_Renamed_gfx11_gfx12<0x0ff, DS_READ_B128, "ds_load_b128">; // DS_CMPST_* are renamed to DS_CMPSTORE_* in GFX11, but also the data operands (src and cmp) are swapped // comparing to pre-GFX11. // Note: the mnemonic alias is not generated to avoid a potential ambiguity due to the semantics change. -defm DS_CMPSTORE_B32 : DS_Real_gfx11<0x010>; +defm DS_CMPSTORE_B32 : DS_Real_gfx11_gfx12<0x010>; defm DS_CMPSTORE_F32 : DS_Real_gfx11<0x011>; -defm DS_CMPSTORE_RTN_B32 : DS_Real_gfx11<0x030>; +defm DS_CMPSTORE_RTN_B32 : DS_Real_gfx11_gfx12<0x030>; defm DS_CMPSTORE_RTN_F32 : DS_Real_gfx11<0x031>; -defm DS_CMPSTORE_B64 : DS_Real_gfx11<0x050>; +defm DS_CMPSTORE_B64 : DS_Real_gfx11_gfx12<0x050>; defm DS_CMPSTORE_F64 : DS_Real_gfx11<0x051>; -defm DS_CMPSTORE_RTN_B64 : DS_Real_gfx11<0x070>; +defm DS_CMPSTORE_RTN_B64 : DS_Real_gfx11_gfx12<0x070>; defm DS_CMPSTORE_RTN_F64 : DS_Real_gfx11<0x071>; -defm DS_ADD_RTN_F32 : DS_Real_gfx11<0x079>; +defm DS_ADD_RTN_F32 : DS_Real_gfx11_gfx12<0x079>; defm DS_ADD_GS_REG_RTN : DS_Real_gfx11<0x07a>; defm DS_SUB_GS_REG_RTN : DS_Real_gfx11<0x07b>; defm DS_BVH_STACK_RTN_B32 : DS_Real_gfx11<0x0ad>; @@ -1265,8 +1325,8 @@ defm DS_BVH_STACK_RTN_B32 : DS_Real_gfx11<0x0ad>; let AssemblerPredicate = isGFX10Only, DecoderNamespace = "GFX10" in { multiclass DS_Real_gfx10 op> { - def _gfx10 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11(NAME), - SIEncodingFamily.GFX10>; + def _gfx10 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12(NAME), SIEncodingFamily.GFX10>; } } // End AssemblerPredicate = isGFX10Only, DecoderNamespace = "GFX10" @@ -1283,28 +1343,34 @@ defm DS_WRITE_ADDTID_B32 : DS_Real_gfx10<0x0b0>; defm DS_READ_ADDTID_B32 : DS_Real_gfx10<0x0b1>; //===----------------------------------------------------------------------===// -// GFX10, GFX11. +// GFX10, GFX11, GFX12. //===----------------------------------------------------------------------===// +multiclass DS_Real_gfx10_gfx11_gfx12 op> : + DS_Real_gfx10, DS_Real_gfx11, DS_Real_gfx12; + multiclass DS_Real_gfx10_gfx11 op> : DS_Real_gfx10, DS_Real_gfx11; -defm DS_ADD_F32 : DS_Real_gfx10_gfx11<0x015>; +defm DS_ADD_F32 : DS_Real_gfx10_gfx11_gfx12<0x015>; defm DS_ADD_SRC2_F32 : DS_Real_gfx10<0x095>; -defm DS_PERMUTE_B32 : DS_Real_gfx10_gfx11<0x0b2>; -defm DS_BPERMUTE_B32 : DS_Real_gfx10_gfx11<0x0b3>; +defm DS_PERMUTE_B32 : DS_Real_gfx10_gfx11_gfx12<0x0b2>; +defm DS_BPERMUTE_B32 : DS_Real_gfx10_gfx11_gfx12<0x0b3>; //===----------------------------------------------------------------------===// -// GFX7, GFX10, GFX11. +// GFX7, GFX10, GFX11, GFX12. //===----------------------------------------------------------------------===// let AssemblerPredicate = isGFX7Only, DecoderNamespace = "GFX7" in { multiclass DS_Real_gfx7 op> { - def _gfx7 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11(NAME), - SIEncodingFamily.SI>; + def _gfx7 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12(NAME), SIEncodingFamily.SI>; } } // End AssemblerPredicate = isGFX7Only, DecoderNamespace = "GFX7" +multiclass DS_Real_gfx7_gfx10_gfx11_gfx12 op> : + DS_Real_gfx7, DS_Real_gfx10_gfx11_gfx12; + multiclass DS_Real_gfx7_gfx10_gfx11 op> : DS_Real_gfx7, DS_Real_gfx10_gfx11; @@ -1314,7 +1380,7 @@ multiclass DS_Real_gfx7_gfx10 op> : // FIXME-GFX7: Add tests when upstreaming this part. defm DS_GWS_SEMA_RELEASE_ALL : DS_Real_gfx7_gfx10_gfx11<0x018>; defm DS_WRAP_RTN_B32 : DS_Real_gfx7_gfx10_gfx11<0x034>; -defm DS_CONDXCHG32_RTN_B64 : DS_Real_gfx7_gfx10_gfx11<0x07e>; +defm DS_CONDXCHG32_RTN_B64 : DS_Real_gfx7_gfx10_gfx11_gfx12<0x07e>; defm DS_WRITE_B96 : DS_Real_gfx7_gfx10<0x0de>; defm DS_WRITE_B128 : DS_Real_gfx7_gfx10<0x0df>; defm DS_READ_B96 : DS_Real_gfx7_gfx10<0x0fe>; @@ -1326,30 +1392,33 @@ defm DS_READ_B128 : DS_Real_gfx7_gfx10<0x0ff>; let AssemblerPredicate = isGFX6GFX7, DecoderNamespace = "GFX6GFX7" in { multiclass DS_Real_gfx6_gfx7 op> { - def _gfx6_gfx7 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11(NAME), - SIEncodingFamily.SI>; + def _gfx6_gfx7 : Base_DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12(NAME), SIEncodingFamily.SI>; } } // End AssemblerPredicate = isGFX6GFX7, DecoderNamespace = "GFX6GFX7" +multiclass DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12 op> : + DS_Real_gfx6_gfx7, DS_Real_gfx10_gfx11_gfx12; + multiclass DS_Real_gfx6_gfx7_gfx10_gfx11 op> : DS_Real_gfx6_gfx7, DS_Real_gfx10_gfx11; multiclass DS_Real_gfx6_gfx7_gfx10 op> : DS_Real_gfx6_gfx7, DS_Real_gfx10; -defm DS_ADD_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x000>; -defm DS_SUB_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x001>; -defm DS_RSUB_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x002>; -defm DS_INC_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x003>; -defm DS_DEC_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x004>; -defm DS_MIN_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x005>; -defm DS_MAX_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x006>; -defm DS_MIN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x007>; -defm DS_MAX_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x008>; -defm DS_AND_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x009>; -defm DS_OR_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x00a>; -defm DS_XOR_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x00b>; -defm DS_MSKOR_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x00c>; +defm DS_ADD_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x000>; +defm DS_SUB_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x001>; +defm DS_RSUB_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x002>; +defm DS_INC_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x003>; +defm DS_DEC_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x004>; +defm DS_MIN_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x005>; +defm DS_MAX_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x006>; +defm DS_MIN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x007>; +defm DS_MAX_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x008>; +defm DS_AND_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x009>; +defm DS_OR_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x00a>; +defm DS_XOR_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x00b>; +defm DS_MSKOR_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x00c>; defm DS_WRITE_B32 : DS_Real_gfx6_gfx7_gfx10<0x00d>; defm DS_WRITE2_B32 : DS_Real_gfx6_gfx7_gfx10<0x00e>; @@ -1359,7 +1428,7 @@ defm DS_CMPST_F32 : DS_Real_gfx6_gfx7_gfx10<0x011>; defm DS_MIN_F32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x012>; defm DS_MAX_F32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x013>; -defm DS_NOP : DS_Real_gfx6_gfx7_gfx10_gfx11<0x014>; +defm DS_NOP : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x014>; defm DS_GWS_INIT : DS_Real_gfx6_gfx7_gfx10_gfx11<0x019>; defm DS_GWS_SEMA_V : DS_Real_gfx6_gfx7_gfx10_gfx11<0x01a>; defm DS_GWS_SEMA_BR : DS_Real_gfx6_gfx7_gfx10_gfx11<0x01b>; @@ -1369,19 +1438,19 @@ defm DS_GWS_BARRIER : DS_Real_gfx6_gfx7_gfx10_gfx11<0x01d>; defm DS_WRITE_B8 : DS_Real_gfx6_gfx7_gfx10<0x01e>; defm DS_WRITE_B16 : DS_Real_gfx6_gfx7_gfx10<0x01f>; -defm DS_ADD_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x020>; -defm DS_SUB_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x021>; -defm DS_RSUB_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x022>; -defm DS_INC_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x023>; -defm DS_DEC_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x024>; -defm DS_MIN_RTN_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x025>; -defm DS_MAX_RTN_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x026>; -defm DS_MIN_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x027>; -defm DS_MAX_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x028>; -defm DS_AND_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x029>; -defm DS_OR_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x02a>; -defm DS_XOR_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x02b>; -defm DS_MSKOR_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x02c>; +defm DS_ADD_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x020>; +defm DS_SUB_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x021>; +defm DS_RSUB_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x022>; +defm DS_INC_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x023>; +defm DS_DEC_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x024>; +defm DS_MIN_RTN_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x025>; +defm DS_MAX_RTN_I32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x026>; +defm DS_MIN_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x027>; +defm DS_MAX_RTN_U32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x028>; +defm DS_AND_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x029>; +defm DS_OR_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x02a>; +defm DS_XOR_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x02b>; +defm DS_MSKOR_RTN_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x02c>; defm DS_WRXCHG_RTN_B32 : DS_Real_gfx6_gfx7_gfx10<0x02d>; defm DS_WRXCHG2_RTN_B32 : DS_Real_gfx6_gfx7_gfx10<0x02e>; @@ -1391,7 +1460,7 @@ defm DS_CMPST_RTN_F32 : DS_Real_gfx6_gfx7_gfx10<0x031>; defm DS_MIN_RTN_F32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x032>; defm DS_MAX_RTN_F32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x033>; -defm DS_SWIZZLE_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x035>; +defm DS_SWIZZLE_B32 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x035>; defm DS_READ_B32 : DS_Real_gfx6_gfx7_gfx10<0x036>; defm DS_READ2_B32 : DS_Real_gfx6_gfx7_gfx10<0x037>; @@ -1401,22 +1470,22 @@ defm DS_READ_U8 : DS_Real_gfx6_gfx7_gfx10<0x03a>; defm DS_READ_I16 : DS_Real_gfx6_gfx7_gfx10<0x03b>; defm DS_READ_U16 : DS_Real_gfx6_gfx7_gfx10<0x03c>; -defm DS_CONSUME : DS_Real_gfx6_gfx7_gfx10_gfx11<0x03d>; -defm DS_APPEND : DS_Real_gfx6_gfx7_gfx10_gfx11<0x03e>; +defm DS_CONSUME : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x03d>; +defm DS_APPEND : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x03e>; defm DS_ORDERED_COUNT : DS_Real_gfx6_gfx7_gfx10_gfx11<0x03f>; -defm DS_ADD_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x040>; -defm DS_SUB_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x041>; -defm DS_RSUB_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x042>; -defm DS_INC_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x043>; -defm DS_DEC_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x044>; -defm DS_MIN_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x045>; -defm DS_MAX_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x046>; -defm DS_MIN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x047>; -defm DS_MAX_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x048>; -defm DS_AND_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x049>; -defm DS_OR_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x04a>; -defm DS_XOR_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x04b>; -defm DS_MSKOR_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x04c>; +defm DS_ADD_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x040>; +defm DS_SUB_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x041>; +defm DS_RSUB_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x042>; +defm DS_INC_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x043>; +defm DS_DEC_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x044>; +defm DS_MIN_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x045>; +defm DS_MAX_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x046>; +defm DS_MIN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x047>; +defm DS_MAX_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x048>; +defm DS_AND_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x049>; +defm DS_OR_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x04a>; +defm DS_XOR_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x04b>; +defm DS_MSKOR_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x04c>; defm DS_WRITE_B64 : DS_Real_gfx6_gfx7_gfx10<0x04d>; defm DS_WRITE2_B64 : DS_Real_gfx6_gfx7_gfx10<0x04e>; @@ -1426,19 +1495,19 @@ defm DS_CMPST_F64 : DS_Real_gfx6_gfx7_gfx10<0x051>; defm DS_MIN_F64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x052>; defm DS_MAX_F64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x053>; -defm DS_ADD_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x060>; -defm DS_SUB_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x061>; -defm DS_RSUB_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x062>; -defm DS_INC_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x063>; -defm DS_DEC_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x064>; -defm DS_MIN_RTN_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x065>; -defm DS_MAX_RTN_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x066>; -defm DS_MIN_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x067>; -defm DS_MAX_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x068>; -defm DS_AND_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x069>; -defm DS_OR_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x06a>; -defm DS_XOR_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x06b>; -defm DS_MSKOR_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11<0x06c>; +defm DS_ADD_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x060>; +defm DS_SUB_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x061>; +defm DS_RSUB_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x062>; +defm DS_INC_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x063>; +defm DS_DEC_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x064>; +defm DS_MIN_RTN_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x065>; +defm DS_MAX_RTN_I64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x066>; +defm DS_MIN_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x067>; +defm DS_MAX_RTN_U64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x068>; +defm DS_AND_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x069>; +defm DS_OR_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x06a>; +defm DS_XOR_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x06b>; +defm DS_MSKOR_RTN_B64 : DS_Real_gfx6_gfx7_gfx10_gfx11_gfx12<0x06c>; defm DS_WRXCHG_RTN_B64 : DS_Real_gfx6_gfx7_gfx10<0x06d>; defm DS_WRXCHG2_RTN_B64 : DS_Real_gfx6_gfx7_gfx10<0x06e>; diff --git a/llvm/test/MC/AMDGPU/gfx11_unsupported.s b/llvm/test/MC/AMDGPU/gfx11_unsupported.s index 3b1b7e47b2143..282bb580bd1b1 100644 --- a/llvm/test/MC/AMDGPU/gfx11_unsupported.s +++ b/llvm/test/MC/AMDGPU/gfx11_unsupported.s @@ -1983,3 +1983,9 @@ s_cmp_nlt_f16 s1, s2 s_singleuse_vdst 0x1234 // CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_sub_clamp_rtn_u32 v5, v1, v2 +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_sub_clamp_u32 v1, v2 +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU diff --git a/llvm/test/MC/AMDGPU/gfx12_asm_ds.s b/llvm/test/MC/AMDGPU/gfx12_asm_ds.s new file mode 100644 index 0000000000000..ba32dc8820eaa --- /dev/null +++ b/llvm/test/MC/AMDGPU/gfx12_asm_ds.s @@ -0,0 +1,1819 @@ +// RUN: llvm-mc -arch=amdgcn -mcpu=gfx1200 -show-encoding %s | FileCheck --check-prefix=GFX12 %s + +ds_nop +// GFX12: [0x00,0x00,0x50,0xd8,0x00,0x00,0x00,0x00] + +ds_add_f32 v1, v2 +// GFX12: [0x00,0x00,0x54,0xd8,0x01,0x02,0x00,0x00] + +ds_add_f32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x54,0xd8,0x01,0x02,0x00,0x00] + +ds_add_f32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x54,0xd8,0x01,0x02,0x00,0x00] + +ds_add_f32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x54,0xd8,0xff,0xff,0x00,0x00] + +ds_add_rtn_f32 v5, v1, v2 +// GFX12: [0x00,0x00,0xe4,0xd9,0x01,0x02,0x00,0x05] + +ds_add_rtn_f32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xe4,0xd9,0x01,0x02,0x00,0x05] + +ds_add_rtn_f32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xe4,0xd9,0x01,0x02,0x00,0x05] + +ds_add_rtn_f32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xe4,0xd9,0xff,0xff,0x00,0xff] + +ds_add_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0x80,0xd8,0x01,0x02,0x00,0x05] + +ds_add_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x80,0xd8,0x01,0x02,0x00,0x05] + +ds_add_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x80,0xd8,0x01,0x02,0x00,0x05] + +ds_add_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x80,0xd8,0xff,0xff,0x00,0xff] + +ds_add_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x80,0xd9,0x01,0x02,0x00,0x05] + +ds_add_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x80,0xd9,0x01,0x02,0x00,0x05] + +ds_add_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x80,0xd9,0x01,0x02,0x00,0x05] + +ds_add_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x80,0xd9,0xff,0xfe,0x00,0xfe] + +ds_add_u32 v1, v2 +// GFX12: [0x00,0x00,0x00,0xd8,0x01,0x02,0x00,0x00] + +ds_add_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x00,0xd8,0x01,0x02,0x00,0x00] + +ds_add_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x00,0xd8,0x01,0x02,0x00,0x00] + +ds_add_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x00,0xd8,0xff,0xff,0x00,0x00] + +ds_add_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x00,0xd9,0x01,0x02,0x00,0x00] + +ds_add_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x00,0xd9,0x01,0x02,0x00,0x00] + +ds_add_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x00,0xd9,0x01,0x02,0x00,0x00] + +ds_add_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x00,0xd9,0xff,0xfe,0x00,0x00] + +ds_and_b32 v1, v2 +// GFX12: [0x00,0x00,0x24,0xd8,0x01,0x02,0x00,0x00] + +ds_and_b32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x24,0xd8,0x01,0x02,0x00,0x00] + +ds_and_b32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x24,0xd8,0x01,0x02,0x00,0x00] + +ds_and_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x24,0xd8,0xff,0xff,0x00,0x00] + +ds_and_b64 v1, v[2:3] +// GFX12: [0x00,0x00,0x24,0xd9,0x01,0x02,0x00,0x00] + +ds_and_b64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x24,0xd9,0x01,0x02,0x00,0x00] + +ds_and_b64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x24,0xd9,0x01,0x02,0x00,0x00] + +ds_and_b64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x24,0xd9,0xff,0xfe,0x00,0x00] + +ds_and_rtn_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xa4,0xd8,0x01,0x02,0x00,0x05] + +ds_and_rtn_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xa4,0xd8,0x01,0x02,0x00,0x05] + +ds_and_rtn_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xa4,0xd8,0x01,0x02,0x00,0x05] + +ds_and_rtn_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xa4,0xd8,0xff,0xff,0x00,0xff] + +ds_and_rtn_b64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xa4,0xd9,0x01,0x02,0x00,0x05] + +ds_and_rtn_b64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xa4,0xd9,0x01,0x02,0x00,0x05] + +ds_and_rtn_b64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xa4,0xd9,0x01,0x02,0x00,0x05] + +ds_and_rtn_b64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xa4,0xd9,0xff,0xfe,0x00,0xfe] + +ds_append v5 +// GFX12: [0x00,0x00,0xf8,0xd8,0x00,0x00,0x00,0x05] + +ds_append v5 offset:65535 +// GFX12: [0xff,0xff,0xf8,0xd8,0x00,0x00,0x00,0x05] + +ds_append v5 offset:0 +// GFX12: [0x00,0x00,0xf8,0xd8,0x00,0x00,0x00,0x05] + +ds_append v255 offset:4 +// GFX12: [0x04,0x00,0xf8,0xd8,0x00,0x00,0x00,0xff] + +ds_bpermute_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xcc,0xda,0x01,0x02,0x00,0x05] + +ds_bpermute_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xcc,0xda,0x01,0x02,0x00,0x05] + +ds_bpermute_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xcc,0xda,0x01,0x02,0x00,0x05] + +ds_bpermute_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xcc,0xda,0xff,0xff,0x00,0xff] + +ds_cmpstore_b32 v1, v2, v3 +// GFX12: [0x00,0x00,0x40,0xd8,0x01,0x02,0x03,0x00] + +ds_cmpstore_b32 v1, v2, v3 offset:65535 +// GFX12: [0xff,0xff,0x40,0xd8,0x01,0x02,0x03,0x00] + +ds_cmpstore_b32 v1, v2, v3 offset:0 +// GFX12: [0x00,0x00,0x40,0xd8,0x01,0x02,0x03,0x00] + +ds_cmpstore_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x40,0xd8,0xff,0xff,0xff,0x00] + +ds_cmpstore_b64 v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0x40,0xd9,0x01,0x02,0x03,0x00] + +ds_cmpstore_b64 v1, v[2:3], v[3:4] offset:65535 +// GFX12: [0xff,0xff,0x40,0xd9,0x01,0x02,0x03,0x00] + +ds_cmpstore_b64 v1, v[2:3], v[3:4] offset:0 +// GFX12: [0x00,0x00,0x40,0xd9,0x01,0x02,0x03,0x00] + +ds_cmpstore_b64 v255, v[254:255], v[254:255] offset:4 +// GFX12: [0x04,0x00,0x40,0xd9,0xff,0xfe,0xfe,0x00] + +ds_cmpstore_rtn_b32 v5, v1, v2, v3 +// GFX12: [0x00,0x00,0xc0,0xd8,0x01,0x02,0x03,0x05] + +ds_cmpstore_rtn_b32 v5, v1, v2, v3 offset:65535 +// GFX12: [0xff,0xff,0xc0,0xd8,0x01,0x02,0x03,0x05] + +ds_cmpstore_rtn_b32 v5, v1, v2, v3 offset:0 +// GFX12: [0x00,0x00,0xc0,0xd8,0x01,0x02,0x03,0x05] + +ds_cmpstore_rtn_b32 v255, v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xc0,0xd8,0xff,0xff,0xff,0xff] + +ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0xc0,0xd9,0x01,0x02,0x03,0x05] + +ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:65535 +// GFX12: [0xff,0xff,0xc0,0xd9,0x01,0x02,0x03,0x05] + +ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:0 +// GFX12: [0x00,0x00,0xc0,0xd9,0x01,0x02,0x03,0x05] + +ds_cmpstore_rtn_b64 v[254:255], v255, v[254:255], v[254:255] offset:4 +// GFX12: [0x04,0x00,0xc0,0xd9,0xff,0xfe,0xfe,0xfe] + +ds_condxchg32_rtn_b64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xf8,0xd9,0x01,0x02,0x00,0x05] + +ds_condxchg32_rtn_b64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xf8,0xd9,0x01,0x02,0x00,0x05] + +ds_condxchg32_rtn_b64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xf8,0xd9,0x01,0x02,0x00,0x05] + +ds_condxchg32_rtn_b64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xf8,0xd9,0xff,0xfe,0x00,0xfe] + +ds_consume v5 +// GFX12: [0x00,0x00,0xf4,0xd8,0x00,0x00,0x00,0x05] + +ds_consume v5 offset:65535 +// GFX12: [0xff,0xff,0xf4,0xd8,0x00,0x00,0x00,0x05] + +ds_consume v5 offset:0 +// GFX12: [0x00,0x00,0xf4,0xd8,0x00,0x00,0x00,0x05] + +ds_consume v255 offset:4 +// GFX12: [0x04,0x00,0xf4,0xd8,0x00,0x00,0x00,0xff] + +ds_dec_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0x90,0xd8,0x01,0x02,0x00,0x05] + +ds_dec_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x90,0xd8,0x01,0x02,0x00,0x05] + +ds_dec_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x90,0xd8,0x01,0x02,0x00,0x05] + +ds_dec_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x90,0xd8,0xff,0xff,0x00,0xff] + +ds_dec_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x90,0xd9,0x01,0x02,0x00,0x05] + +ds_dec_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x90,0xd9,0x01,0x02,0x00,0x05] + +ds_dec_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x90,0xd9,0x01,0x02,0x00,0x05] + +ds_dec_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x90,0xd9,0xff,0xfe,0x00,0xfe] + +ds_dec_u32 v1, v2 +// GFX12: [0x00,0x00,0x10,0xd8,0x01,0x02,0x00,0x00] + +ds_dec_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x10,0xd8,0x01,0x02,0x00,0x00] + +ds_dec_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x10,0xd8,0x01,0x02,0x00,0x00] + +ds_dec_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x10,0xd8,0xff,0xff,0x00,0x00] + +ds_dec_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x10,0xd9,0x01,0x02,0x00,0x00] + +ds_dec_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x10,0xd9,0x01,0x02,0x00,0x00] + +ds_dec_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x10,0xd9,0x01,0x02,0x00,0x00] + +ds_dec_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x10,0xd9,0xff,0xfe,0x00,0x00] + +ds_inc_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0x8c,0xd8,0x01,0x02,0x00,0x05] + +ds_inc_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x8c,0xd8,0x01,0x02,0x00,0x05] + +ds_inc_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x8c,0xd8,0x01,0x02,0x00,0x05] + +ds_inc_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x8c,0xd8,0xff,0xff,0x00,0xff] + +ds_inc_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x8c,0xd9,0x01,0x02,0x00,0x05] + +ds_inc_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x8c,0xd9,0x01,0x02,0x00,0x05] + +ds_inc_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x8c,0xd9,0x01,0x02,0x00,0x05] + +ds_inc_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x8c,0xd9,0xff,0xfe,0x00,0xfe] + +ds_inc_u32 v1, v2 +// GFX12: [0x00,0x00,0x0c,0xd8,0x01,0x02,0x00,0x00] + +ds_inc_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x0c,0xd8,0x01,0x02,0x00,0x00] + +ds_inc_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x0c,0xd8,0x01,0x02,0x00,0x00] + +ds_inc_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x0c,0xd8,0xff,0xff,0x00,0x00] + +ds_inc_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x0c,0xd9,0x01,0x02,0x00,0x00] + +ds_inc_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x0c,0xd9,0x01,0x02,0x00,0x00] + +ds_inc_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x0c,0xd9,0x01,0x02,0x00,0x00] + +ds_inc_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x0c,0xd9,0xff,0xfe,0x00,0x00] + +ds_load_2addr_b32 v[5:6], v1 +// GFX12: [0x00,0x00,0xdc,0xd8,0x01,0x00,0x00,0x05] + +ds_load_2addr_b32 v[5:6], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05] + +ds_load_2addr_b32 v[5:6], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xdc,0xd8,0x01,0x00,0x00,0x05] + +ds_load_2addr_b32 v[254:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xdc,0xd8,0xff,0x00,0x00,0xfe] + +ds_load_2addr_b64 v[5:8], v1 +// GFX12: [0x00,0x00,0xdc,0xd9,0x01,0x00,0x00,0x05] + +ds_load_2addr_b64 v[5:8], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05] + +ds_load_2addr_b64 v[5:8], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xdc,0xd9,0x01,0x00,0x00,0x05] + +ds_load_2addr_b64 v[252:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xdc,0xd9,0xff,0x00,0x00,0xfc] + +ds_load_2addr_stride64_b32 v[5:6], v1 +// GFX12: [0x00,0x00,0xe0,0xd8,0x01,0x00,0x00,0x05] + +ds_load_2addr_stride64_b32 v[5:6], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05] + +ds_load_2addr_stride64_b32 v[5:6], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xe0,0xd8,0x01,0x00,0x00,0x05] + +ds_load_2addr_stride64_b32 v[254:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xe0,0xd8,0xff,0x00,0x00,0xfe] + +ds_load_2addr_stride64_b64 v[5:8], v1 +// GFX12: [0x00,0x00,0xe0,0xd9,0x01,0x00,0x00,0x05] + +ds_load_2addr_stride64_b64 v[5:8], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05] + +ds_load_2addr_stride64_b64 v[5:8], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xe0,0xd9,0x01,0x00,0x00,0x05] + +ds_load_2addr_stride64_b64 v[252:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xe0,0xd9,0xff,0x00,0x00,0xfc] + +ds_load_addtid_b32 v5 +// GFX12: [0x00,0x00,0xc4,0xda,0x00,0x00,0x00,0x05] + +ds_load_addtid_b32 v5 offset:65535 +// GFX12: [0xff,0xff,0xc4,0xda,0x00,0x00,0x00,0x05] + +ds_load_addtid_b32 v5 offset:0 +// GFX12: [0x00,0x00,0xc4,0xda,0x00,0x00,0x00,0x05] + +ds_load_addtid_b32 v255 offset:4 +// GFX12: [0x04,0x00,0xc4,0xda,0x00,0x00,0x00,0xff] + +ds_load_b128 v[5:8], v1 +// GFX12: [0x00,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05] + +ds_load_b128 v[5:8], v1 offset:65535 +// GFX12: [0xff,0xff,0xfc,0xdb,0x01,0x00,0x00,0x05] + +ds_load_b128 v[5:8], v1 offset:0 +// GFX12: [0x00,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05] + +ds_load_b128 v[252:255], v255 offset:4 +// GFX12: [0x04,0x00,0xfc,0xdb,0xff,0x00,0x00,0xfc] + +ds_load_b32 v5, v1 +// GFX12: [0x00,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05] + +ds_load_b32 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xd8,0xd8,0x01,0x00,0x00,0x05] + +ds_load_b32 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05] + +ds_load_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xd8,0xd8,0xff,0x00,0x00,0xff] + +ds_load_b64 v[5:6], v1 +// GFX12: [0x00,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05] + +ds_load_b64 v[5:6], v1 offset:65535 +// GFX12: [0xff,0xff,0xd8,0xd9,0x01,0x00,0x00,0x05] + +ds_load_b64 v[5:6], v1 offset:0 +// GFX12: [0x00,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05] + +ds_load_b64 v[254:255], v255 offset:4 +// GFX12: [0x04,0x00,0xd8,0xd9,0xff,0x00,0x00,0xfe] + +ds_load_b96 v[5:7], v1 +// GFX12: [0x00,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05] + +ds_load_b96 v[5:7], v1 offset:65535 +// GFX12: [0xff,0xff,0xf8,0xdb,0x01,0x00,0x00,0x05] + +ds_load_b96 v[5:7], v1 offset:0 +// GFX12: [0x00,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05] + +ds_load_b96 v[253:255], v255 offset:4 +// GFX12: [0x04,0x00,0xf8,0xdb,0xff,0x00,0x00,0xfd] + +ds_load_i16 v5, v1 +// GFX12: [0x00,0x00,0xec,0xd8,0x01,0x00,0x00,0x05] + +ds_load_i16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xec,0xd8,0x01,0x00,0x00,0x05] + +ds_load_i16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xec,0xd8,0x01,0x00,0x00,0x05] + +ds_load_i16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xec,0xd8,0xff,0x00,0x00,0xff] + +ds_load_i8 v5, v1 +// GFX12: [0x00,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05] + +ds_load_i8 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xe4,0xd8,0x01,0x00,0x00,0x05] + +ds_load_i8 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05] + +ds_load_i8 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xe4,0xd8,0xff,0x00,0x00,0xff] + +ds_load_i8_d16 v5, v1 +// GFX12: [0x00,0x00,0x90,0xda,0x01,0x00,0x00,0x05] + +ds_load_i8_d16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x90,0xda,0x01,0x00,0x00,0x05] + +ds_load_i8_d16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0x90,0xda,0x01,0x00,0x00,0x05] + +ds_load_i8_d16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x90,0xda,0xff,0x00,0x00,0xff] + +ds_load_i8_d16_hi v5, v1 +// GFX12: [0x00,0x00,0x94,0xda,0x01,0x00,0x00,0x05] + +ds_load_i8_d16_hi v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x94,0xda,0x01,0x00,0x00,0x05] + +ds_load_i8_d16_hi v5, v1 offset:0 +// GFX12: [0x00,0x00,0x94,0xda,0x01,0x00,0x00,0x05] + +ds_load_i8_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x94,0xda,0xff,0x00,0x00,0xff] + +ds_load_u16 v5, v1 +// GFX12: [0x00,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05] + +ds_load_u16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xf0,0xd8,0x01,0x00,0x00,0x05] + +ds_load_u16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05] + +ds_load_u16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xf0,0xd8,0xff,0x00,0x00,0xff] + +ds_load_u16_d16 v5, v1 +// GFX12: [0x00,0x00,0x98,0xda,0x01,0x00,0x00,0x05] + +ds_load_u16_d16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x98,0xda,0x01,0x00,0x00,0x05] + +ds_load_u16_d16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0x98,0xda,0x01,0x00,0x00,0x05] + +ds_load_u16_d16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x98,0xda,0xff,0x00,0x00,0xff] + +ds_load_u16_d16_hi v5, v1 +// GFX12: [0x00,0x00,0x9c,0xda,0x01,0x00,0x00,0x05] + +ds_load_u16_d16_hi v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x9c,0xda,0x01,0x00,0x00,0x05] + +ds_load_u16_d16_hi v5, v1 offset:0 +// GFX12: [0x00,0x00,0x9c,0xda,0x01,0x00,0x00,0x05] + +ds_load_u16_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x9c,0xda,0xff,0x00,0x00,0xff] + +ds_load_u8 v5, v1 +// GFX12: [0x00,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05] + +ds_load_u8 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xe8,0xd8,0x01,0x00,0x00,0x05] + +ds_load_u8 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05] + +ds_load_u8 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xe8,0xd8,0xff,0x00,0x00,0xff] + +ds_load_u8_d16 v5, v1 +// GFX12: [0x00,0x00,0x88,0xda,0x01,0x00,0x00,0x05] + +ds_load_u8_d16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x88,0xda,0x01,0x00,0x00,0x05] + +ds_load_u8_d16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0x88,0xda,0x01,0x00,0x00,0x05] + +ds_load_u8_d16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x88,0xda,0xff,0x00,0x00,0xff] + +ds_load_u8_d16_hi v5, v1 +// GFX12: [0x00,0x00,0x8c,0xda,0x01,0x00,0x00,0x05] + +ds_load_u8_d16_hi v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x8c,0xda,0x01,0x00,0x00,0x05] + +ds_load_u8_d16_hi v5, v1 offset:0 +// GFX12: [0x00,0x00,0x8c,0xda,0x01,0x00,0x00,0x05] + +ds_load_u8_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x8c,0xda,0xff,0x00,0x00,0xff] + +ds_max_num_f32 v1, v2 +// GFX12: [0x00,0x00,0x4c,0xd8,0x01,0x02,0x00,0x00] + +ds_max_num_f32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x4c,0xd8,0x01,0x02,0x00,0x00] + +ds_max_num_f32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x4c,0xd8,0x01,0x02,0x00,0x00] + +ds_max_num_f32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x4c,0xd8,0xff,0xff,0x00,0x00] + +ds_max_num_f64 v1, v[2:3] +// GFX12: [0x00,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00] + +ds_max_num_f64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x4c,0xd9,0x01,0x02,0x00,0x00] + +ds_max_num_f64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00] + +ds_max_num_f64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x4c,0xd9,0xff,0xfe,0x00,0x00] + +ds_max_i32 v1, v2 +// GFX12: [0x00,0x00,0x18,0xd8,0x01,0x02,0x00,0x00] + +ds_max_i32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x18,0xd8,0x01,0x02,0x00,0x00] + +ds_max_i32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x18,0xd8,0x01,0x02,0x00,0x00] + +ds_max_i32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x18,0xd8,0xff,0xff,0x00,0x00] + +ds_max_i64 v1, v[2:3] +// GFX12: [0x00,0x00,0x18,0xd9,0x01,0x02,0x00,0x00] + +ds_max_i64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x18,0xd9,0x01,0x02,0x00,0x00] + +ds_max_i64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x18,0xd9,0x01,0x02,0x00,0x00] + +ds_max_i64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x18,0xd9,0xff,0xfe,0x00,0x00] + +ds_max_num_rtn_f32 v5, v1, v2 +// GFX12: [0x00,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05] + +ds_max_num_rtn_f32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xcc,0xd8,0x01,0x02,0x00,0x05] + +ds_max_num_rtn_f32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05] + +ds_max_num_rtn_f32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xcc,0xd8,0xff,0xff,0x00,0xff] + +ds_max_num_rtn_f64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05] + +ds_max_num_rtn_f64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xcc,0xd9,0x01,0x02,0x00,0x05] + +ds_max_num_rtn_f64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05] + +ds_max_num_rtn_f64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xcc,0xd9,0xff,0xfe,0x00,0xfe] + +ds_max_rtn_i32 v5, v1, v2 +// GFX12: [0x00,0x00,0x98,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_i32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x98,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_i32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x98,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_i32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x98,0xd8,0xff,0xff,0x00,0xff] + +ds_max_rtn_i64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x98,0xd9,0x01,0x02,0x00,0x05] + +ds_max_rtn_i64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x98,0xd9,0x01,0x02,0x00,0x05] + +ds_max_rtn_i64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x98,0xd9,0x01,0x02,0x00,0x05] + +ds_max_rtn_i64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x98,0xd9,0xff,0xfe,0x00,0xfe] + +ds_max_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0xa0,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xa0,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xa0,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xa0,0xd8,0xff,0xff,0x00,0xff] + +ds_max_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xa0,0xd9,0x01,0x02,0x00,0x05] + +ds_max_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xa0,0xd9,0x01,0x02,0x00,0x05] + +ds_max_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xa0,0xd9,0x01,0x02,0x00,0x05] + +ds_max_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xa0,0xd9,0xff,0xfe,0x00,0xfe] + +ds_max_u32 v1, v2 +// GFX12: [0x00,0x00,0x20,0xd8,0x01,0x02,0x00,0x00] + +ds_max_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x20,0xd8,0x01,0x02,0x00,0x00] + +ds_max_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x20,0xd8,0x01,0x02,0x00,0x00] + +ds_max_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x20,0xd8,0xff,0xff,0x00,0x00] + +ds_max_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x20,0xd9,0x01,0x02,0x00,0x00] + +ds_max_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x20,0xd9,0x01,0x02,0x00,0x00] + +ds_max_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x20,0xd9,0x01,0x02,0x00,0x00] + +ds_max_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x20,0xd9,0xff,0xfe,0x00,0x00] + +ds_min_num_f32 v1, v2 +// GFX12: [0x00,0x00,0x48,0xd8,0x01,0x02,0x00,0x00] + +ds_min_num_f32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x48,0xd8,0x01,0x02,0x00,0x00] + +ds_min_num_f32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x48,0xd8,0x01,0x02,0x00,0x00] + +ds_min_num_f32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x48,0xd8,0xff,0xff,0x00,0x00] + +ds_min_num_f64 v1, v[2:3] +// GFX12: [0x00,0x00,0x48,0xd9,0x01,0x02,0x00,0x00] + +ds_min_num_f64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x48,0xd9,0x01,0x02,0x00,0x00] + +ds_min_num_f64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x48,0xd9,0x01,0x02,0x00,0x00] + +ds_min_num_f64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x48,0xd9,0xff,0xfe,0x00,0x00] + +ds_min_i32 v1, v2 +// GFX12: [0x00,0x00,0x14,0xd8,0x01,0x02,0x00,0x00] + +ds_min_i32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x14,0xd8,0x01,0x02,0x00,0x00] + +ds_min_i32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x14,0xd8,0x01,0x02,0x00,0x00] + +ds_min_i32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x14,0xd8,0xff,0xff,0x00,0x00] + +ds_min_i64 v1, v[2:3] +// GFX12: [0x00,0x00,0x14,0xd9,0x01,0x02,0x00,0x00] + +ds_min_i64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x14,0xd9,0x01,0x02,0x00,0x00] + +ds_min_i64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x14,0xd9,0x01,0x02,0x00,0x00] + +ds_min_i64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x14,0xd9,0xff,0xfe,0x00,0x00] + +ds_min_num_rtn_f32 v5, v1, v2 +// GFX12: [0x00,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05] + +ds_min_num_rtn_f32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xc8,0xd8,0x01,0x02,0x00,0x05] + +ds_min_num_rtn_f32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05] + +ds_min_num_rtn_f32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xc8,0xd8,0xff,0xff,0x00,0xff] + +ds_min_num_rtn_f64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05] + +ds_min_num_rtn_f64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xc8,0xd9,0x01,0x02,0x00,0x05] + +ds_min_num_rtn_f64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05] + +ds_min_num_rtn_f64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xc8,0xd9,0xff,0xfe,0x00,0xfe] + +ds_min_rtn_i32 v5, v1, v2 +// GFX12: [0x00,0x00,0x94,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_i32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x94,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_i32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x94,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_i32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x94,0xd8,0xff,0xff,0x00,0xff] + +ds_min_rtn_i64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x94,0xd9,0x01,0x02,0x00,0x05] + +ds_min_rtn_i64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x94,0xd9,0x01,0x02,0x00,0x05] + +ds_min_rtn_i64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x94,0xd9,0x01,0x02,0x00,0x05] + +ds_min_rtn_i64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x94,0xd9,0xff,0xfe,0x00,0xfe] + +ds_min_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0x9c,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x9c,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x9c,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x9c,0xd8,0xff,0xff,0x00,0xff] + +ds_min_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x9c,0xd9,0x01,0x02,0x00,0x05] + +ds_min_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x9c,0xd9,0x01,0x02,0x00,0x05] + +ds_min_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x9c,0xd9,0x01,0x02,0x00,0x05] + +ds_min_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x9c,0xd9,0xff,0xfe,0x00,0xfe] + +ds_min_u32 v1, v2 +// GFX12: [0x00,0x00,0x1c,0xd8,0x01,0x02,0x00,0x00] + +ds_min_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x1c,0xd8,0x01,0x02,0x00,0x00] + +ds_min_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x1c,0xd8,0x01,0x02,0x00,0x00] + +ds_min_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x1c,0xd8,0xff,0xff,0x00,0x00] + +ds_min_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x1c,0xd9,0x01,0x02,0x00,0x00] + +ds_min_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x1c,0xd9,0x01,0x02,0x00,0x00] + +ds_min_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x1c,0xd9,0x01,0x02,0x00,0x00] + +ds_min_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x1c,0xd9,0xff,0xfe,0x00,0x00] + +ds_mskor_b32 v1, v2, v3 +// GFX12: [0x00,0x00,0x30,0xd8,0x01,0x02,0x03,0x00] + +ds_mskor_b32 v1, v2, v3 offset:65535 +// GFX12: [0xff,0xff,0x30,0xd8,0x01,0x02,0x03,0x00] + +ds_mskor_b32 v1, v2, v3 offset:0 +// GFX12: [0x00,0x00,0x30,0xd8,0x01,0x02,0x03,0x00] + +ds_mskor_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x30,0xd8,0xff,0xff,0xff,0x00] + +ds_mskor_b64 v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0x30,0xd9,0x01,0x02,0x03,0x00] + +ds_mskor_b64 v1, v[2:3], v[3:4] offset:65535 +// GFX12: [0xff,0xff,0x30,0xd9,0x01,0x02,0x03,0x00] + +ds_mskor_b64 v1, v[2:3], v[3:4] offset:0 +// GFX12: [0x00,0x00,0x30,0xd9,0x01,0x02,0x03,0x00] + +ds_mskor_b64 v255, v[254:255], v[254:255] offset:4 +// GFX12: [0x04,0x00,0x30,0xd9,0xff,0xfe,0xfe,0x00] + +ds_mskor_rtn_b32 v5, v1, v2, v3 +// GFX12: [0x00,0x00,0xb0,0xd8,0x01,0x02,0x03,0x05] + +ds_mskor_rtn_b32 v5, v1, v2, v3 offset:65535 +// GFX12: [0xff,0xff,0xb0,0xd8,0x01,0x02,0x03,0x05] + +ds_mskor_rtn_b32 v5, v1, v2, v3 offset:0 +// GFX12: [0x00,0x00,0xb0,0xd8,0x01,0x02,0x03,0x05] + +ds_mskor_rtn_b32 v255, v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xb0,0xd8,0xff,0xff,0xff,0xff] + +ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0xb0,0xd9,0x01,0x02,0x03,0x05] + +ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:65535 +// GFX12: [0xff,0xff,0xb0,0xd9,0x01,0x02,0x03,0x05] + +ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:0 +// GFX12: [0x00,0x00,0xb0,0xd9,0x01,0x02,0x03,0x05] + +ds_mskor_rtn_b64 v[254:255], v255, v[254:255], v[254:255] offset:4 +// GFX12: [0x04,0x00,0xb0,0xd9,0xff,0xfe,0xfe,0xfe] + +ds_or_b32 v1, v2 +// GFX12: [0x00,0x00,0x28,0xd8,0x01,0x02,0x00,0x00] + +ds_or_b32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x28,0xd8,0x01,0x02,0x00,0x00] + +ds_or_b32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x28,0xd8,0x01,0x02,0x00,0x00] + +ds_or_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x28,0xd8,0xff,0xff,0x00,0x00] + +ds_or_b64 v1, v[2:3] +// GFX12: [0x00,0x00,0x28,0xd9,0x01,0x02,0x00,0x00] + +ds_or_b64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x28,0xd9,0x01,0x02,0x00,0x00] + +ds_or_b64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x28,0xd9,0x01,0x02,0x00,0x00] + +ds_or_b64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x28,0xd9,0xff,0xfe,0x00,0x00] + +ds_or_rtn_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xa8,0xd8,0x01,0x02,0x00,0x05] + +ds_or_rtn_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xa8,0xd8,0x01,0x02,0x00,0x05] + +ds_or_rtn_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xa8,0xd8,0x01,0x02,0x00,0x05] + +ds_or_rtn_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xa8,0xd8,0xff,0xff,0x00,0xff] + +ds_or_rtn_b64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xa8,0xd9,0x01,0x02,0x00,0x05] + +ds_or_rtn_b64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xa8,0xd9,0x01,0x02,0x00,0x05] + +ds_or_rtn_b64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xa8,0xd9,0x01,0x02,0x00,0x05] + +ds_or_rtn_b64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xa8,0xd9,0xff,0xfe,0x00,0xfe] + +ds_permute_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xc8,0xda,0x01,0x02,0x00,0x05] + +ds_permute_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xc8,0xda,0x01,0x02,0x00,0x05] + +ds_permute_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xc8,0xda,0x01,0x02,0x00,0x05] + +ds_permute_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xc8,0xda,0xff,0xff,0x00,0xff] + +ds_read2_b32 v[5:6], v1 +// GFX12: [0x00,0x00,0xdc,0xd8,0x01,0x00,0x00,0x05] + +ds_read2_b32 v[5:6], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05] + +ds_read2_b32 v[5:6], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xdc,0xd8,0x01,0x00,0x00,0x05] + +ds_read2_b32 v[254:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xdc,0xd8,0xff,0x00,0x00,0xfe] + +ds_read2_b64 v[5:8], v1 +// GFX12: [0x00,0x00,0xdc,0xd9,0x01,0x00,0x00,0x05] + +ds_read2_b64 v[5:8], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05] + +ds_read2_b64 v[5:8], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xdc,0xd9,0x01,0x00,0x00,0x05] + +ds_read2_b64 v[252:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xdc,0xd9,0xff,0x00,0x00,0xfc] + +ds_read2st64_b32 v[5:6], v1 +// GFX12: [0x00,0x00,0xe0,0xd8,0x01,0x00,0x00,0x05] + +ds_read2st64_b32 v[5:6], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05] + +ds_read2st64_b32 v[5:6], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xe0,0xd8,0x01,0x00,0x00,0x05] + +ds_read2st64_b32 v[254:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xe0,0xd8,0xff,0x00,0x00,0xfe] + +ds_read2st64_b64 v[5:8], v1 +// GFX12: [0x00,0x00,0xe0,0xd9,0x01,0x00,0x00,0x05] + +ds_read2st64_b64 v[5:8], v1 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05] + +ds_read2st64_b64 v[5:8], v1 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xe0,0xd9,0x01,0x00,0x00,0x05] + +ds_read2st64_b64 v[252:255], v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xe0,0xd9,0xff,0x00,0x00,0xfc] + +ds_read_addtid_b32 v5 +// GFX12: [0x00,0x00,0xc4,0xda,0x00,0x00,0x00,0x05] + +ds_read_addtid_b32 v5 offset:65535 +// GFX12: [0xff,0xff,0xc4,0xda,0x00,0x00,0x00,0x05] + +ds_read_addtid_b32 v5 offset:0 +// GFX12: [0x00,0x00,0xc4,0xda,0x00,0x00,0x00,0x05] + +ds_read_addtid_b32 v255 offset:4 +// GFX12: [0x04,0x00,0xc4,0xda,0x00,0x00,0x00,0xff] + +ds_read_b128 v[5:8], v1 +// GFX12: [0x00,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05] + +ds_read_b128 v[5:8], v1 offset:65535 +// GFX12: [0xff,0xff,0xfc,0xdb,0x01,0x00,0x00,0x05] + +ds_read_b128 v[5:8], v1 offset:0 +// GFX12: [0x00,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05] + +ds_read_b128 v[252:255], v255 offset:4 +// GFX12: [0x04,0x00,0xfc,0xdb,0xff,0x00,0x00,0xfc] + +ds_read_b32 v5, v1 +// GFX12: [0x00,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05] + +ds_read_b32 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xd8,0xd8,0x01,0x00,0x00,0x05] + +ds_read_b32 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05] + +ds_read_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xd8,0xd8,0xff,0x00,0x00,0xff] + +ds_read_b64 v[5:6], v1 +// GFX12: [0x00,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05] + +ds_read_b64 v[5:6], v1 offset:65535 +// GFX12: [0xff,0xff,0xd8,0xd9,0x01,0x00,0x00,0x05] + +ds_read_b64 v[5:6], v1 offset:0 +// GFX12: [0x00,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05] + +ds_read_b64 v[254:255], v255 offset:4 +// GFX12: [0x04,0x00,0xd8,0xd9,0xff,0x00,0x00,0xfe] + +ds_read_b96 v[5:7], v1 +// GFX12: [0x00,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05] + +ds_read_b96 v[5:7], v1 offset:65535 +// GFX12: [0xff,0xff,0xf8,0xdb,0x01,0x00,0x00,0x05] + +ds_read_b96 v[5:7], v1 offset:0 +// GFX12: [0x00,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05] + +ds_read_b96 v[253:255], v255 offset:4 +// GFX12: [0x04,0x00,0xf8,0xdb,0xff,0x00,0x00,0xfd] + +ds_read_i16 v5, v1 +// GFX12: [0x00,0x00,0xec,0xd8,0x01,0x00,0x00,0x05] + +ds_read_i16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xec,0xd8,0x01,0x00,0x00,0x05] + +ds_read_i16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xec,0xd8,0x01,0x00,0x00,0x05] + +ds_read_i16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xec,0xd8,0xff,0x00,0x00,0xff] + +ds_read_i8 v5, v1 +// GFX12: [0x00,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05] + +ds_read_i8 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xe4,0xd8,0x01,0x00,0x00,0x05] + +ds_read_i8 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05] + +ds_read_i8 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xe4,0xd8,0xff,0x00,0x00,0xff] + +ds_read_i8_d16 v5, v1 +// GFX12: [0x00,0x00,0x90,0xda,0x01,0x00,0x00,0x05] + +ds_read_i8_d16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x90,0xda,0x01,0x00,0x00,0x05] + +ds_read_i8_d16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0x90,0xda,0x01,0x00,0x00,0x05] + +ds_read_i8_d16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x90,0xda,0xff,0x00,0x00,0xff] + +ds_read_i8_d16_hi v5, v1 +// GFX12: [0x00,0x00,0x94,0xda,0x01,0x00,0x00,0x05] + +ds_read_i8_d16_hi v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x94,0xda,0x01,0x00,0x00,0x05] + +ds_read_i8_d16_hi v5, v1 offset:0 +// GFX12: [0x00,0x00,0x94,0xda,0x01,0x00,0x00,0x05] + +ds_read_i8_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x94,0xda,0xff,0x00,0x00,0xff] + +ds_read_u16 v5, v1 +// GFX12: [0x00,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05] + +ds_read_u16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xf0,0xd8,0x01,0x00,0x00,0x05] + +ds_read_u16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05] + +ds_read_u16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xf0,0xd8,0xff,0x00,0x00,0xff] + +ds_read_u16_d16 v5, v1 +// GFX12: [0x00,0x00,0x98,0xda,0x01,0x00,0x00,0x05] + +ds_read_u16_d16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x98,0xda,0x01,0x00,0x00,0x05] + +ds_read_u16_d16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0x98,0xda,0x01,0x00,0x00,0x05] + +ds_read_u16_d16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x98,0xda,0xff,0x00,0x00,0xff] + +ds_read_u16_d16_hi v5, v1 +// GFX12: [0x00,0x00,0x9c,0xda,0x01,0x00,0x00,0x05] + +ds_read_u16_d16_hi v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x9c,0xda,0x01,0x00,0x00,0x05] + +ds_read_u16_d16_hi v5, v1 offset:0 +// GFX12: [0x00,0x00,0x9c,0xda,0x01,0x00,0x00,0x05] + +ds_read_u16_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x9c,0xda,0xff,0x00,0x00,0xff] + +ds_read_u8 v5, v1 +// GFX12: [0x00,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05] + +ds_read_u8 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0xe8,0xd8,0x01,0x00,0x00,0x05] + +ds_read_u8 v5, v1 offset:0 +// GFX12: [0x00,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05] + +ds_read_u8 v255, v255 offset:4 +// GFX12: [0x04,0x00,0xe8,0xd8,0xff,0x00,0x00,0xff] + +ds_read_u8_d16 v5, v1 +// GFX12: [0x00,0x00,0x88,0xda,0x01,0x00,0x00,0x05] + +ds_read_u8_d16 v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x88,0xda,0x01,0x00,0x00,0x05] + +ds_read_u8_d16 v5, v1 offset:0 +// GFX12: [0x00,0x00,0x88,0xda,0x01,0x00,0x00,0x05] + +ds_read_u8_d16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x88,0xda,0xff,0x00,0x00,0xff] + +ds_read_u8_d16_hi v5, v1 +// GFX12: [0x00,0x00,0x8c,0xda,0x01,0x00,0x00,0x05] + +ds_read_u8_d16_hi v5, v1 offset:65535 +// GFX12: [0xff,0xff,0x8c,0xda,0x01,0x00,0x00,0x05] + +ds_read_u8_d16_hi v5, v1 offset:0 +// GFX12: [0x00,0x00,0x8c,0xda,0x01,0x00,0x00,0x05] + +ds_read_u8_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x8c,0xda,0xff,0x00,0x00,0xff] + +ds_rsub_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0x88,0xd8,0x01,0x02,0x00,0x05] + +ds_rsub_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x88,0xd8,0x01,0x02,0x00,0x05] + +ds_rsub_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x88,0xd8,0x01,0x02,0x00,0x05] + +ds_rsub_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x88,0xd8,0xff,0xff,0x00,0xff] + +ds_rsub_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x88,0xd9,0x01,0x02,0x00,0x05] + +ds_rsub_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x88,0xd9,0x01,0x02,0x00,0x05] + +ds_rsub_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x88,0xd9,0x01,0x02,0x00,0x05] + +ds_rsub_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x88,0xd9,0xff,0xfe,0x00,0xfe] + +ds_rsub_u32 v1, v2 +// GFX12: [0x00,0x00,0x08,0xd8,0x01,0x02,0x00,0x00] + +ds_rsub_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x08,0xd8,0x01,0x02,0x00,0x00] + +ds_rsub_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x08,0xd8,0x01,0x02,0x00,0x00] + +ds_rsub_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x08,0xd8,0xff,0xff,0x00,0x00] + +ds_rsub_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x08,0xd9,0x01,0x02,0x00,0x00] + +ds_rsub_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x08,0xd9,0x01,0x02,0x00,0x00] + +ds_rsub_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x08,0xd9,0x01,0x02,0x00,0x00] + +ds_rsub_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x08,0xd9,0xff,0xfe,0x00,0x00] + +ds_store_2addr_b32 v1, v2, v3 +// GFX12: [0x00,0x00,0x38,0xd8,0x01,0x02,0x03,0x00] + +ds_store_2addr_b32 v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x38,0xd8,0x01,0x02,0x03,0x00] + +ds_store_2addr_b32 v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x38,0xd8,0x01,0x02,0x03,0x00] + +ds_store_2addr_b32 v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x38,0xd8,0xff,0xff,0xff,0x00] + +ds_store_2addr_b64 v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0x38,0xd9,0x01,0x02,0x03,0x00] + +ds_store_2addr_b64 v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x38,0xd9,0x01,0x02,0x03,0x00] + +ds_store_2addr_b64 v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x38,0xd9,0x01,0x02,0x03,0x00] + +ds_store_2addr_b64 v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x38,0xd9,0xff,0xfe,0xfe,0x00] + +ds_store_2addr_stride64_b32 v1, v2, v3 +// GFX12: [0x00,0x00,0x3c,0xd8,0x01,0x02,0x03,0x00] + +ds_store_2addr_stride64_b32 v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x3c,0xd8,0x01,0x02,0x03,0x00] + +ds_store_2addr_stride64_b32 v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x3c,0xd8,0x01,0x02,0x03,0x00] + +ds_store_2addr_stride64_b32 v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x3c,0xd8,0xff,0xff,0xff,0x00] + +ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0x3c,0xd9,0x01,0x02,0x03,0x00] + +ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00] + +ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x3c,0xd9,0x01,0x02,0x03,0x00] + +ds_store_2addr_stride64_b64 v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x3c,0xd9,0xff,0xfe,0xfe,0x00] + +ds_store_addtid_b32 v1 +// GFX12: [0x00,0x00,0xc0,0xda,0x00,0x01,0x00,0x00] + +ds_store_addtid_b32 v1 offset:65535 +// GFX12: [0xff,0xff,0xc0,0xda,0x00,0x01,0x00,0x00] + +ds_store_addtid_b32 v1 offset:0 +// GFX12: [0x00,0x00,0xc0,0xda,0x00,0x01,0x00,0x00] + +ds_store_addtid_b32 v255 offset:4 +// GFX12: [0x04,0x00,0xc0,0xda,0x00,0xff,0x00,0x00] + +ds_store_b128 v1, v[2:5] +// GFX12: [0x00,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00] + +ds_store_b128 v1, v[2:5] offset:65535 +// GFX12: [0xff,0xff,0x7c,0xdb,0x01,0x02,0x00,0x00] + +ds_store_b128 v1, v[2:5] offset:0 +// GFX12: [0x00,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00] + +ds_store_b128 v255, v[252:255] offset:4 +// GFX12: [0x04,0x00,0x7c,0xdb,0xff,0xfc,0x00,0x00] + +ds_store_b16 v1, v2 +// GFX12: [0x00,0x00,0x7c,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b16 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x7c,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b16 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x7c,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x7c,0xd8,0xff,0xff,0x00,0x00] + +ds_store_b16_d16_hi v1, v2 +// GFX12: [0x00,0x00,0x84,0xda,0x01,0x02,0x00,0x00] + +ds_store_b16_d16_hi v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x84,0xda,0x01,0x02,0x00,0x00] + +ds_store_b16_d16_hi v1, v2 offset:0 +// GFX12: [0x00,0x00,0x84,0xda,0x01,0x02,0x00,0x00] + +ds_store_b16_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x84,0xda,0xff,0xff,0x00,0x00] + +ds_store_b32 v1, v2 +// GFX12: [0x00,0x00,0x34,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x34,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x34,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x34,0xd8,0xff,0xff,0x00,0x00] + +ds_store_b64 v1, v[2:3] +// GFX12: [0x00,0x00,0x34,0xd9,0x01,0x02,0x00,0x00] + +ds_store_b64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x34,0xd9,0x01,0x02,0x00,0x00] + +ds_store_b64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x34,0xd9,0x01,0x02,0x00,0x00] + +ds_store_b64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x34,0xd9,0xff,0xfe,0x00,0x00] + +ds_store_b8 v1, v2 +// GFX12: [0x00,0x00,0x78,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b8 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x78,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b8 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x78,0xd8,0x01,0x02,0x00,0x00] + +ds_store_b8 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x78,0xd8,0xff,0xff,0x00,0x00] + +ds_store_b8_d16_hi v1, v2 +// GFX12: [0x00,0x00,0x80,0xda,0x01,0x02,0x00,0x00] + +ds_store_b8_d16_hi v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x80,0xda,0x01,0x02,0x00,0x00] + +ds_store_b8_d16_hi v1, v2 offset:0 +// GFX12: [0x00,0x00,0x80,0xda,0x01,0x02,0x00,0x00] + +ds_store_b8_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x80,0xda,0xff,0xff,0x00,0x00] + +ds_store_b96 v1, v[2:4] +// GFX12: [0x00,0x00,0x78,0xdb,0x01,0x02,0x00,0x00] + +ds_store_b96 v1, v[2:4] offset:65535 +// GFX12: [0xff,0xff,0x78,0xdb,0x01,0x02,0x00,0x00] + +ds_store_b96 v1, v[2:4] offset:0 +// GFX12: [0x00,0x00,0x78,0xdb,0x01,0x02,0x00,0x00] + +ds_store_b96 v255, v[253:255] offset:4 +// GFX12: [0x04,0x00,0x78,0xdb,0xff,0xfd,0x00,0x00] + +ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 +// GFX12: [0x00,0x00,0xb8,0xd8,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xb8,0xd8,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_rtn_b32 v[254:255], v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xb8,0xd8,0xff,0xff,0xff,0xfe] + +ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0xb8,0xd9,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xb8,0xd9,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_rtn_b64 v[252:255], v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xb8,0xd9,0xff,0xfe,0xfe,0xfc] + +ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 +// GFX12: [0x00,0x00,0xbc,0xd8,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xbc,0xd8,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_stride64_rtn_b32 v[254:255], v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xbc,0xd8,0xff,0xff,0xff,0xfe] + +ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0xbc,0xd9,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xbc,0xd9,0x01,0x02,0x03,0x05] + +ds_storexchg_2addr_stride64_rtn_b64 v[252:255], v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xbc,0xd9,0xff,0xfe,0xfe,0xfc] + +ds_storexchg_rtn_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xb4,0xd8,0x01,0x02,0x00,0x05] + +ds_storexchg_rtn_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xb4,0xd8,0x01,0x02,0x00,0x05] + +ds_storexchg_rtn_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xb4,0xd8,0x01,0x02,0x00,0x05] + +ds_storexchg_rtn_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xb4,0xd8,0xff,0xff,0x00,0xff] + +ds_storexchg_rtn_b64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05] + +ds_storexchg_rtn_b64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xb4,0xd9,0x01,0x02,0x00,0x05] + +ds_storexchg_rtn_b64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05] + +ds_storexchg_rtn_b64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xb4,0xd9,0xff,0xfe,0x00,0xfe] + +ds_sub_clamp_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0xa4,0xda,0x01,0x02,0x00,0x05] + +ds_sub_clamp_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xa4,0xda,0x01,0x02,0x00,0x05] + +ds_sub_clamp_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xa4,0xda,0x01,0x02,0x00,0x05] + +ds_sub_clamp_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xa4,0xda,0xff,0xff,0x00,0xff] + +ds_sub_clamp_u32 v1, v2 +// GFX12: [0x00,0x00,0x64,0xda,0x01,0x02,0x00,0x00] + +ds_sub_clamp_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x64,0xda,0x01,0x02,0x00,0x00] + +ds_sub_clamp_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x64,0xda,0x01,0x02,0x00,0x00] + +ds_sub_clamp_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x64,0xda,0xff,0xff,0x00,0x00] + +ds_sub_rtn_u32 v5, v1, v2 +// GFX12: [0x00,0x00,0x84,0xd8,0x01,0x02,0x00,0x05] + +ds_sub_rtn_u32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x84,0xd8,0x01,0x02,0x00,0x05] + +ds_sub_rtn_u32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0x84,0xd8,0x01,0x02,0x00,0x05] + +ds_sub_rtn_u32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0x84,0xd8,0xff,0xff,0x00,0xff] + +ds_sub_rtn_u64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0x84,0xd9,0x01,0x02,0x00,0x05] + +ds_sub_rtn_u64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x84,0xd9,0x01,0x02,0x00,0x05] + +ds_sub_rtn_u64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x84,0xd9,0x01,0x02,0x00,0x05] + +ds_sub_rtn_u64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x84,0xd9,0xff,0xfe,0x00,0xfe] + +ds_sub_u32 v1, v2 +// GFX12: [0x00,0x00,0x04,0xd8,0x01,0x02,0x00,0x00] + +ds_sub_u32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x04,0xd8,0x01,0x02,0x00,0x00] + +ds_sub_u32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x04,0xd8,0x01,0x02,0x00,0x00] + +ds_sub_u32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x04,0xd8,0xff,0xff,0x00,0x00] + +ds_sub_u64 v1, v[2:3] +// GFX12: [0x00,0x00,0x04,0xd9,0x01,0x02,0x00,0x00] + +ds_sub_u64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x04,0xd9,0x01,0x02,0x00,0x00] + +ds_sub_u64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x04,0xd9,0x01,0x02,0x00,0x00] + +ds_sub_u64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x04,0xd9,0xff,0xfe,0x00,0x00] + +ds_write2_b32 v1, v2, v3 +// GFX12: [0x00,0x00,0x38,0xd8,0x01,0x02,0x03,0x00] + +ds_write2_b32 v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x38,0xd8,0x01,0x02,0x03,0x00] + +ds_write2_b32 v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x38,0xd8,0x01,0x02,0x03,0x00] + +ds_write2_b32 v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x38,0xd8,0xff,0xff,0xff,0x00] + +ds_write2_b64 v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0x38,0xd9,0x01,0x02,0x03,0x00] + +ds_write2_b64 v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x38,0xd9,0x01,0x02,0x03,0x00] + +ds_write2_b64 v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x38,0xd9,0x01,0x02,0x03,0x00] + +ds_write2_b64 v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x38,0xd9,0xff,0xfe,0xfe,0x00] + +ds_write2st64_b32 v1, v2, v3 +// GFX12: [0x00,0x00,0x3c,0xd8,0x01,0x02,0x03,0x00] + +ds_write2st64_b32 v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x3c,0xd8,0x01,0x02,0x03,0x00] + +ds_write2st64_b32 v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x3c,0xd8,0x01,0x02,0x03,0x00] + +ds_write2st64_b32 v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x3c,0xd8,0xff,0xff,0xff,0x00] + +ds_write2st64_b64 v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0x3c,0xd9,0x01,0x02,0x03,0x00] + +ds_write2st64_b64 v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00] + +ds_write2st64_b64 v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0x3c,0xd9,0x01,0x02,0x03,0x00] + +ds_write2st64_b64 v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0x3c,0xd9,0xff,0xfe,0xfe,0x00] + +ds_write_addtid_b32 v1 +// GFX12: [0x00,0x00,0xc0,0xda,0x00,0x01,0x00,0x00] + +ds_write_addtid_b32 v1 offset:65535 +// GFX12: [0xff,0xff,0xc0,0xda,0x00,0x01,0x00,0x00] + +ds_write_addtid_b32 v1 offset:0 +// GFX12: [0x00,0x00,0xc0,0xda,0x00,0x01,0x00,0x00] + +ds_write_addtid_b32 v255 offset:4 +// GFX12: [0x04,0x00,0xc0,0xda,0x00,0xff,0x00,0x00] + +ds_write_b128 v1, v[2:5] +// GFX12: [0x00,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00] + +ds_write_b128 v1, v[2:5] offset:65535 +// GFX12: [0xff,0xff,0x7c,0xdb,0x01,0x02,0x00,0x00] + +ds_write_b128 v1, v[2:5] offset:0 +// GFX12: [0x00,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00] + +ds_write_b128 v255, v[252:255] offset:4 +// GFX12: [0x04,0x00,0x7c,0xdb,0xff,0xfc,0x00,0x00] + +ds_write_b16 v1, v2 +// GFX12: [0x00,0x00,0x7c,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b16 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x7c,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b16 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x7c,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b16 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x7c,0xd8,0xff,0xff,0x00,0x00] + +ds_write_b16_d16_hi v1, v2 +// GFX12: [0x00,0x00,0x84,0xda,0x01,0x02,0x00,0x00] + +ds_write_b16_d16_hi v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x84,0xda,0x01,0x02,0x00,0x00] + +ds_write_b16_d16_hi v1, v2 offset:0 +// GFX12: [0x00,0x00,0x84,0xda,0x01,0x02,0x00,0x00] + +ds_write_b16_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x84,0xda,0xff,0xff,0x00,0x00] + +ds_write_b32 v1, v2 +// GFX12: [0x00,0x00,0x34,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x34,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x34,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x34,0xd8,0xff,0xff,0x00,0x00] + +ds_write_b64 v1, v[2:3] +// GFX12: [0x00,0x00,0x34,0xd9,0x01,0x02,0x00,0x00] + +ds_write_b64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x34,0xd9,0x01,0x02,0x00,0x00] + +ds_write_b64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x34,0xd9,0x01,0x02,0x00,0x00] + +ds_write_b64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x34,0xd9,0xff,0xfe,0x00,0x00] + +ds_write_b8 v1, v2 +// GFX12: [0x00,0x00,0x78,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b8 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x78,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b8 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x78,0xd8,0x01,0x02,0x00,0x00] + +ds_write_b8 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x78,0xd8,0xff,0xff,0x00,0x00] + +ds_write_b8_d16_hi v1, v2 +// GFX12: [0x00,0x00,0x80,0xda,0x01,0x02,0x00,0x00] + +ds_write_b8_d16_hi v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x80,0xda,0x01,0x02,0x00,0x00] + +ds_write_b8_d16_hi v1, v2 offset:0 +// GFX12: [0x00,0x00,0x80,0xda,0x01,0x02,0x00,0x00] + +ds_write_b8_d16_hi v255, v255 offset:4 +// GFX12: [0x04,0x00,0x80,0xda,0xff,0xff,0x00,0x00] + +ds_write_b96 v1, v[2:4] +// GFX12: [0x00,0x00,0x78,0xdb,0x01,0x02,0x00,0x00] + +ds_write_b96 v1, v[2:4] offset:65535 +// GFX12: [0xff,0xff,0x78,0xdb,0x01,0x02,0x00,0x00] + +ds_write_b96 v1, v[2:4] offset:0 +// GFX12: [0x00,0x00,0x78,0xdb,0x01,0x02,0x00,0x00] + +ds_write_b96 v255, v[253:255] offset:4 +// GFX12: [0x04,0x00,0x78,0xdb,0xff,0xfd,0x00,0x00] + +ds_wrxchg2_rtn_b32 v[5:6], v1, v2, v3 +// GFX12: [0x00,0x00,0xb8,0xd8,0x01,0x02,0x03,0x05] + +ds_wrxchg2_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05] + +ds_wrxchg2_rtn_b32 v[5:6], v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xb8,0xd8,0x01,0x02,0x03,0x05] + +ds_wrxchg2_rtn_b32 v[254:255], v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xb8,0xd8,0xff,0xff,0xff,0xfe] + +ds_wrxchg2_rtn_b64 v[5:8], v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0xb8,0xd9,0x01,0x02,0x03,0x05] + +ds_wrxchg2_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05] + +ds_wrxchg2_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xb8,0xd9,0x01,0x02,0x03,0x05] + +ds_wrxchg2_rtn_b64 v[252:255], v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xb8,0xd9,0xff,0xfe,0xfe,0xfc] + +ds_wrxchg2st64_rtn_b32 v[5:6], v1, v2, v3 +// GFX12: [0x00,0x00,0xbc,0xd8,0x01,0x02,0x03,0x05] + +ds_wrxchg2st64_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05] + +ds_wrxchg2st64_rtn_b32 v[5:6], v1, v2, v3 offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xbc,0xd8,0x01,0x02,0x03,0x05] + +ds_wrxchg2st64_rtn_b32 v[254:255], v255, v255, v255 offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xbc,0xd8,0xff,0xff,0xff,0xfe] + +ds_wrxchg2st64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] +// GFX12: [0x00,0x00,0xbc,0xd9,0x01,0x02,0x03,0x05] + +ds_wrxchg2st64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:255 +// GFX12: [0x7f,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05] + +ds_wrxchg2st64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:0 offset1:0 +// GFX12: [0x00,0x00,0xbc,0xd9,0x01,0x02,0x03,0x05] + +ds_wrxchg2st64_rtn_b64 v[252:255], v255, v[254:255], v[254:255] offset0:16 offset1:1 +// GFX12: [0x10,0x01,0xbc,0xd9,0xff,0xfe,0xfe,0xfc] + +ds_wrxchg_rtn_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xb4,0xd8,0x01,0x02,0x00,0x05] + +ds_wrxchg_rtn_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xb4,0xd8,0x01,0x02,0x00,0x05] + +ds_wrxchg_rtn_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xb4,0xd8,0x01,0x02,0x00,0x05] + +ds_wrxchg_rtn_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xb4,0xd8,0xff,0xff,0x00,0xff] + +ds_wrxchg_rtn_b64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05] + +ds_wrxchg_rtn_b64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xb4,0xd9,0x01,0x02,0x00,0x05] + +ds_wrxchg_rtn_b64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05] + +ds_wrxchg_rtn_b64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xb4,0xd9,0xff,0xfe,0x00,0xfe] + +ds_xor_b32 v1, v2 +// GFX12: [0x00,0x00,0x2c,0xd8,0x01,0x02,0x00,0x00] + +ds_xor_b32 v1, v2 offset:65535 +// GFX12: [0xff,0xff,0x2c,0xd8,0x01,0x02,0x00,0x00] + +ds_xor_b32 v1, v2 offset:0 +// GFX12: [0x00,0x00,0x2c,0xd8,0x01,0x02,0x00,0x00] + +ds_xor_b32 v255, v255 offset:4 +// GFX12: [0x04,0x00,0x2c,0xd8,0xff,0xff,0x00,0x00] + +ds_xor_b64 v1, v[2:3] +// GFX12: [0x00,0x00,0x2c,0xd9,0x01,0x02,0x00,0x00] + +ds_xor_b64 v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0x2c,0xd9,0x01,0x02,0x00,0x00] + +ds_xor_b64 v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0x2c,0xd9,0x01,0x02,0x00,0x00] + +ds_xor_b64 v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0x2c,0xd9,0xff,0xfe,0x00,0x00] + +ds_xor_rtn_b32 v5, v1, v2 +// GFX12: [0x00,0x00,0xac,0xd8,0x01,0x02,0x00,0x05] + +ds_xor_rtn_b32 v5, v1, v2 offset:65535 +// GFX12: [0xff,0xff,0xac,0xd8,0x01,0x02,0x00,0x05] + +ds_xor_rtn_b32 v5, v1, v2 offset:0 +// GFX12: [0x00,0x00,0xac,0xd8,0x01,0x02,0x00,0x05] + +ds_xor_rtn_b32 v255, v255, v255 offset:4 +// GFX12: [0x04,0x00,0xac,0xd8,0xff,0xff,0x00,0xff] + +ds_xor_rtn_b64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xac,0xd9,0x01,0x02,0x00,0x05] + +ds_xor_rtn_b64 v[5:6], v1, v[2:3] offset:65535 +// GFX12: [0xff,0xff,0xac,0xd9,0x01,0x02,0x00,0x05] + +ds_xor_rtn_b64 v[5:6], v1, v[2:3] offset:0 +// GFX12: [0x00,0x00,0xac,0xd9,0x01,0x02,0x00,0x05] + +ds_xor_rtn_b64 v[254:255], v255, v[254:255] offset:4 +// GFX12: [0x04,0x00,0xac,0xd9,0xff,0xfe,0x00,0xfe] + +ds_swizzle_b32 v8, v2 +// GFX12: [0x00,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:0 +// GFX12: [0x00,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:0xFFFF +// GFX12: [0xff,0xff,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:swizzle(QUAD_PERM, 0, 1, 2, 3) +// GFX12: [0xe4,0x80,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:swizzle(SWAP,16) +// GFX12: [0x1f,0x40,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:swizzle(REVERSE,8) +// GFX12: [0x1f,0x1c,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:swizzle(BROADCAST,4,1) +// GFX12: [0x3c,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:swizzle(BROADCAST,8,7) +// GFX12: [0xf8,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08] + +ds_swizzle_b32 v8, v2 offset:swizzle(BITMASK_PERM, "01pip") +// GFX12: [0x07,0x09,0xd4,0xd8,0x02,0x00,0x00,0x08] diff --git a/llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s b/llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s new file mode 100644 index 0000000000000..aa4b028160175 --- /dev/null +++ b/llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s @@ -0,0 +1,25 @@ +// RUN: llvm-mc -arch=amdgcn -mcpu=gfx1200 -show-encoding %s | FileCheck --check-prefix=GFX12 %s + +ds_max_f32 v1, v2 +// GFX12: [0x00,0x00,0x4c,0xd8,0x01,0x02,0x00,0x00] + +ds_max_f64 v1, v[2:3] +// GFX12: [0x00,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00] + +ds_max_rtn_f32 v5, v1, v2 +// GFX12: [0x00,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05] + +ds_max_rtn_f64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05] + +ds_min_f32 v1, v2 +// GFX12: [0x00,0x00,0x48,0xd8,0x01,0x02,0x00,0x00] + +ds_min_f64 v1, v[2:3] +// GFX12: [0x00,0x00,0x48,0xd9,0x01,0x02,0x00,0x00] + +ds_min_rtn_f32 v5, v1, v2 +// GFX12: [0x00,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05] + +ds_min_rtn_f64 v[5:6], v1, v[2:3] +// GFX12: [0x00,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05] diff --git a/llvm/test/MC/AMDGPU/gfx12_unsupported.s b/llvm/test/MC/AMDGPU/gfx12_unsupported.s index c9eb29c18a1a6..3b9e0446539bc 100644 --- a/llvm/test/MC/AMDGPU/gfx12_unsupported.s +++ b/llvm/test/MC/AMDGPU/gfx12_unsupported.s @@ -9,3 +9,45 @@ s_subvector_loop_begin s0, 0x1234 s_subvector_loop_end s0, 0x1234 // CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_cmpstore_f32 v0, v1, v2 +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_cmpstore_rtn_f32 v0, v1, v2, v3 +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_cmpstore_f64 v0, v[1:2], v[3:4] +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_cmpstore_rtn_f64 v[0:1], v2, v[3:4], v[5:6] +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_add_gs_reg_rtn v[0:1], v2 gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_sub_gs_reg_rtn v[0:1], v2 gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_wrap_rtn_b32 v0, v1, v2, v3 +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_gws_sema_release_all gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_gws_init v0 gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_gws_sema_v gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_gws_sema_br v0 gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_gws_sema_p gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_gws_barrier v0 gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU + +ds_ordered_count v0, v1 gds +// CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_ds.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_ds.txt new file mode 100644 index 0000000000000..d3c0e71494990 --- /dev/null +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_ds.txt @@ -0,0 +1,3070 @@ +# RUN: llvm-mc -arch=amdgcn -mcpu=gfx1200 -disassemble -show-encoding < %s | FileCheck -strict-whitespace -check-prefix=GFX12 %s + +# GFX12: ds_add_f32 v0, v1 ; encoding: [0x00,0x00,0x54,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x54,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_add_f32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x54,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x54,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_add_f32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x54,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x54,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_add_f32 v0, v254 ; encoding: [0x00,0x00,0x54,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x54,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_add_f32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x54,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x54,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_add_f32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x54,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x54,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_add_f32 v255, v1 ; encoding: [0x00,0x00,0x54,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x54,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_add_f32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x54,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x54,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_add_f32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x54,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x54,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_add_f32 v255, v254 ; encoding: [0x00,0x00,0x54,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x54,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_add_f32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x54,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x54,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_add_f32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x54,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x54,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v0, v1, v2 ; encoding: [0x00,0x00,0xe4,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0xe4,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xe4,0xd9,0x01,0x02,0x00,0x00] +0x34,0x12,0xe4,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0xe4,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v0, v254, v253 ; encoding: [0x00,0x00,0xe4,0xd9,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xe4,0xd9,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xe4,0xd9,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xe4,0xd9,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd9,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xe4,0xd9,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_add_rtn_f32 v255, v1, v253 ; encoding: [0x00,0x00,0xe4,0xd9,0x01,0xfd,0x00,0xff] +0x00,0x00,0xe4,0xd9,0x01,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xe4,0xd9,0x01,0xfd,0x00,0xff] +0x34,0x12,0xe4,0xd9,0x01,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd9,0x01,0xfd,0x00,0xff] +0xff,0xff,0xe4,0xd9,0x01,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v254, v2 ; encoding: [0x00,0x00,0xe4,0xd9,0xfe,0x02,0x00,0xff] +0x00,0x00,0xe4,0xd9,0xfe,0x02,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xe4,0xd9,0xfe,0x02,0x00,0xff] +0x34,0x12,0xe4,0xd9,0xfe,0x02,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd9,0xfe,0x02,0x00,0xff] +0xff,0xff,0xe4,0xd9,0xfe,0x02,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v254, v253 ; encoding: [0x00,0x00,0xe4,0xd9,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xe4,0xd9,0xfe,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xe4,0xd9,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xe4,0xd9,0xfe,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_f32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd9,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xe4,0xd9,0xfe,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0x80,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x80,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x80,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x80,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x80,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x80,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0x80,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x80,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_add_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x80,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x80,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_add_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x80,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x80,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_add_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0x80,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x80,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x80,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x80,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x80,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x80,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0x80,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x80,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x80,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x80,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x80,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x80,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0x80,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x80,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x80,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x80,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x80,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x80,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_add_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x80,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x80,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_add_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x80,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x80,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_add_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x80,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x80,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_add_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x80,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x80,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_add_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x80,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x80,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_add_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x80,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x80,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_add_u32 v0, v1 ; encoding: [0x00,0x00,0x00,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x00,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_add_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x00,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x00,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_add_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x00,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x00,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_add_u32 v0, v254 ; encoding: [0x00,0x00,0x00,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x00,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_add_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x00,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x00,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_add_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x00,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x00,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_add_u32 v255, v1 ; encoding: [0x00,0x00,0x00,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x00,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_add_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x00,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x00,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_add_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x00,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x00,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_add_u32 v255, v254 ; encoding: [0x00,0x00,0x00,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x00,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_add_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x00,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x00,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_add_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x00,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x00,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_add_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x00,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x00,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_add_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x00,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x00,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x00,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x00,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x00,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x00,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_add_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x00,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x00,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_and_b32 v0, v1 ; encoding: [0x00,0x00,0x24,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x24,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_and_b32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x24,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x24,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_and_b32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x24,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x24,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_and_b32 v0, v254 ; encoding: [0x00,0x00,0x24,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x24,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_and_b32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x24,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x24,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_and_b32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x24,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x24,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_and_b32 v255, v1 ; encoding: [0x00,0x00,0x24,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x24,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_and_b32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x24,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x24,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_and_b32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x24,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x24,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_and_b32 v255, v254 ; encoding: [0x00,0x00,0x24,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x24,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_and_b32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x24,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x24,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_and_b32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x24,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x24,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_and_b64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x24,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x24,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_and_b64 v1, v[2:3] ; encoding: [0x00,0x00,0x24,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x24,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_and_b64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x24,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x24,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_and_b64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x24,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x24,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_and_b64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x24,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x24,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v0, v1, v2 ; encoding: [0x00,0x00,0xa4,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0xa4,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xa4,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0xa4,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xa4,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0xa4,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v0, v254, v253 ; encoding: [0x00,0x00,0xa4,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xa4,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa4,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xa4,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa4,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xa4,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_and_rtn_b32 v255, v1, v253 ; encoding: [0x00,0x00,0xa4,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0xa4,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xa4,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0xa4,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xa4,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0xa4,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v254, v2 ; encoding: [0x00,0x00,0xa4,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0xa4,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xa4,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0xa4,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xa4,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0xa4,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v254, v253 ; encoding: [0x00,0x00,0xa4,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xa4,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa4,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xa4,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_and_rtn_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa4,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xa4,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_and_rtn_b64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa4,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xa4,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_and_rtn_b64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xa4,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xa4,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_and_rtn_b64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xa4,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xa4,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_and_rtn_b64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xa4,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xa4,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_and_rtn_b64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa4,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xa4,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_and_rtn_b64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa4,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xa4,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_append v255 offset:65535 ; encoding: [0xff,0xff,0xf8,0xd8,0x00,0x00,0x00,0xff] +0xff,0xff,0xf8,0xd8,0x00,0x00,0x00,0xff + +# GFX12: ds_append v5 ; encoding: [0x00,0x00,0xf8,0xd8,0x00,0x00,0x00,0x05] +0x00,0x00,0xf8,0xd8,0x00,0x00,0x00,0x05 + +# GFX12: ds_append v5 offset:4 ; encoding: [0x04,0x00,0xf8,0xd8,0x00,0x00,0x00,0x05] +0x04,0x00,0xf8,0xd8,0x00,0x00,0x00,0x05 + +# GFX12: ds_append v5 offset:65535 ; encoding: [0xff,0xff,0xf8,0xd8,0x00,0x00,0x00,0x05] +0xff,0xff,0xf8,0xd8,0x00,0x00,0x00,0x05 + +# GFX12: ds_bpermute_b32 v0, v1, v2 ; encoding: [0x00,0x00,0xcc,0xda,0x01,0x02,0x00,0x00] +0x00,0x00,0xcc,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_bpermute_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xcc,0xda,0x01,0x02,0x00,0x00] +0x34,0x12,0xcc,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_bpermute_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xcc,0xda,0x01,0x02,0x00,0x00] +0xff,0xff,0xcc,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_bpermute_b32 v0, v254, v253 ; encoding: [0x00,0x00,0xcc,0xda,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xcc,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_bpermute_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xcc,0xda,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xcc,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_bpermute_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xcc,0xda,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xcc,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_bpermute_b32 v255, v1, v253 ; encoding: [0x00,0x00,0xcc,0xda,0x01,0xfd,0x00,0xff] +0x00,0x00,0xcc,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xcc,0xda,0x01,0xfd,0x00,0xff] +0x34,0x12,0xcc,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xcc,0xda,0x01,0xfd,0x00,0xff] +0xff,0xff,0xcc,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v254, v2 ; encoding: [0x00,0x00,0xcc,0xda,0xfe,0x02,0x00,0xff] +0x00,0x00,0xcc,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xcc,0xda,0xfe,0x02,0x00,0xff] +0x34,0x12,0xcc,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xcc,0xda,0xfe,0x02,0x00,0xff] +0xff,0xff,0xcc,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v254, v253 ; encoding: [0x00,0x00,0xcc,0xda,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xcc,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xcc,0xda,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xcc,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_bpermute_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xcc,0xda,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xcc,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_cmpstore_b32 v0, v1, v2 ; encoding: [0x00,0x00,0x40,0xd8,0x00,0x01,0x02,0x00] +0x00,0x00,0x40,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_cmpstore_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x40,0xd8,0x00,0x01,0x02,0x00] +0x34,0x12,0x40,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_cmpstore_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x40,0xd8,0x00,0x01,0x02,0x00] +0xff,0xff,0x40,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_cmpstore_b32 v0, v254, v253 ; encoding: [0x00,0x00,0x40,0xd8,0x00,0xfe,0xfd,0x00] +0x00,0x00,0x40,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x40,0xd8,0x00,0xfe,0xfd,0x00] +0x34,0x12,0x40,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x40,0xd8,0x00,0xfe,0xfd,0x00] +0xff,0xff,0x40,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v255, v1, v253 ; encoding: [0x00,0x00,0x40,0xd8,0xff,0x01,0xfd,0x00] +0x00,0x00,0x40,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x40,0xd8,0xff,0x01,0xfd,0x00] +0x34,0x12,0x40,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x40,0xd8,0xff,0x01,0xfd,0x00] +0xff,0xff,0x40,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v255, v254, v2 ; encoding: [0x00,0x00,0x40,0xd8,0xff,0xfe,0x02,0x00] +0x00,0x00,0x40,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_cmpstore_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x40,0xd8,0xff,0xfe,0x02,0x00] +0x34,0x12,0x40,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_cmpstore_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x40,0xd8,0xff,0xfe,0x02,0x00] +0xff,0xff,0x40,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_cmpstore_b32 v255, v254, v253 ; encoding: [0x00,0x00,0x40,0xd8,0xff,0xfe,0xfd,0x00] +0x00,0x00,0x40,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x40,0xd8,0xff,0xfe,0xfd,0x00] +0x34,0x12,0x40,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_cmpstore_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x40,0xd8,0xff,0xfe,0xfd,0x00] +0xff,0xff,0x40,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_cmpstore_b64 v1, v[254:255], v[3:4] offset:65535 ; encoding: [0xff,0xff,0x40,0xd9,0x01,0xfe,0x03,0x00] +0xff,0xff,0x40,0xd9,0x01,0xfe,0x03,0x00 + +# GFX12: ds_cmpstore_b64 v1, v[2:3], v[254:255] offset:65535 ; encoding: [0xff,0xff,0x40,0xd9,0x01,0x02,0xfe,0x00] +0xff,0xff,0x40,0xd9,0x01,0x02,0xfe,0x00 + +# GFX12: ds_cmpstore_b64 v1, v[2:3], v[3:4] ; encoding: [0x00,0x00,0x40,0xd9,0x01,0x02,0x03,0x00] +0x00,0x00,0x40,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_cmpstore_b64 v1, v[2:3], v[3:4] offset:4 ; encoding: [0x04,0x00,0x40,0xd9,0x01,0x02,0x03,0x00] +0x04,0x00,0x40,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_cmpstore_b64 v1, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0x40,0xd9,0x01,0x02,0x03,0x00] +0xff,0xff,0x40,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_cmpstore_b64 v255, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0x40,0xd9,0xff,0x02,0x03,0x00] +0xff,0xff,0x40,0xd9,0xff,0x02,0x03,0x00 + +# GFX12: ds_cmpstore_rtn_b32 v255, v1, v2, v3 offset:65535 ; encoding: [0xff,0xff,0xc0,0xd8,0x01,0x02,0x03,0xff] +0xff,0xff,0xc0,0xd8,0x01,0x02,0x03,0xff + +# GFX12: ds_cmpstore_rtn_b32 v5, v1, v2, v255 offset:65535 ; encoding: [0xff,0xff,0xc0,0xd8,0x01,0x02,0xff,0x05] +0xff,0xff,0xc0,0xd8,0x01,0x02,0xff,0x05 + +# GFX12: ds_cmpstore_rtn_b32 v5, v1, v2, v3 ; encoding: [0x00,0x00,0xc0,0xd8,0x01,0x02,0x03,0x05] +0x00,0x00,0xc0,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b32 v5, v1, v2, v3 offset:4 ; encoding: [0x04,0x00,0xc0,0xd8,0x01,0x02,0x03,0x05] +0x04,0x00,0xc0,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b32 v5, v1, v2, v3 offset:65535 ; encoding: [0xff,0xff,0xc0,0xd8,0x01,0x02,0x03,0x05] +0xff,0xff,0xc0,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b32 v5, v1, v255, v3 offset:65535 ; encoding: [0xff,0xff,0xc0,0xd8,0x01,0xff,0x03,0x05] +0xff,0xff,0xc0,0xd8,0x01,0xff,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b32 v5, v255, v2, v3 offset:65535 ; encoding: [0xff,0xff,0xc0,0xd8,0xff,0x02,0x03,0x05] +0xff,0xff,0xc0,0xd8,0xff,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b64 v[254:255], v1, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xc0,0xd9,0x01,0x02,0x03,0xfe] +0xff,0xff,0xc0,0xd9,0x01,0x02,0x03,0xfe + +# GFX12: ds_cmpstore_rtn_b64 v[5:6], v1, v[254:255], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xc0,0xd9,0x01,0xfe,0x03,0x05] +0xff,0xff,0xc0,0xd9,0x01,0xfe,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[254:255] offset:65535 ; encoding: [0xff,0xff,0xc0,0xd9,0x01,0x02,0xfe,0x05] +0xff,0xff,0xc0,0xd9,0x01,0x02,0xfe,0x05 + +# GFX12: ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[3:4] ; encoding: [0x00,0x00,0xc0,0xd9,0x01,0x02,0x03,0x05] +0x00,0x00,0xc0,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:4 ; encoding: [0x04,0x00,0xc0,0xd9,0x01,0x02,0x03,0x05] +0x04,0x00,0xc0,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xc0,0xd9,0x01,0x02,0x03,0x05] +0xff,0xff,0xc0,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_cmpstore_rtn_b64 v[5:6], v255, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xc0,0xd9,0xff,0x02,0x03,0x05] +0xff,0xff,0xc0,0xd9,0xff,0x02,0x03,0x05 + +# GFX12: ds_condxchg32_rtn_b64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xf8,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xf8,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_condxchg32_rtn_b64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xf8,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xf8,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_condxchg32_rtn_b64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xf8,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xf8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_condxchg32_rtn_b64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xf8,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xf8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_condxchg32_rtn_b64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xf8,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xf8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_condxchg32_rtn_b64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xf8,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xf8,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_consume v255 offset:65535 ; encoding: [0xff,0xff,0xf4,0xd8,0x00,0x00,0x00,0xff] +0xff,0xff,0xf4,0xd8,0x00,0x00,0x00,0xff + +# GFX12: ds_consume v5 ; encoding: [0x00,0x00,0xf4,0xd8,0x00,0x00,0x00,0x05] +0x00,0x00,0xf4,0xd8,0x00,0x00,0x00,0x05 + +# GFX12: ds_consume v5 offset:4 ; encoding: [0x04,0x00,0xf4,0xd8,0x00,0x00,0x00,0x05] +0x04,0x00,0xf4,0xd8,0x00,0x00,0x00,0x05 + +# GFX12: ds_consume v5 offset:65535 ; encoding: [0xff,0xff,0xf4,0xd8,0x00,0x00,0x00,0x05] +0xff,0xff,0xf4,0xd8,0x00,0x00,0x00,0x05 + +# GFX12: ds_dec_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0x90,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x90,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_dec_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x90,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x90,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_dec_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x90,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x90,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_dec_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0x90,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x90,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_dec_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x90,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x90,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_dec_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x90,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x90,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_dec_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0x90,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x90,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x90,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x90,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x90,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x90,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0x90,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x90,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x90,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x90,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x90,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x90,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0x90,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x90,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x90,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x90,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_dec_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x90,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x90,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_dec_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x90,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x90,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_dec_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x90,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x90,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_dec_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x90,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x90,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_dec_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x90,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x90,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_dec_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x90,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x90,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_dec_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x90,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x90,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_dec_u32 v0, v1 ; encoding: [0x00,0x00,0x10,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x10,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_dec_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x10,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x10,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_dec_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x10,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x10,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_dec_u32 v0, v254 ; encoding: [0x00,0x00,0x10,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x10,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_dec_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x10,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x10,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_dec_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x10,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x10,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_dec_u32 v255, v1 ; encoding: [0x00,0x00,0x10,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x10,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_dec_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x10,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x10,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_dec_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x10,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x10,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_dec_u32 v255, v254 ; encoding: [0x00,0x00,0x10,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x10,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_dec_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x10,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x10,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_dec_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x10,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x10,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_dec_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x10,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x10,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_dec_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x10,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x10,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_dec_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x10,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x10,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_dec_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x10,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x10,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_dec_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x10,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x10,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0x8c,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x8c,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x8c,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x8c,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x8c,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x8c,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0x8c,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x8c,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x8c,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x8c,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x8c,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x8c,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_inc_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0x8c,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x8c,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x8c,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x8c,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x8c,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x8c,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0x8c,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x8c,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x8c,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x8c,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x8c,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x8c,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0x8c,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x8c,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x8c,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x8c,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_inc_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x8c,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x8c,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_inc_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x8c,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x8c,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_inc_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x8c,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x8c,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_inc_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x8c,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x8c,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_inc_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x8c,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x8c,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_inc_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x8c,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x8c,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_inc_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x8c,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x8c,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_inc_u32 v0, v1 ; encoding: [0x00,0x00,0x0c,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x0c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_inc_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x0c,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x0c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_inc_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x0c,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x0c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_inc_u32 v0, v254 ; encoding: [0x00,0x00,0x0c,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x0c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_inc_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x0c,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x0c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_inc_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x0c,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x0c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_inc_u32 v255, v1 ; encoding: [0x00,0x00,0x0c,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x0c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_inc_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x0c,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x0c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_inc_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x0c,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x0c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_inc_u32 v255, v254 ; encoding: [0x00,0x00,0x0c,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x0c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_inc_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x0c,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x0c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_inc_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x0c,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x0c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_inc_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x0c,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x0c,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_inc_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x0c,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x0c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_inc_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x0c,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x0c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_inc_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x0c,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x0c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_inc_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x0c,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x0c,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_max_num_f32 v0, v1 ; encoding: [0x00,0x00,0x4c,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x4c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_num_f32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x4c,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x4c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_num_f32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x4c,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x4c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_num_f32 v0, v254 ; encoding: [0x00,0x00,0x4c,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x4c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x4c,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x4c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x4c,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x4c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f32 v255, v1 ; encoding: [0x00,0x00,0x4c,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x4c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_num_f32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x4c,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x4c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_num_f32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x4c,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x4c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_num_f32 v255, v254 ; encoding: [0x00,0x00,0x4c,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x4c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x4c,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x4c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x4c,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x4c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x4c,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x4c,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_max_num_f64 v1, v[2:3] ; encoding: [0x00,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_num_f64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x4c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_num_f64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x4c,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x4c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_num_f64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x4c,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x4c,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_max_i32 v0, v1 ; encoding: [0x00,0x00,0x18,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x18,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_i32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x18,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x18,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_i32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x18,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x18,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_i32 v0, v254 ; encoding: [0x00,0x00,0x18,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x18,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_i32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x18,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x18,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_i32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x18,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x18,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_i32 v255, v1 ; encoding: [0x00,0x00,0x18,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x18,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_i32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x18,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x18,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_i32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x18,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x18,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_i32 v255, v254 ; encoding: [0x00,0x00,0x18,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x18,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_i32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x18,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x18,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_i32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x18,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x18,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_i64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x18,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x18,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_max_i64 v1, v[2:3] ; encoding: [0x00,0x00,0x18,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x18,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_i64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x18,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x18,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_i64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x18,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x18,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_i64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x18,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x18,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_max_num_rtn_f32 v255, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xcc,0xd8,0x01,0x02,0x00,0xff] +0xff,0xff,0xcc,0xd8,0x01,0x02,0x00,0xff + +# GFX12: ds_max_num_rtn_f32 v5, v1, v2 ; encoding: [0x00,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05] +0x00,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f32 v5, v1, v2 offset:4 ; encoding: [0x04,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05] +0x04,0x00,0xcc,0xd8,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f32 v5, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xcc,0xd8,0x01,0x02,0x00,0x05] +0xff,0xff,0xcc,0xd8,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f32 v5, v1, v255 offset:65535 ; encoding: [0xff,0xff,0xcc,0xd8,0x01,0xff,0x00,0x05] +0xff,0xff,0xcc,0xd8,0x01,0xff,0x00,0x05 + +# GFX12: ds_max_num_rtn_f32 v5, v255, v2 offset:65535 ; encoding: [0xff,0xff,0xcc,0xd8,0xff,0x02,0x00,0x05] +0xff,0xff,0xcc,0xd8,0xff,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xcc,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xcc,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_max_num_rtn_f64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xcc,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xcc,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_max_num_rtn_f64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xcc,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xcc,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xcc,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_num_rtn_f64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xcc,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xcc,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_i32 v0, v1, v2 ; encoding: [0x00,0x00,0x98,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x98,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_rtn_i32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x98,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x98,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_rtn_i32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x98,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x98,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_rtn_i32 v0, v254, v253 ; encoding: [0x00,0x00,0x98,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x98,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_max_rtn_i32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x98,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x98,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_max_rtn_i32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x98,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x98,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_max_rtn_i32 v255, v1, v253 ; encoding: [0x00,0x00,0x98,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x98,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x98,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x98,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x98,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x98,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v254, v2 ; encoding: [0x00,0x00,0x98,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x98,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x98,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x98,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x98,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x98,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v254, v253 ; encoding: [0x00,0x00,0x98,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x98,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x98,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x98,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_i32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x98,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x98,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_i64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x98,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x98,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_max_rtn_i64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x98,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x98,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_max_rtn_i64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x98,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x98,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_i64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x98,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x98,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_i64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x98,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x98,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_i64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x98,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x98,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0xa0,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0xa0,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xa0,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0xa0,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xa0,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0xa0,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0xa0,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xa0,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_max_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa0,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xa0,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_max_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa0,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xa0,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_max_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0xa0,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0xa0,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xa0,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0xa0,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xa0,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0xa0,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0xa0,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0xa0,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xa0,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0xa0,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xa0,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0xa0,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0xa0,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xa0,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa0,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xa0,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa0,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xa0,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_max_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa0,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xa0,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_max_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xa0,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xa0,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_max_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xa0,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xa0,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xa0,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xa0,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa0,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xa0,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_max_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa0,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xa0,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_max_u32 v0, v1 ; encoding: [0x00,0x00,0x20,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x20,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x20,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x20,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x20,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x20,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_max_u32 v0, v254 ; encoding: [0x00,0x00,0x20,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x20,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x20,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x20,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x20,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x20,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_max_u32 v255, v1 ; encoding: [0x00,0x00,0x20,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x20,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x20,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x20,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x20,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x20,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_max_u32 v255, v254 ; encoding: [0x00,0x00,0x20,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x20,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x20,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x20,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x20,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x20,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_max_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x20,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x20,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_max_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x20,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x20,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x20,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x20,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x20,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x20,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_max_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x20,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x20,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_min_num_f32 v0, v1 ; encoding: [0x00,0x00,0x48,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x48,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_num_f32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x48,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x48,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_num_f32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x48,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x48,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_num_f32 v0, v254 ; encoding: [0x00,0x00,0x48,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x48,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x48,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x48,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x48,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x48,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f32 v255, v1 ; encoding: [0x00,0x00,0x48,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x48,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_num_f32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x48,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x48,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_num_f32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x48,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x48,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_num_f32 v255, v254 ; encoding: [0x00,0x00,0x48,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x48,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x48,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x48,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x48,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x48,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x48,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x48,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_min_num_f64 v1, v[2:3] ; encoding: [0x00,0x00,0x48,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x48,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_num_f64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x48,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x48,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_num_f64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x48,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x48,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_num_f64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x48,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x48,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_min_i32 v0, v1 ; encoding: [0x00,0x00,0x14,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x14,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_i32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x14,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x14,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_i32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x14,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x14,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_i32 v0, v254 ; encoding: [0x00,0x00,0x14,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x14,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_i32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x14,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x14,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_i32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x14,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x14,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_i32 v255, v1 ; encoding: [0x00,0x00,0x14,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x14,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_i32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x14,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x14,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_i32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x14,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x14,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_i32 v255, v254 ; encoding: [0x00,0x00,0x14,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x14,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_i32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x14,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x14,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_i32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x14,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x14,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_i64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x14,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x14,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_min_i64 v1, v[2:3] ; encoding: [0x00,0x00,0x14,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x14,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_i64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x14,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x14,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_i64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x14,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x14,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_i64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x14,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x14,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_min_num_rtn_f32 v255, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xc8,0xd8,0x01,0x02,0x00,0xff] +0xff,0xff,0xc8,0xd8,0x01,0x02,0x00,0xff + +# GFX12: ds_min_num_rtn_f32 v5, v1, v2 ; encoding: [0x00,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05] +0x00,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f32 v5, v1, v2 offset:4 ; encoding: [0x04,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05] +0x04,0x00,0xc8,0xd8,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f32 v5, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xc8,0xd8,0x01,0x02,0x00,0x05] +0xff,0xff,0xc8,0xd8,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f32 v5, v1, v255 offset:65535 ; encoding: [0xff,0xff,0xc8,0xd8,0x01,0xff,0x00,0x05] +0xff,0xff,0xc8,0xd8,0x01,0xff,0x00,0x05 + +# GFX12: ds_min_num_rtn_f32 v5, v255, v2 offset:65535 ; encoding: [0xff,0xff,0xc8,0xd8,0xff,0x02,0x00,0x05] +0xff,0xff,0xc8,0xd8,0xff,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xc8,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xc8,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_min_num_rtn_f64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xc8,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xc8,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_min_num_rtn_f64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xc8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xc8,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xc8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_num_rtn_f64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xc8,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xc8,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_i32 v0, v1, v2 ; encoding: [0x00,0x00,0x94,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x94,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_rtn_i32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x94,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x94,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_rtn_i32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x94,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x94,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_rtn_i32 v0, v254, v253 ; encoding: [0x00,0x00,0x94,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x94,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_min_rtn_i32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x94,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x94,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_min_rtn_i32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x94,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x94,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_min_rtn_i32 v255, v1, v253 ; encoding: [0x00,0x00,0x94,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x94,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x94,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x94,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x94,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x94,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v254, v2 ; encoding: [0x00,0x00,0x94,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x94,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x94,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x94,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x94,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x94,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v254, v253 ; encoding: [0x00,0x00,0x94,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x94,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x94,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x94,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_i32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x94,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x94,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_i64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x94,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x94,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_min_rtn_i64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x94,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x94,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_min_rtn_i64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x94,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x94,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_i64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x94,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x94,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_i64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x94,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x94,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_i64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x94,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x94,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0x9c,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x9c,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x9c,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x9c,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x9c,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x9c,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0x9c,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x9c,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_min_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x9c,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x9c,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_min_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x9c,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x9c,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_min_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0x9c,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x9c,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x9c,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x9c,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x9c,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x9c,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0x9c,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x9c,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x9c,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x9c,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x9c,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x9c,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0x9c,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x9c,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x9c,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x9c,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x9c,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x9c,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_min_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x9c,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x9c,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_min_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x9c,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x9c,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_min_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x9c,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x9c,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x9c,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x9c,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x9c,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x9c,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_min_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x9c,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x9c,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_min_u32 v0, v1 ; encoding: [0x00,0x00,0x1c,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x1c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x1c,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x1c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x1c,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x1c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_min_u32 v0, v254 ; encoding: [0x00,0x00,0x1c,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x1c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x1c,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x1c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x1c,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x1c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_min_u32 v255, v1 ; encoding: [0x00,0x00,0x1c,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x1c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x1c,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x1c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x1c,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x1c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_min_u32 v255, v254 ; encoding: [0x00,0x00,0x1c,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x1c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x1c,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x1c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x1c,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x1c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_min_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x1c,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x1c,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_min_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x1c,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x1c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x1c,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x1c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x1c,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x1c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_min_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x1c,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x1c,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_mskor_b32 v0, v1, v2 ; encoding: [0x00,0x00,0x30,0xd8,0x00,0x01,0x02,0x00] +0x00,0x00,0x30,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_mskor_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x30,0xd8,0x00,0x01,0x02,0x00] +0x34,0x12,0x30,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_mskor_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x30,0xd8,0x00,0x01,0x02,0x00] +0xff,0xff,0x30,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_mskor_b32 v0, v254, v253 ; encoding: [0x00,0x00,0x30,0xd8,0x00,0xfe,0xfd,0x00] +0x00,0x00,0x30,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_mskor_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x30,0xd8,0x00,0xfe,0xfd,0x00] +0x34,0x12,0x30,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_mskor_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x30,0xd8,0x00,0xfe,0xfd,0x00] +0xff,0xff,0x30,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_mskor_b32 v255, v1, v253 ; encoding: [0x00,0x00,0x30,0xd8,0xff,0x01,0xfd,0x00] +0x00,0x00,0x30,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_mskor_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x30,0xd8,0xff,0x01,0xfd,0x00] +0x34,0x12,0x30,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_mskor_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x30,0xd8,0xff,0x01,0xfd,0x00] +0xff,0xff,0x30,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_mskor_b32 v255, v254, v2 ; encoding: [0x00,0x00,0x30,0xd8,0xff,0xfe,0x02,0x00] +0x00,0x00,0x30,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_mskor_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x30,0xd8,0xff,0xfe,0x02,0x00] +0x34,0x12,0x30,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_mskor_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x30,0xd8,0xff,0xfe,0x02,0x00] +0xff,0xff,0x30,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_mskor_b32 v255, v254, v253 ; encoding: [0x00,0x00,0x30,0xd8,0xff,0xfe,0xfd,0x00] +0x00,0x00,0x30,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_mskor_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x30,0xd8,0xff,0xfe,0xfd,0x00] +0x34,0x12,0x30,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_mskor_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x30,0xd8,0xff,0xfe,0xfd,0x00] +0xff,0xff,0x30,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_mskor_b64 v1, v[254:255], v[3:4] offset:65535 ; encoding: [0xff,0xff,0x30,0xd9,0x01,0xfe,0x03,0x00] +0xff,0xff,0x30,0xd9,0x01,0xfe,0x03,0x00 + +# GFX12: ds_mskor_b64 v1, v[2:3], v[254:255] offset:65535 ; encoding: [0xff,0xff,0x30,0xd9,0x01,0x02,0xfe,0x00] +0xff,0xff,0x30,0xd9,0x01,0x02,0xfe,0x00 + +# GFX12: ds_mskor_b64 v1, v[2:3], v[3:4] ; encoding: [0x00,0x00,0x30,0xd9,0x01,0x02,0x03,0x00] +0x00,0x00,0x30,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_mskor_b64 v1, v[2:3], v[3:4] offset:4 ; encoding: [0x04,0x00,0x30,0xd9,0x01,0x02,0x03,0x00] +0x04,0x00,0x30,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_mskor_b64 v1, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0x30,0xd9,0x01,0x02,0x03,0x00] +0xff,0xff,0x30,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_mskor_b64 v255, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0x30,0xd9,0xff,0x02,0x03,0x00] +0xff,0xff,0x30,0xd9,0xff,0x02,0x03,0x00 + +# GFX12: ds_mskor_rtn_b32 v0, v1, v2, v3 ; encoding: [0x00,0x00,0xb0,0xd8,0x01,0x02,0x03,0x00] +0x00,0x00,0xb0,0xd8,0x01,0x02,0x03,0x00 + +# GFX12: ds_mskor_rtn_b32 v0, v1, v2, v3 offset:4660 ; encoding: [0x34,0x12,0xb0,0xd8,0x01,0x02,0x03,0x00] +0x34,0x12,0xb0,0xd8,0x01,0x02,0x03,0x00 + +# GFX12: ds_mskor_rtn_b32 v0, v1, v2, v3 offset:65535 ; encoding: [0xff,0xff,0xb0,0xd8,0x01,0x02,0x03,0x00] +0xff,0xff,0xb0,0xd8,0x01,0x02,0x03,0x00 + +# GFX12: ds_mskor_rtn_b32 v0, v254, v253, v252 ; encoding: [0x00,0x00,0xb0,0xd8,0xfe,0xfd,0xfc,0x00] +0x00,0x00,0xb0,0xd8,0xfe,0xfd,0xfc,0x00 + +# GFX12: ds_mskor_rtn_b32 v0, v254, v253, v252 offset:4660 ; encoding: [0x34,0x12,0xb0,0xd8,0xfe,0xfd,0xfc,0x00] +0x34,0x12,0xb0,0xd8,0xfe,0xfd,0xfc,0x00 + +# GFX12: ds_mskor_rtn_b32 v0, v254, v253, v252 offset:65535 ; encoding: [0xff,0xff,0xb0,0xd8,0xfe,0xfd,0xfc,0x00] +0xff,0xff,0xb0,0xd8,0xfe,0xfd,0xfc,0x00 + +# GFX12: ds_mskor_rtn_b32 v255, v1, v253, v252 ; encoding: [0x00,0x00,0xb0,0xd8,0x01,0xfd,0xfc,0xff] +0x00,0x00,0xb0,0xd8,0x01,0xfd,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v1, v253, v252 offset:4660 ; encoding: [0x34,0x12,0xb0,0xd8,0x01,0xfd,0xfc,0xff] +0x34,0x12,0xb0,0xd8,0x01,0xfd,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v1, v253, v252 offset:65535 ; encoding: [0xff,0xff,0xb0,0xd8,0x01,0xfd,0xfc,0xff] +0xff,0xff,0xb0,0xd8,0x01,0xfd,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v2, v252 ; encoding: [0x00,0x00,0xb0,0xd8,0xfe,0x02,0xfc,0xff] +0x00,0x00,0xb0,0xd8,0xfe,0x02,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v2, v252 offset:4660 ; encoding: [0x34,0x12,0xb0,0xd8,0xfe,0x02,0xfc,0xff] +0x34,0x12,0xb0,0xd8,0xfe,0x02,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v2, v252 offset:65535 ; encoding: [0xff,0xff,0xb0,0xd8,0xfe,0x02,0xfc,0xff] +0xff,0xff,0xb0,0xd8,0xfe,0x02,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v253, v252 ; encoding: [0x00,0x00,0xb0,0xd8,0xfe,0xfd,0xfc,0xff] +0x00,0x00,0xb0,0xd8,0xfe,0xfd,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v253, v252 offset:4660 ; encoding: [0x34,0x12,0xb0,0xd8,0xfe,0xfd,0xfc,0xff] +0x34,0x12,0xb0,0xd8,0xfe,0xfd,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v253, v252 offset:65535 ; encoding: [0xff,0xff,0xb0,0xd8,0xfe,0xfd,0xfc,0xff] +0xff,0xff,0xb0,0xd8,0xfe,0xfd,0xfc,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v253, v3 ; encoding: [0x00,0x00,0xb0,0xd8,0xfe,0xfd,0x03,0xff] +0x00,0x00,0xb0,0xd8,0xfe,0xfd,0x03,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v253, v3 offset:4660 ; encoding: [0x34,0x12,0xb0,0xd8,0xfe,0xfd,0x03,0xff] +0x34,0x12,0xb0,0xd8,0xfe,0xfd,0x03,0xff + +# GFX12: ds_mskor_rtn_b32 v255, v254, v253, v3 offset:65535 ; encoding: [0xff,0xff,0xb0,0xd8,0xfe,0xfd,0x03,0xff] +0xff,0xff,0xb0,0xd8,0xfe,0xfd,0x03,0xff + +# GFX12: ds_mskor_rtn_b64 v[254:255], v1, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xb0,0xd9,0x01,0x02,0x03,0xfe] +0xff,0xff,0xb0,0xd9,0x01,0x02,0x03,0xfe + +# GFX12: ds_mskor_rtn_b64 v[5:6], v1, v[254:255], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xb0,0xd9,0x01,0xfe,0x03,0x05] +0xff,0xff,0xb0,0xd9,0x01,0xfe,0x03,0x05 + +# GFX12: ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[254:255] offset:65535 ; encoding: [0xff,0xff,0xb0,0xd9,0x01,0x02,0xfe,0x05] +0xff,0xff,0xb0,0xd9,0x01,0x02,0xfe,0x05 + +# GFX12: ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[3:4] ; encoding: [0x00,0x00,0xb0,0xd9,0x01,0x02,0x03,0x05] +0x00,0x00,0xb0,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:4 ; encoding: [0x04,0x00,0xb0,0xd9,0x01,0x02,0x03,0x05] +0x04,0x00,0xb0,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_mskor_rtn_b64 v[5:6], v1, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xb0,0xd9,0x01,0x02,0x03,0x05] +0xff,0xff,0xb0,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_mskor_rtn_b64 v[5:6], v255, v[2:3], v[3:4] offset:65535 ; encoding: [0xff,0xff,0xb0,0xd9,0xff,0x02,0x03,0x05] +0xff,0xff,0xb0,0xd9,0xff,0x02,0x03,0x05 + +# GFX12: ds_nop ; encoding: [0x00,0x00,0x50,0xd8,0x00,0x00,0x00,0x00] +0x00,0x00,0x50,0xd8,0x00,0x00,0x00,0x00 + +# GFX12: ds_or_b32 v0, v1 ; encoding: [0x00,0x00,0x28,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x28,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_or_b32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x28,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x28,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_or_b32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x28,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x28,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_or_b32 v0, v254 ; encoding: [0x00,0x00,0x28,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x28,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_or_b32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x28,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x28,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_or_b32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x28,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x28,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_or_b32 v255, v1 ; encoding: [0x00,0x00,0x28,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x28,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_or_b32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x28,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x28,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_or_b32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x28,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x28,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_or_b32 v255, v254 ; encoding: [0x00,0x00,0x28,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x28,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_or_b32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x28,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x28,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_or_b32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x28,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x28,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_or_b64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x28,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x28,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_or_b64 v1, v[2:3] ; encoding: [0x00,0x00,0x28,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x28,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_or_b64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x28,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x28,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_or_b64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x28,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x28,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_or_b64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x28,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x28,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v0, v1, v2 ; encoding: [0x00,0x00,0xa8,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0xa8,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xa8,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0xa8,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xa8,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0xa8,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v0, v254, v253 ; encoding: [0x00,0x00,0xa8,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xa8,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa8,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xa8,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa8,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xa8,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_or_rtn_b32 v255, v1, v253 ; encoding: [0x00,0x00,0xa8,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0xa8,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xa8,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0xa8,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xa8,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0xa8,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v254, v2 ; encoding: [0x00,0x00,0xa8,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0xa8,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xa8,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0xa8,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xa8,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0xa8,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v254, v253 ; encoding: [0x00,0x00,0xa8,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xa8,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa8,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xa8,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_or_rtn_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa8,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xa8,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_or_rtn_b64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa8,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xa8,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_or_rtn_b64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xa8,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xa8,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_or_rtn_b64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xa8,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xa8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_or_rtn_b64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xa8,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xa8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_or_rtn_b64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa8,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xa8,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_or_rtn_b64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xa8,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xa8,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_permute_b32 v0, v1, v2 ; encoding: [0x00,0x00,0xc8,0xda,0x01,0x02,0x00,0x00] +0x00,0x00,0xc8,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_permute_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xc8,0xda,0x01,0x02,0x00,0x00] +0x34,0x12,0xc8,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_permute_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xc8,0xda,0x01,0x02,0x00,0x00] +0xff,0xff,0xc8,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_permute_b32 v0, v254, v253 ; encoding: [0x00,0x00,0xc8,0xda,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xc8,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_permute_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xc8,0xda,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xc8,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_permute_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xc8,0xda,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xc8,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_permute_b32 v255, v1, v253 ; encoding: [0x00,0x00,0xc8,0xda,0x01,0xfd,0x00,0xff] +0x00,0x00,0xc8,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_permute_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xc8,0xda,0x01,0xfd,0x00,0xff] +0x34,0x12,0xc8,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_permute_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xc8,0xda,0x01,0xfd,0x00,0xff] +0xff,0xff,0xc8,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_permute_b32 v255, v254, v2 ; encoding: [0x00,0x00,0xc8,0xda,0xfe,0x02,0x00,0xff] +0x00,0x00,0xc8,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_permute_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xc8,0xda,0xfe,0x02,0x00,0xff] +0x34,0x12,0xc8,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_permute_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xc8,0xda,0xfe,0x02,0x00,0xff] +0xff,0xff,0xc8,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_permute_b32 v255, v254, v253 ; encoding: [0x00,0x00,0xc8,0xda,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xc8,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_permute_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xc8,0xda,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xc8,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_permute_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xc8,0xda,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xc8,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_load_2addr_b32 v[254:255], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xdc,0xd8,0x01,0x00,0x00,0xfe] +0x7f,0xff,0xdc,0xd8,0x01,0x00,0x00,0xfe + +# GFX12: ds_load_2addr_b32 v[5:6], v1 offset0:127 ; encoding: [0x7f,0x00,0xdc,0xd8,0x01,0x00,0x00,0x05] +0x7f,0x00,0xdc,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b32 v[5:6], v1 offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xdc,0xd8,0x01,0x00,0x00,0x05] +0x7f,0x01,0xdc,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b32 v[5:6], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05] +0x7f,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b32 v[5:6], v1 offset0:16 offset1:255 ; encoding: [0x10,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05] +0x10,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b32 v[5:6], v1 offset1:255 ; encoding: [0x00,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05] +0x00,0xff,0xdc,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b32 v[5:6], v255 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xdc,0xd8,0xff,0x00,0x00,0x05] +0x7f,0xff,0xdc,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b64 v[252:255], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xdc,0xd9,0x01,0x00,0x00,0xfc] +0x7f,0xff,0xdc,0xd9,0x01,0x00,0x00,0xfc + +# GFX12: ds_load_2addr_b64 v[5:8], v1 offset0:127 ; encoding: [0x7f,0x00,0xdc,0xd9,0x01,0x00,0x00,0x05] +0x7f,0x00,0xdc,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b64 v[5:8], v1 offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xdc,0xd9,0x01,0x00,0x00,0x05] +0x7f,0x01,0xdc,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b64 v[5:8], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05] +0x7f,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b64 v[5:8], v1 offset0:16 offset1:255 ; encoding: [0x10,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05] +0x10,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b64 v[5:8], v1 offset1:255 ; encoding: [0x00,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05] +0x00,0xff,0xdc,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_b64 v[5:8], v255 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xdc,0xd9,0xff,0x00,0x00,0x05] +0x7f,0xff,0xdc,0xd9,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b32 v[254:255], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xe0,0xd8,0x01,0x00,0x00,0xfe] +0x7f,0xff,0xe0,0xd8,0x01,0x00,0x00,0xfe + +# GFX12: ds_load_2addr_stride64_b32 v[5:6], v1 offset0:127 ; encoding: [0x7f,0x00,0xe0,0xd8,0x01,0x00,0x00,0x05] +0x7f,0x00,0xe0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b32 v[5:6], v1 offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xe0,0xd8,0x01,0x00,0x00,0x05] +0x7f,0x01,0xe0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b32 v[5:6], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05] +0x7f,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b32 v[5:6], v1 offset0:16 offset1:255 ; encoding: [0x10,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05] +0x10,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b32 v[5:6], v1 offset1:255 ; encoding: [0x00,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05] +0x00,0xff,0xe0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b32 v[5:6], v255 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xe0,0xd8,0xff,0x00,0x00,0x05] +0x7f,0xff,0xe0,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b64 v[252:255], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xe0,0xd9,0x01,0x00,0x00,0xfc] +0x7f,0xff,0xe0,0xd9,0x01,0x00,0x00,0xfc + +# GFX12: ds_load_2addr_stride64_b64 v[5:8], v1 offset0:127 ; encoding: [0x7f,0x00,0xe0,0xd9,0x01,0x00,0x00,0x05] +0x7f,0x00,0xe0,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b64 v[5:8], v1 offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xe0,0xd9,0x01,0x00,0x00,0x05] +0x7f,0x01,0xe0,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b64 v[5:8], v1 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05] +0x7f,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b64 v[5:8], v1 offset0:16 offset1:255 ; encoding: [0x10,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05] +0x10,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b64 v[5:8], v1 offset1:255 ; encoding: [0x00,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05] +0x00,0xff,0xe0,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_2addr_stride64_b64 v[5:8], v255 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xe0,0xd9,0xff,0x00,0x00,0x05] +0x7f,0xff,0xe0,0xd9,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_addtid_b32 v255 offset:65535 ; encoding: [0xff,0xff,0xc4,0xda,0x00,0x00,0x00,0xff] +0xff 0xff 0xc4 0xda 0x00 0x00 0x00 0xff + +# GFX12: ds_load_addtid_b32 v5 ; encoding: [0x00,0x00,0xc4,0xda,0x00,0x00,0x00,0x05] +0x00 0x00 0xc4 0xda 0x00 0x00 0x00 0x05 + +# GFX12: ds_load_addtid_b32 v5 offset:4 ; encoding: [0x04,0x00,0xc4,0xda,0x00,0x00,0x00,0x05] +0x04 0x00 0xc4 0xda 0x00 0x00 0x00 0x05 + +# GFX12: ds_load_addtid_b32 v5 offset:65535 ; encoding: [0xff,0xff,0xc4,0xda,0x00,0x00,0x00,0x05] +0xff 0xff 0xc4 0xda 0x00 0x00 0x00 0x05 + +# GFX12: ds_load_b128 v[252:255], v1 offset:65535 ; encoding: [0xff,0xff,0xfc,0xdb,0x01,0x00,0x00,0xfc] +0xff,0xff,0xfc,0xdb,0x01,0x00,0x00,0xfc + +# GFX12: ds_load_b128 v[5:8], v1 ; encoding: [0x00,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05] +0x00,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b128 v[5:8], v1 offset:4 ; encoding: [0x04,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05] +0x04,0x00,0xfc,0xdb,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b128 v[5:8], v1 offset:65535 ; encoding: [0xff,0xff,0xfc,0xdb,0x01,0x00,0x00,0x05] +0xff,0xff,0xfc,0xdb,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b128 v[5:8], v255 offset:65535 ; encoding: [0xff,0xff,0xfc,0xdb,0xff,0x00,0x00,0x05] +0xff,0xff,0xfc,0xdb,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_b32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0xd8,0xd8,0x01,0x00,0x00,0xff] +0xff,0xff,0xd8,0xd8,0x01,0x00,0x00,0xff + +# GFX12: ds_load_b32 v5, v1 ; encoding: [0x00,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05] +0x00,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b32 v5, v1 offset:4 ; encoding: [0x04,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05] +0x04,0x00,0xd8,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b32 v5, v1 offset:65535 ; encoding: [0xff,0xff,0xd8,0xd8,0x01,0x00,0x00,0x05] +0xff,0xff,0xd8,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b32 v5, v255 offset:65535 ; encoding: [0xff,0xff,0xd8,0xd8,0xff,0x00,0x00,0x05] +0xff,0xff,0xd8,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_b64 v[254:255], v1 offset:65535 ; encoding: [0xff,0xff,0xd8,0xd9,0x01,0x00,0x00,0xfe] +0xff,0xff,0xd8,0xd9,0x01,0x00,0x00,0xfe + +# GFX12: ds_load_b64 v[5:6], v1 ; encoding: [0x00,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05] +0x00,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b64 v[5:6], v1 offset:4 ; encoding: [0x04,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05] +0x04,0x00,0xd8,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b64 v[5:6], v1 offset:65535 ; encoding: [0xff,0xff,0xd8,0xd9,0x01,0x00,0x00,0x05] +0xff,0xff,0xd8,0xd9,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b64 v[5:6], v255 offset:65535 ; encoding: [0xff,0xff,0xd8,0xd9,0xff,0x00,0x00,0x05] +0xff,0xff,0xd8,0xd9,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_b96 v[253:255], v1 offset:65535 ; encoding: [0xff,0xff,0xf8,0xdb,0x01,0x00,0x00,0xfd] +0xff,0xff,0xf8,0xdb,0x01,0x00,0x00,0xfd + +# GFX12: ds_load_b96 v[5:7], v1 ; encoding: [0x00,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05] +0x00,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b96 v[5:7], v1 offset:4 ; encoding: [0x04,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05] +0x04,0x00,0xf8,0xdb,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b96 v[5:7], v1 offset:65535 ; encoding: [0xff,0xff,0xf8,0xdb,0x01,0x00,0x00,0x05] +0xff,0xff,0xf8,0xdb,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_b96 v[5:7], v255 offset:65535 ; encoding: [0xff,0xff,0xf8,0xdb,0xff,0x00,0x00,0x05] +0xff,0xff,0xf8,0xdb,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_i16 v255, v1 offset:65535 ; encoding: [0xff,0xff,0xec,0xd8,0x01,0x00,0x00,0xff] +0xff,0xff,0xec,0xd8,0x01,0x00,0x00,0xff + +# GFX12: ds_load_i16 v5, v1 ; encoding: [0x00,0x00,0xec,0xd8,0x01,0x00,0x00,0x05] +0x00,0x00,0xec,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i16 v5, v1 offset:4 ; encoding: [0x04,0x00,0xec,0xd8,0x01,0x00,0x00,0x05] +0x04,0x00,0xec,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i16 v5, v1 offset:65535 ; encoding: [0xff,0xff,0xec,0xd8,0x01,0x00,0x00,0x05] +0xff,0xff,0xec,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i16 v5, v255 offset:65535 ; encoding: [0xff,0xff,0xec,0xd8,0xff,0x00,0x00,0x05] +0xff,0xff,0xec,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_i8 v255, v1 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd8,0x01,0x00,0x00,0xff] +0xff,0xff,0xe4,0xd8,0x01,0x00,0x00,0xff + +# GFX12: ds_load_i8 v5, v1 ; encoding: [0x00,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05] +0x00,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8 v5, v1 offset:4 ; encoding: [0x04,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05] +0x04,0x00,0xe4,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8 v5, v1 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd8,0x01,0x00,0x00,0x05] +0xff,0xff,0xe4,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8 v5, v255 offset:65535 ; encoding: [0xff,0xff,0xe4,0xd8,0xff,0x00,0x00,0x05] +0xff,0xff,0xe4,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x90,0xda,0x01,0x00,0x00,0xff] +0xff,0xff,0x90,0xda,0x01,0x00,0x00,0xff + +# GFX12: ds_load_i8_d16 v5, v1 ; encoding: [0x00,0x00,0x90,0xda,0x01,0x00,0x00,0x05] +0x00,0x00,0x90,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16 v5, v1 offset:4 ; encoding: [0x04,0x00,0x90,0xda,0x01,0x00,0x00,0x05] +0x04,0x00,0x90,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16 v5, v1 offset:65535 ; encoding: [0xff,0xff,0x90,0xda,0x01,0x00,0x00,0x05] +0xff,0xff,0x90,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16 v5, v255 offset:65535 ; encoding: [0xff,0xff,0x90,0xda,0xff,0x00,0x00,0x05] +0xff,0xff,0x90,0xda,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16_hi v255, v1 offset:65535 ; encoding: [0xff,0xff,0x94,0xda,0x01,0x00,0x00,0xff] +0xff,0xff,0x94,0xda,0x01,0x00,0x00,0xff + +# GFX12: ds_load_i8_d16_hi v5, v1 ; encoding: [0x00,0x00,0x94,0xda,0x01,0x00,0x00,0x05] +0x00,0x00,0x94,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16_hi v5, v1 offset:4 ; encoding: [0x04,0x00,0x94,0xda,0x01,0x00,0x00,0x05] +0x04,0x00,0x94,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16_hi v5, v1 offset:65535 ; encoding: [0xff,0xff,0x94,0xda,0x01,0x00,0x00,0x05] +0xff,0xff,0x94,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_i8_d16_hi v5, v255 offset:65535 ; encoding: [0xff,0xff,0x94,0xda,0xff,0x00,0x00,0x05] +0xff,0xff,0x94,0xda,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_u16 v255, v1 offset:65535 ; encoding: [0xff,0xff,0xf0,0xd8,0x01,0x00,0x00,0xff] +0xff,0xff,0xf0,0xd8,0x01,0x00,0x00,0xff + +# GFX12: ds_load_u16 v5, v1 ; encoding: [0x00,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05] +0x00,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16 v5, v1 offset:4 ; encoding: [0x04,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05] +0x04,0x00,0xf0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16 v5, v1 offset:65535 ; encoding: [0xff,0xff,0xf0,0xd8,0x01,0x00,0x00,0x05] +0xff,0xff,0xf0,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16 v5, v255 offset:65535 ; encoding: [0xff,0xff,0xf0,0xd8,0xff,0x00,0x00,0x05] +0xff,0xff,0xf0,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x98,0xda,0x01,0x00,0x00,0xff] +0xff,0xff,0x98,0xda,0x01,0x00,0x00,0xff + +# GFX12: ds_load_u16_d16 v5, v1 ; encoding: [0x00,0x00,0x98,0xda,0x01,0x00,0x00,0x05] +0x00,0x00,0x98,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16 v5, v1 offset:4 ; encoding: [0x04,0x00,0x98,0xda,0x01,0x00,0x00,0x05] +0x04,0x00,0x98,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16 v5, v1 offset:65535 ; encoding: [0xff,0xff,0x98,0xda,0x01,0x00,0x00,0x05] +0xff,0xff,0x98,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16 v5, v255 offset:65535 ; encoding: [0xff,0xff,0x98,0xda,0xff,0x00,0x00,0x05] +0xff,0xff,0x98,0xda,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16_hi v255, v1 offset:65535 ; encoding: [0xff,0xff,0x9c,0xda,0x01,0x00,0x00,0xff] +0xff,0xff,0x9c,0xda,0x01,0x00,0x00,0xff + +# GFX12: ds_load_u16_d16_hi v5, v1 ; encoding: [0x00,0x00,0x9c,0xda,0x01,0x00,0x00,0x05] +0x00,0x00,0x9c,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16_hi v5, v1 offset:4 ; encoding: [0x04,0x00,0x9c,0xda,0x01,0x00,0x00,0x05] +0x04,0x00,0x9c,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16_hi v5, v1 offset:65535 ; encoding: [0xff,0xff,0x9c,0xda,0x01,0x00,0x00,0x05] +0xff,0xff,0x9c,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u16_d16_hi v5, v255 offset:65535 ; encoding: [0xff,0xff,0x9c,0xda,0xff,0x00,0x00,0x05] +0xff,0xff,0x9c,0xda,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_u8 v255, v1 offset:65535 ; encoding: [0xff,0xff,0xe8,0xd8,0x01,0x00,0x00,0xff] +0xff,0xff,0xe8,0xd8,0x01,0x00,0x00,0xff + +# GFX12: ds_load_u8 v5, v1 ; encoding: [0x00,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05] +0x00,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8 v5, v1 offset:4 ; encoding: [0x04,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05] +0x04,0x00,0xe8,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8 v5, v1 offset:65535 ; encoding: [0xff,0xff,0xe8,0xd8,0x01,0x00,0x00,0x05] +0xff,0xff,0xe8,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8 v5, v255 offset:65535 ; encoding: [0xff,0xff,0xe8,0xd8,0xff,0x00,0x00,0x05] +0xff,0xff,0xe8,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x88,0xda,0x01,0x00,0x00,0xff] +0xff,0xff,0x88,0xda,0x01,0x00,0x00,0xff + +# GFX12: ds_load_u8_d16 v5, v1 ; encoding: [0x00,0x00,0x88,0xda,0x01,0x00,0x00,0x05] +0x00,0x00,0x88,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16 v5, v1 offset:4 ; encoding: [0x04,0x00,0x88,0xda,0x01,0x00,0x00,0x05] +0x04,0x00,0x88,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16 v5, v1 offset:65535 ; encoding: [0xff,0xff,0x88,0xda,0x01,0x00,0x00,0x05] +0xff,0xff,0x88,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16 v5, v255 offset:65535 ; encoding: [0xff,0xff,0x88,0xda,0xff,0x00,0x00,0x05] +0xff,0xff,0x88,0xda,0xff,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16_hi v255, v1 offset:65535 ; encoding: [0xff,0xff,0x8c,0xda,0x01,0x00,0x00,0xff] +0xff,0xff,0x8c,0xda,0x01,0x00,0x00,0xff + +# GFX12: ds_load_u8_d16_hi v5, v1 ; encoding: [0x00,0x00,0x8c,0xda,0x01,0x00,0x00,0x05] +0x00,0x00,0x8c,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16_hi v5, v1 offset:4 ; encoding: [0x04,0x00,0x8c,0xda,0x01,0x00,0x00,0x05] +0x04,0x00,0x8c,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16_hi v5, v1 offset:65535 ; encoding: [0xff,0xff,0x8c,0xda,0x01,0x00,0x00,0x05] +0xff,0xff,0x8c,0xda,0x01,0x00,0x00,0x05 + +# GFX12: ds_load_u8_d16_hi v5, v255 offset:65535 ; encoding: [0xff,0xff,0x8c,0xda,0xff,0x00,0x00,0x05] +0xff,0xff,0x8c,0xda,0xff,0x00,0x00,0x05 + +# GFX12: ds_rsub_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0x88,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x88,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_rsub_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x88,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x88,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_rsub_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x88,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x88,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_rsub_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0x88,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x88,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_rsub_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x88,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x88,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_rsub_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x88,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x88,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_rsub_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0x88,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x88,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x88,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x88,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x88,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x88,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0x88,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x88,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x88,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x88,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x88,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x88,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0x88,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x88,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x88,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x88,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_rsub_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x88,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x88,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_rsub_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x88,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x88,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_rsub_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x88,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x88,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_rsub_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x88,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x88,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_rsub_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x88,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x88,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_rsub_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x88,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x88,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_rsub_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x88,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x88,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_rsub_u32 v0, v1 ; encoding: [0x00,0x00,0x08,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x08,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_rsub_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x08,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x08,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_rsub_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x08,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x08,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_rsub_u32 v0, v254 ; encoding: [0x00,0x00,0x08,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x08,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x08,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x08,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x08,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x08,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u32 v255, v1 ; encoding: [0x00,0x00,0x08,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x08,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_rsub_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x08,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x08,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_rsub_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x08,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x08,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_rsub_u32 v255, v254 ; encoding: [0x00,0x00,0x08,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x08,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x08,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x08,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x08,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x08,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x08,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x08,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_rsub_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x08,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x08,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_rsub_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x08,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x08,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_rsub_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x08,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x08,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_rsub_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x08,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x08,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0xa4,0xda,0x01,0x02,0x00,0x00] +0x00,0x00,0xa4,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xa4,0xda,0x01,0x02,0x00,0x00] +0x34,0x12,0xa4,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xa4,0xda,0x01,0x02,0x00,0x00] +0xff,0xff,0xa4,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0xa4,0xda,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xa4,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa4,0xda,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xa4,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa4,0xda,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xa4,0xda,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_sub_clamp_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0xa4,0xda,0x01,0xfd,0x00,0xff] +0x00,0x00,0xa4,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xa4,0xda,0x01,0xfd,0x00,0xff] +0x34,0x12,0xa4,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xa4,0xda,0x01,0xfd,0x00,0xff] +0xff,0xff,0xa4,0xda,0x01,0xfd,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0xa4,0xda,0xfe,0x02,0x00,0xff] +0x00,0x00,0xa4,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xa4,0xda,0xfe,0x02,0x00,0xff] +0x34,0x12,0xa4,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xa4,0xda,0xfe,0x02,0x00,0xff] +0xff,0xff,0xa4,0xda,0xfe,0x02,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0xa4,0xda,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xa4,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xa4,0xda,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xa4,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_sub_clamp_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xa4,0xda,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xa4,0xda,0xfe,0xfd,0x00,0xff + +# GFX12: ds_sub_clamp_u32 v0, v1 ; encoding: [0x00,0x00,0x64,0xda,0x00,0x01,0x00,0x00] +0x00,0x00,0x64,0xda,0x00,0x01,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x64,0xda,0x00,0x01,0x00,0x00] +0x34,0x12,0x64,0xda,0x00,0x01,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x64,0xda,0x00,0x01,0x00,0x00] +0xff,0xff,0x64,0xda,0x00,0x01,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v0, v254 ; encoding: [0x00,0x00,0x64,0xda,0x00,0xfe,0x00,0x00] +0x00,0x00,0x64,0xda,0x00,0xfe,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x64,0xda,0x00,0xfe,0x00,0x00] +0x34,0x12,0x64,0xda,0x00,0xfe,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x64,0xda,0x00,0xfe,0x00,0x00] +0xff,0xff,0x64,0xda,0x00,0xfe,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v255, v1 ; encoding: [0x00,0x00,0x64,0xda,0xff,0x01,0x00,0x00] +0x00,0x00,0x64,0xda,0xff,0x01,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x64,0xda,0xff,0x01,0x00,0x00] +0x34,0x12,0x64,0xda,0xff,0x01,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x64,0xda,0xff,0x01,0x00,0x00] +0xff,0xff,0x64,0xda,0xff,0x01,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v255, v254 ; encoding: [0x00,0x00,0x64,0xda,0xff,0xfe,0x00,0x00] +0x00,0x00,0x64,0xda,0xff,0xfe,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x64,0xda,0xff,0xfe,0x00,0x00] +0x34,0x12,0x64,0xda,0xff,0xfe,0x00,0x00 + +# GFX12: ds_sub_clamp_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x64,0xda,0xff,0xfe,0x00,0x00] +0xff,0xff,0x64,0xda,0xff,0xfe,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v0, v1, v2 ; encoding: [0x00,0x00,0x84,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0x84,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0x84,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0x84,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0x84,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0x84,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v0, v254, v253 ; encoding: [0x00,0x00,0x84,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0x84,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x84,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0x84,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x84,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0x84,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_sub_rtn_u32 v255, v1, v253 ; encoding: [0x00,0x00,0x84,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0x84,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0x84,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0x84,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0x84,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0x84,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v254, v2 ; encoding: [0x00,0x00,0x84,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0x84,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0x84,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0x84,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0x84,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0x84,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v254, v253 ; encoding: [0x00,0x00,0x84,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0x84,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0x84,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0x84,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_sub_rtn_u32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0x84,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0x84,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_sub_rtn_u64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x84,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0x84,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_sub_rtn_u64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x84,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0x84,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_sub_rtn_u64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0x84,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0x84,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_sub_rtn_u64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x84,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0x84,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_sub_rtn_u64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x84,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0x84,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_sub_rtn_u64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x84,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0x84,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_sub_u32 v0, v1 ; encoding: [0x00,0x00,0x04,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x04,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_sub_u32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x04,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x04,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_sub_u32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x04,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x04,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_sub_u32 v0, v254 ; encoding: [0x00,0x00,0x04,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x04,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_sub_u32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x04,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x04,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_sub_u32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x04,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x04,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_sub_u32 v255, v1 ; encoding: [0x00,0x00,0x04,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x04,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_sub_u32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x04,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x04,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_sub_u32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x04,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x04,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_sub_u32 v255, v254 ; encoding: [0x00,0x00,0x04,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x04,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_sub_u32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x04,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x04,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_sub_u32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x04,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x04,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_sub_u64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x04,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x04,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_sub_u64 v1, v[2:3] ; encoding: [0x00,0x00,0x04,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x04,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_u64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x04,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x04,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_u64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x04,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x04,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_sub_u64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x04,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x04,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_swizzle_b32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0xd4,0xd8,0x01,0x00,0x00,0xff] +0xff,0xff,0xd4,0xd8,0x01,0x00,0x00,0xff + +# GFX12: ds_swizzle_b32 v5, v1 ; encoding: [0x00,0x00,0xd4,0xd8,0x01,0x00,0x00,0x05] +0x00,0x00,0xd4,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_swizzle_b32 v5, v1 offset:65535 ; encoding: [0xff,0xff,0xd4,0xd8,0x01,0x00,0x00,0x05] +0xff,0xff,0xd4,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_swizzle_b32 v5, v1 offset:swizzle(BITMASK_PERM,"00p00") ; encoding: [0x04,0x00,0xd4,0xd8,0x01,0x00,0x00,0x05] +0x04,0x00,0xd4,0xd8,0x01,0x00,0x00,0x05 + +# GFX12: ds_swizzle_b32 v8, v2 offset:swizzle(QUAD_PERM,0,1,2,3) ; encoding: [0xe4,0x80,0xd4,0xd8,0x02,0x00,0x00,0x08] +0xe4,0x80,0xd4,0xd8,0x02,0x00,0x00,0x08 + +# GFX12: ds_swizzle_b32 v8, v2 offset:swizzle(SWAP,4) ; encoding: [0x1f,0x10,0xd4,0xd8,0x02,0x00,0x00,0x08] +0x1f,0x10,0xd4,0xd8,0x02,0x00,0x00,0x08 + +# GFX12: ds_swizzle_b32 v8, v2 offset:swizzle(REVERSE,16) ; encoding: [0x1f,0x3c,0xd4,0xd8,0x02,0x00,0x00,0x08] +0x1f,0x3c,0xd4,0xd8,0x02,0x00,0x00,0x08 + +# GFX12: ds_swizzle_b32 v8, v2 offset:swizzle(BROADCAST,32,1) ; encoding: [0x20,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08] +0x20,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08 + +# GFX12: ds_swizzle_b32 v5, v255 offset:65535 ; encoding: [0xff,0xff,0xd4,0xd8,0xff,0x00,0x00,0x05] +0xff,0xff,0xd4,0xd8,0xff,0x00,0x00,0x05 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 ; encoding: [0x00,0x00,0x38,0xd8,0x00,0x01,0x02,0x00] +0x00,0x00,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset0:123 ; encoding: [0x7b,0x00,0x38,0xd8,0x00,0x01,0x02,0x00] +0x7b,0x00,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x38,0xd8,0x00,0x01,0x02,0x00] +0x7b,0x40,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x38,0xd8,0x00,0x01,0x02,0x00] +0xff,0xff,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x38,0xd8,0x00,0x01,0x02,0x00] +0xff,0x40,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x38,0xd8,0x00,0x01,0x02,0x00] +0x40,0x7b,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x38,0xd8,0x00,0x01,0x02,0x00] +0x40,0xff,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v1, v2 offset1:123 ; encoding: [0x00,0x7b,0x38,0xd8,0x00,0x01,0x02,0x00] +0x00,0x7b,0x38,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 ; encoding: [0x00,0x00,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0x00,0x00,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset0:123 ; encoding: [0x7b,0x00,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0x7b,0x00,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0x7b,0x40,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0xff,0xff,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0xff,0x40,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0x40,0x7b,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0x40,0xff,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v0, v254, v253 offset1:123 ; encoding: [0x00,0x7b,0x38,0xd8,0x00,0xfe,0xfd,0x00] +0x00,0x7b,0x38,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 ; encoding: [0x00,0x00,0x38,0xd8,0xff,0x01,0xfd,0x00] +0x00,0x00,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset0:123 ; encoding: [0x7b,0x00,0x38,0xd8,0xff,0x01,0xfd,0x00] +0x7b,0x00,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x38,0xd8,0xff,0x01,0xfd,0x00] +0x7b,0x40,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x38,0xd8,0xff,0x01,0xfd,0x00] +0xff,0xff,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x38,0xd8,0xff,0x01,0xfd,0x00] +0xff,0x40,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x38,0xd8,0xff,0x01,0xfd,0x00] +0x40,0x7b,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x38,0xd8,0xff,0x01,0xfd,0x00] +0x40,0xff,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v1, v253 offset1:123 ; encoding: [0x00,0x7b,0x38,0xd8,0xff,0x01,0xfd,0x00] +0x00,0x7b,0x38,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 ; encoding: [0x00,0x00,0x38,0xd8,0xff,0xfe,0x02,0x00] +0x00,0x00,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset0:123 ; encoding: [0x7b,0x00,0x38,0xd8,0xff,0xfe,0x02,0x00] +0x7b,0x00,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x38,0xd8,0xff,0xfe,0x02,0x00] +0x7b,0x40,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x38,0xd8,0xff,0xfe,0x02,0x00] +0xff,0xff,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x38,0xd8,0xff,0xfe,0x02,0x00] +0xff,0x40,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x38,0xd8,0xff,0xfe,0x02,0x00] +0x40,0x7b,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x38,0xd8,0xff,0xfe,0x02,0x00] +0x40,0xff,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v2 offset1:123 ; encoding: [0x00,0x7b,0x38,0xd8,0xff,0xfe,0x02,0x00] +0x00,0x7b,0x38,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 ; encoding: [0x00,0x00,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0x00,0x00,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset0:123 ; encoding: [0x7b,0x00,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0x7b,0x00,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0x7b,0x40,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0xff,0xff,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0xff,0x40,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0x40,0x7b,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0x40,0xff,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b32 v255, v254, v253 offset1:123 ; encoding: [0x00,0x7b,0x38,0xd8,0xff,0xfe,0xfd,0x00] +0x00,0x7b,0x38,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[254:255], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x38,0xd9,0x01,0xfe,0x03,0x00] +0x7f,0xff,0x38,0xd9,0x01,0xfe,0x03,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[2:3], v[254:255] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x38,0xd9,0x01,0x02,0xfe,0x00] +0x7f,0xff,0x38,0xd9,0x01,0x02,0xfe,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[2:3], v[3:4] offset0:127 ; encoding: [0x7f,0x00,0x38,0xd9,0x01,0x02,0x03,0x00] +0x7f,0x00,0x38,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[2:3], v[3:4] offset0:127 offset1:1 ; encoding: [0x7f,0x01,0x38,0xd9,0x01,0x02,0x03,0x00] +0x7f,0x01,0x38,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x38,0xd9,0x01,0x02,0x03,0x00] +0x7f,0xff,0x38,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[2:3], v[3:4] offset0:16 offset1:255 ; encoding: [0x10,0xff,0x38,0xd9,0x01,0x02,0x03,0x00] +0x10,0xff,0x38,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_b64 v1, v[2:3], v[3:4] offset1:255 ; encoding: [0x00,0xff,0x38,0xd9,0x01,0x02,0x03,0x00] +0x00,0xff,0x38,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_b64 v255, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x38,0xd9,0xff,0x02,0x03,0x00] +0x7f,0xff,0x38,0xd9,0xff,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 ; encoding: [0x00,0x00,0x3c,0xd8,0x00,0x01,0x02,0x00] +0x00,0x00,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset0:123 ; encoding: [0x7b,0x00,0x3c,0xd8,0x00,0x01,0x02,0x00] +0x7b,0x00,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x3c,0xd8,0x00,0x01,0x02,0x00] +0x7b,0x40,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x3c,0xd8,0x00,0x01,0x02,0x00] +0xff,0xff,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x3c,0xd8,0x00,0x01,0x02,0x00] +0xff,0x40,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x3c,0xd8,0x00,0x01,0x02,0x00] +0x40,0x7b,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x3c,0xd8,0x00,0x01,0x02,0x00] +0x40,0xff,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v1, v2 offset1:123 ; encoding: [0x00,0x7b,0x3c,0xd8,0x00,0x01,0x02,0x00] +0x00,0x7b,0x3c,0xd8,0x00,0x01,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 ; encoding: [0x00,0x00,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0x00,0x00,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset0:123 ; encoding: [0x7b,0x00,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0x7b,0x00,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0x7b,0x40,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0xff,0xff,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0xff,0x40,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0x40,0x7b,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0x40,0xff,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v0, v254, v253 offset1:123 ; encoding: [0x00,0x7b,0x3c,0xd8,0x00,0xfe,0xfd,0x00] +0x00,0x7b,0x3c,0xd8,0x00,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 ; encoding: [0x00,0x00,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0x00,0x00,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset0:123 ; encoding: [0x7b,0x00,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0x7b,0x00,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0x7b,0x40,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0xff,0xff,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0xff,0x40,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0x40,0x7b,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0x40,0xff,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v1, v253 offset1:123 ; encoding: [0x00,0x7b,0x3c,0xd8,0xff,0x01,0xfd,0x00] +0x00,0x7b,0x3c,0xd8,0xff,0x01,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 ; encoding: [0x00,0x00,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0x00,0x00,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset0:123 ; encoding: [0x7b,0x00,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0x7b,0x00,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0x7b,0x40,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0xff,0xff,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0xff,0x40,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0x40,0x7b,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0x40,0xff,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v2 offset1:123 ; encoding: [0x00,0x7b,0x3c,0xd8,0xff,0xfe,0x02,0x00] +0x00,0x7b,0x3c,0xd8,0xff,0xfe,0x02,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 ; encoding: [0x00,0x00,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0x00,0x00,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset0:123 ; encoding: [0x7b,0x00,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0x7b,0x00,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset0:123 offset1:64 ; encoding: [0x7b,0x40,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0x7b,0x40,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset0:255 offset1:255 ; encoding: [0xff,0xff,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0xff,0xff,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset0:255 offset1:64 ; encoding: [0xff,0x40,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0xff,0x40,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset0:64 offset1:123 ; encoding: [0x40,0x7b,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0x40,0x7b,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset0:64 offset1:255 ; encoding: [0x40,0xff,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0x40,0xff,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b32 v255, v254, v253 offset1:123 ; encoding: [0x00,0x7b,0x3c,0xd8,0xff,0xfe,0xfd,0x00] +0x00,0x7b,0x3c,0xd8,0xff,0xfe,0xfd,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[254:255], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x3c,0xd9,0x01,0xfe,0x03,0x00] +0x7f,0xff,0x3c,0xd9,0x01,0xfe,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[2:3], v[254:255] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x3c,0xd9,0x01,0x02,0xfe,0x00] +0x7f,0xff,0x3c,0xd9,0x01,0x02,0xfe,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset0:127 ; encoding: [0x7f,0x00,0x3c,0xd9,0x01,0x02,0x03,0x00] +0x7f,0x00,0x3c,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset0:127 offset1:1 ; encoding: [0x7f,0x01,0x3c,0xd9,0x01,0x02,0x03,0x00] +0x7f,0x01,0x3c,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00] +0x7f,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset0:16 offset1:255 ; encoding: [0x10,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00] +0x10,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v1, v[2:3], v[3:4] offset1:255 ; encoding: [0x00,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00] +0x00,0xff,0x3c,0xd9,0x01,0x02,0x03,0x00 + +# GFX12: ds_store_2addr_stride64_b64 v255, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0x3c,0xd9,0xff,0x02,0x03,0x00] +0x7f,0xff,0x3c,0xd9,0xff,0x02,0x03,0x00 + +# GFX12: ds_store_addtid_b32 v255 offset:65535 ; encoding: [0xff,0xff,0xc0,0xda,0x00,0xff,0x00,0x00] +0xff 0xff 0xc0 0xda 0x00 0xff 0x00 0x00 + +# GFX12: ds_store_addtid_b32 v5 ; encoding: [0x00,0x00,0xc0,0xda,0x00,0x05,0x00,0x00] +0x00 0x00 0xc0 0xda 0x00 0x05 0x00 0x00 + +# GFX12: ds_store_addtid_b32 v5 offset:4 ; encoding: [0x04,0x00,0xc0,0xda,0x00,0x05,0x00,0x00] +0x04 0x00 0xc0 0xda 0x00 0x05 0x00 0x00 + +# GFX12: ds_store_addtid_b32 v5 offset:65535 ; encoding: [0xff,0xff,0xc0,0xda,0x00,0x05,0x00,0x00] +0xff 0xff 0xc0 0xda 0x00 0x05 0x00 0x00 + +# GFX12: ds_store_b128 v1, v[252:255] offset:65535 ; encoding: [0xff,0xff,0x7c,0xdb,0x01,0xfc,0x00,0x00] +0xff,0xff,0x7c,0xdb,0x01,0xfc,0x00,0x00 + +# GFX12: ds_store_b128 v1, v[2:5] ; encoding: [0x00,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00] +0x00,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b128 v1, v[2:5] offset:4 ; encoding: [0x04,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00] +0x04,0x00,0x7c,0xdb,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b128 v1, v[2:5] offset:65535 ; encoding: [0xff,0xff,0x7c,0xdb,0x01,0x02,0x00,0x00] +0xff,0xff,0x7c,0xdb,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b128 v255, v[2:5] offset:65535 ; encoding: [0xff,0xff,0x7c,0xdb,0xff,0x02,0x00,0x00] +0xff,0xff,0x7c,0xdb,0xff,0x02,0x00,0x00 + +# GFX12: ds_store_b16 v0, v1 ; encoding: [0x00,0x00,0x7c,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x7c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b16 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x7c,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x7c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b16 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x7c,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x7c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b16 v0, v254 ; encoding: [0x00,0x00,0x7c,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x7c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b16 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x7c,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x7c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b16 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x7c,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x7c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b16 v255, v1 ; encoding: [0x00,0x00,0x7c,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x7c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b16 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x7c,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x7c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b16 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x7c,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x7c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b16 v255, v254 ; encoding: [0x00,0x00,0x7c,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x7c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b16 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x7c,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x7c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b16 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x7c,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x7c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b16_d16_hi v1, v2 ; encoding: [0x00,0x00,0x84,0xda,0x01,0x02,0x00,0x00] +0x00,0x00,0x84,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b16_d16_hi v1, v2 offset:4 ; encoding: [0x04,0x00,0x84,0xda,0x01,0x02,0x00,0x00] +0x04,0x00,0x84,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b16_d16_hi v1, v2 offset:65535 ; encoding: [0xff,0xff,0x84,0xda,0x01,0x02,0x00,0x00] +0xff,0xff,0x84,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b16_d16_hi v1, v255 offset:65535 ; encoding: [0xff,0xff,0x84,0xda,0x01,0xff,0x00,0x00] +0xff,0xff,0x84,0xda,0x01,0xff,0x00,0x00 + +# GFX12: ds_store_b16_d16_hi v255, v2 offset:65535 ; encoding: [0xff,0xff,0x84,0xda,0xff,0x02,0x00,0x00] +0xff,0xff,0x84,0xda,0xff,0x02,0x00,0x00 + +# GFX12: ds_store_b32 v0, v1 ; encoding: [0x00,0x00,0x34,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x34,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x34,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x34,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x34,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x34,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b32 v0, v254 ; encoding: [0x00,0x00,0x34,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x34,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x34,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x34,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x34,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x34,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b32 v255, v1 ; encoding: [0x00,0x00,0x34,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x34,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x34,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x34,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x34,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x34,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b32 v255, v254 ; encoding: [0x00,0x00,0x34,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x34,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x34,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x34,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x34,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x34,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x34,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x34,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_store_b64 v1, v[2:3] ; encoding: [0x00,0x00,0x34,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x34,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x34,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x34,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x34,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x34,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x34,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x34,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_store_b8 v0, v1 ; encoding: [0x00,0x00,0x78,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x78,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b8 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x78,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x78,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b8 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x78,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x78,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_store_b8 v0, v254 ; encoding: [0x00,0x00,0x78,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x78,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b8 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x78,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x78,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b8 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x78,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x78,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_store_b8 v255, v1 ; encoding: [0x00,0x00,0x78,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x78,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b8 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x78,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x78,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b8 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x78,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x78,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_store_b8 v255, v254 ; encoding: [0x00,0x00,0x78,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x78,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b8 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x78,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x78,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b8 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x78,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x78,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_store_b8_d16_hi v1, v2 ; encoding: [0x00,0x00,0x80,0xda,0x01,0x02,0x00,0x00] +0x00,0x00,0x80,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b8_d16_hi v1, v2 offset:4 ; encoding: [0x04,0x00,0x80,0xda,0x01,0x02,0x00,0x00] +0x04,0x00,0x80,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b8_d16_hi v1, v2 offset:65535 ; encoding: [0xff,0xff,0x80,0xda,0x01,0x02,0x00,0x00] +0xff,0xff,0x80,0xda,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b8_d16_hi v1, v255 offset:65535 ; encoding: [0xff,0xff,0x80,0xda,0x01,0xff,0x00,0x00] +0xff,0xff,0x80,0xda,0x01,0xff,0x00,0x00 + +# GFX12: ds_store_b8_d16_hi v255, v2 offset:65535 ; encoding: [0xff,0xff,0x80,0xda,0xff,0x02,0x00,0x00] +0xff,0xff,0x80,0xda,0xff,0x02,0x00,0x00 + +# GFX12: ds_store_b96 v1, v[253:255] offset:65535 ; encoding: [0xff,0xff,0x78,0xdb,0x01,0xfd,0x00,0x00] +0xff,0xff,0x78,0xdb,0x01,0xfd,0x00,0x00 + +# GFX12: ds_store_b96 v1, v[2:4] ; encoding: [0x00,0x00,0x78,0xdb,0x01,0x02,0x00,0x00] +0x00,0x00,0x78,0xdb,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b96 v1, v[2:4] offset:4 ; encoding: [0x04,0x00,0x78,0xdb,0x01,0x02,0x00,0x00] +0x04,0x00,0x78,0xdb,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b96 v1, v[2:4] offset:65535 ; encoding: [0xff,0xff,0x78,0xdb,0x01,0x02,0x00,0x00] +0xff,0xff,0x78,0xdb,0x01,0x02,0x00,0x00 + +# GFX12: ds_store_b96 v255, v[2:4] offset:65535 ; encoding: [0xff,0xff,0x78,0xdb,0xff,0x02,0x00,0x00] +0xff,0xff,0x78,0xdb,0xff,0x02,0x00,0x00 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[254:255], v1, v2, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd8,0x01,0x02,0x03,0xfe] +0x7f,0xff,0xb8,0xd8,0x01,0x02,0x03,0xfe + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v255 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd8,0x01,0x02,0xff,0x05] +0x7f,0xff,0xb8,0xd8,0x01,0x02,0xff,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset0:127 ; encoding: [0x7f,0x00,0xb8,0xd8,0x01,0x02,0x03,0x05] +0x7f,0x00,0xb8,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xb8,0xd8,0x01,0x02,0x03,0x05] +0x7f,0x01,0xb8,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05] +0x7f,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset0:16 offset1:255 ; encoding: [0x10,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05] +0x10,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v2, v3 offset1:255 ; encoding: [0x00,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05] +0x00,0xff,0xb8,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v1, v255, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd8,0x01,0xff,0x03,0x05] +0x7f,0xff,0xb8,0xd8,0x01,0xff,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b32 v[5:6], v255, v2, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd8,0xff,0x02,0x03,0x05] +0x7f,0xff,0xb8,0xd8,0xff,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[252:255], v1, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd9,0x01,0x02,0x03,0xfc] +0x7f,0xff,0xb8,0xd9,0x01,0x02,0x03,0xfc + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[254:255], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd9,0x01,0xfe,0x03,0x05] +0x7f,0xff,0xb8,0xd9,0x01,0xfe,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[254:255] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd9,0x01,0x02,0xfe,0x05] +0x7f,0xff,0xb8,0xd9,0x01,0x02,0xfe,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 ; encoding: [0x7f,0x00,0xb8,0xd9,0x01,0x02,0x03,0x05] +0x7f,0x00,0xb8,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xb8,0xd9,0x01,0x02,0x03,0x05] +0x7f,0x01,0xb8,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05] +0x7f,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:16 offset1:255 ; encoding: [0x10,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05] +0x10,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset1:255 ; encoding: [0x00,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05] +0x00,0xff,0xb8,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_rtn_b64 v[5:8], v255, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xb8,0xd9,0xff,0x02,0x03,0x05] +0x7f,0xff,0xb8,0xd9,0xff,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[254:255], v1, v2, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd8,0x01,0x02,0x03,0xfe] +0x7f,0xff,0xbc,0xd8,0x01,0x02,0x03,0xfe + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v255 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd8,0x01,0x02,0xff,0x05] +0x7f,0xff,0xbc,0xd8,0x01,0x02,0xff,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset0:127 ; encoding: [0x7f,0x00,0xbc,0xd8,0x01,0x02,0x03,0x05] +0x7f,0x00,0xbc,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xbc,0xd8,0x01,0x02,0x03,0x05] +0x7f,0x01,0xbc,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05] +0x7f,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset0:16 offset1:255 ; encoding: [0x10,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05] +0x10,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v2, v3 offset1:255 ; encoding: [0x00,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05] +0x00,0xff,0xbc,0xd8,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v1, v255, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd8,0x01,0xff,0x03,0x05] +0x7f,0xff,0xbc,0xd8,0x01,0xff,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b32 v[5:6], v255, v2, v3 offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd8,0xff,0x02,0x03,0x05] +0x7f,0xff,0xbc,0xd8,0xff,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[252:255], v1, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd9,0x01,0x02,0x03,0xfc] +0x7f,0xff,0xbc,0xd9,0x01,0x02,0x03,0xfc + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[254:255], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd9,0x01,0xfe,0x03,0x05] +0x7f,0xff,0xbc,0xd9,0x01,0xfe,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[254:255] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd9,0x01,0x02,0xfe,0x05] +0x7f,0xff,0xbc,0xd9,0x01,0x02,0xfe,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 ; encoding: [0x7f,0x00,0xbc,0xd9,0x01,0x02,0x03,0x05] +0x7f,0x00,0xbc,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:1 ; encoding: [0x7f,0x01,0xbc,0xd9,0x01,0x02,0x03,0x05] +0x7f,0x01,0xbc,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05] +0x7f,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset0:16 offset1:255 ; encoding: [0x10,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05] +0x10,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v1, v[2:3], v[3:4] offset1:255 ; encoding: [0x00,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05] +0x00,0xff,0xbc,0xd9,0x01,0x02,0x03,0x05 + +# GFX12: ds_storexchg_2addr_stride64_rtn_b64 v[5:8], v255, v[2:3], v[3:4] offset0:127 offset1:255 ; encoding: [0x7f,0xff,0xbc,0xd9,0xff,0x02,0x03,0x05] +0x7f,0xff,0xbc,0xd9,0xff,0x02,0x03,0x05 + +# GFX12: ds_storexchg_rtn_b32 v0, v1, v2 ; encoding: [0x00,0x00,0xb4,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0xb4,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_storexchg_rtn_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xb4,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0xb4,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_storexchg_rtn_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xb4,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0xb4,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_storexchg_rtn_b32 v0, v254, v253 ; encoding: [0x00,0x00,0xb4,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xb4,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_storexchg_rtn_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xb4,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xb4,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_storexchg_rtn_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xb4,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xb4,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_storexchg_rtn_b32 v255, v1, v253 ; encoding: [0x00,0x00,0xb4,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0xb4,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xb4,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0xb4,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xb4,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0xb4,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v254, v2 ; encoding: [0x00,0x00,0xb4,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0xb4,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xb4,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0xb4,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xb4,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0xb4,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v254, v253 ; encoding: [0x00,0x00,0xb4,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xb4,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xb4,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xb4,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_storexchg_rtn_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xb4,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xb4,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_storexchg_rtn_b64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xb4,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xb4,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_storexchg_rtn_b64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xb4,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xb4,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_storexchg_rtn_b64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_storexchg_rtn_b64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xb4,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_storexchg_rtn_b64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xb4,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xb4,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_storexchg_rtn_b64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xb4,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xb4,0xd9,0xff,0x02,0x00,0x05 + +# GFX12: ds_xor_b32 v0, v1 ; encoding: [0x00,0x00,0x2c,0xd8,0x00,0x01,0x00,0x00] +0x00,0x00,0x2c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_xor_b32 v0, v1 offset:4660 ; encoding: [0x34,0x12,0x2c,0xd8,0x00,0x01,0x00,0x00] +0x34,0x12,0x2c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_xor_b32 v0, v1 offset:65535 ; encoding: [0xff,0xff,0x2c,0xd8,0x00,0x01,0x00,0x00] +0xff,0xff,0x2c,0xd8,0x00,0x01,0x00,0x00 + +# GFX12: ds_xor_b32 v0, v254 ; encoding: [0x00,0x00,0x2c,0xd8,0x00,0xfe,0x00,0x00] +0x00,0x00,0x2c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_xor_b32 v0, v254 offset:4660 ; encoding: [0x34,0x12,0x2c,0xd8,0x00,0xfe,0x00,0x00] +0x34,0x12,0x2c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_xor_b32 v0, v254 offset:65535 ; encoding: [0xff,0xff,0x2c,0xd8,0x00,0xfe,0x00,0x00] +0xff,0xff,0x2c,0xd8,0x00,0xfe,0x00,0x00 + +# GFX12: ds_xor_b32 v255, v1 ; encoding: [0x00,0x00,0x2c,0xd8,0xff,0x01,0x00,0x00] +0x00,0x00,0x2c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_xor_b32 v255, v1 offset:4660 ; encoding: [0x34,0x12,0x2c,0xd8,0xff,0x01,0x00,0x00] +0x34,0x12,0x2c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_xor_b32 v255, v1 offset:65535 ; encoding: [0xff,0xff,0x2c,0xd8,0xff,0x01,0x00,0x00] +0xff,0xff,0x2c,0xd8,0xff,0x01,0x00,0x00 + +# GFX12: ds_xor_b32 v255, v254 ; encoding: [0x00,0x00,0x2c,0xd8,0xff,0xfe,0x00,0x00] +0x00,0x00,0x2c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_xor_b32 v255, v254 offset:4660 ; encoding: [0x34,0x12,0x2c,0xd8,0xff,0xfe,0x00,0x00] +0x34,0x12,0x2c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_xor_b32 v255, v254 offset:65535 ; encoding: [0xff,0xff,0x2c,0xd8,0xff,0xfe,0x00,0x00] +0xff,0xff,0x2c,0xd8,0xff,0xfe,0x00,0x00 + +# GFX12: ds_xor_b64 v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0x2c,0xd9,0x01,0xfe,0x00,0x00] +0xff,0xff,0x2c,0xd9,0x01,0xfe,0x00,0x00 + +# GFX12: ds_xor_b64 v1, v[2:3] ; encoding: [0x00,0x00,0x2c,0xd9,0x01,0x02,0x00,0x00] +0x00,0x00,0x2c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_xor_b64 v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0x2c,0xd9,0x01,0x02,0x00,0x00] +0x04,0x00,0x2c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_xor_b64 v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x2c,0xd9,0x01,0x02,0x00,0x00] +0xff,0xff,0x2c,0xd9,0x01,0x02,0x00,0x00 + +# GFX12: ds_xor_b64 v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0x2c,0xd9,0xff,0x02,0x00,0x00] +0xff,0xff,0x2c,0xd9,0xff,0x02,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v0, v1, v2 ; encoding: [0x00,0x00,0xac,0xd8,0x01,0x02,0x00,0x00] +0x00,0x00,0xac,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v0, v1, v2 offset:4660 ; encoding: [0x34,0x12,0xac,0xd8,0x01,0x02,0x00,0x00] +0x34,0x12,0xac,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v0, v1, v2 offset:65535 ; encoding: [0xff,0xff,0xac,0xd8,0x01,0x02,0x00,0x00] +0xff,0xff,0xac,0xd8,0x01,0x02,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v0, v254, v253 ; encoding: [0x00,0x00,0xac,0xd8,0xfe,0xfd,0x00,0x00] +0x00,0x00,0xac,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v0, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xac,0xd8,0xfe,0xfd,0x00,0x00] +0x34,0x12,0xac,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v0, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xac,0xd8,0xfe,0xfd,0x00,0x00] +0xff,0xff,0xac,0xd8,0xfe,0xfd,0x00,0x00 + +# GFX12: ds_xor_rtn_b32 v255, v1, v253 ; encoding: [0x00,0x00,0xac,0xd8,0x01,0xfd,0x00,0xff] +0x00,0x00,0xac,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v1, v253 offset:4660 ; encoding: [0x34,0x12,0xac,0xd8,0x01,0xfd,0x00,0xff] +0x34,0x12,0xac,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v1, v253 offset:65535 ; encoding: [0xff,0xff,0xac,0xd8,0x01,0xfd,0x00,0xff] +0xff,0xff,0xac,0xd8,0x01,0xfd,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v254, v2 ; encoding: [0x00,0x00,0xac,0xd8,0xfe,0x02,0x00,0xff] +0x00,0x00,0xac,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v254, v2 offset:4660 ; encoding: [0x34,0x12,0xac,0xd8,0xfe,0x02,0x00,0xff] +0x34,0x12,0xac,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v254, v2 offset:65535 ; encoding: [0xff,0xff,0xac,0xd8,0xfe,0x02,0x00,0xff] +0xff,0xff,0xac,0xd8,0xfe,0x02,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v254, v253 ; encoding: [0x00,0x00,0xac,0xd8,0xfe,0xfd,0x00,0xff] +0x00,0x00,0xac,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v254, v253 offset:4660 ; encoding: [0x34,0x12,0xac,0xd8,0xfe,0xfd,0x00,0xff] +0x34,0x12,0xac,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_xor_rtn_b32 v255, v254, v253 offset:65535 ; encoding: [0xff,0xff,0xac,0xd8,0xfe,0xfd,0x00,0xff] +0xff,0xff,0xac,0xd8,0xfe,0xfd,0x00,0xff + +# GFX12: ds_xor_rtn_b64 v[254:255], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xac,0xd9,0x01,0x02,0x00,0xfe] +0xff,0xff,0xac,0xd9,0x01,0x02,0x00,0xfe + +# GFX12: ds_xor_rtn_b64 v[5:6], v1, v[254:255] offset:65535 ; encoding: [0xff,0xff,0xac,0xd9,0x01,0xfe,0x00,0x05] +0xff,0xff,0xac,0xd9,0x01,0xfe,0x00,0x05 + +# GFX12: ds_xor_rtn_b64 v[5:6], v1, v[2:3] ; encoding: [0x00,0x00,0xac,0xd9,0x01,0x02,0x00,0x05] +0x00,0x00,0xac,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_xor_rtn_b64 v[5:6], v1, v[2:3] offset:4 ; encoding: [0x04,0x00,0xac,0xd9,0x01,0x02,0x00,0x05] +0x04,0x00,0xac,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_xor_rtn_b64 v[5:6], v1, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xac,0xd9,0x01,0x02,0x00,0x05] +0xff,0xff,0xac,0xd9,0x01,0x02,0x00,0x05 + +# GFX12: ds_xor_rtn_b64 v[5:6], v255, v[2:3] offset:65535 ; encoding: [0xff,0xff,0xac,0xd9,0xff,0x02,0x00,0x05] +0xff,0xff,0xac,0xd9,0xff,0x02,0x00,0x05