rust/src/librustc_codegen_llvm
Mazdak Farrokhzad 021a8eca47
Rollup merge of #59874 - michaelwoerister:pgo-updates-1, r=cramertj
Clean up handling of `-Z pgo-gen` commandline option.

This PR adapts the `-Z pgo-gen` flag to how Clang and GCC handle the corresponding `-fprofile-generate` flag. In particular, the flag now optionally takes a directory to place the profiling data in and allows to omit the argument (instead of having to pass an empty string).
2019-04-14 00:39:46 +02:00
..
back Rollup merge of #59874 - michaelwoerister:pgo-updates-1, r=cramertj 2019-04-14 00:39:46 +02:00
debuginfo Add discr_index to multi-variant layouts 2019-04-11 17:44:43 -07:00
llvm Auto merge of #59710 - alexcrichton:llvm-9-compat, r=sanxiyn 2019-04-06 13:14:23 +00:00
abi.rs Fix cases of conflicting two-phase borrows 2019-04-04 18:47:10 +01:00
allocator.rs librustc_codegen_llvm: deny(elided_lifetimes_in_paths) 2019-02-25 08:40:18 +01:00
asm.rs Remove inline_asm_call from cg_ssa 2019-03-29 17:17:13 +01:00
attributes.rs Clean up handling of -Zpgo-gen commandline option. 2019-04-11 14:50:32 +02:00
base.rs Use informational target machine for metadata 2019-03-27 04:03:42 +02:00
build.rs Remove licenses 2018-12-25 21:08:33 -07:00
builder.rs Use ExactSizeIterator + TrustedLen instead of num_cases arg for switch 2019-03-29 17:23:52 +01:00
callee.rs Use non_erasable_generics for codegen 2019-03-05 22:07:37 +00:00
Cargo.toml librustc_codegen_llvm => 2018 2019-02-18 03:58:58 +09:00
common.rs Remove const_{cstr,str_slice,get_elt,get_real} and is_const_real methods from cg_ssa 2019-03-29 17:17:12 +01:00
consts.rs HirIdification: replace NodeId method calls 2019-03-07 09:22:43 +01:00
context.rs Remove redundant imports 2019-03-30 22:37:02 +01:00
declare.rs librustc_codegen_llvm => 2018 2019-02-18 03:58:58 +09:00
diagnostics.rs Remove licenses 2018-12-25 21:08:33 -07:00
intrinsic.rs rustc: tie the 'tcx between Print and PrintCx in ty::print. 2019-03-15 09:26:13 +02:00
lib.rs Use measureme in self-profiler 2019-04-12 20:27:29 -04:00
llvm_util.rs librustc_codegen_llvm => 2018 2019-02-18 03:58:58 +09:00
metadata.rs librustc_codegen_llvm => 2018 2019-02-18 03:58:58 +09:00
mono_item.rs Support defining C compatible variadic functions 2019-02-27 10:21:35 -05:00
README.md rustc-guide has moved 2018-11-26 15:03:13 -06:00
type_.rs Remove type_variadic_func and typ_array from cg_ssa 2019-03-29 17:17:13 +01:00
type_of.rs Add discr_index to multi-variant layouts 2019-04-11 17:44:43 -07:00
va_arg.rs Fix AArch64 typo in comments 2019-03-19 17:07:09 +00:00
value.rs librustc_codegen_llvm: deny(elided_lifetimes_in_paths) 2019-02-25 08:40:18 +01: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 guide.