public class LLVMTargetMachine
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
LLVMTargetMachine.Functions
Contains the function pointers loaded from
LLVMCore.getLibrary(). |
| Modifier and Type | Field and Description |
|---|---|
static int |
LLVMAssemblyFile
LLVMCodeGenFileType |
static int |
LLVMCodeGenLevelAggressive
LLVMCodeGenOptLevel |
static int |
LLVMCodeGenLevelDefault
LLVMCodeGenOptLevel |
static int |
LLVMCodeGenLevelLess
LLVMCodeGenOptLevel |
static int |
LLVMCodeGenLevelNone
LLVMCodeGenOptLevel |
static int |
LLVMCodeModelDefault
LLVMCodeModel |
static int |
LLVMCodeModelJITDefault
LLVMCodeModel |
static int |
LLVMCodeModelKernel
LLVMCodeModel |
static int |
LLVMCodeModelLarge
LLVMCodeModel |
static int |
LLVMCodeModelMedium
LLVMCodeModel |
static int |
LLVMCodeModelSmall
LLVMCodeModel |
static int |
LLVMCodeModelTiny
LLVMCodeModel |
static int |
LLVMObjectFile
LLVMCodeGenFileType |
static int |
LLVMRelocDefault
LLVMRelocMode |
static int |
LLVMRelocDynamicNoPic
LLVMRelocMode |
static int |
LLVMRelocPIC
LLVMRelocMode |
static int |
LLVMRelocROPI
LLVMRelocMode |
static int |
LLVMRelocROPI_RWPI
LLVMRelocMode |
static int |
LLVMRelocRWPI
LLVMRelocMode |
static int |
LLVMRelocStatic
LLVMRelocMode |
| Modifier and Type | Method and Description |
|---|---|
static void |
LLVMAddAnalysisPasses(long T,
long PM)
Adds the target-specific analysis passes to the pass manager.
|
static long |
LLVMCreateTargetDataLayout(long T)
Create a
DataLayout based on the target machine. |
static long |
LLVMCreateTargetMachine(long T,
java.nio.ByteBuffer Triple,
java.nio.ByteBuffer CPU,
java.nio.ByteBuffer Features,
int Level,
int Reloc,
int CodeModel)
Creates a new
llvm::TargetMachine. |
static long |
LLVMCreateTargetMachine(long T,
java.lang.CharSequence Triple,
java.lang.CharSequence CPU,
java.lang.CharSequence Features,
int Level,
int Reloc,
int CodeModel)
Creates a new
llvm::TargetMachine. |
static void |
LLVMDisposeTargetMachine(long T)
Dispose the
LLVMTargetMachineRef instance generated by CreateTargetMachine. |
static java.lang.String |
LLVMGetDefaultTargetTriple()
Get a triple for the host machine as a string.
|
static long |
LLVMGetFirstTarget()
Returns the first
llvm::Target in the registered targets list. |
static java.lang.String |
LLVMGetHostCPUFeatures()
Get the host CPU's features as a string.
|
static java.lang.String |
LLVMGetHostCPUName()
Get the host CPU as a string.
|
static long |
LLVMGetNextTarget(long T)
Returns the next
llvm::Target given a previous one (or null if there's none) |
static java.lang.String |
LLVMGetTargetDescription(long T)
Returns the description of a target.
|
static long |
LLVMGetTargetFromName(java.nio.ByteBuffer Name)
Finds the target corresponding to the given name and stores it in
T. |
static long |
LLVMGetTargetFromName(java.lang.CharSequence Name)
Finds the target corresponding to the given name and stores it in
T. |
static boolean |
LLVMGetTargetFromTriple(java.nio.ByteBuffer Triple,
org.lwjgl.PointerBuffer T,
org.lwjgl.PointerBuffer ErrorMessage)
Finds the target corresponding to the given triple and stores it in
T. |
static boolean |
LLVMGetTargetFromTriple(java.lang.CharSequence Triple,
org.lwjgl.PointerBuffer T,
org.lwjgl.PointerBuffer ErrorMessage)
Finds the target corresponding to the given triple and stores it in
T. |
static java.lang.String |
LLVMGetTargetMachineCPU(long T)
Returns the cpu used creating this target machine.
|
static java.lang.String |
LLVMGetTargetMachineFeatureString(long T)
Returns the feature string used creating this target machine.
|
static long |
LLVMGetTargetMachineTarget(long T)
Returns the
Target used in a TargetMachine |
static java.lang.String |
LLVMGetTargetMachineTriple(long T)
Returns the triple used creating this target machine.
|
static java.lang.String |
LLVMGetTargetName(long T)
Returns the name of a target.
|
static java.lang.String |
LLVMNormalizeTargetTriple(java.nio.ByteBuffer triple)
Normalize a target triple.
|
static java.lang.String |
LLVMNormalizeTargetTriple(java.lang.CharSequence triple)
Normalize a target triple.
|
static void |
LLVMSetTargetMachineAsmVerbosity(long T,
boolean VerboseAsm)
Set the target machine's ASM verbosity.
|
static boolean |
LLVMTargetHasAsmBackend(long T)
Returns if the target as an ASM backend (required for emitting output)
|
static boolean |
LLVMTargetHasJIT(long T)
Returns if the target has a JIT
|
static boolean |
LLVMTargetHasTargetMachine(long T)
Returns if the target has a
TargetMachine associated |
static boolean |
LLVMTargetMachineEmitToFile(long T,
long M,
java.nio.ByteBuffer Filename,
int codegen,
org.lwjgl.PointerBuffer ErrorMessage)
Emits an asm or object file for the given module to the filename.
|
static boolean |
LLVMTargetMachineEmitToMemoryBuffer(long T,
long M,
int codegen,
org.lwjgl.PointerBuffer ErrorMessage,
org.lwjgl.PointerBuffer OutMemBuf)
Compile the LLVM IR stored in
M and store the result in OutMemBuf. |
static long |
nLLVMCreateTargetMachine(long T,
long Triple,
long CPU,
long Features,
int Level,
int Reloc,
int CodeModel)
Unsafe version of:
CreateTargetMachine |
static long |
nLLVMGetDefaultTargetTriple()
Unsafe version of:
GetDefaultTargetTriple |
static long |
nLLVMGetHostCPUFeatures()
Unsafe version of:
GetHostCPUFeatures |
static long |
nLLVMGetHostCPUName()
Unsafe version of:
GetHostCPUName |
static long |
nLLVMGetTargetDescription(long T)
Unsafe version of:
GetTargetDescription |
static long |
nLLVMGetTargetFromName(long Name)
Unsafe version of:
GetTargetFromName |
static int |
nLLVMGetTargetFromTriple(long Triple,
long T,
long ErrorMessage)
Unsafe version of:
GetTargetFromTriple |
static long |
nLLVMGetTargetMachineCPU(long T)
Unsafe version of:
GetTargetMachineCPU |
static long |
nLLVMGetTargetMachineFeatureString(long T)
Unsafe version of:
GetTargetMachineFeatureString |
static long |
nLLVMGetTargetMachineTriple(long T)
Unsafe version of:
GetTargetMachineTriple |
static long |
nLLVMGetTargetName(long T)
Unsafe version of:
GetTargetName |
static long |
nLLVMNormalizeTargetTriple(long triple)
Unsafe version of:
NormalizeTargetTriple |
static int |
nLLVMTargetMachineEmitToFile(long T,
long M,
long Filename,
int codegen,
long ErrorMessage)
Unsafe version of:
TargetMachineEmitToFile |
static int |
nLLVMTargetMachineEmitToMemoryBuffer(long T,
long M,
int codegen,
long ErrorMessage,
long OutMemBuf)
Unsafe version of:
TargetMachineEmitToMemoryBuffer |
public static final int LLVMCodeGenLevelNone
LLVMCodeGenOptLevel
public static final int LLVMCodeGenLevelLess
LLVMCodeGenOptLevel
public static final int LLVMCodeGenLevelDefault
LLVMCodeGenOptLevel
public static final int LLVMCodeGenLevelAggressive
LLVMCodeGenOptLevel
public static final int LLVMRelocDefault
LLVMRelocMode
public static final int LLVMRelocStatic
LLVMRelocMode
public static final int LLVMRelocPIC
LLVMRelocMode
public static final int LLVMRelocDynamicNoPic
LLVMRelocMode
public static final int LLVMRelocROPI
LLVMRelocMode
public static final int LLVMRelocRWPI
LLVMRelocMode
public static final int LLVMRelocROPI_RWPI
LLVMRelocMode
public static final int LLVMCodeModelDefault
LLVMCodeModel
public static final int LLVMCodeModelJITDefault
LLVMCodeModel
public static final int LLVMCodeModelTiny
LLVMCodeModel
public static final int LLVMCodeModelSmall
LLVMCodeModel
public static final int LLVMCodeModelKernel
LLVMCodeModel
public static final int LLVMCodeModelMedium
LLVMCodeModel
public static final int LLVMCodeModelLarge
LLVMCodeModel
public static final int LLVMAssemblyFile
public static final int LLVMObjectFile
public static long LLVMGetFirstTarget()
llvm::Target in the registered targets list.public static long LLVMGetNextTarget(long T)
llvm::Target given a previous one (or null if there's none)public static long nLLVMGetTargetFromName(long Name)
GetTargetFromNamepublic static long LLVMGetTargetFromName(java.nio.ByteBuffer Name)
T. Returns 0 on success.public static long LLVMGetTargetFromName(java.lang.CharSequence Name)
T. Returns 0 on success.public static int nLLVMGetTargetFromTriple(long Triple,
long T,
long ErrorMessage)
GetTargetFromTriplepublic static boolean LLVMGetTargetFromTriple(java.nio.ByteBuffer Triple,
org.lwjgl.PointerBuffer T,
org.lwjgl.PointerBuffer ErrorMessage)
T. Returns 0 on success. Optionally returns any error in
ErrorMessage. Use DisposeMessage to dispose the message.public static boolean LLVMGetTargetFromTriple(java.lang.CharSequence Triple,
org.lwjgl.PointerBuffer T,
org.lwjgl.PointerBuffer ErrorMessage)
T. Returns 0 on success. Optionally returns any error in
ErrorMessage. Use DisposeMessage to dispose the message.public static long nLLVMGetTargetName(long T)
GetTargetName@Nullable public static java.lang.String LLVMGetTargetName(long T)
llvm::Target::getNamepublic static long nLLVMGetTargetDescription(long T)
GetTargetDescription@Nullable public static java.lang.String LLVMGetTargetDescription(long T)
llvm::Target::getDescriptionpublic static boolean LLVMTargetHasJIT(long T)
public static boolean LLVMTargetHasTargetMachine(long T)
TargetMachine associatedpublic static boolean LLVMTargetHasAsmBackend(long T)
public static long nLLVMCreateTargetMachine(long T,
long Triple,
long CPU,
long Features,
int Level,
int Reloc,
int CodeModel)
CreateTargetMachinepublic static long LLVMCreateTargetMachine(long T,
java.nio.ByteBuffer Triple,
java.nio.ByteBuffer CPU,
java.nio.ByteBuffer Features,
int Level,
int Reloc,
int CodeModel)
llvm::TargetMachine. See llvm::Target::createTargetMachinepublic static long LLVMCreateTargetMachine(long T,
java.lang.CharSequence Triple,
java.lang.CharSequence CPU,
java.lang.CharSequence Features,
int Level,
int Reloc,
int CodeModel)
llvm::TargetMachine. See llvm::Target::createTargetMachinepublic static void LLVMDisposeTargetMachine(long T)
LLVMTargetMachineRef instance generated by CreateTargetMachine.public static long LLVMGetTargetMachineTarget(long T)
Target used in a TargetMachinepublic static long nLLVMGetTargetMachineTriple(long T)
GetTargetMachineTriple@Nullable public static java.lang.String LLVMGetTargetMachineTriple(long T)
llvm::TargetMachine::getTriple. The result needs to be disposed with
DisposeMessage.public static long nLLVMGetTargetMachineCPU(long T)
GetTargetMachineCPU@Nullable public static java.lang.String LLVMGetTargetMachineCPU(long T)
llvm::TargetMachine::getCPU. The result needs to be disposed with DisposeMessage.public static long nLLVMGetTargetMachineFeatureString(long T)
GetTargetMachineFeatureString@Nullable public static java.lang.String LLVMGetTargetMachineFeatureString(long T)
llvm::TargetMachine::getFeatureString. The result needs to be disposed with
DisposeMessage.public static long LLVMCreateTargetDataLayout(long T)
DataLayout based on the target machine.public static void LLVMSetTargetMachineAsmVerbosity(long T,
boolean VerboseAsm)
public static int nLLVMTargetMachineEmitToFile(long T,
long M,
long Filename,
int codegen,
long ErrorMessage)
TargetMachineEmitToFilepublic static boolean LLVMTargetMachineEmitToFile(long T,
long M,
java.nio.ByteBuffer Filename,
int codegen,
org.lwjgl.PointerBuffer ErrorMessage)
ErrorMessage. Use DisposeMessage to dispose the message.public static int nLLVMTargetMachineEmitToMemoryBuffer(long T,
long M,
int codegen,
long ErrorMessage,
long OutMemBuf)
TargetMachineEmitToMemoryBufferpublic static boolean LLVMTargetMachineEmitToMemoryBuffer(long T,
long M,
int codegen,
org.lwjgl.PointerBuffer ErrorMessage,
org.lwjgl.PointerBuffer OutMemBuf)
M and store the result in OutMemBuf.public static long nLLVMGetDefaultTargetTriple()
GetDefaultTargetTriple@Nullable public static java.lang.String LLVMGetDefaultTargetTriple()
DisposeMessage.public static long nLLVMNormalizeTargetTriple(long triple)
NormalizeTargetTriple@Nullable public static java.lang.String LLVMNormalizeTargetTriple(java.nio.ByteBuffer triple)
DisposeMessage.@Nullable public static java.lang.String LLVMNormalizeTargetTriple(java.lang.CharSequence triple)
DisposeMessage.public static long nLLVMGetHostCPUName()
GetHostCPUName@Nullable public static java.lang.String LLVMGetHostCPUName()
DisposeMessage.public static long nLLVMGetHostCPUFeatures()
GetHostCPUFeatures@Nullable public static java.lang.String LLVMGetHostCPUFeatures()
DisposeMessage.public static void LLVMAddAnalysisPasses(long T,
long PM)
Copyright LWJGL. All Rights Reserved. License terms.