rust/src/librustc_codegen_llvm
Mazdak Farrokhzad 4dfbaba3bf
Rollup merge of #64141 - nnethercote:minimize-LocalInternedString, r=petrochenkov
Minimize uses of `LocalInternedString`

`LocalInternedString` is described as "An alternative to `Symbol` and `InternedString`, useful when the chars within the symbol need to be accessed. It is best used for temporary values."

This PR makes the code match that comment, by removing all non-local uses of `LocalInternedString`. This allows the removal of a number of operations on `LocalInternedString` and a couple of uses of `unsafe`.
2019-09-05 03:59:49 +02:00
..
back rustc: Handle modules in "fat" LTO more robustly 2019-08-27 13:51:14 -07:00
debuginfo Remove LocalInternedString uses from librustc/ty/. 2019-09-04 14:23:30 +10: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 Remove SyntaxContext from {ast, hir}::{GlobalAsm, InlineAsm} 2019-08-17 09:12:32 +01: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 LocalInternedString uses from librustc_codegen_llvm. 2019-09-04 14:23:45 +10:00
callee.rs Remove LocalInternedString uses from librustc/ty/. 2019-09-04 14:23:30 +10:00
Cargo.toml Deduplicate rustc_demangle in librustc_codegen_llvm 2019-07-31 15:04:25 -07:00
common.rs Remove LocalInternedString uses from librustc_codegen_llvm. 2019-09-04 14:23:45 +10:00
consts.rs Rollup merge of #64141 - nnethercote:minimize-LocalInternedString, r=petrochenkov 2019-09-05 03:59:49 +02:00
context.rs Remove LocalInternedString uses from librustc_codegen_llvm. 2019-09-04 14:23:45 +10: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 Rename overflowing_{add,sub,mul} intrinsics to wrapping_{add,sub,mul}. 2019-08-16 20:04:21 +03:00
lib.rs rustc: Handle modules in "fat" LTO more robustly 2019-08-27 13:51:14 -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.