| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-05-18 | Add asm! to MIR | Amanieu d'Antras | -0/+5 | |
| 2020-05-09 | Visit move out of `_0` when visiting `return` | Jonas Schievink | -1/+5 | |
| 2020-05-06 | Improve `LocalDecl` creation. | Nicholas Nethercote | -2/+2 | |
| This commit adds some new `LocalDecl` methods: - `with_source_info`, a most general constructor. - `new`, a variant of `with_source_info` which represents the most common use case. - `internal` a modifying method (like the already present `immutable`). It removes some old `LocalDecl` methods: - `new_internal` and `new_local`, because they're subsumed by the new methods. - `new_return_place`, because it was identical to `new_temp`. Finally, it cleans up all the use sites. | ||||
| 2020-04-24 | Auto merge of #70820 - spastorino:replace-fragile-erroneous-const-sys, r=oli-obk | bors | -1/+11 | |
| Replace fragile erroneous const sys Closes #67191 r? @oli-obk | ||||
| 2020-04-23 | Modify `as_local_hir_id` to return a bare `HirId` | marmeladema | -9/+5 | |
| 2020-04-23 | Modify `as_local_hir_id` to accept a `LocalDefId` instead of a `DefId` | marmeladema | -3/+7 | |
| 2020-04-23 | Rename uneval_consts to required_consts | Santiago Pastorino | -6/+8 | |
| 2020-04-23 | Make inlining carry over unevaluated consts | Santiago Pastorino | -1/+9 | |
| 2020-04-22 | Use `Body` everywhere | Dylan MacKenzie | -6/+6 | |
| 2020-04-22 | Don't use `*` for deref-coercion | Dylan MacKenzie | -3/+3 | |
| 2020-04-22 | Rollup merge of #70970 - eddyb:trait-vs-impl-mismatch, r=oli-obk | Dylan DPC | -1/+2 | |
| Detect mistyped associated consts in `Instance::resolve`. *Based on #71049 to prevent redundant/misleading downstream errors.* Fixes #70942 by refusing to resolve an associated `const` if it doesn't have the same type in the `impl` that it does in the `trait` (which we assume had errored, and `delay_span_bug` guards against bugs). | ||||
| 2020-04-19 | MIR: use span instead of NodeId to determine if optimized_mir should be run | ljedrz | -7/+5 | |
| 2020-04-18 | Detect mistyped associated consts in `Instance::resolve`. | Eduard-Mihai Burtescu | -1/+2 | |
| 2020-04-16 | don't clone types that are copy (clippy::clone_on_copy) | Matthias Krüger | -1/+1 | |
| 2020-04-11 | Pass the `PlaceElem::Index` local to `visit_local` | Jonas Schievink | -12/+0 | |
| 2020-03-31 | Use Place directly, it's Copy even more use cases | Santiago Pastorino | -2/+2 | |
| 2020-03-30 | rustc -> rustc_middle part 3 (rustfmt) | Mazdak Farrokhzad | -4/+4 | |
| 2020-03-30 | rustc -> rustc_middle part 2 | Mazdak Farrokhzad | -5/+5 | |
| 2020-03-21 | Use Reveal::All in MIR inliner | Wesley Wiser | -10/+3 | |
| 2020-03-21 | Rollup merge of #69934 - andjo403:inlinecost, r=wesleywiser | Mazdak Farrokhzad | -2/+17 | |
| Update the mir inline costs handle that when mir is lowered to llvm-ir more code is generated. Landingpads generates 10 llvm-ir instructions and resume 9 llvm-ir instructions. r? @wesleywiser | ||||
| 2020-03-16 | use direct imports for `rustc::{lint, session}`. | Mazdak Farrokhzad | -9/+6 | |
| 2020-03-11 | Update the mir inline costs | Andreas Jonson | -2/+17 | |
| handle that when mir is lowered to llvm-ir more code is generated. landingpads generates 10 llvm-ir instructions and resume 9 llvm-ir instructions. | ||||
| 2020-02-05 | Selectively disable sanitizer instrumentation | Tomasz Miąsko | -0/+23 | |
| Add `no_sanitize` attribute that allows to opt out from sanitizer instrumentation in an annotated function. | ||||
| 2020-02-01 | Move builtin attribute logic to new rustc_attr crate. | Mazdak Farrokhzad | -1/+1 | |
| For now, this is all the crate contains, but more attribute logic & types will be moved there over time. | ||||
| 2020-01-28 | make_integrate_local takes Local by value | Santiago Pastorino | -4/+4 | |
| 2020-01-27 | don't clone types that are copy, round two. | Matthias Krüger | -2/+2 | |
| 2020-01-10 | Remove PlaceBase enum and make Place base field be local: Local | Santiago Pastorino | -18/+10 | |
| 2020-01-10 | Remove Static from PlaceBase | Santiago Pastorino | -5/+0 | |
| 2020-01-05 | Remove rustc_hir reexports in rustc::hir. | Mazdak Farrokhzad | -1/+1 | |
| 2020-01-04 | extract rustc::middle::codegen_fn_attrs | Mazdak Farrokhzad | -1/+1 | |
| 2020-01-01 | Ensure that we process projections during MIR inlining | Aaron Hill | -8/+4 | |
| Fixes #67710 Previously, we were not calling `super_place`, which resulted in us failing to update any local references that occur in ProjectionElem::Index. This caused the post-inlining MIR to contain a reference to a local ID from the inlined callee, leading to an ICE due to a type mismatch. | ||||
| 2019-12-27 | Fix `Instance::resolve()` incorrectly returning specialized instances | Wesley Wiser | -3/+10 | |
| We only want to return specializations when `Reveal::All` is passed, not when `Reveal::UserFacing` is. Resolving this fixes several issues with the `ConstProp`, `SimplifyBranches`, and `Inline` MIR optimization passes. Fixes #66901 | ||||
| 2019-12-22 | Format the world | Mark Rousskov | -128/+92 | |
| 2019-12-20 | [mir-opt] Fix `Inline` pass to handle inlining into `box` expressions | Wesley Wiser | -10/+20 | |
| 2019-12-08 | Rollup merge of #66991 - Nashenas88:body_cache_cleanup, r=eddyb | Mazdak Farrokhzad | -6/+6 | |
| Cleanup BodyCache After this PR: - `BodyCache` is renamed to `BodyAndCache` - `ReadOnlyBodyCache` is renamed to `ReadOnlyBodyAndCache` - `ReadOnlyBodyAndCache::body` fn is removed and all calls to it are replaced by a deref (possible due to fix of its `Deref` imp in #65947) cc @eddyb @oli-obk | ||||
| 2019-12-05 | `#[track_caller]` suppresses MIR inlining. | Adam Perry | -0/+5 | |
| 2019-12-05 | rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded ↵ | Paul Daniel Faria | -6/+6 | |
| Index impl, remove body fn rustc_codegen_ssa: Fix BodyAndCache reborrow to Body and change instances of body() call to derefence rustc_mir: Fix BodyAndCache reborrow to Body and change intances of body() call to derefence | ||||
| 2019-12-02 | Remove HasLocalDecls impl from BodyCache's, properly reborrow to Body, ↵ | Paul Daniel Faria | -31/+31 | |
| rename all body_cache back to body | ||||
| 2019-12-02 | Remove BodyCache.body and rely on Deref as much as possible for ↵ | Paul Daniel Faria | -3/+3 | |
| ReadOnlyBodyCache | ||||
| 2019-12-02 | Fix tidy errors | Paul Daniel Faria | -4/+9 | |
| 2019-12-02 | Fix remaining compilation issues | Paul Daniel Faria | -11/+11 | |
| 2019-12-02 | Simplify BodyCache impl and fix all remaining type errors in librustc_mir ↵ | Paul Daniel Faria | -23/+23 | |
| (lifetime errors still exist) | ||||
| 2019-12-02 | Address nits and remove unneeded pass | Paul Daniel Faria | -1/+1 | |
| 2019-12-02 | Move predecessors cache invalidation back to basic_blocks_mut, add a couple ↵ | Paul Daniel Faria | -3/+3 | |
| more ensure_predecessors to prevent panics | ||||
| 2019-12-02 | Stop invalidating predecessors cache when accessing unique basic block, ↵ | Paul Daniel Faria | -3/+3 | |
| invalidate cache when accessing unique terminator | ||||
| 2019-11-30 | rustc: move mir::SourceScopeLocalData to a field of SourceScopeData. | Eduard-Mihai Burtescu | -5/+1 | |
| 2019-11-30 | rustc_mir: fix inliner to also copy over source_scope_local_data. | Eduard-Mihai Burtescu | -1/+10 | |
| 2019-11-27 | rustc: move debug info from LocalDecl and UpvarDecl into a dedicated ↵ | Eduard-Mihai Burtescu | -8/+4 | |
| VarDebugInfo. | ||||
| 2019-10-22 | Move Place::elem methods and friends to TyCtxt | Santiago Pastorino | -3/+3 | |
| 2019-10-22 | Intern place projection | Santiago Pastorino | -1/+8 | |
