about summary refs log tree commit diff
path: root/src/librustc_trans
AgeCommit message (Expand)AuthorLines
2017-11-19rustc_trans: remove type_is_fat_ptr and its uses.Eduard-Mihai Burtescu-47/+27
2017-11-19rustc: don't special-case Box<T> as having a pointer layout.Eduard-Mihai Burtescu-10/+11
2017-11-19rustc_trans: support scalar pairs directly in the Rust ABI.Eduard-Mihai Burtescu-357/+364
2017-11-19rustc: unpack scalar pair newtype layout ABIs.Eduard-Mihai Burtescu-137/+161
2017-11-19rustc: unpack scalar newtype layout ABIs.Eduard-Mihai Burtescu-31/+88
2017-11-19rustc_trans: be more relaxed with non-lvalue consumes, especially ZSTs.Eduard-Mihai Burtescu-24/+59
2017-11-19rustc: encode scalar pairs in layout ABI.Eduard-Mihai Burtescu-84/+164
2017-11-19rustc_trans: restrict "immediate pairs" to pairs of scalars.Eduard-Mihai Burtescu-106/+84
2017-11-19rustc_trans: generate LLVM pointee types based on alignment.Eduard-Mihai Burtescu-73/+191
2017-11-19rustc_trans: compute better align/dereferenceable attributes from pointees.Eduard-Mihai Burtescu-117/+167
2017-11-19rustc: optimize out uninhabited types and variants.Eduard-Mihai Burtescu-46/+69
2017-11-19rustc: track validity ranges for layout::Abi::Scalar values.Eduard-Mihai Burtescu-102/+106
2017-11-19rustc: remove redundant/unused fields from layout::Abi::Vector.Eduard-Mihai Burtescu-10/+10
2017-11-19rustc: generalize layout::Variants::NicheFilling to niches other than 0.Eduard-Mihai Burtescu-45/+53
2017-11-19rustc_trans: check for layout::I1 instead of TyBool.Eduard-Mihai Burtescu-13/+12
2017-11-19rustc: support u128 discriminant ranges.Eduard-Mihai Burtescu-82/+54
2017-11-19rustc: collapse the remains of Layout into Variants (enums vs everything else).Eduard-Mihai Burtescu-112/+122
2017-11-19rustc: move size, align & primitive_align from Abi::Aggregate to layout.Eduard-Mihai Burtescu-191/+169
2017-11-19rustc_trans: go through layouts uniformly for fat pointers and variants.Eduard-Mihai Burtescu-309/+228
2017-11-19rustc_trans: query LLVM types from a layout instead of a Ty.Eduard-Mihai Burtescu-116/+114
2017-11-19rustc_trans: keep a layout instead of a type in {Lvalue,Operand}Ref.Eduard-Mihai Burtescu-412/+358
2017-11-19rustc_trans: nest abi::ArgType's for fat pointers instead of eagerly flattening.Eduard-Mihai Burtescu-137/+161
2017-11-19rustc_trans: pass OperandRef arguments to trans_intrinsic_call.Eduard-Mihai Burtescu-198/+206
2017-11-19rustc: do not pub use Layout::* in layout.Eduard-Mihai Burtescu-20/+21
2017-11-19rustc_trans: compute LLVM types from type layouts, not Rust types.Eduard-Mihai Burtescu-376/+180
2017-11-19rustc: split layout::FieldPlacement::Linear back into Union and Array.Eduard-Mihai Burtescu-9/+8
2017-11-19rustc: move layout::Struct into FieldPlacement/Abi.Eduard-Mihai Burtescu-32/+16
2017-11-19rustc: hide details in Layout in favor of Abi or FieldPlacement.Eduard-Mihai Burtescu-137/+78
2017-11-19rustc: store CachedLayout for each variant of enum Layout's instead of Struct.Eduard-Mihai Burtescu-148/+102
2017-11-19rustc: move size/alignment from Layout into layout::Abi.Eduard-Mihai Burtescu-53/+57
2017-11-19rustc: make Layout::NullablePointer a lot more like Layout::General.Eduard-Mihai Burtescu-51/+35
2017-11-19rustc: collapse Layout::CEnum into Layout::General.Eduard-Mihai Burtescu-27/+23
2017-11-19rustc: give Layout::CEnum a discriminant field like Layout::General.Eduard-Mihai Burtescu-53/+52
2017-11-19rustc: move CEnum's signedness into Primitive::Int.Eduard-Mihai Burtescu-52/+40
2017-11-19rustc: use Primitive instead of Integer for CEnum and General discriminants.Eduard-Mihai Burtescu-44/+41
2017-11-19rustc: do not track `non_zero` in Layout.Eduard-Mihai Burtescu-23/+14
2017-11-19rustc: collapse Layout::{Raw,StructWrapped}NullablePointer into one variant.Eduard-Mihai Burtescu-147/+59
2017-11-19rustc: introduce layout::Abi for reduced general ABI "passing style".Eduard-Mihai Burtescu-122/+51
2017-11-19rustc: represent the discriminant as a field for Layout::{Raw,StructWrapped}N...Eduard-Mihai Burtescu-74/+53
2017-11-19rustc_trans: treat General enums like unions.Eduard-Mihai Burtescu-27/+10
2017-11-19rustc: pre-compute field placements out of Layout.Eduard-Mihai Burtescu-14/+14
2017-11-19rustc: remove Ty::layout and move everything to layout_of.Eduard-Mihai Burtescu-22/+22
2017-11-19rustc: re-complicate the TyLayout API and use better names.Eduard-Mihai Burtescu-61/+57
2017-11-19rustc: remove source field path from Layout::StructWrappedNullablePointer.Eduard-Mihai Burtescu-12/+34
2017-11-19rustc: use an offset instead of a field path in Layout::StructWrappedNullable...Eduard-Mihai Burtescu-34/+58
2017-11-19rustc: remove useless 0 prefix from Layout::StructWrappedNullablePointer's di...Eduard-Mihai Burtescu-2/+1
2017-11-19rustc: do not inject discriminant fields into Layout::General's variants.Eduard-Mihai Burtescu-40/+30
2017-11-19rustc_trans: always insert alignment padding, even before the first field.Eduard-Mihai Burtescu-34/+55
2017-11-19rustc_trans: use *[T; 0] for slice data pointers instead of *T.Eduard-Mihai Burtescu-26/+21
2017-11-19rustc_trans: remove the in_memory_type_of distinction.Eduard-Mihai Burtescu-98/+77