| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2019-12-03 | rustc: expose the mir::Body reference lifetime from mir::ReadOnlyBodyCache ↵ | Eduard-Mihai Burtescu | -3/+3 | |
| (#64736 fallout). | ||||
| 2019-12-02 | Remove HasLocalDecls impl from BodyCache's, properly reborrow to Body, ↵ | Paul Daniel Faria | -3/+3 | |
| 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 | Undo minor changes that weren't needed, fix one lifetime typo | Paul Daniel Faria | -5/+1 | |
| 2019-12-02 | Simplify BodyCache impl and fix all remaining type errors in librustc_mir ↵ | Paul Daniel Faria | -2/+2 | |
| (lifetime errors still exist) | ||||
| 2019-12-02 | Account for new maybe_sideeffect helper that requires predecessors | Paul Daniel Faria | -3/+3 | |
| 2019-12-02 | Revert back to using FunctionCx's Body | Paul Daniel Faria | -29/+24 | |
| 2019-12-02 | Add Body back as field of FunctionCx, but under a different lifetime | Paul Daniel Faria | -2/+2 | |
| 2019-12-02 | Remove Body from FunctionCx, pass it along during librustc_codegen_ssa | Paul Daniel Faria | -25/+34 | |
| 2019-12-02 | Simplify Cache wrapper to single type, impl Deref on it, fix all compilation ↵ | Paul Daniel Faria | -3/+3 | |
| errors in librustc_codegen_ssa | ||||
| 2019-11-21 | Aggregation of drive-by cosmetic changes. | Alexander Regueiro | -28/+27 | |
| 2019-10-25 | Don't cast directly from `&[T; N]` to `*const T` | Matthew Jasper | -0/+1 | |
| Instead coerce to `*const [T; N]` and then cast. | ||||
| 2019-10-22 | Pattern match over PlaceRef rather than Place | Santiago Pastorino | -4/+1 | |
| This prepares the code base for when projection is interned. Place's projection field is going to be `&List<PlaceElem<'tcx>>` so we won't be able to pattern match against it. | ||||
| 2019-10-19 | Remove unreachable unit tuple compare binop codegen | Caleb Behunin | -8/+1 | |
| 2019-10-13 | Remove MiscMethods::instances | bjorn3 | -3/+3 | |
| 2019-10-13 | Inline functions from cg_ssa::callee and remove the mod | bjorn3 | -2/+9 | |
| Fixes #65271 | ||||
| 2019-10-13 | Remove is_const_integral method from ConstMethods | bjorn3 | -1/+1 | |
| 2019-10-09 | Reifying callers of Instance::resolve use resolve_for_fn_ptr. | Adam Perry | -1/+1 | |
| 2019-10-03 | generate ClosureSubsts from SubstsRef | csmoe | -2/+3 | |
| 2019-09-29 | remove ClosureSubsts with SubstsRef | csmoe | -1/+3 | |
| 2019-09-25 | Rename `sty` to `kind` | varkor | -3/+3 | |
| 2019-09-14 | Rollup merge of #64435 - eddyb:arguments-against-arg, r=rkruppe | Mazdak Farrokhzad | -1/+1 | |
| codegen: use "_N" (like for other locals) instead of "argN", for argument names. Based on #64408 (second commit is new), fixing something I mentioned in #64408 (which turned to be an immediate blocker for unifying relevant codepaths). Closes #64408 (by containing it). r? @rkruppe | ||||
| 2019-09-12 | codegen: be more explicit about setting giving names to allocas. | Eduard-Mihai Burtescu | -1/+1 | |
| 2019-09-09 | Convert Place's projection to a boxed slice | Santiago Pastorino | -1/+1 | |
| 2019-08-29 | `new_sized` is mostly used without align | Dante-Broggi | -1/+1 | |
| so rename it `new_sized_aligned`. 6/11 use `align` = `layout.align.abi`. `from_const_alloc` uses `alloc.align`, but that is `assert_eq!` to `layout.align.abi`. only 4/11 use something interesting for `align`. | ||||
| 2019-08-07 | Auto merge of #63152 - estebank:big-array, r=oli-obk | bors | -4/+9 | |
| Always error on `SizeOverflow` during mir evaluation Fix #55878, fix #25116. r? @oli-obk | ||||
| 2019-08-05 | Fiddle param env through to `try_eval_bits` in most places | Oliver Scherer | -1/+1 | |
| 2019-08-05 | Don't abort on unevaluated constants without at least tryting to eval them | Oliver Scherer | -1/+1 | |
| 2019-08-04 | review comments: clean up | Esteban Küber | -4/+4 | |
| 2019-08-03 | Simplify change to layout_of | Esteban Küber | -1/+0 | |
| 2019-08-03 | Point to local place span on "type too big" error | Esteban Küber | -4/+10 | |
| 2019-07-22 | Place::as_place_ref is now Place::as_ref | Santiago Pastorino | -3/+3 | |
| 2019-07-20 | Remove explicit return from last line of fn | Santiago Pastorino | -1/+1 | |
| 2019-07-20 | Avoid cloning Place in codegen_place | Santiago Pastorino | -3/+3 | |
| 2019-07-20 | Migrate from Place enum to Place struct | Santiago Pastorino | -1/+4 | |
| 2019-06-18 | rustc: remove 'x: 'y bounds (except from comments/strings). | Eduard-Mihai Burtescu | -4/+4 | |
| 2019-06-11 | is_fp and is_floating_point do the same thing, remove the former | Ralf Jung | -2/+2 | |
| also consistently mark all these is_* methods for inlining | ||||
| 2019-06-02 | remove unneeded deps | Mark Mansi | -1/+0 | |
| 2019-06-02 | deduplicate ty::Instance constructors | Mark Mansi | -2/+2 | |
| 2019-05-13 | Pass a `Symbol` to `check_name`, `emit_feature_err`, and related functions. | Nicholas Nethercote | -3/+3 | |
| 2019-05-04 | Auto merge of #59897 - tmandry:variantful-generators, r=eddyb | bors | -6/+5 | |
| Multi-variant layouts for generators This allows generators to overlap fields using variants, but doesn't do any such overlapping yet. It creates one variant for every state of the generator (unresumed, returned, panicked, plus one for every yield), and puts every stored local in each of the yield-point variants. Required for optimizing generator layouts (#52924). There was quite a lot of refactoring needed for this change. I've done my best in later commits to eliminate assumptions in the code that only certain kinds of types are multi-variant, and to centralize knowledge of the inner mechanics of generators in as few places as possible. This change also emits debuginfo about the fields contained in each variant, as well as preserving debuginfo about stored locals while running in the generator. Also, fixes #59972. Future work: - Use this change for an optimization pass that actually overlaps locals within the generator struct (#52924) - In the type layout fields, don't include locals that are uninitialized for a particular variant, so miri and UB sanitizers can check our memory (see https://github.com/rust-lang/rust/issues/59972#issuecomment-483058172) - Preserve debuginfo scopes across generator yield points | ||||
| 2019-04-25 | Update existing usages | varkor | -1/+1 | |
| 2019-04-25 | Generalize discriminant info calls for generators and ADTs | Tyler Mandry | -6/+5 | |
| 2019-04-15 | basic refactor. Adding PointerCast enum | Saleem Jaffer | -8/+8 | |
| 2019-03-31 | Rollup merge of #59580 - taiki-e:coerce-closure, r=oli-obk | Mazdak Farrokhzad | -1/+1 | |
| Allow closure to unsafe fn coercion Closes #57883 | ||||
| 2019-03-31 | Rollup merge of #59519 - eddyb:layout-variants-refactor, r=oli-obk | Mazdak Farrokhzad | -2/+1 | |
| rustc_target: factor out common fields of non-Single Variants. @tmandry and I were discussing ways to generalize the current variants/discriminant layout to allow more fields in the "`enum`" (or another multi-variant types, such as potentially generator state, in the future), shared by all variants, than just the tag/niche discriminant. This refactor should make it easier to extend multi-variant layouts, as nothing is duplicating anymore between "tagged enums" and "niche-filling enums". r? @oli-obk | ||||
| 2019-04-01 | Allow closure to unsafe fn coercion | Taiki Endo | -1/+1 | |
| 2019-03-30 | Remove redundant imports | Fabian Drinck | -1/+0 | |
| 2019-03-29 | Remove type_variadic_func and typ_array from cg_ssa | bjorn3 | -25/+4 | |
| 2019-03-29 | Use Builder instead of CodegenCx for OperandRef and LocalRef | bjorn3 | -2/+5 | |
