about summary refs log tree commit diff
path: root/src/librustc_codegen_llvm/mir/rvalue.rs
AgeCommit message (Collapse)AuthorLines
2018-11-16Great separation of librustc_codegen_llvm: librustc_codegen_ssa compilesDenis Merigoux-998/+0
2018-11-16Beginning of moving all backend-agnostic code to rustc_codegen_ssaDenis Merigoux-1/+1
2018-11-16Moved common.rs enumsDenis Merigoux-2/+2
2018-11-16Starting to move backend-agnostic code into codegen_utilsDenis Merigoux-1/+2
IntPredicate moved
2018-11-16Generalized mir::codegen_mir (and all subsequent functions)Denis Merigoux-78/+86
2018-11-16Generalized base::unsize_thin_ptrDenis Merigoux-1/+1
2018-11-16Generalized base::unsized_infoDenis Merigoux-2/+2
2018-11-16Traitified IntrinsicCallMethodsDenis Merigoux-1/+1
2018-11-16Transfered memcpy and memset to BuilderMethodsDenis Merigoux-4/+3
2018-11-16Added StaticMethods traitDenis Merigoux-3/+2
2018-11-16Generalized memset and memcpyDenis Merigoux-1/+1
2018-11-16Removing LLVM content from CommonMethods -> ConstMethodsDenis Merigoux-1/+1
2018-11-16Prefixed type methods & removed trait impl for write::CodegenContextDenis Merigoux-1/+1
2018-11-16Prefixed const methods with "const" instead of "c"Denis Merigoux-23/+23
2018-11-16Traitification of type_ methodsDenis Merigoux-22/+33
The methods are now attached to CodegenCx instead of Type
2018-11-16All CommonMethods now real methods (not static)Denis Merigoux-2/+1
2018-11-16CommonWriteMethods are not static any moreDenis Merigoux-4/+4
2018-11-16Split CommonMethods to accomodate for use in back/write.rsDenis Merigoux-1/+1
2018-11-16Added self argument for Codegen CommonMethod trait methodsDenis Merigoux-23/+24
2018-11-16Replaced Codegen field access by trait methodDenis Merigoux-42/+42
2018-11-16Traitification of common.rs methodsDenis Merigoux-34/+31
2018-11-16New files and folders for traitsDenis Merigoux-2/+5
Moved common enums to common
2018-11-16Removed genericity over Value in various functionsDenis Merigoux-5/+5
Prelude to using associated types in traits rather than type parameters
2018-11-16Generalized RealPredicateDenis Merigoux-5/+4
2018-11-16Generalized IntPredicate in the BuilderMethods traitDenis Merigoux-14/+14
2018-11-16Generalized base.rs#call_memcpy and everything that it usesDenis Merigoux-12/+18
Generalized operand.rs#nontemporal_store and fixed tidy issues Generalized operand.rs#nontemporal_store's implem even more With a BuilderMethod trait implemented by Builder for LLVM Cleaned builder.rs : no more code duplication, no more ValueTrait Full traitification of builder.rs
2018-11-16Reduced line length to pass tidyDenis Merigoux-1/+1
Generalized FunctionCx Added ValueTrait and first change Generalize CondegenCx Generalized the Builder struct defined in librustc_codegen_llvm/builder.rs
2018-11-16rustc_codegen_llvm: begin generalizing over backend values.Irina Popa-9/+9
2018-09-30use is_uninhabited in more placesJorge Aparicio-1/+1
2018-09-29Revert "Auto merge of #53508 - japaric:maybe-uninit, r=RalfJung"Ralf Jung-1/+1
This reverts commit c6e3d7fa3113aaa64602507f39d4627c427742ff, reversing changes made to 4591a245c7eec9f70d668982b1383cd2a6854af5.
2018-09-22use is_uninhabited in more placesJorge Aparicio-1/+1
2018-09-11renamed is_nil to is_unitkenta7777-2/+2
2018-09-11Revert "renamed is_nil to is_unit"kenta7777-2/+2
This reverts commit 6f685ffad42a2d12dd1fad5ccb0471e7fa260826.
2018-09-10renamed is_nil to is_unitkenta7777-2/+2
2018-08-24support user-given types in adtsNiko Matsakis-1/+1
2018-08-22Remove Ty prefix from Ty{Bool|Char|Int|Uint|Float|Str}varkor-37/+37
2018-08-22Remove Ty prefix from ↵varkor-3/+3
Ty{Adt|Array|Slice|RawPtr|Ref|FnDef|FnPtr|Dynamic|Closure|Generator|GeneratorWitness|Never|Tuple|Projection|Anon|Infer|Error}
2018-08-19Integrate OperandValue::UnsizedRef into OperandValue::Ref.Masaki Hara-5/+2
2018-08-19Implement simple codegen for unsized rvalues.Masaki Hara-0/+26
2018-08-12Do not generate assumes for plain integer castsSimonas Kazlauskas-1/+3
2018-08-04Simplify some handling of target_pointer_widthMark Rousskov-12/+2
2018-07-30rustc_codegen_llvm: use safe references for Value.Irina Popa-32/+36
2018-07-30rustc_codegen_llvm: use safe references for Type.Irina Popa-18/+18
2018-07-05Store scalar pair bools as i8 in memoryJosh Stone-2/+2
We represent `bool` as `i1` in a `ScalarPair`, unlike other aggregates, to optimize IR for checked operators and the like. With this patch, we still do so when the pair is an immediate value, but we use the `i8` memory type when the value is loaded or stored as an LLVM aggregate. So `(bool, bool)` looks like an `{ i1, i1 }` immediate, but `{ i8, i8 }` in memory. When a pair is a direct function argument, `PassMode::Pair`, it is still passed using the immediate `i1` type, but as a return value it will use the `i8` memory type. Also, `bool`-like` enum tags will now use scalar pairs when possible, where they were previously excluded due to optimization issues.
2018-06-16rustc_codegen_llvm: don't treat i1 as signed, even for #[repr(i8)] enums.Eduard-Mihai Burtescu-1/+5
2018-05-17Rename trans to codegen everywhere.Irina Popa-0/+952