mirror of
https://github.com/tinygrad/tinygrad.git
synced 2026-01-08 22:48:25 -05:00
* assembly/amd: refactor asm.py * assembly/amd: refactor asm.py to be simpler * multiple fxns * fast * more tests pass * regen * stop decode
3383 lines
139 KiB
Python
3383 lines
139 KiB
Python
# autogenerated from AMD RDNA3.5 ISA PDF by dsl.py - do not edit
|
|
from enum import IntEnum
|
|
from typing import Annotated
|
|
from extra.assembly.amd.dsl import bits, BitField, Inst32, Inst64, SGPR, VGPR, TTMP as TTMP, s as s, v as v, ttmp as ttmp, SSrc, Src, SImm, Imm, VDSTYEnc, SGPRField, VGPRField
|
|
import functools
|
|
|
|
class SrcEnum(IntEnum):
|
|
VCC_LO = 106
|
|
VCC_HI = 107
|
|
NULL = 124
|
|
M0 = 125
|
|
EXEC_LO = 126
|
|
EXEC_HI = 127
|
|
ZERO = 128
|
|
DPP8 = 233
|
|
DPP8FI = 234
|
|
SHARED_BASE = 235
|
|
SHARED_LIMIT = 236
|
|
PRIVATE_BASE = 237
|
|
PRIVATE_LIMIT = 238
|
|
POS_HALF = 240
|
|
NEG_HALF = 241
|
|
POS_ONE = 242
|
|
NEG_ONE = 243
|
|
POS_TWO = 244
|
|
NEG_TWO = 245
|
|
POS_FOUR = 246
|
|
NEG_FOUR = 247
|
|
INV_2PI = 248
|
|
DPP16 = 250
|
|
VCCZ = 251
|
|
EXECZ = 252
|
|
SCC = 253
|
|
LDS_DIRECT = 254
|
|
|
|
class DSOp(IntEnum):
|
|
DS_ADD_U32 = 0
|
|
DS_SUB_U32 = 1
|
|
DS_RSUB_U32 = 2
|
|
DS_INC_U32 = 3
|
|
DS_DEC_U32 = 4
|
|
DS_MIN_I32 = 5
|
|
DS_MAX_I32 = 6
|
|
DS_MIN_U32 = 7
|
|
DS_MAX_U32 = 8
|
|
DS_AND_B32 = 9
|
|
DS_OR_B32 = 10
|
|
DS_XOR_B32 = 11
|
|
DS_MSKOR_B32 = 12
|
|
DS_STORE_B32 = 13
|
|
DS_STORE_2ADDR_B32 = 14
|
|
DS_STORE_2ADDR_STRIDE64_B32 = 15
|
|
DS_CMPSTORE_B32 = 16
|
|
DS_CMPSTORE_F32 = 17
|
|
DS_MIN_F32 = 18
|
|
DS_MAX_F32 = 19
|
|
DS_NOP = 20
|
|
DS_ADD_F32 = 21
|
|
DS_GWS_SEMA_RELEASE_ALL = 24
|
|
DS_GWS_INIT = 25
|
|
DS_GWS_SEMA_V = 26
|
|
DS_GWS_SEMA_BR = 27
|
|
DS_GWS_SEMA_P = 28
|
|
DS_GWS_BARRIER = 29
|
|
DS_STORE_B8 = 30
|
|
DS_STORE_B16 = 31
|
|
DS_ADD_RTN_U32 = 32
|
|
DS_SUB_RTN_U32 = 33
|
|
DS_RSUB_RTN_U32 = 34
|
|
DS_INC_RTN_U32 = 35
|
|
DS_DEC_RTN_U32 = 36
|
|
DS_MIN_RTN_I32 = 37
|
|
DS_MAX_RTN_I32 = 38
|
|
DS_MIN_RTN_U32 = 39
|
|
DS_MAX_RTN_U32 = 40
|
|
DS_AND_RTN_B32 = 41
|
|
DS_OR_RTN_B32 = 42
|
|
DS_XOR_RTN_B32 = 43
|
|
DS_MSKOR_RTN_B32 = 44
|
|
DS_STOREXCHG_RTN_B32 = 45
|
|
DS_STOREXCHG_2ADDR_RTN_B32 = 46
|
|
DS_STOREXCHG_2ADDR_STRIDE64_RTN_B32 = 47
|
|
DS_CMPSTORE_RTN_B32 = 48
|
|
DS_CMPSTORE_RTN_F32 = 49
|
|
DS_MIN_RTN_F32 = 50
|
|
DS_MAX_RTN_F32 = 51
|
|
DS_WRAP_RTN_B32 = 52
|
|
DS_SWIZZLE_B32 = 53
|
|
DS_LOAD_B32 = 54
|
|
DS_LOAD_2ADDR_B32 = 55
|
|
DS_LOAD_2ADDR_STRIDE64_B32 = 56
|
|
DS_LOAD_I8 = 57
|
|
DS_LOAD_U8 = 58
|
|
DS_LOAD_I16 = 59
|
|
DS_LOAD_U16 = 60
|
|
DS_CONSUME = 61
|
|
DS_APPEND = 62
|
|
DS_ORDERED_COUNT = 63
|
|
DS_ADD_U64 = 64
|
|
DS_SUB_U64 = 65
|
|
DS_RSUB_U64 = 66
|
|
DS_INC_U64 = 67
|
|
DS_DEC_U64 = 68
|
|
DS_MIN_I64 = 69
|
|
DS_MAX_I64 = 70
|
|
DS_MIN_U64 = 71
|
|
DS_MAX_U64 = 72
|
|
DS_AND_B64 = 73
|
|
DS_OR_B64 = 74
|
|
DS_XOR_B64 = 75
|
|
DS_MSKOR_B64 = 76
|
|
DS_STORE_B64 = 77
|
|
DS_STORE_2ADDR_B64 = 78
|
|
DS_STORE_2ADDR_STRIDE64_B64 = 79
|
|
DS_CMPSTORE_B64 = 80
|
|
DS_CMPSTORE_F64 = 81
|
|
DS_MIN_F64 = 82
|
|
DS_MAX_F64 = 83
|
|
DS_ADD_RTN_U64 = 96
|
|
DS_SUB_RTN_U64 = 97
|
|
DS_RSUB_RTN_U64 = 98
|
|
DS_INC_RTN_U64 = 99
|
|
DS_DEC_RTN_U64 = 100
|
|
DS_MIN_RTN_I64 = 101
|
|
DS_MAX_RTN_I64 = 102
|
|
DS_MIN_RTN_U64 = 103
|
|
DS_MAX_RTN_U64 = 104
|
|
DS_AND_RTN_B64 = 105
|
|
DS_OR_RTN_B64 = 106
|
|
DS_XOR_RTN_B64 = 107
|
|
DS_MSKOR_RTN_B64 = 108
|
|
DS_STOREXCHG_RTN_B64 = 109
|
|
DS_STOREXCHG_2ADDR_RTN_B64 = 110
|
|
DS_STOREXCHG_2ADDR_STRIDE64_RTN_B64 = 111
|
|
DS_CMPSTORE_RTN_B64 = 112
|
|
DS_CMPSTORE_RTN_F64 = 113
|
|
DS_MIN_RTN_F64 = 114
|
|
DS_MAX_RTN_F64 = 115
|
|
DS_LOAD_B64 = 118
|
|
DS_LOAD_2ADDR_B64 = 119
|
|
DS_LOAD_2ADDR_STRIDE64_B64 = 120
|
|
DS_ADD_RTN_F32 = 121
|
|
DS_ADD_GS_REG_RTN = 122
|
|
DS_SUB_GS_REG_RTN = 123
|
|
DS_CONDXCHG32_RTN_B64 = 126
|
|
DS_STORE_B8_D16_HI = 160
|
|
DS_STORE_B16_D16_HI = 161
|
|
DS_LOAD_U8_D16 = 162
|
|
DS_LOAD_U8_D16_HI = 163
|
|
DS_LOAD_I8_D16 = 164
|
|
DS_LOAD_I8_D16_HI = 165
|
|
DS_LOAD_U16_D16 = 166
|
|
DS_LOAD_U16_D16_HI = 167
|
|
DS_BVH_STACK_RTN_B32 = 173
|
|
DS_STORE_ADDTID_B32 = 176
|
|
DS_LOAD_ADDTID_B32 = 177
|
|
DS_PERMUTE_B32 = 178
|
|
DS_BPERMUTE_B32 = 179
|
|
DS_STORE_B96 = 222
|
|
DS_STORE_B128 = 223
|
|
DS_LOAD_B96 = 254
|
|
DS_LOAD_B128 = 255
|
|
|
|
class FLATOp(IntEnum):
|
|
FLAT_LOAD_U8 = 16
|
|
FLAT_LOAD_I8 = 17
|
|
FLAT_LOAD_U16 = 18
|
|
FLAT_LOAD_I16 = 19
|
|
FLAT_LOAD_B32 = 20
|
|
FLAT_LOAD_B64 = 21
|
|
FLAT_LOAD_B96 = 22
|
|
FLAT_LOAD_B128 = 23
|
|
FLAT_STORE_B8 = 24
|
|
FLAT_STORE_B16 = 25
|
|
FLAT_STORE_B32 = 26
|
|
FLAT_STORE_B64 = 27
|
|
FLAT_STORE_B96 = 28
|
|
FLAT_STORE_B128 = 29
|
|
FLAT_LOAD_D16_U8 = 30
|
|
FLAT_LOAD_D16_I8 = 31
|
|
FLAT_LOAD_D16_B16 = 32
|
|
FLAT_LOAD_D16_HI_U8 = 33
|
|
FLAT_LOAD_D16_HI_I8 = 34
|
|
FLAT_LOAD_D16_HI_B16 = 35
|
|
FLAT_STORE_D16_HI_B8 = 36
|
|
FLAT_STORE_D16_HI_B16 = 37
|
|
GLOBAL_LOAD_ADDTID_B32 = 40
|
|
GLOBAL_STORE_ADDTID_B32 = 41
|
|
FLAT_ATOMIC_SWAP_B32 = 51
|
|
FLAT_ATOMIC_CMPSWAP_B32 = 52
|
|
FLAT_ATOMIC_ADD_U32 = 53
|
|
FLAT_ATOMIC_SUB_U32 = 54
|
|
FLAT_ATOMIC_CSUB_U32 = 55
|
|
FLAT_ATOMIC_MIN_I32 = 56
|
|
FLAT_ATOMIC_MIN_U32 = 57
|
|
FLAT_ATOMIC_MAX_I32 = 58
|
|
FLAT_ATOMIC_MAX_U32 = 59
|
|
FLAT_ATOMIC_AND_B32 = 60
|
|
FLAT_ATOMIC_OR_B32 = 61
|
|
FLAT_ATOMIC_XOR_B32 = 62
|
|
FLAT_ATOMIC_INC_U32 = 63
|
|
FLAT_ATOMIC_DEC_U32 = 64
|
|
FLAT_ATOMIC_SWAP_B64 = 65
|
|
FLAT_ATOMIC_CMPSWAP_B64 = 66
|
|
FLAT_ATOMIC_ADD_U64 = 67
|
|
FLAT_ATOMIC_SUB_U64 = 68
|
|
FLAT_ATOMIC_MIN_I64 = 69
|
|
FLAT_ATOMIC_MIN_U64 = 70
|
|
FLAT_ATOMIC_MAX_I64 = 71
|
|
FLAT_ATOMIC_MAX_U64 = 72
|
|
FLAT_ATOMIC_AND_B64 = 73
|
|
FLAT_ATOMIC_OR_B64 = 74
|
|
FLAT_ATOMIC_XOR_B64 = 75
|
|
FLAT_ATOMIC_INC_U64 = 76
|
|
FLAT_ATOMIC_DEC_U64 = 77
|
|
FLAT_ATOMIC_CMPSWAP_F32 = 80
|
|
FLAT_ATOMIC_MIN_F32 = 81
|
|
FLAT_ATOMIC_MAX_F32 = 82
|
|
FLAT_ATOMIC_ADD_F32 = 86
|
|
|
|
class GLOBALOp(IntEnum):
|
|
GLOBAL_LOAD_U8 = 16
|
|
GLOBAL_LOAD_I8 = 17
|
|
GLOBAL_LOAD_U16 = 18
|
|
GLOBAL_LOAD_I16 = 19
|
|
GLOBAL_LOAD_B32 = 20
|
|
GLOBAL_LOAD_B64 = 21
|
|
GLOBAL_LOAD_B96 = 22
|
|
GLOBAL_LOAD_B128 = 23
|
|
GLOBAL_STORE_B8 = 24
|
|
GLOBAL_STORE_B16 = 25
|
|
GLOBAL_STORE_B32 = 26
|
|
GLOBAL_STORE_B64 = 27
|
|
GLOBAL_STORE_B96 = 28
|
|
GLOBAL_STORE_B128 = 29
|
|
GLOBAL_LOAD_D16_U8 = 30
|
|
GLOBAL_LOAD_D16_I8 = 31
|
|
GLOBAL_LOAD_D16_B16 = 32
|
|
GLOBAL_LOAD_D16_HI_U8 = 33
|
|
GLOBAL_LOAD_D16_HI_I8 = 34
|
|
GLOBAL_LOAD_D16_HI_B16 = 35
|
|
GLOBAL_STORE_D16_HI_B8 = 36
|
|
GLOBAL_STORE_D16_HI_B16 = 37
|
|
GLOBAL_LOAD_ADDTID_B32 = 40
|
|
GLOBAL_STORE_ADDTID_B32 = 41
|
|
GLOBAL_ATOMIC_SWAP_B32 = 51
|
|
GLOBAL_ATOMIC_CMPSWAP_B32 = 52
|
|
GLOBAL_ATOMIC_ADD_U32 = 53
|
|
GLOBAL_ATOMIC_SUB_U32 = 54
|
|
GLOBAL_ATOMIC_CSUB_U32 = 55
|
|
GLOBAL_ATOMIC_MIN_I32 = 56
|
|
GLOBAL_ATOMIC_MIN_U32 = 57
|
|
GLOBAL_ATOMIC_MAX_I32 = 58
|
|
GLOBAL_ATOMIC_MAX_U32 = 59
|
|
GLOBAL_ATOMIC_AND_B32 = 60
|
|
GLOBAL_ATOMIC_OR_B32 = 61
|
|
GLOBAL_ATOMIC_XOR_B32 = 62
|
|
GLOBAL_ATOMIC_INC_U32 = 63
|
|
GLOBAL_ATOMIC_DEC_U32 = 64
|
|
GLOBAL_ATOMIC_SWAP_B64 = 65
|
|
GLOBAL_ATOMIC_CMPSWAP_B64 = 66
|
|
GLOBAL_ATOMIC_ADD_U64 = 67
|
|
GLOBAL_ATOMIC_SUB_U64 = 68
|
|
GLOBAL_ATOMIC_MIN_I64 = 69
|
|
GLOBAL_ATOMIC_MIN_U64 = 70
|
|
GLOBAL_ATOMIC_MAX_I64 = 71
|
|
GLOBAL_ATOMIC_MAX_U64 = 72
|
|
GLOBAL_ATOMIC_AND_B64 = 73
|
|
GLOBAL_ATOMIC_OR_B64 = 74
|
|
GLOBAL_ATOMIC_XOR_B64 = 75
|
|
GLOBAL_ATOMIC_INC_U64 = 76
|
|
GLOBAL_ATOMIC_DEC_U64 = 77
|
|
GLOBAL_ATOMIC_CMPSWAP_F32 = 80
|
|
GLOBAL_ATOMIC_MIN_F32 = 81
|
|
GLOBAL_ATOMIC_MAX_F32 = 82
|
|
GLOBAL_ATOMIC_ADD_F32 = 86
|
|
|
|
class MIMGOp(IntEnum):
|
|
IMAGE_LOAD = 0
|
|
IMAGE_LOAD_MIP = 1
|
|
IMAGE_LOAD_PCK = 2
|
|
IMAGE_LOAD_PCK_SGN = 3
|
|
IMAGE_LOAD_MIP_PCK = 4
|
|
IMAGE_LOAD_MIP_PCK_SGN = 5
|
|
IMAGE_STORE = 6
|
|
IMAGE_STORE_MIP = 7
|
|
IMAGE_STORE_PCK = 8
|
|
IMAGE_STORE_MIP_PCK = 9
|
|
IMAGE_ATOMIC_SWAP = 10
|
|
IMAGE_ATOMIC_CMPSWAP = 11
|
|
IMAGE_ATOMIC_ADD = 12
|
|
IMAGE_ATOMIC_SUB = 13
|
|
IMAGE_ATOMIC_SMIN = 14
|
|
IMAGE_ATOMIC_UMIN = 15
|
|
IMAGE_ATOMIC_SMAX = 16
|
|
IMAGE_ATOMIC_UMAX = 17
|
|
IMAGE_ATOMIC_AND = 18
|
|
IMAGE_ATOMIC_OR = 19
|
|
IMAGE_ATOMIC_XOR = 20
|
|
IMAGE_ATOMIC_INC = 21
|
|
IMAGE_ATOMIC_DEC = 22
|
|
IMAGE_GET_RESINFO = 23
|
|
IMAGE_MSAA_LOAD = 24
|
|
IMAGE_BVH_INTERSECT_RAY = 25
|
|
IMAGE_BVH64_INTERSECT_RAY = 26
|
|
IMAGE_SAMPLE = 27
|
|
IMAGE_SAMPLE_D = 28
|
|
IMAGE_SAMPLE_L = 29
|
|
IMAGE_SAMPLE_B = 30
|
|
IMAGE_SAMPLE_LZ = 31
|
|
IMAGE_SAMPLE_C = 32
|
|
IMAGE_SAMPLE_C_D = 33
|
|
IMAGE_SAMPLE_C_L = 34
|
|
IMAGE_SAMPLE_C_B = 35
|
|
IMAGE_SAMPLE_C_LZ = 36
|
|
IMAGE_SAMPLE_O = 37
|
|
IMAGE_SAMPLE_D_O = 38
|
|
IMAGE_SAMPLE_L_O = 39
|
|
IMAGE_SAMPLE_B_O = 40
|
|
IMAGE_SAMPLE_LZ_O = 41
|
|
IMAGE_SAMPLE_C_O = 42
|
|
IMAGE_SAMPLE_C_D_O = 43
|
|
IMAGE_SAMPLE_C_L_O = 44
|
|
IMAGE_SAMPLE_C_B_O = 45
|
|
IMAGE_SAMPLE_C_LZ_O = 46
|
|
IMAGE_GATHER4 = 47
|
|
IMAGE_GATHER4_L = 48
|
|
IMAGE_GATHER4_B = 49
|
|
IMAGE_GATHER4_LZ = 50
|
|
IMAGE_GATHER4_C = 51
|
|
IMAGE_GATHER4_C_LZ = 52
|
|
IMAGE_GATHER4_O = 53
|
|
IMAGE_GATHER4_LZ_O = 54
|
|
IMAGE_GATHER4_C_LZ_O = 55
|
|
IMAGE_GET_LOD = 56
|
|
IMAGE_SAMPLE_D_G16 = 57
|
|
IMAGE_SAMPLE_C_D_G16 = 58
|
|
IMAGE_SAMPLE_D_O_G16 = 59
|
|
IMAGE_SAMPLE_C_D_O_G16 = 60
|
|
IMAGE_SAMPLE_CL = 64
|
|
IMAGE_SAMPLE_D_CL = 65
|
|
IMAGE_SAMPLE_B_CL = 66
|
|
IMAGE_SAMPLE_C_CL = 67
|
|
IMAGE_SAMPLE_C_D_CL = 68
|
|
IMAGE_SAMPLE_C_B_CL = 69
|
|
IMAGE_SAMPLE_CL_O = 70
|
|
IMAGE_SAMPLE_D_CL_O = 71
|
|
IMAGE_SAMPLE_B_CL_O = 72
|
|
IMAGE_SAMPLE_C_CL_O = 73
|
|
IMAGE_SAMPLE_C_D_CL_O = 74
|
|
IMAGE_SAMPLE_C_B_CL_O = 75
|
|
IMAGE_SAMPLE_C_D_CL_G16 = 84
|
|
IMAGE_SAMPLE_D_CL_O_G16 = 85
|
|
IMAGE_SAMPLE_C_D_CL_O_G16 = 86
|
|
IMAGE_SAMPLE_D_CL_G16 = 95
|
|
IMAGE_GATHER4_CL = 96
|
|
IMAGE_GATHER4_B_CL = 97
|
|
IMAGE_GATHER4_C_CL = 98
|
|
IMAGE_GATHER4_C_L = 99
|
|
IMAGE_GATHER4_C_B = 100
|
|
IMAGE_GATHER4_C_B_CL = 101
|
|
IMAGE_GATHER4H = 144
|
|
|
|
class MTBUFOp(IntEnum):
|
|
TBUFFER_LOAD_FORMAT_X = 0
|
|
TBUFFER_LOAD_FORMAT_XY = 1
|
|
TBUFFER_LOAD_FORMAT_XYZ = 2
|
|
TBUFFER_LOAD_FORMAT_XYZW = 3
|
|
TBUFFER_STORE_FORMAT_X = 4
|
|
TBUFFER_STORE_FORMAT_XY = 5
|
|
TBUFFER_STORE_FORMAT_XYZ = 6
|
|
TBUFFER_STORE_FORMAT_XYZW = 7
|
|
TBUFFER_LOAD_D16_FORMAT_X = 8
|
|
TBUFFER_LOAD_D16_FORMAT_XY = 9
|
|
TBUFFER_LOAD_D16_FORMAT_XYZ = 10
|
|
TBUFFER_LOAD_D16_FORMAT_XYZW = 11
|
|
TBUFFER_STORE_D16_FORMAT_X = 12
|
|
TBUFFER_STORE_D16_FORMAT_XY = 13
|
|
TBUFFER_STORE_D16_FORMAT_XYZ = 14
|
|
TBUFFER_STORE_D16_FORMAT_XYZW = 15
|
|
|
|
class MUBUFOp(IntEnum):
|
|
BUFFER_LOAD_FORMAT_X = 0
|
|
BUFFER_LOAD_FORMAT_XY = 1
|
|
BUFFER_LOAD_FORMAT_XYZ = 2
|
|
BUFFER_LOAD_FORMAT_XYZW = 3
|
|
BUFFER_STORE_FORMAT_X = 4
|
|
BUFFER_STORE_FORMAT_XY = 5
|
|
BUFFER_STORE_FORMAT_XYZ = 6
|
|
BUFFER_STORE_FORMAT_XYZW = 7
|
|
BUFFER_LOAD_D16_FORMAT_X = 8
|
|
BUFFER_LOAD_D16_FORMAT_XY = 9
|
|
BUFFER_LOAD_D16_FORMAT_XYZ = 10
|
|
BUFFER_LOAD_D16_FORMAT_XYZW = 11
|
|
BUFFER_STORE_D16_FORMAT_X = 12
|
|
BUFFER_STORE_D16_FORMAT_XY = 13
|
|
BUFFER_STORE_D16_FORMAT_XYZ = 14
|
|
BUFFER_STORE_D16_FORMAT_XYZW = 15
|
|
BUFFER_LOAD_U8 = 16
|
|
BUFFER_LOAD_I8 = 17
|
|
BUFFER_LOAD_U16 = 18
|
|
BUFFER_LOAD_I16 = 19
|
|
BUFFER_LOAD_B32 = 20
|
|
BUFFER_LOAD_B64 = 21
|
|
BUFFER_LOAD_B96 = 22
|
|
BUFFER_LOAD_B128 = 23
|
|
BUFFER_STORE_B8 = 24
|
|
BUFFER_STORE_B16 = 25
|
|
BUFFER_STORE_B32 = 26
|
|
BUFFER_STORE_B64 = 27
|
|
BUFFER_STORE_B96 = 28
|
|
BUFFER_STORE_B128 = 29
|
|
BUFFER_LOAD_D16_U8 = 30
|
|
BUFFER_LOAD_D16_I8 = 31
|
|
BUFFER_LOAD_D16_B16 = 32
|
|
BUFFER_LOAD_D16_HI_U8 = 33
|
|
BUFFER_LOAD_D16_HI_I8 = 34
|
|
BUFFER_LOAD_D16_HI_B16 = 35
|
|
BUFFER_STORE_D16_HI_B8 = 36
|
|
BUFFER_STORE_D16_HI_B16 = 37
|
|
BUFFER_LOAD_D16_HI_FORMAT_X = 38
|
|
BUFFER_STORE_D16_HI_FORMAT_X = 39
|
|
BUFFER_GL0_INV = 43
|
|
BUFFER_GL1_INV = 44
|
|
BUFFER_ATOMIC_SWAP_B32 = 51
|
|
BUFFER_ATOMIC_CMPSWAP_B32 = 52
|
|
BUFFER_ATOMIC_ADD_U32 = 53
|
|
BUFFER_ATOMIC_SUB_U32 = 54
|
|
BUFFER_ATOMIC_CSUB_U32 = 55
|
|
BUFFER_ATOMIC_MIN_I32 = 56
|
|
BUFFER_ATOMIC_MIN_U32 = 57
|
|
BUFFER_ATOMIC_MAX_I32 = 58
|
|
BUFFER_ATOMIC_MAX_U32 = 59
|
|
BUFFER_ATOMIC_AND_B32 = 60
|
|
BUFFER_ATOMIC_OR_B32 = 61
|
|
BUFFER_ATOMIC_XOR_B32 = 62
|
|
BUFFER_ATOMIC_INC_U32 = 63
|
|
BUFFER_ATOMIC_DEC_U32 = 64
|
|
BUFFER_ATOMIC_SWAP_B64 = 65
|
|
BUFFER_ATOMIC_CMPSWAP_B64 = 66
|
|
BUFFER_ATOMIC_ADD_U64 = 67
|
|
BUFFER_ATOMIC_SUB_U64 = 68
|
|
BUFFER_ATOMIC_MIN_I64 = 69
|
|
BUFFER_ATOMIC_MIN_U64 = 70
|
|
BUFFER_ATOMIC_MAX_I64 = 71
|
|
BUFFER_ATOMIC_MAX_U64 = 72
|
|
BUFFER_ATOMIC_AND_B64 = 73
|
|
BUFFER_ATOMIC_OR_B64 = 74
|
|
BUFFER_ATOMIC_XOR_B64 = 75
|
|
BUFFER_ATOMIC_INC_U64 = 76
|
|
BUFFER_ATOMIC_DEC_U64 = 77
|
|
BUFFER_ATOMIC_CMPSWAP_F32 = 80
|
|
BUFFER_ATOMIC_MIN_F32 = 81
|
|
BUFFER_ATOMIC_MAX_F32 = 82
|
|
BUFFER_ATOMIC_ADD_F32 = 86
|
|
|
|
class SCRATCHOp(IntEnum):
|
|
SCRATCH_LOAD_U8 = 16
|
|
SCRATCH_LOAD_I8 = 17
|
|
SCRATCH_LOAD_U16 = 18
|
|
SCRATCH_LOAD_I16 = 19
|
|
SCRATCH_LOAD_B32 = 20
|
|
SCRATCH_LOAD_B64 = 21
|
|
SCRATCH_LOAD_B96 = 22
|
|
SCRATCH_LOAD_B128 = 23
|
|
SCRATCH_STORE_B8 = 24
|
|
SCRATCH_STORE_B16 = 25
|
|
SCRATCH_STORE_B32 = 26
|
|
SCRATCH_STORE_B64 = 27
|
|
SCRATCH_STORE_B96 = 28
|
|
SCRATCH_STORE_B128 = 29
|
|
SCRATCH_LOAD_D16_U8 = 30
|
|
SCRATCH_LOAD_D16_I8 = 31
|
|
SCRATCH_LOAD_D16_B16 = 32
|
|
SCRATCH_LOAD_D16_HI_U8 = 33
|
|
SCRATCH_LOAD_D16_HI_I8 = 34
|
|
SCRATCH_LOAD_D16_HI_B16 = 35
|
|
SCRATCH_STORE_D16_HI_B8 = 36
|
|
SCRATCH_STORE_D16_HI_B16 = 37
|
|
|
|
class SMEMOp(IntEnum):
|
|
S_LOAD_B32 = 0
|
|
S_LOAD_B64 = 1
|
|
S_LOAD_B128 = 2
|
|
S_LOAD_B256 = 3
|
|
S_LOAD_B512 = 4
|
|
S_BUFFER_LOAD_B32 = 8
|
|
S_BUFFER_LOAD_B64 = 9
|
|
S_BUFFER_LOAD_B128 = 10
|
|
S_BUFFER_LOAD_B256 = 11
|
|
S_BUFFER_LOAD_B512 = 12
|
|
S_GL1_INV = 32
|
|
S_DCACHE_INV = 33
|
|
|
|
class SOP1Op(IntEnum):
|
|
S_MOV_B32 = 0
|
|
S_MOV_B64 = 1
|
|
S_CMOV_B32 = 2
|
|
S_CMOV_B64 = 3
|
|
S_BREV_B32 = 4
|
|
S_BREV_B64 = 5
|
|
S_CTZ_I32_B32 = 8
|
|
S_CTZ_I32_B64 = 9
|
|
S_CLZ_I32_U32 = 10
|
|
S_CLZ_I32_U64 = 11
|
|
S_CLS_I32 = 12
|
|
S_CLS_I32_I64 = 13
|
|
S_SEXT_I32_I8 = 14
|
|
S_SEXT_I32_I16 = 15
|
|
S_BITSET0_B32 = 16
|
|
S_BITSET0_B64 = 17
|
|
S_BITSET1_B32 = 18
|
|
S_BITSET1_B64 = 19
|
|
S_BITREPLICATE_B64_B32 = 20
|
|
S_ABS_I32 = 21
|
|
S_BCNT0_I32_B32 = 22
|
|
S_BCNT0_I32_B64 = 23
|
|
S_BCNT1_I32_B32 = 24
|
|
S_BCNT1_I32_B64 = 25
|
|
S_QUADMASK_B32 = 26
|
|
S_QUADMASK_B64 = 27
|
|
S_WQM_B32 = 28
|
|
S_WQM_B64 = 29
|
|
S_NOT_B32 = 30
|
|
S_NOT_B64 = 31
|
|
S_AND_SAVEEXEC_B32 = 32
|
|
S_AND_SAVEEXEC_B64 = 33
|
|
S_OR_SAVEEXEC_B32 = 34
|
|
S_OR_SAVEEXEC_B64 = 35
|
|
S_XOR_SAVEEXEC_B32 = 36
|
|
S_XOR_SAVEEXEC_B64 = 37
|
|
S_NAND_SAVEEXEC_B32 = 38
|
|
S_NAND_SAVEEXEC_B64 = 39
|
|
S_NOR_SAVEEXEC_B32 = 40
|
|
S_NOR_SAVEEXEC_B64 = 41
|
|
S_XNOR_SAVEEXEC_B32 = 42
|
|
S_XNOR_SAVEEXEC_B64 = 43
|
|
S_AND_NOT0_SAVEEXEC_B32 = 44
|
|
S_AND_NOT0_SAVEEXEC_B64 = 45
|
|
S_OR_NOT0_SAVEEXEC_B32 = 46
|
|
S_OR_NOT0_SAVEEXEC_B64 = 47
|
|
S_AND_NOT1_SAVEEXEC_B32 = 48
|
|
S_AND_NOT1_SAVEEXEC_B64 = 49
|
|
S_OR_NOT1_SAVEEXEC_B32 = 50
|
|
S_OR_NOT1_SAVEEXEC_B64 = 51
|
|
S_AND_NOT0_WREXEC_B32 = 52
|
|
S_AND_NOT0_WREXEC_B64 = 53
|
|
S_AND_NOT1_WREXEC_B32 = 54
|
|
S_AND_NOT1_WREXEC_B64 = 55
|
|
S_MOVRELS_B32 = 64
|
|
S_MOVRELS_B64 = 65
|
|
S_MOVRELD_B32 = 66
|
|
S_MOVRELD_B64 = 67
|
|
S_MOVRELSD_2_B32 = 68
|
|
S_GETPC_B64 = 71
|
|
S_SETPC_B64 = 72
|
|
S_SWAPPC_B64 = 73
|
|
S_RFE_B64 = 74
|
|
S_SENDMSG_RTN_B32 = 76
|
|
S_SENDMSG_RTN_B64 = 77
|
|
S_CEIL_F32 = 96
|
|
S_FLOOR_F32 = 97
|
|
S_TRUNC_F32 = 98
|
|
S_RNDNE_F32 = 99
|
|
S_CVT_F32_I32 = 100
|
|
S_CVT_F32_U32 = 101
|
|
S_CVT_I32_F32 = 102
|
|
S_CVT_U32_F32 = 103
|
|
S_CVT_F16_F32 = 104
|
|
S_CVT_F32_F16 = 105
|
|
S_CVT_HI_F32_F16 = 106
|
|
S_CEIL_F16 = 107
|
|
S_FLOOR_F16 = 108
|
|
S_TRUNC_F16 = 109
|
|
S_RNDNE_F16 = 110
|
|
|
|
class SOP2Op(IntEnum):
|
|
S_ADD_U32 = 0
|
|
S_SUB_U32 = 1
|
|
S_ADD_I32 = 2
|
|
S_SUB_I32 = 3
|
|
S_ADDC_U32 = 4
|
|
S_SUBB_U32 = 5
|
|
S_ABSDIFF_I32 = 6
|
|
S_LSHL_B32 = 8
|
|
S_LSHL_B64 = 9
|
|
S_LSHR_B32 = 10
|
|
S_LSHR_B64 = 11
|
|
S_ASHR_I32 = 12
|
|
S_ASHR_I64 = 13
|
|
S_LSHL1_ADD_U32 = 14
|
|
S_LSHL2_ADD_U32 = 15
|
|
S_LSHL3_ADD_U32 = 16
|
|
S_LSHL4_ADD_U32 = 17
|
|
S_MIN_I32 = 18
|
|
S_MIN_U32 = 19
|
|
S_MAX_I32 = 20
|
|
S_MAX_U32 = 21
|
|
S_AND_B32 = 22
|
|
S_AND_B64 = 23
|
|
S_OR_B32 = 24
|
|
S_OR_B64 = 25
|
|
S_XOR_B32 = 26
|
|
S_XOR_B64 = 27
|
|
S_NAND_B32 = 28
|
|
S_NAND_B64 = 29
|
|
S_NOR_B32 = 30
|
|
S_NOR_B64 = 31
|
|
S_XNOR_B32 = 32
|
|
S_XNOR_B64 = 33
|
|
S_AND_NOT1_B32 = 34
|
|
S_AND_NOT1_B64 = 35
|
|
S_OR_NOT1_B32 = 36
|
|
S_OR_NOT1_B64 = 37
|
|
S_BFE_U32 = 38
|
|
S_BFE_I32 = 39
|
|
S_BFE_U64 = 40
|
|
S_BFE_I64 = 41
|
|
S_BFM_B32 = 42
|
|
S_BFM_B64 = 43
|
|
S_MUL_I32 = 44
|
|
S_MUL_HI_U32 = 45
|
|
S_MUL_HI_I32 = 46
|
|
S_CSELECT_B32 = 48
|
|
S_CSELECT_B64 = 49
|
|
S_PACK_LL_B32_B16 = 50
|
|
S_PACK_LH_B32_B16 = 51
|
|
S_PACK_HH_B32_B16 = 52
|
|
S_PACK_HL_B32_B16 = 53
|
|
S_ADD_F32 = 64
|
|
S_SUB_F32 = 65
|
|
S_MIN_F32 = 66
|
|
S_MAX_F32 = 67
|
|
S_MUL_F32 = 68
|
|
S_FMAAK_F32 = 69
|
|
S_FMAMK_F32 = 70
|
|
S_FMAC_F32 = 71
|
|
S_CVT_PK_RTZ_F16_F32 = 72
|
|
S_ADD_F16 = 73
|
|
S_SUB_F16 = 74
|
|
S_MIN_F16 = 75
|
|
S_MAX_F16 = 76
|
|
S_MUL_F16 = 77
|
|
S_FMAC_F16 = 78
|
|
|
|
class SOPCOp(IntEnum):
|
|
S_CMP_EQ_I32 = 0
|
|
S_CMP_LG_I32 = 1
|
|
S_CMP_GT_I32 = 2
|
|
S_CMP_GE_I32 = 3
|
|
S_CMP_LT_I32 = 4
|
|
S_CMP_LE_I32 = 5
|
|
S_CMP_EQ_U32 = 6
|
|
S_CMP_LG_U32 = 7
|
|
S_CMP_GT_U32 = 8
|
|
S_CMP_GE_U32 = 9
|
|
S_CMP_LT_U32 = 10
|
|
S_CMP_LE_U32 = 11
|
|
S_BITCMP0_B32 = 12
|
|
S_BITCMP1_B32 = 13
|
|
S_BITCMP0_B64 = 14
|
|
S_BITCMP1_B64 = 15
|
|
S_CMP_EQ_U64 = 16
|
|
S_CMP_LG_U64 = 17
|
|
S_CMP_LT_F32 = 65
|
|
S_CMP_EQ_F32 = 66
|
|
S_CMP_LE_F32 = 67
|
|
S_CMP_GT_F32 = 68
|
|
S_CMP_LG_F32 = 69
|
|
S_CMP_GE_F32 = 70
|
|
S_CMP_O_F32 = 71
|
|
S_CMP_U_F32 = 72
|
|
S_CMP_NGE_F32 = 73
|
|
S_CMP_NLG_F32 = 74
|
|
S_CMP_NGT_F32 = 75
|
|
S_CMP_NLE_F32 = 76
|
|
S_CMP_NEQ_F32 = 77
|
|
S_CMP_NLT_F32 = 78
|
|
S_CMP_LT_F16 = 81
|
|
S_CMP_EQ_F16 = 82
|
|
S_CMP_LE_F16 = 83
|
|
S_CMP_GT_F16 = 84
|
|
S_CMP_LG_F16 = 85
|
|
S_CMP_GE_F16 = 86
|
|
S_CMP_O_F16 = 87
|
|
S_CMP_U_F16 = 88
|
|
S_CMP_NGE_F16 = 89
|
|
S_CMP_NLG_F16 = 90
|
|
S_CMP_NGT_F16 = 91
|
|
S_CMP_NLE_F16 = 92
|
|
S_CMP_NEQ_F16 = 93
|
|
S_CMP_NLT_F16 = 94
|
|
|
|
class SOPKOp(IntEnum):
|
|
S_MOVK_I32 = 0
|
|
S_VERSION = 1
|
|
S_CMOVK_I32 = 2
|
|
S_CMPK_EQ_I32 = 3
|
|
S_CMPK_LG_I32 = 4
|
|
S_CMPK_GT_I32 = 5
|
|
S_CMPK_GE_I32 = 6
|
|
S_CMPK_LT_I32 = 7
|
|
S_CMPK_LE_I32 = 8
|
|
S_CMPK_EQ_U32 = 9
|
|
S_CMPK_LG_U32 = 10
|
|
S_CMPK_GT_U32 = 11
|
|
S_CMPK_GE_U32 = 12
|
|
S_CMPK_LT_U32 = 13
|
|
S_CMPK_LE_U32 = 14
|
|
S_ADDK_I32 = 15
|
|
S_MULK_I32 = 16
|
|
S_GETREG_B32 = 17
|
|
S_SETREG_B32 = 18
|
|
S_SETREG_IMM32_B32 = 19
|
|
S_CALL_B64 = 20
|
|
S_WAITCNT_VSCNT = 24
|
|
S_WAITCNT_VMCNT = 25
|
|
S_WAITCNT_EXPCNT = 26
|
|
S_WAITCNT_LGKMCNT = 27
|
|
|
|
class SOPPOp(IntEnum):
|
|
S_NOP = 0
|
|
S_SETKILL = 1
|
|
S_SETHALT = 2
|
|
S_SLEEP = 3
|
|
S_SET_INST_PREFETCH_DISTANCE = 4
|
|
S_CLAUSE = 5
|
|
S_DELAY_ALU = 7
|
|
S_WAITCNT_DEPCTR = 8
|
|
S_WAITCNT = 9
|
|
S_WAIT_IDLE = 10
|
|
S_WAIT_EVENT = 11
|
|
S_TRAP = 16
|
|
S_ROUND_MODE = 17
|
|
S_DENORM_MODE = 18
|
|
S_CODE_END = 31
|
|
S_BRANCH = 32
|
|
S_CBRANCH_SCC0 = 33
|
|
S_CBRANCH_SCC1 = 34
|
|
S_CBRANCH_VCCZ = 35
|
|
S_CBRANCH_VCCNZ = 36
|
|
S_CBRANCH_EXECZ = 37
|
|
S_CBRANCH_EXECNZ = 38
|
|
S_CBRANCH_CDBGSYS = 39
|
|
S_CBRANCH_CDBGUSER = 40
|
|
S_CBRANCH_CDBGSYS_OR_USER = 41
|
|
S_CBRANCH_CDBGSYS_AND_USER = 42
|
|
S_ENDPGM = 48
|
|
S_ENDPGM_SAVED = 49
|
|
S_ENDPGM_ORDERED_PS_DONE = 50
|
|
S_WAKEUP = 52
|
|
S_SETPRIO = 53
|
|
S_SENDMSG = 54
|
|
S_SENDMSGHALT = 55
|
|
S_INCPERFLEVEL = 56
|
|
S_DECPERFLEVEL = 57
|
|
S_ICACHE_INV = 60
|
|
S_BARRIER = 61
|
|
|
|
class VINTERPOp(IntEnum):
|
|
V_INTERP_P10_F32 = 0
|
|
V_INTERP_P2_F32 = 1
|
|
V_INTERP_P10_F16_F32 = 2
|
|
V_INTERP_P2_F16_F32 = 3
|
|
V_INTERP_P10_RTZ_F16_F32 = 4
|
|
V_INTERP_P2_RTZ_F16_F32 = 5
|
|
|
|
class VOP1Op(IntEnum):
|
|
V_NOP = 0
|
|
V_MOV_B32 = 1
|
|
V_READFIRSTLANE_B32 = 2
|
|
V_CVT_I32_F64 = 3
|
|
V_CVT_F64_I32 = 4
|
|
V_CVT_F32_I32 = 5
|
|
V_CVT_F32_U32 = 6
|
|
V_CVT_U32_F32 = 7
|
|
V_CVT_I32_F32 = 8
|
|
V_CVT_F16_F32 = 10
|
|
V_CVT_F32_F16 = 11
|
|
V_CVT_NEAREST_I32_F32 = 12
|
|
V_CVT_FLOOR_I32_F32 = 13
|
|
V_CVT_OFF_F32_I4 = 14
|
|
V_CVT_F32_F64 = 15
|
|
V_CVT_F64_F32 = 16
|
|
V_CVT_F32_UBYTE0 = 17
|
|
V_CVT_F32_UBYTE1 = 18
|
|
V_CVT_F32_UBYTE2 = 19
|
|
V_CVT_F32_UBYTE3 = 20
|
|
V_CVT_U32_F64 = 21
|
|
V_CVT_F64_U32 = 22
|
|
V_TRUNC_F64 = 23
|
|
V_CEIL_F64 = 24
|
|
V_RNDNE_F64 = 25
|
|
V_FLOOR_F64 = 26
|
|
V_PIPEFLUSH = 27
|
|
V_MOV_B16 = 28
|
|
V_FRACT_F32 = 32
|
|
V_TRUNC_F32 = 33
|
|
V_CEIL_F32 = 34
|
|
V_RNDNE_F32 = 35
|
|
V_FLOOR_F32 = 36
|
|
V_EXP_F32 = 37
|
|
V_LOG_F32 = 39
|
|
V_RCP_F32 = 42
|
|
V_RCP_IFLAG_F32 = 43
|
|
V_RSQ_F32 = 46
|
|
V_RCP_F64 = 47
|
|
V_RSQ_F64 = 49
|
|
V_SQRT_F32 = 51
|
|
V_SQRT_F64 = 52
|
|
V_SIN_F32 = 53
|
|
V_COS_F32 = 54
|
|
V_NOT_B32 = 55
|
|
V_BFREV_B32 = 56
|
|
V_CLZ_I32_U32 = 57
|
|
V_CTZ_I32_B32 = 58
|
|
V_CLS_I32 = 59
|
|
V_FREXP_EXP_I32_F64 = 60
|
|
V_FREXP_MANT_F64 = 61
|
|
V_FRACT_F64 = 62
|
|
V_FREXP_EXP_I32_F32 = 63
|
|
V_FREXP_MANT_F32 = 64
|
|
V_MOVRELD_B32 = 66
|
|
V_MOVRELS_B32 = 67
|
|
V_MOVRELSD_B32 = 68
|
|
V_MOVRELSD_2_B32 = 72
|
|
V_CVT_F16_U16 = 80
|
|
V_CVT_F16_I16 = 81
|
|
V_CVT_U16_F16 = 82
|
|
V_CVT_I16_F16 = 83
|
|
V_RCP_F16 = 84
|
|
V_SQRT_F16 = 85
|
|
V_RSQ_F16 = 86
|
|
V_LOG_F16 = 87
|
|
V_EXP_F16 = 88
|
|
V_FREXP_MANT_F16 = 89
|
|
V_FREXP_EXP_I16_F16 = 90
|
|
V_FLOOR_F16 = 91
|
|
V_CEIL_F16 = 92
|
|
V_TRUNC_F16 = 93
|
|
V_RNDNE_F16 = 94
|
|
V_FRACT_F16 = 95
|
|
V_SIN_F16 = 96
|
|
V_COS_F16 = 97
|
|
V_SAT_PK_U8_I16 = 98
|
|
V_CVT_NORM_I16_F16 = 99
|
|
V_CVT_NORM_U16_F16 = 100
|
|
V_SWAP_B32 = 101
|
|
V_SWAP_B16 = 102
|
|
V_PERMLANE64_B32 = 103
|
|
V_SWAPREL_B32 = 104
|
|
V_NOT_B16 = 105
|
|
V_CVT_I32_I16 = 106
|
|
V_CVT_U32_U16 = 107
|
|
|
|
class VOP2Op(IntEnum):
|
|
V_CNDMASK_B32 = 1
|
|
V_DOT2ACC_F32_F16 = 2
|
|
V_ADD_F32 = 3
|
|
V_SUB_F32 = 4
|
|
V_SUBREV_F32 = 5
|
|
V_FMAC_DX9_ZERO_F32 = 6
|
|
V_MUL_DX9_ZERO_F32 = 7
|
|
V_MUL_F32 = 8
|
|
V_MUL_I32_I24 = 9
|
|
V_MUL_HI_I32_I24 = 10
|
|
V_MUL_U32_U24 = 11
|
|
V_MUL_HI_U32_U24 = 12
|
|
V_MIN_F32 = 15
|
|
V_MAX_F32 = 16
|
|
V_MIN_I32 = 17
|
|
V_MAX_I32 = 18
|
|
V_MIN_U32 = 19
|
|
V_MAX_U32 = 20
|
|
V_LSHLREV_B32 = 24
|
|
V_LSHRREV_B32 = 25
|
|
V_ASHRREV_I32 = 26
|
|
V_AND_B32 = 27
|
|
V_OR_B32 = 28
|
|
V_XOR_B32 = 29
|
|
V_XNOR_B32 = 30
|
|
V_ADD_CO_CI_U32 = 32
|
|
V_SUB_CO_CI_U32 = 33
|
|
V_SUBREV_CO_CI_U32 = 34
|
|
V_ADD_NC_U32 = 37
|
|
V_SUB_NC_U32 = 38
|
|
V_SUBREV_NC_U32 = 39
|
|
V_FMAC_F32 = 43
|
|
V_FMAMK_F32 = 44
|
|
V_FMAAK_F32 = 45
|
|
V_CVT_PK_RTZ_F16_F32 = 47
|
|
V_ADD_F16 = 50
|
|
V_SUB_F16 = 51
|
|
V_SUBREV_F16 = 52
|
|
V_MUL_F16 = 53
|
|
V_FMAC_F16 = 54
|
|
V_FMAMK_F16 = 55
|
|
V_FMAAK_F16 = 56
|
|
V_MAX_F16 = 57
|
|
V_MIN_F16 = 58
|
|
V_LDEXP_F16 = 59
|
|
V_PK_FMAC_F16 = 60
|
|
|
|
class VOP3Op(IntEnum):
|
|
V_CMP_F_F16 = 0
|
|
V_CMP_LT_F16 = 1
|
|
V_CMP_EQ_F16 = 2
|
|
V_CMP_LE_F16 = 3
|
|
V_CMP_GT_F16 = 4
|
|
V_CMP_LG_F16 = 5
|
|
V_CMP_GE_F16 = 6
|
|
V_CMP_O_F16 = 7
|
|
V_CMP_U_F16 = 8
|
|
V_CMP_NGE_F16 = 9
|
|
V_CMP_NLG_F16 = 10
|
|
V_CMP_NGT_F16 = 11
|
|
V_CMP_NLE_F16 = 12
|
|
V_CMP_NEQ_F16 = 13
|
|
V_CMP_NLT_F16 = 14
|
|
V_CMP_T_F16 = 15
|
|
V_CMP_F_F32 = 16
|
|
V_CMP_LT_F32 = 17
|
|
V_CMP_EQ_F32 = 18
|
|
V_CMP_LE_F32 = 19
|
|
V_CMP_GT_F32 = 20
|
|
V_CMP_LG_F32 = 21
|
|
V_CMP_GE_F32 = 22
|
|
V_CMP_O_F32 = 23
|
|
V_CMP_U_F32 = 24
|
|
V_CMP_NGE_F32 = 25
|
|
V_CMP_NLG_F32 = 26
|
|
V_CMP_NGT_F32 = 27
|
|
V_CMP_NLE_F32 = 28
|
|
V_CMP_NEQ_F32 = 29
|
|
V_CMP_NLT_F32 = 30
|
|
V_CMP_T_F32 = 31
|
|
V_CMP_F_F64 = 32
|
|
V_CMP_LT_F64 = 33
|
|
V_CMP_EQ_F64 = 34
|
|
V_CMP_LE_F64 = 35
|
|
V_CMP_GT_F64 = 36
|
|
V_CMP_LG_F64 = 37
|
|
V_CMP_GE_F64 = 38
|
|
V_CMP_O_F64 = 39
|
|
V_CMP_U_F64 = 40
|
|
V_CMP_NGE_F64 = 41
|
|
V_CMP_NLG_F64 = 42
|
|
V_CMP_NGT_F64 = 43
|
|
V_CMP_NLE_F64 = 44
|
|
V_CMP_NEQ_F64 = 45
|
|
V_CMP_NLT_F64 = 46
|
|
V_CMP_T_F64 = 47
|
|
V_CMP_LT_I16 = 49
|
|
V_CMP_EQ_I16 = 50
|
|
V_CMP_LE_I16 = 51
|
|
V_CMP_GT_I16 = 52
|
|
V_CMP_NE_I16 = 53
|
|
V_CMP_GE_I16 = 54
|
|
V_CMP_LT_U16 = 57
|
|
V_CMP_EQ_U16 = 58
|
|
V_CMP_LE_U16 = 59
|
|
V_CMP_GT_U16 = 60
|
|
V_CMP_NE_U16 = 61
|
|
V_CMP_GE_U16 = 62
|
|
V_CMP_F_I32 = 64
|
|
V_CMP_LT_I32 = 65
|
|
V_CMP_EQ_I32 = 66
|
|
V_CMP_LE_I32 = 67
|
|
V_CMP_GT_I32 = 68
|
|
V_CMP_NE_I32 = 69
|
|
V_CMP_GE_I32 = 70
|
|
V_CMP_T_I32 = 71
|
|
V_CMP_F_U32 = 72
|
|
V_CMP_LT_U32 = 73
|
|
V_CMP_EQ_U32 = 74
|
|
V_CMP_LE_U32 = 75
|
|
V_CMP_GT_U32 = 76
|
|
V_CMP_NE_U32 = 77
|
|
V_CMP_GE_U32 = 78
|
|
V_CMP_T_U32 = 79
|
|
V_CMP_F_I64 = 80
|
|
V_CMP_LT_I64 = 81
|
|
V_CMP_EQ_I64 = 82
|
|
V_CMP_LE_I64 = 83
|
|
V_CMP_GT_I64 = 84
|
|
V_CMP_NE_I64 = 85
|
|
V_CMP_GE_I64 = 86
|
|
V_CMP_T_I64 = 87
|
|
V_CMP_F_U64 = 88
|
|
V_CMP_LT_U64 = 89
|
|
V_CMP_EQ_U64 = 90
|
|
V_CMP_LE_U64 = 91
|
|
V_CMP_GT_U64 = 92
|
|
V_CMP_NE_U64 = 93
|
|
V_CMP_GE_U64 = 94
|
|
V_CMP_T_U64 = 95
|
|
V_CMP_CLASS_F16 = 125
|
|
V_CMP_CLASS_F32 = 126
|
|
V_CMP_CLASS_F64 = 127
|
|
V_CMPX_F_F16 = 128
|
|
V_CMPX_LT_F16 = 129
|
|
V_CMPX_EQ_F16 = 130
|
|
V_CMPX_LE_F16 = 131
|
|
V_CMPX_GT_F16 = 132
|
|
V_CMPX_LG_F16 = 133
|
|
V_CMPX_GE_F16 = 134
|
|
V_CMPX_O_F16 = 135
|
|
V_CMPX_U_F16 = 136
|
|
V_CMPX_NGE_F16 = 137
|
|
V_CMPX_NLG_F16 = 138
|
|
V_CMPX_NGT_F16 = 139
|
|
V_CMPX_NLE_F16 = 140
|
|
V_CMPX_NEQ_F16 = 141
|
|
V_CMPX_NLT_F16 = 142
|
|
V_CMPX_T_F16 = 143
|
|
V_CMPX_F_F32 = 144
|
|
V_CMPX_LT_F32 = 145
|
|
V_CMPX_EQ_F32 = 146
|
|
V_CMPX_LE_F32 = 147
|
|
V_CMPX_GT_F32 = 148
|
|
V_CMPX_LG_F32 = 149
|
|
V_CMPX_GE_F32 = 150
|
|
V_CMPX_O_F32 = 151
|
|
V_CMPX_U_F32 = 152
|
|
V_CMPX_NGE_F32 = 153
|
|
V_CMPX_NLG_F32 = 154
|
|
V_CMPX_NGT_F32 = 155
|
|
V_CMPX_NLE_F32 = 156
|
|
V_CMPX_NEQ_F32 = 157
|
|
V_CMPX_NLT_F32 = 158
|
|
V_CMPX_T_F32 = 159
|
|
V_CMPX_F_F64 = 160
|
|
V_CMPX_LT_F64 = 161
|
|
V_CMPX_EQ_F64 = 162
|
|
V_CMPX_LE_F64 = 163
|
|
V_CMPX_GT_F64 = 164
|
|
V_CMPX_LG_F64 = 165
|
|
V_CMPX_GE_F64 = 166
|
|
V_CMPX_O_F64 = 167
|
|
V_CMPX_U_F64 = 168
|
|
V_CMPX_NGE_F64 = 169
|
|
V_CMPX_NLG_F64 = 170
|
|
V_CMPX_NGT_F64 = 171
|
|
V_CMPX_NLE_F64 = 172
|
|
V_CMPX_NEQ_F64 = 173
|
|
V_CMPX_NLT_F64 = 174
|
|
V_CMPX_T_F64 = 175
|
|
V_CMPX_LT_I16 = 177
|
|
V_CMPX_EQ_I16 = 178
|
|
V_CMPX_LE_I16 = 179
|
|
V_CMPX_GT_I16 = 180
|
|
V_CMPX_NE_I16 = 181
|
|
V_CMPX_GE_I16 = 182
|
|
V_CMPX_LT_U16 = 185
|
|
V_CMPX_EQ_U16 = 186
|
|
V_CMPX_LE_U16 = 187
|
|
V_CMPX_GT_U16 = 188
|
|
V_CMPX_NE_U16 = 189
|
|
V_CMPX_GE_U16 = 190
|
|
V_CMPX_F_I32 = 192
|
|
V_CMPX_LT_I32 = 193
|
|
V_CMPX_EQ_I32 = 194
|
|
V_CMPX_LE_I32 = 195
|
|
V_CMPX_GT_I32 = 196
|
|
V_CMPX_NE_I32 = 197
|
|
V_CMPX_GE_I32 = 198
|
|
V_CMPX_T_I32 = 199
|
|
V_CMPX_F_U32 = 200
|
|
V_CMPX_LT_U32 = 201
|
|
V_CMPX_EQ_U32 = 202
|
|
V_CMPX_LE_U32 = 203
|
|
V_CMPX_GT_U32 = 204
|
|
V_CMPX_NE_U32 = 205
|
|
V_CMPX_GE_U32 = 206
|
|
V_CMPX_T_U32 = 207
|
|
V_CMPX_F_I64 = 208
|
|
V_CMPX_LT_I64 = 209
|
|
V_CMPX_EQ_I64 = 210
|
|
V_CMPX_LE_I64 = 211
|
|
V_CMPX_GT_I64 = 212
|
|
V_CMPX_NE_I64 = 213
|
|
V_CMPX_GE_I64 = 214
|
|
V_CMPX_T_I64 = 215
|
|
V_CMPX_F_U64 = 216
|
|
V_CMPX_LT_U64 = 217
|
|
V_CMPX_EQ_U64 = 218
|
|
V_CMPX_LE_U64 = 219
|
|
V_CMPX_GT_U64 = 220
|
|
V_CMPX_NE_U64 = 221
|
|
V_CMPX_GE_U64 = 222
|
|
V_CMPX_T_U64 = 223
|
|
V_CMPX_CLASS_F16 = 253
|
|
V_CMPX_CLASS_F32 = 254
|
|
V_CMPX_CLASS_F64 = 255
|
|
V_CNDMASK_B32 = 257
|
|
V_ADD_F32 = 259
|
|
V_SUB_F32 = 260
|
|
V_SUBREV_F32 = 261
|
|
V_FMAC_DX9_ZERO_F32 = 262
|
|
V_MUL_DX9_ZERO_F32 = 263
|
|
V_MUL_F32 = 264
|
|
V_MUL_I32_I24 = 265
|
|
V_MUL_HI_I32_I24 = 266
|
|
V_MUL_U32_U24 = 267
|
|
V_MUL_HI_U32_U24 = 268
|
|
V_MIN_F32 = 271
|
|
V_MAX_F32 = 272
|
|
V_MIN_I32 = 273
|
|
V_MAX_I32 = 274
|
|
V_MIN_U32 = 275
|
|
V_MAX_U32 = 276
|
|
V_LSHLREV_B32 = 280
|
|
V_LSHRREV_B32 = 281
|
|
V_ASHRREV_I32 = 282
|
|
V_AND_B32 = 283
|
|
V_OR_B32 = 284
|
|
V_XOR_B32 = 285
|
|
V_XNOR_B32 = 286
|
|
V_ADD_NC_U32 = 293
|
|
V_SUB_NC_U32 = 294
|
|
V_SUBREV_NC_U32 = 295
|
|
V_FMAC_F32 = 299
|
|
V_CVT_PK_RTZ_F16_F32 = 303
|
|
V_ADD_F16 = 306
|
|
V_SUB_F16 = 307
|
|
V_SUBREV_F16 = 308
|
|
V_MUL_F16 = 309
|
|
V_FMAC_F16 = 310
|
|
V_MAX_F16 = 313
|
|
V_MIN_F16 = 314
|
|
V_LDEXP_F16 = 315
|
|
V_NOP = 384
|
|
V_MOV_B32 = 385
|
|
V_READFIRSTLANE_B32 = 386
|
|
V_CVT_I32_F64 = 387
|
|
V_CVT_F64_I32 = 388
|
|
V_CVT_F32_I32 = 389
|
|
V_CVT_F32_U32 = 390
|
|
V_CVT_U32_F32 = 391
|
|
V_CVT_I32_F32 = 392
|
|
V_CVT_F16_F32 = 394
|
|
V_CVT_F32_F16 = 395
|
|
V_CVT_NEAREST_I32_F32 = 396
|
|
V_CVT_FLOOR_I32_F32 = 397
|
|
V_CVT_OFF_F32_I4 = 398
|
|
V_CVT_F32_F64 = 399
|
|
V_CVT_F64_F32 = 400
|
|
V_CVT_F32_UBYTE0 = 401
|
|
V_CVT_F32_UBYTE1 = 402
|
|
V_CVT_F32_UBYTE2 = 403
|
|
V_CVT_F32_UBYTE3 = 404
|
|
V_CVT_U32_F64 = 405
|
|
V_CVT_F64_U32 = 406
|
|
V_TRUNC_F64 = 407
|
|
V_CEIL_F64 = 408
|
|
V_RNDNE_F64 = 409
|
|
V_FLOOR_F64 = 410
|
|
V_PIPEFLUSH = 411
|
|
V_MOV_B16 = 412
|
|
V_FRACT_F32 = 416
|
|
V_TRUNC_F32 = 417
|
|
V_CEIL_F32 = 418
|
|
V_RNDNE_F32 = 419
|
|
V_FLOOR_F32 = 420
|
|
V_EXP_F32 = 421
|
|
V_LOG_F32 = 423
|
|
V_RCP_F32 = 426
|
|
V_RCP_IFLAG_F32 = 427
|
|
V_RSQ_F32 = 430
|
|
V_RCP_F64 = 431
|
|
V_RSQ_F64 = 433
|
|
V_SQRT_F32 = 435
|
|
V_SQRT_F64 = 436
|
|
V_SIN_F32 = 437
|
|
V_COS_F32 = 438
|
|
V_NOT_B32 = 439
|
|
V_BFREV_B32 = 440
|
|
V_CLZ_I32_U32 = 441
|
|
V_CTZ_I32_B32 = 442
|
|
V_CLS_I32 = 443
|
|
V_FREXP_EXP_I32_F64 = 444
|
|
V_FREXP_MANT_F64 = 445
|
|
V_FRACT_F64 = 446
|
|
V_FREXP_EXP_I32_F32 = 447
|
|
V_FREXP_MANT_F32 = 448
|
|
V_MOVRELD_B32 = 450
|
|
V_MOVRELS_B32 = 451
|
|
V_MOVRELSD_B32 = 452
|
|
V_MOVRELSD_2_B32 = 456
|
|
V_CVT_F16_U16 = 464
|
|
V_CVT_F16_I16 = 465
|
|
V_CVT_U16_F16 = 466
|
|
V_CVT_I16_F16 = 467
|
|
V_RCP_F16 = 468
|
|
V_SQRT_F16 = 469
|
|
V_RSQ_F16 = 470
|
|
V_LOG_F16 = 471
|
|
V_EXP_F16 = 472
|
|
V_FREXP_MANT_F16 = 473
|
|
V_FREXP_EXP_I16_F16 = 474
|
|
V_FLOOR_F16 = 475
|
|
V_CEIL_F16 = 476
|
|
V_TRUNC_F16 = 477
|
|
V_RNDNE_F16 = 478
|
|
V_FRACT_F16 = 479
|
|
V_SIN_F16 = 480
|
|
V_COS_F16 = 481
|
|
V_SAT_PK_U8_I16 = 482
|
|
V_CVT_NORM_I16_F16 = 483
|
|
V_CVT_NORM_U16_F16 = 484
|
|
V_NOT_B16 = 489
|
|
V_CVT_I32_I16 = 490
|
|
V_CVT_U32_U16 = 491
|
|
V_FMA_DX9_ZERO_F32 = 521
|
|
V_MAD_I32_I24 = 522
|
|
V_MAD_U32_U24 = 523
|
|
V_CUBEID_F32 = 524
|
|
V_CUBESC_F32 = 525
|
|
V_CUBETC_F32 = 526
|
|
V_CUBEMA_F32 = 527
|
|
V_BFE_U32 = 528
|
|
V_BFE_I32 = 529
|
|
V_BFI_B32 = 530
|
|
V_FMA_F32 = 531
|
|
V_FMA_F64 = 532
|
|
V_LERP_U8 = 533
|
|
V_ALIGNBIT_B32 = 534
|
|
V_ALIGNBYTE_B32 = 535
|
|
V_MULLIT_F32 = 536
|
|
V_MIN3_F32 = 537
|
|
V_MIN3_I32 = 538
|
|
V_MIN3_U32 = 539
|
|
V_MAX3_F32 = 540
|
|
V_MAX3_I32 = 541
|
|
V_MAX3_U32 = 542
|
|
V_MED3_F32 = 543
|
|
V_MED3_I32 = 544
|
|
V_MED3_U32 = 545
|
|
V_SAD_U8 = 546
|
|
V_SAD_HI_U8 = 547
|
|
V_SAD_U16 = 548
|
|
V_SAD_U32 = 549
|
|
V_CVT_PK_U8_F32 = 550
|
|
V_DIV_FIXUP_F32 = 551
|
|
V_DIV_FIXUP_F64 = 552
|
|
V_DIV_FMAS_F32 = 567
|
|
V_DIV_FMAS_F64 = 568
|
|
V_MSAD_U8 = 569
|
|
V_QSAD_PK_U16_U8 = 570
|
|
V_MQSAD_PK_U16_U8 = 571
|
|
V_MQSAD_U32_U8 = 573
|
|
V_XOR3_B32 = 576
|
|
V_MAD_U16 = 577
|
|
V_PERM_B32 = 580
|
|
V_XAD_U32 = 581
|
|
V_LSHL_ADD_U32 = 582
|
|
V_ADD_LSHL_U32 = 583
|
|
V_FMA_F16 = 584
|
|
V_MIN3_F16 = 585
|
|
V_MIN3_I16 = 586
|
|
V_MIN3_U16 = 587
|
|
V_MAX3_F16 = 588
|
|
V_MAX3_I16 = 589
|
|
V_MAX3_U16 = 590
|
|
V_MED3_F16 = 591
|
|
V_MED3_I16 = 592
|
|
V_MED3_U16 = 593
|
|
V_MAD_I16 = 595
|
|
V_DIV_FIXUP_F16 = 596
|
|
V_ADD3_U32 = 597
|
|
V_LSHL_OR_B32 = 598
|
|
V_AND_OR_B32 = 599
|
|
V_OR3_B32 = 600
|
|
V_MAD_U32_U16 = 601
|
|
V_MAD_I32_I16 = 602
|
|
V_PERMLANE16_B32 = 603
|
|
V_PERMLANEX16_B32 = 604
|
|
V_CNDMASK_B16 = 605
|
|
V_MAXMIN_F32 = 606
|
|
V_MINMAX_F32 = 607
|
|
V_MAXMIN_F16 = 608
|
|
V_MINMAX_F16 = 609
|
|
V_MAXMIN_U32 = 610
|
|
V_MINMAX_U32 = 611
|
|
V_MAXMIN_I32 = 612
|
|
V_MINMAX_I32 = 613
|
|
V_DOT2_F16_F16 = 614
|
|
V_DOT2_BF16_BF16 = 615
|
|
V_ADD_NC_U16 = 771
|
|
V_SUB_NC_U16 = 772
|
|
V_MUL_LO_U16 = 773
|
|
V_CVT_PK_I16_F32 = 774
|
|
V_CVT_PK_U16_F32 = 775
|
|
V_MAX_U16 = 777
|
|
V_MAX_I16 = 778
|
|
V_MIN_U16 = 779
|
|
V_MIN_I16 = 780
|
|
V_ADD_NC_I16 = 781
|
|
V_SUB_NC_I16 = 782
|
|
V_PACK_B32_F16 = 785
|
|
V_CVT_PK_NORM_I16_F16 = 786
|
|
V_CVT_PK_NORM_U16_F16 = 787
|
|
V_LDEXP_F32 = 796
|
|
V_BFM_B32 = 797
|
|
V_BCNT_U32_B32 = 798
|
|
V_MBCNT_LO_U32_B32 = 799
|
|
V_MBCNT_HI_U32_B32 = 800
|
|
V_CVT_PK_NORM_I16_F32 = 801
|
|
V_CVT_PK_NORM_U16_F32 = 802
|
|
V_CVT_PK_U16_U32 = 803
|
|
V_CVT_PK_I16_I32 = 804
|
|
V_SUB_NC_I32 = 805
|
|
V_ADD_NC_I32 = 806
|
|
V_ADD_F64 = 807
|
|
V_MUL_F64 = 808
|
|
V_MIN_F64 = 809
|
|
V_MAX_F64 = 810
|
|
V_LDEXP_F64 = 811
|
|
V_MUL_LO_U32 = 812
|
|
V_MUL_HI_U32 = 813
|
|
V_MUL_HI_I32 = 814
|
|
V_TRIG_PREOP_F64 = 815
|
|
V_LSHLREV_B16 = 824
|
|
V_LSHRREV_B16 = 825
|
|
V_ASHRREV_I16 = 826
|
|
V_LSHLREV_B64 = 828
|
|
V_LSHRREV_B64 = 829
|
|
V_ASHRREV_I64 = 830
|
|
V_READLANE_B32 = 864
|
|
V_WRITELANE_B32 = 865
|
|
V_AND_B16 = 866
|
|
V_OR_B16 = 867
|
|
V_XOR_B16 = 868
|
|
|
|
class VOP3POp(IntEnum):
|
|
V_PK_MAD_I16 = 0
|
|
V_PK_MUL_LO_U16 = 1
|
|
V_PK_ADD_I16 = 2
|
|
V_PK_SUB_I16 = 3
|
|
V_PK_LSHLREV_B16 = 4
|
|
V_PK_LSHRREV_B16 = 5
|
|
V_PK_ASHRREV_I16 = 6
|
|
V_PK_MAX_I16 = 7
|
|
V_PK_MIN_I16 = 8
|
|
V_PK_MAD_U16 = 9
|
|
V_PK_ADD_U16 = 10
|
|
V_PK_SUB_U16 = 11
|
|
V_PK_MAX_U16 = 12
|
|
V_PK_MIN_U16 = 13
|
|
V_PK_FMA_F16 = 14
|
|
V_PK_ADD_F16 = 15
|
|
V_PK_MUL_F16 = 16
|
|
V_PK_MIN_F16 = 17
|
|
V_PK_MAX_F16 = 18
|
|
V_DOT2_F32_F16 = 19
|
|
V_DOT4_I32_IU8 = 22
|
|
V_DOT4_U32_U8 = 23
|
|
V_DOT8_I32_IU4 = 24
|
|
V_DOT8_U32_U4 = 25
|
|
V_DOT2_F32_BF16 = 26
|
|
V_FMA_MIX_F32 = 32
|
|
V_FMA_MIXLO_F16 = 33
|
|
V_FMA_MIXHI_F16 = 34
|
|
V_WMMA_F32_16X16X16_F16 = 64
|
|
V_WMMA_F32_16X16X16_BF16 = 65
|
|
V_WMMA_F16_16X16X16_F16 = 66
|
|
V_WMMA_BF16_16X16X16_BF16 = 67
|
|
V_WMMA_I32_16X16X16_IU8 = 68
|
|
V_WMMA_I32_16X16X16_IU4 = 69
|
|
|
|
class VOP3SDOp(IntEnum):
|
|
DWORD = 1
|
|
V_ADD_CO_CI_U32 = 288
|
|
V_SUB_CO_CI_U32 = 289
|
|
V_SUBREV_CO_CI_U32 = 290
|
|
V_DIV_SCALE_F32 = 764
|
|
V_DIV_SCALE_F64 = 765
|
|
V_MAD_U64_U32 = 766
|
|
V_MAD_I64_I32 = 767
|
|
V_ADD_CO_U32 = 768
|
|
V_SUB_CO_U32 = 769
|
|
V_SUBREV_CO_U32 = 770
|
|
|
|
class VOPCOp(IntEnum):
|
|
V_CMP_F_F16 = 0
|
|
V_CMP_LT_F16 = 1
|
|
V_CMP_EQ_F16 = 2
|
|
V_CMP_LE_F16 = 3
|
|
V_CMP_GT_F16 = 4
|
|
V_CMP_LG_F16 = 5
|
|
V_CMP_GE_F16 = 6
|
|
V_CMP_O_F16 = 7
|
|
V_CMP_U_F16 = 8
|
|
V_CMP_NGE_F16 = 9
|
|
V_CMP_NLG_F16 = 10
|
|
V_CMP_NGT_F16 = 11
|
|
V_CMP_NLE_F16 = 12
|
|
V_CMP_NEQ_F16 = 13
|
|
V_CMP_NLT_F16 = 14
|
|
V_CMP_T_F16 = 15
|
|
V_CMP_F_F32 = 16
|
|
V_CMP_LT_F32 = 17
|
|
V_CMP_EQ_F32 = 18
|
|
V_CMP_LE_F32 = 19
|
|
V_CMP_GT_F32 = 20
|
|
V_CMP_LG_F32 = 21
|
|
V_CMP_GE_F32 = 22
|
|
V_CMP_O_F32 = 23
|
|
V_CMP_U_F32 = 24
|
|
V_CMP_NGE_F32 = 25
|
|
V_CMP_NLG_F32 = 26
|
|
V_CMP_NGT_F32 = 27
|
|
V_CMP_NLE_F32 = 28
|
|
V_CMP_NEQ_F32 = 29
|
|
V_CMP_NLT_F32 = 30
|
|
V_CMP_T_F32 = 31
|
|
V_CMP_F_F64 = 32
|
|
V_CMP_LT_F64 = 33
|
|
V_CMP_EQ_F64 = 34
|
|
V_CMP_LE_F64 = 35
|
|
V_CMP_GT_F64 = 36
|
|
V_CMP_LG_F64 = 37
|
|
V_CMP_GE_F64 = 38
|
|
V_CMP_O_F64 = 39
|
|
V_CMP_U_F64 = 40
|
|
V_CMP_NGE_F64 = 41
|
|
V_CMP_NLG_F64 = 42
|
|
V_CMP_NGT_F64 = 43
|
|
V_CMP_NLE_F64 = 44
|
|
V_CMP_NEQ_F64 = 45
|
|
V_CMP_NLT_F64 = 46
|
|
V_CMP_T_F64 = 47
|
|
V_CMP_LT_I16 = 49
|
|
V_CMP_EQ_I16 = 50
|
|
V_CMP_LE_I16 = 51
|
|
V_CMP_GT_I16 = 52
|
|
V_CMP_NE_I16 = 53
|
|
V_CMP_GE_I16 = 54
|
|
V_CMP_LT_U16 = 57
|
|
V_CMP_EQ_U16 = 58
|
|
V_CMP_LE_U16 = 59
|
|
V_CMP_GT_U16 = 60
|
|
V_CMP_NE_U16 = 61
|
|
V_CMP_GE_U16 = 62
|
|
V_CMP_F_I32 = 64
|
|
V_CMP_LT_I32 = 65
|
|
V_CMP_EQ_I32 = 66
|
|
V_CMP_LE_I32 = 67
|
|
V_CMP_GT_I32 = 68
|
|
V_CMP_NE_I32 = 69
|
|
V_CMP_GE_I32 = 70
|
|
V_CMP_T_I32 = 71
|
|
V_CMP_F_U32 = 72
|
|
V_CMP_LT_U32 = 73
|
|
V_CMP_EQ_U32 = 74
|
|
V_CMP_LE_U32 = 75
|
|
V_CMP_GT_U32 = 76
|
|
V_CMP_NE_U32 = 77
|
|
V_CMP_GE_U32 = 78
|
|
V_CMP_T_U32 = 79
|
|
V_CMP_F_I64 = 80
|
|
V_CMP_LT_I64 = 81
|
|
V_CMP_EQ_I64 = 82
|
|
V_CMP_LE_I64 = 83
|
|
V_CMP_GT_I64 = 84
|
|
V_CMP_NE_I64 = 85
|
|
V_CMP_GE_I64 = 86
|
|
V_CMP_T_I64 = 87
|
|
V_CMP_F_U64 = 88
|
|
V_CMP_LT_U64 = 89
|
|
V_CMP_EQ_U64 = 90
|
|
V_CMP_LE_U64 = 91
|
|
V_CMP_GT_U64 = 92
|
|
V_CMP_NE_U64 = 93
|
|
V_CMP_GE_U64 = 94
|
|
V_CMP_T_U64 = 95
|
|
V_CMP_CLASS_F16 = 125
|
|
V_CMP_CLASS_F32 = 126
|
|
V_CMP_CLASS_F64 = 127
|
|
V_CMPX_F_F16 = 128
|
|
V_CMPX_LT_F16 = 129
|
|
V_CMPX_EQ_F16 = 130
|
|
V_CMPX_LE_F16 = 131
|
|
V_CMPX_GT_F16 = 132
|
|
V_CMPX_LG_F16 = 133
|
|
V_CMPX_GE_F16 = 134
|
|
V_CMPX_O_F16 = 135
|
|
V_CMPX_U_F16 = 136
|
|
V_CMPX_NGE_F16 = 137
|
|
V_CMPX_NLG_F16 = 138
|
|
V_CMPX_NGT_F16 = 139
|
|
V_CMPX_NLE_F16 = 140
|
|
V_CMPX_NEQ_F16 = 141
|
|
V_CMPX_NLT_F16 = 142
|
|
V_CMPX_T_F16 = 143
|
|
V_CMPX_F_F32 = 144
|
|
V_CMPX_LT_F32 = 145
|
|
V_CMPX_EQ_F32 = 146
|
|
V_CMPX_LE_F32 = 147
|
|
V_CMPX_GT_F32 = 148
|
|
V_CMPX_LG_F32 = 149
|
|
V_CMPX_GE_F32 = 150
|
|
V_CMPX_O_F32 = 151
|
|
V_CMPX_U_F32 = 152
|
|
V_CMPX_NGE_F32 = 153
|
|
V_CMPX_NLG_F32 = 154
|
|
V_CMPX_NGT_F32 = 155
|
|
V_CMPX_NLE_F32 = 156
|
|
V_CMPX_NEQ_F32 = 157
|
|
V_CMPX_NLT_F32 = 158
|
|
V_CMPX_T_F32 = 159
|
|
V_CMPX_F_F64 = 160
|
|
V_CMPX_LT_F64 = 161
|
|
V_CMPX_EQ_F64 = 162
|
|
V_CMPX_LE_F64 = 163
|
|
V_CMPX_GT_F64 = 164
|
|
V_CMPX_LG_F64 = 165
|
|
V_CMPX_GE_F64 = 166
|
|
V_CMPX_O_F64 = 167
|
|
V_CMPX_U_F64 = 168
|
|
V_CMPX_NGE_F64 = 169
|
|
V_CMPX_NLG_F64 = 170
|
|
V_CMPX_NGT_F64 = 171
|
|
V_CMPX_NLE_F64 = 172
|
|
V_CMPX_NEQ_F64 = 173
|
|
V_CMPX_NLT_F64 = 174
|
|
V_CMPX_T_F64 = 175
|
|
V_CMPX_LT_I16 = 177
|
|
V_CMPX_EQ_I16 = 178
|
|
V_CMPX_LE_I16 = 179
|
|
V_CMPX_GT_I16 = 180
|
|
V_CMPX_NE_I16 = 181
|
|
V_CMPX_GE_I16 = 182
|
|
V_CMPX_LT_U16 = 185
|
|
V_CMPX_EQ_U16 = 186
|
|
V_CMPX_LE_U16 = 187
|
|
V_CMPX_GT_U16 = 188
|
|
V_CMPX_NE_U16 = 189
|
|
V_CMPX_GE_U16 = 190
|
|
V_CMPX_F_I32 = 192
|
|
V_CMPX_LT_I32 = 193
|
|
V_CMPX_EQ_I32 = 194
|
|
V_CMPX_LE_I32 = 195
|
|
V_CMPX_GT_I32 = 196
|
|
V_CMPX_NE_I32 = 197
|
|
V_CMPX_GE_I32 = 198
|
|
V_CMPX_T_I32 = 199
|
|
V_CMPX_F_U32 = 200
|
|
V_CMPX_LT_U32 = 201
|
|
V_CMPX_EQ_U32 = 202
|
|
V_CMPX_LE_U32 = 203
|
|
V_CMPX_GT_U32 = 204
|
|
V_CMPX_NE_U32 = 205
|
|
V_CMPX_GE_U32 = 206
|
|
V_CMPX_T_U32 = 207
|
|
V_CMPX_F_I64 = 208
|
|
V_CMPX_LT_I64 = 209
|
|
V_CMPX_EQ_I64 = 210
|
|
V_CMPX_LE_I64 = 211
|
|
V_CMPX_GT_I64 = 212
|
|
V_CMPX_NE_I64 = 213
|
|
V_CMPX_GE_I64 = 214
|
|
V_CMPX_T_I64 = 215
|
|
V_CMPX_F_U64 = 216
|
|
V_CMPX_LT_U64 = 217
|
|
V_CMPX_EQ_U64 = 218
|
|
V_CMPX_LE_U64 = 219
|
|
V_CMPX_GT_U64 = 220
|
|
V_CMPX_NE_U64 = 221
|
|
V_CMPX_GE_U64 = 222
|
|
V_CMPX_T_U64 = 223
|
|
V_CMPX_CLASS_F16 = 253
|
|
V_CMPX_CLASS_F32 = 254
|
|
V_CMPX_CLASS_F64 = 255
|
|
|
|
class VOPDOp(IntEnum):
|
|
V_DUAL_FMAC_F32 = 0
|
|
V_DUAL_FMAAK_F32 = 1
|
|
V_DUAL_FMAMK_F32 = 2
|
|
V_DUAL_MUL_F32 = 3
|
|
V_DUAL_ADD_F32 = 4
|
|
V_DUAL_SUB_F32 = 5
|
|
V_DUAL_SUBREV_F32 = 6
|
|
V_DUAL_MUL_DX9_ZERO_F32 = 7
|
|
V_DUAL_MOV_B32 = 8
|
|
V_DUAL_CNDMASK_B32 = 9
|
|
V_DUAL_MAX_F32 = 10
|
|
V_DUAL_MIN_F32 = 11
|
|
V_DUAL_DOT2ACC_F32_F16 = 12
|
|
V_DUAL_DOT2ACC_F32_BF16 = 13
|
|
V_DUAL_ADD_NC_U32 = 16
|
|
V_DUAL_LSHLREV_B32 = 17
|
|
V_DUAL_AND_B32 = 18
|
|
|
|
# instruction formats
|
|
class DPP16(Inst64):
|
|
src0:Src = bits[39:32]
|
|
dpp_ctrl = bits[48:40]
|
|
fi = bits[50]
|
|
bc = bits[51]
|
|
src0_neg = bits[52]
|
|
src0_abs = bits[53]
|
|
src1_neg = bits[54]
|
|
src1_abs = bits[55]
|
|
bank_mask = bits[59:56]
|
|
row_mask = bits[63:60]
|
|
|
|
class DPP8(Inst64):
|
|
src0:Src = bits[39:32]
|
|
lane_sel0 = bits[42:40]
|
|
lane_sel1 = bits[45:43]
|
|
lane_sel2 = bits[48:46]
|
|
lane_sel3 = bits[51:49]
|
|
lane_sel4 = bits[54:52]
|
|
lane_sel5 = bits[57:55]
|
|
lane_sel6 = bits[60:58]
|
|
lane_sel7 = bits[63:61]
|
|
|
|
class DS(Inst64):
|
|
encoding = bits[31:26] == 0b110110
|
|
op:Annotated[BitField, DSOp] = bits[25:18]
|
|
vdst:VGPRField = bits[63:56]
|
|
addr:VGPRField = bits[39:32]
|
|
data0:VGPRField = bits[47:40]
|
|
data1:VGPRField = bits[55:48]
|
|
offset0 = bits[7:0]
|
|
offset1 = bits[15:8]
|
|
gds = bits[17]
|
|
|
|
class EXP(Inst64):
|
|
encoding = bits[31:26] == 0b111110
|
|
en = bits[3:0]
|
|
target = bits[9:4]
|
|
vsrc0 = bits[39:32]
|
|
vsrc1:VGPRField = bits[47:40]
|
|
vsrc2 = bits[55:48]
|
|
vsrc3 = bits[63:56]
|
|
done = bits[11]
|
|
row = bits[13]
|
|
|
|
class FLAT(Inst64):
|
|
encoding = bits[31:26] == 0b110111
|
|
op:Annotated[BitField, FLATOp] = bits[24:18]
|
|
vdst:VGPRField = bits[63:56]
|
|
addr:VGPRField = bits[39:32]
|
|
data:VGPRField = bits[47:40]
|
|
saddr:SSrc = bits[54:48]
|
|
offset:Imm = bits[12:0]
|
|
seg = bits[17:16]
|
|
dlc = bits[13]
|
|
glc = bits[14]
|
|
slc = bits[15]
|
|
sve = bits[55]
|
|
|
|
class LDSDIR(Inst32):
|
|
encoding = bits[31:24] == 0b11001110
|
|
op = bits[21:20]
|
|
vdst:VGPRField = bits[7:0]
|
|
attr = bits[15:10]
|
|
attr_chan = bits[9:8]
|
|
wait_va = bits[19:16]
|
|
|
|
class MIMG(Inst64):
|
|
encoding = bits[31:26] == 0b111100
|
|
op:Annotated[BitField, MIMGOp] = bits[25:18]
|
|
vdata:VGPRField = bits[47:40]
|
|
vaddr:VGPRField = bits[39:32]
|
|
srsrc:SGPRField = bits[52:48]
|
|
ssamp = bits[62:58]
|
|
dmask = bits[11:8]
|
|
dim = bits[4:2]
|
|
unrm = bits[7]
|
|
dlc = bits[13]
|
|
glc = bits[14]
|
|
slc = bits[12]
|
|
nsa = bits[0]
|
|
r128 = bits[15]
|
|
a16 = bits[16]
|
|
d16 = bits[17]
|
|
tfe = bits[53]
|
|
lwe = bits[54]
|
|
addr1 = bits[71:64]
|
|
addr2 = bits[79:72]
|
|
|
|
class MTBUF(Inst64):
|
|
encoding = bits[31:26] == 0b111010
|
|
op:Annotated[BitField, MTBUFOp] = bits[18:15]
|
|
vdata:VGPRField = bits[47:40]
|
|
vaddr:VGPRField = bits[39:32]
|
|
srsrc:SGPRField = bits[52:48]
|
|
soffset:SSrc = bits[63:56]
|
|
offset:Imm = bits[11:0]
|
|
format = bits[25:19]
|
|
offen = bits[54]
|
|
idxen = bits[55]
|
|
glc = bits[14]
|
|
dlc = bits[13]
|
|
slc = bits[12]
|
|
tfe = bits[53]
|
|
|
|
class MUBUF(Inst64):
|
|
encoding = bits[31:26] == 0b111000
|
|
op:Annotated[BitField, MUBUFOp] = bits[25:18]
|
|
vdata:VGPRField = bits[47:40]
|
|
vaddr:VGPRField = bits[39:32]
|
|
srsrc:SGPRField = bits[52:48]
|
|
soffset:SSrc = bits[63:56]
|
|
offset:Imm = bits[11:0]
|
|
offen = bits[54]
|
|
idxen = bits[55]
|
|
glc = bits[14]
|
|
dlc = bits[13]
|
|
slc = bits[12]
|
|
tfe = bits[53]
|
|
|
|
class SMEM(Inst64):
|
|
encoding = bits[31:26] == 0b111101
|
|
op:Annotated[BitField, SMEMOp] = bits[25:18]
|
|
sdata:SGPRField = bits[12:6]
|
|
sbase:SGPRField = bits[5:0]
|
|
soffset:SSrc = bits[63:57]
|
|
offset:Imm = bits[52:32]
|
|
glc = bits[14]
|
|
dlc = bits[13]
|
|
|
|
class SOP1(Inst32):
|
|
encoding = bits[31:23] == 0b101111101
|
|
op:Annotated[BitField, SOP1Op] = bits[15:8]
|
|
sdst:SGPRField = bits[22:16]
|
|
ssrc0:SSrc = bits[7:0]
|
|
|
|
class SOP2(Inst32):
|
|
encoding = bits[31:30] == 0b10
|
|
op:Annotated[BitField, SOP2Op] = bits[29:23]
|
|
sdst:SGPRField = bits[22:16]
|
|
ssrc0:SSrc = bits[7:0]
|
|
ssrc1:SSrc = bits[15:8]
|
|
|
|
class SOPC(Inst32):
|
|
encoding = bits[31:23] == 0b101111110
|
|
op:Annotated[BitField, SOPCOp] = bits[22:16]
|
|
ssrc0:SSrc = bits[7:0]
|
|
ssrc1:SSrc = bits[15:8]
|
|
|
|
class SOPK(Inst32):
|
|
encoding = bits[31:28] == 0b1011
|
|
op:Annotated[BitField, SOPKOp] = bits[27:23]
|
|
sdst:SGPRField = bits[22:16]
|
|
simm16:SImm = bits[15:0]
|
|
|
|
class SOPP(Inst32):
|
|
encoding = bits[31:23] == 0b101111111
|
|
op:Annotated[BitField, SOPPOp] = bits[22:16]
|
|
simm16:SImm = bits[15:0]
|
|
|
|
class VINTERP(Inst64):
|
|
encoding = bits[31:24] == 0b11001101
|
|
op:Annotated[BitField, VINTERPOp] = bits[22:16]
|
|
vdst:VGPRField = bits[7:0]
|
|
src0:Src = bits[40:32]
|
|
src1:Src = bits[49:41]
|
|
src2:Src = bits[58:50]
|
|
waitexp = bits[10:8]
|
|
clmp = bits[15]
|
|
opsel = bits[14:11]
|
|
neg = bits[63:61]
|
|
|
|
class VOP1(Inst32):
|
|
encoding = bits[31:25] == 0b111111
|
|
op:Annotated[BitField, VOP1Op] = bits[16:9]
|
|
vdst:VGPRField = bits[24:17]
|
|
src0:Src = bits[8:0]
|
|
|
|
class VOP2(Inst32):
|
|
encoding = bits[31] == 0
|
|
op:Annotated[BitField, VOP2Op] = bits[30:25]
|
|
vdst:VGPRField = bits[24:17]
|
|
src0:Src = bits[8:0]
|
|
vsrc1:VGPRField = bits[16:9]
|
|
|
|
class VOP3(Inst64):
|
|
encoding = bits[31:26] == 0b110101
|
|
op:Annotated[BitField, VOP3Op] = bits[25:16]
|
|
vdst:VGPRField = bits[7:0]
|
|
src0:Src = bits[40:32]
|
|
src1:Src = bits[49:41]
|
|
src2:Src = bits[58:50]
|
|
omod = bits[60:59]
|
|
neg = bits[63:61]
|
|
abs = bits[10:8]
|
|
clmp = bits[15]
|
|
opsel = bits[14:11]
|
|
|
|
class VOP3P(Inst64):
|
|
encoding = bits[31:24] == 0b11001100
|
|
_defaults = {'opsel_hi': 3, 'opsel_hi2': 1}
|
|
op:Annotated[BitField, VOP3POp] = bits[22:16]
|
|
vdst:VGPRField = bits[7:0]
|
|
src0:Src = bits[40:32]
|
|
src1:Src = bits[49:41]
|
|
src2:Src = bits[58:50]
|
|
neg = bits[63:61]
|
|
neg_hi = bits[10:8]
|
|
opsel = bits[13:11]
|
|
opsel_hi = bits[60:59]
|
|
clmp = bits[15]
|
|
opsel_hi2 = bits[14]
|
|
|
|
class VOP3SD(Inst64):
|
|
encoding = bits[31:26] == 0b110101
|
|
op:Annotated[BitField, VOP3SDOp] = bits[25:16]
|
|
vdst:VGPRField = bits[7:0]
|
|
sdst:SGPRField = bits[14:8]
|
|
src0:Src = bits[40:32]
|
|
src1:Src = bits[49:41]
|
|
src2:Src = bits[58:50]
|
|
clmp = bits[15]
|
|
omod = bits[60:59]
|
|
neg = bits[63:61]
|
|
|
|
class VOPC(Inst32):
|
|
encoding = bits[31:25] == 0b111110
|
|
op:Annotated[BitField, VOPCOp] = bits[24:17]
|
|
src0:Src = bits[8:0]
|
|
vsrc1:VGPRField = bits[16:9]
|
|
|
|
class VOPD(Inst64):
|
|
encoding = bits[31:26] == 0b110010
|
|
opx:Annotated[BitField, VOPDOp] = bits[25:22]
|
|
opy:Annotated[BitField, VOPDOp] = bits[21:17]
|
|
vdstx:VGPRField = bits[63:56]
|
|
vdsty:VDSTYEnc = bits[55:49]
|
|
srcx0:Src = bits[8:0]
|
|
vsrcx1:VGPRField = bits[16:9]
|
|
srcy0:Src = bits[40:32]
|
|
vsrcy1:VGPRField = bits[48:41]
|
|
|
|
# instruction helpers
|
|
ds_add_u32 = functools.partial(DS, DSOp.DS_ADD_U32)
|
|
ds_sub_u32 = functools.partial(DS, DSOp.DS_SUB_U32)
|
|
ds_rsub_u32 = functools.partial(DS, DSOp.DS_RSUB_U32)
|
|
ds_inc_u32 = functools.partial(DS, DSOp.DS_INC_U32)
|
|
ds_dec_u32 = functools.partial(DS, DSOp.DS_DEC_U32)
|
|
ds_min_i32 = functools.partial(DS, DSOp.DS_MIN_I32)
|
|
ds_max_i32 = functools.partial(DS, DSOp.DS_MAX_I32)
|
|
ds_min_u32 = functools.partial(DS, DSOp.DS_MIN_U32)
|
|
ds_max_u32 = functools.partial(DS, DSOp.DS_MAX_U32)
|
|
ds_and_b32 = functools.partial(DS, DSOp.DS_AND_B32)
|
|
ds_or_b32 = functools.partial(DS, DSOp.DS_OR_B32)
|
|
ds_xor_b32 = functools.partial(DS, DSOp.DS_XOR_B32)
|
|
ds_mskor_b32 = functools.partial(DS, DSOp.DS_MSKOR_B32)
|
|
ds_store_b32 = functools.partial(DS, DSOp.DS_STORE_B32)
|
|
ds_store_2addr_b32 = functools.partial(DS, DSOp.DS_STORE_2ADDR_B32)
|
|
ds_store_2addr_stride64_b32 = functools.partial(DS, DSOp.DS_STORE_2ADDR_STRIDE64_B32)
|
|
ds_cmpstore_b32 = functools.partial(DS, DSOp.DS_CMPSTORE_B32)
|
|
ds_cmpstore_f32 = functools.partial(DS, DSOp.DS_CMPSTORE_F32)
|
|
ds_min_f32 = functools.partial(DS, DSOp.DS_MIN_F32)
|
|
ds_max_f32 = functools.partial(DS, DSOp.DS_MAX_F32)
|
|
ds_nop = functools.partial(DS, DSOp.DS_NOP)
|
|
ds_add_f32 = functools.partial(DS, DSOp.DS_ADD_F32)
|
|
ds_gws_sema_release_all = functools.partial(DS, DSOp.DS_GWS_SEMA_RELEASE_ALL)
|
|
ds_gws_init = functools.partial(DS, DSOp.DS_GWS_INIT)
|
|
ds_gws_sema_v = functools.partial(DS, DSOp.DS_GWS_SEMA_V)
|
|
ds_gws_sema_br = functools.partial(DS, DSOp.DS_GWS_SEMA_BR)
|
|
ds_gws_sema_p = functools.partial(DS, DSOp.DS_GWS_SEMA_P)
|
|
ds_gws_barrier = functools.partial(DS, DSOp.DS_GWS_BARRIER)
|
|
ds_store_b8 = functools.partial(DS, DSOp.DS_STORE_B8)
|
|
ds_store_b16 = functools.partial(DS, DSOp.DS_STORE_B16)
|
|
ds_add_rtn_u32 = functools.partial(DS, DSOp.DS_ADD_RTN_U32)
|
|
ds_sub_rtn_u32 = functools.partial(DS, DSOp.DS_SUB_RTN_U32)
|
|
ds_rsub_rtn_u32 = functools.partial(DS, DSOp.DS_RSUB_RTN_U32)
|
|
ds_inc_rtn_u32 = functools.partial(DS, DSOp.DS_INC_RTN_U32)
|
|
ds_dec_rtn_u32 = functools.partial(DS, DSOp.DS_DEC_RTN_U32)
|
|
ds_min_rtn_i32 = functools.partial(DS, DSOp.DS_MIN_RTN_I32)
|
|
ds_max_rtn_i32 = functools.partial(DS, DSOp.DS_MAX_RTN_I32)
|
|
ds_min_rtn_u32 = functools.partial(DS, DSOp.DS_MIN_RTN_U32)
|
|
ds_max_rtn_u32 = functools.partial(DS, DSOp.DS_MAX_RTN_U32)
|
|
ds_and_rtn_b32 = functools.partial(DS, DSOp.DS_AND_RTN_B32)
|
|
ds_or_rtn_b32 = functools.partial(DS, DSOp.DS_OR_RTN_B32)
|
|
ds_xor_rtn_b32 = functools.partial(DS, DSOp.DS_XOR_RTN_B32)
|
|
ds_mskor_rtn_b32 = functools.partial(DS, DSOp.DS_MSKOR_RTN_B32)
|
|
ds_storexchg_rtn_b32 = functools.partial(DS, DSOp.DS_STOREXCHG_RTN_B32)
|
|
ds_storexchg_2addr_rtn_b32 = functools.partial(DS, DSOp.DS_STOREXCHG_2ADDR_RTN_B32)
|
|
ds_storexchg_2addr_stride64_rtn_b32 = functools.partial(DS, DSOp.DS_STOREXCHG_2ADDR_STRIDE64_RTN_B32)
|
|
ds_cmpstore_rtn_b32 = functools.partial(DS, DSOp.DS_CMPSTORE_RTN_B32)
|
|
ds_cmpstore_rtn_f32 = functools.partial(DS, DSOp.DS_CMPSTORE_RTN_F32)
|
|
ds_min_rtn_f32 = functools.partial(DS, DSOp.DS_MIN_RTN_F32)
|
|
ds_max_rtn_f32 = functools.partial(DS, DSOp.DS_MAX_RTN_F32)
|
|
ds_wrap_rtn_b32 = functools.partial(DS, DSOp.DS_WRAP_RTN_B32)
|
|
ds_swizzle_b32 = functools.partial(DS, DSOp.DS_SWIZZLE_B32)
|
|
ds_load_b32 = functools.partial(DS, DSOp.DS_LOAD_B32)
|
|
ds_load_2addr_b32 = functools.partial(DS, DSOp.DS_LOAD_2ADDR_B32)
|
|
ds_load_2addr_stride64_b32 = functools.partial(DS, DSOp.DS_LOAD_2ADDR_STRIDE64_B32)
|
|
ds_load_i8 = functools.partial(DS, DSOp.DS_LOAD_I8)
|
|
ds_load_u8 = functools.partial(DS, DSOp.DS_LOAD_U8)
|
|
ds_load_i16 = functools.partial(DS, DSOp.DS_LOAD_I16)
|
|
ds_load_u16 = functools.partial(DS, DSOp.DS_LOAD_U16)
|
|
ds_consume = functools.partial(DS, DSOp.DS_CONSUME)
|
|
ds_append = functools.partial(DS, DSOp.DS_APPEND)
|
|
ds_ordered_count = functools.partial(DS, DSOp.DS_ORDERED_COUNT)
|
|
ds_add_u64 = functools.partial(DS, DSOp.DS_ADD_U64)
|
|
ds_sub_u64 = functools.partial(DS, DSOp.DS_SUB_U64)
|
|
ds_rsub_u64 = functools.partial(DS, DSOp.DS_RSUB_U64)
|
|
ds_inc_u64 = functools.partial(DS, DSOp.DS_INC_U64)
|
|
ds_dec_u64 = functools.partial(DS, DSOp.DS_DEC_U64)
|
|
ds_min_i64 = functools.partial(DS, DSOp.DS_MIN_I64)
|
|
ds_max_i64 = functools.partial(DS, DSOp.DS_MAX_I64)
|
|
ds_min_u64 = functools.partial(DS, DSOp.DS_MIN_U64)
|
|
ds_max_u64 = functools.partial(DS, DSOp.DS_MAX_U64)
|
|
ds_and_b64 = functools.partial(DS, DSOp.DS_AND_B64)
|
|
ds_or_b64 = functools.partial(DS, DSOp.DS_OR_B64)
|
|
ds_xor_b64 = functools.partial(DS, DSOp.DS_XOR_B64)
|
|
ds_mskor_b64 = functools.partial(DS, DSOp.DS_MSKOR_B64)
|
|
ds_store_b64 = functools.partial(DS, DSOp.DS_STORE_B64)
|
|
ds_store_2addr_b64 = functools.partial(DS, DSOp.DS_STORE_2ADDR_B64)
|
|
ds_store_2addr_stride64_b64 = functools.partial(DS, DSOp.DS_STORE_2ADDR_STRIDE64_B64)
|
|
ds_cmpstore_b64 = functools.partial(DS, DSOp.DS_CMPSTORE_B64)
|
|
ds_cmpstore_f64 = functools.partial(DS, DSOp.DS_CMPSTORE_F64)
|
|
ds_min_f64 = functools.partial(DS, DSOp.DS_MIN_F64)
|
|
ds_max_f64 = functools.partial(DS, DSOp.DS_MAX_F64)
|
|
ds_add_rtn_u64 = functools.partial(DS, DSOp.DS_ADD_RTN_U64)
|
|
ds_sub_rtn_u64 = functools.partial(DS, DSOp.DS_SUB_RTN_U64)
|
|
ds_rsub_rtn_u64 = functools.partial(DS, DSOp.DS_RSUB_RTN_U64)
|
|
ds_inc_rtn_u64 = functools.partial(DS, DSOp.DS_INC_RTN_U64)
|
|
ds_dec_rtn_u64 = functools.partial(DS, DSOp.DS_DEC_RTN_U64)
|
|
ds_min_rtn_i64 = functools.partial(DS, DSOp.DS_MIN_RTN_I64)
|
|
ds_max_rtn_i64 = functools.partial(DS, DSOp.DS_MAX_RTN_I64)
|
|
ds_min_rtn_u64 = functools.partial(DS, DSOp.DS_MIN_RTN_U64)
|
|
ds_max_rtn_u64 = functools.partial(DS, DSOp.DS_MAX_RTN_U64)
|
|
ds_and_rtn_b64 = functools.partial(DS, DSOp.DS_AND_RTN_B64)
|
|
ds_or_rtn_b64 = functools.partial(DS, DSOp.DS_OR_RTN_B64)
|
|
ds_xor_rtn_b64 = functools.partial(DS, DSOp.DS_XOR_RTN_B64)
|
|
ds_mskor_rtn_b64 = functools.partial(DS, DSOp.DS_MSKOR_RTN_B64)
|
|
ds_storexchg_rtn_b64 = functools.partial(DS, DSOp.DS_STOREXCHG_RTN_B64)
|
|
ds_storexchg_2addr_rtn_b64 = functools.partial(DS, DSOp.DS_STOREXCHG_2ADDR_RTN_B64)
|
|
ds_storexchg_2addr_stride64_rtn_b64 = functools.partial(DS, DSOp.DS_STOREXCHG_2ADDR_STRIDE64_RTN_B64)
|
|
ds_cmpstore_rtn_b64 = functools.partial(DS, DSOp.DS_CMPSTORE_RTN_B64)
|
|
ds_cmpstore_rtn_f64 = functools.partial(DS, DSOp.DS_CMPSTORE_RTN_F64)
|
|
ds_min_rtn_f64 = functools.partial(DS, DSOp.DS_MIN_RTN_F64)
|
|
ds_max_rtn_f64 = functools.partial(DS, DSOp.DS_MAX_RTN_F64)
|
|
ds_load_b64 = functools.partial(DS, DSOp.DS_LOAD_B64)
|
|
ds_load_2addr_b64 = functools.partial(DS, DSOp.DS_LOAD_2ADDR_B64)
|
|
ds_load_2addr_stride64_b64 = functools.partial(DS, DSOp.DS_LOAD_2ADDR_STRIDE64_B64)
|
|
ds_add_rtn_f32 = functools.partial(DS, DSOp.DS_ADD_RTN_F32)
|
|
ds_add_gs_reg_rtn = functools.partial(DS, DSOp.DS_ADD_GS_REG_RTN)
|
|
ds_sub_gs_reg_rtn = functools.partial(DS, DSOp.DS_SUB_GS_REG_RTN)
|
|
ds_condxchg32_rtn_b64 = functools.partial(DS, DSOp.DS_CONDXCHG32_RTN_B64)
|
|
ds_store_b8_d16_hi = functools.partial(DS, DSOp.DS_STORE_B8_D16_HI)
|
|
ds_store_b16_d16_hi = functools.partial(DS, DSOp.DS_STORE_B16_D16_HI)
|
|
ds_load_u8_d16 = functools.partial(DS, DSOp.DS_LOAD_U8_D16)
|
|
ds_load_u8_d16_hi = functools.partial(DS, DSOp.DS_LOAD_U8_D16_HI)
|
|
ds_load_i8_d16 = functools.partial(DS, DSOp.DS_LOAD_I8_D16)
|
|
ds_load_i8_d16_hi = functools.partial(DS, DSOp.DS_LOAD_I8_D16_HI)
|
|
ds_load_u16_d16 = functools.partial(DS, DSOp.DS_LOAD_U16_D16)
|
|
ds_load_u16_d16_hi = functools.partial(DS, DSOp.DS_LOAD_U16_D16_HI)
|
|
ds_bvh_stack_rtn_b32 = functools.partial(DS, DSOp.DS_BVH_STACK_RTN_B32)
|
|
ds_store_addtid_b32 = functools.partial(DS, DSOp.DS_STORE_ADDTID_B32)
|
|
ds_load_addtid_b32 = functools.partial(DS, DSOp.DS_LOAD_ADDTID_B32)
|
|
ds_permute_b32 = functools.partial(DS, DSOp.DS_PERMUTE_B32)
|
|
ds_bpermute_b32 = functools.partial(DS, DSOp.DS_BPERMUTE_B32)
|
|
ds_store_b96 = functools.partial(DS, DSOp.DS_STORE_B96)
|
|
ds_store_b128 = functools.partial(DS, DSOp.DS_STORE_B128)
|
|
ds_load_b96 = functools.partial(DS, DSOp.DS_LOAD_B96)
|
|
ds_load_b128 = functools.partial(DS, DSOp.DS_LOAD_B128)
|
|
flat_load_u8 = functools.partial(FLAT, FLATOp.FLAT_LOAD_U8)
|
|
flat_load_i8 = functools.partial(FLAT, FLATOp.FLAT_LOAD_I8)
|
|
flat_load_u16 = functools.partial(FLAT, FLATOp.FLAT_LOAD_U16)
|
|
flat_load_i16 = functools.partial(FLAT, FLATOp.FLAT_LOAD_I16)
|
|
flat_load_b32 = functools.partial(FLAT, FLATOp.FLAT_LOAD_B32)
|
|
flat_load_b64 = functools.partial(FLAT, FLATOp.FLAT_LOAD_B64)
|
|
flat_load_b96 = functools.partial(FLAT, FLATOp.FLAT_LOAD_B96)
|
|
flat_load_b128 = functools.partial(FLAT, FLATOp.FLAT_LOAD_B128)
|
|
flat_store_b8 = functools.partial(FLAT, FLATOp.FLAT_STORE_B8)
|
|
flat_store_b16 = functools.partial(FLAT, FLATOp.FLAT_STORE_B16)
|
|
flat_store_b32 = functools.partial(FLAT, FLATOp.FLAT_STORE_B32)
|
|
flat_store_b64 = functools.partial(FLAT, FLATOp.FLAT_STORE_B64)
|
|
flat_store_b96 = functools.partial(FLAT, FLATOp.FLAT_STORE_B96)
|
|
flat_store_b128 = functools.partial(FLAT, FLATOp.FLAT_STORE_B128)
|
|
flat_load_d16_u8 = functools.partial(FLAT, FLATOp.FLAT_LOAD_D16_U8)
|
|
flat_load_d16_i8 = functools.partial(FLAT, FLATOp.FLAT_LOAD_D16_I8)
|
|
flat_load_d16_b16 = functools.partial(FLAT, FLATOp.FLAT_LOAD_D16_B16)
|
|
flat_load_d16_hi_u8 = functools.partial(FLAT, FLATOp.FLAT_LOAD_D16_HI_U8)
|
|
flat_load_d16_hi_i8 = functools.partial(FLAT, FLATOp.FLAT_LOAD_D16_HI_I8)
|
|
flat_load_d16_hi_b16 = functools.partial(FLAT, FLATOp.FLAT_LOAD_D16_HI_B16)
|
|
flat_store_d16_hi_b8 = functools.partial(FLAT, FLATOp.FLAT_STORE_D16_HI_B8)
|
|
flat_store_d16_hi_b16 = functools.partial(FLAT, FLATOp.FLAT_STORE_D16_HI_B16)
|
|
global_load_addtid_b32 = functools.partial(FLAT, FLATOp.GLOBAL_LOAD_ADDTID_B32)
|
|
global_store_addtid_b32 = functools.partial(FLAT, FLATOp.GLOBAL_STORE_ADDTID_B32)
|
|
flat_atomic_swap_b32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_SWAP_B32)
|
|
flat_atomic_cmpswap_b32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_CMPSWAP_B32)
|
|
flat_atomic_add_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_ADD_U32)
|
|
flat_atomic_sub_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_SUB_U32)
|
|
flat_atomic_csub_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_CSUB_U32)
|
|
flat_atomic_min_i32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MIN_I32)
|
|
flat_atomic_min_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MIN_U32)
|
|
flat_atomic_max_i32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MAX_I32)
|
|
flat_atomic_max_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MAX_U32)
|
|
flat_atomic_and_b32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_AND_B32)
|
|
flat_atomic_or_b32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_OR_B32)
|
|
flat_atomic_xor_b32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_XOR_B32)
|
|
flat_atomic_inc_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_INC_U32)
|
|
flat_atomic_dec_u32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_DEC_U32)
|
|
flat_atomic_swap_b64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_SWAP_B64)
|
|
flat_atomic_cmpswap_b64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_CMPSWAP_B64)
|
|
flat_atomic_add_u64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_ADD_U64)
|
|
flat_atomic_sub_u64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_SUB_U64)
|
|
flat_atomic_min_i64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MIN_I64)
|
|
flat_atomic_min_u64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MIN_U64)
|
|
flat_atomic_max_i64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MAX_I64)
|
|
flat_atomic_max_u64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MAX_U64)
|
|
flat_atomic_and_b64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_AND_B64)
|
|
flat_atomic_or_b64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_OR_B64)
|
|
flat_atomic_xor_b64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_XOR_B64)
|
|
flat_atomic_inc_u64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_INC_U64)
|
|
flat_atomic_dec_u64 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_DEC_U64)
|
|
flat_atomic_cmpswap_f32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_CMPSWAP_F32)
|
|
flat_atomic_min_f32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MIN_F32)
|
|
flat_atomic_max_f32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_MAX_F32)
|
|
flat_atomic_add_f32 = functools.partial(FLAT, FLATOp.FLAT_ATOMIC_ADD_F32)
|
|
global_load_u8 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_U8, seg=2)
|
|
global_load_i8 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_I8, seg=2)
|
|
global_load_u16 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_U16, seg=2)
|
|
global_load_i16 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_I16, seg=2)
|
|
global_load_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_B32, seg=2)
|
|
global_load_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_B64, seg=2)
|
|
global_load_b96 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_B96, seg=2)
|
|
global_load_b128 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_B128, seg=2)
|
|
global_store_b8 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_B8, seg=2)
|
|
global_store_b16 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_B16, seg=2)
|
|
global_store_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_B32, seg=2)
|
|
global_store_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_B64, seg=2)
|
|
global_store_b96 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_B96, seg=2)
|
|
global_store_b128 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_B128, seg=2)
|
|
global_load_d16_u8 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_D16_U8, seg=2)
|
|
global_load_d16_i8 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_D16_I8, seg=2)
|
|
global_load_d16_b16 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_D16_B16, seg=2)
|
|
global_load_d16_hi_u8 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_D16_HI_U8, seg=2)
|
|
global_load_d16_hi_i8 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_D16_HI_I8, seg=2)
|
|
global_load_d16_hi_b16 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_D16_HI_B16, seg=2)
|
|
global_store_d16_hi_b8 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_D16_HI_B8, seg=2)
|
|
global_store_d16_hi_b16 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_D16_HI_B16, seg=2)
|
|
global_load_addtid_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_LOAD_ADDTID_B32, seg=2)
|
|
global_store_addtid_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_STORE_ADDTID_B32, seg=2)
|
|
global_atomic_swap_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_SWAP_B32, seg=2)
|
|
global_atomic_cmpswap_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_CMPSWAP_B32, seg=2)
|
|
global_atomic_add_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_ADD_U32, seg=2)
|
|
global_atomic_sub_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_SUB_U32, seg=2)
|
|
global_atomic_csub_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_CSUB_U32, seg=2)
|
|
global_atomic_min_i32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MIN_I32, seg=2)
|
|
global_atomic_min_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MIN_U32, seg=2)
|
|
global_atomic_max_i32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MAX_I32, seg=2)
|
|
global_atomic_max_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MAX_U32, seg=2)
|
|
global_atomic_and_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_AND_B32, seg=2)
|
|
global_atomic_or_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_OR_B32, seg=2)
|
|
global_atomic_xor_b32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_XOR_B32, seg=2)
|
|
global_atomic_inc_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_INC_U32, seg=2)
|
|
global_atomic_dec_u32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_DEC_U32, seg=2)
|
|
global_atomic_swap_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_SWAP_B64, seg=2)
|
|
global_atomic_cmpswap_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_CMPSWAP_B64, seg=2)
|
|
global_atomic_add_u64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_ADD_U64, seg=2)
|
|
global_atomic_sub_u64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_SUB_U64, seg=2)
|
|
global_atomic_min_i64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MIN_I64, seg=2)
|
|
global_atomic_min_u64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MIN_U64, seg=2)
|
|
global_atomic_max_i64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MAX_I64, seg=2)
|
|
global_atomic_max_u64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MAX_U64, seg=2)
|
|
global_atomic_and_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_AND_B64, seg=2)
|
|
global_atomic_or_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_OR_B64, seg=2)
|
|
global_atomic_xor_b64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_XOR_B64, seg=2)
|
|
global_atomic_inc_u64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_INC_U64, seg=2)
|
|
global_atomic_dec_u64 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_DEC_U64, seg=2)
|
|
global_atomic_cmpswap_f32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_CMPSWAP_F32, seg=2)
|
|
global_atomic_min_f32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MIN_F32, seg=2)
|
|
global_atomic_max_f32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_MAX_F32, seg=2)
|
|
global_atomic_add_f32 = functools.partial(FLAT, GLOBALOp.GLOBAL_ATOMIC_ADD_F32, seg=2)
|
|
image_load = functools.partial(MIMG, MIMGOp.IMAGE_LOAD)
|
|
image_load_mip = functools.partial(MIMG, MIMGOp.IMAGE_LOAD_MIP)
|
|
image_load_pck = functools.partial(MIMG, MIMGOp.IMAGE_LOAD_PCK)
|
|
image_load_pck_sgn = functools.partial(MIMG, MIMGOp.IMAGE_LOAD_PCK_SGN)
|
|
image_load_mip_pck = functools.partial(MIMG, MIMGOp.IMAGE_LOAD_MIP_PCK)
|
|
image_load_mip_pck_sgn = functools.partial(MIMG, MIMGOp.IMAGE_LOAD_MIP_PCK_SGN)
|
|
image_store = functools.partial(MIMG, MIMGOp.IMAGE_STORE)
|
|
image_store_mip = functools.partial(MIMG, MIMGOp.IMAGE_STORE_MIP)
|
|
image_store_pck = functools.partial(MIMG, MIMGOp.IMAGE_STORE_PCK)
|
|
image_store_mip_pck = functools.partial(MIMG, MIMGOp.IMAGE_STORE_MIP_PCK)
|
|
image_atomic_swap = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_SWAP)
|
|
image_atomic_cmpswap = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_CMPSWAP)
|
|
image_atomic_add = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_ADD)
|
|
image_atomic_sub = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_SUB)
|
|
image_atomic_smin = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_SMIN)
|
|
image_atomic_umin = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_UMIN)
|
|
image_atomic_smax = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_SMAX)
|
|
image_atomic_umax = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_UMAX)
|
|
image_atomic_and = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_AND)
|
|
image_atomic_or = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_OR)
|
|
image_atomic_xor = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_XOR)
|
|
image_atomic_inc = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_INC)
|
|
image_atomic_dec = functools.partial(MIMG, MIMGOp.IMAGE_ATOMIC_DEC)
|
|
image_get_resinfo = functools.partial(MIMG, MIMGOp.IMAGE_GET_RESINFO)
|
|
image_msaa_load = functools.partial(MIMG, MIMGOp.IMAGE_MSAA_LOAD)
|
|
image_bvh_intersect_ray = functools.partial(MIMG, MIMGOp.IMAGE_BVH_INTERSECT_RAY)
|
|
image_bvh64_intersect_ray = functools.partial(MIMG, MIMGOp.IMAGE_BVH64_INTERSECT_RAY)
|
|
image_sample = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE)
|
|
image_sample_d = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D)
|
|
image_sample_l = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_L)
|
|
image_sample_b = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_B)
|
|
image_sample_lz = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_LZ)
|
|
image_sample_c = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C)
|
|
image_sample_c_d = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D)
|
|
image_sample_c_l = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_L)
|
|
image_sample_c_b = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_B)
|
|
image_sample_c_lz = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_LZ)
|
|
image_sample_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_O)
|
|
image_sample_d_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_O)
|
|
image_sample_l_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_L_O)
|
|
image_sample_b_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_B_O)
|
|
image_sample_lz_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_LZ_O)
|
|
image_sample_c_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_O)
|
|
image_sample_c_d_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_O)
|
|
image_sample_c_l_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_L_O)
|
|
image_sample_c_b_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_B_O)
|
|
image_sample_c_lz_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_LZ_O)
|
|
image_gather4 = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4)
|
|
image_gather4_l = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_L)
|
|
image_gather4_b = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_B)
|
|
image_gather4_lz = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_LZ)
|
|
image_gather4_c = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C)
|
|
image_gather4_c_lz = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C_LZ)
|
|
image_gather4_o = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_O)
|
|
image_gather4_lz_o = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_LZ_O)
|
|
image_gather4_c_lz_o = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C_LZ_O)
|
|
image_get_lod = functools.partial(MIMG, MIMGOp.IMAGE_GET_LOD)
|
|
image_sample_d_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_G16)
|
|
image_sample_c_d_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_G16)
|
|
image_sample_d_o_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_O_G16)
|
|
image_sample_c_d_o_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_O_G16)
|
|
image_sample_cl = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_CL)
|
|
image_sample_d_cl = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_CL)
|
|
image_sample_b_cl = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_B_CL)
|
|
image_sample_c_cl = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_CL)
|
|
image_sample_c_d_cl = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_CL)
|
|
image_sample_c_b_cl = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_B_CL)
|
|
image_sample_cl_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_CL_O)
|
|
image_sample_d_cl_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_CL_O)
|
|
image_sample_b_cl_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_B_CL_O)
|
|
image_sample_c_cl_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_CL_O)
|
|
image_sample_c_d_cl_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_CL_O)
|
|
image_sample_c_b_cl_o = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_B_CL_O)
|
|
image_sample_c_d_cl_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_CL_G16)
|
|
image_sample_d_cl_o_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_CL_O_G16)
|
|
image_sample_c_d_cl_o_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_C_D_CL_O_G16)
|
|
image_sample_d_cl_g16 = functools.partial(MIMG, MIMGOp.IMAGE_SAMPLE_D_CL_G16)
|
|
image_gather4_cl = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_CL)
|
|
image_gather4_b_cl = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_B_CL)
|
|
image_gather4_c_cl = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C_CL)
|
|
image_gather4_c_l = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C_L)
|
|
image_gather4_c_b = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C_B)
|
|
image_gather4_c_b_cl = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4_C_B_CL)
|
|
image_gather4h = functools.partial(MIMG, MIMGOp.IMAGE_GATHER4H)
|
|
tbuffer_load_format_x = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_FORMAT_X)
|
|
tbuffer_load_format_xy = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_FORMAT_XY)
|
|
tbuffer_load_format_xyz = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_FORMAT_XYZ)
|
|
tbuffer_load_format_xyzw = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_FORMAT_XYZW)
|
|
tbuffer_store_format_x = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_FORMAT_X)
|
|
tbuffer_store_format_xy = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_FORMAT_XY)
|
|
tbuffer_store_format_xyz = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_FORMAT_XYZ)
|
|
tbuffer_store_format_xyzw = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_FORMAT_XYZW)
|
|
tbuffer_load_d16_format_x = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_D16_FORMAT_X)
|
|
tbuffer_load_d16_format_xy = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_D16_FORMAT_XY)
|
|
tbuffer_load_d16_format_xyz = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_D16_FORMAT_XYZ)
|
|
tbuffer_load_d16_format_xyzw = functools.partial(MTBUF, MTBUFOp.TBUFFER_LOAD_D16_FORMAT_XYZW)
|
|
tbuffer_store_d16_format_x = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_D16_FORMAT_X)
|
|
tbuffer_store_d16_format_xy = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_D16_FORMAT_XY)
|
|
tbuffer_store_d16_format_xyz = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_D16_FORMAT_XYZ)
|
|
tbuffer_store_d16_format_xyzw = functools.partial(MTBUF, MTBUFOp.TBUFFER_STORE_D16_FORMAT_XYZW)
|
|
buffer_load_format_x = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_FORMAT_X)
|
|
buffer_load_format_xy = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_FORMAT_XY)
|
|
buffer_load_format_xyz = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_FORMAT_XYZ)
|
|
buffer_load_format_xyzw = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_FORMAT_XYZW)
|
|
buffer_store_format_x = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_FORMAT_X)
|
|
buffer_store_format_xy = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_FORMAT_XY)
|
|
buffer_store_format_xyz = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_FORMAT_XYZ)
|
|
buffer_store_format_xyzw = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_FORMAT_XYZW)
|
|
buffer_load_d16_format_x = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_FORMAT_X)
|
|
buffer_load_d16_format_xy = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_FORMAT_XY)
|
|
buffer_load_d16_format_xyz = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_FORMAT_XYZ)
|
|
buffer_load_d16_format_xyzw = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_FORMAT_XYZW)
|
|
buffer_store_d16_format_x = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_FORMAT_X)
|
|
buffer_store_d16_format_xy = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_FORMAT_XY)
|
|
buffer_store_d16_format_xyz = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_FORMAT_XYZ)
|
|
buffer_store_d16_format_xyzw = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_FORMAT_XYZW)
|
|
buffer_load_u8 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_U8)
|
|
buffer_load_i8 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_I8)
|
|
buffer_load_u16 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_U16)
|
|
buffer_load_i16 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_I16)
|
|
buffer_load_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_B32)
|
|
buffer_load_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_B64)
|
|
buffer_load_b96 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_B96)
|
|
buffer_load_b128 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_B128)
|
|
buffer_store_b8 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_B8)
|
|
buffer_store_b16 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_B16)
|
|
buffer_store_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_B32)
|
|
buffer_store_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_B64)
|
|
buffer_store_b96 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_B96)
|
|
buffer_store_b128 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_B128)
|
|
buffer_load_d16_u8 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_U8)
|
|
buffer_load_d16_i8 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_I8)
|
|
buffer_load_d16_b16 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_B16)
|
|
buffer_load_d16_hi_u8 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_HI_U8)
|
|
buffer_load_d16_hi_i8 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_HI_I8)
|
|
buffer_load_d16_hi_b16 = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_HI_B16)
|
|
buffer_store_d16_hi_b8 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_HI_B8)
|
|
buffer_store_d16_hi_b16 = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_HI_B16)
|
|
buffer_load_d16_hi_format_x = functools.partial(MUBUF, MUBUFOp.BUFFER_LOAD_D16_HI_FORMAT_X)
|
|
buffer_store_d16_hi_format_x = functools.partial(MUBUF, MUBUFOp.BUFFER_STORE_D16_HI_FORMAT_X)
|
|
buffer_gl0_inv = functools.partial(MUBUF, MUBUFOp.BUFFER_GL0_INV)
|
|
buffer_gl1_inv = functools.partial(MUBUF, MUBUFOp.BUFFER_GL1_INV)
|
|
buffer_atomic_swap_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_SWAP_B32)
|
|
buffer_atomic_cmpswap_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_CMPSWAP_B32)
|
|
buffer_atomic_add_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_ADD_U32)
|
|
buffer_atomic_sub_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_SUB_U32)
|
|
buffer_atomic_csub_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_CSUB_U32)
|
|
buffer_atomic_min_i32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MIN_I32)
|
|
buffer_atomic_min_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MIN_U32)
|
|
buffer_atomic_max_i32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MAX_I32)
|
|
buffer_atomic_max_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MAX_U32)
|
|
buffer_atomic_and_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_AND_B32)
|
|
buffer_atomic_or_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_OR_B32)
|
|
buffer_atomic_xor_b32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_XOR_B32)
|
|
buffer_atomic_inc_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_INC_U32)
|
|
buffer_atomic_dec_u32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_DEC_U32)
|
|
buffer_atomic_swap_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_SWAP_B64)
|
|
buffer_atomic_cmpswap_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_CMPSWAP_B64)
|
|
buffer_atomic_add_u64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_ADD_U64)
|
|
buffer_atomic_sub_u64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_SUB_U64)
|
|
buffer_atomic_min_i64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MIN_I64)
|
|
buffer_atomic_min_u64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MIN_U64)
|
|
buffer_atomic_max_i64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MAX_I64)
|
|
buffer_atomic_max_u64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MAX_U64)
|
|
buffer_atomic_and_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_AND_B64)
|
|
buffer_atomic_or_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_OR_B64)
|
|
buffer_atomic_xor_b64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_XOR_B64)
|
|
buffer_atomic_inc_u64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_INC_U64)
|
|
buffer_atomic_dec_u64 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_DEC_U64)
|
|
buffer_atomic_cmpswap_f32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_CMPSWAP_F32)
|
|
buffer_atomic_min_f32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MIN_F32)
|
|
buffer_atomic_max_f32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_MAX_F32)
|
|
buffer_atomic_add_f32 = functools.partial(MUBUF, MUBUFOp.BUFFER_ATOMIC_ADD_F32)
|
|
scratch_load_u8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_U8, seg=1)
|
|
scratch_load_i8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_I8, seg=1)
|
|
scratch_load_u16 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_U16, seg=1)
|
|
scratch_load_i16 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_I16, seg=1)
|
|
scratch_load_b32 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_B32, seg=1)
|
|
scratch_load_b64 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_B64, seg=1)
|
|
scratch_load_b96 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_B96, seg=1)
|
|
scratch_load_b128 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_B128, seg=1)
|
|
scratch_store_b8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_B8, seg=1)
|
|
scratch_store_b16 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_B16, seg=1)
|
|
scratch_store_b32 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_B32, seg=1)
|
|
scratch_store_b64 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_B64, seg=1)
|
|
scratch_store_b96 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_B96, seg=1)
|
|
scratch_store_b128 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_B128, seg=1)
|
|
scratch_load_d16_u8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_D16_U8, seg=1)
|
|
scratch_load_d16_i8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_D16_I8, seg=1)
|
|
scratch_load_d16_b16 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_D16_B16, seg=1)
|
|
scratch_load_d16_hi_u8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_D16_HI_U8, seg=1)
|
|
scratch_load_d16_hi_i8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_D16_HI_I8, seg=1)
|
|
scratch_load_d16_hi_b16 = functools.partial(FLAT, SCRATCHOp.SCRATCH_LOAD_D16_HI_B16, seg=1)
|
|
scratch_store_d16_hi_b8 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_D16_HI_B8, seg=1)
|
|
scratch_store_d16_hi_b16 = functools.partial(FLAT, SCRATCHOp.SCRATCH_STORE_D16_HI_B16, seg=1)
|
|
s_load_b32 = functools.partial(SMEM, SMEMOp.S_LOAD_B32)
|
|
s_load_b64 = functools.partial(SMEM, SMEMOp.S_LOAD_B64)
|
|
s_load_b128 = functools.partial(SMEM, SMEMOp.S_LOAD_B128)
|
|
s_load_b256 = functools.partial(SMEM, SMEMOp.S_LOAD_B256)
|
|
s_load_b512 = functools.partial(SMEM, SMEMOp.S_LOAD_B512)
|
|
s_buffer_load_b32 = functools.partial(SMEM, SMEMOp.S_BUFFER_LOAD_B32)
|
|
s_buffer_load_b64 = functools.partial(SMEM, SMEMOp.S_BUFFER_LOAD_B64)
|
|
s_buffer_load_b128 = functools.partial(SMEM, SMEMOp.S_BUFFER_LOAD_B128)
|
|
s_buffer_load_b256 = functools.partial(SMEM, SMEMOp.S_BUFFER_LOAD_B256)
|
|
s_buffer_load_b512 = functools.partial(SMEM, SMEMOp.S_BUFFER_LOAD_B512)
|
|
s_gl1_inv = functools.partial(SMEM, SMEMOp.S_GL1_INV)
|
|
s_dcache_inv = functools.partial(SMEM, SMEMOp.S_DCACHE_INV)
|
|
s_mov_b32 = functools.partial(SOP1, SOP1Op.S_MOV_B32)
|
|
s_mov_b64 = functools.partial(SOP1, SOP1Op.S_MOV_B64)
|
|
s_cmov_b32 = functools.partial(SOP1, SOP1Op.S_CMOV_B32)
|
|
s_cmov_b64 = functools.partial(SOP1, SOP1Op.S_CMOV_B64)
|
|
s_brev_b32 = functools.partial(SOP1, SOP1Op.S_BREV_B32)
|
|
s_brev_b64 = functools.partial(SOP1, SOP1Op.S_BREV_B64)
|
|
s_ctz_i32_b32 = functools.partial(SOP1, SOP1Op.S_CTZ_I32_B32)
|
|
s_ctz_i32_b64 = functools.partial(SOP1, SOP1Op.S_CTZ_I32_B64)
|
|
s_clz_i32_u32 = functools.partial(SOP1, SOP1Op.S_CLZ_I32_U32)
|
|
s_clz_i32_u64 = functools.partial(SOP1, SOP1Op.S_CLZ_I32_U64)
|
|
s_cls_i32 = functools.partial(SOP1, SOP1Op.S_CLS_I32)
|
|
s_cls_i32_i64 = functools.partial(SOP1, SOP1Op.S_CLS_I32_I64)
|
|
s_sext_i32_i8 = functools.partial(SOP1, SOP1Op.S_SEXT_I32_I8)
|
|
s_sext_i32_i16 = functools.partial(SOP1, SOP1Op.S_SEXT_I32_I16)
|
|
s_bitset0_b32 = functools.partial(SOP1, SOP1Op.S_BITSET0_B32)
|
|
s_bitset0_b64 = functools.partial(SOP1, SOP1Op.S_BITSET0_B64)
|
|
s_bitset1_b32 = functools.partial(SOP1, SOP1Op.S_BITSET1_B32)
|
|
s_bitset1_b64 = functools.partial(SOP1, SOP1Op.S_BITSET1_B64)
|
|
s_bitreplicate_b64_b32 = functools.partial(SOP1, SOP1Op.S_BITREPLICATE_B64_B32)
|
|
s_abs_i32 = functools.partial(SOP1, SOP1Op.S_ABS_I32)
|
|
s_bcnt0_i32_b32 = functools.partial(SOP1, SOP1Op.S_BCNT0_I32_B32)
|
|
s_bcnt0_i32_b64 = functools.partial(SOP1, SOP1Op.S_BCNT0_I32_B64)
|
|
s_bcnt1_i32_b32 = functools.partial(SOP1, SOP1Op.S_BCNT1_I32_B32)
|
|
s_bcnt1_i32_b64 = functools.partial(SOP1, SOP1Op.S_BCNT1_I32_B64)
|
|
s_quadmask_b32 = functools.partial(SOP1, SOP1Op.S_QUADMASK_B32)
|
|
s_quadmask_b64 = functools.partial(SOP1, SOP1Op.S_QUADMASK_B64)
|
|
s_wqm_b32 = functools.partial(SOP1, SOP1Op.S_WQM_B32)
|
|
s_wqm_b64 = functools.partial(SOP1, SOP1Op.S_WQM_B64)
|
|
s_not_b32 = functools.partial(SOP1, SOP1Op.S_NOT_B32)
|
|
s_not_b64 = functools.partial(SOP1, SOP1Op.S_NOT_B64)
|
|
s_and_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_AND_SAVEEXEC_B32)
|
|
s_and_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_AND_SAVEEXEC_B64)
|
|
s_or_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_OR_SAVEEXEC_B32)
|
|
s_or_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_OR_SAVEEXEC_B64)
|
|
s_xor_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_XOR_SAVEEXEC_B32)
|
|
s_xor_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_XOR_SAVEEXEC_B64)
|
|
s_nand_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_NAND_SAVEEXEC_B32)
|
|
s_nand_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_NAND_SAVEEXEC_B64)
|
|
s_nor_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_NOR_SAVEEXEC_B32)
|
|
s_nor_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_NOR_SAVEEXEC_B64)
|
|
s_xnor_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_XNOR_SAVEEXEC_B32)
|
|
s_xnor_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_XNOR_SAVEEXEC_B64)
|
|
s_and_not0_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_AND_NOT0_SAVEEXEC_B32)
|
|
s_and_not0_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_AND_NOT0_SAVEEXEC_B64)
|
|
s_or_not0_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_OR_NOT0_SAVEEXEC_B32)
|
|
s_or_not0_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_OR_NOT0_SAVEEXEC_B64)
|
|
s_and_not1_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_AND_NOT1_SAVEEXEC_B32)
|
|
s_and_not1_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_AND_NOT1_SAVEEXEC_B64)
|
|
s_or_not1_saveexec_b32 = functools.partial(SOP1, SOP1Op.S_OR_NOT1_SAVEEXEC_B32)
|
|
s_or_not1_saveexec_b64 = functools.partial(SOP1, SOP1Op.S_OR_NOT1_SAVEEXEC_B64)
|
|
s_and_not0_wrexec_b32 = functools.partial(SOP1, SOP1Op.S_AND_NOT0_WREXEC_B32)
|
|
s_and_not0_wrexec_b64 = functools.partial(SOP1, SOP1Op.S_AND_NOT0_WREXEC_B64)
|
|
s_and_not1_wrexec_b32 = functools.partial(SOP1, SOP1Op.S_AND_NOT1_WREXEC_B32)
|
|
s_and_not1_wrexec_b64 = functools.partial(SOP1, SOP1Op.S_AND_NOT1_WREXEC_B64)
|
|
s_movrels_b32 = functools.partial(SOP1, SOP1Op.S_MOVRELS_B32)
|
|
s_movrels_b64 = functools.partial(SOP1, SOP1Op.S_MOVRELS_B64)
|
|
s_movreld_b32 = functools.partial(SOP1, SOP1Op.S_MOVRELD_B32)
|
|
s_movreld_b64 = functools.partial(SOP1, SOP1Op.S_MOVRELD_B64)
|
|
s_movrelsd_2_b32 = functools.partial(SOP1, SOP1Op.S_MOVRELSD_2_B32)
|
|
s_getpc_b64 = functools.partial(SOP1, SOP1Op.S_GETPC_B64)
|
|
s_setpc_b64 = functools.partial(SOP1, SOP1Op.S_SETPC_B64)
|
|
s_swappc_b64 = functools.partial(SOP1, SOP1Op.S_SWAPPC_B64)
|
|
s_rfe_b64 = functools.partial(SOP1, SOP1Op.S_RFE_B64)
|
|
s_sendmsg_rtn_b32 = functools.partial(SOP1, SOP1Op.S_SENDMSG_RTN_B32)
|
|
s_sendmsg_rtn_b64 = functools.partial(SOP1, SOP1Op.S_SENDMSG_RTN_B64)
|
|
s_ceil_f32 = functools.partial(SOP1, SOP1Op.S_CEIL_F32)
|
|
s_floor_f32 = functools.partial(SOP1, SOP1Op.S_FLOOR_F32)
|
|
s_trunc_f32 = functools.partial(SOP1, SOP1Op.S_TRUNC_F32)
|
|
s_rndne_f32 = functools.partial(SOP1, SOP1Op.S_RNDNE_F32)
|
|
s_cvt_f32_i32 = functools.partial(SOP1, SOP1Op.S_CVT_F32_I32)
|
|
s_cvt_f32_u32 = functools.partial(SOP1, SOP1Op.S_CVT_F32_U32)
|
|
s_cvt_i32_f32 = functools.partial(SOP1, SOP1Op.S_CVT_I32_F32)
|
|
s_cvt_u32_f32 = functools.partial(SOP1, SOP1Op.S_CVT_U32_F32)
|
|
s_cvt_f16_f32 = functools.partial(SOP1, SOP1Op.S_CVT_F16_F32)
|
|
s_cvt_f32_f16 = functools.partial(SOP1, SOP1Op.S_CVT_F32_F16)
|
|
s_cvt_hi_f32_f16 = functools.partial(SOP1, SOP1Op.S_CVT_HI_F32_F16)
|
|
s_ceil_f16 = functools.partial(SOP1, SOP1Op.S_CEIL_F16)
|
|
s_floor_f16 = functools.partial(SOP1, SOP1Op.S_FLOOR_F16)
|
|
s_trunc_f16 = functools.partial(SOP1, SOP1Op.S_TRUNC_F16)
|
|
s_rndne_f16 = functools.partial(SOP1, SOP1Op.S_RNDNE_F16)
|
|
s_add_u32 = functools.partial(SOP2, SOP2Op.S_ADD_U32)
|
|
s_sub_u32 = functools.partial(SOP2, SOP2Op.S_SUB_U32)
|
|
s_add_i32 = functools.partial(SOP2, SOP2Op.S_ADD_I32)
|
|
s_sub_i32 = functools.partial(SOP2, SOP2Op.S_SUB_I32)
|
|
s_addc_u32 = functools.partial(SOP2, SOP2Op.S_ADDC_U32)
|
|
s_subb_u32 = functools.partial(SOP2, SOP2Op.S_SUBB_U32)
|
|
s_absdiff_i32 = functools.partial(SOP2, SOP2Op.S_ABSDIFF_I32)
|
|
s_lshl_b32 = functools.partial(SOP2, SOP2Op.S_LSHL_B32)
|
|
s_lshl_b64 = functools.partial(SOP2, SOP2Op.S_LSHL_B64)
|
|
s_lshr_b32 = functools.partial(SOP2, SOP2Op.S_LSHR_B32)
|
|
s_lshr_b64 = functools.partial(SOP2, SOP2Op.S_LSHR_B64)
|
|
s_ashr_i32 = functools.partial(SOP2, SOP2Op.S_ASHR_I32)
|
|
s_ashr_i64 = functools.partial(SOP2, SOP2Op.S_ASHR_I64)
|
|
s_lshl1_add_u32 = functools.partial(SOP2, SOP2Op.S_LSHL1_ADD_U32)
|
|
s_lshl2_add_u32 = functools.partial(SOP2, SOP2Op.S_LSHL2_ADD_U32)
|
|
s_lshl3_add_u32 = functools.partial(SOP2, SOP2Op.S_LSHL3_ADD_U32)
|
|
s_lshl4_add_u32 = functools.partial(SOP2, SOP2Op.S_LSHL4_ADD_U32)
|
|
s_min_i32 = functools.partial(SOP2, SOP2Op.S_MIN_I32)
|
|
s_min_u32 = functools.partial(SOP2, SOP2Op.S_MIN_U32)
|
|
s_max_i32 = functools.partial(SOP2, SOP2Op.S_MAX_I32)
|
|
s_max_u32 = functools.partial(SOP2, SOP2Op.S_MAX_U32)
|
|
s_and_b32 = functools.partial(SOP2, SOP2Op.S_AND_B32)
|
|
s_and_b64 = functools.partial(SOP2, SOP2Op.S_AND_B64)
|
|
s_or_b32 = functools.partial(SOP2, SOP2Op.S_OR_B32)
|
|
s_or_b64 = functools.partial(SOP2, SOP2Op.S_OR_B64)
|
|
s_xor_b32 = functools.partial(SOP2, SOP2Op.S_XOR_B32)
|
|
s_xor_b64 = functools.partial(SOP2, SOP2Op.S_XOR_B64)
|
|
s_nand_b32 = functools.partial(SOP2, SOP2Op.S_NAND_B32)
|
|
s_nand_b64 = functools.partial(SOP2, SOP2Op.S_NAND_B64)
|
|
s_nor_b32 = functools.partial(SOP2, SOP2Op.S_NOR_B32)
|
|
s_nor_b64 = functools.partial(SOP2, SOP2Op.S_NOR_B64)
|
|
s_xnor_b32 = functools.partial(SOP2, SOP2Op.S_XNOR_B32)
|
|
s_xnor_b64 = functools.partial(SOP2, SOP2Op.S_XNOR_B64)
|
|
s_and_not1_b32 = functools.partial(SOP2, SOP2Op.S_AND_NOT1_B32)
|
|
s_and_not1_b64 = functools.partial(SOP2, SOP2Op.S_AND_NOT1_B64)
|
|
s_or_not1_b32 = functools.partial(SOP2, SOP2Op.S_OR_NOT1_B32)
|
|
s_or_not1_b64 = functools.partial(SOP2, SOP2Op.S_OR_NOT1_B64)
|
|
s_bfe_u32 = functools.partial(SOP2, SOP2Op.S_BFE_U32)
|
|
s_bfe_i32 = functools.partial(SOP2, SOP2Op.S_BFE_I32)
|
|
s_bfe_u64 = functools.partial(SOP2, SOP2Op.S_BFE_U64)
|
|
s_bfe_i64 = functools.partial(SOP2, SOP2Op.S_BFE_I64)
|
|
s_bfm_b32 = functools.partial(SOP2, SOP2Op.S_BFM_B32)
|
|
s_bfm_b64 = functools.partial(SOP2, SOP2Op.S_BFM_B64)
|
|
s_mul_i32 = functools.partial(SOP2, SOP2Op.S_MUL_I32)
|
|
s_mul_hi_u32 = functools.partial(SOP2, SOP2Op.S_MUL_HI_U32)
|
|
s_mul_hi_i32 = functools.partial(SOP2, SOP2Op.S_MUL_HI_I32)
|
|
s_cselect_b32 = functools.partial(SOP2, SOP2Op.S_CSELECT_B32)
|
|
s_cselect_b64 = functools.partial(SOP2, SOP2Op.S_CSELECT_B64)
|
|
s_pack_ll_b32_b16 = functools.partial(SOP2, SOP2Op.S_PACK_LL_B32_B16)
|
|
s_pack_lh_b32_b16 = functools.partial(SOP2, SOP2Op.S_PACK_LH_B32_B16)
|
|
s_pack_hh_b32_b16 = functools.partial(SOP2, SOP2Op.S_PACK_HH_B32_B16)
|
|
s_pack_hl_b32_b16 = functools.partial(SOP2, SOP2Op.S_PACK_HL_B32_B16)
|
|
s_add_f32 = functools.partial(SOP2, SOP2Op.S_ADD_F32)
|
|
s_sub_f32 = functools.partial(SOP2, SOP2Op.S_SUB_F32)
|
|
s_min_f32 = functools.partial(SOP2, SOP2Op.S_MIN_F32)
|
|
s_max_f32 = functools.partial(SOP2, SOP2Op.S_MAX_F32)
|
|
s_mul_f32 = functools.partial(SOP2, SOP2Op.S_MUL_F32)
|
|
s_fmaak_f32 = functools.partial(SOP2, SOP2Op.S_FMAAK_F32)
|
|
s_fmamk_f32 = functools.partial(SOP2, SOP2Op.S_FMAMK_F32)
|
|
s_fmac_f32 = functools.partial(SOP2, SOP2Op.S_FMAC_F32)
|
|
s_cvt_pk_rtz_f16_f32 = functools.partial(SOP2, SOP2Op.S_CVT_PK_RTZ_F16_F32)
|
|
s_add_f16 = functools.partial(SOP2, SOP2Op.S_ADD_F16)
|
|
s_sub_f16 = functools.partial(SOP2, SOP2Op.S_SUB_F16)
|
|
s_min_f16 = functools.partial(SOP2, SOP2Op.S_MIN_F16)
|
|
s_max_f16 = functools.partial(SOP2, SOP2Op.S_MAX_F16)
|
|
s_mul_f16 = functools.partial(SOP2, SOP2Op.S_MUL_F16)
|
|
s_fmac_f16 = functools.partial(SOP2, SOP2Op.S_FMAC_F16)
|
|
s_cmp_eq_i32 = functools.partial(SOPC, SOPCOp.S_CMP_EQ_I32)
|
|
s_cmp_lg_i32 = functools.partial(SOPC, SOPCOp.S_CMP_LG_I32)
|
|
s_cmp_gt_i32 = functools.partial(SOPC, SOPCOp.S_CMP_GT_I32)
|
|
s_cmp_ge_i32 = functools.partial(SOPC, SOPCOp.S_CMP_GE_I32)
|
|
s_cmp_lt_i32 = functools.partial(SOPC, SOPCOp.S_CMP_LT_I32)
|
|
s_cmp_le_i32 = functools.partial(SOPC, SOPCOp.S_CMP_LE_I32)
|
|
s_cmp_eq_u32 = functools.partial(SOPC, SOPCOp.S_CMP_EQ_U32)
|
|
s_cmp_lg_u32 = functools.partial(SOPC, SOPCOp.S_CMP_LG_U32)
|
|
s_cmp_gt_u32 = functools.partial(SOPC, SOPCOp.S_CMP_GT_U32)
|
|
s_cmp_ge_u32 = functools.partial(SOPC, SOPCOp.S_CMP_GE_U32)
|
|
s_cmp_lt_u32 = functools.partial(SOPC, SOPCOp.S_CMP_LT_U32)
|
|
s_cmp_le_u32 = functools.partial(SOPC, SOPCOp.S_CMP_LE_U32)
|
|
s_bitcmp0_b32 = functools.partial(SOPC, SOPCOp.S_BITCMP0_B32)
|
|
s_bitcmp1_b32 = functools.partial(SOPC, SOPCOp.S_BITCMP1_B32)
|
|
s_bitcmp0_b64 = functools.partial(SOPC, SOPCOp.S_BITCMP0_B64)
|
|
s_bitcmp1_b64 = functools.partial(SOPC, SOPCOp.S_BITCMP1_B64)
|
|
s_cmp_eq_u64 = functools.partial(SOPC, SOPCOp.S_CMP_EQ_U64)
|
|
s_cmp_lg_u64 = functools.partial(SOPC, SOPCOp.S_CMP_LG_U64)
|
|
s_cmp_lt_f32 = functools.partial(SOPC, SOPCOp.S_CMP_LT_F32)
|
|
s_cmp_eq_f32 = functools.partial(SOPC, SOPCOp.S_CMP_EQ_F32)
|
|
s_cmp_le_f32 = functools.partial(SOPC, SOPCOp.S_CMP_LE_F32)
|
|
s_cmp_gt_f32 = functools.partial(SOPC, SOPCOp.S_CMP_GT_F32)
|
|
s_cmp_lg_f32 = functools.partial(SOPC, SOPCOp.S_CMP_LG_F32)
|
|
s_cmp_ge_f32 = functools.partial(SOPC, SOPCOp.S_CMP_GE_F32)
|
|
s_cmp_o_f32 = functools.partial(SOPC, SOPCOp.S_CMP_O_F32)
|
|
s_cmp_u_f32 = functools.partial(SOPC, SOPCOp.S_CMP_U_F32)
|
|
s_cmp_nge_f32 = functools.partial(SOPC, SOPCOp.S_CMP_NGE_F32)
|
|
s_cmp_nlg_f32 = functools.partial(SOPC, SOPCOp.S_CMP_NLG_F32)
|
|
s_cmp_ngt_f32 = functools.partial(SOPC, SOPCOp.S_CMP_NGT_F32)
|
|
s_cmp_nle_f32 = functools.partial(SOPC, SOPCOp.S_CMP_NLE_F32)
|
|
s_cmp_neq_f32 = functools.partial(SOPC, SOPCOp.S_CMP_NEQ_F32)
|
|
s_cmp_nlt_f32 = functools.partial(SOPC, SOPCOp.S_CMP_NLT_F32)
|
|
s_cmp_lt_f16 = functools.partial(SOPC, SOPCOp.S_CMP_LT_F16)
|
|
s_cmp_eq_f16 = functools.partial(SOPC, SOPCOp.S_CMP_EQ_F16)
|
|
s_cmp_le_f16 = functools.partial(SOPC, SOPCOp.S_CMP_LE_F16)
|
|
s_cmp_gt_f16 = functools.partial(SOPC, SOPCOp.S_CMP_GT_F16)
|
|
s_cmp_lg_f16 = functools.partial(SOPC, SOPCOp.S_CMP_LG_F16)
|
|
s_cmp_ge_f16 = functools.partial(SOPC, SOPCOp.S_CMP_GE_F16)
|
|
s_cmp_o_f16 = functools.partial(SOPC, SOPCOp.S_CMP_O_F16)
|
|
s_cmp_u_f16 = functools.partial(SOPC, SOPCOp.S_CMP_U_F16)
|
|
s_cmp_nge_f16 = functools.partial(SOPC, SOPCOp.S_CMP_NGE_F16)
|
|
s_cmp_nlg_f16 = functools.partial(SOPC, SOPCOp.S_CMP_NLG_F16)
|
|
s_cmp_ngt_f16 = functools.partial(SOPC, SOPCOp.S_CMP_NGT_F16)
|
|
s_cmp_nle_f16 = functools.partial(SOPC, SOPCOp.S_CMP_NLE_F16)
|
|
s_cmp_neq_f16 = functools.partial(SOPC, SOPCOp.S_CMP_NEQ_F16)
|
|
s_cmp_nlt_f16 = functools.partial(SOPC, SOPCOp.S_CMP_NLT_F16)
|
|
s_movk_i32 = functools.partial(SOPK, SOPKOp.S_MOVK_I32)
|
|
s_version = functools.partial(SOPK, SOPKOp.S_VERSION)
|
|
s_cmovk_i32 = functools.partial(SOPK, SOPKOp.S_CMOVK_I32)
|
|
s_cmpk_eq_i32 = functools.partial(SOPK, SOPKOp.S_CMPK_EQ_I32)
|
|
s_cmpk_lg_i32 = functools.partial(SOPK, SOPKOp.S_CMPK_LG_I32)
|
|
s_cmpk_gt_i32 = functools.partial(SOPK, SOPKOp.S_CMPK_GT_I32)
|
|
s_cmpk_ge_i32 = functools.partial(SOPK, SOPKOp.S_CMPK_GE_I32)
|
|
s_cmpk_lt_i32 = functools.partial(SOPK, SOPKOp.S_CMPK_LT_I32)
|
|
s_cmpk_le_i32 = functools.partial(SOPK, SOPKOp.S_CMPK_LE_I32)
|
|
s_cmpk_eq_u32 = functools.partial(SOPK, SOPKOp.S_CMPK_EQ_U32)
|
|
s_cmpk_lg_u32 = functools.partial(SOPK, SOPKOp.S_CMPK_LG_U32)
|
|
s_cmpk_gt_u32 = functools.partial(SOPK, SOPKOp.S_CMPK_GT_U32)
|
|
s_cmpk_ge_u32 = functools.partial(SOPK, SOPKOp.S_CMPK_GE_U32)
|
|
s_cmpk_lt_u32 = functools.partial(SOPK, SOPKOp.S_CMPK_LT_U32)
|
|
s_cmpk_le_u32 = functools.partial(SOPK, SOPKOp.S_CMPK_LE_U32)
|
|
s_addk_i32 = functools.partial(SOPK, SOPKOp.S_ADDK_I32)
|
|
s_mulk_i32 = functools.partial(SOPK, SOPKOp.S_MULK_I32)
|
|
s_getreg_b32 = functools.partial(SOPK, SOPKOp.S_GETREG_B32)
|
|
s_setreg_b32 = functools.partial(SOPK, SOPKOp.S_SETREG_B32)
|
|
s_setreg_imm32_b32 = functools.partial(SOPK, SOPKOp.S_SETREG_IMM32_B32)
|
|
s_call_b64 = functools.partial(SOPK, SOPKOp.S_CALL_B64)
|
|
s_waitcnt_vscnt = functools.partial(SOPK, SOPKOp.S_WAITCNT_VSCNT)
|
|
s_waitcnt_vmcnt = functools.partial(SOPK, SOPKOp.S_WAITCNT_VMCNT)
|
|
s_waitcnt_expcnt = functools.partial(SOPK, SOPKOp.S_WAITCNT_EXPCNT)
|
|
s_waitcnt_lgkmcnt = functools.partial(SOPK, SOPKOp.S_WAITCNT_LGKMCNT)
|
|
s_nop = functools.partial(SOPP, SOPPOp.S_NOP)
|
|
s_setkill = functools.partial(SOPP, SOPPOp.S_SETKILL)
|
|
s_sethalt = functools.partial(SOPP, SOPPOp.S_SETHALT)
|
|
s_sleep = functools.partial(SOPP, SOPPOp.S_SLEEP)
|
|
s_set_inst_prefetch_distance = functools.partial(SOPP, SOPPOp.S_SET_INST_PREFETCH_DISTANCE)
|
|
s_clause = functools.partial(SOPP, SOPPOp.S_CLAUSE)
|
|
s_delay_alu = functools.partial(SOPP, SOPPOp.S_DELAY_ALU)
|
|
s_waitcnt_depctr = functools.partial(SOPP, SOPPOp.S_WAITCNT_DEPCTR)
|
|
s_waitcnt = functools.partial(SOPP, SOPPOp.S_WAITCNT)
|
|
s_wait_idle = functools.partial(SOPP, SOPPOp.S_WAIT_IDLE)
|
|
s_wait_event = functools.partial(SOPP, SOPPOp.S_WAIT_EVENT)
|
|
s_trap = functools.partial(SOPP, SOPPOp.S_TRAP)
|
|
s_round_mode = functools.partial(SOPP, SOPPOp.S_ROUND_MODE)
|
|
s_denorm_mode = functools.partial(SOPP, SOPPOp.S_DENORM_MODE)
|
|
s_code_end = functools.partial(SOPP, SOPPOp.S_CODE_END)
|
|
s_branch = functools.partial(SOPP, SOPPOp.S_BRANCH)
|
|
s_cbranch_scc0 = functools.partial(SOPP, SOPPOp.S_CBRANCH_SCC0)
|
|
s_cbranch_scc1 = functools.partial(SOPP, SOPPOp.S_CBRANCH_SCC1)
|
|
s_cbranch_vccz = functools.partial(SOPP, SOPPOp.S_CBRANCH_VCCZ)
|
|
s_cbranch_vccnz = functools.partial(SOPP, SOPPOp.S_CBRANCH_VCCNZ)
|
|
s_cbranch_execz = functools.partial(SOPP, SOPPOp.S_CBRANCH_EXECZ)
|
|
s_cbranch_execnz = functools.partial(SOPP, SOPPOp.S_CBRANCH_EXECNZ)
|
|
s_cbranch_cdbgsys = functools.partial(SOPP, SOPPOp.S_CBRANCH_CDBGSYS)
|
|
s_cbranch_cdbguser = functools.partial(SOPP, SOPPOp.S_CBRANCH_CDBGUSER)
|
|
s_cbranch_cdbgsys_or_user = functools.partial(SOPP, SOPPOp.S_CBRANCH_CDBGSYS_OR_USER)
|
|
s_cbranch_cdbgsys_and_user = functools.partial(SOPP, SOPPOp.S_CBRANCH_CDBGSYS_AND_USER)
|
|
s_endpgm = functools.partial(SOPP, SOPPOp.S_ENDPGM)
|
|
s_endpgm_saved = functools.partial(SOPP, SOPPOp.S_ENDPGM_SAVED)
|
|
s_endpgm_ordered_ps_done = functools.partial(SOPP, SOPPOp.S_ENDPGM_ORDERED_PS_DONE)
|
|
s_wakeup = functools.partial(SOPP, SOPPOp.S_WAKEUP)
|
|
s_setprio = functools.partial(SOPP, SOPPOp.S_SETPRIO)
|
|
s_sendmsg = functools.partial(SOPP, SOPPOp.S_SENDMSG)
|
|
s_sendmsghalt = functools.partial(SOPP, SOPPOp.S_SENDMSGHALT)
|
|
s_incperflevel = functools.partial(SOPP, SOPPOp.S_INCPERFLEVEL)
|
|
s_decperflevel = functools.partial(SOPP, SOPPOp.S_DECPERFLEVEL)
|
|
s_icache_inv = functools.partial(SOPP, SOPPOp.S_ICACHE_INV)
|
|
s_barrier = functools.partial(SOPP, SOPPOp.S_BARRIER)
|
|
v_interp_p10_f32 = functools.partial(VINTERP, VINTERPOp.V_INTERP_P10_F32)
|
|
v_interp_p2_f32 = functools.partial(VINTERP, VINTERPOp.V_INTERP_P2_F32)
|
|
v_interp_p10_f16_f32 = functools.partial(VINTERP, VINTERPOp.V_INTERP_P10_F16_F32)
|
|
v_interp_p2_f16_f32 = functools.partial(VINTERP, VINTERPOp.V_INTERP_P2_F16_F32)
|
|
v_interp_p10_rtz_f16_f32 = functools.partial(VINTERP, VINTERPOp.V_INTERP_P10_RTZ_F16_F32)
|
|
v_interp_p2_rtz_f16_f32 = functools.partial(VINTERP, VINTERPOp.V_INTERP_P2_RTZ_F16_F32)
|
|
v_nop_e32 = functools.partial(VOP1, VOP1Op.V_NOP)
|
|
v_mov_b32_e32 = functools.partial(VOP1, VOP1Op.V_MOV_B32)
|
|
v_readfirstlane_b32_e32 = functools.partial(VOP1, VOP1Op.V_READFIRSTLANE_B32)
|
|
v_cvt_i32_f64_e32 = functools.partial(VOP1, VOP1Op.V_CVT_I32_F64)
|
|
v_cvt_f64_i32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F64_I32)
|
|
v_cvt_f32_i32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_I32)
|
|
v_cvt_f32_u32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_U32)
|
|
v_cvt_u32_f32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_U32_F32)
|
|
v_cvt_i32_f32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_I32_F32)
|
|
v_cvt_f16_f32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F16_F32)
|
|
v_cvt_f32_f16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_F16)
|
|
v_cvt_nearest_i32_f32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_NEAREST_I32_F32)
|
|
v_cvt_floor_i32_f32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_FLOOR_I32_F32)
|
|
v_cvt_off_f32_i4_e32 = functools.partial(VOP1, VOP1Op.V_CVT_OFF_F32_I4)
|
|
v_cvt_f32_f64_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_F64)
|
|
v_cvt_f64_f32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F64_F32)
|
|
v_cvt_f32_ubyte0_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_UBYTE0)
|
|
v_cvt_f32_ubyte1_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_UBYTE1)
|
|
v_cvt_f32_ubyte2_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_UBYTE2)
|
|
v_cvt_f32_ubyte3_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F32_UBYTE3)
|
|
v_cvt_u32_f64_e32 = functools.partial(VOP1, VOP1Op.V_CVT_U32_F64)
|
|
v_cvt_f64_u32_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F64_U32)
|
|
v_trunc_f64_e32 = functools.partial(VOP1, VOP1Op.V_TRUNC_F64)
|
|
v_ceil_f64_e32 = functools.partial(VOP1, VOP1Op.V_CEIL_F64)
|
|
v_rndne_f64_e32 = functools.partial(VOP1, VOP1Op.V_RNDNE_F64)
|
|
v_floor_f64_e32 = functools.partial(VOP1, VOP1Op.V_FLOOR_F64)
|
|
v_pipeflush_e32 = functools.partial(VOP1, VOP1Op.V_PIPEFLUSH)
|
|
v_mov_b16_e32 = functools.partial(VOP1, VOP1Op.V_MOV_B16)
|
|
v_fract_f32_e32 = functools.partial(VOP1, VOP1Op.V_FRACT_F32)
|
|
v_trunc_f32_e32 = functools.partial(VOP1, VOP1Op.V_TRUNC_F32)
|
|
v_ceil_f32_e32 = functools.partial(VOP1, VOP1Op.V_CEIL_F32)
|
|
v_rndne_f32_e32 = functools.partial(VOP1, VOP1Op.V_RNDNE_F32)
|
|
v_floor_f32_e32 = functools.partial(VOP1, VOP1Op.V_FLOOR_F32)
|
|
v_exp_f32_e32 = functools.partial(VOP1, VOP1Op.V_EXP_F32)
|
|
v_log_f32_e32 = functools.partial(VOP1, VOP1Op.V_LOG_F32)
|
|
v_rcp_f32_e32 = functools.partial(VOP1, VOP1Op.V_RCP_F32)
|
|
v_rcp_iflag_f32_e32 = functools.partial(VOP1, VOP1Op.V_RCP_IFLAG_F32)
|
|
v_rsq_f32_e32 = functools.partial(VOP1, VOP1Op.V_RSQ_F32)
|
|
v_rcp_f64_e32 = functools.partial(VOP1, VOP1Op.V_RCP_F64)
|
|
v_rsq_f64_e32 = functools.partial(VOP1, VOP1Op.V_RSQ_F64)
|
|
v_sqrt_f32_e32 = functools.partial(VOP1, VOP1Op.V_SQRT_F32)
|
|
v_sqrt_f64_e32 = functools.partial(VOP1, VOP1Op.V_SQRT_F64)
|
|
v_sin_f32_e32 = functools.partial(VOP1, VOP1Op.V_SIN_F32)
|
|
v_cos_f32_e32 = functools.partial(VOP1, VOP1Op.V_COS_F32)
|
|
v_not_b32_e32 = functools.partial(VOP1, VOP1Op.V_NOT_B32)
|
|
v_bfrev_b32_e32 = functools.partial(VOP1, VOP1Op.V_BFREV_B32)
|
|
v_clz_i32_u32_e32 = functools.partial(VOP1, VOP1Op.V_CLZ_I32_U32)
|
|
v_ctz_i32_b32_e32 = functools.partial(VOP1, VOP1Op.V_CTZ_I32_B32)
|
|
v_cls_i32_e32 = functools.partial(VOP1, VOP1Op.V_CLS_I32)
|
|
v_frexp_exp_i32_f64_e32 = functools.partial(VOP1, VOP1Op.V_FREXP_EXP_I32_F64)
|
|
v_frexp_mant_f64_e32 = functools.partial(VOP1, VOP1Op.V_FREXP_MANT_F64)
|
|
v_fract_f64_e32 = functools.partial(VOP1, VOP1Op.V_FRACT_F64)
|
|
v_frexp_exp_i32_f32_e32 = functools.partial(VOP1, VOP1Op.V_FREXP_EXP_I32_F32)
|
|
v_frexp_mant_f32_e32 = functools.partial(VOP1, VOP1Op.V_FREXP_MANT_F32)
|
|
v_movreld_b32_e32 = functools.partial(VOP1, VOP1Op.V_MOVRELD_B32)
|
|
v_movrels_b32_e32 = functools.partial(VOP1, VOP1Op.V_MOVRELS_B32)
|
|
v_movrelsd_b32_e32 = functools.partial(VOP1, VOP1Op.V_MOVRELSD_B32)
|
|
v_movrelsd_2_b32_e32 = functools.partial(VOP1, VOP1Op.V_MOVRELSD_2_B32)
|
|
v_cvt_f16_u16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F16_U16)
|
|
v_cvt_f16_i16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_F16_I16)
|
|
v_cvt_u16_f16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_U16_F16)
|
|
v_cvt_i16_f16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_I16_F16)
|
|
v_rcp_f16_e32 = functools.partial(VOP1, VOP1Op.V_RCP_F16)
|
|
v_sqrt_f16_e32 = functools.partial(VOP1, VOP1Op.V_SQRT_F16)
|
|
v_rsq_f16_e32 = functools.partial(VOP1, VOP1Op.V_RSQ_F16)
|
|
v_log_f16_e32 = functools.partial(VOP1, VOP1Op.V_LOG_F16)
|
|
v_exp_f16_e32 = functools.partial(VOP1, VOP1Op.V_EXP_F16)
|
|
v_frexp_mant_f16_e32 = functools.partial(VOP1, VOP1Op.V_FREXP_MANT_F16)
|
|
v_frexp_exp_i16_f16_e32 = functools.partial(VOP1, VOP1Op.V_FREXP_EXP_I16_F16)
|
|
v_floor_f16_e32 = functools.partial(VOP1, VOP1Op.V_FLOOR_F16)
|
|
v_ceil_f16_e32 = functools.partial(VOP1, VOP1Op.V_CEIL_F16)
|
|
v_trunc_f16_e32 = functools.partial(VOP1, VOP1Op.V_TRUNC_F16)
|
|
v_rndne_f16_e32 = functools.partial(VOP1, VOP1Op.V_RNDNE_F16)
|
|
v_fract_f16_e32 = functools.partial(VOP1, VOP1Op.V_FRACT_F16)
|
|
v_sin_f16_e32 = functools.partial(VOP1, VOP1Op.V_SIN_F16)
|
|
v_cos_f16_e32 = functools.partial(VOP1, VOP1Op.V_COS_F16)
|
|
v_sat_pk_u8_i16_e32 = functools.partial(VOP1, VOP1Op.V_SAT_PK_U8_I16)
|
|
v_cvt_norm_i16_f16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_NORM_I16_F16)
|
|
v_cvt_norm_u16_f16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_NORM_U16_F16)
|
|
v_swap_b32_e32 = functools.partial(VOP1, VOP1Op.V_SWAP_B32)
|
|
v_swap_b16_e32 = functools.partial(VOP1, VOP1Op.V_SWAP_B16)
|
|
v_permlane64_b32_e32 = functools.partial(VOP1, VOP1Op.V_PERMLANE64_B32)
|
|
v_swaprel_b32_e32 = functools.partial(VOP1, VOP1Op.V_SWAPREL_B32)
|
|
v_not_b16_e32 = functools.partial(VOP1, VOP1Op.V_NOT_B16)
|
|
v_cvt_i32_i16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_I32_I16)
|
|
v_cvt_u32_u16_e32 = functools.partial(VOP1, VOP1Op.V_CVT_U32_U16)
|
|
v_cndmask_b32_e32 = functools.partial(VOP2, VOP2Op.V_CNDMASK_B32)
|
|
v_dot2acc_f32_f16_e32 = functools.partial(VOP2, VOP2Op.V_DOT2ACC_F32_F16)
|
|
v_add_f32_e32 = functools.partial(VOP2, VOP2Op.V_ADD_F32)
|
|
v_sub_f32_e32 = functools.partial(VOP2, VOP2Op.V_SUB_F32)
|
|
v_subrev_f32_e32 = functools.partial(VOP2, VOP2Op.V_SUBREV_F32)
|
|
v_fmac_dx9_zero_f32_e32 = functools.partial(VOP2, VOP2Op.V_FMAC_DX9_ZERO_F32)
|
|
v_mul_dx9_zero_f32_e32 = functools.partial(VOP2, VOP2Op.V_MUL_DX9_ZERO_F32)
|
|
v_mul_f32_e32 = functools.partial(VOP2, VOP2Op.V_MUL_F32)
|
|
v_mul_i32_i24_e32 = functools.partial(VOP2, VOP2Op.V_MUL_I32_I24)
|
|
v_mul_hi_i32_i24_e32 = functools.partial(VOP2, VOP2Op.V_MUL_HI_I32_I24)
|
|
v_mul_u32_u24_e32 = functools.partial(VOP2, VOP2Op.V_MUL_U32_U24)
|
|
v_mul_hi_u32_u24_e32 = functools.partial(VOP2, VOP2Op.V_MUL_HI_U32_U24)
|
|
v_min_f32_e32 = functools.partial(VOP2, VOP2Op.V_MIN_F32)
|
|
v_max_f32_e32 = functools.partial(VOP2, VOP2Op.V_MAX_F32)
|
|
v_min_i32_e32 = functools.partial(VOP2, VOP2Op.V_MIN_I32)
|
|
v_max_i32_e32 = functools.partial(VOP2, VOP2Op.V_MAX_I32)
|
|
v_min_u32_e32 = functools.partial(VOP2, VOP2Op.V_MIN_U32)
|
|
v_max_u32_e32 = functools.partial(VOP2, VOP2Op.V_MAX_U32)
|
|
v_lshlrev_b32_e32 = functools.partial(VOP2, VOP2Op.V_LSHLREV_B32)
|
|
v_lshrrev_b32_e32 = functools.partial(VOP2, VOP2Op.V_LSHRREV_B32)
|
|
v_ashrrev_i32_e32 = functools.partial(VOP2, VOP2Op.V_ASHRREV_I32)
|
|
v_and_b32_e32 = functools.partial(VOP2, VOP2Op.V_AND_B32)
|
|
v_or_b32_e32 = functools.partial(VOP2, VOP2Op.V_OR_B32)
|
|
v_xor_b32_e32 = functools.partial(VOP2, VOP2Op.V_XOR_B32)
|
|
v_xnor_b32_e32 = functools.partial(VOP2, VOP2Op.V_XNOR_B32)
|
|
v_add_co_ci_u32_e32 = functools.partial(VOP2, VOP2Op.V_ADD_CO_CI_U32)
|
|
v_sub_co_ci_u32_e32 = functools.partial(VOP2, VOP2Op.V_SUB_CO_CI_U32)
|
|
v_subrev_co_ci_u32_e32 = functools.partial(VOP2, VOP2Op.V_SUBREV_CO_CI_U32)
|
|
v_add_nc_u32_e32 = functools.partial(VOP2, VOP2Op.V_ADD_NC_U32)
|
|
v_sub_nc_u32_e32 = functools.partial(VOP2, VOP2Op.V_SUB_NC_U32)
|
|
v_subrev_nc_u32_e32 = functools.partial(VOP2, VOP2Op.V_SUBREV_NC_U32)
|
|
v_fmac_f32_e32 = functools.partial(VOP2, VOP2Op.V_FMAC_F32)
|
|
def v_fmamk_f32_e32(vdst, src0, K, vsrc1): return VOP2(VOP2Op.V_FMAMK_F32, vdst, src0, vsrc1, literal=K)
|
|
def v_fmaak_f32_e32(vdst, src0, vsrc1, K): return VOP2(VOP2Op.V_FMAAK_F32, vdst, src0, vsrc1, literal=K)
|
|
v_cvt_pk_rtz_f16_f32_e32 = functools.partial(VOP2, VOP2Op.V_CVT_PK_RTZ_F16_F32)
|
|
v_add_f16_e32 = functools.partial(VOP2, VOP2Op.V_ADD_F16)
|
|
v_sub_f16_e32 = functools.partial(VOP2, VOP2Op.V_SUB_F16)
|
|
v_subrev_f16_e32 = functools.partial(VOP2, VOP2Op.V_SUBREV_F16)
|
|
v_mul_f16_e32 = functools.partial(VOP2, VOP2Op.V_MUL_F16)
|
|
v_fmac_f16_e32 = functools.partial(VOP2, VOP2Op.V_FMAC_F16)
|
|
def v_fmamk_f16_e32(vdst, src0, K, vsrc1): return VOP2(VOP2Op.V_FMAMK_F16, vdst, src0, vsrc1, literal=K)
|
|
def v_fmaak_f16_e32(vdst, src0, vsrc1, K): return VOP2(VOP2Op.V_FMAAK_F16, vdst, src0, vsrc1, literal=K)
|
|
v_max_f16_e32 = functools.partial(VOP2, VOP2Op.V_MAX_F16)
|
|
v_min_f16_e32 = functools.partial(VOP2, VOP2Op.V_MIN_F16)
|
|
v_ldexp_f16_e32 = functools.partial(VOP2, VOP2Op.V_LDEXP_F16)
|
|
v_pk_fmac_f16_e32 = functools.partial(VOP2, VOP2Op.V_PK_FMAC_F16)
|
|
v_cmp_f_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_F16)
|
|
v_cmp_lt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_F16)
|
|
v_cmp_eq_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_F16)
|
|
v_cmp_le_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_F16)
|
|
v_cmp_gt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_F16)
|
|
v_cmp_lg_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LG_F16)
|
|
v_cmp_ge_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_F16)
|
|
v_cmp_o_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_O_F16)
|
|
v_cmp_u_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_U_F16)
|
|
v_cmp_nge_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NGE_F16)
|
|
v_cmp_nlg_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLG_F16)
|
|
v_cmp_ngt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NGT_F16)
|
|
v_cmp_nle_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLE_F16)
|
|
v_cmp_neq_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NEQ_F16)
|
|
v_cmp_nlt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLT_F16)
|
|
v_cmp_t_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_F16)
|
|
v_cmp_f_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_F32)
|
|
v_cmp_lt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_F32)
|
|
v_cmp_eq_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_F32)
|
|
v_cmp_le_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_F32)
|
|
v_cmp_gt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_F32)
|
|
v_cmp_lg_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LG_F32)
|
|
v_cmp_ge_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_F32)
|
|
v_cmp_o_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_O_F32)
|
|
v_cmp_u_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_U_F32)
|
|
v_cmp_nge_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NGE_F32)
|
|
v_cmp_nlg_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLG_F32)
|
|
v_cmp_ngt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NGT_F32)
|
|
v_cmp_nle_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLE_F32)
|
|
v_cmp_neq_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NEQ_F32)
|
|
v_cmp_nlt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLT_F32)
|
|
v_cmp_t_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_F32)
|
|
v_cmp_f_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_F64)
|
|
v_cmp_lt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_F64)
|
|
v_cmp_eq_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_F64)
|
|
v_cmp_le_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_F64)
|
|
v_cmp_gt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_F64)
|
|
v_cmp_lg_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LG_F64)
|
|
v_cmp_ge_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_F64)
|
|
v_cmp_o_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_O_F64)
|
|
v_cmp_u_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_U_F64)
|
|
v_cmp_nge_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NGE_F64)
|
|
v_cmp_nlg_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLG_F64)
|
|
v_cmp_ngt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NGT_F64)
|
|
v_cmp_nle_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLE_F64)
|
|
v_cmp_neq_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NEQ_F64)
|
|
v_cmp_nlt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NLT_F64)
|
|
v_cmp_t_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_F64)
|
|
v_cmp_lt_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_I16)
|
|
v_cmp_eq_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_I16)
|
|
v_cmp_le_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_I16)
|
|
v_cmp_gt_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_I16)
|
|
v_cmp_ne_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NE_I16)
|
|
v_cmp_ge_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_I16)
|
|
v_cmp_lt_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_U16)
|
|
v_cmp_eq_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_U16)
|
|
v_cmp_le_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_U16)
|
|
v_cmp_gt_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_U16)
|
|
v_cmp_ne_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NE_U16)
|
|
v_cmp_ge_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_U16)
|
|
v_cmp_f_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_I32)
|
|
v_cmp_lt_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_I32)
|
|
v_cmp_eq_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_I32)
|
|
v_cmp_le_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_I32)
|
|
v_cmp_gt_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_I32)
|
|
v_cmp_ne_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NE_I32)
|
|
v_cmp_ge_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_I32)
|
|
v_cmp_t_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_I32)
|
|
v_cmp_f_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_U32)
|
|
v_cmp_lt_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_U32)
|
|
v_cmp_eq_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_U32)
|
|
v_cmp_le_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_U32)
|
|
v_cmp_gt_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_U32)
|
|
v_cmp_ne_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NE_U32)
|
|
v_cmp_ge_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_U32)
|
|
v_cmp_t_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_U32)
|
|
v_cmp_f_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_I64)
|
|
v_cmp_lt_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_I64)
|
|
v_cmp_eq_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_I64)
|
|
v_cmp_le_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_I64)
|
|
v_cmp_gt_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_I64)
|
|
v_cmp_ne_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NE_I64)
|
|
v_cmp_ge_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_I64)
|
|
v_cmp_t_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_I64)
|
|
v_cmp_f_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_F_U64)
|
|
v_cmp_lt_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LT_U64)
|
|
v_cmp_eq_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_EQ_U64)
|
|
v_cmp_le_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_LE_U64)
|
|
v_cmp_gt_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GT_U64)
|
|
v_cmp_ne_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_NE_U64)
|
|
v_cmp_ge_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_GE_U64)
|
|
v_cmp_t_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_T_U64)
|
|
v_cmp_class_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMP_CLASS_F16)
|
|
v_cmp_class_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMP_CLASS_F32)
|
|
v_cmp_class_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMP_CLASS_F64)
|
|
v_cmpx_f_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_F16)
|
|
v_cmpx_lt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_F16)
|
|
v_cmpx_eq_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_F16)
|
|
v_cmpx_le_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_F16)
|
|
v_cmpx_gt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_F16)
|
|
v_cmpx_lg_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LG_F16)
|
|
v_cmpx_ge_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_F16)
|
|
v_cmpx_o_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_O_F16)
|
|
v_cmpx_u_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_U_F16)
|
|
v_cmpx_nge_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NGE_F16)
|
|
v_cmpx_nlg_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLG_F16)
|
|
v_cmpx_ngt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NGT_F16)
|
|
v_cmpx_nle_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLE_F16)
|
|
v_cmpx_neq_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NEQ_F16)
|
|
v_cmpx_nlt_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLT_F16)
|
|
v_cmpx_t_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_F16)
|
|
v_cmpx_f_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_F32)
|
|
v_cmpx_lt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_F32)
|
|
v_cmpx_eq_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_F32)
|
|
v_cmpx_le_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_F32)
|
|
v_cmpx_gt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_F32)
|
|
v_cmpx_lg_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LG_F32)
|
|
v_cmpx_ge_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_F32)
|
|
v_cmpx_o_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_O_F32)
|
|
v_cmpx_u_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_U_F32)
|
|
v_cmpx_nge_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NGE_F32)
|
|
v_cmpx_nlg_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLG_F32)
|
|
v_cmpx_ngt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NGT_F32)
|
|
v_cmpx_nle_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLE_F32)
|
|
v_cmpx_neq_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NEQ_F32)
|
|
v_cmpx_nlt_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLT_F32)
|
|
v_cmpx_t_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_F32)
|
|
v_cmpx_f_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_F64)
|
|
v_cmpx_lt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_F64)
|
|
v_cmpx_eq_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_F64)
|
|
v_cmpx_le_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_F64)
|
|
v_cmpx_gt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_F64)
|
|
v_cmpx_lg_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LG_F64)
|
|
v_cmpx_ge_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_F64)
|
|
v_cmpx_o_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_O_F64)
|
|
v_cmpx_u_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_U_F64)
|
|
v_cmpx_nge_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NGE_F64)
|
|
v_cmpx_nlg_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLG_F64)
|
|
v_cmpx_ngt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NGT_F64)
|
|
v_cmpx_nle_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLE_F64)
|
|
v_cmpx_neq_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NEQ_F64)
|
|
v_cmpx_nlt_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NLT_F64)
|
|
v_cmpx_t_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_F64)
|
|
v_cmpx_lt_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_I16)
|
|
v_cmpx_eq_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_I16)
|
|
v_cmpx_le_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_I16)
|
|
v_cmpx_gt_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_I16)
|
|
v_cmpx_ne_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NE_I16)
|
|
v_cmpx_ge_i16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_I16)
|
|
v_cmpx_lt_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_U16)
|
|
v_cmpx_eq_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_U16)
|
|
v_cmpx_le_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_U16)
|
|
v_cmpx_gt_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_U16)
|
|
v_cmpx_ne_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NE_U16)
|
|
v_cmpx_ge_u16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_U16)
|
|
v_cmpx_f_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_I32)
|
|
v_cmpx_lt_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_I32)
|
|
v_cmpx_eq_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_I32)
|
|
v_cmpx_le_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_I32)
|
|
v_cmpx_gt_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_I32)
|
|
v_cmpx_ne_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NE_I32)
|
|
v_cmpx_ge_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_I32)
|
|
v_cmpx_t_i32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_I32)
|
|
v_cmpx_f_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_U32)
|
|
v_cmpx_lt_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_U32)
|
|
v_cmpx_eq_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_U32)
|
|
v_cmpx_le_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_U32)
|
|
v_cmpx_gt_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_U32)
|
|
v_cmpx_ne_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NE_U32)
|
|
v_cmpx_ge_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_U32)
|
|
v_cmpx_t_u32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_U32)
|
|
v_cmpx_f_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_I64)
|
|
v_cmpx_lt_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_I64)
|
|
v_cmpx_eq_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_I64)
|
|
v_cmpx_le_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_I64)
|
|
v_cmpx_gt_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_I64)
|
|
v_cmpx_ne_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NE_I64)
|
|
v_cmpx_ge_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_I64)
|
|
v_cmpx_t_i64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_I64)
|
|
v_cmpx_f_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_F_U64)
|
|
v_cmpx_lt_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LT_U64)
|
|
v_cmpx_eq_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_EQ_U64)
|
|
v_cmpx_le_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_LE_U64)
|
|
v_cmpx_gt_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GT_U64)
|
|
v_cmpx_ne_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_NE_U64)
|
|
v_cmpx_ge_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_GE_U64)
|
|
v_cmpx_t_u64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_T_U64)
|
|
v_cmpx_class_f16_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_CLASS_F16)
|
|
v_cmpx_class_f32_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_CLASS_F32)
|
|
v_cmpx_class_f64_e64 = functools.partial(VOP3, VOP3Op.V_CMPX_CLASS_F64)
|
|
v_cndmask_b32_e64 = functools.partial(VOP3, VOP3Op.V_CNDMASK_B32)
|
|
v_add_f32_e64 = functools.partial(VOP3, VOP3Op.V_ADD_F32)
|
|
v_sub_f32_e64 = functools.partial(VOP3, VOP3Op.V_SUB_F32)
|
|
v_subrev_f32_e64 = functools.partial(VOP3, VOP3Op.V_SUBREV_F32)
|
|
v_fmac_dx9_zero_f32_e64 = functools.partial(VOP3, VOP3Op.V_FMAC_DX9_ZERO_F32)
|
|
v_mul_dx9_zero_f32_e64 = functools.partial(VOP3, VOP3Op.V_MUL_DX9_ZERO_F32)
|
|
v_mul_f32_e64 = functools.partial(VOP3, VOP3Op.V_MUL_F32)
|
|
v_mul_i32_i24_e64 = functools.partial(VOP3, VOP3Op.V_MUL_I32_I24)
|
|
v_mul_hi_i32_i24_e64 = functools.partial(VOP3, VOP3Op.V_MUL_HI_I32_I24)
|
|
v_mul_u32_u24_e64 = functools.partial(VOP3, VOP3Op.V_MUL_U32_U24)
|
|
v_mul_hi_u32_u24_e64 = functools.partial(VOP3, VOP3Op.V_MUL_HI_U32_U24)
|
|
v_min_f32_e64 = functools.partial(VOP3, VOP3Op.V_MIN_F32)
|
|
v_max_f32_e64 = functools.partial(VOP3, VOP3Op.V_MAX_F32)
|
|
v_min_i32_e64 = functools.partial(VOP3, VOP3Op.V_MIN_I32)
|
|
v_max_i32_e64 = functools.partial(VOP3, VOP3Op.V_MAX_I32)
|
|
v_min_u32_e64 = functools.partial(VOP3, VOP3Op.V_MIN_U32)
|
|
v_max_u32_e64 = functools.partial(VOP3, VOP3Op.V_MAX_U32)
|
|
v_lshlrev_b32_e64 = functools.partial(VOP3, VOP3Op.V_LSHLREV_B32)
|
|
v_lshrrev_b32_e64 = functools.partial(VOP3, VOP3Op.V_LSHRREV_B32)
|
|
v_ashrrev_i32_e64 = functools.partial(VOP3, VOP3Op.V_ASHRREV_I32)
|
|
v_and_b32_e64 = functools.partial(VOP3, VOP3Op.V_AND_B32)
|
|
v_or_b32_e64 = functools.partial(VOP3, VOP3Op.V_OR_B32)
|
|
v_xor_b32_e64 = functools.partial(VOP3, VOP3Op.V_XOR_B32)
|
|
v_xnor_b32_e64 = functools.partial(VOP3, VOP3Op.V_XNOR_B32)
|
|
v_add_nc_u32_e64 = functools.partial(VOP3, VOP3Op.V_ADD_NC_U32)
|
|
v_sub_nc_u32_e64 = functools.partial(VOP3, VOP3Op.V_SUB_NC_U32)
|
|
v_subrev_nc_u32_e64 = functools.partial(VOP3, VOP3Op.V_SUBREV_NC_U32)
|
|
v_fmac_f32_e64 = functools.partial(VOP3, VOP3Op.V_FMAC_F32)
|
|
v_cvt_pk_rtz_f16_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_PK_RTZ_F16_F32)
|
|
v_add_f16_e64 = functools.partial(VOP3, VOP3Op.V_ADD_F16)
|
|
v_sub_f16_e64 = functools.partial(VOP3, VOP3Op.V_SUB_F16)
|
|
v_subrev_f16_e64 = functools.partial(VOP3, VOP3Op.V_SUBREV_F16)
|
|
v_mul_f16_e64 = functools.partial(VOP3, VOP3Op.V_MUL_F16)
|
|
v_fmac_f16_e64 = functools.partial(VOP3, VOP3Op.V_FMAC_F16)
|
|
v_max_f16_e64 = functools.partial(VOP3, VOP3Op.V_MAX_F16)
|
|
v_min_f16_e64 = functools.partial(VOP3, VOP3Op.V_MIN_F16)
|
|
v_ldexp_f16_e64 = functools.partial(VOP3, VOP3Op.V_LDEXP_F16)
|
|
v_nop_e64 = functools.partial(VOP3, VOP3Op.V_NOP)
|
|
v_mov_b32_e64 = functools.partial(VOP3, VOP3Op.V_MOV_B32)
|
|
v_readfirstlane_b32_e64 = functools.partial(VOP3, VOP3Op.V_READFIRSTLANE_B32)
|
|
v_cvt_i32_f64_e64 = functools.partial(VOP3, VOP3Op.V_CVT_I32_F64)
|
|
v_cvt_f64_i32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F64_I32)
|
|
v_cvt_f32_i32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_I32)
|
|
v_cvt_f32_u32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_U32)
|
|
v_cvt_u32_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_U32_F32)
|
|
v_cvt_i32_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_I32_F32)
|
|
v_cvt_f16_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F16_F32)
|
|
v_cvt_f32_f16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_F16)
|
|
v_cvt_nearest_i32_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_NEAREST_I32_F32)
|
|
v_cvt_floor_i32_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_FLOOR_I32_F32)
|
|
v_cvt_off_f32_i4_e64 = functools.partial(VOP3, VOP3Op.V_CVT_OFF_F32_I4)
|
|
v_cvt_f32_f64_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_F64)
|
|
v_cvt_f64_f32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F64_F32)
|
|
v_cvt_f32_ubyte0_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_UBYTE0)
|
|
v_cvt_f32_ubyte1_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_UBYTE1)
|
|
v_cvt_f32_ubyte2_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_UBYTE2)
|
|
v_cvt_f32_ubyte3_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F32_UBYTE3)
|
|
v_cvt_u32_f64_e64 = functools.partial(VOP3, VOP3Op.V_CVT_U32_F64)
|
|
v_cvt_f64_u32_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F64_U32)
|
|
v_trunc_f64_e64 = functools.partial(VOP3, VOP3Op.V_TRUNC_F64)
|
|
v_ceil_f64_e64 = functools.partial(VOP3, VOP3Op.V_CEIL_F64)
|
|
v_rndne_f64_e64 = functools.partial(VOP3, VOP3Op.V_RNDNE_F64)
|
|
v_floor_f64_e64 = functools.partial(VOP3, VOP3Op.V_FLOOR_F64)
|
|
v_pipeflush_e64 = functools.partial(VOP3, VOP3Op.V_PIPEFLUSH)
|
|
v_mov_b16_e64 = functools.partial(VOP3, VOP3Op.V_MOV_B16)
|
|
v_fract_f32_e64 = functools.partial(VOP3, VOP3Op.V_FRACT_F32)
|
|
v_trunc_f32_e64 = functools.partial(VOP3, VOP3Op.V_TRUNC_F32)
|
|
v_ceil_f32_e64 = functools.partial(VOP3, VOP3Op.V_CEIL_F32)
|
|
v_rndne_f32_e64 = functools.partial(VOP3, VOP3Op.V_RNDNE_F32)
|
|
v_floor_f32_e64 = functools.partial(VOP3, VOP3Op.V_FLOOR_F32)
|
|
v_exp_f32_e64 = functools.partial(VOP3, VOP3Op.V_EXP_F32)
|
|
v_log_f32_e64 = functools.partial(VOP3, VOP3Op.V_LOG_F32)
|
|
v_rcp_f32_e64 = functools.partial(VOP3, VOP3Op.V_RCP_F32)
|
|
v_rcp_iflag_f32_e64 = functools.partial(VOP3, VOP3Op.V_RCP_IFLAG_F32)
|
|
v_rsq_f32_e64 = functools.partial(VOP3, VOP3Op.V_RSQ_F32)
|
|
v_rcp_f64_e64 = functools.partial(VOP3, VOP3Op.V_RCP_F64)
|
|
v_rsq_f64_e64 = functools.partial(VOP3, VOP3Op.V_RSQ_F64)
|
|
v_sqrt_f32_e64 = functools.partial(VOP3, VOP3Op.V_SQRT_F32)
|
|
v_sqrt_f64_e64 = functools.partial(VOP3, VOP3Op.V_SQRT_F64)
|
|
v_sin_f32_e64 = functools.partial(VOP3, VOP3Op.V_SIN_F32)
|
|
v_cos_f32_e64 = functools.partial(VOP3, VOP3Op.V_COS_F32)
|
|
v_not_b32_e64 = functools.partial(VOP3, VOP3Op.V_NOT_B32)
|
|
v_bfrev_b32_e64 = functools.partial(VOP3, VOP3Op.V_BFREV_B32)
|
|
v_clz_i32_u32_e64 = functools.partial(VOP3, VOP3Op.V_CLZ_I32_U32)
|
|
v_ctz_i32_b32_e64 = functools.partial(VOP3, VOP3Op.V_CTZ_I32_B32)
|
|
v_cls_i32_e64 = functools.partial(VOP3, VOP3Op.V_CLS_I32)
|
|
v_frexp_exp_i32_f64_e64 = functools.partial(VOP3, VOP3Op.V_FREXP_EXP_I32_F64)
|
|
v_frexp_mant_f64_e64 = functools.partial(VOP3, VOP3Op.V_FREXP_MANT_F64)
|
|
v_fract_f64_e64 = functools.partial(VOP3, VOP3Op.V_FRACT_F64)
|
|
v_frexp_exp_i32_f32_e64 = functools.partial(VOP3, VOP3Op.V_FREXP_EXP_I32_F32)
|
|
v_frexp_mant_f32_e64 = functools.partial(VOP3, VOP3Op.V_FREXP_MANT_F32)
|
|
v_movreld_b32_e64 = functools.partial(VOP3, VOP3Op.V_MOVRELD_B32)
|
|
v_movrels_b32_e64 = functools.partial(VOP3, VOP3Op.V_MOVRELS_B32)
|
|
v_movrelsd_b32_e64 = functools.partial(VOP3, VOP3Op.V_MOVRELSD_B32)
|
|
v_movrelsd_2_b32_e64 = functools.partial(VOP3, VOP3Op.V_MOVRELSD_2_B32)
|
|
v_cvt_f16_u16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F16_U16)
|
|
v_cvt_f16_i16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_F16_I16)
|
|
v_cvt_u16_f16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_U16_F16)
|
|
v_cvt_i16_f16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_I16_F16)
|
|
v_rcp_f16_e64 = functools.partial(VOP3, VOP3Op.V_RCP_F16)
|
|
v_sqrt_f16_e64 = functools.partial(VOP3, VOP3Op.V_SQRT_F16)
|
|
v_rsq_f16_e64 = functools.partial(VOP3, VOP3Op.V_RSQ_F16)
|
|
v_log_f16_e64 = functools.partial(VOP3, VOP3Op.V_LOG_F16)
|
|
v_exp_f16_e64 = functools.partial(VOP3, VOP3Op.V_EXP_F16)
|
|
v_frexp_mant_f16_e64 = functools.partial(VOP3, VOP3Op.V_FREXP_MANT_F16)
|
|
v_frexp_exp_i16_f16_e64 = functools.partial(VOP3, VOP3Op.V_FREXP_EXP_I16_F16)
|
|
v_floor_f16_e64 = functools.partial(VOP3, VOP3Op.V_FLOOR_F16)
|
|
v_ceil_f16_e64 = functools.partial(VOP3, VOP3Op.V_CEIL_F16)
|
|
v_trunc_f16_e64 = functools.partial(VOP3, VOP3Op.V_TRUNC_F16)
|
|
v_rndne_f16_e64 = functools.partial(VOP3, VOP3Op.V_RNDNE_F16)
|
|
v_fract_f16_e64 = functools.partial(VOP3, VOP3Op.V_FRACT_F16)
|
|
v_sin_f16_e64 = functools.partial(VOP3, VOP3Op.V_SIN_F16)
|
|
v_cos_f16_e64 = functools.partial(VOP3, VOP3Op.V_COS_F16)
|
|
v_sat_pk_u8_i16_e64 = functools.partial(VOP3, VOP3Op.V_SAT_PK_U8_I16)
|
|
v_cvt_norm_i16_f16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_NORM_I16_F16)
|
|
v_cvt_norm_u16_f16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_NORM_U16_F16)
|
|
v_not_b16_e64 = functools.partial(VOP3, VOP3Op.V_NOT_B16)
|
|
v_cvt_i32_i16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_I32_I16)
|
|
v_cvt_u32_u16_e64 = functools.partial(VOP3, VOP3Op.V_CVT_U32_U16)
|
|
v_fma_dx9_zero_f32 = functools.partial(VOP3, VOP3Op.V_FMA_DX9_ZERO_F32)
|
|
v_mad_i32_i24 = functools.partial(VOP3, VOP3Op.V_MAD_I32_I24)
|
|
v_mad_u32_u24 = functools.partial(VOP3, VOP3Op.V_MAD_U32_U24)
|
|
v_cubeid_f32 = functools.partial(VOP3, VOP3Op.V_CUBEID_F32)
|
|
v_cubesc_f32 = functools.partial(VOP3, VOP3Op.V_CUBESC_F32)
|
|
v_cubetc_f32 = functools.partial(VOP3, VOP3Op.V_CUBETC_F32)
|
|
v_cubema_f32 = functools.partial(VOP3, VOP3Op.V_CUBEMA_F32)
|
|
v_bfe_u32 = functools.partial(VOP3, VOP3Op.V_BFE_U32)
|
|
v_bfe_i32 = functools.partial(VOP3, VOP3Op.V_BFE_I32)
|
|
v_bfi_b32 = functools.partial(VOP3, VOP3Op.V_BFI_B32)
|
|
v_fma_f32 = functools.partial(VOP3, VOP3Op.V_FMA_F32)
|
|
v_fma_f64 = functools.partial(VOP3, VOP3Op.V_FMA_F64)
|
|
v_lerp_u8 = functools.partial(VOP3, VOP3Op.V_LERP_U8)
|
|
v_alignbit_b32 = functools.partial(VOP3, VOP3Op.V_ALIGNBIT_B32)
|
|
v_alignbyte_b32 = functools.partial(VOP3, VOP3Op.V_ALIGNBYTE_B32)
|
|
v_mullit_f32 = functools.partial(VOP3, VOP3Op.V_MULLIT_F32)
|
|
v_min3_f32 = functools.partial(VOP3, VOP3Op.V_MIN3_F32)
|
|
v_min3_i32 = functools.partial(VOP3, VOP3Op.V_MIN3_I32)
|
|
v_min3_u32 = functools.partial(VOP3, VOP3Op.V_MIN3_U32)
|
|
v_max3_f32 = functools.partial(VOP3, VOP3Op.V_MAX3_F32)
|
|
v_max3_i32 = functools.partial(VOP3, VOP3Op.V_MAX3_I32)
|
|
v_max3_u32 = functools.partial(VOP3, VOP3Op.V_MAX3_U32)
|
|
v_med3_f32 = functools.partial(VOP3, VOP3Op.V_MED3_F32)
|
|
v_med3_i32 = functools.partial(VOP3, VOP3Op.V_MED3_I32)
|
|
v_med3_u32 = functools.partial(VOP3, VOP3Op.V_MED3_U32)
|
|
v_sad_u8 = functools.partial(VOP3, VOP3Op.V_SAD_U8)
|
|
v_sad_hi_u8 = functools.partial(VOP3, VOP3Op.V_SAD_HI_U8)
|
|
v_sad_u16 = functools.partial(VOP3, VOP3Op.V_SAD_U16)
|
|
v_sad_u32 = functools.partial(VOP3, VOP3Op.V_SAD_U32)
|
|
v_cvt_pk_u8_f32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_U8_F32)
|
|
v_div_fixup_f32 = functools.partial(VOP3, VOP3Op.V_DIV_FIXUP_F32)
|
|
v_div_fixup_f64 = functools.partial(VOP3, VOP3Op.V_DIV_FIXUP_F64)
|
|
v_div_fmas_f32 = functools.partial(VOP3, VOP3Op.V_DIV_FMAS_F32)
|
|
v_div_fmas_f64 = functools.partial(VOP3, VOP3Op.V_DIV_FMAS_F64)
|
|
v_msad_u8 = functools.partial(VOP3, VOP3Op.V_MSAD_U8)
|
|
v_qsad_pk_u16_u8 = functools.partial(VOP3, VOP3Op.V_QSAD_PK_U16_U8)
|
|
v_mqsad_pk_u16_u8 = functools.partial(VOP3, VOP3Op.V_MQSAD_PK_U16_U8)
|
|
v_mqsad_u32_u8 = functools.partial(VOP3, VOP3Op.V_MQSAD_U32_U8)
|
|
v_xor3_b32 = functools.partial(VOP3, VOP3Op.V_XOR3_B32)
|
|
v_mad_u16 = functools.partial(VOP3, VOP3Op.V_MAD_U16)
|
|
v_perm_b32 = functools.partial(VOP3, VOP3Op.V_PERM_B32)
|
|
v_xad_u32 = functools.partial(VOP3, VOP3Op.V_XAD_U32)
|
|
v_lshl_add_u32 = functools.partial(VOP3, VOP3Op.V_LSHL_ADD_U32)
|
|
v_add_lshl_u32 = functools.partial(VOP3, VOP3Op.V_ADD_LSHL_U32)
|
|
v_fma_f16 = functools.partial(VOP3, VOP3Op.V_FMA_F16)
|
|
v_min3_f16 = functools.partial(VOP3, VOP3Op.V_MIN3_F16)
|
|
v_min3_i16 = functools.partial(VOP3, VOP3Op.V_MIN3_I16)
|
|
v_min3_u16 = functools.partial(VOP3, VOP3Op.V_MIN3_U16)
|
|
v_max3_f16 = functools.partial(VOP3, VOP3Op.V_MAX3_F16)
|
|
v_max3_i16 = functools.partial(VOP3, VOP3Op.V_MAX3_I16)
|
|
v_max3_u16 = functools.partial(VOP3, VOP3Op.V_MAX3_U16)
|
|
v_med3_f16 = functools.partial(VOP3, VOP3Op.V_MED3_F16)
|
|
v_med3_i16 = functools.partial(VOP3, VOP3Op.V_MED3_I16)
|
|
v_med3_u16 = functools.partial(VOP3, VOP3Op.V_MED3_U16)
|
|
v_mad_i16 = functools.partial(VOP3, VOP3Op.V_MAD_I16)
|
|
v_div_fixup_f16 = functools.partial(VOP3, VOP3Op.V_DIV_FIXUP_F16)
|
|
v_add3_u32 = functools.partial(VOP3, VOP3Op.V_ADD3_U32)
|
|
v_lshl_or_b32 = functools.partial(VOP3, VOP3Op.V_LSHL_OR_B32)
|
|
v_and_or_b32 = functools.partial(VOP3, VOP3Op.V_AND_OR_B32)
|
|
v_or3_b32 = functools.partial(VOP3, VOP3Op.V_OR3_B32)
|
|
v_mad_u32_u16 = functools.partial(VOP3, VOP3Op.V_MAD_U32_U16)
|
|
v_mad_i32_i16 = functools.partial(VOP3, VOP3Op.V_MAD_I32_I16)
|
|
v_permlane16_b32 = functools.partial(VOP3, VOP3Op.V_PERMLANE16_B32)
|
|
v_permlanex16_b32 = functools.partial(VOP3, VOP3Op.V_PERMLANEX16_B32)
|
|
v_cndmask_b16 = functools.partial(VOP3, VOP3Op.V_CNDMASK_B16)
|
|
v_maxmin_f32 = functools.partial(VOP3, VOP3Op.V_MAXMIN_F32)
|
|
v_minmax_f32 = functools.partial(VOP3, VOP3Op.V_MINMAX_F32)
|
|
v_maxmin_f16 = functools.partial(VOP3, VOP3Op.V_MAXMIN_F16)
|
|
v_minmax_f16 = functools.partial(VOP3, VOP3Op.V_MINMAX_F16)
|
|
v_maxmin_u32 = functools.partial(VOP3, VOP3Op.V_MAXMIN_U32)
|
|
v_minmax_u32 = functools.partial(VOP3, VOP3Op.V_MINMAX_U32)
|
|
v_maxmin_i32 = functools.partial(VOP3, VOP3Op.V_MAXMIN_I32)
|
|
v_minmax_i32 = functools.partial(VOP3, VOP3Op.V_MINMAX_I32)
|
|
v_dot2_f16_f16 = functools.partial(VOP3, VOP3Op.V_DOT2_F16_F16)
|
|
v_dot2_bf16_bf16 = functools.partial(VOP3, VOP3Op.V_DOT2_BF16_BF16)
|
|
v_add_nc_u16 = functools.partial(VOP3, VOP3Op.V_ADD_NC_U16)
|
|
v_sub_nc_u16 = functools.partial(VOP3, VOP3Op.V_SUB_NC_U16)
|
|
v_mul_lo_u16 = functools.partial(VOP3, VOP3Op.V_MUL_LO_U16)
|
|
v_cvt_pk_i16_f32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_I16_F32)
|
|
v_cvt_pk_u16_f32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_U16_F32)
|
|
v_max_u16 = functools.partial(VOP3, VOP3Op.V_MAX_U16)
|
|
v_max_i16 = functools.partial(VOP3, VOP3Op.V_MAX_I16)
|
|
v_min_u16 = functools.partial(VOP3, VOP3Op.V_MIN_U16)
|
|
v_min_i16 = functools.partial(VOP3, VOP3Op.V_MIN_I16)
|
|
v_add_nc_i16 = functools.partial(VOP3, VOP3Op.V_ADD_NC_I16)
|
|
v_sub_nc_i16 = functools.partial(VOP3, VOP3Op.V_SUB_NC_I16)
|
|
v_pack_b32_f16 = functools.partial(VOP3, VOP3Op.V_PACK_B32_F16)
|
|
v_cvt_pk_norm_i16_f16 = functools.partial(VOP3, VOP3Op.V_CVT_PK_NORM_I16_F16)
|
|
v_cvt_pk_norm_u16_f16 = functools.partial(VOP3, VOP3Op.V_CVT_PK_NORM_U16_F16)
|
|
v_ldexp_f32 = functools.partial(VOP3, VOP3Op.V_LDEXP_F32)
|
|
v_bfm_b32 = functools.partial(VOP3, VOP3Op.V_BFM_B32)
|
|
v_bcnt_u32_b32 = functools.partial(VOP3, VOP3Op.V_BCNT_U32_B32)
|
|
v_mbcnt_lo_u32_b32 = functools.partial(VOP3, VOP3Op.V_MBCNT_LO_U32_B32)
|
|
v_mbcnt_hi_u32_b32 = functools.partial(VOP3, VOP3Op.V_MBCNT_HI_U32_B32)
|
|
v_cvt_pk_norm_i16_f32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_NORM_I16_F32)
|
|
v_cvt_pk_norm_u16_f32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_NORM_U16_F32)
|
|
v_cvt_pk_u16_u32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_U16_U32)
|
|
v_cvt_pk_i16_i32 = functools.partial(VOP3, VOP3Op.V_CVT_PK_I16_I32)
|
|
v_sub_nc_i32 = functools.partial(VOP3, VOP3Op.V_SUB_NC_I32)
|
|
v_add_nc_i32 = functools.partial(VOP3, VOP3Op.V_ADD_NC_I32)
|
|
v_add_f64 = functools.partial(VOP3, VOP3Op.V_ADD_F64)
|
|
v_mul_f64 = functools.partial(VOP3, VOP3Op.V_MUL_F64)
|
|
v_min_f64 = functools.partial(VOP3, VOP3Op.V_MIN_F64)
|
|
v_max_f64 = functools.partial(VOP3, VOP3Op.V_MAX_F64)
|
|
v_ldexp_f64 = functools.partial(VOP3, VOP3Op.V_LDEXP_F64)
|
|
v_mul_lo_u32 = functools.partial(VOP3, VOP3Op.V_MUL_LO_U32)
|
|
v_mul_hi_u32 = functools.partial(VOP3, VOP3Op.V_MUL_HI_U32)
|
|
v_mul_hi_i32 = functools.partial(VOP3, VOP3Op.V_MUL_HI_I32)
|
|
v_trig_preop_f64 = functools.partial(VOP3, VOP3Op.V_TRIG_PREOP_F64)
|
|
v_lshlrev_b16 = functools.partial(VOP3, VOP3Op.V_LSHLREV_B16)
|
|
v_lshrrev_b16 = functools.partial(VOP3, VOP3Op.V_LSHRREV_B16)
|
|
v_ashrrev_i16 = functools.partial(VOP3, VOP3Op.V_ASHRREV_I16)
|
|
v_lshlrev_b64 = functools.partial(VOP3, VOP3Op.V_LSHLREV_B64)
|
|
v_lshrrev_b64 = functools.partial(VOP3, VOP3Op.V_LSHRREV_B64)
|
|
v_ashrrev_i64 = functools.partial(VOP3, VOP3Op.V_ASHRREV_I64)
|
|
v_readlane_b32 = functools.partial(VOP3, VOP3Op.V_READLANE_B32)
|
|
v_writelane_b32 = functools.partial(VOP3, VOP3Op.V_WRITELANE_B32)
|
|
v_and_b16 = functools.partial(VOP3, VOP3Op.V_AND_B16)
|
|
v_or_b16 = functools.partial(VOP3, VOP3Op.V_OR_B16)
|
|
v_xor_b16 = functools.partial(VOP3, VOP3Op.V_XOR_B16)
|
|
v_pk_mad_i16 = functools.partial(VOP3P, VOP3POp.V_PK_MAD_I16)
|
|
v_pk_mul_lo_u16 = functools.partial(VOP3P, VOP3POp.V_PK_MUL_LO_U16)
|
|
v_pk_add_i16 = functools.partial(VOP3P, VOP3POp.V_PK_ADD_I16)
|
|
v_pk_sub_i16 = functools.partial(VOP3P, VOP3POp.V_PK_SUB_I16)
|
|
v_pk_lshlrev_b16 = functools.partial(VOP3P, VOP3POp.V_PK_LSHLREV_B16)
|
|
v_pk_lshrrev_b16 = functools.partial(VOP3P, VOP3POp.V_PK_LSHRREV_B16)
|
|
v_pk_ashrrev_i16 = functools.partial(VOP3P, VOP3POp.V_PK_ASHRREV_I16)
|
|
v_pk_max_i16 = functools.partial(VOP3P, VOP3POp.V_PK_MAX_I16)
|
|
v_pk_min_i16 = functools.partial(VOP3P, VOP3POp.V_PK_MIN_I16)
|
|
v_pk_mad_u16 = functools.partial(VOP3P, VOP3POp.V_PK_MAD_U16)
|
|
v_pk_add_u16 = functools.partial(VOP3P, VOP3POp.V_PK_ADD_U16)
|
|
v_pk_sub_u16 = functools.partial(VOP3P, VOP3POp.V_PK_SUB_U16)
|
|
v_pk_max_u16 = functools.partial(VOP3P, VOP3POp.V_PK_MAX_U16)
|
|
v_pk_min_u16 = functools.partial(VOP3P, VOP3POp.V_PK_MIN_U16)
|
|
v_pk_fma_f16 = functools.partial(VOP3P, VOP3POp.V_PK_FMA_F16)
|
|
v_pk_add_f16 = functools.partial(VOP3P, VOP3POp.V_PK_ADD_F16)
|
|
v_pk_mul_f16 = functools.partial(VOP3P, VOP3POp.V_PK_MUL_F16)
|
|
v_pk_min_f16 = functools.partial(VOP3P, VOP3POp.V_PK_MIN_F16)
|
|
v_pk_max_f16 = functools.partial(VOP3P, VOP3POp.V_PK_MAX_F16)
|
|
v_dot2_f32_f16 = functools.partial(VOP3P, VOP3POp.V_DOT2_F32_F16)
|
|
v_dot4_i32_iu8 = functools.partial(VOP3P, VOP3POp.V_DOT4_I32_IU8)
|
|
v_dot4_u32_u8 = functools.partial(VOP3P, VOP3POp.V_DOT4_U32_U8)
|
|
v_dot8_i32_iu4 = functools.partial(VOP3P, VOP3POp.V_DOT8_I32_IU4)
|
|
v_dot8_u32_u4 = functools.partial(VOP3P, VOP3POp.V_DOT8_U32_U4)
|
|
v_dot2_f32_bf16 = functools.partial(VOP3P, VOP3POp.V_DOT2_F32_BF16)
|
|
v_fma_mix_f32 = functools.partial(VOP3P, VOP3POp.V_FMA_MIX_F32)
|
|
v_fma_mixlo_f16 = functools.partial(VOP3P, VOP3POp.V_FMA_MIXLO_F16)
|
|
v_fma_mixhi_f16 = functools.partial(VOP3P, VOP3POp.V_FMA_MIXHI_F16)
|
|
v_wmma_f32_16x16x16_f16 = functools.partial(VOP3P, VOP3POp.V_WMMA_F32_16X16X16_F16)
|
|
v_wmma_f32_16x16x16_bf16 = functools.partial(VOP3P, VOP3POp.V_WMMA_F32_16X16X16_BF16)
|
|
v_wmma_f16_16x16x16_f16 = functools.partial(VOP3P, VOP3POp.V_WMMA_F16_16X16X16_F16)
|
|
v_wmma_bf16_16x16x16_bf16 = functools.partial(VOP3P, VOP3POp.V_WMMA_BF16_16X16X16_BF16)
|
|
v_wmma_i32_16x16x16_iu8 = functools.partial(VOP3P, VOP3POp.V_WMMA_I32_16X16X16_IU8)
|
|
v_wmma_i32_16x16x16_iu4 = functools.partial(VOP3P, VOP3POp.V_WMMA_I32_16X16X16_IU4)
|
|
dword = functools.partial(VOP3SD, VOP3SDOp.DWORD)
|
|
v_add_co_ci_u32 = functools.partial(VOP3SD, VOP3SDOp.V_ADD_CO_CI_U32)
|
|
v_sub_co_ci_u32 = functools.partial(VOP3SD, VOP3SDOp.V_SUB_CO_CI_U32)
|
|
v_subrev_co_ci_u32 = functools.partial(VOP3SD, VOP3SDOp.V_SUBREV_CO_CI_U32)
|
|
v_div_scale_f32 = functools.partial(VOP3SD, VOP3SDOp.V_DIV_SCALE_F32)
|
|
v_div_scale_f64 = functools.partial(VOP3SD, VOP3SDOp.V_DIV_SCALE_F64)
|
|
v_mad_u64_u32 = functools.partial(VOP3SD, VOP3SDOp.V_MAD_U64_U32)
|
|
v_mad_i64_i32 = functools.partial(VOP3SD, VOP3SDOp.V_MAD_I64_I32)
|
|
v_add_co_u32 = functools.partial(VOP3SD, VOP3SDOp.V_ADD_CO_U32)
|
|
v_sub_co_u32 = functools.partial(VOP3SD, VOP3SDOp.V_SUB_CO_U32)
|
|
v_subrev_co_u32 = functools.partial(VOP3SD, VOP3SDOp.V_SUBREV_CO_U32)
|
|
v_cmp_f_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_F16)
|
|
v_cmp_lt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_F16)
|
|
v_cmp_eq_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_F16)
|
|
v_cmp_le_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_F16)
|
|
v_cmp_gt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_F16)
|
|
v_cmp_lg_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LG_F16)
|
|
v_cmp_ge_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_F16)
|
|
v_cmp_o_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_O_F16)
|
|
v_cmp_u_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_U_F16)
|
|
v_cmp_nge_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NGE_F16)
|
|
v_cmp_nlg_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLG_F16)
|
|
v_cmp_ngt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NGT_F16)
|
|
v_cmp_nle_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLE_F16)
|
|
v_cmp_neq_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NEQ_F16)
|
|
v_cmp_nlt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLT_F16)
|
|
v_cmp_t_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_F16)
|
|
v_cmp_f_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_F32)
|
|
v_cmp_lt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_F32)
|
|
v_cmp_eq_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_F32)
|
|
v_cmp_le_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_F32)
|
|
v_cmp_gt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_F32)
|
|
v_cmp_lg_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LG_F32)
|
|
v_cmp_ge_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_F32)
|
|
v_cmp_o_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_O_F32)
|
|
v_cmp_u_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_U_F32)
|
|
v_cmp_nge_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NGE_F32)
|
|
v_cmp_nlg_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLG_F32)
|
|
v_cmp_ngt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NGT_F32)
|
|
v_cmp_nle_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLE_F32)
|
|
v_cmp_neq_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NEQ_F32)
|
|
v_cmp_nlt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLT_F32)
|
|
v_cmp_t_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_F32)
|
|
v_cmp_f_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_F64)
|
|
v_cmp_lt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_F64)
|
|
v_cmp_eq_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_F64)
|
|
v_cmp_le_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_F64)
|
|
v_cmp_gt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_F64)
|
|
v_cmp_lg_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LG_F64)
|
|
v_cmp_ge_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_F64)
|
|
v_cmp_o_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_O_F64)
|
|
v_cmp_u_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_U_F64)
|
|
v_cmp_nge_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NGE_F64)
|
|
v_cmp_nlg_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLG_F64)
|
|
v_cmp_ngt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NGT_F64)
|
|
v_cmp_nle_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLE_F64)
|
|
v_cmp_neq_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NEQ_F64)
|
|
v_cmp_nlt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NLT_F64)
|
|
v_cmp_t_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_F64)
|
|
v_cmp_lt_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_I16)
|
|
v_cmp_eq_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_I16)
|
|
v_cmp_le_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_I16)
|
|
v_cmp_gt_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_I16)
|
|
v_cmp_ne_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NE_I16)
|
|
v_cmp_ge_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_I16)
|
|
v_cmp_lt_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_U16)
|
|
v_cmp_eq_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_U16)
|
|
v_cmp_le_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_U16)
|
|
v_cmp_gt_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_U16)
|
|
v_cmp_ne_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NE_U16)
|
|
v_cmp_ge_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_U16)
|
|
v_cmp_f_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_I32)
|
|
v_cmp_lt_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_I32)
|
|
v_cmp_eq_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_I32)
|
|
v_cmp_le_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_I32)
|
|
v_cmp_gt_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_I32)
|
|
v_cmp_ne_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NE_I32)
|
|
v_cmp_ge_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_I32)
|
|
v_cmp_t_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_I32)
|
|
v_cmp_f_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_U32)
|
|
v_cmp_lt_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_U32)
|
|
v_cmp_eq_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_U32)
|
|
v_cmp_le_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_U32)
|
|
v_cmp_gt_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_U32)
|
|
v_cmp_ne_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NE_U32)
|
|
v_cmp_ge_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_U32)
|
|
v_cmp_t_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_U32)
|
|
v_cmp_f_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_I64)
|
|
v_cmp_lt_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_I64)
|
|
v_cmp_eq_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_I64)
|
|
v_cmp_le_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_I64)
|
|
v_cmp_gt_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_I64)
|
|
v_cmp_ne_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NE_I64)
|
|
v_cmp_ge_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_I64)
|
|
v_cmp_t_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_I64)
|
|
v_cmp_f_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_F_U64)
|
|
v_cmp_lt_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LT_U64)
|
|
v_cmp_eq_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_EQ_U64)
|
|
v_cmp_le_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_LE_U64)
|
|
v_cmp_gt_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GT_U64)
|
|
v_cmp_ne_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_NE_U64)
|
|
v_cmp_ge_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_GE_U64)
|
|
v_cmp_t_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_T_U64)
|
|
v_cmp_class_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMP_CLASS_F16)
|
|
v_cmp_class_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMP_CLASS_F32)
|
|
v_cmp_class_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMP_CLASS_F64)
|
|
v_cmpx_f_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_F16)
|
|
v_cmpx_lt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_F16)
|
|
v_cmpx_eq_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_F16)
|
|
v_cmpx_le_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_F16)
|
|
v_cmpx_gt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_F16)
|
|
v_cmpx_lg_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LG_F16)
|
|
v_cmpx_ge_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_F16)
|
|
v_cmpx_o_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_O_F16)
|
|
v_cmpx_u_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_U_F16)
|
|
v_cmpx_nge_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NGE_F16)
|
|
v_cmpx_nlg_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLG_F16)
|
|
v_cmpx_ngt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NGT_F16)
|
|
v_cmpx_nle_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLE_F16)
|
|
v_cmpx_neq_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NEQ_F16)
|
|
v_cmpx_nlt_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLT_F16)
|
|
v_cmpx_t_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_F16)
|
|
v_cmpx_f_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_F32)
|
|
v_cmpx_lt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_F32)
|
|
v_cmpx_eq_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_F32)
|
|
v_cmpx_le_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_F32)
|
|
v_cmpx_gt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_F32)
|
|
v_cmpx_lg_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LG_F32)
|
|
v_cmpx_ge_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_F32)
|
|
v_cmpx_o_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_O_F32)
|
|
v_cmpx_u_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_U_F32)
|
|
v_cmpx_nge_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NGE_F32)
|
|
v_cmpx_nlg_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLG_F32)
|
|
v_cmpx_ngt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NGT_F32)
|
|
v_cmpx_nle_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLE_F32)
|
|
v_cmpx_neq_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NEQ_F32)
|
|
v_cmpx_nlt_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLT_F32)
|
|
v_cmpx_t_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_F32)
|
|
v_cmpx_f_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_F64)
|
|
v_cmpx_lt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_F64)
|
|
v_cmpx_eq_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_F64)
|
|
v_cmpx_le_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_F64)
|
|
v_cmpx_gt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_F64)
|
|
v_cmpx_lg_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LG_F64)
|
|
v_cmpx_ge_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_F64)
|
|
v_cmpx_o_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_O_F64)
|
|
v_cmpx_u_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_U_F64)
|
|
v_cmpx_nge_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NGE_F64)
|
|
v_cmpx_nlg_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLG_F64)
|
|
v_cmpx_ngt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NGT_F64)
|
|
v_cmpx_nle_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLE_F64)
|
|
v_cmpx_neq_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NEQ_F64)
|
|
v_cmpx_nlt_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NLT_F64)
|
|
v_cmpx_t_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_F64)
|
|
v_cmpx_lt_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_I16)
|
|
v_cmpx_eq_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_I16)
|
|
v_cmpx_le_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_I16)
|
|
v_cmpx_gt_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_I16)
|
|
v_cmpx_ne_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NE_I16)
|
|
v_cmpx_ge_i16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_I16)
|
|
v_cmpx_lt_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_U16)
|
|
v_cmpx_eq_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_U16)
|
|
v_cmpx_le_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_U16)
|
|
v_cmpx_gt_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_U16)
|
|
v_cmpx_ne_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NE_U16)
|
|
v_cmpx_ge_u16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_U16)
|
|
v_cmpx_f_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_I32)
|
|
v_cmpx_lt_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_I32)
|
|
v_cmpx_eq_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_I32)
|
|
v_cmpx_le_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_I32)
|
|
v_cmpx_gt_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_I32)
|
|
v_cmpx_ne_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NE_I32)
|
|
v_cmpx_ge_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_I32)
|
|
v_cmpx_t_i32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_I32)
|
|
v_cmpx_f_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_U32)
|
|
v_cmpx_lt_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_U32)
|
|
v_cmpx_eq_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_U32)
|
|
v_cmpx_le_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_U32)
|
|
v_cmpx_gt_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_U32)
|
|
v_cmpx_ne_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NE_U32)
|
|
v_cmpx_ge_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_U32)
|
|
v_cmpx_t_u32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_U32)
|
|
v_cmpx_f_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_I64)
|
|
v_cmpx_lt_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_I64)
|
|
v_cmpx_eq_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_I64)
|
|
v_cmpx_le_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_I64)
|
|
v_cmpx_gt_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_I64)
|
|
v_cmpx_ne_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NE_I64)
|
|
v_cmpx_ge_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_I64)
|
|
v_cmpx_t_i64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_I64)
|
|
v_cmpx_f_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_F_U64)
|
|
v_cmpx_lt_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LT_U64)
|
|
v_cmpx_eq_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_EQ_U64)
|
|
v_cmpx_le_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_LE_U64)
|
|
v_cmpx_gt_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GT_U64)
|
|
v_cmpx_ne_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_NE_U64)
|
|
v_cmpx_ge_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_GE_U64)
|
|
v_cmpx_t_u64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_T_U64)
|
|
v_cmpx_class_f16_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_CLASS_F16)
|
|
v_cmpx_class_f32_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_CLASS_F32)
|
|
v_cmpx_class_f64_e32 = functools.partial(VOPC, VOPCOp.V_CMPX_CLASS_F64)
|
|
v_dual_fmac_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_FMAC_F32)
|
|
v_dual_fmaak_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_FMAAK_F32)
|
|
v_dual_fmamk_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_FMAMK_F32)
|
|
v_dual_mul_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_MUL_F32)
|
|
v_dual_add_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_ADD_F32)
|
|
v_dual_sub_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_SUB_F32)
|
|
v_dual_subrev_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_SUBREV_F32)
|
|
v_dual_mul_dx9_zero_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_MUL_DX9_ZERO_F32)
|
|
v_dual_mov_b32 = functools.partial(VOPD, VOPDOp.V_DUAL_MOV_B32)
|
|
v_dual_cndmask_b32 = functools.partial(VOPD, VOPDOp.V_DUAL_CNDMASK_B32)
|
|
v_dual_max_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_MAX_F32)
|
|
v_dual_min_f32 = functools.partial(VOPD, VOPDOp.V_DUAL_MIN_F32)
|
|
v_dual_dot2acc_f32_f16 = functools.partial(VOPD, VOPDOp.V_DUAL_DOT2ACC_F32_F16)
|
|
v_dual_dot2acc_f32_bf16 = functools.partial(VOPD, VOPDOp.V_DUAL_DOT2ACC_F32_BF16)
|
|
v_dual_add_nc_u32 = functools.partial(VOPD, VOPDOp.V_DUAL_ADD_NC_U32)
|
|
v_dual_lshlrev_b32 = functools.partial(VOPD, VOPDOp.V_DUAL_LSHLREV_B32)
|
|
v_dual_and_b32 = functools.partial(VOPD, VOPDOp.V_DUAL_AND_B32)
|
|
|
|
VCC_LO = SrcEnum.VCC_LO
|
|
VCC_HI = SrcEnum.VCC_HI
|
|
NULL = SrcEnum.NULL
|
|
M0 = SrcEnum.M0
|
|
EXEC_LO = SrcEnum.EXEC_LO
|
|
EXEC_HI = SrcEnum.EXEC_HI
|
|
ZERO = SrcEnum.ZERO
|
|
DPP8FI = SrcEnum.DPP8FI
|
|
SHARED_BASE = SrcEnum.SHARED_BASE
|
|
SHARED_LIMIT = SrcEnum.SHARED_LIMIT
|
|
PRIVATE_BASE = SrcEnum.PRIVATE_BASE
|
|
PRIVATE_LIMIT = SrcEnum.PRIVATE_LIMIT
|
|
POS_HALF = SrcEnum.POS_HALF
|
|
NEG_HALF = SrcEnum.NEG_HALF
|
|
POS_ONE = SrcEnum.POS_ONE
|
|
NEG_ONE = SrcEnum.NEG_ONE
|
|
POS_TWO = SrcEnum.POS_TWO
|
|
NEG_TWO = SrcEnum.NEG_TWO
|
|
POS_FOUR = SrcEnum.POS_FOUR
|
|
NEG_FOUR = SrcEnum.NEG_FOUR
|
|
INV_2PI = SrcEnum.INV_2PI
|
|
VCCZ = SrcEnum.VCCZ
|
|
EXECZ = SrcEnum.EXECZ
|
|
SCC = SrcEnum.SCC
|
|
LDS_DIRECT = SrcEnum.LDS_DIRECT
|
|
OFF = NULL
|