v_mad_u64_u32 GPU Native ISA AMD Vector

V MAD U64 U32 Vector Arithmetic

v_mad_u64_u32

Multiply two unsigned integer inputs, add a third unsigned integer input, store the result into a 64-bit vector register and store the…

Encoding

Verified bit-level encoding data is not yet available for this instruction. The instruction-format classification below (VOP3) is well-documented and stable; exact per-target opcode/field bit positions have not yet been imported from a verified source.
Format VOP3
Execution Unit

Operands

Operand details have not yet been curated for this instruction.

GFX Target Compatibility

Per-target GFX compatibility has not yet been verified for this instruction.

In VOP3 the VCC destination may be an arbitrary SGPR-pair.

Related

More in Vector Arithmetic

Reference

AMDGPU / GFX ISA

Description

Multiply two unsigned integer inputs, add a third unsigned integer input, store the result into a 64-bit vector register and store the overflow/carryout into a scalar mask register.

Semantics

{ D1.u1, D0.u64 } = 65'B(65'U(S0.u32) * 65'U(S1.u32) + 65'U(S2.u64))

Example

v_mad_u64_u32 v[5:6], s6, s105, s105, s[6:7]

A real instruction accepted by the LLVM assembler, taken verbatim from LLVM's own AMDGPU MC test suite (gfx11). Not from an AMD document, and not authored here.

Sources