[−][src]Module rustc_codegen_ssa::base
Codegen the completed AST to the LLVM IR.
Some functions here, such as codegen_block and codegen_expr, return a value --
the result of the codegen to LLVM -- while others, such as codegen_fn
and mono_item, are called only for the side effect of adding a
particular definition to the LLVM IR output we're producing.
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.
Structs
| AbortCodegenOnDrop | A curious wrapper structure whose only purpose is to call |
Functions
| bin_op_to_fcmp_predicate | |
| bin_op_to_icmp_predicate | |
| cast_shift_expr_rhs | |
| cast_shift_rhs | |
| codegen_crate | |
| codegen_instance | |
| coerce_unsized_into | Coerces |
| compare_simd_types | |
| determine_cgu_reuse | |
| finalize_tcx | |
| get_argc_argv | Obtain the |
| maybe_create_entry_wrapper | Creates the |
| memcpy_ty | |
| provide_both | |
| unsize_thin_ptr | Coerces |
| unsized_info | Retrieves the information we are losing (making dynamic) in an unsizing adjustment. |
| wants_msvc_seh | Returns |