Module rustc_codegen_llvm::abi
source · Structs§
- ArgAbi πInformation about how to pass an argument to, or return a value from, a function, under some ABI.
- ArgAttribute π
- ArgAttributes πA compact representation of LLVM attributes (at least those relevant for this module) that can be manipulated without interacting with LLVMβs Attribute machinery.
- Cast
Target πDescribes the type used forPassMode::Cast
. - FnAbi πMetadata describing how the arguments to a native function should be passed in order to respect the native ABI.
- Heterogeneous πError from the
homogeneous_aggregate
test function, indicating there are distinct leaf fields passed in different ways, or this is uninhabited. - Reg π
- Uniform πAn argument passed entirely registers with the same kind (e.g., HFA / HVA on PPC64 and AArch64).
Enums§
- Abi π
- Error produced by attempting to adjust a
FnAbi
, for a βforeignβ ABI. - ArgExtension πSometimes an ABI requires small integers to be extended to a full or partial register. This enum defines if this extension should be zero-extension or sign-extension when necessary. When it is not necessary to extend the argument, this enum is ignored.
- Conv π
- Homogeneous
Aggregate πReturn value from thehomogeneous_aggregate
test function. - Pass
Mode π - RegKind π
- Riscv
Interrupt πKind
Constants§
- FAT_
PTR_ πADDR The first half of a fat pointer. - FAT_
PTR_ πEXTRA The second half of a fat pointer.
Traits§
- ArgAbi
Ext π - ArgAttributes
Ext π - FnAbi
Llvm πExt - Llvm
Type π
Functions§
- get_
attrs π