about summary refs log tree commit diff
path: root/src/librustc_mir/transform
AgeCommit message (Collapse)AuthorLines
2018-05-30rustc: rename mir::SourceScopeInfo to mir::SourceScopeLocalData.Eduard-Mihai Burtescu-11/+11
2018-05-30rustc: rename mir::VisibilityScope to mir::SourceScope.Eduard-Mihai Burtescu-24/+24
2018-05-29rust-lang/rust#27282: Add `StatementKind::ReadForMatch` to MIR.Felix S. Klock II-0/+4
(This is just the data structure changes and some boilerplate match code that followed from it; the actual emission of these statements comes in a follow-up commit.)
2018-05-25Auto merge of #50967 - oli-obk:miri_api_refactor, r=eddybbors-20/+29
Miri api refactor r? @eddyb cc @Zoxc based on https://github.com/rust-lang/rust/pull/50916
2018-05-24Get rid of `scalar_size`Oliver Schneider-4/+10
2018-05-24primval -> scalar renameOliver Schneider-3/+3
2018-05-24change `Value::Bytes` to `Value::Bits`Oliver Schneider-7/+10
2018-05-24Rename ByVal(Pair) to Scalar(Pair)Oliver Schneider-9/+9
2018-05-24Rename PrimVal to ScalarOliver Schneider-6/+6
2018-05-24Always mark unstable const fn as not constOliver Schneider-7/+2
2018-05-24Enforce stability of const fn in promotedsOliver Schneider-13/+20
2018-05-22Deduplicate match armsOliver Schneider-7/+4
2018-05-22Report let bindings and statements as unstableOliver Schneider-22/+13
2018-05-22Be more explicit about what's skippedOliver Schneider-33/+32
2018-05-22Allow let bindings in const fn and constantsOliver Schneider-18/+43
2018-05-21rustc: use intern_* instead of mk_* where possible.Eduard-Mihai Burtescu-2/+4
2018-05-19Auto merge of #50603 - eddyb:issue-49955, r=nikomatsakisbors-79/+153
rustc_mir: allow promotion of promotable temps indexed at runtime. Fixes #49955. r? @nikomatsakis
2018-05-17Rename trans to codegen everywhere.Irina Popa-13/+13
2018-05-16rustc_mir: allow promotion of promotable temps indexed at runtime.Eduard-Mihai Burtescu-8/+13
2018-05-16label-break-value: Parsing and AST/HIR changesest31-1/+1
2018-05-16rustc_mir: focus const-checking logic on whether mutation is forbidden.Eduard-Mihai Burtescu-14/+26
2018-05-16rustc_mir: promote borrows' underlying temps, and project at runtime.Eduard-Mihai Burtescu-0/+12
2018-05-16rustc_mir: also promote interior borrows, not just whole temps.Eduard-Mihai Burtescu-2/+13
2018-05-16rustc_mir: generate an extra temporary during borrowed rvalue promotion.Eduard-Mihai Burtescu-58/+92
2018-05-15Rename param_counts to own_countsvarkor-1/+1
2018-05-15Use GenericParamCount instead of FxHashMapvarkor-2/+2
2018-05-15Generalise more cases of explicit iteration of specific kindsvarkor-2/+2
2018-05-15Rename `has_type_parameters` to `requires_monomorphization`varkor-3/+3
2018-05-15Fix generics type parameter handling in mirivarkor-4/+3
2018-05-15Prefer iterator to vecvarkor-1/+1
2018-05-15Consolidate ty::Genericsvarkor-1/+1
2018-05-12Rollup merge of #50550 - llogiq:fmt-result, r=petrochenkovMark Simulacrum-1/+1
use fmt::Result where applicable This is a quite boring PR, but I think the type alias improves readability, so why not use it?
2018-05-11Introduce ConstValue and use it instead of miri's Value for constant valuesJohn Kåre Alsaker-80/+99
2018-05-09use fmt::Result where applicableAndre Bogus-1/+1
2018-05-08Insert fields from TypeAndMut into TyRef to allow layout optimizationJohn Kåre Alsaker-2/+2
2018-05-08Store the GeneratorInterior in the new GeneratorSubstsJohn Kåre Alsaker-12/+6
2018-05-08Store generator movability outside GeneratorInteriorJohn Kåre Alsaker-6/+15
2018-05-05add `Location::START` constNiko Matsakis-2/+2
2018-05-02Auto merge of #50282 - fitzgen:run-more-passes-on-constant-mir, r=nikomatsakisbors-48/+2
Run more passes on constant mir Not very familiar with this code, but everything seems to be working! r? @eddyb
2018-05-02Auto merge of #50278 - eddyb:mir-succ-iter, r=nikomatsakisbors-7/+7
rustc: return iterators from Terminator(Kind)::successors(_mut). Minor cleanup (and potentially speedup) prompted by @nnethercote's `SmallVec` experiments. This PR assumes `.count()` and `.nth(i)` on `iter::Chain<option::IntoIter, slice::Iter(Mut)>` are `O(1)`, but otherwise all of the uses appear to immediately iterate through the successors. r? @nikomatsakis
2018-05-01rustc: return impl Iterator from Terminator(Kind)::successors(_mut).Eduard-Mihai Burtescu-7/+7
2018-04-30Unify MIR assert messages and const eval errorsOliver Schneider-7/+14
2018-04-30Merge ConstMathError into EvalErrorKindOliver Schneider-1/+1
2018-04-27Auto merge of #50102 - Zoxc:query-nomacro, r=michaelwoeristerbors-1/+1
Move query code outside macros and store query jobs separately from query results Based on https://github.com/rust-lang/rust/pull/50067 r? @michaelwoerister
2018-04-27mir: Deaggregate constant MIRNick Fitzgerald-20/+1
Appears to work now that miri has merged.
2018-04-27mir: Run drop elaboration on constant MIRNick Fitzgerald-8/+0
Seems to Just Work since miri merged.
2018-04-27mir: Run copy propagation on constant mirNick Fitzgerald-20/+1
Now that miri is merged, this seems to Just Work!
2018-04-27Auto merge of #50097 - glandium:box_free, r=nikomatsakisbors-63/+2
Partial future-proofing for Box<T, A> In some ways, this is similar to @eddyb's PR #47043 that went stale, but doesn't cover everything. Notably, this still leaves Box internalized as a pointer in places, so practically speaking, only ZSTs can be practically added to the Box type with the changes here (the compiler ICEs otherwise). The Box type is not changed here, that's left for the future because I want to test that further first, but this puts things in place in a way that hopefully will make things easier.
2018-04-27Move query functions out from the define_maps! macroJohn Kåre Alsaker-1/+1
2018-04-27Rename InternedString to LocalInternedString and introduce a new thread-safe ↵John Kåre Alsaker-7/+7
InternedString