summary refs log tree commit diff
path: root/src/librustc_trans
AgeCommit message (Expand)AuthorLines
2017-12-21Revert "Auto merge of #45225 - eddyb:trans-abi, r=arielb1"Ariel Ben-Yehuda-3248/+4030
2017-12-21Revert "rustc_trans: don't apply noalias on returned references."Ariel Ben-Yehuda-2/+1
2017-12-21Revert "rustc_trans: don't write discriminants for uninhabited variants"Ariel Ben-Yehuda-5/+7
2017-12-07rustc_trans: don't write discriminants for uninhabited variantsSimon Sapin-7/+5
2017-12-05rustc_trans: don't apply noalias on returned references.Eduard-Mihai Burtescu-1/+2
2017-11-20Auto merge of #45905 - alexcrichton:add-wasm-target, r=aturonbors-29/+162
2017-11-19std: Add a new wasm32-unknown-unknown targetAlex Crichton-29/+162
2017-11-19Auto merge of #45225 - eddyb:trans-abi, r=arielb1bors-4030/+3248
2017-11-19rustc_trans: remove primitive_align optimization.Eduard-Mihai Burtescu-18/+6
2017-11-19rustc_trans: work around i686-pc-windows-msvc byval align LLVM bug.Eduard-Mihai Burtescu-1/+3
2017-11-19rustc_trans: (hack) use preferred alignment for atomic loads/stores.Eduard-Mihai Burtescu-2/+7
2017-11-19rustc: extend the niche-filling enum optimization past 2 variants.Eduard-Mihai Burtescu-18/+44
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