rust/src/librustc_trans
bors 619ced0578 Auto merge of #47087 - Zoxc:incr_no_in_ignore, r=michaelwoerister
Replace uses of DepGraph.in_ignore with DepGraph.with_ignore

I currently plan to track tasks in thread local storage. Ignoring things in a closure ensures that the ignore tasks do not overlap the beginning or end of any other task. The TLS API will also use a closure to change a TLS value, so having the ignore task be a closure also helps there.

It also adds `assert_ignored` which is used before a `TyCtxt` is created. Instead of adding a new ignore task this simply ensures that we are in a context where reads are ignored.

r? @michaelwoerister
2018-01-11 03:24:16 +00:00
..
back Shorten names of some compiler generated artifacts. 2018-01-08 12:30:52 +01:00
debuginfo rustc::ty: Rename struct_variant to non_enum_variant 2018-01-08 00:28:05 +01:00
mir Rollup merge of #47170 - eddyb:us-vs-usize, r=nikomatsakis 2018-01-07 02:36:02 +08:00
abi.rs Remove duplicated functions from trans::common.rs 2017-12-18 17:08:49 +02:00
allocator.rs rustc: Implement the #[global_allocator] attribute 2017-07-05 14:37:01 -07:00
asm.rs MIR: s/lv(al(ue)?)?/place in function/variable/module names. 2017-12-01 18:48:57 +02:00
assert_module_sources.rs Auto merge of #47087 - Zoxc:incr_no_in_ignore, r=michaelwoerister 2018-01-11 03:24:16 +00:00
attributes.rs rustc_trans: support scalar pairs directly in the Rust ABI. 2017-11-19 02:43:55 +02:00
base.rs Auto merge of #46916 - michaelwoerister:generate-dead-code-plz, r=alexcrichton 2018-01-04 14:04:27 +00:00
build.rs rustc: Add some build scripts for librustc crates 2017-07-22 22:04:13 -07:00
builder.rs Remove outdated LLVMRustBuildLandingPad() wrapper 2018-01-04 08:57:14 +01:00
cabi_aarch64.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_arm.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_asmjs.rs rustc_trans: support scalar pairs directly in the Rust ABI. 2017-11-19 02:43:55 +02:00
cabi_hexagon.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_mips.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_mips64.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_msp430.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_nvptx.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_nvptx64.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_powerpc.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_powerpc64.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_s390x.rs rustc: track validity ranges for layout::Abi::Scalar values. 2017-11-19 02:14:33 +02:00
cabi_sparc.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_sparc64.rs rustc: move size, align & primitive_align from Abi::Aggregate to layout. 2017-11-19 02:14:32 +02:00
cabi_x86.rs rustc_trans: support scalar pairs directly in the Rust ABI. 2017-11-19 02:43:55 +02:00
cabi_x86_64.rs rustc: unpack newtyped of #[repr(simd)] vector types. 2017-12-13 01:57:56 +02:00
cabi_x86_win64.rs rustc: unpack newtyped of #[repr(simd)] vector types. 2017-12-13 01:57:56 +02:00
callee.rs Remove duplicated functions from trans::common.rs 2017-12-18 17:08:49 +02:00
Cargo.toml Try to fix a perf regression by updating log 2018-01-07 16:54:05 +01:00
common.rs Remove duplicated functions from trans::common.rs 2017-12-18 17:08:49 +02:00
consts.rs Move partitioning.rs to rustc_mir 2017-12-18 17:08:49 +02:00
context.rs Shorten names of some compiler generated artifacts. 2018-01-08 12:30:52 +01:00
declare.rs rustc: Add LLVM nounwind with -C panic=abort 2017-10-11 09:05:38 -07:00
diagnostics.rs rustc: Add support for some more x86 SIMD ops 2017-11-25 11:03:13 -08:00
glue.rs rustc: don't track whether layouts are "packed". 2017-12-17 16:34:54 +02:00
intrinsic.rs Rollup merge of #47170 - eddyb:us-vs-usize, r=nikomatsakis 2018-01-07 02:36:02 +08:00
lib.rs Remove redundant -Zdebug-llvm option 2018-01-07 04:39:58 +01:00
llvm_util.rs Remove redundant -Zdebug-llvm option 2018-01-07 04:39:58 +01:00
metadata.rs Add sync module to rustc_data_structures 2017-12-17 14:14:51 +01:00
meth.rs rustc_trans: always require alignment for load/store/memcpy. 2017-12-17 16:34:54 +02:00
README.md rework the README.md for rustc and add other readmes 2017-09-19 09:00:59 -04:00
symbol_names_test.rs Replace uses of DepGraph.in_ignore with DepGraph.with_ignore 2018-01-09 18:35:50 +01:00
time_graph.rs rustc: Implement ThinLTO 2017-10-07 08:17:52 -07:00
trans_item.rs Move partitioning.rs to rustc_mir 2017-12-18 17:08:49 +02:00
type_.rs rustc: use {U,I}size instead of {U,I}s shorthands. 2018-01-04 03:12:04 +02:00
type_of.rs rustc: don't track whether layouts are "packed". 2017-12-17 16:34:54 +02:00
value.rs Inline last remaining use of Callee::call and delete unused code 2016-12-20 20:03:31 -07:00

NB: This crate is part of the Rust compiler. For an overview of the compiler as a whole, see the README.md file found in librustc.

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.