Go to the documentation of this file.
13 #ifndef LLVM_LIB_TARGET_ARM_ARMTARGETMACHINE_H
14 #define LLVM_LIB_TARGET_ARM_ARMTARGETMACHINE_H
37 std::unique_ptr<TargetLoweringObjectFile>
TLOF;
105 #endif // LLVM_LIB_TARGET_ARM_ARMTARGETMACHINE_H
This is an optimization pass for GlobalISel generic memory operations.
Target - Wrapper for Target specific information.
TargetTransformInfo getTargetTransformInfo(const Function &F) const override
Get a TargetTransformInfo implementation for the target.
Triple - Helper class for working with autoconf configuration names.
ARMBETargetMachine(const Target &T, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Optional< Reloc::Model > RM, Optional< CodeModel::Model > CM, CodeGenOpt::Level OL, bool JIT)
const ARMSubtarget * getSubtargetImpl() const =delete
~ARMBaseTargetMachine() override
bool isTargetHardFloat() const
bool isLittleEndian() const
bool isOSBinFormatMachO() const
Tests whether the environment is MachO.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
Target-Independent Code Generator Pass Configuration Options.
Triple TargetTriple
Triple string, CPU name, and target feature strings the TargetMachine instance is created with.
bool targetSchedulesPostRAScheduling() const override
True if subtarget inserts the final scheduling pass on its own.
bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override
Returns true if a cast between SrcAS and DestAS is a noop.
StringRef - Represent a constant reference to a string, i.e.
bool isOSWindows() const
Tests whether the OS is Windows.
TargetLoweringObjectFile * getObjFileLowering() const override
ARMBaseTargetMachine(const Target &T, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Optional< Reloc::Model > RM, Optional< CodeModel::Model > CM, CodeGenOpt::Level OL, bool isLittle)
Create an ARM architecture model.
SubArchType getSubArch() const
get the parsed subarchitecture type for this triple.
This class describes a target machine that is implemented with the LLVM target-independent code gener...
enum llvm::ARMBaseTargetMachine::ARMABI TargetABI
ARMLETargetMachine(const Target &T, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Optional< Reloc::Model > RM, Optional< CodeModel::Model > CM, CodeGenOpt::Level OL, bool JIT)
std::unique_ptr< TargetLoweringObjectFile > TLOF
ARM/Thumb little endian target machine.
StringMap< std::unique_ptr< ARMSubtarget > > SubtargetMap
PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having ...
ARM/Thumb big endian target machine.
EnvironmentType getEnvironment() const
Get the parsed environment type of this triple.
TargetPassConfig * createPassConfig(PassManagerBase &PM) override
Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of ...