| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2019-09-28 | rustc: rely on c_variadic == true instead of CVarArgs in HIR/Ty fn signatures. | Eduard-Mihai Burtescu | -7/+5 | |
| 2019-09-12 | codegen: be more explicit about setting giving names to allocas. | Eduard-Mihai Burtescu | -1/+1 | |
| 2019-07-09 | Pass type to byval attributes | Nikita Popov | -29/+35 | |
| 2019-05-14 | removes `AbiMethods` | Saleem Jaffer | -18/+2 | |
| 2019-05-14 | refactor complete | Saleem Jaffer | -372/+7 | |
| 2019-05-14 | some more refactor of FnType. Things build now | Saleem Jaffer | -3/+294 | |
| 2019-05-10 | refactor some `FnType` stuff to `rustc::ty::layout` | Saleem Jaffer | -291/+0 | |
| 2019-05-04 | removing param_env from pointee_info_at | Saleem Jaffer | -2/+2 | |
| 2019-05-04 | resolving conflicts | Saleem Jaffer | -7/+1 | |
| 2019-05-04 | impl `pointee_info_at` in TyLayout. | Daan de Graaf | -2/+2 | |
| 2019-05-04 | Remove old pointee_info_at body. | Daan de Graaf | -1/+7 | |
| 2019-04-26 | Update handling of Tuple | varkor | -4/+4 | |
| 2019-04-04 | Fix cases of conflicting two-phase borrows | Matthew Jasper | -1/+2 | |
| 2019-03-29 | Move get_param and set_value_name | bjorn3 | -0/+4 | |
| 2019-02-27 | Rename variadic to c_variadic | Dan Robertson | -5/+5 | |
| Function signatures with the `variadic` member set are actually C-variadic functions. Make this a little more explicit by renaming the `variadic` boolean value, `c_variadic`. | ||||
| 2019-02-27 | Support defining C compatible variadic functions | Dan Robertson | -6/+39 | |
| Add support for defining C compatible variadic functions in unsafe rust with extern "C". | ||||
| 2019-02-18 | librustc_codegen_llvm => 2018 | Taiki Endo | -6/+6 | |
| 2019-02-10 | rustc: doc comments | Alexander Regueiro | -2/+2 | |
| 2018-12-25 | Remove licenses | Mark Rousskov | -10/+0 | |
| 2018-12-24 | Rollup merge of #57085 - glaubitz:sparc64-abi-fix, r=nagisa | Mazdak Farrokhzad | -2/+6 | |
| librustc_codegen_llvm: Don't eliminate empty structs in C ABI on linux-sparc64 This is in accordance with the SPARC Compliance Definition 2.4.1, Page 3P-12. It says that structs of up to 8 bytes (which applies to empty structs as well) are to be passed in one register. | ||||
| 2018-12-23 | librustc_codegen_llvm: Don't eliminate empty structs in C ABI on linux-sparc64 | Michael Karcher | -2/+6 | |
| This is in accordance with the SPARC Compliance Definition 2.4.1, Page 3P-12. It says that structs of up to 8 bytes (which applies to empty structs as well) are to be passed in one register. | ||||
| 2018-12-21 | Enable emission of alignment attrs for pointer params | Nikita Popov | -6/+0 | |
| Instead disable creation of assumptions during inlining using an LLVM opt flag. The -Z arg-align-attributes option which previously controlled this behavior is removed. | ||||
| 2018-12-07 | Various minor/cosmetic improvements to code | Alexander Regueiro | -1/+1 | |
| 2018-11-29 | Use implicit deref instead of BuilderMethods::cx() | bjorn3 | -7/+7 | |
| 2018-11-22 | rustc_target: avoid using AbiAndPrefAlign where possible. | Eduard-Mihai Burtescu | -7/+7 | |
| 2018-11-22 | rustc_target: separate out an individual Align from AbiAndPrefAlign. | Eduard-Mihai Burtescu | -2/+2 | |
| 2018-11-16 | [eddyb] rustc_codegen_ssa: rename `interfaces` to `traits`. | Eduard-Mihai Burtescu | -1/+1 | |
| 2018-11-16 | All Builder methods now take &mut self instead of &self | Denis Merigoux | -17/+17 | |
| 2018-11-16 | Finished moving backend-agnostic code to rustc_codegen_ssa | Denis Merigoux | -4/+5 | |
| 2018-11-16 | Generalized mir::codegen_mir (and all subsequent functions) | Denis Merigoux | -2/+50 | |
| 2018-11-16 | Transfered memcpy and memset to BuilderMethods | Denis Merigoux | -8/+8 | |
| 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 | -16/+16 | |
| 2018-11-16 | Prefixed const methods with "const" instead of "c" | Denis Merigoux | -1/+1 | |
| 2018-11-16 | Traitification of type_ methods | Denis Merigoux | -17/+17 | |
| 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 | Replaced Codegen field access by trait method | Denis Merigoux | -2/+2 | |
| 2018-11-16 | Traitification of common.rs methods | Denis Merigoux | -3/+2 | |
| 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 | -4/+4 | |
| 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 | -6/+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-16 | Reduced line length to pass tidy | Denis 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-16 | rustc_codegen_llvm: begin generalizing over backend values. | Irina Popa | -4/+14 | |
| 2018-11-11 | Auto merge of #54993 - TimNN:pda-tdl, r=eddyb | bors | -1/+9 | |
| Support for the program data address space option of LLVM's Target Datalayout This was introduced recently (specifically, for AVR, cc @dylanmckay). (I came up with this when attempting to run [avr-rust](https://github.com/avr-rust/rust) rebased on the latest [rust-lang](https://github.com/rust-lang/rust) commits. If this requires a different design, some additional discussions, or is not something to pursue right now, I'd be happy to close this PR). Note that this somewhat overlaps with @DiamondLovesYou's #51576, I think, although the implementation here is significantly simpler: Since the address space applies to _all_ program data, we can just check the pointee's type whenever we create an LLVM pointer type. If it is a function we use the program data address space; if not we use the default address space. cc @eddyb, who has been reviewing #51576 Ref: https://llvm.org/docs/LangRef.html#data-layout | ||||
| 2018-11-08 | Support for the program data address space option | Tim Neumann | -1/+9 | |
| of LLVM's Target Datalayout. https://llvm.org/docs/LangRef.html#data-layout | ||||
| 2018-11-04 | Support memcpy/memmove with differing src/dst alignment | Nikita Popov | -1/+2 | |
| If LLVM 7 is used, generate memcpy/memmove with differing src/dst alignment. I've added new FFI functions to construct these through the builder API, which is more convenient than dealing with differing intrinsic signatures depending on the LLVM version. | ||||
| 2018-11-01 | Add comments explaining how codegen works for `dyn Trait` methods | Michael Hewson | -0/+5 | |
| 2018-11-01 | Implement object-safety for arbitrary_self_types: part 2 | Michael Hewson | -13/+36 | |
| For now, all of the receivers that we care about are just a newtyped pointer — i.e. `Box<Self>`, `Rc<Self>`, `Pin<Box<Self>>`, `Pin<&mut Self>`. This is much simpler to implement in codeine than the more general case, because the ABI is the same as a pointer. So we add some checks in typeck/coherence/builtin.rs to make sure that implementors of CoerceSized are just newtyped pointers. In this commit, we also implement the codegen bits. | ||||
| 2018-10-24 | Move codegen_llvm::common::ty_fn_sig into rustc::ty::Instance. | Masaki Hara | -3/+2 | |
