Project Alice
|
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 |
#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.
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.
void LLVMAddAnalysisPasses | ( | LLVMTargetMachineRef | T, |
LLVMPassManagerRef | PM | ||
) |
Adds the target-specific analysis passes to the pass manager.
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.
enum LLVMByteOrdering LLVMByteOrder | ( | LLVMTargetDataRef | TD | ) |
Returns the byte order of a target, either LLVMBigEndian or LLVMLittleEndian. See the method llvm::DataLayout::isLittleEndian.
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.
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.
LLVMTargetDataRef LLVMCreateTargetData | ( | const char * | StringRep | ) |
Creates target data from a target layout string. See the constructor llvm::DataLayout::DataLayout.
LLVMTargetDataRef LLVMCreateTargetDataLayout | ( | LLVMTargetMachineRef | T | ) |
Create a DataLayout based on the 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. See llvm::Target::createTargetMachine
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().
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()). |
void LLVMDisposeTargetData | ( | LLVMTargetDataRef | TD | ) |
Deallocates a TargetData. See the destructor llvm::DataLayout::~DataLayout.
void LLVMDisposeTargetMachine | ( | LLVMTargetMachineRef | T | ) |
Dispose the LLVMTargetMachineRef instance generated by LLVMCreateTargetMachine.
void LLVMDisposeTargetMachineOptions | ( | LLVMTargetMachineOptionsRef | Options | ) |
Dispose of an LLVMTargetMachineOptionsRef instance.
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.
char * LLVMGetDefaultTargetTriple | ( | void | ) |
Get a triple for the host machine as a string. The result needs to be disposed with LLVMDisposeMessage.
LLVMTargetRef LLVMGetFirstTarget | ( | void | ) |
Returns the first llvm::Target in the registered targets list.
char * LLVMGetHostCPUFeatures | ( | void | ) |
Get the host CPU's features as a string. The result needs to be disposed with LLVMDisposeMessage.
char * LLVMGetHostCPUName | ( | void | ) |
Get the host CPU as a string. The result needs to be disposed with LLVMDisposeMessage.
LLVMTargetDataRef LLVMGetModuleDataLayout | ( | LLVMModuleRef | M | ) |
Obtain the data layout for a module.
LLVMTargetRef LLVMGetNextTarget | ( | LLVMTargetRef | T | ) |
Returns the next llvm::Target given a previous one (or null if there's none)
const char * LLVMGetTargetDescription | ( | LLVMTargetRef | T | ) |
Returns the description of a target. See llvm::Target::getDescription
LLVMTargetRef LLVMGetTargetFromName | ( | const char * | Name | ) |
Finds the target corresponding to the given name and stores it in T
. Returns 0 on success.
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.
char * LLVMGetTargetMachineCPU | ( | LLVMTargetMachineRef | T | ) |
Returns the cpu used creating this target machine. See llvm::TargetMachine::getCPU. The result needs to be disposed with LLVMDisposeMessage.
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.
LLVMTargetRef LLVMGetTargetMachineTarget | ( | LLVMTargetMachineRef | T | ) |
Returns the Target used in a TargetMachine
char * LLVMGetTargetMachineTriple | ( | LLVMTargetMachineRef | T | ) |
Returns the triple used creating this target machine. See llvm::TargetMachine::getTriple. The result needs to be disposed with LLVMDisposeMessage.
const char * LLVMGetTargetName | ( | LLVMTargetRef | T | ) |
Returns the name of a target. See llvm::Target::getName
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.
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.
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.
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.
char * LLVMNormalizeTargetTriple | ( | const char * | triple | ) |
Normalize a target triple. The result needs to be disposed with LLVMDisposeMessage.
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.
unsigned LLVMPointerSize | ( | LLVMTargetDataRef | TD | ) |
Returns the pointer size in bytes for a target. See the method llvm::DataLayout::getPointerSize.
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.
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.
unsigned LLVMPreferredAlignmentOfType | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the preferred alignment of a type in bytes for a target. See the method llvm::DataLayout::getTypeABISize.
void LLVMSetModuleDataLayout | ( | LLVMModuleRef | M, |
LLVMTargetDataRef | DL | ||
) |
Set the data layout for a module.
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.
unsigned long long LLVMSizeOfTypeInBits | ( | LLVMTargetDataRef | TD, |
LLVMTypeRef | Ty | ||
) |
Computes the size of a type in bytes for a target. See the method llvm::DataLayout::getTypeSizeInBits.
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.
LLVMBool LLVMTargetHasAsmBackend | ( | LLVMTargetRef | T | ) |
Returns if the target as an ASM backend (required for emitting output)
LLVMBool LLVMTargetHasJIT | ( | LLVMTargetRef | T | ) |
Returns if the target has a JIT
LLVMBool LLVMTargetHasTargetMachine | ( | LLVMTargetRef | T | ) |
Returns if the target has a TargetMachine associated
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.
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
.
void LLVMTargetMachineOptionsSetABI | ( | LLVMTargetMachineOptionsRef | Options, |
const char * | ABI | ||
) |
void LLVMTargetMachineOptionsSetCodeGenOptLevel | ( | LLVMTargetMachineOptionsRef | Options, |
LLVMCodeGenOptLevel | Level | ||
) |
void LLVMTargetMachineOptionsSetCodeModel | ( | LLVMTargetMachineOptionsRef | Options, |
LLVMCodeModel | CodeModel | ||
) |
void LLVMTargetMachineOptionsSetCPU | ( | LLVMTargetMachineOptionsRef | Options, |
const char * | CPU | ||
) |
void LLVMTargetMachineOptionsSetFeatures | ( | LLVMTargetMachineOptionsRef | Options, |
const char * | Features | ||
) |
Set the list of features for the target machine.
Features | a comma-separated list of features. |
void LLVMTargetMachineOptionsSetRelocMode | ( | LLVMTargetMachineOptionsRef | Options, |
LLVMRelocMode | Reloc | ||
) |