780707490f
Fix another circular deps link args issue It turns out that the support in #49316 wasn't enough to handle all cases notably the example in #48661. The underlying bug was connected to panic=abort where lang items were listed in the `missing_lang_items` sets but didn't actually exist anywhere. This caused the linker backend to deduce that start-group/end-group wasn't needed because not all items were defined. Instead the missing lang items that don't actually need to have a definition are filtered out and not considered for the start-group/end-group arguments Closes #48661 |
||
---|---|---|
.. | ||
back | ||
debuginfo | ||
mir | ||
abi.rs | ||
allocator.rs | ||
asm.rs | ||
attributes.rs | ||
base.rs | ||
build.rs | ||
builder.rs | ||
cabi_aarch64.rs | ||
cabi_arm.rs | ||
cabi_asmjs.rs | ||
cabi_hexagon.rs | ||
cabi_mips64.rs | ||
cabi_mips.rs | ||
cabi_msp430.rs | ||
cabi_nvptx64.rs | ||
cabi_nvptx.rs | ||
cabi_powerpc64.rs | ||
cabi_powerpc.rs | ||
cabi_s390x.rs | ||
cabi_sparc64.rs | ||
cabi_sparc.rs | ||
cabi_wasm32.rs | ||
cabi_x86_64.rs | ||
cabi_x86_win64.rs | ||
cabi_x86.rs | ||
callee.rs | ||
Cargo.toml | ||
common.rs | ||
consts.rs | ||
context.rs | ||
declare.rs | ||
diagnostics.rs | ||
glue.rs | ||
intrinsic.rs | ||
lib.rs | ||
llvm_util.rs | ||
metadata.rs | ||
meth.rs | ||
README.md | ||
time_graph.rs | ||
trans_item.rs | ||
type_.rs | ||
type_of.rs | ||
value.rs |
The trans
crate contains the code to convert from MIR into LLVM IR,
and then from LLVM IR into machine code. In general it contains code
that runs towards the end of the compilation process.
For more information about how trans works, see the rustc guide.