Syntax of gfx906 Instructions

Syntax of gfx906 Instructions#

Introduction#

This document describes the syntax of instructions specific to gfx906.

For a description of other gfx906 instructions see Syntax of Core GFX9 Instructions.

Notation#

Notation used in this document is explained here.

Overview#

An overview of generic syntax and other features of AMDGPU instructions may be found in this document.

Instructions#

VOP2#

INSTRUCTION                    DST       SRC0      SRC1       MODIFIERS
————————————————————————————————————————————————————————————————————————————————————————————————————
v_fmac_f32                     vdst,     src0,     vsrc1
v_fmac_f32_dpp                 vdst,     vsrc0:m,  vsrc1:m    dpp_ctrl row_mask bank_mask bound_ctrl
v_xnor_b32                     vdst,     src0,     vsrc1
v_xnor_b32_dpp                 vdst,     vsrc0,    vsrc1      dpp_ctrl row_mask bank_mask bound_ctrl
v_xnor_b32_sdwa                vdst,     src0:m,   src1:m     dst_sel dst_unused src0_sel src1_sel

VOP3#

INSTRUCTION                    DST       SRC0      SRC1           MODIFIERS
————————————————————————————————————————————————————————————————————————————
v_fmac_f32_e64                 vdst,     src0:m,   src1:m         clamp omod
v_xnor_b32_e64                 vdst,     src0,     src1

VOP3P#

INSTRUCTION            DST      SRC0        SRC1        SRC2           MODIFIERS
—————————————————————————————————————————————————————————————————————————————————————————————————
v_dot2_f32_f16         vdst,    src0:f16x2, src1:f16x2, src2:f32       neg_lo neg_hi clamp
v_dot2_i32_i16         vdst,    src0:i16x2, src1:i16x2, src2:i32       clamp
v_dot2_u32_u16         vdst,    src0:u16x2, src1:u16x2, src2:u32       clamp
v_dot4_i32_i8          vdst,    src0:i8x4,  src1:i8x4,  src2:i32       clamp
v_dot4_u32_u8          vdst,    src0:u8x4,  src1:u8x4,  src2:u32       clamp
v_dot8_i32_i4          vdst,    src0:i4x8,  src1:i4x8,  src2:i32       clamp
v_dot8_u32_u4          vdst,    src0:u4x8,  src1:u4x8,  src2:u32       clamp
v_fma_mix_f32          vdst,    src0:m:fx,  src1:m:fx,  src2:m:fx      m_op_sel m_op_sel_hi clamp
v_fma_mixhi_f16        vdst,    src0:m:fx,  src1:m:fx,  src2:m:fx      m_op_sel m_op_sel_hi clamp
v_fma_mixlo_f16        vdst,    src0:m:fx,  src1:m:fx,  src2:m:fx      m_op_sel m_op_sel_hi clamp