LLVM  8.0.0svn
Functions
AMDGPUMCInstLower.cpp File Reference

Code to lower AMDGPU MachineInstrs to their corresponding MCInst. More...

#include "AMDGPUAsmPrinter.h"
#include "AMDGPUSubtarget.h"
#include "AMDGPUTargetMachine.h"
#include "InstPrinter/AMDGPUInstPrinter.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "R600AsmPrinter.h"
#include "SIInstrInfo.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/MC/MCCodeEmitter.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCObjectStreamer.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Format.h"
#include <algorithm>
#include "AMDGPUGenMCPseudoLowering.inc"
Include dependency graph for AMDGPUMCInstLower.cpp:

Go to the source code of this file.

Functions

static MCSymbolRefExpr::VariantKind getVariantKind (unsigned MOFlags)
 
static const MCExprlowerAddrSpaceCast (const TargetMachine &TM, const Constant *CV, MCContext &OutContext)
 

Detailed Description

Code to lower AMDGPU MachineInstrs to their corresponding MCInst.

Definition in file AMDGPUMCInstLower.cpp.

Function Documentation

◆ getVariantKind()

static MCSymbolRefExpr::VariantKind getVariantKind ( unsigned  MOFlags)
static

Definition at line 80 of file AMDGPUMCInstLower.cpp.

References llvm::MCInst::addOperand(), assert(), C, llvm::MCConstantExpr::create(), llvm::MCSymbolRefExpr::create(), llvm::MCBinaryExpr::createAdd(), llvm::MCOperand::createExpr(), llvm::MCOperand::createImm(), llvm::MCOperand::createReg(), llvm::MCBinaryExpr::createSub(), llvm::LLVMContext::emitError(), llvm::MachineInstr::explicit_operands(), llvm::MachineBasicBlock::front(), llvm::Function::getContext(), llvm::MachineFunction::getFunction(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getImm(), llvm::MachineOperand::getMBB(), llvm::AMDGPU::getMCReg(), llvm::MachineOperand::getOffset(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getParent(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), llvm::MachineBasicBlock::getSymbol(), llvm::MachineOperand::getSymbolName(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::getType(), llvm_unreachable, MI, llvm::MachineOperand::MO_ExternalSymbol, llvm::MachineOperand::MO_GlobalAddress, llvm::SIInstrInfo::MO_GOTPCREL, llvm::SIInstrInfo::MO_GOTPCREL32_HI, llvm::SIInstrInfo::MO_GOTPCREL32_LO, llvm::MachineOperand::MO_Immediate, llvm::MachineOperand::MO_MachineBasicBlock, llvm::MachineOperand::MO_Register, llvm::MachineOperand::MO_RegisterMask, llvm::SIInstrInfo::MO_REL32_HI, llvm::SIInstrInfo::MO_REL32_LO, llvm::MCSymbol::setExternal(), llvm::MCInst::setOpcode(), llvm::ARM_MB::ST, llvm::AMDGPU::HSAMD::Kernel::Key::SymbolName, llvm::AMDGPU::TF_LONG_BRANCH_BACKWARD, llvm::AMDGPU::TF_LONG_BRANCH_FORWARD, TII, llvm::MCSymbolRefExpr::VK_AMDGPU_GOTPCREL32_HI, llvm::MCSymbolRefExpr::VK_AMDGPU_GOTPCREL32_LO, llvm::MCSymbolRefExpr::VK_AMDGPU_REL32_HI, llvm::MCSymbolRefExpr::VK_AMDGPU_REL32_LO, llvm::MCSymbolRefExpr::VK_GOTPCREL, and llvm::MCSymbolRefExpr::VK_None.

◆ lowerAddrSpaceCast()

static const MCExpr* lowerAddrSpaceCast ( const TargetMachine TM,
const Constant CV,
MCContext OutContext 
)
static