aboutsummaryrefslogtreecommitdiff
path: root/lib/std/target/amdgpu.zig
diff options
context:
space:
mode:
Diffstat (limited to 'lib/std/target/amdgpu.zig')
-rw-r--r--lib/std/target/amdgpu.zig1037
1 files changed, 570 insertions, 467 deletions
diff --git a/lib/std/target/amdgpu.zig b/lib/std/target/amdgpu.zig
index b428615124..3d4b4950ca 100644
--- a/lib/std/target/amdgpu.zig
+++ b/lib/std/target/amdgpu.zig
@@ -3,6 +3,7 @@ const Cpu = @import("std").target.Cpu;
pub const feature_BitInsts16 = Feature{
.name = "16-bit-insts",
+ .llvm_name = "16-bit-insts",
.description = "Has i16/f16 instructions",
.dependencies = &[_]*const Feature {
},
@@ -10,6 +11,7 @@ pub const feature_BitInsts16 = Feature{
pub const feature_addNoCarryInsts = Feature{
.name = "add-no-carry-insts",
+ .llvm_name = "add-no-carry-insts",
.description = "Have VALU add/sub instructions without carry out",
.dependencies = &[_]*const Feature {
},
@@ -17,6 +19,7 @@ pub const feature_addNoCarryInsts = Feature{
pub const feature_apertureRegs = Feature{
.name = "aperture-regs",
+ .llvm_name = "aperture-regs",
.description = "Has Memory Aperture Base and Size Registers",
.dependencies = &[_]*const Feature {
},
@@ -24,6 +27,7 @@ pub const feature_apertureRegs = Feature{
pub const feature_atomicFaddInsts = Feature{
.name = "atomic-fadd-insts",
+ .llvm_name = "atomic-fadd-insts",
.description = "Has buffer_atomic_add_f32, buffer_atomic_pk_add_f16, global_atomic_add_f32, global_atomic_pk_add_f16 instructions",
.dependencies = &[_]*const Feature {
},
@@ -31,6 +35,7 @@ pub const feature_atomicFaddInsts = Feature{
pub const feature_autoWaitcntBeforeBarrier = Feature{
.name = "auto-waitcnt-before-barrier",
+ .llvm_name = "auto-waitcnt-before-barrier",
.description = "Hardware automatically inserts waitcnt before barrier",
.dependencies = &[_]*const Feature {
},
@@ -38,6 +43,7 @@ pub const feature_autoWaitcntBeforeBarrier = Feature{
pub const feature_ciInsts = Feature{
.name = "ci-insts",
+ .llvm_name = "ci-insts",
.description = "Additional instructions for CI+",
.dependencies = &[_]*const Feature {
},
@@ -45,6 +51,7 @@ pub const feature_ciInsts = Feature{
pub const feature_codeObjectV3 = Feature{
.name = "code-object-v3",
+ .llvm_name = "code-object-v3",
.description = "Generate code object version 3",
.dependencies = &[_]*const Feature {
},
@@ -52,6 +59,7 @@ pub const feature_codeObjectV3 = Feature{
pub const feature_cumode = Feature{
.name = "cumode",
+ .llvm_name = "cumode",
.description = "Enable CU wavefront execution mode",
.dependencies = &[_]*const Feature {
},
@@ -59,6 +67,7 @@ pub const feature_cumode = Feature{
pub const feature_dlInsts = Feature{
.name = "dl-insts",
+ .llvm_name = "dl-insts",
.description = "Has v_fmac_f32 and v_xnor_b32 instructions",
.dependencies = &[_]*const Feature {
},
@@ -66,6 +75,7 @@ pub const feature_dlInsts = Feature{
pub const feature_dpp = Feature{
.name = "dpp",
+ .llvm_name = "dpp",
.description = "Support DPP (Data Parallel Primitives) extension",
.dependencies = &[_]*const Feature {
},
@@ -73,6 +83,7 @@ pub const feature_dpp = Feature{
pub const feature_dpp8 = Feature{
.name = "dpp8",
+ .llvm_name = "dpp8",
.description = "Support DPP8 (Data Parallel Primitives) extension",
.dependencies = &[_]*const Feature {
},
@@ -80,6 +91,7 @@ pub const feature_dpp8 = Feature{
pub const feature_noSramEccSupport = Feature{
.name = "no-sram-ecc-support",
+ .llvm_name = "no-sram-ecc-support",
.description = "Hardware does not support SRAM ECC",
.dependencies = &[_]*const Feature {
},
@@ -87,6 +99,7 @@ pub const feature_noSramEccSupport = Feature{
pub const feature_noXnackSupport = Feature{
.name = "no-xnack-support",
+ .llvm_name = "no-xnack-support",
.description = "Hardware does not support XNACK",
.dependencies = &[_]*const Feature {
},
@@ -94,6 +107,7 @@ pub const feature_noXnackSupport = Feature{
pub const feature_dot1Insts = Feature{
.name = "dot1-insts",
+ .llvm_name = "dot1-insts",
.description = "Has v_dot4_i32_i8 and v_dot8_i32_i4 instructions",
.dependencies = &[_]*const Feature {
},
@@ -101,6 +115,7 @@ pub const feature_dot1Insts = Feature{
pub const feature_dot2Insts = Feature{
.name = "dot2-insts",
+ .llvm_name = "dot2-insts",
.description = "Has v_dot2_f32_f16, v_dot2_i32_i16, v_dot2_u32_u16, v_dot4_u32_u8, v_dot8_u32_u4 instructions",
.dependencies = &[_]*const Feature {
},
@@ -108,6 +123,7 @@ pub const feature_dot2Insts = Feature{
pub const feature_dot3Insts = Feature{
.name = "dot3-insts",
+ .llvm_name = "dot3-insts",
.description = "Has v_dot8c_i32_i4 instruction",
.dependencies = &[_]*const Feature {
},
@@ -115,6 +131,7 @@ pub const feature_dot3Insts = Feature{
pub const feature_dot4Insts = Feature{
.name = "dot4-insts",
+ .llvm_name = "dot4-insts",
.description = "Has v_dot2c_i32_i16 instruction",
.dependencies = &[_]*const Feature {
},
@@ -122,6 +139,7 @@ pub const feature_dot4Insts = Feature{
pub const feature_dot5Insts = Feature{
.name = "dot5-insts",
+ .llvm_name = "dot5-insts",
.description = "Has v_dot2c_f32_f16 instruction",
.dependencies = &[_]*const Feature {
},
@@ -129,6 +147,7 @@ pub const feature_dot5Insts = Feature{
pub const feature_dot6Insts = Feature{
.name = "dot6-insts",
+ .llvm_name = "dot6-insts",
.description = "Has v_dot4c_i32_i8 instruction",
.dependencies = &[_]*const Feature {
},
@@ -136,6 +155,7 @@ pub const feature_dot6Insts = Feature{
pub const feature_DumpCode = Feature{
.name = "DumpCode",
+ .llvm_name = "DumpCode",
.description = "Dump MachineInstrs in the CodeEmitter",
.dependencies = &[_]*const Feature {
},
@@ -143,6 +163,7 @@ pub const feature_DumpCode = Feature{
pub const feature_dumpcode = Feature{
.name = "dumpcode",
+ .llvm_name = "dumpcode",
.description = "Dump MachineInstrs in the CodeEmitter",
.dependencies = &[_]*const Feature {
},
@@ -150,6 +171,7 @@ pub const feature_dumpcode = Feature{
pub const feature_enableDs128 = Feature{
.name = "enable-ds128",
+ .llvm_name = "enable-ds128",
.description = "Use ds_{read|write}_b128",
.dependencies = &[_]*const Feature {
},
@@ -157,6 +179,7 @@ pub const feature_enableDs128 = Feature{
pub const feature_loadStoreOpt = Feature{
.name = "load-store-opt",
+ .llvm_name = "load-store-opt",
.description = "Enable SI load/store optimizer pass",
.dependencies = &[_]*const Feature {
},
@@ -164,6 +187,7 @@ pub const feature_loadStoreOpt = Feature{
pub const feature_enablePrtStrictNull = Feature{
.name = "enable-prt-strict-null",
+ .llvm_name = "enable-prt-strict-null",
.description = "Enable zeroing of result registers for sparse texture fetches",
.dependencies = &[_]*const Feature {
},
@@ -171,6 +195,7 @@ pub const feature_enablePrtStrictNull = Feature{
pub const feature_siScheduler = Feature{
.name = "si-scheduler",
+ .llvm_name = "si-scheduler",
.description = "Enable SI Machine Scheduler",
.dependencies = &[_]*const Feature {
},
@@ -178,6 +203,7 @@ pub const feature_siScheduler = Feature{
pub const feature_unsafeDsOffsetFolding = Feature{
.name = "unsafe-ds-offset-folding",
+ .llvm_name = "unsafe-ds-offset-folding",
.description = "Force using DS instruction immediate offsets on SI",
.dependencies = &[_]*const Feature {
},
@@ -185,6 +211,7 @@ pub const feature_unsafeDsOffsetFolding = Feature{
pub const feature_fmaf = Feature{
.name = "fmaf",
+ .llvm_name = "fmaf",
.description = "Enable single precision FMA (not as fast as mul+add, but fused)",
.dependencies = &[_]*const Feature {
},
@@ -192,6 +219,7 @@ pub const feature_fmaf = Feature{
pub const feature_fp16Denormals = Feature{
.name = "fp16-denormals",
+ .llvm_name = "fp16-denormals",
.description = "Enable half precision denormal handling",
.dependencies = &[_]*const Feature {
&feature_fp64,
@@ -200,6 +228,7 @@ pub const feature_fp16Denormals = Feature{
pub const feature_fp32Denormals = Feature{
.name = "fp32-denormals",
+ .llvm_name = "fp32-denormals",
.description = "Enable single precision denormal handling",
.dependencies = &[_]*const Feature {
},
@@ -207,6 +236,7 @@ pub const feature_fp32Denormals = Feature{
pub const feature_fp64 = Feature{
.name = "fp64",
+ .llvm_name = "fp64",
.description = "Enable double precision operations",
.dependencies = &[_]*const Feature {
},
@@ -214,6 +244,7 @@ pub const feature_fp64 = Feature{
pub const feature_fp64Denormals = Feature{
.name = "fp64-denormals",
+ .llvm_name = "fp64-denormals",
.description = "Enable double and half precision denormal handling",
.dependencies = &[_]*const Feature {
&feature_fp64,
@@ -222,6 +253,7 @@ pub const feature_fp64Denormals = Feature{
pub const feature_fp64Fp16Denormals = Feature{
.name = "fp64-fp16-denormals",
+ .llvm_name = "fp64-fp16-denormals",
.description = "Enable double and half precision denormal handling",
.dependencies = &[_]*const Feature {
&feature_fp64,
@@ -230,6 +262,7 @@ pub const feature_fp64Fp16Denormals = Feature{
pub const feature_fpExceptions = Feature{
.name = "fp-exceptions",
+ .llvm_name = "fp-exceptions",
.description = "Enable floating point exceptions",
.dependencies = &[_]*const Feature {
},
@@ -237,6 +270,7 @@ pub const feature_fpExceptions = Feature{
pub const feature_fastFmaf = Feature{
.name = "fast-fmaf",
+ .llvm_name = "fast-fmaf",
.description = "Assuming f32 fma is at least as fast as mul + add",
.dependencies = &[_]*const Feature {
},
@@ -244,6 +278,7 @@ pub const feature_fastFmaf = Feature{
pub const feature_flatAddressSpace = Feature{
.name = "flat-address-space",
+ .llvm_name = "flat-address-space",
.description = "Support flat address space",
.dependencies = &[_]*const Feature {
},
@@ -251,6 +286,7 @@ pub const feature_flatAddressSpace = Feature{
pub const feature_flatForGlobal = Feature{
.name = "flat-for-global",
+ .llvm_name = "flat-for-global",
.description = "Force to generate flat instruction for global",
.dependencies = &[_]*const Feature {
},
@@ -258,6 +294,7 @@ pub const feature_flatForGlobal = Feature{
pub const feature_flatGlobalInsts = Feature{
.name = "flat-global-insts",
+ .llvm_name = "flat-global-insts",
.description = "Have global_* flat memory instructions",
.dependencies = &[_]*const Feature {
},
@@ -265,6 +302,7 @@ pub const feature_flatGlobalInsts = Feature{
pub const feature_flatInstOffsets = Feature{
.name = "flat-inst-offsets",
+ .llvm_name = "flat-inst-offsets",
.description = "Flat instructions have immediate offset addressing mode",
.dependencies = &[_]*const Feature {
},
@@ -272,6 +310,7 @@ pub const feature_flatInstOffsets = Feature{
pub const feature_flatScratchInsts = Feature{
.name = "flat-scratch-insts",
+ .llvm_name = "flat-scratch-insts",
.description = "Have scratch_* flat memory instructions",
.dependencies = &[_]*const Feature {
},
@@ -279,6 +318,7 @@ pub const feature_flatScratchInsts = Feature{
pub const feature_flatSegmentOffsetBug = Feature{
.name = "flat-segment-offset-bug",
+ .llvm_name = "flat-segment-offset-bug",
.description = "GFX10 bug, inst_offset ignored in flat segment",
.dependencies = &[_]*const Feature {
},
@@ -286,6 +326,7 @@ pub const feature_flatSegmentOffsetBug = Feature{
pub const feature_fmaMixInsts = Feature{
.name = "fma-mix-insts",
+ .llvm_name = "fma-mix-insts",
.description = "Has v_fma_mix_f32, v_fma_mixlo_f16, v_fma_mixhi_f16 instructions",
.dependencies = &[_]*const Feature {
},
@@ -293,6 +334,7 @@ pub const feature_fmaMixInsts = Feature{
pub const feature_gcn3Encoding = Feature{
.name = "gcn3-encoding",
+ .llvm_name = "gcn3-encoding",
.description = "Encoding format for VI",
.dependencies = &[_]*const Feature {
},
@@ -300,6 +342,7 @@ pub const feature_gcn3Encoding = Feature{
pub const feature_gfx7Gfx8Gfx9Insts = Feature{
.name = "gfx7-gfx8-gfx9-insts",
+ .llvm_name = "gfx7-gfx8-gfx9-insts",
.description = "Instructions shared in GFX7, GFX8, GFX9",
.dependencies = &[_]*const Feature {
},
@@ -307,6 +350,7 @@ pub const feature_gfx7Gfx8Gfx9Insts = Feature{
pub const feature_gfx8Insts = Feature{
.name = "gfx8-insts",
+ .llvm_name = "gfx8-insts",
.description = "Additional instructions for GFX8+",
.dependencies = &[_]*const Feature {
},
@@ -314,6 +358,7 @@ pub const feature_gfx8Insts = Feature{
pub const feature_gfx9Insts = Feature{
.name = "gfx9-insts",
+ .llvm_name = "gfx9-insts",
.description = "Additional instructions for GFX9+",
.dependencies = &[_]*const Feature {
},
@@ -321,6 +366,7 @@ pub const feature_gfx9Insts = Feature{
pub const feature_gfx10Insts = Feature{
.name = "gfx10-insts",
+ .llvm_name = "gfx10-insts",
.description = "Additional instructions for GFX10+",
.dependencies = &[_]*const Feature {
},
@@ -328,6 +374,7 @@ pub const feature_gfx10Insts = Feature{
pub const feature_instFwdPrefetchBug = Feature{
.name = "inst-fwd-prefetch-bug",
+ .llvm_name = "inst-fwd-prefetch-bug",
.description = "S_INST_PREFETCH instruction causes shader to hang",
.dependencies = &[_]*const Feature {
},
@@ -335,6 +382,7 @@ pub const feature_instFwdPrefetchBug = Feature{
pub const feature_intClampInsts = Feature{
.name = "int-clamp-insts",
+ .llvm_name = "int-clamp-insts",
.description = "Support clamp for integer destination",
.dependencies = &[_]*const Feature {
},
@@ -342,6 +390,7 @@ pub const feature_intClampInsts = Feature{
pub const feature_inv2piInlineImm = Feature{
.name = "inv-2pi-inline-imm",
+ .llvm_name = "inv-2pi-inline-imm",
.description = "Has 1 / (2 * pi) as inline immediate",
.dependencies = &[_]*const Feature {
},
@@ -349,6 +398,7 @@ pub const feature_inv2piInlineImm = Feature{
pub const feature_ldsbankcount16 = Feature{
.name = "ldsbankcount16",
+ .llvm_name = "ldsbankcount16",
.description = "The number of LDS banks per compute unit.",
.dependencies = &[_]*const Feature {
},
@@ -356,6 +406,7 @@ pub const feature_ldsbankcount16 = Feature{
pub const feature_ldsbankcount32 = Feature{
.name = "ldsbankcount32",
+ .llvm_name = "ldsbankcount32",
.description = "The number of LDS banks per compute unit.",
.dependencies = &[_]*const Feature {
},
@@ -363,6 +414,7 @@ pub const feature_ldsbankcount32 = Feature{
pub const feature_ldsBranchVmemWarHazard = Feature{
.name = "lds-branch-vmem-war-hazard",
+ .llvm_name = "lds-branch-vmem-war-hazard",
.description = "Switching between LDS and VMEM-tex not waiting VM_VSRC=0",
.dependencies = &[_]*const Feature {
},
@@ -370,6 +422,7 @@ pub const feature_ldsBranchVmemWarHazard = Feature{
pub const feature_ldsMisalignedBug = Feature{
.name = "lds-misaligned-bug",
+ .llvm_name = "lds-misaligned-bug",
.description = "Some GFX10 bug with misaligned multi-dword LDS access in WGP mode",
.dependencies = &[_]*const Feature {
},
@@ -377,6 +430,7 @@ pub const feature_ldsMisalignedBug = Feature{
pub const feature_localmemorysize0 = Feature{
.name = "localmemorysize0",
+ .llvm_name = "localmemorysize0",
.description = "The size of local memory in bytes",
.dependencies = &[_]*const Feature {
},
@@ -384,6 +438,7 @@ pub const feature_localmemorysize0 = Feature{
pub const feature_localmemorysize32768 = Feature{
.name = "localmemorysize32768",
+ .llvm_name = "localmemorysize32768",
.description = "The size of local memory in bytes",
.dependencies = &[_]*const Feature {
},
@@ -391,6 +446,7 @@ pub const feature_localmemorysize32768 = Feature{
pub const feature_localmemorysize65536 = Feature{
.name = "localmemorysize65536",
+ .llvm_name = "localmemorysize65536",
.description = "The size of local memory in bytes",
.dependencies = &[_]*const Feature {
},
@@ -398,6 +454,7 @@ pub const feature_localmemorysize65536 = Feature{
pub const feature_maiInsts = Feature{
.name = "mai-insts",
+ .llvm_name = "mai-insts",
.description = "Has mAI instructions",
.dependencies = &[_]*const Feature {
},
@@ -405,6 +462,7 @@ pub const feature_maiInsts = Feature{
pub const feature_mfmaInlineLiteralBug = Feature{
.name = "mfma-inline-literal-bug",
+ .llvm_name = "mfma-inline-literal-bug",
.description = "MFMA cannot use inline literal as SrcC",
.dependencies = &[_]*const Feature {
},
@@ -412,6 +470,7 @@ pub const feature_mfmaInlineLiteralBug = Feature{
pub const feature_mimgR128 = Feature{
.name = "mimg-r128",
+ .llvm_name = "mimg-r128",
.description = "Support 128-bit texture resources",
.dependencies = &[_]*const Feature {
},
@@ -419,6 +478,7 @@ pub const feature_mimgR128 = Feature{
pub const feature_madMixInsts = Feature{
.name = "mad-mix-insts",
+ .llvm_name = "mad-mix-insts",
.description = "Has v_mad_mix_f32, v_mad_mixlo_f16, v_mad_mixhi_f16 instructions",
.dependencies = &[_]*const Feature {
},
@@ -426,6 +486,7 @@ pub const feature_madMixInsts = Feature{
pub const feature_maxPrivateElementSize4 = Feature{
.name = "max-private-element-size-4",
+ .llvm_name = "max-private-element-size-4",
.description = "Maximum private access size may be 4",
.dependencies = &[_]*const Feature {
},
@@ -433,6 +494,7 @@ pub const feature_maxPrivateElementSize4 = Feature{
pub const feature_maxPrivateElementSize8 = Feature{
.name = "max-private-element-size-8",
+ .llvm_name = "max-private-element-size-8",
.description = "Maximum private access size may be 8",
.dependencies = &[_]*const Feature {
},
@@ -440,6 +502,7 @@ pub const feature_maxPrivateElementSize8 = Feature{
pub const feature_maxPrivateElementSize16 = Feature{
.name = "max-private-element-size-16",
+ .llvm_name = "max-private-element-size-16",
.description = "Maximum private access size may be 16",
.dependencies = &[_]*const Feature {
},
@@ -447,6 +510,7 @@ pub const feature_maxPrivateElementSize16 = Feature{
pub const feature_movrel = Feature{
.name = "movrel",
+ .llvm_name = "movrel",
.description = "Has v_movrel*_b32 instructions",
.dependencies = &[_]*const Feature {
},
@@ -454,6 +518,7 @@ pub const feature_movrel = Feature{
pub const feature_nsaEncoding = Feature{
.name = "nsa-encoding",
+ .llvm_name = "nsa-encoding",
.description = "Support NSA encoding for image instructions",
.dependencies = &[_]*const Feature {
},
@@ -461,6 +526,7 @@ pub const feature_nsaEncoding = Feature{
pub const feature_nsaToVmemBug = Feature{
.name = "nsa-to-vmem-bug",
+ .llvm_name = "nsa-to-vmem-bug",
.description = "MIMG-NSA followed by VMEM fail if EXEC_LO or EXEC_HI equals zero",
.dependencies = &[_]*const Feature {
},
@@ -468,6 +534,7 @@ pub const feature_nsaToVmemBug = Feature{
pub const feature_noDataDepHazard = Feature{
.name = "no-data-dep-hazard",
+ .llvm_name = "no-data-dep-hazard",
.description = "Does not need SW waitstates",
.dependencies = &[_]*const Feature {
},
@@ -475,6 +542,7 @@ pub const feature_noDataDepHazard = Feature{
pub const feature_noSdstCmpx = Feature{
.name = "no-sdst-cmpx",
+ .llvm_name = "no-sdst-cmpx",
.description = "V_CMPX does not write VCC/SGPR in addition to EXEC",
.dependencies = &[_]*const Feature {
},
@@ -482,6 +550,7 @@ pub const feature_noSdstCmpx = Feature{
pub const feature_offset3fBug = Feature{
.name = "offset-3f-bug",
+ .llvm_name = "offset-3f-bug",
.description = "Branch offset of 3f hardware bug",
.dependencies = &[_]*const Feature {
},
@@ -489,6 +558,7 @@ pub const feature_offset3fBug = Feature{
pub const feature_pkFmacF16Inst = Feature{
.name = "pk-fmac-f16-inst",
+ .llvm_name = "pk-fmac-f16-inst",
.description = "Has v_pk_fmac_f16 instruction",
.dependencies = &[_]*const Feature {
},
@@ -496,6 +566,7 @@ pub const feature_pkFmacF16Inst = Feature{
pub const feature_promoteAlloca = Feature{
.name = "promote-alloca",
+ .llvm_name = "promote-alloca",
.description = "Enable promote alloca pass",
.dependencies = &[_]*const Feature {
},
@@ -503,6 +574,7 @@ pub const feature_promoteAlloca = Feature{
pub const feature_r128A16 = Feature{
.name = "r128-a16",
+ .llvm_name = "r128-a16",
.description = "Support 16 bit coordindates/gradients/lod/clamp/mip types on gfx9",
.dependencies = &[_]*const Feature {
},
@@ -510,6 +582,7 @@ pub const feature_r128A16 = Feature{
pub const feature_registerBanking = Feature{
.name = "register-banking",
+ .llvm_name = "register-banking",
.description = "Has register banking",
.dependencies = &[_]*const Feature {
},
@@ -517,6 +590,7 @@ pub const feature_registerBanking = Feature{
pub const feature_sdwa = Feature{
.name = "sdwa",
+ .llvm_name = "sdwa",
.description = "Support SDWA (Sub-DWORD Addressing) extension",
.dependencies = &[_]*const Feature {
},
@@ -524,6 +598,7 @@ pub const feature_sdwa = Feature{
pub const feature_sdwaMav = Feature{
.name = "sdwa-mav",
+ .llvm_name = "sdwa-mav",
.description = "Support v_mac_f32/f16 with SDWA (Sub-DWORD Addressing) extension",
.dependencies = &[_]*const Feature {
},
@@ -531,6 +606,7 @@ pub const feature_sdwaMav = Feature{
pub const feature_sdwaOmod = Feature{
.name = "sdwa-omod",
+ .llvm_name = "sdwa-omod",
.description = "Support OMod with SDWA (Sub-DWORD Addressing) extension",
.dependencies = &[_]*const Feature {
},
@@ -538,6 +614,7 @@ pub const feature_sdwaOmod = Feature{
pub const feature_sdwaOutModsVopc = Feature{
.name = "sdwa-out-mods-vopc",
+ .llvm_name = "sdwa-out-mods-vopc",
.description = "Support clamp for VOPC with SDWA (Sub-DWORD Addressing) extension",
.dependencies = &[_]*const Feature {
},
@@ -545,6 +622,7 @@ pub const feature_sdwaOutModsVopc = Feature{
pub const feature_sdwaScalar = Feature{
.name = "sdwa-scalar",
+ .llvm_name = "sdwa-scalar",
.description = "Support scalar register with SDWA (Sub-DWORD Addressing) extension",
.dependencies = &[_]*const Feature {
},
@@ -552,6 +630,7 @@ pub const feature_sdwaScalar = Feature{
pub const feature_sdwaSdst = Feature{
.name = "sdwa-sdst",
+ .llvm_name = "sdwa-sdst",
.description = "Support scalar dst for VOPC with SDWA (Sub-DWORD Addressing) extension",
.dependencies = &[_]*const Feature {
},
@@ -559,6 +638,7 @@ pub const feature_sdwaSdst = Feature{
pub const feature_sgprInitBug = Feature{
.name = "sgpr-init-bug",
+ .llvm_name = "sgpr-init-bug",
.description = "VI SGPR initialization bug requiring a fixed SGPR allocation size",
.dependencies = &[_]*const Feature {
},
@@ -566,6 +646,7 @@ pub const feature_sgprInitBug = Feature{
pub const feature_smemToVectorWriteHazard = Feature{
.name = "smem-to-vector-write-hazard",
+ .llvm_name = "smem-to-vector-write-hazard",
.description = "s_load_dword followed by v_cmp page faults",
.dependencies = &[_]*const Feature {
},
@@ -573,6 +654,7 @@ pub const feature_smemToVectorWriteHazard = Feature{
pub const feature_sMemrealtime = Feature{
.name = "s-memrealtime",
+ .llvm_name = "s-memrealtime",
.description = "Has s_memrealtime instruction",
.dependencies = &[_]*const Feature {
},
@@ -580,6 +662,7 @@ pub const feature_sMemrealtime = Feature{
pub const feature_sramEcc = Feature{
.name = "sram-ecc",
+ .llvm_name = "sram-ecc",
.description = "Enable SRAM ECC",
.dependencies = &[_]*const Feature {
},
@@ -587,6 +670,7 @@ pub const feature_sramEcc = Feature{
pub const feature_scalarAtomics = Feature{
.name = "scalar-atomics",
+ .llvm_name = "scalar-atomics",
.description = "Has atomic scalar memory instructions",
.dependencies = &[_]*const Feature {
},
@@ -594,6 +678,7 @@ pub const feature_scalarAtomics = Feature{
pub const feature_scalarFlatScratchInsts = Feature{
.name = "scalar-flat-scratch-insts",
+ .llvm_name = "scalar-flat-scratch-insts",
.description = "Have s_scratch_* flat memory instructions",
.dependencies = &[_]*const Feature {
},
@@ -601,6 +686,7 @@ pub const feature_scalarFlatScratchInsts = Feature{
pub const feature_scalarStores = Feature{
.name = "scalar-stores",
+ .llvm_name = "scalar-stores",
.description = "Has store scalar memory instructions",
.dependencies = &[_]*const Feature {
},
@@ -608,6 +694,7 @@ pub const feature_scalarStores = Feature{
pub const feature_trapHandler = Feature{
.name = "trap-handler",
+ .llvm_name = "trap-handler",
.description = "Trap handler support",
.dependencies = &[_]*const Feature {
},
@@ -615,6 +702,7 @@ pub const feature_trapHandler = Feature{
pub const feature_trigReducedRange = Feature{
.name = "trig-reduced-range",
+ .llvm_name = "trig-reduced-range",
.description = "Requires use of fract on arguments to trig instructions",
.dependencies = &[_]*const Feature {
},
@@ -622,6 +710,7 @@ pub const feature_trigReducedRange = Feature{
pub const feature_unalignedBufferAccess = Feature{
.name = "unaligned-buffer-access",
+ .llvm_name = "unaligned-buffer-access",
.description = "Support unaligned global loads and stores",
.dependencies = &[_]*const Feature {
},
@@ -629,6 +718,7 @@ pub const feature_unalignedBufferAccess = Feature{
pub const feature_unalignedScratchAccess = Feature{
.name = "unaligned-scratch-access",
+ .llvm_name = "unaligned-scratch-access",
.description = "Support unaligned scratch loads and stores",
.dependencies = &[_]*const Feature {
},
@@ -636,6 +726,7 @@ pub const feature_unalignedScratchAccess = Feature{
pub const feature_unpackedD16Vmem = Feature{
.name = "unpacked-d16-vmem",
+ .llvm_name = "unpacked-d16-vmem",
.description = "Has unpacked d16 vmem instructions",
.dependencies = &[_]*const Feature {
},
@@ -643,6 +734,7 @@ pub const feature_unpackedD16Vmem = Feature{
pub const feature_vgprIndexMode = Feature{
.name = "vgpr-index-mode",
+ .llvm_name = "vgpr-index-mode",
.description = "Has VGPR mode register indexing",
.dependencies = &[_]*const Feature {
},
@@ -650,6 +742,7 @@ pub const feature_vgprIndexMode = Feature{
pub const feature_vmemToScalarWriteHazard = Feature{
.name = "vmem-to-scalar-write-hazard",
+ .llvm_name = "vmem-to-scalar-write-hazard",
.description = "VMEM instruction followed by scalar writing to EXEC mask, M0 or SGPR leads to incorrect execution.",
.dependencies = &[_]*const Feature {
},
@@ -657,6 +750,7 @@ pub const feature_vmemToScalarWriteHazard = Feature{
pub const feature_vop3Literal = Feature{
.name = "vop3-literal",
+ .llvm_name = "vop3-literal",
.description = "Can use one literal in VOP3",
.dependencies = &[_]*const Feature {
},
@@ -664,6 +758,7 @@ pub const feature_vop3Literal = Feature{
pub const feature_vop3p = Feature{
.name = "vop3p",
+ .llvm_name = "vop3p",
.description = "Has VOP3P packed instructions",
.dependencies = &[_]*const Feature {
},
@@ -671,6 +766,7 @@ pub const feature_vop3p = Feature{
pub const feature_vcmpxExecWarHazard = Feature{
.name = "vcmpx-exec-war-hazard",
+ .llvm_name = "vcmpx-exec-war-hazard",
.description = "V_CMPX WAR hazard on EXEC (V_CMPX issue ONLY)",
.dependencies = &[_]*const Feature {
},
@@ -678,6 +774,7 @@ pub const feature_vcmpxExecWarHazard = Feature{
pub const feature_vcmpxPermlaneHazard = Feature{
.name = "vcmpx-permlane-hazard",
+ .llvm_name = "vcmpx-permlane-hazard",
.description = "TODO: describe me",
.dependencies = &[_]*const Feature {
},
@@ -685,6 +782,7 @@ pub const feature_vcmpxPermlaneHazard = Feature{
pub const feature_vscnt = Feature{
.name = "vscnt",
+ .llvm_name = "vscnt",
.description = "Has separate store vscnt counter",
.dependencies = &[_]*const Feature {
},
@@ -692,6 +790,7 @@ pub const feature_vscnt = Feature{
pub const feature_wavefrontsize16 = Feature{
.name = "wavefrontsize16",
+ .llvm_name = "wavefrontsize16",
.description = "The number of threads per wavefront",
.dependencies = &[_]*const Feature {
},
@@ -699,6 +798,7 @@ pub const feature_wavefrontsize16 = Feature{
pub const feature_wavefrontsize32 = Feature{
.name = "wavefrontsize32",
+ .llvm_name = "wavefrontsize32",
.description = "The number of threads per wavefront",
.dependencies = &[_]*const Feature {
},
@@ -706,6 +806,7 @@ pub const feature_wavefrontsize32 = Feature{
pub const feature_wavefrontsize64 = Feature{
.name = "wavefrontsize64",
+ .llvm_name = "wavefrontsize64",
.description = "The number of threads per wavefront",
.dependencies = &[_]*const Feature {
},
@@ -713,6 +814,7 @@ pub const feature_wavefrontsize64 = Feature{
pub const feature_xnack = Feature{
.name = "xnack",
+ .llvm_name = "xnack",
.description = "Enable XNACK support",
.dependencies = &[_]*const Feature {
},
@@ -720,6 +822,7 @@ pub const feature_xnack = Feature{
pub const feature_halfRate64Ops = Feature{
.name = "half-rate-64-ops",
+ .llvm_name = "half-rate-64-ops",
.description = "Most fp64 instructions are half rate instead of quarter",
.dependencies = &[_]*const Feature {
},
@@ -838,16 +941,16 @@ pub const cpu_bonaire = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -859,28 +962,28 @@ pub const cpu_carrizo = Cpu{
&feature_fastFmaf,
&feature_ldsbankcount32,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
&feature_xnack,
&feature_halfRate64Ops,
},
@@ -894,28 +997,28 @@ pub const cpu_fiji = Cpu{
&feature_noXnackSupport,
&feature_ldsbankcount32,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -944,40 +1047,40 @@ pub const cpu_gfx1010 = Cpu{
&feature_dlInsts,
&feature_noXnackSupport,
&feature_flatSegmentOffsetBug,
- &feature_noSdstCmpx,
- &feature_flatScratchInsts,
- &feature_fp64,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
- &feature_fastFmaf,
- &feature_BitInsts16,
- &feature_sdwa,
- &feature_gfx9Insts,
&feature_flatAddressSpace,
- &feature_vop3Literal,
- &feature_apertureRegs,
+ &feature_gfx9Insts,
+ &feature_fastFmaf,
+ &feature_flatScratchInsts,
&feature_mimgR128,
- &feature_sdwaScalar,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
- &feature_gfx8Insts,
+ &feature_noSdstCmpx,
+ &feature_sdwaSdst,
+ &feature_vop3p,
&feature_intClampInsts,
- &feature_vscnt,
+ &feature_dpp,
+ &feature_registerBanking,
&feature_movrel,
- &feature_localmemorysize65536,
- &feature_gfx10Insts,
+ &feature_gfx8Insts,
+ &feature_sdwa,
+ &feature_noDataDepHazard,
&feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp8,
+ &feature_gfx10Insts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_pkFmacF16Inst,
- &feature_dpp,
- &feature_sdwaSdst,
&feature_flatInstOffsets,
&feature_fmaMixInsts,
- &feature_registerBanking,
- &feature_noDataDepHazard,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_vscnt,
+ &feature_apertureRegs,
+ &feature_dpp8,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_vop3Literal,
&feature_instFwdPrefetchBug,
&feature_ldsbankcount32,
&feature_ldsBranchVmemWarHazard,
@@ -1008,40 +1111,40 @@ pub const cpu_gfx1011 = Cpu{
&feature_dot5Insts,
&feature_dot6Insts,
&feature_flatSegmentOffsetBug,
- &feature_noSdstCmpx,
- &feature_flatScratchInsts,
- &feature_fp64,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
- &feature_fastFmaf,
- &feature_BitInsts16,
- &feature_sdwa,
- &feature_gfx9Insts,
&feature_flatAddressSpace,
- &feature_vop3Literal,
- &feature_apertureRegs,
+ &feature_gfx9Insts,
+ &feature_fastFmaf,
+ &feature_flatScratchInsts,
&feature_mimgR128,
- &feature_sdwaScalar,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
- &feature_gfx8Insts,
+ &feature_noSdstCmpx,
+ &feature_sdwaSdst,
+ &feature_vop3p,
&feature_intClampInsts,
- &feature_vscnt,
+ &feature_dpp,
+ &feature_registerBanking,
&feature_movrel,
- &feature_localmemorysize65536,
- &feature_gfx10Insts,
+ &feature_gfx8Insts,
+ &feature_sdwa,
+ &feature_noDataDepHazard,
&feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp8,
+ &feature_gfx10Insts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_pkFmacF16Inst,
- &feature_dpp,
- &feature_sdwaSdst,
&feature_flatInstOffsets,
&feature_fmaMixInsts,
- &feature_registerBanking,
- &feature_noDataDepHazard,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_vscnt,
+ &feature_apertureRegs,
+ &feature_dpp8,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_vop3Literal,
&feature_instFwdPrefetchBug,
&feature_ldsbankcount32,
&feature_ldsBranchVmemWarHazard,
@@ -1071,40 +1174,40 @@ pub const cpu_gfx1012 = Cpu{
&feature_dot5Insts,
&feature_dot6Insts,
&feature_flatSegmentOffsetBug,
- &feature_noSdstCmpx,
- &feature_flatScratchInsts,
- &feature_fp64,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
- &feature_fastFmaf,
- &feature_BitInsts16,
- &feature_sdwa,
- &feature_gfx9Insts,
&feature_flatAddressSpace,
- &feature_vop3Literal,
- &feature_apertureRegs,
+ &feature_gfx9Insts,
+ &feature_fastFmaf,
+ &feature_flatScratchInsts,
&feature_mimgR128,
- &feature_sdwaScalar,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
- &feature_gfx8Insts,
+ &feature_noSdstCmpx,
+ &feature_sdwaSdst,
+ &feature_vop3p,
&feature_intClampInsts,
- &feature_vscnt,
+ &feature_dpp,
+ &feature_registerBanking,
&feature_movrel,
- &feature_localmemorysize65536,
- &feature_gfx10Insts,
+ &feature_gfx8Insts,
+ &feature_sdwa,
+ &feature_noDataDepHazard,
&feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp8,
+ &feature_gfx10Insts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_pkFmacF16Inst,
- &feature_dpp,
- &feature_sdwaSdst,
&feature_flatInstOffsets,
&feature_fmaMixInsts,
- &feature_registerBanking,
- &feature_noDataDepHazard,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_vscnt,
+ &feature_apertureRegs,
+ &feature_dpp8,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_vop3Literal,
&feature_instFwdPrefetchBug,
&feature_ldsbankcount32,
&feature_ldsBranchVmemWarHazard,
@@ -1131,13 +1234,13 @@ pub const cpu_gfx600 = Cpu{
&feature_noXnackSupport,
&feature_fastFmaf,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
&feature_halfRate64Ops,
},
};
@@ -1149,13 +1252,13 @@ pub const cpu_gfx601 = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
},
};
@@ -1166,16 +1269,16 @@ pub const cpu_gfx700 = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1187,16 +1290,16 @@ pub const cpu_gfx701 = Cpu{
&feature_noXnackSupport,
&feature_fastFmaf,
&feature_ldsbankcount32,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
&feature_halfRate64Ops,
},
};
@@ -1209,16 +1312,16 @@ pub const cpu_gfx702 = Cpu{
&feature_noXnackSupport,
&feature_fastFmaf,
&feature_ldsbankcount16,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1229,16 +1332,16 @@ pub const cpu_gfx703 = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount16,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1249,16 +1352,16 @@ pub const cpu_gfx704 = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1270,28 +1373,28 @@ pub const cpu_gfx801 = Cpu{
&feature_fastFmaf,
&feature_ldsbankcount32,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
&feature_xnack,
&feature_halfRate64Ops,
},
@@ -1306,28 +1409,28 @@ pub const cpu_gfx802 = Cpu{
&feature_ldsbankcount32,
&feature_sgprInitBug,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -1339,28 +1442,28 @@ pub const cpu_gfx803 = Cpu{
&feature_noXnackSupport,
&feature_ldsbankcount32,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -1370,28 +1473,28 @@ pub const cpu_gfx810 = Cpu{
.dependencies = &[_]*const Feature {
&feature_codeObjectV3,
&feature_ldsbankcount16,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
&feature_xnack,
},
};
@@ -1403,36 +1506,36 @@ pub const cpu_gfx900 = Cpu{
&feature_codeObjectV3,
&feature_noSramEccSupport,
&feature_noXnackSupport,
- &feature_flatScratchInsts,
- &feature_fp64,
- &feature_r128A16,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
+ &feature_scalarStores,
+ &feature_flatAddressSpace,
+ &feature_vgprIndexMode,
+ &feature_gfx9Insts,
+ &feature_r128A16,
&feature_fastFmaf,
- &feature_BitInsts16,
&feature_wavefrontsize64,
- &feature_sdwa,
- &feature_gfx9Insts,
- &feature_flatAddressSpace,
- &feature_apertureRegs,
- &feature_sdwaScalar,
- &feature_ciInsts,
+ &feature_flatScratchInsts,
+ &feature_sdwaSdst,
+ &feature_vop3p,
+ &feature_intClampInsts,
+ &feature_dpp,
&feature_scalarAtomics,
- &feature_scalarFlatScratchInsts,
- &feature_inv2piInlineImm,
- &feature_vgprIndexMode,
&feature_gcn3Encoding,
&feature_gfx8Insts,
- &feature_scalarStores,
- &feature_intClampInsts,
- &feature_localmemorysize65536,
- &feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_sdwaSdst,
+ &feature_sdwa,
+ &feature_flatGlobalInsts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_flatInstOffsets,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_apertureRegs,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_scalarFlatScratchInsts,
&feature_ldsbankcount32,
&feature_madMixInsts,
},
@@ -1444,36 +1547,36 @@ pub const cpu_gfx902 = Cpu{
.dependencies = &[_]*const Feature {
&feature_codeObjectV3,
&feature_noSramEccSupport,
- &feature_flatScratchInsts,
- &feature_fp64,
- &feature_r128A16,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
+ &feature_scalarStores,
+ &feature_flatAddressSpace,
+ &feature_vgprIndexMode,
+ &feature_gfx9Insts,
+ &feature_r128A16,
&feature_fastFmaf,
- &feature_BitInsts16,
&feature_wavefrontsize64,
- &feature_sdwa,
- &feature_gfx9Insts,
- &feature_flatAddressSpace,
- &feature_apertureRegs,
- &feature_sdwaScalar,
- &feature_ciInsts,
+ &feature_flatScratchInsts,
+ &feature_sdwaSdst,
+ &feature_vop3p,
+ &feature_intClampInsts,
+ &feature_dpp,
&feature_scalarAtomics,
- &feature_scalarFlatScratchInsts,
- &feature_inv2piInlineImm,
- &feature_vgprIndexMode,
&feature_gcn3Encoding,
&feature_gfx8Insts,
- &feature_scalarStores,
- &feature_intClampInsts,
- &feature_localmemorysize65536,
- &feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_sdwaSdst,
+ &feature_sdwa,
+ &feature_flatGlobalInsts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_flatInstOffsets,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_apertureRegs,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_scalarFlatScratchInsts,
&feature_ldsbankcount32,
&feature_madMixInsts,
&feature_xnack,
@@ -1488,36 +1591,36 @@ pub const cpu_gfx904 = Cpu{
&feature_noSramEccSupport,
&feature_noXnackSupport,
&feature_fmaMixInsts,
- &feature_flatScratchInsts,
- &feature_fp64,
- &feature_r128A16,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
+ &feature_scalarStores,
+ &feature_flatAddressSpace,
+ &feature_vgprIndexMode,
+ &feature_gfx9Insts,
+ &feature_r128A16,
&feature_fastFmaf,
- &feature_BitInsts16,
&feature_wavefrontsize64,
- &feature_sdwa,
- &feature_gfx9Insts,
- &feature_flatAddressSpace,
- &feature_apertureRegs,
- &feature_sdwaScalar,
- &feature_ciInsts,
+ &feature_flatScratchInsts,
+ &feature_sdwaSdst,
+ &feature_vop3p,
+ &feature_intClampInsts,
+ &feature_dpp,
&feature_scalarAtomics,
- &feature_scalarFlatScratchInsts,
- &feature_inv2piInlineImm,
- &feature_vgprIndexMode,
&feature_gcn3Encoding,
&feature_gfx8Insts,
- &feature_scalarStores,
- &feature_intClampInsts,
- &feature_localmemorysize65536,
- &feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_sdwaSdst,
+ &feature_sdwa,
+ &feature_flatGlobalInsts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_flatInstOffsets,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_apertureRegs,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_scalarFlatScratchInsts,
&feature_ldsbankcount32,
},
};
@@ -1532,36 +1635,36 @@ pub const cpu_gfx906 = Cpu{
&feature_dot1Insts,
&feature_dot2Insts,
&feature_fmaMixInsts,
- &feature_flatScratchInsts,
- &feature_fp64,
- &feature_r128A16,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
+ &feature_scalarStores,
+ &feature_flatAddressSpace,
+ &feature_vgprIndexMode,
+ &feature_gfx9Insts,
+ &feature_r128A16,
&feature_fastFmaf,
- &feature_BitInsts16,
&feature_wavefrontsize64,
- &feature_sdwa,
- &feature_gfx9Insts,
- &feature_flatAddressSpace,
- &feature_apertureRegs,
- &feature_sdwaScalar,
- &feature_ciInsts,
+ &feature_flatScratchInsts,
+ &feature_sdwaSdst,
+ &feature_vop3p,
+ &feature_intClampInsts,
+ &feature_dpp,
&feature_scalarAtomics,
- &feature_scalarFlatScratchInsts,
- &feature_inv2piInlineImm,
- &feature_vgprIndexMode,
&feature_gcn3Encoding,
&feature_gfx8Insts,
- &feature_scalarStores,
- &feature_intClampInsts,
- &feature_localmemorysize65536,
- &feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_sdwaSdst,
+ &feature_sdwa,
+ &feature_flatGlobalInsts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_flatInstOffsets,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_apertureRegs,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_scalarFlatScratchInsts,
&feature_ldsbankcount32,
&feature_halfRate64Ops,
},
@@ -1581,36 +1684,36 @@ pub const cpu_gfx908 = Cpu{
&feature_dot5Insts,
&feature_dot6Insts,
&feature_fmaMixInsts,
- &feature_flatScratchInsts,
- &feature_fp64,
- &feature_r128A16,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
+ &feature_scalarStores,
+ &feature_flatAddressSpace,
+ &feature_vgprIndexMode,
+ &feature_gfx9Insts,
+ &feature_r128A16,
&feature_fastFmaf,
- &feature_BitInsts16,
&feature_wavefrontsize64,
- &feature_sdwa,
- &feature_gfx9Insts,
- &feature_flatAddressSpace,
- &feature_apertureRegs,
- &feature_sdwaScalar,
- &feature_ciInsts,
+ &feature_flatScratchInsts,
+ &feature_sdwaSdst,
+ &feature_vop3p,
+ &feature_intClampInsts,
+ &feature_dpp,
&feature_scalarAtomics,
- &feature_scalarFlatScratchInsts,
- &feature_inv2piInlineImm,
- &feature_vgprIndexMode,
&feature_gcn3Encoding,
&feature_gfx8Insts,
- &feature_scalarStores,
- &feature_intClampInsts,
- &feature_localmemorysize65536,
- &feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_sdwaSdst,
+ &feature_sdwa,
+ &feature_flatGlobalInsts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_flatInstOffsets,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_apertureRegs,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_scalarFlatScratchInsts,
&feature_ldsbankcount32,
&feature_maiInsts,
&feature_mfmaInlineLiteralBug,
@@ -1625,36 +1728,36 @@ pub const cpu_gfx909 = Cpu{
.llvm_name = "gfx909",
.dependencies = &[_]*const Feature {
&feature_codeObjectV3,
- &feature_flatScratchInsts,
- &feature_fp64,
- &feature_r128A16,
+ &feature_sdwaOmod,
&feature_sMemrealtime,
- &feature_addNoCarryInsts,
- &feature_vop3p,
+ &feature_scalarStores,
+ &feature_flatAddressSpace,
+ &feature_vgprIndexMode,
+ &feature_gfx9Insts,
+ &feature_r128A16,
&feature_fastFmaf,
- &feature_BitInsts16,
&feature_wavefrontsize64,
- &feature_sdwa,
- &feature_gfx9Insts,
- &feature_flatAddressSpace,
- &feature_apertureRegs,
- &feature_sdwaScalar,
- &feature_ciInsts,
+ &feature_flatScratchInsts,
+ &feature_sdwaSdst,
+ &feature_vop3p,
+ &feature_intClampInsts,
+ &feature_dpp,
&feature_scalarAtomics,
- &feature_scalarFlatScratchInsts,
- &feature_inv2piInlineImm,
- &feature_vgprIndexMode,
&feature_gcn3Encoding,
&feature_gfx8Insts,
- &feature_scalarStores,
- &feature_intClampInsts,
- &feature_localmemorysize65536,
- &feature_flatGlobalInsts,
- &feature_sdwaOmod,
- &feature_dpp,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_sdwaSdst,
+ &feature_sdwa,
+ &feature_flatGlobalInsts,
+ &feature_localmemorysize65536,
+ &feature_BitInsts16,
+ &feature_addNoCarryInsts,
&feature_flatInstOffsets,
+ &feature_sdwaScalar,
+ &feature_inv2piInlineImm,
+ &feature_apertureRegs,
+ &feature_fp64,
+ &feature_ciInsts,
+ &feature_scalarFlatScratchInsts,
&feature_ldsbankcount32,
&feature_madMixInsts,
&feature_xnack,
@@ -1668,13 +1771,13 @@ pub const cpu_hainan = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
},
};
@@ -1686,16 +1789,16 @@ pub const cpu_hawaii = Cpu{
&feature_noXnackSupport,
&feature_fastFmaf,
&feature_ldsbankcount32,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
&feature_halfRate64Ops,
},
};
@@ -1709,28 +1812,28 @@ pub const cpu_iceland = Cpu{
&feature_ldsbankcount32,
&feature_sgprInitBug,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -1741,16 +1844,16 @@ pub const cpu_kabini = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount16,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1761,16 +1864,16 @@ pub const cpu_kaveri = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1781,16 +1884,16 @@ pub const cpu_mullins = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount16,
+ &feature_movrel,
&feature_flatAddressSpace,
- &feature_fp64,
- &feature_mimgR128,
+ &feature_trigReducedRange,
&feature_gfx7Gfx8Gfx9Insts,
- &feature_movrel,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
+ &feature_noSramEccSupport,
&feature_localmemorysize65536,
+ &feature_fp64,
&feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
- &feature_trigReducedRange,
},
};
@@ -1801,13 +1904,13 @@ pub const cpu_oland = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
},
};
@@ -1818,13 +1921,13 @@ pub const cpu_pitcairn = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
},
};
@@ -1836,28 +1939,28 @@ pub const cpu_polaris10 = Cpu{
&feature_noXnackSupport,
&feature_ldsbankcount32,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -1869,28 +1972,28 @@ pub const cpu_polaris11 = Cpu{
&feature_noXnackSupport,
&feature_ldsbankcount32,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -1900,28 +2003,28 @@ pub const cpu_stoney = Cpu{
.dependencies = &[_]*const Feature {
&feature_codeObjectV3,
&feature_ldsbankcount16,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
&feature_xnack,
},
};
@@ -1934,13 +2037,13 @@ pub const cpu_tahiti = Cpu{
&feature_noXnackSupport,
&feature_fastFmaf,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
&feature_halfRate64Ops,
},
};
@@ -1954,28 +2057,28 @@ pub const cpu_tonga = Cpu{
&feature_ldsbankcount32,
&feature_sgprInitBug,
&feature_unpackedD16Vmem,
- &feature_fp64,
&feature_sMemrealtime,
- &feature_BitInsts16,
- &feature_wavefrontsize64,
- &feature_sdwa,
+ &feature_scalarStores,
&feature_flatAddressSpace,
- &feature_sdwaMav,
- &feature_mimgR128,
- &feature_ciInsts,
- &feature_noSramEccSupport,
- &feature_inv2piInlineImm,
&feature_vgprIndexMode,
- &feature_gcn3Encoding,
- &feature_gfx8Insts,
- &feature_scalarStores,
+ &feature_wavefrontsize64,
+ &feature_mimgR128,
&feature_intClampInsts,
+ &feature_dpp,
&feature_movrel,
+ &feature_gcn3Encoding,
+ &feature_gfx8Insts,
+ &feature_trigReducedRange,
+ &feature_gfx7Gfx8Gfx9Insts,
+ &feature_sdwaMav,
+ &feature_sdwa,
&feature_localmemorysize65536,
+ &feature_BitInsts16,
&feature_sdwaOutModsVopc,
- &feature_dpp,
- &feature_gfx7Gfx8Gfx9Insts,
- &feature_trigReducedRange,
+ &feature_inv2piInlineImm,
+ &feature_noSramEccSupport,
+ &feature_fp64,
+ &feature_ciInsts,
},
};
@@ -1986,13 +2089,13 @@ pub const cpu_verde = Cpu{
&feature_codeObjectV3,
&feature_noXnackSupport,
&feature_ldsbankcount32,
- &feature_localmemorysize32768,
- &feature_fp64,
- &feature_mimgR128,
&feature_movrel,
- &feature_noSramEccSupport,
- &feature_wavefrontsize64,
&feature_trigReducedRange,
+ &feature_mimgR128,
+ &feature_localmemorysize32768,
+ &feature_wavefrontsize64,
+ &feature_noSramEccSupport,
+ &feature_fp64,
},
};