summary refs log tree commit diff
path: root/src/librustc/ty/layout.rs
AgeCommit message (Expand)AuthorLines
2018-04-20Properly handle ranges of signed enums using both extremums (fixes #49973)Anthony Ramine-5/+6
2018-03-26Allow niche-filling dataful variants to be represented as a ScalarPairAnthony Ramine-4/+15
2018-03-22Fix the conversion between bit representations and i128 representationsOliver Schneider-1/+7
2018-03-14remove defaulting to unitAndrew Cann-2/+2
2018-03-13transition various normalization functions to the new methodsNiko Matsakis-6/+6
2018-03-13refactor `ParamEnv::empty(Reveal)` into two distinct methodsNiko Matsakis-4/+4
2018-03-08Decide signdedness on the layout instead of the typeOliver Schneider-0/+11
2018-03-08Accidental pasteOliver Schneider-1/+1
2018-03-08Nuke ConstInt and Const*sizeOliver Schneider-1/+1
2018-03-08Add InterpretInterner to StableHashingContext for AllocId serializationOliver Schneider-10/+10
2018-03-08Produce instead of pointersOliver Schneider-2/+2
2018-03-08Add a variant to ConstVal for storing miri resultsOliver Schneider-1/+1
2018-03-04Fixed #48425Pramod Bisht-2/+2
2018-02-17fix more typos found by codespell.Matthias Krüger-2/+2
2018-02-01rustc: prefer ParamEnvAnd and LayoutCx over tuples for LayoutOf.Eduard-Mihai Burtescu-72/+99
2018-01-23Adds support for immovable generators. Move checking of invalid borrows acros...John Kåre Alsaker-3/+4
2018-01-08Don't look for niches inside generator types. Fixes #47253John Kåre Alsaker-0/+7
2018-01-04rustc: use {U,I}size instead of {U,I}s shorthands.Eduard-Mihai Burtescu-1/+1
2018-01-01Fix docs for future pulldown migrationMalo Jaffré-2/+4
2017-12-26rustc: don't use union layouts for tagged union enums.Eduard-Mihai Burtescu-4/+4
2017-12-24Auto merge of #46859 - gereeter:uninhabited-unions, r=eddybbors-11/+11
2017-12-23Remove unnecessary assert that unions have only one variantJonathan S-3/+0
2017-12-20Never mark unions as uninhabited. Although I think this is wrong, it is certa...Jonathan S-5/+0
2017-12-20rustc: do not raise the alignment of optimized enums to the niche's alignment.Eduard-Mihai Burtescu-7/+5
2017-12-19Only mark unions as uninhabited if all of their fields are uninhabited. Fixes...Jonathan S-11/+19
2017-12-18rustc: ensure optimized enums have a properly aligned size.Eduard-Mihai Burtescu-1/+2
2017-12-17rustc: don't track whether layouts are "packed".Eduard-Mihai Burtescu-52/+11
2017-12-15rustc_trans: approximate ABI alignment for padding/union fillers.Eduard-Mihai Burtescu-2/+15
2017-12-13rustc: unpack newtyped of #[repr(simd)] vector types.Eduard-Mihai Burtescu-14/+28
2017-12-02rustc: don't unpack newtypes of scalar-pairs with mismatched alignment.Eduard-Mihai Burtescu-1/+3
2017-11-20Implement the special repr(C)-non-clike-enum layoutAlexis Beingessner-16/+26
2017-11-19rustc_trans: remove primitive_align optimization.Eduard-Mihai Burtescu-37/+8
2017-11-19rustc: rename CachedLayout to LayoutDetails.Eduard-Mihai Burtescu-51/+51
2017-11-19rustc: extend the niche-filling enum optimization past 2 variants.Eduard-Mihai Burtescu-102/+129
2017-11-19rustc: use layout::Abi::ScalarPair for structs in more cases.Eduard-Mihai Burtescu-42/+54
2017-11-19rustc: don't special-case Box<T> as having a pointer layout.Eduard-Mihai Burtescu-95/+73
2017-11-19rustc: unpack scalar pair newtype layout ABIs.Eduard-Mihai Burtescu-18/+23
2017-11-19rustc: unpack scalar newtype layout ABIs.Eduard-Mihai Burtescu-14/+36
2017-11-19rustc: place ZSTs first during struct field reordering.Eduard-Mihai Burtescu-22/+19
2017-11-19rustc: encode scalar pairs in layout ABI.Eduard-Mihai Burtescu-43/+95
2017-11-19rustc: optimize out uninhabited types and variants.Eduard-Mihai Burtescu-46/+105
2017-11-19rustc: track validity ranges for layout::Abi::Scalar values.Eduard-Mihai Burtescu-115/+186
2017-11-19rustc: remove redundant/unused fields from layout::Abi::Vector.Eduard-Mihai Burtescu-18/+9
2017-11-19rustc: generalize layout::Variants::NicheFilling to niches other than 0.Eduard-Mihai Burtescu-39/+61
2017-11-19rustc: make TyLayout::field(NonZero<*T>, 0) return &T.Eduard-Mihai Burtescu-5/+11
2017-11-19rustc: support u128 discriminant ranges.Eduard-Mihai Burtescu-19/+15
2017-11-19rustc: collapse the remains of Layout into Variants (enums vs everything else).Eduard-Mihai Burtescu-122/+64
2017-11-19rustc: move size, align & primitive_align from Abi::Aggregate to layout.Eduard-Mihai Burtescu-186/+125
2017-11-19rustc_trans: go through layouts uniformly for fat pointers and variants.Eduard-Mihai Burtescu-115/+118
2017-11-19rustc: collapse Layout::FatPointer into Layout::Univariant.Eduard-Mihai Burtescu-42/+47