Re-exports§
pub use self::AtomicRmwBinOp::*;
pub use self::CallConv::*;
pub use self::CodeGenOptSize::*;
pub use self::IntPredicate::*;
pub use self::Linkage::*;
pub use self::MetadataType::*;
pub use self::RealPredicate::*;
Modules§
- A wrapper around LLVM’s archive (.a) code
- LLVM diagnostic reports.
Structs§
- Wrapper for a raw enum value returned from LLVM’s C APIs.
- LLVMRustSanitizerOptions
- LLVMRustThinLTOModule
Enums§
- LLVMRustArchiveKind
- LLVMRustAsmDialect
- LLVMAtomicOrdering
- LLVMAtomicRmwBinOp
- Must match the layout of
LLVMRustAttributeKind
. Semantically a subset of the C++ enum llvm::Attribute::AttrKind, though it is not ABI compatible (since it’s a C++ enum) - LLVM CallingConv::ID. Should we wrap this?
- LLVMRustChecksumKind
- LLVMRustCodeGenOptLevel
- LLVMRustCodeModel
- LLVMDLLStorageClass
- LLVMRustDiagnosticKind
- LLVMRustDiagnosticLevel
- LLVMRustFileType
- LLVMIntPredicate
- Translation of LLVM’s MachineTypes enum, defined in llvm\include\llvm\BinaryFormat\COFF.h.
- Must match the layout of
LLVMLinkage
. - LLVMRustMemoryEffects
- LLVMMetadataType
- Must match the layout of
LLVMRustModuleFlagMergeBehavior
. - LLVMRustOptStage
- LLVMRustPassBuilderOptLevel
- LLVMRealPredicate
- LLVMRelocMode
- LLVMRustTailCallKind
- LLVMThreadLocalMode
- LLVMTypeKind
- LLVMUnnamedAddr
- Must match the layout of
LLVMVisibility
.
Constants§
Functions§
- See Module::setModuleInlineAsm.
- Creates a legacy pass manager – only used for final codegen.
- Data layout. See Module::getDataLayout.
- Add LLVM module flags.
- Returns a string describing the last error caused by an LLVMRust* call.
- See llvm::LLVMTypeKind::getTypeID.
- Prepares inline assembly.
- Writes a module to the specified path. Returns 0 on success.
- Safe wrapper around
LLVMGetParam
, because segfaults are no fun. - Safe wrapper for
LLVMGetValueName2
into a byte slice - Get the
name
d comdat fromllmod
and assign it tollglobal
. - Safe wrapper for
LLVMSetValueName2
from a byte slice
Type Aliases§
- In the LLVM-C API, boolean values are passed as
typedef int LLVMBool
, which has a different ABI from Rust or C++bool
.