rust/src/librustc_codegen_llvm
Mazdak Farrokhzad fbf268bfd4
Rollup merge of #63296 - alexcrichton:deduplicate-demangle, r=Mark-Simulacrum
Deduplicate rustc_demangle in librustc_codegen_llvm

This commit removes the crates.io dependency of `rustc-demangle` from
`rustc_codegen_llvm`. This crate is actually already pulled in to part
of the `librustc_driver` build and with the upcoming pipelining
implementation in Cargo it causes build issues if `rustc-demangle` is
left to its own devices.

This is not currently required, but once pipelining is enabled for
rustc's own build it will be required to build correctly.
2019-08-06 15:36:34 +02:00
..
back Don't add extra passes into the function pass manager 2019-07-15 09:45:14 +02:00
debuginfo Fiddle param env through to try_eval_bits in most places 2019-08-05 17:48:05 +02:00
llvm Use Rust integer types instead of libc's fixed-width types 2019-08-01 17:01:33 +02:00
abi.rs Pass type to byval attributes 2019-07-09 21:55:29 +02:00
allocator.rs Merge rustc_allocator into libsyntax_ext 2019-07-24 12:27:58 +03:00
asm.rs hygiene: Tweak naming some more 2019-07-19 12:02:57 +03:00
attributes.rs Translate target features for LLVM 9 2019-07-09 21:55:29 +02:00
base.rs Remove needless lifetimes 2019-07-03 10:01:02 +02:00
build.rs Remove licenses 2018-12-25 21:08:33 -07:00
builder.rs Remove vector fadd/fmul reduction workarounds 2019-07-20 18:49:50 +02:00
callee.rs remove reexport of rustc::ty::Instance 2019-06-02 22:32:42 -05:00
Cargo.toml Deduplicate rustc_demangle in librustc_codegen_llvm 2019-07-31 15:04:25 -07:00
common.rs assert consistency 2019-08-02 23:02:53 +02:00
consts.rs CTFE: simplify Value type by not checking for alignment 2019-08-02 23:02:53 +02:00
context.rs Strip function pointer alignment for older LLVM versions 2019-07-09 21:55:29 +02:00
declare.rs Pass type to byval attributes 2019-07-09 21:55:29 +02:00
error_codes.rs Remove lint annotations in specific crates that are already enforced by rustbuild 2019-07-28 18:46:24 +03:00
intrinsic.rs Remove lint annotations in specific crates that are already enforced by rustbuild 2019-07-28 18:46:24 +03:00
lib.rs Deduplicate rustc_demangle in librustc_codegen_llvm 2019-07-31 15:04:25 -07:00
llvm_util.rs add support for hexagon-unknown-linux-musl 2019-07-22 09:44:58 -05:00
metadata.rs format a bit 2019-07-07 09:32:36 +02:00
mono_item.rs remove reexport of rustc::ty::Instance 2019-06-02 22:32:42 -05:00
README.md rustc-guide has moved 2018-11-26 15:03:13 -06:00
type_.rs Remove lint annotations in specific crates that are already enforced by rustbuild 2019-07-28 18:46:24 +03:00
type_of.rs rustc_codegen_llvm: deny(unused_lifetimes). 2019-06-12 16:02:03 +03:00
va_arg.rs Expose VaListImpl as the Rust equivalent of __va_list_tag and implement Clone for it. 2019-06-17 16:04:49 -07: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.