rust/src/librustc_codegen_llvm
Tomasz Miąsko bbb63d4554 Consistently use LLVM lifetime markers during codegen
Ensure that inliner inserts lifetime markers if they have been emitted during
codegen. Otherwise if allocas from inlined functions are merged together,
lifetime markers from one function might invalidate load & stores performed
by the other one.
2020-05-14 15:23:24 +02:00
..
back Consistently use LLVM lifetime markers during codegen 2020-05-14 15:23:24 +02:00
debuginfo Remove ast::{Ident, Name} reexports. 2020-05-08 13:13:15 +02:00
llvm Consistently use LLVM lifetime markers during codegen 2020-05-14 15:23:24 +02:00
abi.rs nix rustc_target::abi::* reexport in ty::layout 2020-04-02 13:40:43 +02:00
allocator.rs Add Option to Force Unwind Tables 2020-05-04 12:08:35 +01:00
asm.rs Rename asm! to llvm_asm! 2020-03-26 15:49:22 +00:00
attributes.rs Add Option to Force Unwind Tables 2020-05-04 12:08:35 +01:00
base.rs rustc -> rustc_middle part 3 (rustfmt) 2020-03-30 07:19:55 +02:00
build.rs Remove licenses 2018-12-25 21:08:33 -07:00
builder.rs Consistently use LLVM lifetime markers during codegen 2020-05-14 15:23:24 +02:00
callee.rs Modify as_local_hir_id to accept a LocalDefId instead of a DefId 2020-04-23 23:14:07 +01:00
Cargo.toml rustc -> rustc_middle part 1 2020-03-30 07:02:56 +02:00
common.rs Create a convenience wrapper for get_global_alloc(id).unwrap() 2020-05-08 10:59:09 +02:00
consts.rs Add a convenience function for testing whether a static is #[thread_local] 2020-04-30 17:06:11 +02:00
context.rs Rollup merge of #71787 - tshepang:rustdoc-warnings, r=varkor 2020-05-02 18:27:52 +02:00
declare.rs rustc -> rustc_middle part 3 (rustfmt) 2020-03-30 07:19:55 +02:00
intrinsic.rs Remove Session::no_landing_pads() 2020-04-29 01:05:56 +01:00
lib.rs Auto merge of #71528 - alexcrichton:no-more-bitcode, r=nnethercote 2020-04-29 23:47:27 +00:00
llvm_util.rs codegen_llvm: Simplify logic for relaxing PIC into PIE 2020-04-26 11:18:48 +03:00
metadata.rs rustc -> rustc_middle part 2 2020-03-30 07:16:56 +02:00
mono_item.rs fix abuses of tykind::err 2020-04-07 22:47:25 -05:00
README.md Fix broken link in README 2020-03-30 10:09:51 -04:00
type_.rs nix rustc_target::abi::* reexport in ty::layout 2020-04-02 13:40:43 +02:00
type_of.rs rustc_target::abi: add Primitive variant to FieldsShape. 2020-04-16 15:15:51 +00:00
va_arg.rs nix rustc_target::abi::* reexport in ty::layout 2020-04-02 13:40:43 +02:00
value.rs Format the world 2019-12-22 17:42:47 -05:00

The codegen 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 codegen works, see the rustc dev guide.