- 03 10月, 2017 2 次提交
- 02 10月, 2017 11 次提交
-
-
由 steveklabnik 提交于
Fixes #44704
-
由 Ariel Ben-Yehuda 提交于
-
由 bors 提交于
code suggestions for unused-mut, while-true, deprecated-attribute, and unused-parens lints ![lint_suggestions](https://user-images.githubusercontent.com/1076988/31044068-b2074de8-a57c-11e7-9319-6668508b6d1f.png) r? @estebank
-
由 Zack M. Davis 提交于
-
由 bors 提交于
Resolves #36284 - vec.rs documentation Removed comments associated with `[into_vec]` being equivalent to `[shrink_to_fit]` as requested.
-
由 bors 提交于
Fix typo: geneartor -> generator
-
由 Ariel Ben-Yehuda 提交于
-
由 bors 提交于
Mir pretty print: Add cleanup comment I found it useful to add a comment indicating whether or not a BasicBlock is a cleanup block or not. Hopefully you'll find it useful too.
-
由 bors 提交于
Docs for size_of::<#[repr(C)]> items. Most of this info comes from camlorn's blog post on optimizing struct layout and the Rustonomicon. I don't really like my wording in the first paragraph. I also cannot find a definition of what `#[repr(C)]` does for enums that have variants with fields. They're allowed, unlike `#[repr(C)] enum`s with no variants.
-
由 Sean Prashad 提交于
-
- 01 10月, 2017 10 次提交
-
-
由 Ariel Ben-Yehuda 提交于
Fixes #44952.
-
由 Thomas Jespersen 提交于
-
由 bors 提交于
Do not require semantic types for all syntactic types when there are errors Fixes https://github.com/rust-lang/rust/issues/44814 Fixes https://github.com/rust-lang/rust/issues/44858 Fixes https://github.com/rust-lang/rust/issues/44946 r? @nikomatsakis
-
由 bors 提交于
Fix native main() signature on 64bit Hello, in LLVM-IR produced by rustc on x86_64-linux-gnu, the native main() function had incorrect types for the function result and argc parameter: i64, while it should be i32 (really c_int). See also #20064, #29633. So I've attempted a fix here. I tested it by checking the LLVM IR produced with --target x86_64-unknown-linux-gnu and i686-unknown-linux-gnu. Also I tried running the tests (`./x.py test`), however I'm getting two failures with and without the patch, which I'm guessing is unrelated.
-
由 bors 提交于
Update the libcompiler_builtins submodule Pulls in the latest changes from libcompiler_builtins. It should work, but it would be best if this wouldn't get put into a rollup so that bisecting is possible if there is a regression. r? @alexcrichton
-
由 Daniel Klauer 提交于
-
由 bors 提交于
Docs: Add trace_macros! to unstable book As TIL'd at Rustfest :) Note: This is unfortunately untested, since I'm on my laptop battery, and compiling LLVM would probably eat at least 50% of it on my dual core CPU. (Is there a way to build docs without compiling LLVM?)
-
由 Zack M. Davis 提交于
-
由 Zack M. Davis 提交于
Resolves #42892.
-
由 Zack M. Davis 提交于
Also, fix the deprecation message for the late no-debug feature.
-
- 30 9月, 2017 17 次提交
-
-
由 bors 提交于
rustc: Enable LTO and multiple codegen units This commit is a refactoring of the LTO backend in Rust to support compilations with multiple codegen units. The immediate result of this PR is to remove the artificial error emitted by rustc about `-C lto -C codegen-units-8`, but longer term this is intended to lay the groundwork for LTO with incremental compilation and ultimately be the underpinning of ThinLTO support. The problem here that needed solving is that when rustc is producing multiple codegen units in one compilation LTO needs to merge them all together. Previously only upstream dependencies were merged and it was inherently relied on that there was only one local codegen unit. Supporting this involved refactoring the optimization backend architecture for rustc, namely splitting the `optimize_and_codegen` function into `optimize` and `codegen`. After an LLVM module has been optimized it may be blocked and queued up for LTO, and only after LTO are modules code generated. Non-LTO compilations should look the same as they do today backend-wise, we'll spin up a thread for each codegen unit and optimize/codegen in that thread. LTO compilations will, however, send the LLVM module back to the coordinator thread once optimizations have finished. When all LLVM modules have finished optimizing the coordinator will invoke the LTO backend, producing a further list of LLVM modules. Currently this is always a list of one LLVM module. The coordinator then spawns further work to run LTO and code generation passes over each module. In the course of this refactoring a number of other pieces were refactored: * Management of the bytecode encoding in rlibs was centralized into one module instead of being scattered across LTO and linking. * Some internal refactorings on the link stage of the compiler was done to work directly from `CompiledModule` structures instead of lists of paths. * The trans time-graph output was tweaked a little to include a name on each bar and inflate the size of the bars a little
-
由 petrochenkov 提交于
-
由 Daniel Klauer 提交于
Fix regression from c2fe69b9, where main() signature was changed from using 16bit isize to 32bit c_int for argc parameter/result.
-
由 Daniel Klauer 提交于
(all i32 for now, as in liblibc)
-
由 Danilo Bargen 提交于
-
由 bors 提交于
Rollup of 15 pull requests - Successful merges: #44124, #44287, #44320, #44694, #44708, #44794, #44797, #44824, #44836, #44840, #44845, #44854, #44889, #44900, #44903 - Failed merges:
-
由 Alex Crichton 提交于
This commit is a refactoring of the LTO backend in Rust to support compilations with multiple codegen units. The immediate result of this PR is to remove the artificial error emitted by rustc about `-C lto -C codegen-units-8`, but longer term this is intended to lay the groundwork for LTO with incremental compilation and ultimately be the underpinning of ThinLTO support. The problem here that needed solving is that when rustc is producing multiple codegen units in one compilation LTO needs to merge them all together. Previously only upstream dependencies were merged and it was inherently relied on that there was only one local codegen unit. Supporting this involved refactoring the optimization backend architecture for rustc, namely splitting the `optimize_and_codegen` function into `optimize` and `codegen`. After an LLVM module has been optimized it may be blocked and queued up for LTO, and only after LTO are modules code generated. Non-LTO compilations should look the same as they do today backend-wise, we'll spin up a thread for each codegen unit and optimize/codegen in that thread. LTO compilations will, however, send the LLVM module back to the coordinator thread once optimizations have finished. When all LLVM modules have finished optimizing the coordinator will invoke the LTO backend, producing a further list of LLVM modules. Currently this is always a list of one LLVM module. The coordinator then spawns further work to run LTO and code generation passes over each module. In the course of this refactoring a number of other pieces were refactored: * Management of the bytecode encoding in rlibs was centralized into one module instead of being scattered across LTO and linking. * Some internal refactorings on the link stage of the compiler was done to work directly from `CompiledModule` structures instead of lists of paths. * The trans time-graph output was tweaked a little to include a name on each bar and inflate the size of the bars a little
-
由 bors 提交于
Remove new and index methods already implement for Idx These are the rest of the repeated implementations for new and index methods. Follow up of https://github.com/rust-lang/rust/pull/44889
-
由 Zack M. Davis 提交于
`CodeSuggestion` doesn't live in the `diagnostic` module.
-
由 Mark Simulacrum 提交于
ci: Fix building disabled containers * Change the context into the disabled directory. Now you can test containers which are disabled.
-
由 Mark Simulacrum 提交于
Normalize spaces in lang attributes. So, like, I grepped for all `lang` attributes for *reasons* and I noticed that they all share the same spacing of `#[lang = "item_name"]` except these five instances. So I decided to fix that. So enjoy this PR of exactly ten spaces.
-
由 Mark Simulacrum 提交于
Remove DepNodeIndex::new is already impl for Idx
-
由 Mark Simulacrum 提交于
docs improvement sync::atomic::Atomic* Addresses the `Atomic*` part of #29377. r? @steveklabnik
-
由 Mark Simulacrum 提交于
Move src/librustc_mir/transform/nll.rs to a subdirectory CC https://github.com/rust-lang/rust/issues/43234
-
由 Mark Simulacrum 提交于
Improve wording for StepBy No other iterator makes the distinction between an iterator and an iterator adapter in its summary line, so change it to be consistent with all other adapters.
-
由 Mark Simulacrum 提交于
Add missing links in fmt module r? @rust-lang/docs
-
由 Mark Simulacrum 提交于
Backport libs stabilizations to 1.21 beta Includes the following stabilizations: - tcpstream_connect_timeout https://github.com/rust-lang/rust/pull/44563 - iterator_for_each https://github.com/rust-lang/rust/pull/44567 - ord_max_min https://github.com/rust-lang/rust/pull/44593 - compiler_fences https://github.com/rust-lang/rust/pull/44595 - needs_drop https://github.com/rust-lang/rust/pull/44639 - vec_splice https://github.com/rust-lang/rust/pull/44640 These have been backported in https://github.com/rust-lang/rust/pull/44823.
-