Module 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.
CastTarget πŸ”’
Describes the type used for PassMode::Cast.
FnAbi πŸ”’
Metadata describing how the arguments to a native function should be passed in order to respect the native ABI.
Reg πŸ”’
Uniform πŸ”’
An argument passed entirely registers with the same kind (e.g., HFA / HVA on PPC64 and AArch64).

EnumsΒ§

AdjustForForeignAbiError πŸ”’
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 πŸ”’
ExternAbi πŸ”’
PassMode πŸ”’
RegKind πŸ”’
RiscvInterruptKind πŸ”’

ConstantsΒ§

ABI_AFFECTING_ATTRIBUTES πŸ”’
OPTIMIZATION_ATTRIBUTES πŸ”’
WIDE_PTR_ADDR πŸ”’
The first half of a wide pointer.
WIDE_PTR_EXTRA πŸ”’
The second half of a wide pointer.

TraitsΒ§

ArgAbiExt πŸ”’
ArgAttributesExt πŸ”’
FnAbiLlvmExt πŸ”’
LlvmType πŸ”’

FunctionsΒ§

get_attrs πŸ”’