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 4 pull requests #61588

Closed
wants to merge 11 commits into from
Closed

Conversation

Centril
Copy link
Contributor

@Centril Centril commented Jun 6, 2019

Successful merges:

Failed merges:

r? @ghost

pepyakin and others added 11 commits June 5, 2019 12:56
…hton

Update stdsimd

Ref rust-lang#61119,  for stabilization of wasm32 `unreachable`
Change visit api

r? @oli-obk

In the [first commit](rust-lang@37386d3) of this PR, I'm changing `visit_place` to be the function that traverses the `Place` and have only that responsibility. Then there are two other functions `visit_place_base` and `visit_projection` which are the ones in charge of visiting the base and the projection. Visitor implementors can implement any of those.

In the [second commit](rust-lang@e786f63) we can already see some things that confuses me, which I think this division will make more clear. The old code, first checked if the place was a base, did something with it and then called `super_place` [here](rust-lang@e786f63#diff-d583e4efe1a72516e274158e53223633L678). `super_place` checks again if it's a base [here](https://github.com/rust-lang/rust/blob/master/src/librustc/mir/visit.rs#L679-L684) and in case is a local, visits the local and stuff like that. That's not very obvious on the code, and if I'm not wrong it's not needed. In this PR or we have [this](rust-lang@e786f63#diff-d583e4efe1a72516e274158e53223633R673) as I did or we can just do `- => self.super_place_base(...)` and that will be obvious that I'm letting the default implementation process the base.
…=oli-obk

Make visitors iterate

r? @oli-obk

The second commit is not completely equivalent, unsure if the code is wrong or not. Tests pass though, otherwise we would need to iterate in the opposite direction as it happened in other parts of the code.
@Centril
Copy link
Contributor Author

Centril commented Jun 6, 2019

@bors r+ rollup=never p=4

@bors
Copy link
Contributor

bors commented Jun 6, 2019

📌 Commit a64640a has been approved by Centril

@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 Jun 6, 2019
@Centril
Copy link
Contributor Author

Centril commented Jun 6, 2019

@bors retry

@bors
Copy link
Contributor

bors commented Jun 6, 2019

⌛ Testing commit a64640a with merge 70de6e78a857c86081c09e2219e26eacf63e9ca4...

@rust-highfive
Copy link
Collaborator

The job dist-powerpc64-linux 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.
[00:25:54]    Compiling autocfg v0.1.4
[00:25:55] error[E0433]: failed to resolve: use of undeclared type or module `core`
[00:25:55]    --> src/libcore/../stdsimd/crates/core_arch/src/powerpc/altivec.rs:288:14
[00:25:55]     |
[00:25:55] 286 | / macro_rules! impl_neg {
[00:25:55] 287 | |     ($s: ident : $zero: expr) => {
[00:25:55] 288 | |         impl core::ops::Neg for s_t_l!($s) {
[00:25:55]     | |              ^^^^ use of undeclared type or module `core`
[00:25:55] 289 | |             type Output = s_t_l!($s);
[00:25:55] 295 | |     };
[00:25:55] 296 | | }
[00:25:55] 296 | | }
[00:25:55]     | |_- in this expansion of `impl_neg!`
[00:25:55] 297 | 
[00:25:55] 298 |   impl_neg! { i8x16 : 0 }
[00:25:55] 
[00:25:55] error[E0433]: failed to resolve: use of undeclared type or module `core`
[00:25:55]    --> src/libcore/../stdsimd/crates/core_arch/src/powerpc/altivec.rs:288:14
[00:25:55]     |
[00:25:55]     |
[00:25:55] 286 | / macro_rules! impl_neg {
[00:25:55] 287 | |     ($s: ident : $zero: expr) => {
[00:25:55] 288 | |         impl core::ops::Neg for s_t_l!($s) {
[00:25:55]     | |              ^^^^ use of undeclared type or module `core`
[00:25:55] 289 | |             type Output = s_t_l!($s);
[00:25:55] 295 | |     };
[00:25:55] 296 | | }
[00:25:55] 296 | | }
[00:25:55]     | |_- in this expansion of `impl_neg!`
[00:25:55] ...
[00:25:55] 299 |   impl_neg! { i16x8 : 0 }
[00:25:55] 
[00:25:55] error[E0433]: failed to resolve: use of undeclared type or module `core`
[00:25:55]    --> src/libcore/../stdsimd/crates/core_arch/src/powerpc/altivec.rs:288:14
[00:25:55]     |
[00:25:55]     |
[00:25:55] 286 | / macro_rules! impl_neg {
[00:25:55] 287 | |     ($s: ident : $zero: expr) => {
[00:25:55] 288 | |         impl core::ops::Neg for s_t_l!($s) {
[00:25:55]     | |              ^^^^ use of undeclared type or module `core`
[00:25:55] 289 | |             type Output = s_t_l!($s);
[00:25:55] 295 | |     };
[00:25:55] 296 | | }
[00:25:55] 296 | | }
[00:25:55]     | |_- in this expansion of `impl_neg!`
[00:25:55] ...
[00:25:55] 300 |   impl_neg! { i32x4 : 0 }
[00:25:55] 
[00:25:55] error[E0433]: failed to resolve: use of undeclared type or module `core`
[00:25:55]    --> src/libcore/../stdsimd/crates/core_arch/src/powerpc/altivec.rs:288:14
[00:25:55]     |
[00:25:55]     |
[00:25:55] 286 | / macro_rules! impl_neg {
[00:25:55] 287 | |     ($s: ident : $zero: expr) => {
[00:25:55] 288 | |         impl core::ops::Neg for s_t_l!($s) {
[00:25:55]     | |              ^^^^ use of undeclared type or module `core`
[00:25:55] 289 | |             type Output = s_t_l!($s);
[00:25:55] 295 | |     };
[00:25:55] 296 | | }
[00:25:55] 296 | | }
[00:25:55]     | |_- in this expansion of `impl_neg!`
[00:25:55] ...
[00:25:55] 301 |   impl_neg! { f32x4 : 0f32 }
[00:25:55] 
[00:25:56]    Compiling backtrace v0.3.29
[00:25:58] error: aborting due to 4 previous errors
[00:25:58] 
---
travis_time:end:22b23230:start=1559835830054356504,finish=1559835830061972603,duration=7616099
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:11f45d2f
$ 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:1326e9b8
travis_time:start:1326e9b8
$ 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:0bc15940
$ 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)

@Centril Centril closed this Jun 6, 2019
@Centril Centril deleted the rollup-ue87592 branch June 6, 2019 15:47
@Centril Centril added the rollup A PR which is a rollup label Oct 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

6 participants