LLVM 19.0.0git
Functions
PPCMCInstLower.cpp File Reference
#include "MCTargetDesc/PPCMCExpr.h"
#include "PPC.h"
#include "PPCSubtarget.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/Twine.h"
#include "llvm/CodeGen/AsmPrinter.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineModuleInfoImpls.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/Mangler.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/Target/TargetLoweringObjectFile.h"

Go to the source code of this file.

Functions

static MCSymbolGetSymbolFromOperand (const MachineOperand &MO, AsmPrinter &AP)
 
static MCOperand GetSymbolRef (const MachineOperand &MO, const MCSymbol *Symbol, AsmPrinter &Printer)
 

Function Documentation

◆ GetSymbolFromOperand()

static MCSymbol * GetSymbolFromOperand ( const MachineOperand MO,
AsmPrinter AP 
)
static

◆ GetSymbolRef()

static MCOperand GetSymbolRef ( const MachineOperand MO,
const MCSymbol Symbol,
AsmPrinter Printer 
)
static

Definition at line 52 of file PPCMCInstLower.cpp.

References assert(), llvm::PICLevel::BigPIC, llvm::MCSymbolRefExpr::create(), llvm::MCConstantExpr::create(), llvm::MCBinaryExpr::createAdd(), llvm::MCOperand::createExpr(), llvm::PPCMCExpr::createHa(), llvm::PPCMCExpr::createLo(), llvm::MCBinaryExpr::createSub(), llvm::MachineFunction::getFunction(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getOffset(), llvm::MachineOperand::getParent(), llvm::GlobalValue::getParent(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineFunction::getPICBaseSymbol(), llvm::MachineFunction::getSubtarget(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::isGlobal(), llvm::MachineOperand::isJTI(), llvm::PPCSubtarget::isUsingPCRelativeCalls(), llvm::TLSModel::LocalExec, MI, llvm::PPCII::MO_DTPREL_LO, llvm::PPCII::MO_GOT_PCREL_FLAG, llvm::PPCII::MO_GOT_TLSGD_PCREL_FLAG, llvm::PPCII::MO_GOT_TLSLD_PCREL_FLAG, llvm::PPCII::MO_GOT_TPREL_PCREL_FLAG, llvm::PPCII::MO_HA, llvm::PPCII::MO_LO, llvm::PPCII::MO_PCREL_FLAG, llvm::PPCII::MO_PCREL_OPT_FLAG, llvm::PPCII::MO_PIC_FLAG, llvm::PPCII::MO_PIC_HA_FLAG, llvm::PPCII::MO_PIC_LO_FLAG, llvm::PPCII::MO_PLT, llvm::PPCII::MO_TLS, llvm::PPCII::MO_TLS_PCREL_FLAG, llvm::PPCII::MO_TLSLD_LO, llvm::PPCII::MO_TOC_LO, llvm::PPCII::MO_TPREL_FLAG, llvm::PPCII::MO_TPREL_HA, llvm::PPCII::MO_TPREL_LO, llvm::PPCII::MO_TPREL_PCREL_FLAG, PB(), Printer, TM, llvm::MCSymbolRefExpr::VK_None, llvm::MCSymbolRefExpr::VK_PCREL, llvm::MCSymbolRefExpr::VK_PLT, llvm::MCSymbolRefExpr::VK_PPC_AIX_TLSLE, llvm::MCSymbolRefExpr::VK_PPC_DTPREL_LO, llvm::MCSymbolRefExpr::VK_PPC_GOT_PCREL, llvm::MCSymbolRefExpr::VK_PPC_GOT_TLSGD_PCREL, llvm::MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO, llvm::MCSymbolRefExpr::VK_PPC_GOT_TLSLD_PCREL, llvm::MCSymbolRefExpr::VK_PPC_GOT_TPREL_PCREL, llvm::MCSymbolRefExpr::VK_PPC_NOTOC, llvm::MCSymbolRefExpr::VK_PPC_PCREL_OPT, llvm::MCSymbolRefExpr::VK_PPC_TLS, llvm::MCSymbolRefExpr::VK_PPC_TLS_PCREL, llvm::MCSymbolRefExpr::VK_PPC_TOC_LO, llvm::MCSymbolRefExpr::VK_PPC_TPREL_HA, llvm::MCSymbolRefExpr::VK_PPC_TPREL_LO, and llvm::MCSymbolRefExpr::VK_TPREL.

Referenced by llvm::LowerPPCMachineOperandToMCOperand().