Change-Id: Id6c074033b08058b739e056f06b40ee5735f8f00 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53863 Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com> Maintainer: Matt Sinclair <mattdsinclair@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com>
13026 lines
426 KiB
C++
13026 lines
426 KiB
C++
/*
|
|
* Copyright (c) 2015-2021 Advanced Micro Devices, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* For use for simulation and test purposes only
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without
|
|
* modification, are permitted provided that the following conditions are met:
|
|
*
|
|
* 1. Redistributions of source code must retain the above copyright notice,
|
|
* this list of conditions and the following disclaimer.
|
|
*
|
|
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
* this list of conditions and the following disclaimer in the documentation
|
|
* and/or other materials provided with the distribution.
|
|
*
|
|
* 3. Neither the name of the copyright holder nor the names of its
|
|
* contributors may be used to endorse or promote products derived from this
|
|
* software without specific prior written permission.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
|
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
* POSSIBILITY OF SUCH DAMAGE.
|
|
*/
|
|
|
|
#include <vector>
|
|
|
|
#include "arch/amdgpu/vega/gpu_decoder.hh"
|
|
#include "arch/amdgpu/vega/insts/gpu_static_inst.hh"
|
|
#include "arch/amdgpu/vega/insts/instructions.hh"
|
|
|
|
namespace gem5
|
|
{
|
|
|
|
namespace VegaISA
|
|
{
|
|
Decoder::Decoder()
|
|
{
|
|
} // Decoder
|
|
|
|
Decoder::~Decoder()
|
|
{
|
|
} // ~Decoder
|
|
|
|
/*
|
|
* These will probably have to be updated according to the Vega ISA manual:
|
|
* https://developer.amd.com/wp-content/resources/
|
|
* Vega_Shader_ISA_28July2017.pdf
|
|
*/
|
|
IsaDecodeMethod Decoder::tableDecodePrimary[] = {
|
|
&Decoder::decode_OP_VOP2__V_CNDMASK_B32,
|
|
&Decoder::decode_OP_VOP2__V_CNDMASK_B32,
|
|
&Decoder::decode_OP_VOP2__V_CNDMASK_B32,
|
|
&Decoder::decode_OP_VOP2__V_CNDMASK_B32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LEGACY_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LEGACY_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LEGACY_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LEGACY_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F32,
|
|
&Decoder::decode_OP_VOP2__V_MUL_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_I32_I24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MUL_HI_U32_U24,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U32,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U32,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U32,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I32,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I32,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I32,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I32,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B32,
|
|
&Decoder::decode_OP_VOP2__V_AND_B32,
|
|
&Decoder::decode_OP_VOP2__V_AND_B32,
|
|
&Decoder::decode_OP_VOP2__V_AND_B32,
|
|
&Decoder::decode_OP_VOP2__V_AND_B32,
|
|
&Decoder::decode_OP_VOP2__V_OR_B32,
|
|
&Decoder::decode_OP_VOP2__V_OR_B32,
|
|
&Decoder::decode_OP_VOP2__V_OR_B32,
|
|
&Decoder::decode_OP_VOP2__V_OR_B32,
|
|
&Decoder::decode_OP_VOP2__V_XOR_B32,
|
|
&Decoder::decode_OP_VOP2__V_XOR_B32,
|
|
&Decoder::decode_OP_VOP2__V_XOR_B32,
|
|
&Decoder::decode_OP_VOP2__V_XOR_B32,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F32,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F32,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADDC_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADDC_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADDC_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADDC_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBB_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBBREV_CO_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_F16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAC_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADMK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F16,
|
|
&Decoder::decode_OP_VOP2__V_MADAK_F16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U16,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LO_U16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LO_U16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LO_U16,
|
|
&Decoder::decode_OP_VOP2__V_MUL_LO_U16,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHLREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_LSHRREV_B16,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I16,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I16,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I16,
|
|
&Decoder::decode_OP_VOP2__V_ASHRREV_I16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_F16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_F16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_U16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I16,
|
|
&Decoder::decode_OP_VOP2__V_MAX_I16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_U16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I16,
|
|
&Decoder::decode_OP_VOP2__V_MIN_I16,
|
|
&Decoder::decode_OP_VOP2__V_LDEXP_F16,
|
|
&Decoder::decode_OP_VOP2__V_LDEXP_F16,
|
|
&Decoder::decode_OP_VOP2__V_LDEXP_F16,
|
|
&Decoder::decode_OP_VOP2__V_LDEXP_F16,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U32,
|
|
&Decoder::decode_OP_VOP2__V_ADD_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUB_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U32,
|
|
&Decoder::decode_OP_VOP2__V_SUBREV_U32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_VOPC,
|
|
&Decoder::subDecode_OP_VOPC,
|
|
&Decoder::subDecode_OP_VOPC,
|
|
&Decoder::subDecode_OP_VOPC,
|
|
&Decoder::subDecode_OP_VOP1,
|
|
&Decoder::subDecode_OP_VOP1,
|
|
&Decoder::subDecode_OP_VOP1,
|
|
&Decoder::subDecode_OP_VOP1,
|
|
&Decoder::decode_OP_SOP2__S_ADD_U32,
|
|
&Decoder::decode_OP_SOP2__S_SUB_U32,
|
|
&Decoder::decode_OP_SOP2__S_ADD_I32,
|
|
&Decoder::decode_OP_SOP2__S_SUB_I32,
|
|
&Decoder::decode_OP_SOP2__S_ADDC_U32,
|
|
&Decoder::decode_OP_SOP2__S_SUBB_U32,
|
|
&Decoder::decode_OP_SOP2__S_MIN_I32,
|
|
&Decoder::decode_OP_SOP2__S_MIN_U32,
|
|
&Decoder::decode_OP_SOP2__S_MAX_I32,
|
|
&Decoder::decode_OP_SOP2__S_MAX_U32,
|
|
&Decoder::decode_OP_SOP2__S_CSELECT_B32,
|
|
&Decoder::decode_OP_SOP2__S_CSELECT_B64,
|
|
&Decoder::decode_OP_SOP2__S_AND_B32,
|
|
&Decoder::decode_OP_SOP2__S_AND_B64,
|
|
&Decoder::decode_OP_SOP2__S_OR_B32,
|
|
&Decoder::decode_OP_SOP2__S_OR_B64,
|
|
&Decoder::decode_OP_SOP2__S_XOR_B32,
|
|
&Decoder::decode_OP_SOP2__S_XOR_B64,
|
|
&Decoder::decode_OP_SOP2__S_ANDN2_B32,
|
|
&Decoder::decode_OP_SOP2__S_ANDN2_B64,
|
|
&Decoder::decode_OP_SOP2__S_ORN2_B32,
|
|
&Decoder::decode_OP_SOP2__S_ORN2_B64,
|
|
&Decoder::decode_OP_SOP2__S_NAND_B32,
|
|
&Decoder::decode_OP_SOP2__S_NAND_B64,
|
|
&Decoder::decode_OP_SOP2__S_NOR_B32,
|
|
&Decoder::decode_OP_SOP2__S_NOR_B64,
|
|
&Decoder::decode_OP_SOP2__S_XNOR_B32,
|
|
&Decoder::decode_OP_SOP2__S_XNOR_B64,
|
|
&Decoder::decode_OP_SOP2__S_LSHL_B32,
|
|
&Decoder::decode_OP_SOP2__S_LSHL_B64,
|
|
&Decoder::decode_OP_SOP2__S_LSHR_B32,
|
|
&Decoder::decode_OP_SOP2__S_LSHR_B64,
|
|
&Decoder::decode_OP_SOP2__S_ASHR_I32,
|
|
&Decoder::decode_OP_SOP2__S_ASHR_I64,
|
|
&Decoder::decode_OP_SOP2__S_BFM_B32,
|
|
&Decoder::decode_OP_SOP2__S_BFM_B64,
|
|
&Decoder::decode_OP_SOP2__S_MUL_I32,
|
|
&Decoder::decode_OP_SOP2__S_BFE_U32,
|
|
&Decoder::decode_OP_SOP2__S_BFE_I32,
|
|
&Decoder::decode_OP_SOP2__S_BFE_U64,
|
|
&Decoder::decode_OP_SOP2__S_BFE_I64,
|
|
&Decoder::decode_OP_SOP2__S_CBRANCH_G_FORK,
|
|
&Decoder::decode_OP_SOP2__S_ABSDIFF_I32,
|
|
&Decoder::decode_OP_SOP2__S_RFE_RESTORE_B64,
|
|
&Decoder::decode_OP_SOP2__S_MUL_HI_U32,
|
|
&Decoder::decode_OP_SOP2__S_MUL_HI_I32,
|
|
&Decoder::decode_OP_SOP2__S_LSHL1_ADD_U32,
|
|
&Decoder::decode_OP_SOP2__S_LSHL2_ADD_U32,
|
|
&Decoder::decode_OP_SOP2__S_LSHL3_ADD_U32,
|
|
&Decoder::decode_OP_SOP2__S_LSHL4_ADD_U32,
|
|
&Decoder::decode_OP_SOP2__S_PACK_LL_B32_B16,
|
|
&Decoder::decode_OP_SOP2__S_PACK_LH_B32_B16,
|
|
&Decoder::decode_OP_SOP2__S_HH_B32_B16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SOPK__S_MOVK_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMOVK_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_EQ_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_LG_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_GT_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_GE_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_LT_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_LE_I32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_EQ_U32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_LG_U32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_GT_U32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_GE_U32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_LT_U32,
|
|
&Decoder::decode_OP_SOPK__S_CMPK_LE_U32,
|
|
&Decoder::decode_OP_SOPK__S_ADDK_I32,
|
|
&Decoder::decode_OP_SOPK__S_MULK_I32,
|
|
&Decoder::decode_OP_SOPK__S_CBRANCH_I_FORK,
|
|
&Decoder::decode_OP_SOPK__S_GETREG_B32,
|
|
&Decoder::decode_OP_SOPK__S_SETREG_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SOPK__S_SETREG_IMM32_B32,
|
|
&Decoder::decode_OP_SOPK__S_CALL_B64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_SOP1,
|
|
&Decoder::subDecode_OP_SOPC,
|
|
&Decoder::subDecode_OP_SOPP,
|
|
&Decoder::subDecode_OP_SMEM,
|
|
&Decoder::subDecode_OP_SMEM,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_OP_EXP,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OPU_VOP3,
|
|
&Decoder::subDecode_OPU_VOP3,
|
|
&Decoder::subDecode_OPU_VOP3,
|
|
&Decoder::subDecode_OPU_VOP3,
|
|
&Decoder::subDecode_OPU_VOP3,
|
|
&Decoder::subDecode_OPU_VOP3,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_VOP3P,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_VINTRP,
|
|
&Decoder::subDecode_OP_DS,
|
|
&Decoder::subDecode_OP_DS,
|
|
&Decoder::subDecode_OP_DS,
|
|
&Decoder::subDecode_OP_DS,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_FLAT,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_FLAT,
|
|
&Decoder::subDecode_OP_FLAT,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_MUBUF,
|
|
&Decoder::subDecode_OP_MUBUF,
|
|
&Decoder::subDecode_OP_MUBUF,
|
|
&Decoder::subDecode_OP_MUBUF,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::subDecode_OP_MTBUF,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::subDecode_OP_MIMG,
|
|
&Decoder::subDecode_OP_MIMG,
|
|
&Decoder::subDecode_OP_MIMG,
|
|
&Decoder::subDecode_OP_MIMG,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OPU_VOP3[] = {
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_CLASS_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_CLASS_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_CLASS_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_CLASS_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_CLASS_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_CLASS_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LG_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_O_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_U_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NGE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLG_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NGT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NEQ_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_TRU_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LG_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_O_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_U_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NGE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLG_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NGT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NEQ_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_TRU_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LG_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_O_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_U_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NGE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLG_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NGT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NEQ_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_TRU_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LG_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_O_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_U_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NGE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLG_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NGT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NEQ_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_TRU_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LG_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_O_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_U_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NGE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLG_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NGT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NEQ_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NLT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_TRU_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LG_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_O_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_U_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NGE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLG_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NGT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NEQ_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NLT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_TRU_F64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NE_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_T_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NE_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_T_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NE_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_T_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NE_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_T_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_T_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_T_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_T_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_T_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NE_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_T_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_F_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LT_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_EQ_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_LE_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GT_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_NE_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_GE_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMP_T_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NE_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_T_I64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_F_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LT_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_EQ_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_LE_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GT_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_NE_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_GE_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CMPX_T_U64,
|
|
&Decoder::decode_OPU_VOP3__V_CNDMASK_B32,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_F32,
|
|
&Decoder::decode_OPU_VOP3__V_SUB_F32,
|
|
&Decoder::decode_OPU_VOP3__V_SUBREV_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_LEGACY_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_I32_I24,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_HI_I32_I24,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_U32_U24,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_HI_U32_U24,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_I32,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_I32,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_U32,
|
|
&Decoder::decode_OPU_VOP3__V_LSHRREV_B32,
|
|
&Decoder::decode_OPU_VOP3__V_ASHRREV_I32,
|
|
&Decoder::decode_OPU_VOP3__V_LSHLREV_B32,
|
|
&Decoder::decode_OPU_VOP3__V_AND_B32,
|
|
&Decoder::decode_OPU_VOP3__V_OR_B32,
|
|
&Decoder::decode_OPU_VOP3__V_XOR_B32,
|
|
&Decoder::decode_OPU_VOP3__V_MAC_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_CO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_SUB_CO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_SUBREV_CO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_ADDC_CO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_SUBB_CO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_SUBBREV_CO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_F16,
|
|
&Decoder::decode_OPU_VOP3__V_SUB_F16,
|
|
&Decoder::decode_OPU_VOP3__V_SUBREV_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MAC_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_U16,
|
|
&Decoder::decode_OPU_VOP3__V_SUB_U16,
|
|
&Decoder::decode_OPU_VOP3__V_SUBREV_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_LO_U16,
|
|
&Decoder::decode_OPU_VOP3__V_LSHLREV_B16,
|
|
&Decoder::decode_OPU_VOP3__V_LSHRREV_B16,
|
|
&Decoder::decode_OPU_VOP3__V_ASHRREV_I16,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_I16,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_I16,
|
|
&Decoder::decode_OPU_VOP3__V_LDEXP_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_NOP,
|
|
&Decoder::decode_OPU_VOP3__V_MOV_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_I32_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F64_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_I32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_U32_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_I32_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MOV_FED_B32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F16_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_RPI_I32_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_FLR_I32_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_OFF_F32_I4,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F64_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE0,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE1,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE2,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE3,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_U32_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F64_U32,
|
|
&Decoder::decode_OPU_VOP3__V_TRUNC_F64,
|
|
&Decoder::decode_OPU_VOP3__V_CEIL_F64,
|
|
&Decoder::decode_OPU_VOP3__V_RNDNE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_FLOOR_F64,
|
|
&Decoder::decode_OPU_VOP3__V_FRACT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_TRUNC_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CEIL_F32,
|
|
&Decoder::decode_OPU_VOP3__V_RNDNE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_FLOOR_F32,
|
|
&Decoder::decode_OPU_VOP3__V_EXP_F32,
|
|
&Decoder::decode_OPU_VOP3__V_LOG_F32,
|
|
&Decoder::decode_OPU_VOP3__V_RCP_F32,
|
|
&Decoder::decode_OPU_VOP3__V_RCP_IFLAG_F32,
|
|
&Decoder::decode_OPU_VOP3__V_RSQ_F32,
|
|
&Decoder::decode_OPU_VOP3__V_RCP_F64,
|
|
&Decoder::decode_OPU_VOP3__V_RSQ_F64,
|
|
&Decoder::decode_OPU_VOP3__V_SQRT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_SQRT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_SIN_F32,
|
|
&Decoder::decode_OPU_VOP3__V_COS_F32,
|
|
&Decoder::decode_OPU_VOP3__V_NOT_B32,
|
|
&Decoder::decode_OPU_VOP3__V_BFREV_B32,
|
|
&Decoder::decode_OPU_VOP3__V_FFBH_U32,
|
|
&Decoder::decode_OPU_VOP3__V_FFBL_B32,
|
|
&Decoder::decode_OPU_VOP3__V_FFBH_I32,
|
|
&Decoder::decode_OPU_VOP3__V_FREXP_EXP_I32_F64,
|
|
&Decoder::decode_OPU_VOP3__V_FREXP_MANT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_FRACT_F64,
|
|
&Decoder::decode_OPU_VOP3__V_FREXP_EXP_I32_F32,
|
|
&Decoder::decode_OPU_VOP3__V_FREXP_MANT_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CLREXCP,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F16_U16,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_F16_I16,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_U16_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_I16_F16,
|
|
&Decoder::decode_OPU_VOP3__V_RCP_F16,
|
|
&Decoder::decode_OPU_VOP3__V_SQRT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_RSQ_F16,
|
|
&Decoder::decode_OPU_VOP3__V_LOG_F16,
|
|
&Decoder::decode_OPU_VOP3__V_EXP_F16,
|
|
&Decoder::decode_OPU_VOP3__V_FREXP_MANT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_FREXP_EXP_I16_F16,
|
|
&Decoder::decode_OPU_VOP3__V_FLOOR_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CEIL_F16,
|
|
&Decoder::decode_OPU_VOP3__V_TRUNC_F16,
|
|
&Decoder::decode_OPU_VOP3__V_RNDNE_F16,
|
|
&Decoder::decode_OPU_VOP3__V_FRACT_F16,
|
|
&Decoder::decode_OPU_VOP3__V_SIN_F16,
|
|
&Decoder::decode_OPU_VOP3__V_COS_F16,
|
|
&Decoder::decode_OPU_VOP3__V_EXP_LEGACY_F32,
|
|
&Decoder::decode_OPU_VOP3__V_LOG_LEGACY_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_LEGACY_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_I32_I24,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_U32_U24,
|
|
&Decoder::decode_OPU_VOP3__V_CUBEID_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CUBESC_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CUBETC_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CUBEMA_F32,
|
|
&Decoder::decode_OPU_VOP3__V_BFE_U32,
|
|
&Decoder::decode_OPU_VOP3__V_BFE_I32,
|
|
&Decoder::decode_OPU_VOP3__V_BFI_B32,
|
|
&Decoder::decode_OPU_VOP3__V_FMA_F32,
|
|
&Decoder::decode_OPU_VOP3__V_FMA_F64,
|
|
&Decoder::decode_OPU_VOP3__V_LERP_U8,
|
|
&Decoder::decode_OPU_VOP3__V_ALIGNBIT_B32,
|
|
&Decoder::decode_OPU_VOP3__V_ALIGNBYTE_B32,
|
|
&Decoder::decode_OPU_VOP3__V_MIN3_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MIN3_I32,
|
|
&Decoder::decode_OPU_VOP3__V_MIN3_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MAX3_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MAX3_I32,
|
|
&Decoder::decode_OPU_VOP3__V_MAX3_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MED3_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MED3_I32,
|
|
&Decoder::decode_OPU_VOP3__V_MED3_U32,
|
|
&Decoder::decode_OPU_VOP3__V_SAD_U8,
|
|
&Decoder::decode_OPU_VOP3__V_SAD_HI_U8,
|
|
&Decoder::decode_OPU_VOP3__V_SAD_U16,
|
|
&Decoder::decode_OPU_VOP3__V_SAD_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PK_U8_F32,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F32,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F64,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_SCALE_F32,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_SCALE_F64,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_FMAS_F32,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_FMAS_F64,
|
|
&Decoder::decode_OPU_VOP3__V_MSAD_U8,
|
|
&Decoder::decode_OPU_VOP3__V_QSAD_PK_U16_U8,
|
|
&Decoder::decode_OPU_VOP3__V_MQSAD_PK_U16_U8,
|
|
&Decoder::decode_OPU_VOP3__V_MQSAD_U32_U8,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_U64_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_I64_I32,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_I16,
|
|
&Decoder::decode_OPU_VOP3__V_PERM_B32,
|
|
&Decoder::decode_OPU_VOP3__V_FMA_F16,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F16,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PKACCUM_U8_F32,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_U32_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_I32_I16,
|
|
&Decoder::decode_OPU_VOP3__V_XAD_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MIN3_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MIN3_I16,
|
|
&Decoder::decode_OPU_VOP3__V_MIN3_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MAX3_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MAX3_I16,
|
|
&Decoder::decode_OPU_VOP3__V_MAX3_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MED3_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MED3_I16,
|
|
&Decoder::decode_OPU_VOP3__V_MED3_U16,
|
|
&Decoder::decode_OPU_VOP3__V_LSHL_ADD_U32,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_LSHL_U32,
|
|
&Decoder::decode_OPU_VOP3__V_ADD3_U32,
|
|
&Decoder::decode_OPU_VOP3__V_LSHL_OR_B32,
|
|
&Decoder::decode_OPU_VOP3__V_AND_OR_B32,
|
|
&Decoder::decode_OPU_VOP3__V_OR3_B32,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_F16,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_U16,
|
|
&Decoder::decode_OPU_VOP3__V_MAD_I16,
|
|
&Decoder::decode_OPU_VOP3__V_FMA_F16,
|
|
&Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_P1_F32,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_P2_F32,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_MOV_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_P1LL_F16,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_P1LV_F16,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_P2_LEGACY_F16,
|
|
&Decoder::decode_OPU_VOP3__V_INTERP_P2_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_F64,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_F64,
|
|
&Decoder::decode_OPU_VOP3__V_MIN_F64,
|
|
&Decoder::decode_OPU_VOP3__V_MAX_F64,
|
|
&Decoder::decode_OPU_VOP3__V_LDEXP_F64,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_LO_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_HI_U32,
|
|
&Decoder::decode_OPU_VOP3__V_MUL_HI_I32,
|
|
&Decoder::decode_OPU_VOP3__V_LDEXP_F32,
|
|
&Decoder::decode_OPU_VOP3__V_READLANE_B32,
|
|
&Decoder::decode_OPU_VOP3__V_WRITELANE_B32,
|
|
&Decoder::decode_OPU_VOP3__V_BCNT_U32_B32,
|
|
&Decoder::decode_OPU_VOP3__V_MBCNT_LO_U32_B32,
|
|
&Decoder::decode_OPU_VOP3__V_MBCNT_HI_U32_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OPU_VOP3__V_LSHLREV_B64,
|
|
&Decoder::decode_OPU_VOP3__V_LSHRREV_B64,
|
|
&Decoder::decode_OPU_VOP3__V_ASHRREV_I64,
|
|
&Decoder::decode_OPU_VOP3__V_TRIG_PREOP_F64,
|
|
&Decoder::decode_OPU_VOP3__V_BFM_B32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PKNORM_I16_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PKNORM_U16_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PKRTZ_F16_F32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PK_U16_U32,
|
|
&Decoder::decode_OPU_VOP3__V_CVT_PK_I16_I32,
|
|
&Decoder::decode_OPU_VOP3__V_PKNORM_I16_F16,
|
|
&Decoder::decode_OPU_VOP3__V_PKNORM_U16_F16,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_I32,
|
|
&Decoder::decode_OPU_VOP3__V_SUB_I32,
|
|
&Decoder::decode_OPU_VOP3__V_ADD_I16,
|
|
&Decoder::decode_OPU_VOP3__V_SUB_I16,
|
|
&Decoder::decode_OPU_VOP3__V_PACK_B32_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_DS[] = {
|
|
&Decoder::decode_OP_DS__DS_ADD_U32,
|
|
&Decoder::decode_OP_DS__DS_SUB_U32,
|
|
&Decoder::decode_OP_DS__DS_RSUB_U32,
|
|
&Decoder::decode_OP_DS__DS_INC_U32,
|
|
&Decoder::decode_OP_DS__DS_DEC_U32,
|
|
&Decoder::decode_OP_DS__DS_MIN_I32,
|
|
&Decoder::decode_OP_DS__DS_MAX_I32,
|
|
&Decoder::decode_OP_DS__DS_MIN_U32,
|
|
&Decoder::decode_OP_DS__DS_MAX_U32,
|
|
&Decoder::decode_OP_DS__DS_AND_B32,
|
|
&Decoder::decode_OP_DS__DS_OR_B32,
|
|
&Decoder::decode_OP_DS__DS_XOR_B32,
|
|
&Decoder::decode_OP_DS__DS_MSKOR_B32,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B32,
|
|
&Decoder::decode_OP_DS__DS_WRITE2_B32,
|
|
&Decoder::decode_OP_DS__DS_WRITE2ST64_B32,
|
|
&Decoder::decode_OP_DS__DS_CMPST_B32,
|
|
&Decoder::decode_OP_DS__DS_CMPST_F32,
|
|
&Decoder::decode_OP_DS__DS_MIN_F32,
|
|
&Decoder::decode_OP_DS__DS_MAX_F32,
|
|
&Decoder::decode_OP_DS__DS_NOP,
|
|
&Decoder::decode_OP_DS__DS_ADD_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_WRITE_ADDTID_B32,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B8,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B16,
|
|
&Decoder::decode_OP_DS__DS_ADD_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_SUB_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_RSUB_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_INC_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_DEC_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_MIN_RTN_I32,
|
|
&Decoder::decode_OP_DS__DS_MAX_RTN_I32,
|
|
&Decoder::decode_OP_DS__DS_MIN_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_MAX_RTN_U32,
|
|
&Decoder::decode_OP_DS__DS_AND_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_OR_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_XOR_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_MSKOR_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_WRXCHG_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_WRXCHG2_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_WRXCHG2ST64_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_CMPST_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_CMPST_RTN_F32,
|
|
&Decoder::decode_OP_DS__DS_MIN_RTN_F32,
|
|
&Decoder::decode_OP_DS__DS_MAX_RTN_F32,
|
|
&Decoder::decode_OP_DS__DS_WRAP_RTN_B32,
|
|
&Decoder::decode_OP_DS__DS_ADD_RTN_F32,
|
|
&Decoder::decode_OP_DS__DS_READ_B32,
|
|
&Decoder::decode_OP_DS__DS_READ2_B32,
|
|
&Decoder::decode_OP_DS__DS_READ2ST64_B32,
|
|
&Decoder::decode_OP_DS__DS_READ_I8,
|
|
&Decoder::decode_OP_DS__DS_READ_U8,
|
|
&Decoder::decode_OP_DS__DS_READ_I16,
|
|
&Decoder::decode_OP_DS__DS_READ_U16,
|
|
&Decoder::decode_OP_DS__DS_SWIZZLE_B32,
|
|
&Decoder::decode_OP_DS__DS_PERMUTE_B32,
|
|
&Decoder::decode_OP_DS__DS_BPERMUTE_B32,
|
|
&Decoder::decode_OP_DS__DS_ADD_U64,
|
|
&Decoder::decode_OP_DS__DS_SUB_U64,
|
|
&Decoder::decode_OP_DS__DS_RSUB_U64,
|
|
&Decoder::decode_OP_DS__DS_INC_U64,
|
|
&Decoder::decode_OP_DS__DS_DEC_U64,
|
|
&Decoder::decode_OP_DS__DS_MIN_I64,
|
|
&Decoder::decode_OP_DS__DS_MAX_I64,
|
|
&Decoder::decode_OP_DS__DS_MIN_U64,
|
|
&Decoder::decode_OP_DS__DS_MAX_U64,
|
|
&Decoder::decode_OP_DS__DS_AND_B64,
|
|
&Decoder::decode_OP_DS__DS_OR_B64,
|
|
&Decoder::decode_OP_DS__DS_XOR_B64,
|
|
&Decoder::decode_OP_DS__DS_MSKOR_B64,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B64,
|
|
&Decoder::decode_OP_DS__DS_WRITE2_B64,
|
|
&Decoder::decode_OP_DS__DS_WRITE2ST64_B64,
|
|
&Decoder::decode_OP_DS__DS_CMPST_B64,
|
|
&Decoder::decode_OP_DS__DS_CMPST_F64,
|
|
&Decoder::decode_OP_DS__DS_MIN_F64,
|
|
&Decoder::decode_OP_DS__DS_MAX_F64,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B8_D16_HI,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B16_D16_HI,
|
|
&Decoder::decode_OP_DS__DS_READ_U8_D16,
|
|
&Decoder::decode_OP_DS__DS_READ_U8_D16_HI,
|
|
&Decoder::decode_OP_DS__DS_READ_I8_D16,
|
|
&Decoder::decode_OP_DS__DS_READ_I8_D16_HI,
|
|
&Decoder::decode_OP_DS__DS_READ_U16_D16,
|
|
&Decoder::decode_OP_DS__DS_READ_U16_D16_HI,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_ADD_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_SUB_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_RSUB_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_INC_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_DEC_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_MIN_RTN_I64,
|
|
&Decoder::decode_OP_DS__DS_MAX_RTN_I64,
|
|
&Decoder::decode_OP_DS__DS_MIN_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_MAX_RTN_U64,
|
|
&Decoder::decode_OP_DS__DS_AND_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_OR_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_XOR_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_MSKOR_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_WRXCHG_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_WRXCHG2_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_WRXCHG2ST64_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_CMPST_RTN_B64,
|
|
&Decoder::decode_OP_DS__DS_CMPST_RTN_F64,
|
|
&Decoder::decode_OP_DS__DS_MIN_RTN_F64,
|
|
&Decoder::decode_OP_DS__DS_MAX_RTN_F64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_READ_B64,
|
|
&Decoder::decode_OP_DS__DS_READ2_B64,
|
|
&Decoder::decode_OP_DS__DS_READ2ST64_B64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_CONDXCHG32_RTN_B64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_ADD_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_SUB_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_RSUB_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_INC_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_DEC_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_MIN_SRC2_I32,
|
|
&Decoder::decode_OP_DS__DS_MAX_SRC2_I32,
|
|
&Decoder::decode_OP_DS__DS_MIN_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_MAX_SRC2_U32,
|
|
&Decoder::decode_OP_DS__DS_AND_SRC2_B32,
|
|
&Decoder::decode_OP_DS__DS_OR_SRC2_B32,
|
|
&Decoder::decode_OP_DS__DS_XOR_SRC2_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_WRITE_SRC2_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_MIN_SRC2_F32,
|
|
&Decoder::decode_OP_DS__DS_MAX_SRC2_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_ADD_SRC2_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_GWS_SEMA_RELEASE_ALL,
|
|
&Decoder::decode_OP_DS__DS_GWS_INIT,
|
|
&Decoder::decode_OP_DS__DS_GWS_SEMA_V,
|
|
&Decoder::decode_OP_DS__DS_GWS_SEMA_BR,
|
|
&Decoder::decode_OP_DS__DS_GWS_SEMA_P,
|
|
&Decoder::decode_OP_DS__DS_GWS_BARRIER,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_READ_ADDTID_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_CONSUME,
|
|
&Decoder::decode_OP_DS__DS_APPEND,
|
|
&Decoder::decode_OP_DS__DS_ORDERED_COUNT,
|
|
&Decoder::decode_OP_DS__DS_ADD_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_SUB_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_RSUB_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_INC_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_DEC_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_MIN_SRC2_I64,
|
|
&Decoder::decode_OP_DS__DS_MAX_SRC2_I64,
|
|
&Decoder::decode_OP_DS__DS_MIN_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_MAX_SRC2_U64,
|
|
&Decoder::decode_OP_DS__DS_AND_SRC2_B64,
|
|
&Decoder::decode_OP_DS__DS_OR_SRC2_B64,
|
|
&Decoder::decode_OP_DS__DS_XOR_SRC2_B64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_WRITE_SRC2_B64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_MIN_SRC2_F64,
|
|
&Decoder::decode_OP_DS__DS_MAX_SRC2_F64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B96,
|
|
&Decoder::decode_OP_DS__DS_WRITE_B128,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_DS__DS_READ_B96,
|
|
&Decoder::decode_OP_DS__DS_READ_B128
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_FLAT[] = {
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_UBYTE,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_SBYTE,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_USHORT,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_SSHORT,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_DWORD,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_DWORDX3,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_BYTE,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_BYTE_D16_HI,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_SHORT,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_SHORT_D16_HI,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_DWORD,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_DWORDX2,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_DWORDX3,
|
|
&Decoder::decode_OP_FLAT__FLAT_STORE_DWORDX4,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_UBYTE_D16,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_UBYTE_D16_HI,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_SBYTE_D16,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_SBYTE_D16_HI,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_SHORT_D16,
|
|
&Decoder::decode_OP_FLAT__FLAT_LOAD_SHORT_D16_HI,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SWAP,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_CMPSWAP,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_ADD,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SUB,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMIN,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMIN,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMAX,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMAX,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_AND,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_OR,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_XOR,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_INC,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_DEC,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SWAP_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_CMPSWAP_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_ADD_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SUB_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMIN_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMIN_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMAX_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMAX_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_AND_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_OR_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_XOR_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_INC_X2,
|
|
&Decoder::decode_OP_FLAT__FLAT_ATOMIC_DEC_X2,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_GLOBAL[] = {
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_UBYTE,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SBYTE,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_USHORT,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SSHORT,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORD,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORDX3,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_BYTE,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_BYTE_D16_HI,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_SHORT,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_SHORT_D16_HI,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORD,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORDX2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORDX3,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORDX4,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_UBYTE_D16,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_UBYTE_D16_HI,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SBYTE_D16,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SBYTE_D16_HI,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SHORT_D16,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SHORT_D16_HI,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SWAP,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_CMPSWAP,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_ADD,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SUB,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMIN,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMIN,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMAX,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMAX,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_AND,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_OR,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_XOR,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_INC,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_DEC,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SWAP_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_CMPSWAP_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_ADD_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SUB_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMIN_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMIN_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMAX_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMAX_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_AND_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_OR_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_XOR_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_INC_X2,
|
|
&Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_DEC_X2,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_MIMG[] = {
|
|
&Decoder::decode_OP_MIMG__IMAGE_LOAD,
|
|
&Decoder::decode_OP_MIMG__IMAGE_LOAD_MIP,
|
|
&Decoder::decode_OP_MIMG__IMAGE_LOAD_PCK,
|
|
&Decoder::decode_OP_MIMG__IMAGE_LOAD_PCK_SGN,
|
|
&Decoder::decode_OP_MIMG__IMAGE_LOAD_MIP_PCK,
|
|
&Decoder::decode_OP_MIMG__IMAGE_LOAD_MIP_PCK_SGN,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_STORE,
|
|
&Decoder::decode_OP_MIMG__IMAGE_STORE_MIP,
|
|
&Decoder::decode_OP_MIMG__IMAGE_STORE_PCK,
|
|
&Decoder::decode_OP_MIMG__IMAGE_STORE_MIP_PCK,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GET_RESINFO,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SWAP,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_CMPSWAP,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_ADD,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SUB,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SMIN,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_UMIN,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SMAX,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_UMAX,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_AND,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_OR,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_XOR,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_INC,
|
|
&Decoder::decode_OP_MIMG__IMAGE_ATOMIC_DEC,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_L,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_LZ,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_L,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_LZ,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_L_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_LZ_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_L_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_LZ_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4H,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_L,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_B,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_B_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_LZ,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4H_PCK,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER8H_PCK,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_L,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_LZ,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_CL_O,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_L_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_B_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_B_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_LZ_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_CL_O,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_L_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_LZ_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_GET_LOD,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD_CL,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD_CL_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD_O,
|
|
&Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD_CL_O,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_MTBUF[] = {
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_X,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XY,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XYZ,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XYZW,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_X,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XY,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XYZ,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XYZW,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_X,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XY,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZ,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZW,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_X,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XY,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZ,
|
|
&Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZW
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_MUBUF[] = {
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_X,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XY,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XYZ,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XYZW,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_X,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_XY,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_XYZ,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_XYZW,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_X,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XY,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZ,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZW,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_X,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XY,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XYZ,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XYZW,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_UBYTE,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_SBYTE,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_USHORT,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_SSHORT,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORD,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORDX3,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_BYTE,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_BYTE_D16_HI,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_SHORT,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_SHORT_D16_HI,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORD,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORDX2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORDX3,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORDX4,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_UBYTE_D16,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_UBYTE_D16_HI,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_SBYTE_D16,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_SBYTE_D16_HI,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_SHORT_D16,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_SHORT_D16_HI,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_HI_X,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_HI_X,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_STORE_LDS_DWORD,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_WBINVL1,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_WBINVL1_VOL,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SWAP,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_CMPSWAP,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_ADD,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SUB,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMIN,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMIN,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMAX,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMAX,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_AND,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_OR,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_XOR,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_INC,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_DEC,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SWAP_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_CMPSWAP_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_ADD_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SUB_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMIN_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMIN_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMAX_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMAX_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_AND_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_OR_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_XOR_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_INC_X2,
|
|
&Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_DEC_X2,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_SCRATCH[] = {
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_UBYTE,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SBYTE,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_USHORT,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SSHORT,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORD,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORDX3,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_BYTE,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_BYTE_D16_HI,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_SHORT,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_SHORT_D16_HI,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORD,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORDX2,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORDX3,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORDX4,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_UBYTE_D16,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_UBYTE_D16_HI,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SBYTE_D16,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SBYTE_D16_HI,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SHORT_D16,
|
|
&Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SHORT_D16_HI,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_SMEM[] = {
|
|
&Decoder::decode_OP_SMEM__S_LOAD_DWORD,
|
|
&Decoder::decode_OP_SMEM__S_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_SMEM__S_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_SMEM__S_LOAD_DWORDX8,
|
|
&Decoder::decode_OP_SMEM__S_LOAD_DWORDX16,
|
|
&Decoder::decode_OP_SMEM__S_SCRATCH_LOAD_DWORD,
|
|
&Decoder::decode_OP_SMEM__S_SCRATCH_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_SMEM__S_SCRATCH_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORD,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX4,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX8,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_STORE_DWORD,
|
|
&Decoder::decode_OP_SMEM__S_STORE_DWORDX2,
|
|
&Decoder::decode_OP_SMEM__S_STORE_DWORDX4,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_SCRATCH_STORE_DWORD,
|
|
&Decoder::decode_OP_SMEM__S_SCRATCH_STORE_DWORDX2,
|
|
&Decoder::decode_OP_SMEM__S_SCRATCH_STORE_DWORDX4,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_STORE_DWORD,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_STORE_DWORDX2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_STORE_DWORDX4,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_DCACHE_INV,
|
|
&Decoder::decode_OP_SMEM__S_DCACHE_WB,
|
|
&Decoder::decode_OP_SMEM__S_DCACHE_INV_VOL,
|
|
&Decoder::decode_OP_SMEM__S_DCACHE_WB_VOL,
|
|
&Decoder::decode_OP_SMEM__S_MEMTIME,
|
|
&Decoder::decode_OP_SMEM__S_MEMREALTIME,
|
|
&Decoder::decode_OP_SMEM__S_ATC_PROBE,
|
|
&Decoder::decode_OP_SMEM__S_ATC_PROBE_BUFFER,
|
|
&Decoder::decode_OP_SMEM__S_DCACHE_DISCARD,
|
|
&Decoder::decode_OP_SMEM__S_DCACHE_DISCARD_X2,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SWAP,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_CMPSWAP,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_ADD,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SUB,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMIN,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMIN,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMAX,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMAX,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_AND,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_OR,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_XOR,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_INC,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_DEC,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SWAP_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_CMPSWAP_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_ADD_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SUB_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMIN_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMIN_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMAX_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMAX_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_AND_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_OR_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_XOR_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_INC_X2,
|
|
&Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_DEC_X2,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SWAP,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_CMPSWAP,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_ADD,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SUB,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SMIN,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_UMIN,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SMAX,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_UMAX,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_AND,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_OR,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_XOR,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_INC,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_DEC,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SWAP_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_CMPSWAP_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_ADD_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SUB_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SMIN_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_UMIN_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_SMAX_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_UMAX_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_AND_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_OR_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_XOR_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_INC_X2,
|
|
&Decoder::decode_OP_SMEM__S_ATOMIC_DEC_X2,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_SOP1[] = {
|
|
&Decoder::decode_OP_SOP1__S_MOV_B32,
|
|
&Decoder::decode_OP_SOP1__S_MOV_B64,
|
|
&Decoder::decode_OP_SOP1__S_CMOV_B32,
|
|
&Decoder::decode_OP_SOP1__S_CMOV_B64,
|
|
&Decoder::decode_OP_SOP1__S_NOT_B32,
|
|
&Decoder::decode_OP_SOP1__S_NOT_B64,
|
|
&Decoder::decode_OP_SOP1__S_WQM_B32,
|
|
&Decoder::decode_OP_SOP1__S_WQM_B64,
|
|
&Decoder::decode_OP_SOP1__S_BREV_B32,
|
|
&Decoder::decode_OP_SOP1__S_BREV_B64,
|
|
&Decoder::decode_OP_SOP1__S_BCNT0_I32_B32,
|
|
&Decoder::decode_OP_SOP1__S_BCNT0_I32_B64,
|
|
&Decoder::decode_OP_SOP1__S_BCNT1_I32_B32,
|
|
&Decoder::decode_OP_SOP1__S_BCNT1_I32_B64,
|
|
&Decoder::decode_OP_SOP1__S_FF0_I32_B32,
|
|
&Decoder::decode_OP_SOP1__S_FF0_I32_B64,
|
|
&Decoder::decode_OP_SOP1__S_FF1_I32_B32,
|
|
&Decoder::decode_OP_SOP1__S_FF1_I32_B64,
|
|
&Decoder::decode_OP_SOP1__S_FLBIT_I32_B32,
|
|
&Decoder::decode_OP_SOP1__S_FLBIT_I32_B64,
|
|
&Decoder::decode_OP_SOP1__S_FLBIT_I32,
|
|
&Decoder::decode_OP_SOP1__S_FLBIT_I32_I64,
|
|
&Decoder::decode_OP_SOP1__S_SEXT_I32_I8,
|
|
&Decoder::decode_OP_SOP1__S_SEXT_I32_I16,
|
|
&Decoder::decode_OP_SOP1__S_BITSET0_B32,
|
|
&Decoder::decode_OP_SOP1__S_BITSET0_B64,
|
|
&Decoder::decode_OP_SOP1__S_BITSET1_B32,
|
|
&Decoder::decode_OP_SOP1__S_BITSET1_B64,
|
|
&Decoder::decode_OP_SOP1__S_GETPC_B64,
|
|
&Decoder::decode_OP_SOP1__S_SETPC_B64,
|
|
&Decoder::decode_OP_SOP1__S_SWAPPC_B64,
|
|
&Decoder::decode_OP_SOP1__S_RFE_B64,
|
|
&Decoder::decode_OP_SOP1__S_AND_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_OR_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_XOR_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_ANDN2_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_ORN2_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_NAND_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_NOR_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_XNOR_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_QUADMASK_B32,
|
|
&Decoder::decode_OP_SOP1__S_QUADMASK_B64,
|
|
&Decoder::decode_OP_SOP1__S_MOVRELS_B32,
|
|
&Decoder::decode_OP_SOP1__S_MOVRELS_B64,
|
|
&Decoder::decode_OP_SOP1__S_MOVRELD_B32,
|
|
&Decoder::decode_OP_SOP1__S_MOVRELD_B64,
|
|
&Decoder::decode_OP_SOP1__S_CBRANCH_JOIN,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SOP1__S_ABS_I32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_SOP1__S_SET_GPR_IDX_IDX,
|
|
&Decoder::decode_OP_SOP1__S_ANDN1_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_ORN1_SAVEEXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_ANDN1_WREXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_ANDN2_WREXEC_B64,
|
|
&Decoder::decode_OP_SOP1__S_BITREPLICATE_B64_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_SOPC[] = {
|
|
&Decoder::decode_OP_SOPC__S_CMP_EQ_I32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LG_I32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_GT_I32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_GE_I32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LT_I32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LE_I32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_EQ_U32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LG_U32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_GT_U32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_GE_U32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LT_U32,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LE_U32,
|
|
&Decoder::decode_OP_SOPC__S_BITCMP0_B32,
|
|
&Decoder::decode_OP_SOPC__S_BITCMP1_B32,
|
|
&Decoder::decode_OP_SOPC__S_BITCMP0_B64,
|
|
&Decoder::decode_OP_SOPC__S_BITCMP1_B64,
|
|
&Decoder::decode_OP_SOPC__S_SETVSKIP,
|
|
&Decoder::decode_OP_SOPC__S_SET_GPR_IDX_ON,
|
|
&Decoder::decode_OP_SOPC__S_CMP_EQ_U64,
|
|
&Decoder::decode_OP_SOPC__S_CMP_LG_U64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_SOPP[] = {
|
|
&Decoder::decode_OP_SOPP__S_NOP,
|
|
&Decoder::decode_OP_SOPP__S_ENDPGM,
|
|
&Decoder::decode_OP_SOPP__S_BRANCH,
|
|
&Decoder::decode_OP_SOPP__S_WAKEUP,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_SCC0,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_SCC1,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_VCCZ,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_VCCNZ,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_EXECZ,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_EXECNZ,
|
|
&Decoder::decode_OP_SOPP__S_BARRIER,
|
|
&Decoder::decode_OP_SOPP__S_SETKILL,
|
|
&Decoder::decode_OP_SOPP__S_WAITCNT,
|
|
&Decoder::decode_OP_SOPP__S_SETHALT,
|
|
&Decoder::decode_OP_SOPP__S_SLEEP,
|
|
&Decoder::decode_OP_SOPP__S_SETPRIO,
|
|
&Decoder::decode_OP_SOPP__S_SENDMSG,
|
|
&Decoder::decode_OP_SOPP__S_SENDMSGHALT,
|
|
&Decoder::decode_OP_SOPP__S_TRAP,
|
|
&Decoder::decode_OP_SOPP__S_ICACHE_INV,
|
|
&Decoder::decode_OP_SOPP__S_INCPERFLEVEL,
|
|
&Decoder::decode_OP_SOPP__S_DECPERFLEVEL,
|
|
&Decoder::decode_OP_SOPP__S_TTRACEDATA,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_CDBGSYS,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_CDBGUSER,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_CDBGSYS_OR_USER,
|
|
&Decoder::decode_OP_SOPP__S_CBRANCH_CDBGSYS_AND_USER,
|
|
&Decoder::decode_OP_SOPP__S_ENDPGM_SAVED,
|
|
&Decoder::decode_OP_SOPP__S_SET_GPR_IDX_OFF,
|
|
&Decoder::decode_OP_SOPP__S_SET_GPR_IDX_MODE,
|
|
&Decoder::decode_OP_SOPP__S_ENDPGM_ORDERED_PS_DONE,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_VINTRP[] = {
|
|
&Decoder::decode_OP_VINTRP__V_INTERP_P1_F32,
|
|
&Decoder::decode_OP_VINTRP__V_INTERP_P2_F32,
|
|
&Decoder::decode_OP_VINTRP__V_INTERP_MOV_F32,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_VOP1[] = {
|
|
&Decoder::decode_OP_VOP1__V_NOP,
|
|
&Decoder::decode_OP_VOP1__V_MOV_B32,
|
|
&Decoder::decode_OP_VOP1__V_READFIRSTLANE_B32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_I32_F64,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F64_I32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_I32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_U32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_U32_F32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_I32_F32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F16_F32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_F16,
|
|
&Decoder::decode_OP_VOP1__V_CVT_RPI_I32_F32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_FLR_I32_F32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_OFF_F32_I4,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_F64,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F64_F32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE0,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE1,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE2,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE3,
|
|
&Decoder::decode_OP_VOP1__V_CVT_U32_F64,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F64_U32,
|
|
&Decoder::decode_OP_VOP1__V_TRUNC_F64,
|
|
&Decoder::decode_OP_VOP1__V_CEIL_F64,
|
|
&Decoder::decode_OP_VOP1__V_RNDNE_F64,
|
|
&Decoder::decode_OP_VOP1__V_FLOOR_F64,
|
|
&Decoder::decode_OP_VOP1__V_FRACT_F32,
|
|
&Decoder::decode_OP_VOP1__V_TRUNC_F32,
|
|
&Decoder::decode_OP_VOP1__V_CEIL_F32,
|
|
&Decoder::decode_OP_VOP1__V_RNDNE_F32,
|
|
&Decoder::decode_OP_VOP1__V_FLOOR_F32,
|
|
&Decoder::decode_OP_VOP1__V_EXP_F32,
|
|
&Decoder::decode_OP_VOP1__V_LOG_F32,
|
|
&Decoder::decode_OP_VOP1__V_RCP_F32,
|
|
&Decoder::decode_OP_VOP1__V_RCP_IFLAG_F32,
|
|
&Decoder::decode_OP_VOP1__V_RSQ_F32,
|
|
&Decoder::decode_OP_VOP1__V_RCP_F64,
|
|
&Decoder::decode_OP_VOP1__V_RSQ_F64,
|
|
&Decoder::decode_OP_VOP1__V_SQRT_F32,
|
|
&Decoder::decode_OP_VOP1__V_SQRT_F64,
|
|
&Decoder::decode_OP_VOP1__V_SIN_F32,
|
|
&Decoder::decode_OP_VOP1__V_COS_F32,
|
|
&Decoder::decode_OP_VOP1__V_NOT_B32,
|
|
&Decoder::decode_OP_VOP1__V_BFREV_B32,
|
|
&Decoder::decode_OP_VOP1__V_FFBH_U32,
|
|
&Decoder::decode_OP_VOP1__V_FFBL_B32,
|
|
&Decoder::decode_OP_VOP1__V_FFBH_I32,
|
|
&Decoder::decode_OP_VOP1__V_FREXP_EXP_I32_F64,
|
|
&Decoder::decode_OP_VOP1__V_FREXP_MANT_F64,
|
|
&Decoder::decode_OP_VOP1__V_FRACT_F64,
|
|
&Decoder::decode_OP_VOP1__V_FREXP_EXP_I32_F32,
|
|
&Decoder::decode_OP_VOP1__V_FREXP_MANT_F32,
|
|
&Decoder::decode_OP_VOP1__V_CLREXCP,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOP1__V_SCREEN_PARTITION_4SE_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F16_U16,
|
|
&Decoder::decode_OP_VOP1__V_CVT_F16_I16,
|
|
&Decoder::decode_OP_VOP1__V_CVT_U16_F16,
|
|
&Decoder::decode_OP_VOP1__V_CVT_I16_F16,
|
|
&Decoder::decode_OP_VOP1__V_RCP_F16,
|
|
&Decoder::decode_OP_VOP1__V_SQRT_F16,
|
|
&Decoder::decode_OP_VOP1__V_RSQ_F16,
|
|
&Decoder::decode_OP_VOP1__V_LOG_F16,
|
|
&Decoder::decode_OP_VOP1__V_EXP_F16,
|
|
&Decoder::decode_OP_VOP1__V_FREXP_MANT_F16,
|
|
&Decoder::decode_OP_VOP1__V_FREXP_EXP_I16_F16,
|
|
&Decoder::decode_OP_VOP1__V_FLOOR_F16,
|
|
&Decoder::decode_OP_VOP1__V_CEIL_F16,
|
|
&Decoder::decode_OP_VOP1__V_TRUNC_F16,
|
|
&Decoder::decode_OP_VOP1__V_RNDNE_F16,
|
|
&Decoder::decode_OP_VOP1__V_FRACT_F16,
|
|
&Decoder::decode_OP_VOP1__V_SIN_F16,
|
|
&Decoder::decode_OP_VOP1__V_COS_F16,
|
|
&Decoder::decode_OP_VOP1__V_EXP_LEGACY_F32,
|
|
&Decoder::decode_OP_VOP1__V_LOG_LEGACY_F32,
|
|
&Decoder::decode_OP_VOP1__V_CVT_NORM_I16_F16,
|
|
&Decoder::decode_OP_VOP1__V_CVT_NORM_U16_F16,
|
|
&Decoder::decode_OP_VOP1__V_SAT_PK_U8_I16,
|
|
&Decoder::decode_OP_VOP1__V_SWAP_B32,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_VOPC[] = {
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOPC__V_CMP_CLASS_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_CLASS_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_CLASS_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_CLASS_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_CLASS_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_CLASS_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LG_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_O_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_U_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NGE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLG_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NGT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NEQ_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_TRU_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LG_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_O_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_U_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NGE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLG_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NGT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLE_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NEQ_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLT_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_TRU_F16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LG_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_O_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_U_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NGE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLG_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NGT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NEQ_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_TRU_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LG_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_O_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_U_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NGE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLG_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NGT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLE_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NEQ_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLT_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_TRU_F32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LG_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_O_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_U_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NGE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLG_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NGT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NEQ_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NLT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_TRU_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LG_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_O_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_U_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NGE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLG_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NGT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLE_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NEQ_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NLT_F64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_TRU_F64,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NE_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_T_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NE_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_T_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NE_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_T_I16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NE_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_T_U16,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NE_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_T_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NE_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_T_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NE_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_T_I32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NE_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_T_U32,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NE_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_T_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_F_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LT_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_EQ_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_LE_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GT_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_NE_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_GE_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMP_T_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NE_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_T_I64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_F_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LT_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_EQ_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_LE_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GT_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_NE_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_GE_U64,
|
|
&Decoder::decode_OP_VOPC__V_CMPX_T_U64,
|
|
};
|
|
|
|
IsaDecodeMethod Decoder::tableSubDecode_OP_VOP3P[] = {
|
|
&Decoder::decode_OP_VOP3P__V_PK_MAD_I16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MUL_LO_U16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_ADD_I16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_SUB_I16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_LSHLREV_B16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_LSHRREV_B16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_ASHRREV_I16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MAX_I16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MIN_I16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MAD_U16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_ADD_U16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_SUB_U16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MAX_U16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MIN_U16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_FMA_F16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_ADD_F16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MUL_F16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MIN_F16,
|
|
&Decoder::decode_OP_VOP3P__V_PK_MAX_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_OP_VOP3P__V_MAD_MIX_F32,
|
|
&Decoder::decode_OP_VOP3P__V_MAD_MIXLO_F16,
|
|
&Decoder::decode_OP_VOP3P__V_MAD_MIXHI_F16,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
&Decoder::decode_invalid,
|
|
};
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode(MachInst mach_inst)
|
|
{
|
|
InFmt_SOP1 *enc = &mach_inst->iFmt_SOP1;
|
|
IsaDecodeMethod method = tableDecodePrimary[enc->ENCODING];
|
|
return (this->*method)(mach_inst);
|
|
} // decode
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_VOPC(MachInst iFmt)
|
|
{
|
|
InFmt_VOPC *enc = &iFmt->iFmt_VOPC;
|
|
IsaDecodeMethod method = tableSubDecode_OP_VOPC[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_VOPC
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_VOP3P(MachInst iFmt)
|
|
{
|
|
InFmt_VOP3P *enc = &iFmt->iFmt_VOP3P;
|
|
IsaDecodeMethod method = tableSubDecode_OP_VOP3P[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_VOP3P
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_VOP1(MachInst iFmt)
|
|
{
|
|
InFmt_VOP1 *enc = &iFmt->iFmt_VOP1;
|
|
IsaDecodeMethod method = tableSubDecode_OP_VOP1[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_VOP1
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_SOP1(MachInst iFmt)
|
|
{
|
|
InFmt_SOP1 *enc = &iFmt->iFmt_SOP1;
|
|
IsaDecodeMethod method = tableSubDecode_OP_SOP1[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_SOP1
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_SOPC(MachInst iFmt)
|
|
{
|
|
InFmt_SOPC *enc = &iFmt->iFmt_SOPC;
|
|
IsaDecodeMethod method = tableSubDecode_OP_SOPC[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_SOPC
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_SOPP(MachInst iFmt)
|
|
{
|
|
InFmt_SOPP *enc = &iFmt->iFmt_SOPP;
|
|
IsaDecodeMethod method = tableSubDecode_OP_SOPP[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_SOPP
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_SMEM(MachInst iFmt)
|
|
{
|
|
InFmt_SMEM *enc = &iFmt->iFmt_SMEM;
|
|
IsaDecodeMethod method = tableSubDecode_OP_SMEM[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_SMEM
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OPU_VOP3(MachInst iFmt)
|
|
{
|
|
InFmt_VOP3A *enc = &iFmt->iFmt_VOP3A;
|
|
IsaDecodeMethod method = tableSubDecode_OPU_VOP3[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OPU_VOP3
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_VINTRP(MachInst iFmt)
|
|
{
|
|
InFmt_VINTRP *enc = &iFmt->iFmt_VINTRP;
|
|
IsaDecodeMethod method = tableSubDecode_OP_VINTRP[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_VINTRP
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_DS(MachInst iFmt)
|
|
{
|
|
InFmt_DS *enc = &iFmt->iFmt_DS;
|
|
IsaDecodeMethod method = tableSubDecode_OP_DS[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_DS
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_FLAT(MachInst iFmt)
|
|
{
|
|
InFmt_FLAT *enc = &iFmt->iFmt_FLAT;
|
|
IsaDecodeMethod method;
|
|
switch (enc->SEG) {
|
|
case 0:
|
|
method = tableSubDecode_OP_FLAT[enc->OP];
|
|
break;
|
|
case 1:
|
|
method = tableSubDecode_OP_SCRATCH[enc->OP];
|
|
break;
|
|
case 2:
|
|
method = tableSubDecode_OP_GLOBAL[enc->OP];
|
|
break;
|
|
default:
|
|
fatal("Invalid SEG for FLAT encoding: %d\n", enc->SEG);
|
|
}
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_FLAT
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_MUBUF(MachInst iFmt)
|
|
{
|
|
InFmt_MUBUF *enc = &iFmt->iFmt_MUBUF;
|
|
IsaDecodeMethod method = tableSubDecode_OP_MUBUF[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_MUBUF
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_MTBUF(MachInst iFmt)
|
|
{
|
|
InFmt_MTBUF *enc = &iFmt->iFmt_MTBUF;
|
|
IsaDecodeMethod method = tableSubDecode_OP_MTBUF[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_MTBUF
|
|
|
|
GPUStaticInst*
|
|
Decoder::subDecode_OP_MIMG(MachInst iFmt)
|
|
{
|
|
InFmt_MIMG *enc = &iFmt->iFmt_MIMG;
|
|
IsaDecodeMethod method = tableSubDecode_OP_MIMG[enc->OP];
|
|
return (this->*method)(iFmt);
|
|
} // subDecode_OP_MIMG
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_CNDMASK_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_CNDMASK_B32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_CNDMASK_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ADD_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ADD_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ADD_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUB_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUB_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUB_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBREV_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBREV_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUBREV_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_LEGACY_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_I32_I24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_I32_I24(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_I32_I24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_HI_I32_I24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_HI_I32_I24(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_HI_I32_I24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_U32_U24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_U32_U24(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_U32_U24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_HI_U32_U24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_HI_U32_U24(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_HI_U32_U24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MIN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MIN_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MIN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAX_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAX_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAX_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MIN_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MIN_I32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MIN_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAX_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAX_I32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAX_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MIN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MIN_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MIN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAX_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAX_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAX_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_LSHRREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_LSHRREV_B32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_LSHRREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ASHRREV_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ASHRREV_I32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ASHRREV_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_LSHLREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_LSHLREV_B32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_LSHLREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_AND_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_AND_B32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_AND_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_OR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_OR_B32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_OR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_XOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_XOR_B32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_XOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAC_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAC_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAC_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MADMK_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MADMK_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MADMK_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MADAK_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MADAK_F32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MADAK_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ADD_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ADD_CO_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ADD_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUB_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUB_CO_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUB_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBREV_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBREV_CO_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUBREV_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ADDC_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ADDC_CO_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ADDC_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBB_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBB_CO_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUBB_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBBREV_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBBREV_CO_U32(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUBBREV_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ADD_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ADD_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ADD_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUB_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUB_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUB_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBREV_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBREV_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUBREV_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAC_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAC_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAC_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MADMK_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MADMK_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MADMK_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MADAK_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MADAK_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MADAK_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ADD_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ADD_U16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ADD_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUB_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUB_U16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUB_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBREV_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBREV_U16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_SUBREV_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MUL_LO_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MUL_LO_U16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MUL_LO_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_LSHLREV_B16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_LSHLREV_B16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_LSHLREV_B16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_LSHRREV_B16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_LSHRREV_B16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_LSHRREV_B16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ASHRREV_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ASHRREV_I16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_ASHRREV_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAX_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAX_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAX_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MIN_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MIN_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MIN_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAX_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAX_U16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAX_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MAX_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MAX_I16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MAX_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MIN_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MIN_U16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MIN_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_MIN_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_MIN_I16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_MIN_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_LDEXP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_LDEXP_F16(&iFmt->iFmt_VOP2);
|
|
} // decode_OP_VOP2__V_LDEXP_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_ADD_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_ADD_U32(&iFmt->iFmt_VOP2);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUB_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUB_U32(&iFmt->iFmt_VOP2);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP2__V_SUBREV_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP2__V_SUBREV_U32(&iFmt->iFmt_VOP2);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ADD_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ADD_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ADD_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_SUB_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_SUB_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_SUB_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ADD_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ADD_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ADD_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_SUB_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_SUB_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_SUB_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ADDC_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ADDC_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ADDC_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_SUBB_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_SUBB_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_SUBB_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MIN_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_MIN_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_MIN_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MIN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_MIN_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_MIN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MAX_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_MAX_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_MAX_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MAX_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_MAX_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_MAX_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_CSELECT_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_CSELECT_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_CSELECT_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_CSELECT_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_CSELECT_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_CSELECT_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_AND_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_AND_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_AND_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_AND_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_AND_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_AND_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_OR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_OR_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_OR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_OR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_OR_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_OR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_XOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_XOR_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_XOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_XOR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_XOR_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_XOR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ANDN2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ANDN2_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ANDN2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ANDN2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ANDN2_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ANDN2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ORN2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ORN2_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ORN2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ORN2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ORN2_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ORN2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_NAND_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_NAND_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_NAND_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_NAND_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_NAND_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_NAND_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_NOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_NOR_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_NOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_NOR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_NOR_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_NOR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_XNOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_XNOR_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_XNOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_XNOR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_XNOR_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_XNOR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHL_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_LSHL_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_LSHL_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHL_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_LSHL_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_LSHL_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_LSHR_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_LSHR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_LSHR_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_LSHR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ASHR_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ASHR_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ASHR_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ASHR_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ASHR_I64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ASHR_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_BFM_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_BFM_B32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_BFM_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_BFM_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_BFM_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_BFM_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MUL_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_MUL_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_MUL_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_BFE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_BFE_U32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_BFE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_BFE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_BFE_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_BFE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_BFE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_BFE_U64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_BFE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_BFE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_BFE_I64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_BFE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_CBRANCH_G_FORK(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_CBRANCH_G_FORK(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_CBRANCH_G_FORK
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_ABSDIFF_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_ABSDIFF_I32(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_ABSDIFF_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_RFE_RESTORE_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_RFE_RESTORE_B64(&iFmt->iFmt_SOP2);
|
|
} // decode_OP_SOP2__S_RFE_RESTORE_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MUL_HI_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_MUL_HI_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP2__S_MUL_I32(&iFmt->iFmt_SOP2);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHL1_ADD_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHL2_ADD_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHL3_ADD_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_LSHL4_ADD_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_PACK_LL_B32_B16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_PACK_LH_B32_B16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP2__S_HH_B32_B16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_MOVK_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_MOVK_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_MOVK_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMOVK_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMOVK_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMOVK_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_EQ_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_EQ_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_EQ_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_LG_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_LG_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_LG_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_GT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_GT_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_GT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_GE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_GE_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_GE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_LT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_LT_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_LT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_LE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_LE_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_LE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_EQ_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_EQ_U32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_EQ_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_LG_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_LG_U32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_LG_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_GT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_GT_U32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_GT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_GE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_GE_U32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_GE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_LT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_LT_U32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_LT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CMPK_LE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CMPK_LE_U32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CMPK_LE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_ADDK_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_ADDK_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_ADDK_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_MULK_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_MULK_I32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_MULK_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CBRANCH_I_FORK(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_CBRANCH_I_FORK(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_CBRANCH_I_FORK
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_GETREG_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_GETREG_B32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_GETREG_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_SETREG_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_SETREG_B32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_SETREG_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_SETREG_IMM32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPK__S_SETREG_IMM32_B32(&iFmt->iFmt_SOPK);
|
|
} // decode_OP_SOPK__S_SETREG_IMM32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPK__S_CALL_B64(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_EXP(MachInst iFmt)
|
|
{
|
|
return new Inst_EXP__EXP(&iFmt->iFmt_EXP);
|
|
} // decode_OP_EXP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_CLASS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_CLASS_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_CLASS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_CLASS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_CLASS_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_CLASS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_CLASS_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_CLASS_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_CLASS_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_CLASS_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_CLASS_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_CLASS_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_CLASS_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_CLASS_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_CLASS_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_CLASS_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_CLASS_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_CLASS_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LG_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_O_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_O_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_O_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_U_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_U_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_U_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NGE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NGE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NGE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLG_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NGT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NGT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NGT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NEQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NEQ_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NEQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_TRU_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_TRU_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_TRU_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LG_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_O_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_O_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_O_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_U_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_U_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_U_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NGE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NGE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NGE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLG_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NGT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NGT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NGT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NEQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NEQ_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NEQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_TRU_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_TRU_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_TRU_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LG_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_O_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_O_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_O_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_U_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_U_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_U_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NGE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NGE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NGE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLG_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NGT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NGT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NGT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NEQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NEQ_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NEQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_TRU_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_TRU_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_TRU_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LG_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_O_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_O_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_O_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_U_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_U_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_U_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NGE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NGE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NGE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLG_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NGT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NGT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NGT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NEQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NEQ_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NEQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_TRU_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_TRU_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_TRU_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LG_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_O_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_O_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_O_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_U_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_U_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_U_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NGE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NGE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NGE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLG_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NGT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NGT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NGT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NEQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NEQ_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NEQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NLT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NLT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NLT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_TRU_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_TRU_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_TRU_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LG_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_O_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_O_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_O_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_U_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_U_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_U_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NGE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NGE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NGE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLG_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NGT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NGT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NGT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NEQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NEQ_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NEQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NLT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NLT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NLT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_TRU_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_TRU_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_TRU_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NE_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_T_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_T_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_T_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NE_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_T_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_T_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_T_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NE_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_T_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_T_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_T_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NE_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_T_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_T_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_T_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_T_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_T_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_T_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_T_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_T_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_T_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_T_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_T_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_T_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_T_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_T_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_T_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NE_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_T_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_T_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_T_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_F_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_F_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_F_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LT_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_EQ_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_EQ_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_EQ_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_LE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_LE_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_LE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GT_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_NE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_NE_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_NE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_GE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_GE_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_GE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMP_T_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMP_T_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMP_T_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NE_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_T_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_T_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_T_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_F_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_F_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_F_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LT_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_EQ_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_EQ_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_EQ_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_LE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_LE_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_LE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GT_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_NE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_NE_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_NE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_GE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_GE_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_GE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CMPX_T_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CMPX_T_U64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CMPX_T_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CNDMASK_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CNDMASK_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CNDMASK_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ADD_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ADD_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUB_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUB_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SUB_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUBREV_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUBREV_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SUBREV_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_LEGACY_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_I32_I24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_I32_I24(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_I32_I24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_HI_I32_I24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_HI_I32_I24(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_HI_I32_I24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_U32_U24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_U32_U24(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_U32_U24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_HI_U32_U24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_HI_U32_U24(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_HI_U32_U24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHRREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LSHRREV_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LSHRREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ASHRREV_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ASHRREV_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ASHRREV_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHLREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LSHLREV_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LSHLREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_AND_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_AND_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_AND_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_OR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_OR_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_OR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_XOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_XOR_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_XOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAC_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAC_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAC_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ADD_CO_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_ADD_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUB_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUB_CO_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_SUB_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUBREV_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUBREV_CO_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_SUBREV_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADDC_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ADDC_CO_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_ADDC_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUBB_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUBB_CO_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_SUBB_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUBBREV_CO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUBBREV_CO_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_SUBBREV_CO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ADD_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ADD_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUB_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUB_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SUB_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUBREV_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUBREV_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SUBREV_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAC_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAC_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAC_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ADD_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ADD_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUB_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUB_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SUB_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUBREV_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SUBREV_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SUBREV_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_LO_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_LO_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_LO_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHLREV_B16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LSHLREV_B16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LSHLREV_B16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHRREV_B16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LSHRREV_B16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LSHRREV_B16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ASHRREV_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ASHRREV_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ASHRREV_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LDEXP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LDEXP_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LDEXP_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_NOP(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_NOP(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_NOP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MOV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MOV_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MOV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_I32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_I32_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_I32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F64_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F64_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F64_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_U32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_U32_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_U32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_I32_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MOV_FED_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MOV_FED_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MOV_FED_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F16_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F16_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F16_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_RPI_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_RPI_I32_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_RPI_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_FLR_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_FLR_I32_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_FLR_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_OFF_F32_I4(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_OFF_F32_I4(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_OFF_F32_I4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F64_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F64_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F64_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE0(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_UBYTE0(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_UBYTE0
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE1(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_UBYTE1(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_UBYTE1
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE2(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_UBYTE2(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_UBYTE2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F32_UBYTE3(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F32_UBYTE3(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F32_UBYTE3
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_U32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_U32_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_U32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F64_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F64_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F64_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_TRUNC_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_TRUNC_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_TRUNC_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CEIL_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CEIL_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CEIL_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RNDNE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RNDNE_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RNDNE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FLOOR_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FLOOR_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FLOOR_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FRACT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FRACT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FRACT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_TRUNC_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_TRUNC_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_TRUNC_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CEIL_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CEIL_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CEIL_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RNDNE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RNDNE_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RNDNE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FLOOR_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FLOOR_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FLOOR_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_EXP_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_EXP_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_EXP_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LOG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LOG_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LOG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RCP_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RCP_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RCP_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RCP_IFLAG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RCP_IFLAG_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RCP_IFLAG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RSQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RSQ_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RSQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RCP_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RCP_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RCP_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RSQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RSQ_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RSQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SQRT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SQRT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SQRT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SQRT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SQRT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SQRT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SIN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SIN_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SIN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_COS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_COS_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_COS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_NOT_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_NOT_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_NOT_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_BFREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_BFREV_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_BFREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FFBH_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FFBH_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FFBH_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FFBL_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FFBL_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FFBL_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FFBH_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FFBH_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FFBH_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FREXP_EXP_I32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FREXP_EXP_I32_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FREXP_EXP_I32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FREXP_MANT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FREXP_MANT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FREXP_MANT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FRACT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FRACT_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FRACT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FREXP_EXP_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FREXP_EXP_I32_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FREXP_EXP_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FREXP_MANT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FREXP_MANT_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FREXP_MANT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CLREXCP(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CLREXCP(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CLREXCP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F16_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F16_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F16_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_F16_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_F16_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_F16_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_U16_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_U16_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_U16_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_I16_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_I16_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_I16_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RCP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RCP_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RCP_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SQRT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SQRT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SQRT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RSQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RSQ_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RSQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LOG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LOG_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LOG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_EXP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_EXP_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_EXP_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FREXP_MANT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FREXP_MANT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FREXP_MANT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FREXP_EXP_I16_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FREXP_EXP_I16_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FREXP_EXP_I16_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FLOOR_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FLOOR_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FLOOR_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CEIL_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CEIL_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CEIL_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_TRUNC_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_TRUNC_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_TRUNC_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_RNDNE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_RNDNE_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_RNDNE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FRACT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FRACT_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FRACT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SIN_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SIN_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SIN_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_COS_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_COS_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_COS_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_EXP_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_EXP_LEGACY_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_EXP_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LOG_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LOG_LEGACY_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LOG_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_LEGACY_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_I32_I24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_I32_I24(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_I32_I24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_U32_U24(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_U32_U24(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_U32_U24
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CUBEID_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CUBEID_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CUBEID_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CUBESC_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CUBESC_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CUBESC_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CUBETC_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CUBETC_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CUBETC_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CUBEMA_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CUBEMA_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CUBEMA_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_BFE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_BFE_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_BFE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_BFE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_BFE_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_BFE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_BFI_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_BFI_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_BFI_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FMA_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FMA_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FMA_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FMA_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FMA_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FMA_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LERP_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LERP_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LERP_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ALIGNBIT_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ALIGNBIT_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ALIGNBIT_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ALIGNBYTE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ALIGNBYTE_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ALIGNBYTE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN3_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN3_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN3_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN3_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN3_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN3_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN3_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN3_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN3_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX3_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX3_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX3_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX3_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX3_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX3_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX3_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX3_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX3_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MED3_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MED3_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MED3_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MED3_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MED3_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MED3_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MED3_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MED3_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MED3_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SAD_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SAD_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SAD_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SAD_HI_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SAD_HI_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SAD_HI_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SAD_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SAD_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SAD_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SAD_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_SAD_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_SAD_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PK_U8_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PK_U8_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PK_U8_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_FIXUP_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_DIV_FIXUP_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_FIXUP_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_DIV_FIXUP_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_SCALE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_SCALE_F32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_DIV_SCALE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_SCALE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_SCALE_F64(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_DIV_SCALE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_FMAS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_FMAS_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_DIV_FMAS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_FMAS_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_FMAS_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_DIV_FMAS_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MSAD_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MSAD_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MSAD_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_QSAD_PK_U16_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_QSAD_PK_U16_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_QSAD_PK_U16_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MQSAD_PK_U16_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MQSAD_PK_U16_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MQSAD_PK_U16_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MQSAD_U32_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MQSAD_U32_U8(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MQSAD_U32_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_U64_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_U64_U32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_MAD_U64_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_I64_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_I64_I32(&iFmt->iFmt_VOP3B);
|
|
} // decode_OPU_VOP3__V_MAD_I64_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_LEGACY_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_LEGACY_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_LEGACY_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_U16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_LEGACY_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_LEGACY_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_I16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAD_LEGACY_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_PERM_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_PERM_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_PERM_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FMA_LEGACY_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FMA_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_FMA_LEGACY_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_FIXUP_LEGACY_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_FIXUP_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_DIV_FIXUP_LEGACY_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PKACCUM_U8_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PKACCUM_U8_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PKACCUM_U8_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_U32_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_I32_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_XAD_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN3_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN3_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN3_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX3_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX3_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX3_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MED3_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MED3_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MED3_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHL_ADD_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_LSHL_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD3_U32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHL_OR_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_AND_OR_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_OR3_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_OR_B32(&iFmt->iFmt_VOP3A);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_F16(&iFmt->iFmt_VOP3A);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_U16(&iFmt->iFmt_VOP3A);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAD_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAD_I16(&iFmt->iFmt_VOP3A);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_FMA_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_FMA_F16(&iFmt->iFmt_VOP3A);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_DIV_FIXUP_F16(&iFmt->iFmt_VOP3A);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_P1_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_INTERP_P1_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_INTERP_P1_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_P2_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_INTERP_P2_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_INTERP_P2_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_MOV_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_INTERP_MOV_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_INTERP_MOV_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_P1LL_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_INTERP_P1LL_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_INTERP_P1LL_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_P1LV_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_INTERP_P1LV_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_INTERP_P1LV_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_P2_LEGACY_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_INTERP_P2_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_INTERP_P2_F16(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_INTERP_P2_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ADD_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ADD_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MIN_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MIN_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MIN_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MAX_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MAX_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MAX_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LDEXP_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LDEXP_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LDEXP_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_LO_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_LO_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_LO_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_HI_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_HI_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_HI_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MUL_HI_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MUL_HI_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MUL_HI_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LDEXP_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LDEXP_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LDEXP_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_READLANE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_READLANE_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_READLANE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_WRITELANE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_WRITELANE_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_WRITELANE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_BCNT_U32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_BCNT_U32_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_BCNT_U32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MBCNT_LO_U32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MBCNT_LO_U32_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MBCNT_LO_U32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_MBCNT_HI_U32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_MBCNT_HI_U32_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_MBCNT_HI_U32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHLREV_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LSHLREV_B64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LSHLREV_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_LSHRREV_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_LSHRREV_B64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_LSHRREV_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ASHRREV_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_ASHRREV_I64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_ASHRREV_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_TRIG_PREOP_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_TRIG_PREOP_F64(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_TRIG_PREOP_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_BFM_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_BFM_B32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_BFM_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PKNORM_I16_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PKNORM_I16_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PKNORM_I16_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PKNORM_U16_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PKNORM_U16_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PKNORM_U16_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PKRTZ_F16_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PKRTZ_F16_F32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PKRTZ_F16_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PK_U16_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PK_U16_U32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PK_U16_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_CVT_PK_I16_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP3__V_CVT_PK_I16_I32(&iFmt->iFmt_VOP3A);
|
|
} // decode_OPU_VOP3__V_CVT_PK_I16_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_PKNORM_I16_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_PKNORM_U16_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_I32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUB_I32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_ADD_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_SUB_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OPU_VOP3__V_PACK_B32_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SUB_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SUB_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SUB_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_RSUB_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_RSUB_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_RSUB_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_INC_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_INC_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_INC_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_DEC_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_DEC_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_DEC_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_I32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_I32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_AND_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_AND_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_AND_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_OR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_OR_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_OR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_XOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_XOR_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_XOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MSKOR_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MSKOR_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MSKOR_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE2_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE2ST64_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE2ST64_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE2ST64_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_NOP(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_NOP(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_NOP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_ADDTID_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B8(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_B8(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_B8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B16(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_B16(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_B16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SUB_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SUB_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SUB_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_RSUB_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_RSUB_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_RSUB_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_INC_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_INC_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_INC_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_DEC_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_DEC_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_DEC_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_RTN_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_RTN_I32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_RTN_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_RTN_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_RTN_I32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_RTN_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_RTN_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_RTN_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_RTN_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_AND_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_AND_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_AND_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_OR_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_OR_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_OR_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_XOR_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_XOR_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_XOR_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MSKOR_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MSKOR_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MSKOR_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRXCHG_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRXCHG_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRXCHG_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRXCHG2_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRXCHG2_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRXCHG2_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRXCHG2ST64_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRXCHG2ST64_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRXCHG2ST64_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_RTN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_RTN_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_RTN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_RTN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_RTN_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_RTN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_RTN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_RTN_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_RTN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRAP_RTN_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRAP_RTN_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRAP_RTN_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_RTN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_RTN_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_RTN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ2_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ2ST64_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ2ST64_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ2ST64_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_I8(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_I8(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_I8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_U8(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_U8(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_U8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_I16(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_U16(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SWIZZLE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SWIZZLE_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SWIZZLE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_PERMUTE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_PERMUTE_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_PERMUTE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_BPERMUTE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_BPERMUTE_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_BPERMUTE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SUB_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SUB_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SUB_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_RSUB_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_RSUB_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_RSUB_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_INC_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_INC_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_INC_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_DEC_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_DEC_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_DEC_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_I64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_I64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_AND_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_AND_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_AND_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_OR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_OR_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_OR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_XOR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_XOR_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_XOR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MSKOR_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MSKOR_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MSKOR_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE2_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE2ST64_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE2ST64_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE2ST64_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B8_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B16_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_U8_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_U8_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_I8_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_I8_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_U16_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_U16_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SUB_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SUB_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SUB_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_RSUB_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_RSUB_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_RSUB_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_INC_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_INC_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_INC_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_DEC_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_DEC_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_DEC_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_RTN_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_RTN_I64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_RTN_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_RTN_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_RTN_I64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_RTN_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_RTN_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_RTN_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_RTN_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_AND_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_AND_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_AND_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_OR_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_OR_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_OR_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_XOR_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_XOR_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_XOR_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MSKOR_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MSKOR_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MSKOR_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRXCHG_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRXCHG_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRXCHG_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRXCHG2_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRXCHG2_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRXCHG2_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRXCHG2ST64_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRXCHG2ST64_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRXCHG2ST64_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CMPST_RTN_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CMPST_RTN_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CMPST_RTN_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_RTN_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_RTN_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_RTN_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_RTN_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_RTN_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_RTN_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ2_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ2ST64_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ2ST64_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ2ST64_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CONDXCHG32_RTN_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CONDXCHG32_RTN_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CONDXCHG32_RTN_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SUB_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SUB_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SUB_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_RSUB_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_RSUB_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_RSUB_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_INC_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_INC_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_INC_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_DEC_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_DEC_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_DEC_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_SRC2_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_SRC2_I32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_SRC2_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_SRC2_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_SRC2_I32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_SRC2_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_SRC2_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_SRC2_U32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_SRC2_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_AND_SRC2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_AND_SRC2_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_AND_SRC2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_OR_SRC2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_OR_SRC2_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_OR_SRC2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_XOR_SRC2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_XOR_SRC2_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_XOR_SRC2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_SRC2_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_SRC2_B32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_SRC2_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_SRC2_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_SRC2_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_SRC2_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_SRC2_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_SRC2_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_SRC2_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_SRC2_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_SRC2_F32(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_SRC2_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_GWS_SEMA_RELEASE_ALL(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_GWS_SEMA_RELEASE_ALL(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_GWS_SEMA_RELEASE_ALL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_GWS_INIT(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_GWS_INIT(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_GWS_INIT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_GWS_SEMA_V(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_GWS_SEMA_V(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_GWS_SEMA_V
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_GWS_SEMA_BR(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_GWS_SEMA_BR(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_GWS_SEMA_BR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_GWS_SEMA_P(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_GWS_SEMA_P(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_GWS_SEMA_P
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_GWS_BARRIER(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_GWS_BARRIER(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_GWS_BARRIER
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_ADDTID_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_CONSUME(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_CONSUME(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_CONSUME
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_APPEND(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_APPEND(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_APPEND
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ORDERED_COUNT(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ORDERED_COUNT(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ORDERED_COUNT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_ADD_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_ADD_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_ADD_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_SUB_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_SUB_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_SUB_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_RSUB_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_RSUB_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_RSUB_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_INC_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_INC_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_INC_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_DEC_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_DEC_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_DEC_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_SRC2_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_SRC2_I64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_SRC2_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_SRC2_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_SRC2_I64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_SRC2_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_SRC2_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_SRC2_U64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_SRC2_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_AND_SRC2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_AND_SRC2_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_AND_SRC2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_OR_SRC2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_OR_SRC2_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_OR_SRC2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_XOR_SRC2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_XOR_SRC2_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_XOR_SRC2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_SRC2_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_SRC2_B64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_SRC2_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MIN_SRC2_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MIN_SRC2_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MIN_SRC2_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_MAX_SRC2_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_MAX_SRC2_F64(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_MAX_SRC2_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B96(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_B96(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_B96
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_WRITE_B128(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_WRITE_B128(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_WRITE_B128
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_B96(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_B96(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_B96
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_DS__DS_READ_B128(MachInst iFmt)
|
|
{
|
|
return new Inst_DS__DS_READ_B128(&iFmt->iFmt_DS);
|
|
} // decode_OP_DS__DS_READ_B128
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_UBYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_UBYTE(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_UBYTE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_SBYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_SBYTE(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_SBYTE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_USHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_USHORT(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_USHORT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_SSHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_SSHORT(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_SSHORT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORD(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORDX2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_DWORDX3(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORDX3(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_DWORDX3
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORDX4(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_LOAD_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_BYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_BYTE(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_STORE_BYTE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_BYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_SHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_SHORT(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_STORE_SHORT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORD(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_STORE_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORDX2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_STORE_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_DWORDX3(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORDX3(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_STORE_DWORDX3
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORDX4(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_STORE_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_UBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_UBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_SBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_SBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_SHORT_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_LOAD_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SWAP(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SWAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_CMPSWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_CMPSWAP(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_CMPSWAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_ADD(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_ADD(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_ADD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SUB(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SUB(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SUB
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMIN(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SMIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMIN(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_UMIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMAX(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SMAX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMAX(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_UMAX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_AND(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_AND(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_AND
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_OR(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_OR(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_OR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_XOR(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_XOR(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_XOR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_INC(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_INC(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_INC
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_DEC(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_DEC(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_DEC
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SWAP_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SWAP_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SWAP_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_CMPSWAP_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_CMPSWAP_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_CMPSWAP_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_ADD_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_ADD_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_ADD_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SUB_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SUB_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SUB_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMIN_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMIN_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SMIN_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMIN_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMIN_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_UMIN_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_SMAX_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMAX_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_SMAX_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_UMAX_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMAX_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_UMAX_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_AND_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_AND_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_AND_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_OR_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_OR_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_OR_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_XOR_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_XOR_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_XOR_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_INC_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_INC_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_INC_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_FLAT__FLAT_ATOMIC_DEC_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_DEC_X2(&iFmt->iFmt_FLAT);
|
|
} // decode_OP_FLAT__FLAT_ATOMIC_DEC_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_UBYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_UBYTE(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SBYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_SBYTE(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_USHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_USHORT(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SSHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_SSHORT(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORD(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORDX2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORDX3(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORDX3(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_LOAD_DWORDX4(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_BYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_BYTE(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_BYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_SHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_SHORT(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORD(&iFmt->iFmt_FLAT);
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORDX2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORDX3(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORDX3(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_STORE_DWORDX4(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_UBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_UBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SHORT_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_LOAD_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SWAP(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_CMPSWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_CMPSWAP(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_ADD(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_ADD(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SUB(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SUB(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMIN(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMIN(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMAX(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMAX(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_AND(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_AND(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_OR(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_OR(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_XOR(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_XOR(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_INC(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_INC(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_DEC(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_DEC(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SWAP_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SWAP_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_CMPSWAP_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_CMPSWAP_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_ADD_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_ADD_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SUB_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SUB_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMIN_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMIN_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMIN_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMIN_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_SMAX_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_SMAX_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_UMAX_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_UMAX_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_AND_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_AND_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_OR_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_OR_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_XOR_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_XOR_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_INC_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_INC_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_GLOBAL__GLOBAL_ATOMIC_DEC_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_FLAT__FLAT_ATOMIC_DEC_X2(&iFmt->iFmt_FLAT);
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_LOAD(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_LOAD(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_LOAD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_LOAD_MIP(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_LOAD_MIP(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_LOAD_MIP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_LOAD_PCK(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_LOAD_PCK(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_LOAD_PCK
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_LOAD_PCK_SGN(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_LOAD_PCK_SGN(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_LOAD_PCK_SGN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_LOAD_MIP_PCK(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_LOAD_MIP_PCK(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_LOAD_MIP_PCK
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_LOAD_MIP_PCK_SGN(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_LOAD_MIP_PCK_SGN(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_LOAD_MIP_PCK_SGN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_STORE(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_STORE(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_STORE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_STORE_MIP(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_STORE_MIP(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_STORE_MIP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_STORE_PCK(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_STORE_PCK(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_STORE_PCK
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_STORE_MIP_PCK(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_STORE_MIP_PCK(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_STORE_MIP_PCK
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GET_RESINFO(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GET_RESINFO(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GET_RESINFO
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_SWAP(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_SWAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_CMPSWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_CMPSWAP(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_CMPSWAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_ADD(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_ADD(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_ADD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SUB(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_SUB(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_SUB
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_SMIN(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_SMIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_UMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_UMIN(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_UMIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_SMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_SMAX(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_SMAX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_UMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_UMAX(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_UMAX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_AND(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_AND(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_AND
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_OR(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_OR(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_OR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_XOR(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_XOR(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_XOR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_INC(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_INC(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_INC
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_ATOMIC_DEC(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_ATOMIC_DEC(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_ATOMIC_DEC
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_D(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_D
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_D_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_D_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_L(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_L(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_L
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_B(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_B
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_B_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_B_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_LZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_LZ(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_LZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_D(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_D
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_D_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_D_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_L(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_L(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_L
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_B(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_B
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_B_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_B_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_LZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_LZ(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_LZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_D_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_D_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_D_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_D_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_D_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_L_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_L_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_L_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_B_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_B_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_B_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_B_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_B_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_LZ_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_LZ_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_LZ_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_D_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_D_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_D_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_D_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_D_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_L_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_L_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_L_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_B_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_B_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_B_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_B_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_B_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_LZ_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_LZ_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_LZ_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4H(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_L(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_L(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_L
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_B(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_B(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_B
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_B_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_B_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_B_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_LZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_LZ(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_LZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4H_PCK(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER8H_PCK(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_L(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_L(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_L
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_B(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_B
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_B_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_B_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_LZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_LZ(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_LZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_L_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_L_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_L_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_B_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_B_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_B_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_B_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_B_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_B_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_LZ_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_LZ_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_LZ_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_L_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_L_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_L_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_B_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_B_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_B_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_B_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_B_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GATHER4_C_LZ_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GATHER4_C_LZ_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GATHER4_C_LZ_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_GET_LOD(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_GET_LOD(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_GET_LOD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_CD(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_CD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_CD_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_CD_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_CD(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_CD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD_CL(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_CD_CL(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_CD_CL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_CD_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_CD_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_CD_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_CD_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_CD_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_CD_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_CD_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MIMG__IMAGE_SAMPLE_C_CD_CL_O(MachInst iFmt)
|
|
{
|
|
return new Inst_MIMG__IMAGE_SAMPLE_C_CD_CL_O(&iFmt->iFmt_MIMG);
|
|
} // decode_OP_MIMG__IMAGE_SAMPLE_C_CD_CL_O
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_X(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_XY(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_XYZ(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_XYZW(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_X(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_XY(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_XYZ(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_XYZW(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_D16_X(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_D16_XY(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZ(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZW(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_LOAD_FORMAT_D16_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_D16_X(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_D16_XY(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZ(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZW(MachInst iFmt)
|
|
{
|
|
return new
|
|
Inst_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZW(&iFmt->iFmt_MTBUF);
|
|
} // decode_OP_MTBUF__TBUFFER_STORE_FORMAT_D16_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_X(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_XY(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_XYZ(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_XYZW(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_X(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_XY(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_XYZ(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_XYZW(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_D16_X(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_D16_XY(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZ(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZW(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_X(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_D16_X(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_X
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XY(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_D16_XY(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XY
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XYZ(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_D16_XYZ(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XYZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XYZW(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_FORMAT_D16_XYZW(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_XYZW
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_UBYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_UBYTE(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_UBYTE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_SBYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_SBYTE(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_SBYTE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_USHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_USHORT(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_USHORT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_SSHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_SSHORT(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_SSHORT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_DWORD(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_DWORDX2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORDX3(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_DWORDX3(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_DWORDX3
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_LOAD_DWORDX4(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_LOAD_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_BYTE(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_BYTE(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_BYTE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_BYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_SHORT(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_SHORT(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_SHORT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_DWORD(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_DWORDX2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORDX3(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_DWORDX3(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_DWORDX3
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_DWORDX4(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_LDS_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_STORE_LDS_DWORD(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_STORE_LDS_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_WBINVL1(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_WBINVL1(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_WBINVL1
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_WBINVL1_VOL(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_WBINVL1_VOL(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_WBINVL1_VOL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SWAP(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SWAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_CMPSWAP(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_CMPSWAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_ADD(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_ADD(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_ADD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SUB(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SUB(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SUB
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SMIN(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SMIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMIN(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_UMIN(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_UMIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SMAX(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SMAX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMAX(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_UMAX(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_UMAX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_AND(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_AND(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_AND
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_OR(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_OR(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_OR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_XOR(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_XOR(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_XOR
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_INC(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_INC(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_INC
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_DEC(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_DEC(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_DEC
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SWAP_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SWAP_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SWAP_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_CMPSWAP_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_CMPSWAP_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_ADD_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_ADD_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_ADD_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SUB_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SUB_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SUB_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMIN_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SMIN_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SMIN_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMIN_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_UMIN_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_UMIN_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_SMAX_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_SMAX_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_SMAX_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_UMAX_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_UMAX_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_UMAX_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_AND_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_AND_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_AND_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_OR_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_OR_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_OR_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_XOR_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_XOR_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_XOR_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_INC_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_INC_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_INC_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_ATOMIC_DEC_X2(MachInst iFmt)
|
|
{
|
|
return new Inst_MUBUF__BUFFER_ATOMIC_DEC_X2(&iFmt->iFmt_MUBUF);
|
|
} // decode_OP_MUBUF__BUFFER_ATOMIC_DEC_X2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_UBYTE(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SBYTE(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_USHORT(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SSHORT(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORDX3(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_BYTE(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_BYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_SHORT(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORDX3(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_UBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_UBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SHORT_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SCRATCH__SCRATCH_LOAD_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_LOAD_DWORD(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_LOAD_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_LOAD_DWORDX2(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_LOAD_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_LOAD_DWORDX4(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_LOAD_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_LOAD_DWORDX8(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_LOAD_DWORDX8(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_LOAD_DWORDX8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_LOAD_DWORDX16(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_LOAD_DWORDX16(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_LOAD_DWORDX16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_SCRATCH_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_SCRATCH_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_SCRATCH_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_LOAD_DWORD(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_LOAD_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_LOAD_DWORDX2(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_LOAD_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_LOAD_DWORDX4(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_LOAD_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX8(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_LOAD_DWORDX8(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_LOAD_DWORDX8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_LOAD_DWORDX16(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_LOAD_DWORDX16(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_LOAD_DWORDX16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_STORE_DWORD(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_STORE_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_STORE_DWORDX2(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_STORE_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_STORE_DWORDX4(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_STORE_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_SCRATCH_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_SCRATCH_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_SCRATCH_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_STORE_DWORD(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_STORE_DWORD(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_STORE_DWORD
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_STORE_DWORDX2(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_STORE_DWORDX2(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_STORE_DWORDX2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_STORE_DWORDX4(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_BUFFER_STORE_DWORDX4(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_BUFFER_STORE_DWORDX4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_UBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_UBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_SBYTE_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_SBYTE_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_SHORT_D16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_SHORT_D16_HI(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_LOAD_FORMAT_D16_HI_X(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_MUBUF__BUFFER_STORE_FORMAT_D16_HI_X(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_DCACHE_INV(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_DCACHE_INV(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_DCACHE_INV
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_DCACHE_WB(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_DCACHE_WB(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_DCACHE_WB
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_DCACHE_INV_VOL(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_DCACHE_INV_VOL(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_DCACHE_INV_VOL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_DCACHE_WB_VOL(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_DCACHE_WB_VOL(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_DCACHE_WB_VOL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_MEMTIME(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_MEMTIME(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_MEMTIME
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_MEMREALTIME(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_MEMREALTIME(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_MEMREALTIME
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATC_PROBE(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_ATC_PROBE(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_ATC_PROBE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATC_PROBE_BUFFER(MachInst iFmt)
|
|
{
|
|
return new Inst_SMEM__S_ATC_PROBE_BUFFER(&iFmt->iFmt_SMEM);
|
|
} // decode_OP_SMEM__S_ATC_PROBE_BUFFER
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_DCACHE_DISCARD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_DCACHE_DISCARD_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SWAP(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_CMPSWAP(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_ADD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SUB(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMIN(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMIN(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMAX(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMAX(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_AND(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_OR(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_XOR(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_INC(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_DEC(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SWAP_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_CMPSWAP_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_ADD_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SUB_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMIN_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMIN_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_SMAX_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_UMAX_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_AND_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_OR_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_XOR_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_INC_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_BUFFER_ATOMIC_DEC_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SWAP(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_CMPSWAP(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_ADD(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SUB(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SMIN(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_UMIN(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SMAX(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_UMAX(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_AND(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_OR(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_XOR(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_INC(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_DEC(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SWAP_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_CMPSWAP_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_ADD_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SUB_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SMIN_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_UMIN_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_SMAX_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_UMAX_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_AND_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_OR_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_XOR_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_INC_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SMEM__S_ATOMIC_DEC_X2(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_MOV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_MOV_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_MOV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_MOV_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_MOV_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_MOV_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_CMOV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_CMOV_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_CMOV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_CMOV_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_CMOV_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_CMOV_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_NOT_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_NOT_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_NOT_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_NOT_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_NOT_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_NOT_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_WQM_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_WQM_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_WQM_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_WQM_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_WQM_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_WQM_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BREV_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BREV_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BREV_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BREV_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BCNT0_I32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BCNT0_I32_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BCNT0_I32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BCNT0_I32_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BCNT0_I32_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BCNT0_I32_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BCNT1_I32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BCNT1_I32_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BCNT1_I32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BCNT1_I32_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BCNT1_I32_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BCNT1_I32_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FF0_I32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FF0_I32_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FF0_I32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FF0_I32_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FF0_I32_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FF0_I32_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FF1_I32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FF1_I32_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FF1_I32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FF1_I32_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FF1_I32_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FF1_I32_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FLBIT_I32_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FLBIT_I32_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FLBIT_I32_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FLBIT_I32_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FLBIT_I32_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FLBIT_I32_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FLBIT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FLBIT_I32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FLBIT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_FLBIT_I32_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_FLBIT_I32_I64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_FLBIT_I32_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_SEXT_I32_I8(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_SEXT_I32_I8(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_SEXT_I32_I8
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_SEXT_I32_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_SEXT_I32_I16(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_SEXT_I32_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BITSET0_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BITSET0_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BITSET0_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BITSET0_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BITSET0_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BITSET0_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BITSET1_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BITSET1_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BITSET1_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BITSET1_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_BITSET1_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_BITSET1_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_GETPC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_GETPC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_GETPC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_SETPC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_SETPC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_SETPC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_SWAPPC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_SWAPPC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_SWAPPC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_RFE_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_RFE_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_RFE_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_AND_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_AND_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_AND_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_OR_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_OR_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_OR_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_XOR_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_XOR_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_XOR_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ANDN2_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_ANDN2_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_ANDN2_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ORN2_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_ORN2_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_ORN2_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_NAND_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_NAND_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_NAND_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_NOR_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_NOR_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_NOR_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_XNOR_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_XNOR_SAVEEXEC_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_XNOR_SAVEEXEC_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_QUADMASK_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_QUADMASK_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_QUADMASK_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_QUADMASK_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_QUADMASK_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_QUADMASK_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_MOVRELS_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_MOVRELS_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_MOVRELS_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_MOVRELS_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_MOVRELS_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_MOVRELS_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_MOVRELD_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_MOVRELD_B32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_MOVRELD_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_MOVRELD_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_MOVRELD_B64(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_MOVRELD_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_CBRANCH_JOIN(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_CBRANCH_JOIN(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_CBRANCH_JOIN
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ABS_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_ABS_I32(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_ABS_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_SET_GPR_IDX_IDX(MachInst iFmt)
|
|
{
|
|
return new Inst_SOP1__S_SET_GPR_IDX_IDX(&iFmt->iFmt_SOP1);
|
|
} // decode_OP_SOP1__S_SET_GPR_IDX_IDX
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ANDN1_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ORN1_SAVEEXEC_B64(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ANDN1_WREXEC_B64(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_ANDN2_WREXEC_B64(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOP1__S_BITREPLICATE_B64_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_EQ_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_EQ_I32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_EQ_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LG_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LG_I32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LG_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_GT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_GT_I32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_GT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_GE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_GE_I32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_GE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LT_I32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LE_I32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_EQ_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_EQ_U32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_EQ_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LG_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LG_U32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LG_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_GT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_GT_U32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_GT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_GE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_GE_U32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_GE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LT_U32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LE_U32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_BITCMP0_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_BITCMP0_B32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_BITCMP0_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_BITCMP1_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_BITCMP1_B32(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_BITCMP1_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_BITCMP0_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_BITCMP0_B64(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_BITCMP0_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_BITCMP1_B64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_BITCMP1_B64(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_BITCMP1_B64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_SETVSKIP(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_SETVSKIP(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_SETVSKIP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_SET_GPR_IDX_ON(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_SET_GPR_IDX_ON(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_SET_GPR_IDX_ON
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_EQ_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_EQ_U64(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_EQ_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPC__S_CMP_LG_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPC__S_CMP_LG_U64(&iFmt->iFmt_SOPC);
|
|
} // decode_OP_SOPC__S_CMP_LG_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_NOP(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_NOP(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_NOP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_ENDPGM(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_ENDPGM(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_ENDPGM
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_BRANCH(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_BRANCH(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_BRANCH
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_WAKEUP(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_WAKEUP(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_WAKEUP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_SCC0(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_SCC0(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_SCC0
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_SCC1(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_SCC1(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_SCC1
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_VCCZ(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_VCCZ(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_VCCZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_VCCNZ(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_VCCNZ(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_VCCNZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_EXECZ(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_EXECZ(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_EXECZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_EXECNZ(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_EXECNZ(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_EXECNZ
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_BARRIER(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_BARRIER(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_BARRIER
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SETKILL(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SETKILL(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SETKILL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_WAITCNT(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_WAITCNT(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_WAITCNT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SETHALT(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SETHALT(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SETHALT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SLEEP(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SLEEP(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SLEEP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SETPRIO(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SETPRIO(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SETPRIO
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SENDMSG(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SENDMSG(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SENDMSG
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SENDMSGHALT(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SENDMSGHALT(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SENDMSGHALT
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_TRAP(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_TRAP(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_TRAP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_ICACHE_INV(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_ICACHE_INV(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_ICACHE_INV
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_INCPERFLEVEL(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_INCPERFLEVEL(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_INCPERFLEVEL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_DECPERFLEVEL(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_DECPERFLEVEL(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_DECPERFLEVEL
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_TTRACEDATA(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_TTRACEDATA(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_TTRACEDATA
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_CDBGSYS(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_CDBGSYS(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_CDBGSYS
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_CDBGUSER(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_CDBGUSER(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_CDBGUSER
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_CDBGSYS_OR_USER(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_CDBGSYS_OR_USER(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_CDBGSYS_OR_USER
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_CBRANCH_CDBGSYS_AND_USER(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_CBRANCH_CDBGSYS_AND_USER(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_CBRANCH_CDBGSYS_AND_USER
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_ENDPGM_SAVED(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_ENDPGM_SAVED(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_ENDPGM_SAVED
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SET_GPR_IDX_OFF(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SET_GPR_IDX_OFF(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SET_GPR_IDX_OFF
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_SET_GPR_IDX_MODE(MachInst iFmt)
|
|
{
|
|
return new Inst_SOPP__S_SET_GPR_IDX_MODE(&iFmt->iFmt_SOPP);
|
|
} // decode_OP_SOPP__S_SET_GPR_IDX_MODE
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_SOPP__S_ENDPGM_ORDERED_PS_DONE(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VINTRP__V_INTERP_P1_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VINTRP__V_INTERP_P1_F32(&iFmt->iFmt_VINTRP);
|
|
} // decode_OP_VINTRP__V_INTERP_P1_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VINTRP__V_INTERP_P2_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VINTRP__V_INTERP_P2_F32(&iFmt->iFmt_VINTRP);
|
|
} // decode_OP_VINTRP__V_INTERP_P2_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VINTRP__V_INTERP_MOV_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VINTRP__V_INTERP_MOV_F32(&iFmt->iFmt_VINTRP);
|
|
} // decode_OP_VINTRP__V_INTERP_MOV_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_NOP(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_NOP(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_NOP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_MOV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_MOV_B32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_MOV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_READFIRSTLANE_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_READFIRSTLANE_B32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_READFIRSTLANE_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_I32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_I32_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_I32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F64_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F64_I32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F64_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_I32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_U32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_U32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_U32_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_U32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_I32_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F16_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F16_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F16_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_RPI_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_RPI_I32_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_RPI_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_FLR_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_FLR_I32_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_FLR_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_OFF_F32_I4(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_OFF_F32_I4(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_OFF_F32_I4
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F64_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F64_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F64_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE0(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_UBYTE0(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_UBYTE0
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE1(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_UBYTE1(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_UBYTE1
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE2(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_UBYTE2(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_UBYTE2
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F32_UBYTE3(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F32_UBYTE3(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F32_UBYTE3
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_U32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_U32_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_U32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F64_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F64_U32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F64_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_TRUNC_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_TRUNC_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_TRUNC_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CEIL_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CEIL_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CEIL_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RNDNE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RNDNE_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RNDNE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FLOOR_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FLOOR_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FLOOR_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FRACT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FRACT_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FRACT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_TRUNC_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_TRUNC_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_TRUNC_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CEIL_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CEIL_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CEIL_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RNDNE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RNDNE_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RNDNE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FLOOR_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FLOOR_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FLOOR_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_EXP_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_EXP_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_EXP_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_LOG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_LOG_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_LOG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RCP_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RCP_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RCP_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RCP_IFLAG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RCP_IFLAG_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RCP_IFLAG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RSQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RSQ_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RSQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RCP_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RCP_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RCP_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RSQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RSQ_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RSQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SQRT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_SQRT_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_SQRT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SQRT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_SQRT_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_SQRT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SIN_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_SIN_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_SIN_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_COS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_COS_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_COS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_NOT_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_NOT_B32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_NOT_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_BFREV_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_BFREV_B32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_BFREV_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FFBH_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FFBH_U32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FFBH_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FFBL_B32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FFBL_B32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FFBL_B32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FFBH_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FFBH_I32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FFBH_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FREXP_EXP_I32_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FREXP_EXP_I32_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FREXP_EXP_I32_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FREXP_MANT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FREXP_MANT_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FREXP_MANT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FRACT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FRACT_F64(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FRACT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FREXP_EXP_I32_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FREXP_EXP_I32_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FREXP_EXP_I32_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FREXP_MANT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FREXP_MANT_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FREXP_MANT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CLREXCP(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CLREXCP(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CLREXCP
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SCREEN_PARTITION_4SE_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F16_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F16_U16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F16_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_F16_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_F16_I16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_F16_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_U16_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_U16_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_U16_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_I16_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CVT_I16_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CVT_I16_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RCP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RCP_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RCP_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SQRT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_SQRT_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_SQRT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RSQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RSQ_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RSQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_LOG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_LOG_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_LOG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_EXP_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_EXP_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_EXP_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FREXP_MANT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FREXP_MANT_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FREXP_MANT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FREXP_EXP_I16_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FREXP_EXP_I16_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FREXP_EXP_I16_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FLOOR_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FLOOR_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FLOOR_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CEIL_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_CEIL_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_CEIL_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_TRUNC_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_TRUNC_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_TRUNC_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_RNDNE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_RNDNE_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_RNDNE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_FRACT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_FRACT_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_FRACT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SIN_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_SIN_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_SIN_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_COS_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_COS_F16(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_COS_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_EXP_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_EXP_LEGACY_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_EXP_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_LOG_LEGACY_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOP1__V_LOG_LEGACY_F32(&iFmt->iFmt_VOP1);
|
|
} // decode_OP_VOP1__V_LOG_LEGACY_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_NORM_I16_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_CVT_NORM_U16_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SAT_PK_U8_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP1__V_SWAP_B32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_CLASS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_CLASS_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_CLASS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_CLASS_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_CLASS_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_CLASS_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_CLASS_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_CLASS_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_CLASS_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_CLASS_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_CLASS_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_CLASS_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_CLASS_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_CLASS_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_CLASS_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_CLASS_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_CLASS_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_CLASS_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LG_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_O_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_O_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_O_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_U_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_U_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_U_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NGE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NGE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NGE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLG_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NGT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NGT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NGT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NEQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NEQ_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NEQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_TRU_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_TRU_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_TRU_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LG_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_O_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_O_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_O_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_U_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_U_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_U_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NGE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NGE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NGE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLG_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLG_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLG_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NGT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NGT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NGT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLE_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLE_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLE_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NEQ_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NEQ_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NEQ_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLT_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLT_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLT_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_TRU_F16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_TRU_F16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_TRU_F16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LG_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_O_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_O_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_O_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_U_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_U_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_U_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NGE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NGE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NGE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLG_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NGT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NGT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NGT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NEQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NEQ_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NEQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_TRU_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_TRU_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_TRU_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LG_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_O_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_O_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_O_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_U_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_U_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_U_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NGE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NGE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NGE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLG_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLG_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLG_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NGT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NGT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NGT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLE_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLE_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLE_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NEQ_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NEQ_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NEQ_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLT_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLT_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLT_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_TRU_F32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_TRU_F32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_TRU_F32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LG_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_O_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_O_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_O_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_U_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_U_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_U_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NGE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NGE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NGE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLG_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NGT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NGT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NGT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NEQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NEQ_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NEQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NLT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NLT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NLT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_TRU_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_TRU_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_TRU_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LG_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_O_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_O_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_O_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_U_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_U_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_U_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NGE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NGE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NGE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLG_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLG_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLG_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NGT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NGT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NGT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLE_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLE_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLE_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NEQ_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NEQ_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NEQ_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NLT_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NLT_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NLT_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_TRU_F64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_TRU_F64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_TRU_F64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NE_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_T_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_T_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_T_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NE_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_T_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_T_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_T_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NE_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_T_I16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_T_I16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_T_I16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NE_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_T_U16(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_T_U16(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_T_U16
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NE_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_T_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_T_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_T_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NE_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_T_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_T_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_T_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NE_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_T_I32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_T_I32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_T_I32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NE_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_T_U32(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_T_U32(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_T_U32
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NE_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_T_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_T_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_T_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_F_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_F_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_F_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LT_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_EQ_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_EQ_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_EQ_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_LE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_LE_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_LE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GT_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_NE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_NE_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_NE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_GE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_GE_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_GE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMP_T_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMP_T_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMP_T_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NE_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_T_I64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_T_I64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_T_I64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_F_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_F_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_F_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LT_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_EQ_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_EQ_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_EQ_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_LE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_LE_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_LE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GT_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GT_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GT_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_NE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_NE_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_NE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_GE_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_GE_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_GE_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOPC__V_CMPX_T_U64(MachInst iFmt)
|
|
{
|
|
return new Inst_VOPC__V_CMPX_T_U64(&iFmt->iFmt_VOPC);
|
|
} // decode_OP_VOPC__V_CMPX_T_U64
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MAD_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MUL_LO_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_ADD_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_SUB_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_LSHLREV_B16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_LSHRREV_B16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_ASHRREV_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MAX_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MIN_I16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MAD_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_ADD_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_SUB_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MAX_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MIN_U16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_FMA_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_ADD_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MUL_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MIN_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_PK_MAX_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_MAD_MIX_F32(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_MAD_MIXLO_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_OP_VOP3P__V_MAD_MIXHI_F16(MachInst iFmt)
|
|
{
|
|
fatal("Trying to decode instruction without a class\n");
|
|
return nullptr;
|
|
}
|
|
|
|
GPUStaticInst*
|
|
Decoder::decode_invalid(MachInst iFmt)
|
|
{
|
|
fatal("Invalid opcode encountered: %#x\n", iFmt->imm_u32);
|
|
|
|
return nullptr;
|
|
}
|
|
} // namespace VegaISA
|
|
} // namespace gem5
|