Expand description
Codegen the MIR to the LLVM IR.
Hopefully useful general knowledge about codegen:
- Thereβs no way to find out the
Tytype of aValue. Doing so would be βtrying to get the eggs out of an omeletteβ (credit: pcwalton). You can, instead, find out itsllvm::Typeby callingval_ty, but onellvm::Typecorresponds to manyTys; for instance,tup(int, int, int)andrec(x=int, y=int, z=int)will have the samellvm::Type.
Re-exportsΒ§
use std::time::Instant;πuse rustc_attr_ir::Linkage;πuse rustc_codegen_ssa::ModuleCodegen;πuse rustc_codegen_ssa::base::maybe_create_entry_wrapper;πuse rustc_codegen_ssa::mono_item::MonoItemExt;πuse rustc_data_structures::small_c_str::SmallCStr;πuse rustc_middle::dep_graph;πuse rustc_middle::middle::codegen_fn_attrs::CodegenFnAttrs;πuse rustc_middle::middle::codegen_fn_attrs::SanitizerFnAttrs;πuse rustc_middle::mono::Visibility;πuse rustc_middle::ty::TyCtxt;πuse rustc_session::config::DebugInfo;πuse rustc_session::config::Offload;πuse rustc_span::Symbol;πuse rustc_target::spec::SanitizerSet;πuse crate::builder::Builder;πuse crate::builder::gpu_offload::OffloadGlobals;πuse crate::context::CodegenCx;πuse crate::llvm;πuse crate::llvm::Value;πuse crate::ModuleLlvm;πuse crate::attributes;πuse rustc_codegen_ssa::traits::*;π
StructsΒ§
- Value
Iter π
FunctionsΒ§
- compile_
codegen_ πunit - iter_
global_ πaliases - iter_
globals π - linkage_
to_ πllvm - set_
link_ πsection - set_
variable_ πsanitizer_ attrs - visibility_
to_ πllvm