Skip to main content

Module va_arg

Module va_arg 

Source

Re-exportsยง

use rustc_abi::Align; ๐Ÿ”’
use rustc_abi::BackendRepr; ๐Ÿ”’
use rustc_abi::CVariadicStatus; ๐Ÿ”’
use rustc_abi::Endian; ๐Ÿ”’
use rustc_abi::Float; ๐Ÿ”’
use rustc_abi::HasDataLayout; ๐Ÿ”’
use rustc_abi::Integer; ๐Ÿ”’
use rustc_abi::Primitive; ๐Ÿ”’
use rustc_abi::Size; ๐Ÿ”’
use rustc_codegen_ssa::common::IntPredicate; ๐Ÿ”’
use rustc_codegen_ssa::mir::operand::OperandRef; ๐Ÿ”’
use rustc_codegen_ssa::traits::BaseTypeCodegenMethods; ๐Ÿ”’
use rustc_codegen_ssa::traits::BuilderMethods; ๐Ÿ”’
use rustc_codegen_ssa::traits::ConstCodegenMethods; ๐Ÿ”’
use rustc_codegen_ssa::traits::LayoutTypeCodegenMethods; ๐Ÿ”’
use rustc_middle::ty::Ty; ๐Ÿ”’
use rustc_middle::ty::layout::HasTyCtxt; ๐Ÿ”’
use rustc_middle::ty::layout::LayoutOf; ๐Ÿ”’
use rustc_middle::ty::layout::TyAndLayout; ๐Ÿ”’
use rustc_span::bug; ๐Ÿ”’
use rustc_target::spec::Arch; ๐Ÿ”’
use rustc_target::spec::Env; ๐Ÿ”’
use rustc_target::spec::LlvmAbi; ๐Ÿ”’
use rustc_target::spec::RustcAbi; ๐Ÿ”’
use rustc_target::spec::Target; ๐Ÿ”’
use crate::builder::Builder; ๐Ÿ”’
use crate::llvm::Value; ๐Ÿ”’
use crate::type_of::LayoutLlvmExt; ๐Ÿ”’

Enumsยง

AllowHigherAlign ๐Ÿ”’
Whether to respect a value alignment that is higher than the slot alignment.
ForceRightAdjust ๐Ÿ”’
Determines where in the slot the value is located. Only takes effect on big-endian targets.
PassMode ๐Ÿ”’
SlotSize ๐Ÿ”’

Functionsยง

copy_to_temporary_if_more_aligned ๐Ÿ”’
Copy into a temporary if the type is more aligned than the register save area.
emit_aapcs_va_arg ๐Ÿ”’
emit_direct_ptr_va_arg ๐Ÿ”’
emit_hexagon_va_arg_bare_metal ๐Ÿ”’
emit_hexagon_va_arg_musl ๐Ÿ”’
emit_powerpc_va_arg ๐Ÿ”’
emit_ptr_va_arg ๐Ÿ”’
emit_s390x_va_arg ๐Ÿ”’
emit_va_arg ๐Ÿ”’
Determine the va_arg implementation to use. The LLVM va_arg instruction is lacking in some instances, so we should only use it as a fallback.
emit_x86_64_sysv64_va_arg ๐Ÿ”’
emit_xtensa_va_arg ๐Ÿ”’
get_param_type_alignment ๐Ÿ”’
Some backends apply special alignment rules to c-variadic arguments.
is_powerpc_softfloat_abi ๐Ÿ”’
round_pointer_up_to_alignment ๐Ÿ”’
round_up_to_alignment ๐Ÿ”’
x86_64_sysv64_va_arg_from_memory ๐Ÿ”’