about summary refs log tree commit diff
path: root/src/librustc_incremental
AgeCommit message (Collapse)AuthorLines
2018-12-31Clean up and optimize OpenTask / read_indexJohn Kåre Alsaker-4/+5
2018-12-25Remove licensesMark Rousskov-121/+0
2018-12-07Various minor/cosmetic improvements to codeAlexander Regueiro-5/+5
2018-12-07Auto merge of #56502 - Zoxc:hir-func, r=eddybbors-9/+9
Use a function to access the Hir map to be able to turn it into a query later r? @eddyb
2018-12-07Rollup merge of #56516 - frewsxcv:frewsxcv-eq, r=Mark-Simulacrumkennytm-1/+1
Replace usages of `..i + 1` ranges with `..=i`. Before this change we were using old computer code techniques. After this change we use the new and improved computer code techniques.
2018-12-06Use a function to access the Hir map to be able to turn it into a query laterJohn Kåre Alsaker-9/+9
2018-12-06Rollup merge of #56500 - ljedrz:cleanup_rest_of_const_lifetimes, r=zackmdavisPietro Albini-9/+9
cleanup: remove static lifetimes from consts A follow-up to https://github.com/rust-lang/rust/pull/56497.
2018-12-05Rollup merge of #56119 - frewsxcv:frewsxcv-option-carrier, r=TimNNPietro Albini-6/+2
Utilize `?` instead of `return None`. None
2018-12-04Replace usages of `..i + 1` ranges with `..=i`.Corey Farwell-1/+1
2018-12-04Utilize `?` instead of `return None`.Corey Farwell-6/+2
2018-12-04cleanup: remove static lifetimes from constsljedrz-9/+9
2018-12-01remove some uses of try!Mark Mansi-3/+3
2018-11-15Rollup merge of #55901 - euclio:speling, r=petrochenkovPietro Albini-1/+1
fix various typos in doc comments
2018-11-13fix various typos in doc commentsAndy Russell-1/+1
2018-11-11Fix typos.Bruce Mitchener-1/+1
2018-10-19Prefer `Default::default` over `FxHash*::default` in struct constructorsOliver Scherer-4/+4
2018-10-19Deprecate the `FxHashMap()` and `FxHashSet()` constructor function hackOliver Scherer-13/+13
2018-10-05Remove graphviz::IntoCowljedrz-3/+2
2018-09-27Bump to 1.31.0 and bootstrap from 1.30 betaJosh Stone-1/+1
2018-09-18incr.comp.: Allow for more fine-grained testing of CGU reuse and use it to ↵Michael Woerister-44/+59
test incremental ThinLTO.
2018-09-11stabalize infer outlives requirements (RFC 2093).toidiu-1/+0
Co-authored-by: nikomatsakis
2018-09-04Breaking change upgradesMark Rousskov-2/+2
2018-09-03Auto merge of #53673 - michaelwoerister:incr-thinlto-2000, r=alexcrichtonbors-0/+2
Enable ThinLTO with incremental compilation. This is an updated version of #52309. This PR allows `rustc` to use (local) ThinLTO and incremental compilation at the same time. In theory this should allow for getting compile-time improvements for small changes while keeping the runtime performance of the generated code roughly the same as when compiling non-incrementally. The difference to #52309 is that this version also caches the pre-LTO version of LLVM bitcode. This allows for another layer of caching: 1. if the module itself has changed, we have to re-codegen and re-optimize. 2. if the module itself has not changed, but a module it imported from during ThinLTO has, we don't need to re-codegen and don't need to re-run the first optimization phase. Only the second (i.e. ThinLTO-) optimization phase is re-run. 3. if neither the module itself nor any of its imports have changed then we can re-use the final, post-ThinLTO version of the module. (We might have to load its pre-ThinLTO version though so it's available for other modules to import from)
2018-09-02Auto merge of #53599 - matthiaskrgr:split_str__to__split_char, r=frewsxcvbors-1/+1
use char pattern for single-character splits: a.split("x") -> a.split('x')
2018-08-31Always add all modules to the global ThinLTO module analysis when compiling ↵Michael Woerister-1/+0
incrementally.
2018-08-31Support local ThinLTO with incremental compilation.Michael Woerister-0/+1
2018-08-31Persist ThinLTO import data in incr. comp. session directory.Michael Woerister-0/+2
2018-08-28Use FxHash{Map,Set} instead of the default Hash{Map,Set} everywhere in rustc.Eduard-Mihai Burtescu-6/+5
2018-08-27Rename hir::map::NodeKind to hir::Nodevarkor-4/+4
2018-08-27Remove path prefixes from NodeKindvarkor-1/+2
2018-08-27Rename hir::map::Node to hir::map::NodeKindvarkor-7/+7
2018-08-24check that adding infer-outlives requirement to all crates worksNiko Matsakis-0/+1
2018-08-22use char pattern for single-character splits: a.split("x") -> a.split('x')Matthias Krüger-1/+1
2018-08-19mv codemap() source_map()Donato Sciarra-2/+2
2018-08-15Use CGU name as LLVM module name and add some caching to CGU name generation.Michael Woerister-5/+5
2018-08-15Clean up CodegenUnit name generation.Michael Woerister-8/+45
2018-08-10Auto merge of #53073 - Mark-Simulacrum:data-structures, r=pnkfelixbors-6/+8
Cleanup to librustc::session and related code No functional changes, just some cleanup. This also creates the `rustc_fs_util` crate, but I can remove that change if desired. It felt a little odd to force crates to depend on librustc for some fs utilities; and also seemed good to generally keep the size of librustc lower (for compile times); fs_util will compile in parallel with essentially the first crate since it has no dependencies beyond std.
2018-08-09Move rustc::util::fs into separate (new) crateMark Rousskov-5/+7
2018-08-09Move SVH structure to data structuresMark Rousskov-1/+1
2018-08-09[nll] librustc_incremental: enable feature(nll) for bootstrapmemoryruins-0/+1
2018-08-05Remove unnecessary feature attributes that sneaked invarkor-1/+0
2018-07-28Don't format!() string literalsljedrz-1/+1
2018-07-25Deny bare_trait_objects globallyTatsuyuki Ishi-2/+0
2018-07-18Implement existential typesOliver Schneider-0/+1
2018-07-16Update a debug stringOliver Schneider-1/+1
2018-07-16ItemKindcsmoe-15/+15
2018-07-16Revert "Persist ThinLTO import data in incr. comp. session directory."Michael Woerister-2/+0
This reverts commit 8dc7ddb9763f28b83de7bf3b3025f8042ea9e830.
2018-07-16Revert "Clean up CodegenUnit name generation."Michael Woerister-45/+8
This reverts commit 2c5cd9ce53d2d25041db0cb02b40ba460ffa8908.
2018-07-13Auto merge of #52266 - michaelwoerister:incr-thinlto-preliminaries, ↵bors-8/+47
r=alexcrichton Preliminary work for incremental ThinLTO. Since implementing incremental ThinLTO is a bit more involved than I initially thought, I'm splitting out some of the things that already work. This PR (1) adds a way accessing some ThinLTO information in `rustc` and (2) does some cleanup around CGU/object file naming (which makes things quite a bit nicer). This is probably best reviewed one commit at a time.
2018-07-14Rollup merge of #52302 - ljedrz:dyn_futureproofing, r=cramertjkennytm-0/+2
Deny bare trait objects in the rest of rust Add `#![deny(bare_trait_objects)]` to all the modules not covered before (those did not require code changes) that I consider applicable (I left out shims) in order to futureproof them.