# 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