LLVM 20.0.0git
|
Macros | |
#define | LLVM_TARGET(TargetName) void LLVMInitialize##TargetName##TargetInfo(void); |
#define | LLVM_TARGET(TargetName) void LLVMInitialize##TargetName##Target(void); |
#define | LLVM_TARGET(TargetName) void LLVMInitialize##TargetName##TargetMC(void); |
#define | LLVM_TARGET(TargetName) LLVMInitialize##TargetName##TargetInfo(); |
#define | LLVM_TARGET(TargetName) LLVMInitialize##TargetName##Target(); |
#define | LLVM_TARGET(TargetName) LLVMInitialize##TargetName##TargetMC(); |
#define | LLVM_ASM_PRINTER(TargetName) void LLVMInitialize##TargetName##AsmPrinter(void); |
#define | LLVM_ASM_PRINTER(TargetName) LLVMInitialize##TargetName##AsmPrinter(); |
#define | LLVM_ASM_PARSER(TargetName) void LLVMInitialize##TargetName##AsmParser(void); |
#define | LLVM_ASM_PARSER(TargetName) LLVMInitialize##TargetName##AsmParser(); |
#define | LLVM_DISASSEMBLER(TargetName) void LLVMInitialize##TargetName##Disassembler(void); |
#define | LLVM_DISASSEMBLER(TargetName) LLVMInitialize##TargetName##Disassembler(); |
Typedefs | |
typedef struct LLVMOpaqueTargetData * | LLVMTargetDataRef |
typedef struct LLVMOpaqueTargetLibraryInfotData * | LLVMTargetLibraryInfoRef |
typedef struct LLVMOpaqueTargetMachineOptions * | LLVMTargetMachineOptionsRef |
typedef struct LLVMOpaqueTargetMachine * | LLVMTargetMachineRef |
typedef struct LLVMTarget * | LLVMTargetRef |
Functions | |
static void | LLVMInitializeAllTargetInfos (void) |
LLVMInitializeAllTargetInfos - The main program should call this function if it wants access to all available targets that LLVM is configured to support. | |
static void | LLVMInitializeAllTargets (void) |
LLVMInitializeAllTargets - The main program should call this function if it wants to link in all available targets that LLVM is configured to support. | |
static void | LLVMInitializeAllTargetMCs (void) |
LLVMInitializeAllTargetMCs - The main program should call this function if it wants access to all available target MC that LLVM is configured to support. | |
static void | LLVMInitializeAllAsmPrinters (void) |
LLVMInitializeAllAsmPrinters - The main program should call this function if it wants all asm printers that LLVM is configured to support, to make them available via the TargetRegistry. | |
static void | LLVMInitializeAllAsmParsers (void) |
LLVMInitializeAllAsmParsers - The main program should call this function if it wants all asm parsers that LLVM is configured to support, to make them available via the TargetRegistry. | |
static void | LLVMInitializeAllDisassemblers (void) |
LLVMInitializeAllDisassemblers - The main program should call this function if it wants all disassemblers that LLVM is configured to support, to make them available via the TargetRegistry. | |
static LLVMBool | LLVMInitializeNativeTarget (void) |
LLVMInitializeNativeTarget - The main program should call this function to initialize the native target corresponding to the host. | |
static LLVMBool | LLVMInitializeNativeAsmParser (void) |
LLVMInitializeNativeTargetAsmParser - The main program should call this function to initialize the parser for the native target corresponding to the host. | |
static LLVMBool | LLVMInitializeNativeAsmPrinter (void) |
LLVMInitializeNativeTargetAsmPrinter - The main program should call this function to initialize the printer for the native target corresponding to the host. | |
static LLVMBool | LLVMInitializeNativeDisassembler (void) |
LLVMInitializeNativeTargetDisassembler - The main program should call this function to initialize the disassembler for the native target corresponding to the host. | |
LLVMTargetDataRef | LLVMGetModuleDataLayout (LLVMModuleRef M) |
Obtain the data layout for a module. | |
void | LLVMSetModuleDataLayout (LLVMModuleRef M, LLVMTargetDataRef DL) |
Set the data layout for a module. | |
LLVMTargetDataRef | LLVMCreateTargetData (const char *StringRep) |
Creates target data from a target layout string. | |
void | LLVMDisposeTargetData (LLVMTargetDataRef TD) |
Deallocates a TargetData. | |
void | LLVMAddTargetLibraryInfo (LLVMTargetLibraryInfoRef TLI, LLVMPassManagerRef PM) |
Adds target library information to a pass manager. | |
char * | LLVMCopyStringRepOfTargetData (LLVMTargetDataRef TD) |
Converts target data to a target layout string. | |
enum LLVMByteOrdering | LLVMByteOrder (LLVMTargetDataRef TD) |
Returns the byte order of a target, either LLVMBigEndian or LLVMLittleEndian. | |
unsigned | LLVMPointerSize (LLVMTargetDataRef TD) |
Returns the pointer size in bytes for a target. | |
unsigned | LLVMPointerSizeForAS (LLVMTargetDataRef TD, unsigned AS) |
Returns the pointer size in bytes for a target for a specified address space. | |
LLVMTypeRef | LLVMIntPtrType (LLVMTargetDataRef TD) |
Returns the integer type that is the same size as a pointer on a target. | |
LLVMTypeRef | LLVMIntPtrTypeForAS (LLVMTargetDataRef TD, unsigned AS) |
Returns the integer type that is the same size as a pointer on a target. | |
LLVMTypeRef | LLVMIntPtrTypeInContext (LLVMContextRef C, LLVMTargetDataRef TD) |
Returns the integer type that is the same size as a pointer on a target. | |
LLVMTypeRef | LLVMIntPtrTypeForASInContext (LLVMContextRef C, LLVMTargetDataRef TD, unsigned AS) |
Returns the integer type that is the same size as a pointer on a target. | |
unsigned long long | LLVMSizeOfTypeInBits (LLVMTargetDataRef TD, LLVMTypeRef Ty) |
Computes the size of a type in bits for a target. | |
unsigned long long | LLVMStoreSizeOfType (LLVMTargetDataRef TD, LLVMTypeRef Ty) |
Computes the storage size of a type in bytes for a target. | |
unsigned long long | LLVMABISizeOfType (LLVMTargetDataRef TD, LLVMTypeRef Ty) |
Computes the ABI size of a type in bytes for a target. | |
unsigned | LLVMABIAlignmentOfType (LLVMTargetDataRef TD, LLVMTypeRef Ty) |
Computes the ABI alignment of a type in bytes for a target. | |
unsigned | LLVMCallFrameAlignmentOfType (LLVMTargetDataRef TD, LLVMTypeRef Ty) |
Computes the call frame alignment of a type in bytes for a target. | |
unsigned | LLVMPreferredAlignmentOfType (LLVMTargetDataRef TD, LLVMTypeRef Ty) |
Computes the preferred alignment of a type in bytes for a target. | |
unsigned | LLVMPreferredAlignmentOfGlobal (LLVMTargetDataRef TD, LLVMValueRef GlobalVar) |
Computes the preferred alignment of a global variable in bytes for a target. | |
unsigned | LLVMElementAtOffset (LLVMTargetDataRef TD, LLVMTypeRef StructTy, unsigned long long Offset) |
Computes the structure element that contains the byte offset for a target. | |
unsigned long long | LLVMOffsetOfElement (LLVMTargetDataRef TD, LLVMTypeRef StructTy, unsigned Element) |
Computes the byte offset of the indexed struct element for a target. | |
LLVMTargetRef | LLVMGetFirstTarget (void) |
Returns the first llvm::Target in the registered targets list. | |
LLVMTargetRef | LLVMGetNextTarget (LLVMTargetRef T) |
Returns the next llvm::Target given a previous one (or null if there's none) | |
LLVMTargetRef | LLVMGetTargetFromName (const char *Name) |
Finds the target corresponding to the given name and stores it in T . | |
LLVMBool | LLVMGetTargetFromTriple (const char *Triple, LLVMTargetRef *T, char **ErrorMessage) |
Finds the target corresponding to the given triple and stores it in T . | |
const char * | LLVMGetTargetName (LLVMTargetRef T) |
Returns the name of a target. | |
const char * | LLVMGetTargetDescription (LLVMTargetRef T) |
Returns the description of a target. | |
LLVMBool | LLVMTargetHasJIT (LLVMTargetRef T) |
Returns if the target has a JIT. | |
LLVMBool | LLVMTargetHasTargetMachine (LLVMTargetRef T) |
Returns if the target has a TargetMachine associated. | |
LLVMBool | LLVMTargetHasAsmBackend (LLVMTargetRef T) |
Returns if the target as an ASM backend (required for emitting output) | |
LLVMTargetMachineOptionsRef | LLVMCreateTargetMachineOptions (void) |
Create a new set of options for an llvm::TargetMachine. | |
void | LLVMDisposeTargetMachineOptions (LLVMTargetMachineOptionsRef Options) |
Dispose of an LLVMTargetMachineOptionsRef instance. | |
void | LLVMTargetMachineOptionsSetCPU (LLVMTargetMachineOptionsRef Options, const char *CPU) |
void | LLVMTargetMachineOptionsSetFeatures (LLVMTargetMachineOptionsRef Options, const char *Features) |
Set the list of features for the target machine. | |
void | LLVMTargetMachineOptionsSetABI (LLVMTargetMachineOptionsRef Options, const char *ABI) |
void | LLVMTargetMachineOptionsSetCodeGenOptLevel (LLVMTargetMachineOptionsRef Options, LLVMCodeGenOptLevel Level) |
void | LLVMTargetMachineOptionsSetRelocMode (LLVMTargetMachineOptionsRef Options, LLVMRelocMode Reloc) |
void | LLVMTargetMachineOptionsSetCodeModel (LLVMTargetMachineOptionsRef Options, LLVMCodeModel CodeModel) |
LLVMTargetMachineRef | LLVMCreateTargetMachineWithOptions (LLVMTargetRef T, const char *Triple, LLVMTargetMachineOptionsRef Options) |
Create a new llvm::TargetMachine. | |
LLVMTargetMachineRef | LLVMCreateTargetMachine (LLVMTargetRef T, const char *Triple, const char *CPU, const char *Features, LLVMCodeGenOptLevel Level, LLVMRelocMode Reloc, LLVMCodeModel CodeModel) |
Creates a new llvm::TargetMachine. | |
void | LLVMDisposeTargetMachine (LLVMTargetMachineRef T) |
Dispose the LLVMTargetMachineRef instance generated by LLVMCreateTargetMachine. | |
LLVMTargetRef | LLVMGetTargetMachineTarget (LLVMTargetMachineRef T) |
Returns the Target used in a TargetMachine. | |
char * | LLVMGetTargetMachineTriple (LLVMTargetMachineRef T) |
Returns the triple used creating this target machine. | |
char * | LLVMGetTargetMachineCPU (LLVMTargetMachineRef T) |
Returns the cpu used creating this target machine. | |
char * | LLVMGetTargetMachineFeatureString (LLVMTargetMachineRef T) |
Returns the feature string used creating this target machine. | |
LLVMTargetDataRef | LLVMCreateTargetDataLayout (LLVMTargetMachineRef T) |
Create a DataLayout based on the targetMachine. | |
void | LLVMSetTargetMachineAsmVerbosity (LLVMTargetMachineRef T, LLVMBool VerboseAsm) |
Set the target machine's ASM verbosity. | |
void | LLVMSetTargetMachineFastISel (LLVMTargetMachineRef T, LLVMBool Enable) |
Enable fast-path instruction selection. | |
void | LLVMSetTargetMachineGlobalISel (LLVMTargetMachineRef T, LLVMBool Enable) |
Enable global instruction selection. | |
void | LLVMSetTargetMachineGlobalISelAbort (LLVMTargetMachineRef T, LLVMGlobalISelAbortMode Mode) |
Set abort behaviour when global instruction selection fails to lower/select an instruction. | |
void | LLVMSetTargetMachineMachineOutliner (LLVMTargetMachineRef T, LLVMBool Enable) |
Enable the MachineOutliner pass. | |
LLVMBool | LLVMTargetMachineEmitToFile (LLVMTargetMachineRef T, LLVMModuleRef M, const char *Filename, LLVMCodeGenFileType codegen, char **ErrorMessage) |
Emits an asm or object file for the given module to the filename. | |
LLVMBool | LLVMTargetMachineEmitToMemoryBuffer (LLVMTargetMachineRef T, LLVMModuleRef M, LLVMCodeGenFileType codegen, char **ErrorMessage, LLVMMemoryBufferRef *OutMemBuf) |
Compile the LLVM IR stored in M and store the result in OutMemBuf . | |
char * | LLVMGetDefaultTargetTriple (void) |
Get a triple for the host machine as a string. | |
char * | LLVMNormalizeTargetTriple (const char *triple) |
Normalize a target triple. | |
char * | LLVMGetHostCPUName (void) |
Get the host CPU as a string. | |
char * | LLVMGetHostCPUFeatures (void) |
Get the host CPU's features as a string. | |
void | LLVMAddAnalysisPasses (LLVMTargetMachineRef T, LLVMPassManagerRef PM) |
Adds the target-specific analysis passes to the pass manager. | |
#define LLVM_ASM_PARSER | ( | TargetName | ) | void LLVMInitialize##TargetName##AsmParser(void); |
#define LLVM_ASM_PARSER | ( | TargetName | ) | LLVMInitialize##TargetName##AsmParser(); |
#define LLVM_ASM_PRINTER | ( | TargetName | ) | void LLVMInitialize##TargetName##AsmPrinter(void); |
#define LLVM_ASM_PRINTER | ( | TargetName | ) | LLVMInitialize##TargetName##AsmPrinter(); |
#define LLVM_DISASSEMBLER | ( | TargetName | ) | void LLVMInitialize##TargetName##Disassembler(void); |
#define LLVM_DISASSEMBLER | ( | TargetName | ) | LLVMInitialize##TargetName##Disassembler(); |
#define LLVM_TARGET | ( | TargetName | ) | void LLVMInitialize##TargetName##TargetInfo(void); |
#define LLVM_TARGET | ( | TargetName | ) | void LLVMInitialize##TargetName##Target(void); |
#define LLVM_TARGET | ( | TargetName | ) | void LLVMInitialize##TargetName##TargetMC(void); |
#define LLVM_TARGET | ( | TargetName | ) | LLVMInitialize##TargetName##TargetInfo(); |
#define LLVM_TARGET | ( | TargetName | ) | LLVMInitialize##TargetName##Target(); |
#define LLVM_TARGET | ( | TargetName | ) | LLVMInitialize##TargetName##TargetMC(); |
typedef struct LLVMOpaqueTargetData* LLVMTargetDataRef |
typedef struct LLVMOpaqueTargetLibraryInfotData* LLVMTargetLibraryInfoRef |
typedef struct LLVMOpaqueTargetMachineOptions* LLVMTargetMachineOptionsRef |
Definition at line 34 of file TargetMachine.h.
typedef struct LLVMOpaqueTargetMachine* LLVMTargetMachineRef |
Definition at line 35 of file TargetMachine.h.
typedef struct LLVMTarget* LLVMTargetRef |
Definition at line 36 of file TargetMachine.h.
enum LLVMByteOrdering |
enum LLVMCodeGenFileType |
Enumerator | |
---|---|
LLVMAssemblyFile | |
LLVMObjectFile |
Definition at line 65 of file TargetMachine.h.
enum LLVMCodeGenOptLevel |
Enumerator | |
---|---|
LLVMCodeGenLevelNone | |
LLVMCodeGenLevelLess | |
LLVMCodeGenLevelDefault | |
LLVMCodeGenLevelAggressive |
Definition at line 38 of file TargetMachine.h.
enum LLVMCodeModel |
Enumerator | |
---|---|
LLVMCodeModelDefault | |
LLVMCodeModelJITDefault | |
LLVMCodeModelTiny | |
LLVMCodeModelSmall | |
LLVMCodeModelKernel | |
LLVMCodeModelMedium | |
LLVMCodeModelLarge |
Definition at line 55 of file TargetMachine.h.
Enumerator | |
---|---|
LLVMGlobalISelAbortEnable | |
LLVMGlobalISelAbortDisable | |
LLVMGlobalISelAbortDisableWithDiag |
Definition at line 70 of file TargetMachine.h.
enum LLVMRelocMode |
Enumerator | |
---|---|
LLVMRelocDefault | |
LLVMRelocStatic | |
LLVMRelocPIC | |
LLVMRelocDynamicNoPic | |
LLVMRelocROPI | |
LLVMRelocRWPI | |
LLVMRelocROPI_RWPI |
Definition at line 45 of file TargetMachine.h.
unsigned LLVMABIAlignmentOfType | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the ABI alignment of a type in bytes for a target.
See the method llvm::DataLayout::getTypeABISize.
Definition at line 109 of file Target.cpp.
References unwrap().
unsigned long long LLVMABISizeOfType | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the ABI size of a type in bytes for a target.
See the method llvm::DataLayout::getTypeAllocSize.
Definition at line 105 of file Target.cpp.
References unwrap().
void LLVMAddAnalysisPasses | ( | LLVMTargetMachineRef | T, |
LLVMPassManagerRef | PM | ||
) |
Adds the target-specific analysis passes to the pass manager.
Definition at line 372 of file TargetMachineC.cpp.
References llvm::createTargetTransformInfoWrapperPass(), and unwrap().
void LLVMAddTargetLibraryInfo | ( | LLVMTargetLibraryInfoRef | TLI, |
LLVMPassManagerRef | PM | ||
) |
Adds target library information to a pass manager.
This does not take ownership of the target library info. See the method llvm::PassManagerBase::add.
Definition at line 59 of file Target.cpp.
References unwrap().
enum LLVMByteOrdering LLVMByteOrder | ( | LLVMTargetDataRef | TD | ) |
Returns the byte order of a target, either LLVMBigEndian or LLVMLittleEndian.
See the method llvm::DataLayout::isLittleEndian.
Definition at line 69 of file Target.cpp.
References LLVMBigEndian, LLVMLittleEndian, and unwrap().
unsigned LLVMCallFrameAlignmentOfType | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the call frame alignment of a type in bytes for a target.
See the method llvm::DataLayout::getTypeABISize.
Definition at line 113 of file Target.cpp.
References unwrap().
char * LLVMCopyStringRepOfTargetData | ( | LLVMTargetDataRef | TD | ) |
Converts target data to a target layout string.
The string must be disposed with LLVMDisposeMessage. See the constructor llvm::DataLayout::DataLayout.
Definition at line 64 of file Target.cpp.
References unwrap().
LLVMTargetDataRef LLVMCreateTargetData | ( | const char * | StringRep | ) |
Creates target data from a target layout string.
See the constructor llvm::DataLayout::DataLayout.
Definition at line 51 of file Target.cpp.
References wrap().
LLVMTargetDataRef LLVMCreateTargetDataLayout | ( | LLVMTargetMachineRef | T | ) |
Create a DataLayout based on the targetMachine.
Definition at line 286 of file TargetMachineC.cpp.
LLVMTargetMachineRef LLVMCreateTargetMachine | ( | LLVMTargetRef | T, |
const char * | Triple, | ||
const char * | CPU, | ||
const char * | Features, | ||
LLVMCodeGenOptLevel | Level, | ||
LLVMRelocMode | Reloc, | ||
LLVMCodeModel | CodeModel | ||
) |
Creates a new llvm::TargetMachine.
See llvm::Target::createTargetMachine
Definition at line 211 of file TargetMachineC.cpp.
References LLVMCreateTargetMachineOptions(), LLVMCreateTargetMachineWithOptions(), LLVMDisposeTargetMachineOptions(), LLVMTargetMachineOptionsSetCodeGenOptLevel(), LLVMTargetMachineOptionsSetCodeModel(), LLVMTargetMachineOptionsSetCPU(), LLVMTargetMachineOptionsSetFeatures(), LLVMTargetMachineOptionsSetRelocMode(), Machine, and Options.
LLVMTargetMachineOptionsRef LLVMCreateTargetMachineOptions | ( | void | ) |
Create a new set of options for an llvm::TargetMachine.
The returned option structure must be released with LLVMDisposeTargetMachineOptions() after the call to LLVMCreateTargetMachineWithOptions().
Definition at line 118 of file TargetMachineC.cpp.
References wrap().
Referenced by LLVMCreateTargetMachine().
LLVMTargetMachineRef LLVMCreateTargetMachineWithOptions | ( | LLVMTargetRef | T, |
const char * | Triple, | ||
LLVMTargetMachineOptionsRef | Options | ||
) |
Create a new llvm::TargetMachine.
T | the target to create a machine for. |
Triple | a triple describing the target machine. |
Options | additional configuration (see LLVMCreateTargetMachineOptions()). |
Definition at line 200 of file TargetMachineC.cpp.
References llvm::MCTargetOptions::ABIName, createTargetMachine(), llvm::TargetOptions::MCOptions, Options, unwrap(), and wrap().
Referenced by LLVMCreateTargetMachine().
void LLVMDisposeTargetData | ( | LLVMTargetDataRef | TD | ) |
Deallocates a TargetData.
See the destructor llvm::DataLayout::~DataLayout.
Definition at line 55 of file Target.cpp.
References unwrap().
void LLVMDisposeTargetMachine | ( | LLVMTargetMachineRef | T | ) |
Dispose the LLVMTargetMachineRef instance generated by LLVMCreateTargetMachine.
Definition at line 228 of file TargetMachineC.cpp.
References unwrap().
Referenced by LLVMOrcJITTargetMachineBuilderCreateFromTargetMachine().
void LLVMDisposeTargetMachineOptions | ( | LLVMTargetMachineOptionsRef | Options | ) |
Dispose of an LLVMTargetMachineOptionsRef instance.
Definition at line 122 of file TargetMachineC.cpp.
References Options, and unwrap().
Referenced by LLVMCreateTargetMachine().
unsigned LLVMElementAtOffset | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | StructTy, | ||
unsigned long long | Offset | ||
) |
Computes the structure element that contains the byte offset for a target.
See the method llvm::StructLayout::getElementContainingOffset.
Definition at line 128 of file Target.cpp.
References llvm::Offset, and unwrap().
char * LLVMGetDefaultTargetTriple | ( | void | ) |
Get a triple for the host machine as a string.
The result needs to be disposed with LLVMDisposeMessage.
Definition at line 352 of file TargetMachineC.cpp.
References llvm::c_str(), and llvm::sys::getDefaultTargetTriple().
LLVMTargetRef LLVMGetFirstTarget | ( | void | ) |
Returns the first llvm::Target in the registered targets list.
Definition at line 63 of file TargetMachineC.cpp.
References llvm::TargetRegistry::targets(), and wrap().
char * LLVMGetHostCPUFeatures | ( | void | ) |
Get the host CPU's features as a string.
The result needs to be disposed with LLVMDisposeMessage.
Definition at line 364 of file TargetMachineC.cpp.
References llvm::SubtargetFeatures::AddFeature(), llvm::sys::getHostCPUFeatures(), and llvm::SubtargetFeatures::getString().
char * LLVMGetHostCPUName | ( | void | ) |
Get the host CPU as a string.
The result needs to be disposed with LLVMDisposeMessage.
Definition at line 360 of file TargetMachineC.cpp.
References llvm::sys::getHostCPUName().
LLVMTargetDataRef LLVMGetModuleDataLayout | ( | LLVMModuleRef | M | ) |
Obtain the data layout for a module.
Definition at line 43 of file Target.cpp.
LLVMTargetRef LLVMGetNextTarget | ( | LLVMTargetRef | T | ) |
Returns the next llvm::Target given a previous one (or null if there's none)
Definition at line 71 of file TargetMachineC.cpp.
const char * LLVMGetTargetDescription | ( | LLVMTargetRef | T | ) |
Returns the description of a target.
See llvm::Target::getDescription
Definition at line 102 of file TargetMachineC.cpp.
References llvm::Target::getShortDescription(), and unwrap().
LLVMTargetRef LLVMGetTargetFromName | ( | const char * | Name | ) |
Finds the target corresponding to the given name and stores it in T
.
Returns 0 on success.
Definition at line 75 of file TargetMachineC.cpp.
References llvm::find_if(), I, Name, llvm::TargetRegistry::targets(), and wrap().
LLVMBool LLVMGetTargetFromTriple | ( | const char * | Triple, |
LLVMTargetRef * | T, | ||
char ** | ErrorMessage | ||
) |
Finds the target corresponding to the given triple and stores it in T
.
Returns 0 on success. Optionally returns any error in ErrorMessage. Use LLVMDisposeMessage to dispose the message.
Definition at line 82 of file TargetMachineC.cpp.
References llvm::TargetRegistry::lookupTarget(), and wrap().
char * LLVMGetTargetMachineCPU | ( | LLVMTargetMachineRef | T | ) |
Returns the cpu used creating this target machine.
See llvm::TargetMachine::getCPU. The result needs to be disposed with LLVMDisposeMessage.
Definition at line 240 of file TargetMachineC.cpp.
References unwrap().
char * LLVMGetTargetMachineFeatureString | ( | LLVMTargetMachineRef | T | ) |
Returns the feature string used creating this target machine.
See llvm::TargetMachine::getFeatureString. The result needs to be disposed with LLVMDisposeMessage.
Definition at line 245 of file TargetMachineC.cpp.
References unwrap().
LLVMTargetRef LLVMGetTargetMachineTarget | ( | LLVMTargetMachineRef | T | ) |
Returns the Target used in a TargetMachine.
Definition at line 230 of file TargetMachineC.cpp.
char * LLVMGetTargetMachineTriple | ( | LLVMTargetMachineRef | T | ) |
Returns the triple used creating this target machine.
See llvm::TargetMachine::getTriple. The result needs to be disposed with LLVMDisposeMessage.
Definition at line 235 of file TargetMachineC.cpp.
References unwrap().
const char * LLVMGetTargetName | ( | LLVMTargetRef | T | ) |
Returns the name of a target.
Definition at line 98 of file TargetMachineC.cpp.
References llvm::Target::getName(), and unwrap().
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
LLVMTypeRef LLVMIntPtrType | ( | LLVMTargetDataRef | TD | ) |
Returns the integer type that is the same size as a pointer on a target.
See the method llvm::DataLayout::getIntPtrType.
Definition at line 81 of file Target.cpp.
References LLVMGetGlobalContext(), unwrap(), and wrap().
LLVMTypeRef LLVMIntPtrTypeForAS | ( | LLVMTargetDataRef | TD, |
unsigned | AS | ||
) |
Returns the integer type that is the same size as a pointer on a target.
This version allows the address space to be specified. See the method llvm::DataLayout::getIntPtrType.
Definition at line 85 of file Target.cpp.
References LLVMGetGlobalContext(), unwrap(), and wrap().
LLVMTypeRef LLVMIntPtrTypeForASInContext | ( | LLVMContextRef | C, |
LLVMTargetDataRef | TD, | ||
unsigned | AS | ||
) |
Returns the integer type that is the same size as a pointer on a target.
This version allows the address space to be specified. See the method llvm::DataLayout::getIntPtrType.
Definition at line 93 of file Target.cpp.
References llvm::CallingConv::C, unwrap(), and wrap().
LLVMTypeRef LLVMIntPtrTypeInContext | ( | LLVMContextRef | C, |
LLVMTargetDataRef | TD | ||
) |
Returns the integer type that is the same size as a pointer on a target.
See the method llvm::DataLayout::getIntPtrType.
Definition at line 89 of file Target.cpp.
References llvm::CallingConv::C, unwrap(), and wrap().
Normalize a target triple.
The result needs to be disposed with LLVMDisposeMessage.
Definition at line 356 of file TargetMachineC.cpp.
References llvm::c_str(), and llvm::Triple::normalize().
unsigned long long LLVMOffsetOfElement | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | StructTy, | ||
unsigned | Element | ||
) |
Computes the byte offset of the indexed struct element for a target.
See the method llvm::StructLayout::getElementContainingOffset.
Definition at line 134 of file Target.cpp.
References unwrap().
unsigned LLVMPointerSize | ( | LLVMTargetDataRef | TD | ) |
Returns the pointer size in bytes for a target.
See the method llvm::DataLayout::getPointerSize.
Definition at line 73 of file Target.cpp.
References unwrap().
unsigned LLVMPointerSizeForAS | ( | LLVMTargetDataRef | TD, |
unsigned | AS | ||
) |
Returns the pointer size in bytes for a target for a specified address space.
See the method llvm::DataLayout::getPointerSize.
Definition at line 77 of file Target.cpp.
References unwrap().
unsigned LLVMPreferredAlignmentOfGlobal | ( | LLVMTargetDataRef | TD, |
LLVMValueRef | GlobalVar | ||
) |
Computes the preferred alignment of a global variable in bytes for a target.
See the method llvm::DataLayout::getPreferredAlignment.
Definition at line 121 of file Target.cpp.
References unwrap().
unsigned LLVMPreferredAlignmentOfType | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the preferred alignment of a type in bytes for a target.
See the method llvm::DataLayout::getTypeABISize.
Definition at line 117 of file Target.cpp.
References unwrap().
void LLVMSetModuleDataLayout | ( | LLVMModuleRef | M, |
LLVMTargetDataRef | DL | ||
) |
Set the data layout for a module.
Definition at line 47 of file Target.cpp.
void LLVMSetTargetMachineAsmVerbosity | ( | LLVMTargetMachineRef | T, |
LLVMBool | VerboseAsm | ||
) |
Set the target machine's ASM verbosity.
Definition at line 250 of file TargetMachineC.cpp.
References unwrap().
void LLVMSetTargetMachineFastISel | ( | LLVMTargetMachineRef | T, |
LLVMBool | Enable | ||
) |
Enable fast-path instruction selection.
Definition at line 255 of file TargetMachineC.cpp.
void LLVMSetTargetMachineGlobalISel | ( | LLVMTargetMachineRef | T, |
LLVMBool | Enable | ||
) |
Enable global instruction selection.
Definition at line 259 of file TargetMachineC.cpp.
void LLVMSetTargetMachineGlobalISelAbort | ( | LLVMTargetMachineRef | T, |
LLVMGlobalISelAbortMode | Mode | ||
) |
Set abort behaviour when global instruction selection fails to lower/select an instruction.
Definition at line 263 of file TargetMachineC.cpp.
References LLVMGlobalISelAbortDisable, LLVMGlobalISelAbortDisableWithDiag, LLVMGlobalISelAbortEnable, and unwrap().
void LLVMSetTargetMachineMachineOutliner | ( | LLVMTargetMachineRef | T, |
LLVMBool | Enable | ||
) |
Enable the MachineOutliner pass.
Definition at line 281 of file TargetMachineC.cpp.
unsigned long long LLVMSizeOfTypeInBits | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the size of a type in bits for a target.
See the method llvm::DataLayout::getTypeSizeInBits.
Definition at line 97 of file Target.cpp.
References unwrap().
unsigned long long LLVMStoreSizeOfType | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the storage size of a type in bytes for a target.
See the method llvm::DataLayout::getTypeStoreSize.
Definition at line 101 of file Target.cpp.
References unwrap().
LLVMBool LLVMTargetHasAsmBackend | ( | LLVMTargetRef | T | ) |
Returns if the target as an ASM backend (required for emitting output)
Definition at line 114 of file TargetMachineC.cpp.
References llvm::Target::hasMCAsmBackend(), and unwrap().
LLVMBool LLVMTargetHasJIT | ( | LLVMTargetRef | T | ) |
Returns if the target has a JIT.
Definition at line 106 of file TargetMachineC.cpp.
References llvm::Target::hasJIT(), and unwrap().
LLVMBool LLVMTargetHasTargetMachine | ( | LLVMTargetRef | T | ) |
Returns if the target has a TargetMachine associated.
Definition at line 110 of file TargetMachineC.cpp.
References llvm::Target::hasTargetMachine(), and unwrap().
LLVMBool LLVMTargetMachineEmitToFile | ( | LLVMTargetMachineRef | T, |
LLVMModuleRef | M, | ||
const char * | Filename, | ||
LLVMCodeGenFileType | codegen, | ||
char ** | ErrorMessage | ||
) |
Emits an asm or object file for the given module to the filename.
This wraps several c++ only classes (among them a file stream). Returns any error in ErrorMessage. Use LLVMDisposeMessage to dispose the message.
Definition at line 324 of file TargetMachineC.cpp.
References llvm::raw_ostream::flush(), LLVMTargetMachineEmit(), and llvm::sys::fs::OF_None.
LLVMBool LLVMTargetMachineEmitToMemoryBuffer | ( | LLVMTargetMachineRef | T, |
LLVMModuleRef | M, | ||
LLVMCodeGenFileType | codegen, | ||
char ** | ErrorMessage, | ||
LLVMMemoryBufferRef * | OutMemBuf | ||
) |
Compile the LLVM IR stored in M
and store the result in OutMemBuf
.
Definition at line 339 of file TargetMachineC.cpp.
References LLVMCreateMemoryBufferWithMemoryRangeCopy(), LLVMTargetMachineEmit(), and llvm::raw_svector_ostream::str().
void LLVMTargetMachineOptionsSetABI | ( | LLVMTargetMachineOptionsRef | Options, |
const char * | ABI | ||
) |
Definition at line 136 of file TargetMachineC.cpp.
void LLVMTargetMachineOptionsSetCodeGenOptLevel | ( | LLVMTargetMachineOptionsRef | Options, |
LLVMCodeGenOptLevel | Level | ||
) |
Definition at line 141 of file TargetMachineC.cpp.
References LLVMCodeGenLevelAggressive, LLVMCodeGenLevelDefault, LLVMCodeGenLevelLess, LLVMCodeGenLevelNone, Options, and unwrap().
Referenced by LLVMCreateTargetMachine().
void LLVMTargetMachineOptionsSetCodeModel | ( | LLVMTargetMachineOptionsRef | Options, |
LLVMCodeModel | CodeModel | ||
) |
Definition at line 193 of file TargetMachineC.cpp.
References Options, and unwrap().
Referenced by LLVMCreateTargetMachine().
void LLVMTargetMachineOptionsSetCPU | ( | LLVMTargetMachineOptionsRef | Options, |
const char * | CPU | ||
) |
Definition at line 126 of file TargetMachineC.cpp.
References Options, and unwrap().
Referenced by LLVMCreateTargetMachine().
void LLVMTargetMachineOptionsSetFeatures | ( | LLVMTargetMachineOptionsRef | Options, |
const char * | Features | ||
) |
Set the list of features for the target machine.
Features | a comma-separated list of features. |
Definition at line 131 of file TargetMachineC.cpp.
References Options, and unwrap().
Referenced by LLVMCreateTargetMachine().
void LLVMTargetMachineOptionsSetRelocMode | ( | LLVMTargetMachineOptionsRef | Options, |
LLVMRelocMode | Reloc | ||
) |
Definition at line 163 of file TargetMachineC.cpp.
References llvm::Reloc::DynamicNoPIC, LLVMRelocDefault, LLVMRelocDynamicNoPic, LLVMRelocPIC, LLVMRelocROPI, LLVMRelocROPI_RWPI, LLVMRelocRWPI, LLVMRelocStatic, Options, llvm::Reloc::PIC_, llvm::Reloc::ROPI, llvm::Reloc::ROPI_RWPI, llvm::Reloc::RWPI, llvm::Reloc::Static, and unwrap().
Referenced by LLVMCreateTargetMachine().