LLVM  6.0.0svn
Macros | Functions
ARMAsmPrinter.cpp File Reference
#include "ARMAsmPrinter.h"
#include "ARM.h"
#include "ARMConstantPoolValue.h"
#include "ARMMachineFunctionInfo.h"
#include "ARMTargetMachine.h"
#include "ARMTargetObjectFile.h"
#include "InstPrinter/ARMInstPrinter.h"
#include "MCTargetDesc/ARMAddressingModes.h"
#include "MCTargetDesc/ARMMCExpr.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/BinaryFormat/COFF.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/MachineModuleInfoImpls.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Mangler.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Type.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCELFStreamer.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstBuilder.h"
#include "llvm/MC/MCObjectStreamer.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/ARMBuildAttributes.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/TargetParser.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include "ARMGenMCPseudoLowering.inc"
Include dependency graph for ARMAsmPrinter.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "asm-printer"
 

Functions

static bool isThumb (const MCSubtargetInfo &STI)
 
static void emitNonLazySymbolPointer (MCStreamer &OutStreamer, MCSymbol *StubLabel, MachineModuleInfoImpl::StubValueTy &MCSym)
 
static bool checkFunctionsAttributeConsistency (const Module &M, StringRef Attr, StringRef Value)
 
static MCSymbolgetPICLabel (StringRef Prefix, unsigned FunctionNumber, unsigned LabelId, MCContext &Ctx)
 
static MCSymbolRefExpr::VariantKind getModifierVariantKind (ARMCP::ARMCPModifier Modifier)
 
void LLVMInitializeARMAsmPrinter ()
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "asm-printer"

Definition at line 53 of file ARMAsmPrinter.cpp.

Function Documentation

◆ checkFunctionsAttributeConsistency()

static bool checkFunctionsAttributeConsistency ( const Module M,
StringRef  Attr,
StringRef  Value 
)
static

Definition at line 593 of file ARMAsmPrinter.cpp.

References llvm::ARMBuildAttrs::ABI_align_needed, llvm::ARMBuildAttrs::ABI_align_preserved, llvm::ARMBuildAttrs::ABI_enum_size, llvm::ARMBuildAttrs::ABI_FP_16bit_format, llvm::ARMBuildAttrs::ABI_FP_denormal, llvm::ARMBuildAttrs::ABI_FP_exceptions, llvm::ARMBuildAttrs::ABI_FP_number_model, llvm::ARMBuildAttrs::ABI_FP_rounding, llvm::ARMBuildAttrs::ABI_PCS_GOT_use, llvm::ARMBuildAttrs::ABI_PCS_R9_use, llvm::ARMBuildAttrs::ABI_PCS_RO_data, llvm::ARMBuildAttrs::ABI_PCS_RW_data, llvm::ARMBuildAttrs::ABI_PCS_wchar_t, llvm::ARMBuildAttrs::ABI_VFP_args, llvm::ARMBuildAttrs::AddressDirect, llvm::ARMBuildAttrs::AddressGOT, llvm::ARMBuildAttrs::AddressROPCRel, llvm::ARMBuildAttrs::AddressRWPCRel, llvm::ARMBuildAttrs::AddressRWSBRel, llvm::ARMBuildAttrs::Allowed, llvm::ARMBuildAttrs::AllowIEEE754, llvm::any_of(), assert(), llvm::ARMBuildAttrs::conformance, llvm::ARMTargetStreamer::emitAttribute(), llvm::ARMTargetStreamer::emitTargetAttributes(), llvm::ARMTargetStreamer::emitTextAttribute(), llvm::StringRef::empty(), F(), llvm::TargetOptions::FloatABIType, llvm::ARMBuildAttrs::FP16FormatIEEE, llvm::TargetOptions::FPDenormalMode, llvm::Function::getFnAttribute(), llvm::MachineModuleInfo::getModule(), llvm::TargetMachine::getTargetCPU(), llvm::TargetMachine::getTargetFeatureString(), llvm::TargetMachine::getTargetTriple(), llvm::Attribute::getValueAsString(), llvm::FloatABI::Hard, llvm::ARMBuildAttrs::HardFPAAPCS, llvm::TargetOptions::HonorSignDependentRoundingFPMathOption, llvm::ARMBuildAttrs::IEEEDenormals, llvm::ARMBaseTargetMachine::isLittleEndian(), llvm::AsmPrinter::isPositionIndependent(), llvm::AsmPrinter::MMI, llvm::TargetOptions::NoInfsFPMath, llvm::TargetOptions::NoNaNsFPMath, llvm::ARMBuildAttrs::Not_Allowed, llvm::TargetOptions::NoTrappingFPMath, llvm::TargetMachine::Options, llvm::AsmPrinter::OutStreamer, llvm::ARM_MC::ParseARMTriple(), llvm::FPDenormal::PositiveZero, llvm::ARMBuildAttrs::PositiveZero, llvm::ARMBuildAttrs::PreserveFPSign, llvm::FPDenormal::PreserveSign, llvm::ARMBuildAttrs::R9IsGPR, llvm::ARMBuildAttrs::R9IsSB, llvm::ARMBuildAttrs::R9Reserved, llvm::ARMTargetStreamer::switchVendor(), llvm::AsmPrinter::TM, and llvm::TargetOptions::UnsafeFPMath.

◆ emitNonLazySymbolPointer()

static void emitNonLazySymbolPointer ( MCStreamer OutStreamer,
MCSymbol StubLabel,
MachineModuleInfoImpl::StubValueTy MCSym 
)
static

◆ getModifierVariantKind()

static MCSymbolRefExpr::VariantKind getModifierVariantKind ( ARMCP::ARMCPModifier  Modifier)
static

◆ getPICLabel()

static MCSymbol* getPICLabel ( StringRef  Prefix,
unsigned  FunctionNumber,
unsigned  LabelId,
MCContext Ctx 
)
static

◆ isThumb()

static bool isThumb ( const MCSubtargetInfo STI)
static

◆ LLVMInitializeARMAsmPrinter()

void LLVMInitializeARMAsmPrinter ( )