summary refs log tree commit diff
path: root/compiler/rustc_middle/src/ty/layout.rs
AgeCommit message (Collapse)AuthorLines
2023-01-17Remove double spaces after dots in commentsMaybe Waffle-1/+1
2023-01-04review comment: Deduplicate dyn ty_and_layout_field codeMichael Goulet-36/+19
2023-01-04Mirror metadata changes in layout sanity checkMichael Goulet-7/+45
2022-12-20rustc: Remove needless lifetimesJeremy Stucki-1/+1
2022-12-13Combine identical alias armsMichael Goulet-3/+2
2022-12-13Combine projection and opaque into aliasMichael Goulet-4/+4
2022-11-24move some layout logic to rustc_target::abi::layouthkalbasi-19/+12
2022-11-24make rustc_target usable outside of rustchkalbasi-1/+1
2022-11-09Use `LayoutError`'s implementation of `IntoDiagnostic`SLASHLogin-4/+4
2022-10-27Accept `TyCtxt` instead of `TyCtxtAt` in `Ty::is_*` functionsMaybe Waffle-2/+2
Functions in answer: - `Ty::is_freeze` - `Ty::is_sized` - `Ty::is_unpin` - `Ty::is_copy_modulo_regions`
2022-10-23Migrate all diagnosticsNilstrieb-3/+3
2022-10-07First batch of review feedback changes from #102110Nathan Stocks-1/+20
2022-10-04It's not about types or consts, but the lack of regionsOli Scherer-2/+2
2022-10-03Move utils from rustc_middle to rustc_ty_utilsCameron Steffen-2334/+5
2022-09-24fix lifetime errorEllis Hoag-2/+8
2022-09-24rebase and update trait namesEllis Hoag-5/+3
2022-09-24impl SessionDiagnostic for LayoutError and Spanned<T>Ellis Hoag-1/+10
2022-09-19extend polymorphization hack comment.lcnr-0/+2
2022-09-19remove the `Subst` trait, always use `EarlyBinder`lcnr-1/+0
2022-09-19do not implement type traversal for `EarlyBinder`lcnr-1/+4
2022-09-13Address code review commentsEric Holk-6/+5
2022-09-12Make dyn-trait-method workMichael Goulet-3/+16
2022-09-12Rename some variantsMichael Goulet-7/+4
2022-09-12Construct dyn* during const interpMichael Goulet-8/+2
2022-09-12Call destructors when dyn* object goes out of scopeEric Holk-3/+12
2022-09-12dyn* through more typechecking and MIREric Holk-2/+24
2022-09-12Plumb dyn trait representation through ty::DynamicEric Holk-1/+2
2022-09-07Use niche-filling optimization even when multiple variants have data.Michael Benfield-116/+198
Fixes #46213
2022-09-07Change name of "dataful" variant to "untagged"Michael Benfield-10/+10
This is in anticipation of a new enum layout, in which the niche optimization may be applied even when multiple variants have data.
2022-09-04Make `const_eval_select` a real intrinsicDeadbeef-86/+89
2022-08-31Fix a bunch of typoDezhi Wu-1/+1
This PR will fix some typos detected by [typos]. I only picked the ones I was sure were spelling errors to fix, mostly in the comments. [typos]: https://github.com/crate-ci/typos
2022-08-27Auto merge of #100999 - nnethercote:shrink-FnAbi, r=bjorn3bors-2/+2
Shrink `FnAbi` Because they can take up a lot of memory in debug and release builds. r? `@bjorn3`
2022-08-26Change `FnAbi::args` to a boxed slice.Nicholas Nethercote-1/+1
2022-08-26Change `FnAbi::fixed_count` to a `u32`.Nicholas Nethercote-1/+1
2022-08-24add `depth_limit` in `QueryVTable`SparrowLii-36/+25
2022-08-01move layout sanity check to its own fileRalf Jung-290/+4
2022-08-01tighter checks for (some) ScalarPair layoutsRalf Jung-16/+102
2022-08-01check that Scalar layout is newtype around a suitable typeRalf Jung-40/+135
2022-07-31check 'size multiple of align' for all layoutsRalf Jung-0/+4
2022-07-30Fix the size of niche enums with ZST alignmentJosh Stone-2/+8
For enums with an aligned ZST variant, like `[T; 0]`, the niche layout was not computing a sufficient size to be consistent with alignment. Now we pad that size up to the alignment, and also make sure to only use the niche variant's ABI when the size and alignment still match.
2022-07-22do not mark interior mutable shared refs as dereferenceableRalf Jung-5/+10
2022-07-22rename PointerKind::Shared → SharedMutable to indicate this is NOT the ↵Ralf Jung-4/+4
usual shared reference
2022-07-20consistently use VTable over Vtable (matching stable stdlib API RawWakerVTable)Ralf Jung-1/+1
2022-07-19Add flag to configure `noalias` on `Box<T>`nils-2/+7
To aid making an informed decision about the aliasing rules of box, give users an option to remove `noalias` from box.
2022-07-16Rollup merge of #99342 - TaKO8Ki:avoid-symbol-to-string-conversions, ↵Matthias Krüger-2/+2
r=compiler-errors Avoid some `Symbol` to `String` conversions This patch removes some Symbol to String conversions.
2022-07-17avoid some `Symbol` to `String` conversionsTakayuki Maeda-2/+2
2022-07-13Rename `debugging_opts` to `unstable_opts`Joshua Nelson-2/+2
This is no longer used only for debugging options (e.g. `-Zoutput-width`, `-Zallow-features`). Rename it to be more clear.
2022-07-11Hide niches in SIMD types, tooOli Scherer-6/+1
2022-07-11More obvious closure nameOli Scherer-4/+4
2022-07-08Create a custom layout path for UnsafeCell instead of piggy backing on the ↵Oli Scherer-21/+39
layout_scalar_valid_range logic