-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 6 pull requests #63094
Rollup of 6 pull requests #63094
Commits on Jul 25, 2019
-
rustc: Update wasm32 support for LLVM 9
This commit brings in a number of minor updates for rustc's support for the wasm target which has changed in the LLVM 9 update. Notable updates include: * The compiler now no longer manually inserts the `producers` section, instead relying on LLVM to do so. LLVM uses the `llvm.ident` metadata for the `processed-by` directive (which is now emitted on the wasm target in this PR) and it uses debuginfo to figure out what `language` to put in the `producers` section. * Threaded WebAssembly code now requires different flags to be passed with LLD. In LLD we now pass: * `--shared-memory` - required since objects are compiled with atomics. This also means that the generated memory will be marked as `shared`. * `--max-memory=1GB` - required with the `--shared-memory` argument since shared memories in WebAssembly must have a maximum size. The 1GB number is intended to be a conservative estimate for rustc, but it should be overridable with `-C link-arg` if necessary. * `--passive-segments` - this has become the default for multithreaded memory, but when compiling a threaded module all data segments need to be marked as passive to ensure they don't re-initialize memory for each thread. This will also cause LLD to emit a synthetic function to initialize memory which users will have to arrange to call. * The `__heap_base` and `__data_end` globals are explicitly exported since they're now hidden by default due to the `--export` flags we pass to LLD.
Configuration menu - View commit details
-
Copy full SHA for a120caf - Browse repository at this point
Copy the full SHA a120cafView commit details -
std: Use native
#[thread_local]
TLS on wasmThis commit moves `thread_local!` on WebAssembly targets to using the `#[thread_local]` attribute in LLVM. This was recently implemented upstream and is [in the process of being documented][dox]. This change only takes affect if modules are compiled with `+atomics` which is currently unstable and a pretty esoteric method of compiling wasm artifacts. This "new power" of the wasm toolchain means that the old `wasm-bindgen-threads` feature of the standard library can be removed since it should now be possible to create a fully functioning threaded wasm module without intrusively dealing with libstd symbols or intrinsics. Yay! [dox]: WebAssembly/tool-conventions#116
Configuration menu - View commit details
-
Copy full SHA for dc50a63 - Browse repository at this point
Copy the full SHA dc50a63View commit details
Commits on Jul 27, 2019
-
Configuration menu - View commit details
-
Copy full SHA for a6d6eea - Browse repository at this point
Copy the full SHA a6d6eeaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5b82289 - Browse repository at this point
Copy the full SHA 5b82289View commit details -
This extracts the core visiting logic
Configuration menu - View commit details
-
Copy full SHA for 5ff0856 - Browse repository at this point
Copy the full SHA 5ff0856View commit details
Commits on Jul 28, 2019
-
miri: add get and get_mut to AllocMap; use that in get_size_and_align…
… and avoid rightwards drift
Configuration menu - View commit details
-
Copy full SHA for 828e7b6 - Browse repository at this point
Copy the full SHA 828e7b6View commit details -
cleanup: Remove some language features related to built-in macros
They are now library features.
Configuration menu - View commit details
-
Copy full SHA for b92697b - Browse repository at this point
Copy the full SHA b92697bView commit details -
Configuration menu - View commit details
-
Copy full SHA for c119291 - Browse repository at this point
Copy the full SHA c119291View commit details -
bypass x86stdcall.rs for vxworks
ignore wait-forked-but-failed-child.rs as there is no command 'ps' on vxWorks ignore process-sigpipe.rs as there is no 'sh' on vxWorks ignore core-run-destroy.rs as there is no 'cat' and 'sleep' on vxWorks
Configuration menu - View commit details
-
Copy full SHA for 173cbf1 - Browse repository at this point
Copy the full SHA 173cbf1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e602f1 - Browse repository at this point
Copy the full SHA 0e602f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a49dd0 - Browse repository at this point
Copy the full SHA 2a49dd0View commit details
Commits on Jul 29, 2019
-
Rollup merge of rust-lang#62809 - alexcrichton:wasm-llvm-9, r=nikic
rustc: Update wasm32 support for LLVM 9 This commit brings in a number of minor updates for rustc's support for the wasm target which has changed in the LLVM 9 update. Notable updates include: * The compiler now no longer manually inserts the `producers` section, instead relying on LLVM to do so. LLVM uses the `llvm.ident` metadata for the `processed-by` directive (which is now emitted on the wasm target in this PR) and it uses debuginfo to figure out what `language` to put in the `producers` section. * Threaded WebAssembly code now requires different flags to be passed with LLD. In LLD we now pass: * `--shared-memory` - required since objects are compiled with atomics. This also means that the generated memory will be marked as `shared`. * `--max-memory=1GB` - required with the `--shared-memory` argument since shared memories in WebAssembly must have a maximum size. The 1GB number is intended to be a conservative estimate for rustc, but it should be overridable with `-C link-arg` if necessary. * `--passive-segments` - this has become the default for multithreaded memory, but when compiling a threaded module all data segments need to be marked as passive to ensure they don't re-initialize memory for each thread. This will also cause LLD to emit a synthetic function to initialize memory which users will have to arrange to call. * The `__heap_base` and `__data_end` globals are explicitly exported since they're now hidden by default due to the `--export` flags we pass to LLD.
Configuration menu - View commit details
-
Copy full SHA for 778b631 - Browse repository at this point
Copy the full SHA 778b631View commit details -
Rollup merge of rust-lang#63055 - Mark-Simulacrum:save-analysis-clean…
…-2, r=Xanewok Various cleanups to save analysis
Configuration menu - View commit details
-
Copy full SHA for b52a95d - Browse repository at this point
Copy the full SHA b52a95dView commit details -
Rollup merge of rust-lang#63076 - RalfJung:miri-fn-ptr-alloc-size, r=…
…oli-obk Miri: fix determining size of an "extra function" allocation Fixes [a bug](rust-lang/miri#862) introduced by rust-lang#62982. Best reviewed commit-by-commit. r? @oli-obk
Configuration menu - View commit details
-
Copy full SHA for 5922a19 - Browse repository at this point
Copy the full SHA 5922a19View commit details -
Rollup merge of rust-lang#63077 - petrochenkov:nolangfeat, r=petroche…
…nkov cleanup: Remove some language features related to built-in macros They are now library features. Cleanup after rust-lang#62086. The unstable book files are moved because tidy complained.
Configuration menu - View commit details
-
Copy full SHA for 7f2c3e1 - Browse repository at this point
Copy the full SHA 7f2c3e1View commit details -
Rollup merge of rust-lang#63086 - BaoshanPang:testcases, r=nagisa
Ignore test cases that are not supported by vxWorks bypass x86stdcall.rs for vxworks ignore wait-forked-but-failed-child.rs as there is no command 'ps' on vxWorks ignore process-sigpipe.rs as there is no 'sh' on vxWorks ignore core-run-destroy.rs as there is no 'cat' and 'sleep' on vxWorks
Configuration menu - View commit details
-
Copy full SHA for f6f2142 - Browse repository at this point
Copy the full SHA f6f2142View commit details -
Rollup merge of rust-lang#63092 - Centril:update-impl-trait-gates, r=…
…varkor Update `impl Trait` gate issues cc rust-lang#63065 cc rust-lang#63063 r? @varkor cc @alexreg
Configuration menu - View commit details
-
Copy full SHA for f8321d0 - Browse repository at this point
Copy the full SHA f8321d0View commit details