Module rustc_target::abi
source · Re-exports
Modules
Structs
A pair of alignments, ABI-mandated and preferred.
An identifier that specifies the address space that some operation
should operate on. Special address spaces have an effect on code generation,
depending on the target and the address spaces it implements.
Alignment of a type in bytes (always a power of two).
Represents the repr options provided by the user,
Size of a type in bytes.
Parsed Data layout
for a target, which contains everything needed to compute layouts.
The layout of a type, alongside the type itself.
Provides various type traversal APIs (e.g., recursing into fields).
Inclusive wrap-around range of valid values, that is, if
start > end, it represents
start..=MAX
,
followed by 0..=end
.Enums
Describes how values of the type are passed by target ABIs,
in terms of categories of C types there are ABI rules for.
Endianness of the target, which must match cfg(target-endian).
Describes how the fields of a type are located in memory.
Used in
might_permit_raw_init
to indicate the kind of initialisation
that is checked to be validIntegers, also used for enum discriminants.
Fundamental unit of memory access and layout.
Information about one scalar component of a Rust type.
Traits
Requirements for a
StableHashingContext
to be used in this crate.
This is a hack to allow using the HashStable_Generic
derive macro
instead of implementing everything in rustc_middle
.Trait that needs to be implemented by the higher-level type representation
(e.g.
rustc_middle::ty::Ty
), to provide rustc_target::abi
functionality.