| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-08-30 | mv compiler to compiler/ | mark | -205/+0 | |
| 2020-08-20 | Switch to Snappy compression for metadata | Josh Triplett | -5/+2 | |
| 2020-07-17 | Generating the coverage map | Rich Kadel | -5/+6 | |
| rustc now generates the coverage map and can support (limited) coverage report generation, at the function level. Example: $ BUILD=$HOME/rust/build/x86_64-unknown-linux-gnu $ $BUILD/stage1/bin/rustc -Zinstrument-coverage \ $HOME/rust/src/test/run-make-fulldeps/instrument-coverage/main.rs $ LLVM_PROFILE_FILE="main.profraw" ./main called $ $BUILD/llvm/bin/llvm-profdata merge -sparse main.profraw -o main.profdata $ $BUILD/llvm/bin/llvm-cov show --instr-profile=main.profdata main 1| 1|pub fn will_be_called() { 2| 1| println!("called"); 3| 1|} 4| | 5| 0|pub fn will_not_be_called() { 6| 0| println!("should not have been called"); 7| 0|} 8| | 9| 1|fn main() { 10| 1| let less = 1; 11| 1| let more = 100; 12| 1| 13| 1| if less < more { 14| 1| will_be_called(); 15| 1| } else { 16| 1| will_not_be_called(); 17| 1| } 18| 1|} | ||||
| 2020-06-29 | add spans to injected coverage counters | Rich Kadel | -0/+5 | |
| added regions with counter expressions and counters. Added codegen_llvm/coverageinfo mod for upcoming coverage map Move coverage region collection to CodegenCx finalization Moved from `query coverageinfo` (renamed from `query coverage_data`), as discussed in the PR at: https://github.com/rust-lang/rust/pull/73684#issuecomment-649882503 Address merge conflict in MIR instrument_coverage test The MIR test output format changed for int types. moved debug messages out of block.rs This makes the block.rs calls to add coverage mapping data to the CodegenCx much more concise and readable. move coverage intrinsic handling into llvm impl I realized that having half of the coverage intrinsic handling in `rustc_codegen_ssa` and half in `rustc_codegen_llvm` meant that any non-llvm backend would be bound to the same decisions about how the coverage-related MIR terminators should be handled. To fix this, I moved the non-codegen portion of coverage intrinsic handling into its own trait, and implemented it in `rustc_codegen_llvm` alongside `codegen_intrinsic_call`. I also added the (required?) stubs for the new intrinsics to `IntrepretCx::emulate_intrinsic()`, to ensure calls to this function do not fail if called with these new but known intrinsics. address PR Feedback on 28 June 2020 2:48pm PDT | ||||
| 2020-06-14 | Diagnose use of incompatible sanitizers | Tomasz Miąsko | -3/+3 | |
| Emit an error when incompatible sanitizer are configured through command line options. Previously the last one configured prevailed and others were silently ignored. Additionally use a set to represent configured sanitizers, making it possible to enable multiple sanitizers at once. At least in principle, since currently all of them are considered to be incompatible with others. | ||||
| 2020-05-20 | [self-profling] Record the cgu name when doing codegen for a module | Wesley Wiser | -1/+1 | |
| 2020-03-30 | rustc -> rustc_middle part 3 (rustfmt) | Mazdak Farrokhzad | -5/+5 | |
| 2020-03-30 | rustc -> rustc_middle part 2 | Mazdak Farrokhzad | -6/+6 | |
| 2020-03-23 | Rollup merge of #69940 - tmiasko:llvm-api, r=hanna-kruppe | Mazdak Farrokhzad | -2/+1 | |
| librustc_codegen_llvm: Replace deprecated API usage | ||||
| 2020-03-16 | use direct imports for `rustc::{lint, session}`. | Mazdak Farrokhzad | -1/+1 | |
| 2020-03-11 | librustc_codegen_llvm: Replace deprecated API usage | Tomasz Miąsko | -2/+1 | |
| 2020-02-05 | Apply LLVM sanitize attributes to generated entry wrapper | Tomasz Miąsko | -2/+5 | |
| 2020-01-09 | Compile some CGUs in parallel at the start of codegen | John Kåre Alsaker | -6/+4 | |
| 2020-01-04 | extract rustc::middle::codegen_fn_attrs | Mazdak Farrokhzad | -9/+8 | |
| 2020-01-01 | Rename `syntax_pos` to `rustc_span` in source code | Vadim Petrochenkov | -1/+1 | |
| 2019-12-22 | Format the world | Mark Rousskov | -35/+20 | |
| 2019-10-21 | Use `Symbol` for codegen unit names. | Nicholas Nethercote | -3/+3 | |
| This is a straightforward replacement except for two places where we have to convert to `LocalInternedString` to get a stable sort. | ||||
| 2019-09-30 | Self-Profiling: Make names of existing events more consistent and use new API. | Michael Woerister | -0/+2 | |
| 2019-09-25 | Remove tx_to_llvm_workers from TyCtxt | Mark Rousskov | -2/+6 | |
| This can be kept within the codegen backend crates entirely | ||||
| 2019-07-03 | Remove needless lifetimes | Jeremy Stucki | -2/+2 | |
| 2019-06-14 | Unify all uses of 'gcx and 'tcx. | Eduard-Mihai Burtescu | -4/+4 | |
| 2019-06-12 | rustc_codegen_llvm: `deny(unused_lifetimes)`. | Eduard-Mihai Burtescu | -2/+2 | |
| 2019-06-12 | Run `rustfmt --file-lines ...` for changes from previous commits. | Eduard-Mihai Burtescu | -1/+1 | |
| 2019-06-12 | rustc: replace `TyCtxt<'tcx, 'gcx, 'tcx>` with `TyCtxt<'gcx, 'tcx>`. | Eduard-Mihai Burtescu | -3/+3 | |
| 2019-06-12 | rustc: replace `TyCtxt<'a, 'gcx, 'tcx>` with `TyCtxt<'tcx, 'gcx, 'tcx>`. | Eduard-Mihai Burtescu | -3/+3 | |
| 2019-06-02 | remove unneeded deps | Mark Mansi | -1/+0 | |
| 2019-05-29 | rustc_codegen_llvm: remove LLVM instruction count stats. | Eduard-Mihai Burtescu | -19/+15 | |
| 2019-04-30 | Move metadata encoding earlier. | Nicholas Nethercote | -36/+4 | |
| This commit separates metadata encoding (`tcx.encode_metadata`) from the creation of the metadata module (which is now handled by `write_compressed_metadata`, formerly `write_metadata`). The metadata encoding now occurs slightly earlier in the pipeline, at the very start of code generation within `start_codegen`. Metadata *writing* still occurs near the end of compilation; that will be moved forward in subsequent commits. | ||||
| 2019-03-27 | Use informational target machine for metadata | Simonas Kazlauskas | -4/+2 | |
| Since there is nothing to optimise there... | ||||
| 2019-02-25 | librustc_codegen_llvm: deny(elided_lifetimes_in_paths) | Mazdak Farrokhzad | -3/+3 | |
| 2019-02-21 | codegen and write_metadata can mutate ModuleLLvm. | Gabriela Alexandra Moldovan | -1/+1 | |
| 2019-02-18 | librustc_codegen_llvm => 2018 | Taiki Endo | -7/+7 | |
| 2019-02-10 | rustc: doc comments | Alexander Regueiro | -5/+5 | |
| 2019-02-08 | Add a query type which is always marked as red if it runs | John Kåre Alsaker | -1/+3 | |
| 2019-01-24 | Implement optimize(size) and optimize(speed) | Simonas Kazlauskas | -2/+2 | |
| 2018-12-25 | Remove licenses | Mark Rousskov | -10/+0 | |
| 2018-11-29 | Remove static_replace_all_uses and statics_to_rauw from cg_ssa | bjorn3 | -1/+3 | |
| 2018-11-16 | [eddyb] rustc_codegen_llvm: remove unused parametrization of `CodegenCx` and ↵ | Eduard-Mihai Burtescu | -3/+3 | |
| `Builder` over `Value`s. | ||||
| 2018-11-16 | [eddyb] rustc_codegen_ssa: rename `interfaces` to `traits`. | Eduard-Mihai Burtescu | -1/+1 | |
| 2018-11-16 | [eddyb] rustc_codegen_ssa: handle LLVM unsafety correctly. | Eduard-Mihai Burtescu | -1/+3 | |
| 2018-11-16 | Separating the back folder between backend-agnostic and LLVM-specific code | Denis Merigoux | -5/+3 | |
| 2018-11-16 | Finished moving backend-agnostic code to rustc_codegen_ssa | Denis Merigoux | -45/+11 | |
| 2018-11-16 | Great separation of librustc_codegen_llvm: librustc_codegen_ssa compiles | Denis Merigoux | -915/+9 | |
| 2018-11-16 | Beginning of moving all backend-agnostic code to rustc_codegen_ssa | Denis Merigoux | -2/+2 | |
| 2018-11-16 | Moved Backend interface into rustc_codegen_utils | Denis Merigoux | -25/+1 | |
| 2018-11-16 | Moved common.rs enums | Denis Merigoux | -2/+2 | |
| 2018-11-16 | Starting to move backend-agnostic code into codegen_utils | Denis Merigoux | -1/+2 | |
| IntPredicate moved | ||||
| 2018-11-16 | Added compile codegen to backend trait | Denis Merigoux | -4/+5 | |
| 2018-11-16 | Preparing the generalization of base:compile_coodegen_unit | Denis Merigoux | -35/+16 | |
| 2018-11-16 | Generalized base:codegen_crate | Denis Merigoux | -40/+40 | |
