about summary refs log tree commit diff
path: root/src
AgeCommit message (Expand)AuthorLines
2017-11-19rustc: encode scalar pairs in layout ABI.Eduard-Mihai Burtescu-137/+266
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-123/+237
2017-11-19rustc: optimize out uninhabited types and variants.Eduard-Mihai Burtescu-92/+197
2017-11-19rustc: track validity ranges for layout::Abi::Scalar values.Eduard-Mihai Burtescu-219/+294
2017-11-19rustc: remove redundant/unused fields from layout::Abi::Vector.Eduard-Mihai Burtescu-28/+19
2017-11-19rustc: generalize layout::Variants::NicheFilling to niches other than 0.Eduard-Mihai Burtescu-86/+146
2017-11-19rustc_trans: check for layout::I1 instead of TyBool.Eduard-Mihai Burtescu-13/+12
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-101/+70
2017-11-19rustc: collapse the remains of Layout into Variants (enums vs everything else).Eduard-Mihai Burtescu-236/+188
2017-11-19rustc: move size, align & primitive_align from Abi::Aggregate to layout.Eduard-Mihai Burtescu-383/+299
2017-11-19rustc_trans: go through layouts uniformly for fat pointers and variants.Eduard-Mihai Burtescu-447/+363
2017-11-19rustc: collapse Layout::FatPointer into Layout::Univariant.Eduard-Mihai Burtescu-42/+47
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-414/+374
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-32/+32
2017-11-19rustc_trans: compute LLVM types from type layouts, not Rust types.Eduard-Mihai Burtescu-380/+184
2017-11-19rustc: split layout::FieldPlacement::Linear back into Union and Array.Eduard-Mihai Burtescu-35/+36
2017-11-19rustc: move layout::Struct into FieldPlacement/Abi.Eduard-Mihai Burtescu-600/+496
2017-11-19rustc: hide details in Layout in favor of Abi or FieldPlacement.Eduard-Mihai Burtescu-484/+353
2017-11-19rustc: store CachedLayout for each variant of enum Layout's instead of Struct.Eduard-Mihai Burtescu-178/+134
2017-11-19rustc: move size/alignment from Layout into layout::Abi.Eduard-Mihai Burtescu-214/+257
2017-11-19rustc: make Layout::NullablePointer a lot more like Layout::General.Eduard-Mihai Burtescu-115/+83
2017-11-19rustc: collapse Layout::CEnum into Layout::General.Eduard-Mihai Burtescu-135/+86
2017-11-19rustc: give Layout::CEnum a discriminant field like Layout::General.Eduard-Mihai Burtescu-55/+55
2017-11-19rustc: move CEnum's signedness into Primitive::Int.Eduard-Mihai Burtescu-80/+65
2017-11-19rustc: use Primitive instead of Integer for CEnum and General discriminants.Eduard-Mihai Burtescu-63/+57
2017-11-19rustc: do not track `non_zero` in Layout.Eduard-Mihai Burtescu-81/+51
2017-11-19rustc: collapse Layout::{Raw,StructWrapped}NullablePointer into one variant.Eduard-Mihai Burtescu-205/+91
2017-11-19rustc: introduce layout::Abi for reduced general ABI "passing style".Eduard-Mihai Burtescu-127/+105
2017-11-19rustc: represent the discriminant as a field for Layout::{Raw,StructWrapped}N...Eduard-Mihai Burtescu-81/+112
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-141/+228
2017-11-19rustc: remove Ty::layout and move everything to layout_of.Eduard-Mihai Burtescu-250/+201
2017-11-19rustc: re-complicate the TyLayout API and use better names.Eduard-Mihai Burtescu-120/+109
2017-11-19rustc: remove source field path from Layout::StructWrappedNullablePointer.Eduard-Mihai Burtescu-67/+55
2017-11-19rustc: use an offset instead of a field path in Layout::StructWrappedNullable...Eduard-Mihai Burtescu-113/+137
2017-11-19rustc: remove useless 0 prefix from Layout::StructWrappedNullablePointer's di...Eduard-Mihai Burtescu-5/+1
2017-11-19rustc: do not inject discriminant fields into Layout::General's variants.Eduard-Mihai Burtescu-89/+70
2017-11-19rustc_trans: always insert alignment padding, even before the first field.Eduard-Mihai Burtescu-42/+66
2017-11-19rustc_trans: use *[T; 0] for slice data pointers instead of *T.Eduard-Mihai Burtescu-33/+29
2017-11-19rustc_trans: remove the in_memory_type_of distinction.Eduard-Mihai Burtescu-112/+77
2017-11-19rustc_trans: use more of the trans::mir and ty::layout APIs throughout.Eduard-Mihai Burtescu-885/+706
2017-11-19rustc_trans: do not introspect LLVM aggregate field types.Eduard-Mihai Burtescu-50/+14
2017-11-19rustc_trans: remove obsolete Type methods.Eduard-Mihai Burtescu-18/+4
2017-11-19rustc_trans: use a predictable layout for constant ADTs.Eduard-Mihai Burtescu-100/+68