addr¶
Size: 1 dword.
Operands: v
addr¶
Size: 2 dwords.
Operands: v
data¶
Instruction input.
Size: 1 dword.
data¶
Instruction input.
Size: 2 dwords.
data¶
Instruction input.
Size: 3 dwords.
data¶
Instruction input.
Size: 4 dwords.
data0¶
Instruction input.
Size: 1 dword.
data0¶
Instruction input.
Size: 2 dwords.
data0¶
Instruction input.
Size: 3 dwords.
data0¶
Instruction input.
Size: 4 dwords.
data1¶
Instruction input.
Size: 1 dword.
data1¶
Instruction input.
Size: 2 dwords.
literal¶
Size: 1 dword.
Operands:
literal¶
Size: 1 dword.
Operands: imm16
saddr¶
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
saddr¶
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sbase¶
A 128-bit buffer resource constant for scalar memory operations which provides a base address, a size and a stride.
Size: 4 dwords.
sbase¶
A 64-bit base address for scalar memory operations.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sbase¶
This operand is ignored by H/W and flat_scratch is supplied instead.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
scale_src0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
scale_src1¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
sdata¶
Input data for an atomic instruction.
Optionally may serve as an output data:
If glc is specified, gets the memory value before the operation.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdata¶
Input data for an atomic instruction.
Optionally may serve as an output data:
If glc is specified, gets the memory value before the operation.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdata¶
Input data for an atomic instruction.
Optionally may serve as an output data:
If glc is specified, gets the memory value before the operation.
Size: 4 dwords.
sdata¶
Instruction output.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdata¶
Instruction output.
Size: 1 dword.
Operands: simm8
sdata¶
Instruction output.
Size: 16 dwords.
sdata¶
Instruction output.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdata¶
Instruction output.
Size: 4 dwords.
sdata¶
Instruction output.
Size: 8 dwords.
sdst¶
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec
sdst¶
Instruction output.
Size: 1 dword if wavefront size is 32, otherwise 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdst¶
Instruction output.
Size: 1 dword if wavefront size is 32, otherwise 2 dwords.
Operands: vcc
sdst¶
Instruction output.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdst¶
Instruction output.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec
sdst¶
Instruction output.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
sdst¶
Instruction output.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, exec
simm16¶
Size: 1 dword.
Operands: hwreg
simm16¶
Size: 1 dword.
Operands: imm16
simm16¶
Size: 1 dword.
Operands: label
simm16¶
Size: 1 dword.
Operands: sendmsg
simm16¶
Size: 1 dword.
Operands: waitcnt
simm16¶
Instruction output.
Size: 1 dword.
Operands: hwreg
soffset¶
An offset added to the base address to get memory address.
If offset is specified as a register, it supplies an unsigned byte offset.
If offset is specified as a 21-bit immediate, it supplies a signed byte offset.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0
soffset¶
An unsigned 20-bit offset added to the base address to get memory address.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0
soffset¶
An unsigned byte offset.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
src0¶
Instruction input.
Size: 1 dword.
Operands: a
src0¶
Instruction input.
Size: 1 dword.
Operands: v
src0¶
Instruction input.
Size: 1 dword.
src0¶
Instruction input.
Size: 1 dword.
Operands: v, lds_direct
src0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
src0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst, literal
src0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, lds_direct, fconst
src0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, lds_direct, fconst, literal
src0¶
Instruction input.
Size: 2 dwords.
src0¶
Instruction input.
Size: 2 dwords.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst
src0¶
Instruction input.
Size: 2 dwords.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst, literal
src0¶
Instruction input.
Size: 4 dwords.
src0¶
Instruction input.
Size: 8 dwords.
src0¶
attr0.x through attr63.w, parameter attribute and channel to be interpolated
src1¶
Instruction input.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0
src1¶
Instruction input.
Size: 1 dword.
src1¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
src1¶
Instruction input.
Size: 16 dwords.
Operands: v
src1¶
Instruction input.
Size: 2 dwords.
src1¶
Instruction input.
Size: 2 dwords.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst
src1¶
Instruction input.
Size: 4 dwords.
src1¶
Instruction input.
Size: 8 dwords.
src2¶
Instruction input.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
src2¶
Instruction input.
Size: 1 dword.
Operands: v
src2¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
src2¶
Instruction input.
Size: 16 dwords.
src2¶
Instruction input.
Size: 2 dwords.
src2¶
Instruction input.
Size: 2 dwords.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst
src2¶
Instruction input.
Size: 32 dwords.
src2¶
Instruction input.
Size: 4 dwords.
Operands: v
src2¶
Instruction input.
Size: 4 dwords.
src2¶
Instruction input.
Size: 8 dwords.
srsrc¶
Buffer resource constant which defines the address and characteristics of the buffer in memory.
Size: 4 dwords.
ssrc0¶
Instruction input.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
ssrc0¶
Instruction input.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst, literal
ssrc0¶
Instruction input.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
ssrc0¶
Instruction input.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst
ssrc0¶
Instruction input.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst, literal
ssrc1¶
Instruction input.
Size: 1 dword.
Operands:
ssrc1¶
Instruction input.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst, literal
ssrc1¶
Instruction input.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst
ssrc1¶
Instruction input.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst, literal
vaddr¶
This is an optional operand which may specify offset and/or index.
Size: 0, 1 or 2 dwords. Size is controlled by modifiers offen and idxen:
If only idxen is specified, this operand supplies an index. Size is 1 dword.
If only offen is specified, this operand supplies an offset. Size is 1 dword.
If both modifiers are specified, index is in the first register and offset is in the second. Size is 2 dwords.
If none of these modifiers are specified, this operand must be set to off.
Operands: v
vcc¶
Vector condition code.
Size: 1 dword.
Operands: vcc
vdata¶
Input data for an atomic instruction.
Optionally may serve as an output data:
If glc is specified, gets the memory value before the operation.
Size: 1 dword.
vdata¶
Input data for an atomic instruction.
Optionally may serve as an output data:
If glc is specified, gets the memory value before the operation.
Size: 2 dwords.
vdata¶
Input data for an atomic instruction.
Optionally may serve as an output data:
If glc is specified, gets the memory value before the operation.
Size: 4 dwords.
vdata¶
Instruction output.
Size: 1 dword.
vdata¶
Instruction output.
Size: 2 dwords.
vdata¶
Instruction output.
Size: 3 dwords.
vdata¶
Instruction output.
Size: 4 dwords.
vdst¶
Data returned by a 32-bit atomic flat instruction.
This is an optional operand. It must be used if and only if glc is specified.
Size: 1 dword.
vdst¶
Data returned by a 64-bit atomic flat instruction.
This is an optional operand. It must be used if and only if glc is specified.
Size: 2 dwords.
vdst¶
Instruction output.
Size: 1 dword.
Operands: a
vdst¶
Instruction output.
Size: 1 dword.
Operands: s, flat_scratch, xnack_mask, ttmp
vdst¶
Instruction output.
Size: 1 dword.
Operands: v
vdst¶
Instruction output.
Size: 1 dword.
vdst¶
Instruction output.
Size: 16 dwords.
Operands: v
vdst¶
Instruction output.
Size: 16 dwords.
vdst¶
Instruction output.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp
vdst¶
Instruction output.
Size: 2 dwords.
Operands: s, flat_scratch, xnack_mask, vcc, ttmp, exec
vdst¶
Instruction output.
Size: 2 dwords.
Operands: v
vdst¶
Instruction output.
Size: 2 dwords.
vdst¶
Instruction output.
Size: 3 dwords.
vdst¶
Instruction output.
Size: 32 dwords.
Operands: v
vdst¶
Instruction output.
Size: 32 dwords.
vdst¶
Instruction output.
Size: 4 dwords.
Operands: v
vdst¶
Instruction output.
Size: 4 dwords.
vdst¶
Instruction output.
Size: 6 dwords.
Operands: v
vdst¶
Instruction output.
Size: 8 dwords.
vsrc0¶
Instruction input.
Size: 1 dword.
Operands: a
vsrc0¶
Instruction input.
Size: 1 dword.
Operands: v
vsrc0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
vsrc0¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst, literal
vsrc0¶
Instruction input.
Size: 2 dwords.
Operands: v
vsrc0¶
Instruction input.
Size: 2 dwords.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, exec, vccz, execz, scc, fconst
vsrc1¶
Instruction input.
Size: 1 dword.
Operands: v
vsrc1¶
Instruction input.
Size: 1 dword.
Operands: v, s, flat_scratch, xnack_mask, vcc, ttmp, m0, exec, vccz, execz, scc, fconst
vsrc1¶
Instruction input.
Size: 2 dwords.
Operands: v
