Skip to content
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 7 pull requests #59397

Merged
merged 16 commits into from
Mar 24, 2019
Merged

Rollup of 7 pull requests #59397

merged 16 commits into from
Mar 24, 2019

Conversation

kennytm
Copy link
Member

@kennytm kennytm commented Mar 24, 2019

Successful merges:

koalatux and others added 11 commits February 16, 2019 22:34
The pause instruction requires SSE2 but was being unconditionally used
on targets without it, resulting in undefined behavior.

This PR fixes that by only using the pause intrinsic if SSE2 is available.

It also removes the inline assembly which was not required since these
instructions are available in core::arch, and extends support of
the spin_loop hint to arm targets with the v6 feature which also
support the yield instruction.

Closes rust-lang#59237 .
Since commit 9452a8d, the new debug info format is only generated
for LLVM 8 and newer versions. However, the tests still assume that LLVM
7 will use the new debug info format. Fix the tests (and a comment in
the code) to match the actual version check.
Track changes to robots.txt

Currently `robots.txt` of doc.rust-lang.org is not part of any repo, so there's [no way to contribute any changes to it](https://internals.rust-lang.org/t/deadlock-about-fixing-outdated-documentation-links-in-search-engines/9374), such as needed for rust-lang#44894 and countless dupes of this issue.

I propose adding it to this repo. I'm not in control of the infrastructure, so I can't help to automate deployment of it, but even just having the file under source control is IMHO a step forward.
Remove inline assembly from hint::spin_loop

This PR removes the inline assembly which was not required since these
instructions are available in core::arch, and extends support of
the spin_loop hint to arm targets with the v6 feature which also
support the yield instruction.
@kennytm
Copy link
Member Author

kennytm commented Mar 24, 2019

@bors r+ p=9

@bors
Copy link
Contributor

bors commented Mar 24, 2019

📌 Commit 311b756e21bf554ec9f9cedb2d4b6fcc11f97dad has been approved by kennytm

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Mar 24, 2019
@bors
Copy link
Contributor

bors commented Mar 24, 2019

⌛ Testing commit 311b756e21bf554ec9f9cedb2d4b6fcc11f97dad with merge 7209464e032c2e1d73a89bf68b4acf3bbdf934d4...

@bors
Copy link
Contributor

bors commented Mar 24, 2019

💔 Test failed - checks-travis

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 24, 2019
@rust-highfive
Copy link
Collaborator

The job test-various of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[01:10:05] test [ui] ui/imports/extern-prelude-extern-crate-restricted-shadowing.rs ... ok
[01:10:05] test [ui] ui/imports/extern-prelude-extern-crate-pass.rs ... ok
[01:10:05] test [ui] ui/imports/extern-prelude-extern-crate-shadowing.rs ... ok
[01:10:05] test [ui] ui/imports/glob-shadowing.rs ... ok
[01:10:05] test [ui] ui/imports/gensymed.rs ... ok
[01:10:05] test [ui] ui/imports/glob-conflict-cross-crate.rs ... ok
[01:10:05] test [ui] ui/imports/import-loop-2.rs ... ok
[01:10:05] test [ui] ui/imports/import-glob-0.rs ... ok
[01:10:05] test [ui] ui/imports/import-glob-circular.rs ... ok
---
[01:12:17] failures:
[01:12:17] 
[01:12:17] ---- [ui] ui/issues/issue-23458.rs stdout ----
[01:12:17] 
[01:12:17] error: Error: expected failure status (Some(1)) but received status Some(101).
[01:12:17] status: exit code: 101
[01:12:17] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/issues/issue-23458.rs" "-Zthreads=1" "--target=wasm32-unknown-unknown" "--error-format" "json" "-Zui-testing" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-23458/a.wasm" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/wasm32-unknown-unknown/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-23458/auxiliary" "-A" "unused"
[01:12:17] ------------------------------------------
[01:12:17] 
[01:12:17] ------------------------------------------
[01:12:17] stderr:
[01:12:17] stderr:
[01:12:17] ------------------------------------------
[01:12:17] LLVM ERROR: Invalid $ operand number in inline asm string: 'int $3'
[01:12:17] ------------------------------------------
[01:12:17] 
[01:12:17] thread '[ui] ui/issues/issue-23458.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3369:9
[01:12:17] note: Run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
---
[01:12:17] 
[01:12:17] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:496:22
[01:12:17] 
[01:12:17] 
[01:12:17] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/compiletest" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/wasm32-unknown-unknown/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "--src-base" "/checkout/src/test/ui" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui" "--stage-id" "stage2-wasm32-unknown-unknown" "--mode" "ui" "--target" "wasm32-unknown-unknown" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/build/bin/FileCheck" "--nodejs" "/node-v9.2.0-linux-x64/bin/node" "--host-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--target-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/wasm32-unknown-unknown/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--llvm-version" "8.0.0-rust-1.35.0-dev\n" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
[01:12:17] 
[01:12:17] 
[01:12:17] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test --target wasm32-unknown-unknown src/test/run-make src/test/ui src/test/run-pass src/test/compile-fail src/test/mir-opt src/test/codegen-units src/libcore
[01:12:17] Build completed unsuccessfully in 1:03:25
---
travis_time:end:06c0f332:start=1553422789228117956,finish=1553422789237062399,duration=8944443
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:01d3cf33
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:1464fa59
travis_time:start:1464fa59
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:1c68031a
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

kennytm added 4 commits March 24, 2019 18:59
…chenkov

Use a valid name for graphviz graphs

Hiridification has broken graphviz output because `HirId` has a more complex display implemetation than `NodeId`. Since the id was just used to generate a distinct identifier, we just pull out the various constituent indexed.
Do not encode gensymed imports in metadata

(Unless they are underscore `_` imports which are re-gensymed on crate loading, see rust-lang#56392.)

We cannot encode gensymed imports properly in metadata and if we encode them improperly, we can get erroneous name conflicts downstream.
Gensymed imports are produced by the compiler, so we control their set, and can be sure that none of them needs being encoded for use from other crates.

A workaround that fixes rust-lang#59243.
Implement specialized nth_back() for Box and Windows.

Hi there, this is my first pull request to rust :-)

I started implementing some specializations for DoubleEndedIterator::nth_back() and these are the first two. The problem has been discussed in rust-lang#54054 and nth_back() is tracked in rust-lang#56995.

I'm stuck with the next implementation so I though I do a PR for the ones I'm confident with to get some feedback.
…trochenkov

Fix ICE with const generic param in struct

Fixes rust-lang#59340.

r? @petrochenkov
@kennytm kennytm changed the title Rollup of 9 pull requests Rollup of 8 pull requests Mar 24, 2019
@kennytm
Copy link
Member Author

kennytm commented Mar 24, 2019

@bors r+

Removed #59242 (causing failure above)

@bors
Copy link
Contributor

bors commented Mar 24, 2019

📌 Commit 109a0cf6591c7ff8c9e213f4bb8b0d883fd60931 has been approved by kennytm

@bors bors removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 24, 2019
@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Mar 24, 2019
@bors
Copy link
Contributor

bors commented Mar 24, 2019

⌛ Testing commit 109a0cf6591c7ff8c9e213f4bb8b0d883fd60931 with merge 0b1bc91ee6258648220e84a2f03cb88d6ab3c9a5...

@bors
Copy link
Contributor

bors commented Mar 24, 2019

💔 Test failed - checks-travis

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 24, 2019
@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-tools of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[01:26:58] 
[01:26:58] doc tests for: /checkout/src/doc/reference/src/abi.md
[01:26:58] 
[01:26:58] running 3 tests
[01:26:58] test /checkout/src/doc/reference/src/abi.md - Application_Binary_Interface__ABI_::The_ (line 71) ... ignored
[01:26:58] test /checkout/src/doc/reference/src/abi.md - Application_Binary_Interface__ABI_::The_ (line 83) ... ignored
[01:26:59] test /checkout/src/doc/reference/src/abi.md - Application_Binary_Interface__ABI_::The_ (line 19) ... ok
[01:26:59] test result: ok. 1 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out
[01:26:59] 
[01:26:59] doc tests for: /checkout/src/doc/reference/src/attributes/codegen.md
[01:26:59] 
---
[01:27:15] 
[01:27:15] doc tests for: /checkout/src/doc/reference/src/items/external-blocks.md
[01:27:16] 
[01:27:16] running 4 tests
[01:27:16] test /checkout/src/doc/reference/src/items/external-blocks.md - External_blocks::ABI (line 60) ... ignored
[01:27:16] test /checkout/src/doc/reference/src/items/external-blocks.md - External_blocks::Attributes_on_extern_blocks::The_ (line 124) ... ignored
[01:27:16] test /checkout/src/doc/reference/src/items/external-blocks.md - External_blocks::Attributes_on_extern_blocks::The_ (line 147) ... ignored
[01:27:16] test /checkout/src/doc/reference/src/items/external-blocks.md - External_blocks::Variadic_functions (line 100) ... ignored
[01:27:16] test result: ok. 0 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out
[01:27:16] 
[01:27:16] doc tests for: /checkout/src/doc/reference/src/items/functions.md
[01:27:16] 
---
[01:27:22] 
[01:27:22] doc tests for: /checkout/src/doc/reference/src/macro-ambiguity.md
[01:27:22] 
[01:27:22] running 1 test
[01:27:22] test /checkout/src/doc/reference/src/macro-ambiguity.md - Appendix__Macro_Follow_Set_Ambiguity_Formal_Specification::Definitions_ (line 43) ... ok
[01:27:22] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[01:27:22] 
[01:27:22] doc tests for: /checkout/src/doc/reference/src/macros-by-example.md
[01:27:22] 
[01:27:22] 
[01:27:22] running 14 tests
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Hygiene (line 358) ... ignored
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing (line 202) ... ignored
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Hygiene (line 423) ... ok
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing::Textual_Scope (line 223) ... ignored
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing::Path_Based_Scope (line 330) ... ok
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Hygiene (line 400) ... ok
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Hygiene (line 383) ... ok
[01:27:22] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing::The_ (line 313) ... ignored
[01:27:23] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing::Textual_Scope (line 274) ... ok
[01:27:23] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing::Textual_Scope (line 246) ... ok
[01:27:23] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Transcribing (line 63) ... ok
[01:27:23] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Transcribing (line 102) ... ok
[01:27:23] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Scoping__Exporting__and_Importing::The_ (line 293) ... ok
[01:27:23] test /checkout/src/doc/reference/src/macros-by-example.md - Macros_By_Example::Transcribing (line 86) ... ok
[01:27:23] test result: ok. 10 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out
[01:27:23] 
[01:27:23] doc tests for: /checkout/src/doc/reference/src/macros.md
[01:27:23] 
---
[01:48:39] Verifying status of miri...
[01:48:39] Verifying status of embedded-book...
[01:48:39] This PR updated 'src/doc/embedded-book', verifying if status is 'test-pass'...
[01:48:39] 
[01:48:39] ⚠️ We detected that this PR updated 'embedded-book', but its tests failed.
[01:48:39] 
[01:48:39] If you do intend to update 'embedded-book', please check the error messages above and
[01:48:39] commit another update.
[01:48:39] 
[01:48:39] If you do NOT intend to update 'embedded-book', please ensure you did not accidentally
[01:48:39] change the submodule at 'src/doc/embedded-book'. You may ask your reviewer for the
[01:48:39] proper steps.
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 3.
travis_time:start:125ec0fb
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Sun Mar 24 14:25:05 UTC 2019
---
travis_time:end:0dcc41de:start=1553437507824594143,finish=1553437507841116268,duration=16522125
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:0211b3db
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:0eb9e200
travis_time:start:0eb9e200
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:261ea9d8
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@kennytm kennytm mentioned this pull request Mar 24, 2019
Correct minimum system LLVM version in tests

Since commit 9452a8d, the new debug info format is only generated
for LLVM 8 and newer versions. However, the tests still assume that LLVM
7 will use the new debug info format. Fix the tests (and a comment in
the code) to match the actual version check.
@kennytm kennytm changed the title Rollup of 8 pull requests Rollup of 7 pull requests Mar 24, 2019
@kennytm
Copy link
Member Author

kennytm commented Mar 24, 2019

@bors r+

Removed #59366 (causing failing above)

@bors
Copy link
Contributor

bors commented Mar 24, 2019

📌 Commit 00478a0 has been approved by kennytm

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 24, 2019
@bors
Copy link
Contributor

bors commented Mar 24, 2019

⌛ Testing commit 00478a0 with merge 0576ac1...

bors added a commit that referenced this pull request Mar 24, 2019
Rollup of 7 pull requests

Successful merges:

 - #59213 (Track changes to robots.txt)
 - #59239 (Remove inline assembly from hint::spin_loop)
 - #59251 (Use a valid name for graphviz graphs)
 - #59296 (Do not encode gensymed imports in metadata)
 - #59328 (Implement specialized nth_back() for Box and Windows.)
 - #59355 (Fix ICE with const generic param in struct)
 - #59377 (Correct minimum system LLVM version in tests)
@bors
Copy link
Contributor

bors commented Mar 24, 2019

☀️ Test successful - checks-travis, status-appveyor
Approved by: kennytm
Pushing 0576ac1 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Mar 24, 2019
@bors bors merged commit 00478a0 into rust-lang:master Mar 24, 2019
@Centril Centril added the rollup A PR which is a rollup label Oct 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.