LLVM
8.0.1
|
#include "X86AsmPrinter.h"
#include "InstPrinter/X86ATTInstPrinter.h"
#include "MCTargetDesc/X86BaseInfo.h"
#include "MCTargetDesc/X86TargetStreamer.h"
#include "X86InstrInfo.h"
#include "X86MachineFunctionInfo.h"
#include "llvm/BinaryFormat/COFF.h"
#include "llvm/BinaryFormat/ELF.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineModuleInfoImpls.h"
#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Mangler.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Type.h"
#include "llvm/MC/MCCodeEmitter.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCSectionCOFF.h"
#include "llvm/MC/MCSectionELF.h"
#include "llvm/MC/MCSectionMachO.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MachineValueType.h"
#include "llvm/Support/TargetRegistry.h"
Go to the source code of this file.
|
static |
Definition at line 645 of file X86AsmPrinter.cpp.
References llvm::MCStreamer::AddBlankLine(), emitNonLazySymbolPointer(), llvm::MachineModuleInfo::getContext(), llvm::MachineModuleInfoMachO::GetGVStubList(), llvm::MCContext::getMachOSection(), llvm::SectionKind::getMetadata(), llvm::MachineModuleInfo::getObjFileInfo(), llvm::MachO::S_NON_LAZY_SYMBOL_POINTERS, and llvm::MCStreamer::SwitchSection().
Referenced by llvm::X86AsmPrinter::EmitEndOfAsmFile().
|
static |
Definition at line 623 of file X86AsmPrinter.cpp.
References llvm::MCSymbolRefExpr::create(), llvm::MCStreamer::EmitIntValue(), llvm::MCStreamer::EmitLabel(), llvm::MCStreamer::EmitSymbolAttribute(), llvm::MCStreamer::EmitValue(), llvm::MCStreamer::getContext(), llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits, Info >::getInt(), llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits, Info >::getPointer(), and llvm::MCSA_IndirectSymbol.
Referenced by emitNonLazyStubs().
void LLVMInitializeX86AsmPrinter | ( | ) |
Definition at line 714 of file X86AsmPrinter.cpp.
References llvm::getTheX86_32Target(), llvm::getTheX86_64Target(), X, and Y.
|
static |
Definition at line 376 of file X86AsmPrinter.cpp.
References contains(), llvm::MachineOperand::getReg(), llvm::X86ATTInstPrinter::getRegisterName(), llvm::X86AsmPrinter::getSubtarget(), llvm::getX86SubSuperRegister(), llvm::X86Subtarget::is64Bit(), LLVM_FALLTHROUGH, and Reg.
Referenced by llvm::X86AsmPrinter::PrintAsmOperand().
|
static |
Definition at line 324 of file X86AsmPrinter.cpp.
References llvm::X86::AddrBaseReg, llvm::X86::AddrDisp, llvm::X86::AddrIndexReg, llvm::X86::AddrScaleAmt, llvm::X86::AddrSegmentReg, llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isImm(), and printOperand().
Referenced by llvm::X86AsmPrinter::PrintAsmMemoryOperand().
|
static |
Definition at line 260 of file X86AsmPrinter.cpp.
References llvm::X86::AddrBaseReg, llvm::X86::AddrDisp, llvm::X86::AddrIndexReg, llvm::X86::AddrScaleAmt, assert(), llvm::N86::ESP, llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineOperand::getType(), llvm_unreachable, llvm::MachineOperand::MO_ConstantPoolIndex, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_Immediate, printOperand(), and printSymbolOperand().
Referenced by printMemReference().
|
static |
Definition at line 312 of file X86AsmPrinter.cpp.
References llvm::X86::AddrSegmentReg, assert(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::isMem(), printLeaMemReference(), and printOperand().
Referenced by llvm::X86AsmPrinter::PrintAsmMemoryOperand().
|
static |
Definition at line 227 of file X86AsmPrinter.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::X86ATTInstPrinter::getRegisterName(), llvm::MachineOperand::getType(), llvm::getX86SubSuperRegister(), llvm_unreachable, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_Immediate, llvm::MachineOperand::MO_Register, printSymbolOperand(), Reg, and Size.
Referenced by llvm::X86AsmPrinter::PrintAsmOperand(), printIntelMemReference(), printLeaMemReference(), printMemReference(), printPCRelImm(), and printSymbolOperand().
|
static |
printPCRelImm - This is used to print an immediate value that ends up being encoded as a pc-relative value.
These print slightly differently, for example, a $ is not emitted.
Definition at line 209 of file X86AsmPrinter.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getType(), llvm_unreachable, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_Immediate, llvm::MachineOperand::MO_Register, printOperand(), and printSymbolOperand().
Referenced by llvm::X86AsmPrinter::PrintAsmOperand().
|
static |
printSymbolOperand - Print a raw symbol reference operand.
This handles jump tables, constant pools, global address and external symbols, all of which print to a label with various suffixes for relocation types etc.
Definition at line 110 of file X86AsmPrinter.cpp.
References llvm::AsmPrinter::GetCPISymbol(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getIndex(), llvm::MCSymbol::getName(), llvm::MachineModuleInfo::getObjFileInfo(), llvm::MachineOperand::getOffset(), llvm::MCContext::getOrCreateSymbol(), llvm::MachineFunction::getPICBaseSymbol(), llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits, Info >::getPointer(), llvm::AsmPrinter::getSymbol(), llvm::AsmPrinter::getSymbolWithGlobalValueBase(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::getType(), llvm::GlobalValue::hasInternalLinkage(), llvm_unreachable, llvm::AsmPrinter::MAI, llvm::AsmPrinter::MF, MI, llvm::AsmPrinter::MMI, llvm::X86II::MO_COFFSTUB, llvm::MachineOperand::MO_ConstantPoolIndex, llvm::X86II::MO_DARWIN_NONLAZY, llvm::X86II::MO_DARWIN_NONLAZY_PIC_BASE, llvm::X86II::MO_DLLIMPORT, llvm::X86II::MO_DTPOFF, llvm::MachineOperand::MO_GlobalAddress, llvm::X86II::MO_GOT, llvm::X86II::MO_GOT_ABSOLUTE_ADDRESS, llvm::X86II::MO_GOTNTPOFF, llvm::X86II::MO_GOTOFF, llvm::X86II::MO_GOTPCREL, llvm::X86II::MO_GOTTPOFF, llvm::X86II::MO_INDNTPOFF, llvm::X86II::MO_NO_FLAG, llvm::X86II::MO_NTPOFF, llvm::X86II::MO_PIC_BASE_OFFSET, llvm::X86II::MO_PLT, llvm::X86II::MO_SECREL, llvm::X86II::MO_TLSGD, llvm::X86II::MO_TLSLD, llvm::X86II::MO_TLSLDM, llvm::X86II::MO_TLVP, llvm::X86II::MO_TLVP_PIC_BASE, llvm::X86II::MO_TPOFF, llvm::RISCVFenceField::O, llvm::AsmPrinter::OutContext, P, llvm::Pass::print(), llvm::MCSymbol::print(), llvm::AsmPrinter::printOffset(), and printOperand().
Referenced by llvm::X86AsmPrinter::PrintAsmOperand(), printLeaMemReference(), printOperand(), and printPCRelImm().