diff options
| author | Stanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com> | 2019-06-12 17:52:51 +0000 |
|---|---|---|
| committer | Stanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com> | 2019-06-12 17:52:51 +0000 |
| commit | 5f581c9f08e6cbb22002371caa2d1f23337a9054 (patch) | |
| tree | 5e351d3b7fc362ee39bcb36ac3244a18facb6617 /llvm/lib/Target/AMDGPU/MCTargetDesc | |
| parent | efc0d1a29801adc95450b9a2129f213d15c23164 (diff) | |
| download | bcm5719-llvm-5f581c9f08e6cbb22002371caa2d1f23337a9054.tar.gz bcm5719-llvm-5f581c9f08e6cbb22002371caa2d1f23337a9054.zip | |
[AMDGPU] gfx1010 premlane instructions
Differential Revision: https://reviews.llvm.org/D63202
llvm-svn: 363185
Diffstat (limited to 'llvm/lib/Target/AMDGPU/MCTargetDesc')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp index 0e2706349b1..114f98cbfaa 100644 --- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp +++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp @@ -1005,6 +1005,18 @@ void AMDGPUInstPrinter::printPackedModifier(const MCInst *MI, void AMDGPUInstPrinter::printOpSel(const MCInst *MI, unsigned, const MCSubtargetInfo &STI, raw_ostream &O) { + unsigned Opc = MI->getOpcode(); + if (Opc == AMDGPU::V_PERMLANE16_B32_gfx10 || + Opc == AMDGPU::V_PERMLANEX16_B32_gfx10) { + auto FIN = AMDGPU::getNamedOperandIdx(Opc, AMDGPU::OpName::src0_modifiers); + auto BCN = AMDGPU::getNamedOperandIdx(Opc, AMDGPU::OpName::src1_modifiers); + unsigned FI = !!(MI->getOperand(FIN).getImm() & SISrcMods::OP_SEL_0); + unsigned BC = !!(MI->getOperand(BCN).getImm() & SISrcMods::OP_SEL_0); + if (FI || BC) + O << " op_sel:[" << FI << ',' << BC << ']'; + return; + } + printPackedModifier(MI, " op_sel:[", SISrcMods::OP_SEL_0, O); } |

