| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2018-11-16 | Great separation of librustc_codegen_llvm: librustc_codegen_ssa compiles | Denis Merigoux | -682/+0 | |
| 2018-11-16 | [eddyb/rebase cleanup] abstracted Funclet | Eduard-Mihai Burtescu | -7/+6 | |
| 2018-11-16 | Generalized mir::codegen_mir (and all subsequent functions) | Denis Merigoux | -79/+75 | |
| 2018-11-16 | Generalized base::coerce_unsized_into | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Generalized base::unsized_info | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Generalized memset and memcpy | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Removing LLVM content from CommonMethods -> ConstMethods | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Prefixed type methods & removed trait impl for write::CodegenContext | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Prefixed const methods with "const" instead of "c" | Denis Merigoux | -2/+2 | |
| 2018-11-16 | Traitification of type_ methods | Denis Merigoux | -2/+1 | |
| The methods are now attached to CodegenCx instead of Type | ||||
| 2018-11-16 | Use the method form for CodegenCx everywhere | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Added self argument for Codegen CommonMethod trait methods | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Replaced Codegen field access by trait method | Denis Merigoux | -9/+9 | |
| 2018-11-16 | Traitification of common.rs methods | Denis Merigoux | -4/+3 | |
| 2018-11-16 | New files and folders for traits | Denis Merigoux | -1/+1 | |
| Moved common enums to common | ||||
| 2018-11-16 | Removed genericity over Value in various functions | Denis Merigoux | -1/+1 | |
| Prelude to using associated types in traits rather than type parameters | ||||
| 2018-11-16 | Generalized base.rs#call_memcpy and everything that it uses | Denis Merigoux | -1/+6 | |
| 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-16 | Reduced line length to pass tidy | Denis Merigoux | -7/+8 | |
| Generalized FunctionCx Added ValueTrait and first change Generalize CondegenCx Generalized the Builder struct defined in librustc_codegen_llvm/builder.rs | ||||
| 2018-11-16 | rustc_codegen_llvm: begin generalizing over backend values. | Irina Popa | -9/+12 | |
| 2018-11-03 | Implement rotate using funnel shift on LLVM >= 7 | Nikita Popov | -1/+2 | |
| Implement the rotate_left and rotate_right operations using llvm.fshl and llvm.fshr if they are available (LLVM >= 7). Originally I wanted to expose the funnel_shift_left and funnel_shift_right intrinsics and implement rotate_left and rotate_right on top of them. However, emulation of funnel shifts requires emitting a conditional to check for zero shift amount, which is not necessary for rotates. I was uncomfortable doing that here, as I don't want to rely on LLVM to optimize away that conditional (and for variable rotates, I'm not sure it can). We should revisit that question when we raise our minimum version requirement to LLVM 7 and don't need emulation code anymore. | ||||
| 2018-10-09 | codegen_llvm/misc: whitespace & formatting improvements | ljedrz | -4/+4 | |
| 2018-09-18 | Merge indexed_set.rs into bitvec.rs, and rename it bit_set.rs. | Nicholas Nethercote | -3/+3 | |
| Currently we have two files implementing bitsets (and 2D bit matrices). This commit combines them into one, taking the best features from each. This involves renaming a lot of things. The high level changes are as follows. - bitvec.rs --> bit_set.rs - indexed_set.rs --> (removed) - BitArray + IdxSet --> BitSet (merged, see below) - BitVector --> GrowableBitSet - {,Sparse,Hybrid}IdxSet --> {,Sparse,Hybrid}BitSet - BitMatrix --> BitMatrix - SparseBitMatrix --> SparseBitMatrix The changes within the bitset types themselves are as follows. ``` OLD OLD NEW BitArray<C> IdxSet<T> BitSet<T> -------- ------ ------ grow - grow new - (remove) new_empty new_empty new_empty new_filled new_filled new_filled - to_hybrid to_hybrid clear clear clear set_up_to set_up_to set_up_to clear_above - clear_above count - count contains(T) contains(&T) contains(T) contains_all - superset is_empty - is_empty insert(T) add(&T) insert(T) insert_all - insert_all() remove(T) remove(&T) remove(T) words words words words_mut words_mut words_mut - overwrite overwrite merge union union - subtract subtract - intersect intersect iter iter iter ``` In general, when choosing names I went with: - names that are more obvious (e.g. `BitSet` over `IdxSet`). - names that are more like the Rust libraries (e.g. `T` over `C`, `insert` over `add`); - names that are more set-like (e.g. `union` over `merge`, `superset` over `contains_all`, `domain_size` over `num_bits`). Also, using `T` for index arguments seems more sensible than `&T` -- even though the latter is standard in Rust collection types -- because indices are always copyable. It also results in fewer `&` and `*` sigils in practice. | ||||
| 2018-09-07 | make field always private, add `From` impls | Niko Matsakis | -1/+1 | |
| 2018-08-22 | Remove Ty prefix from ↵ | varkor | -6/+6 | |
| Ty{Adt|Array|Slice|RawPtr|Ref|FnDef|FnPtr|Dynamic|Closure|Generator|GeneratorWitness|Never|Tuple|Projection|Anon|Infer|Error} | ||||
| 2018-08-19 | mv codemap() source_map() | Donato Sciarra | -1/+1 | |
| 2018-08-19 | Integrate PassMode::UnsizedIndirect into PassMode::Indirect. | Masaki Hara | -1/+1 | |
| 2018-08-19 | Implement simple codegen for unsized rvalues. | Masaki Hara | -12/+46 | |
| 2018-08-09 | rustc_codegen_llvm: Restore the closure env alloca hack for LLVM 5. | Josh Stone | -2/+24 | |
| This hack was removed in #50949, but without it I found that building `std` with full debuginfo would print many LLVM `DW_OP_LLVM_fragment` errors, then die `LLVM ERROR: Failed to strip malformed debug info`. It doesn't seem to be a problem for LLVM 6, so we can re-enable the hack just for older LLVM. This reverts commit da579ef75e4a8ca11fb98b24a0a3ea0c7ccffeeb. Fixes #53204. r? @eddyb | ||||
| 2018-08-04 | Normalize DebugInfoLevel to standard style | Mark Rousskov | -3/+3 | |
| 2018-08-01 | Split out growth functionality into BitVector type | Mark Rousskov | -3/+3 | |
| 2018-07-30 | rustc_codegen_llvm: use safe references for BasicBlock. | Irina Popa | -7/+7 | |
| 2018-07-30 | rustc_codegen_llvm: use safe references for Value. | Irina Popa | -14/+15 | |
| 2018-07-30 | rustc_codegen_llvm: use safe references for Metadata and DI*. | Irina Popa | -14/+13 | |
| 2018-07-30 | rustc_codegen_llvm: use safe references for Type. | Irina Popa | -12/+13 | |
| 2018-07-30 | rustc_codegen_llvm: move from empty enums to extern types. | Irina Popa | -12/+13 | |
| 2018-07-25 | parameterize `BitVector` and `BitMatrix` by their index types | Niko Matsakis | -4/+4 | |
| 2018-07-09 | bump minimum LLVM version to 5.0 | gnzlbg | -18/+4 | |
| 2018-05-30 | rustc: rename mir::LocalDecl's syntactic_source_info to source_info. | Eduard-Mihai Burtescu | -1/+1 | |
| 2018-05-30 | rustc: turn mir::LocalDecl's visibility_source_info into a SourceScope. | Eduard-Mihai Burtescu | -2/+5 | |
| 2018-05-30 | rustc: rename mir::LocalDecl's source_info to visibility_source_info. | Eduard-Mihai Burtescu | -2/+2 | |
| 2018-05-30 | rustc: rename mir::VisibilityScope to mir::SourceScope. | Eduard-Mihai Burtescu | -5/+5 | |
| 2018-05-21 | rustc_codegen_llvm: remove closure env alloca hack around upvar debuginfo. | Eduard-Mihai Burtescu | -22/+2 | |
| 2018-05-21 | rustc_codegen_llvm: remove debuginfo::VariableKind::CapturedVariable. | Eduard-Mihai Burtescu | -1/+1 | |
| 2018-05-17 | Rename trans to codegen everywhere. | Irina Popa | -0/+652 | |
