- 23 8月, 2018 1 次提交
-
-
由 Igor Gutorov 提交于
-
- 22 8月, 2018 1 次提交
-
-
由 Ralf Jung 提交于
* Value gets renamed to Operand, so that now interpret::{Place, Operand} are the "dynamic" versions of mir::{Place, Operand}. * Operand and Place share the data for their "stuff is in memory"-base in a new type, MemPlace. This also makes it possible to give some more precise types in other areas. Both Operand and MemPlace have methods available to project into fields (and other kinds of projections) without causing further allocations. * The type for "a Scalar or a ScalarPair" is called Value, and again used to give some more precise types. * All of these have versions with an attached layout, so that we can more often drag the layout along instead of recomputing it. This lets us get rid of `PlaceExtra::Downcast`. MPlaceTy and PlaceTy can only be constructed in place.rs, making sure the layout is handled properly. (The same should eventually be done for ValTy and OpTy.) * All the high-level functions to write typed memory take a Place, and live in place.rs. All the high-level typed functions to read typed memory take an Operand, and live in operands.rs.
-
- 05 8月, 2018 3 次提交
- 27 7月, 2018 1 次提交
-
-
由 Shotaro Yamada 提交于
-
- 25 7月, 2018 1 次提交
-
-
由 Niko Matsakis 提交于
-
- 23 7月, 2018 1 次提交
-
-
由 ljedrz 提交于
-
- 21 7月, 2018 1 次提交
-
-
由 Tyler Mandry 提交于
-
- 12 7月, 2018 2 次提交
-
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
-
- 11 7月, 2018 1 次提交
-
-
由 Alex Crichton 提交于
This commit upgrades the main LLVM submodule to LLVM's current master branch. The LLD submodule is updated in tandem as well as compiler-builtins. Along the way support was also added for LLVM 7's new features. This primarily includes the support for custom section concatenation natively in LLD so we now add wasm custom sections in LLVM IR rather than having custom support in rustc itself for doing so. Some other miscellaneous changes are: * We now pass `--gc-sections` to `wasm-ld` * The optimization level is now passed to `wasm-ld` * A `--stack-first` option is passed to LLD to have stack overflow always cause a trap instead of corrupting static data * The wasm target for LLVM switched to `wasm32-unknown-unknown`. * The syntax for aligned pointers has changed in LLVM IR and tests are updated to reflect this. * The `thumbv6m-none-eabi` target is disabled due to an [LLVM bug][llbug] Nowadays we've been mostly only upgrading whenever there's a major release of LLVM but enough changes have been happening on the wasm target that there's been growing motivation for quite some time now to upgrade out version of LLD. To upgrade LLD, however, we need to upgrade LLVM to avoid needing to build yet another version of LLVM on the builders. The revision of LLVM in use here is arbitrarily chosen. We will likely need to continue to update it over time if and when we discover bugs. Once LLVM 7 is fully released we can switch to that channel as well. [llbug]: https://bugs.llvm.org/show_bug.cgi?id=37382
-
- 02 7月, 2018 1 次提交
-
-
由 Niko Matsakis 提交于
This new query returns only the predicates *directly defined* on an item (in contrast to the more common `predicates_of`, which returns the predicates that must be proven to reference an item). These two sets are almost always identical except for traits, where `predicates_of` includes an artificial `Self: Trait<...>` predicate (basically saying that you cannot use a trait item without proving that the trait is implemented for the type parameters). This new query is only used in chalk lowering, where this artificial `Self: Trait` predicate is problematic. We encode it in metadata but only where needed since it is kind of repetitive with existing information. Co-authored-by: NTyler Mandry <tmandry@gmail.com>
-
- 28 6月, 2018 1 次提交
-
-
由 Oliver Schneider 提交于
-
- 26 6月, 2018 4 次提交
-
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
-
- 14 6月, 2018 1 次提交
-
-
由 Eduard-Mihai Burtescu 提交于
-
- 10 6月, 2018 1 次提交
-
-
由 toidiu 提交于
-
- 17 5月, 2018 1 次提交
-
-
由 Irina Popa 提交于
-
- 11 5月, 2018 3 次提交
-
-
由 Isaac Whitfield 提交于
-
由 John Kåre Alsaker 提交于
-
由 John Kåre Alsaker 提交于
-
- 10 5月, 2018 1 次提交
-
-
由 Isaac Whitfield 提交于
-
- 09 5月, 2018 1 次提交
-
-
由 Nicholas Nethercote 提交于
This avoids a decent number of allocations, enough to speed up incremental runs of many rustc-benchmarks, the best by 2%.
-
- 08 5月, 2018 1 次提交
-
-
由 Wesley Wiser 提交于
Fixes #50501
-
- 27 4月, 2018 1 次提交
-
-
由 Aravind Gollakota 提交于
-
- 25 4月, 2018 3 次提交
-
-
由 John Kåre Alsaker 提交于
-
由 John Kåre Alsaker 提交于
-
由 John Kåre Alsaker 提交于
-
- 24 4月, 2018 1 次提交
-
-
由 Niko Matsakis 提交于
This computes the transitive closure of traits that appear in the environment and then appends their clauses. It needs some work, but it's in the right direction.
-
- 20 4月, 2018 1 次提交
-
-
由 Wesley Wiser 提交于
Fixes #49690
-
- 13 4月, 2018 1 次提交
-
-
由 toidiu 提交于
Implement inferring outlives requirements for references, structs, enum, union, and projection types. added a feature gate and tests for these scenarios.
-
- 10 4月, 2018 1 次提交
-
-
由 John Kåre Alsaker 提交于
-
- 06 4月, 2018 3 次提交
-
-
由 Michael Woerister 提交于
-
由 Michael Woerister 提交于
-
由 Michael Woerister 提交于
-
- 29 3月, 2018 1 次提交
-
-
由 Chris Manchester 提交于
resolving it as a dependency. Fixes #46816
-
- 23 3月, 2018 1 次提交
-
-
由 Simon Sapin 提交于
In addition to the `Fn*` family of traits, closures now implement `Copy` (and similarly `Clone`) if all of the captures do.
-