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

Move back::link and debuginfo::type_names to cg ssa #59564

Merged
merged 8 commits into from Apr 20, 2019

Conversation

bjorn3
Copy link
Member

@bjorn3 bjorn3 commented Mar 30, 2019

r? @eddyb

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 30, 2019
@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-6.0 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.
travis_time:end:07facccc:start=1553957578027087069,finish=1553957580173954438,duration=2146867369
$ git checkout -qf FETCH_HEAD
travis_fold:end:git.checkout

Encrypted environment variables have been removed for security reasons.
See https://docs.travis-ci.com/user/pull-requests/#pull-requests-and-security-restrictions
$ export SCCACHE_BUCKET=rust-lang-ci-sccache2
$ export SCCACHE_REGION=us-west-1
$ export GCP_CACHE_BUCKET=rust-lang-ci-cache
Setting environment variables from .travis.yml
---

[00:03:41] travis_fold:start:tidy
travis_time:start:tidy
tidy check
[00:03:42] tidy error: /checkout/src/librustc_codegen_ssa/back/link.rs:149: line longer than 100 chars
[00:03:42] tidy error: /checkout/src/librustc_codegen_ssa/back/archive.rs:36: line longer than 100 chars
[00:03:43] some tidy checks failed
[00:03:43] 
[00:03:43] 
[00:03:43] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "--no-vendor" "--quiet"
[00:03:43] 
[00:03:43] 
[00:03:43] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
[00:03:43] Build completed unsuccessfully in 0:00:45
[00:03:43] Build completed unsuccessfully in 0:00:45
[00:03:43] make: *** [tidy] Error 1
[00:03:43] Makefile:67: recipe for target 'tidy' failed
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:001ae938
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Sat Mar 30 14:56:53 UTC 2019
---
travis_time:end:1dd25da8:start=1553957814597962515,finish=1553957814602865996,duration=4903481
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:20805a53
$ 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:0044f3a0
travis_time:start:0044f3a0
$ 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:0b253a36
$ 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)

@jonas-schievink jonas-schievink added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Apr 1, 2019
@bors
Copy link
Contributor

bors commented Apr 1, 2019

☔ The latest upstream changes (presumably #59606) made this pull request unmergeable. Please resolve the merge conflicts.

@bjorn3
Copy link
Member Author

bjorn3 commented Apr 2, 2019

Rebased

@bors
Copy link
Contributor

bors commented Apr 2, 2019

☔ The latest upstream changes (presumably #59636) made this pull request unmergeable. Please resolve the merge conflicts.

@bjorn3
Copy link
Member Author

bjorn3 commented Apr 5, 2019

Rebased

@bors
Copy link
Contributor

bors commented Apr 6, 2019

☔ The latest upstream changes (presumably #59741) made this pull request unmergeable. Please resolve the merge conflicts.

@bjorn3
Copy link
Member Author

bjorn3 commented Apr 6, 2019

Rebased (again)

@@ -66,6 +66,7 @@ pub struct ModuleCodegen<M> {
pub kind: ModuleKind,
}

pub const METADATA_FILENAME: &str = "rust.metadata.bin";
pub const RLIB_BYTECODE_EXTENSION: &str = "bc.z";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a problem, because bc is LLVM-specific.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But feel free to file an issue and leave it for later.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the convention on those kind of issues? File it right now and add a comment here referencing it?

@@ -1,21 +1,40 @@
/// For all the linkers we support, and information they might
/// need out of the shared crate context before we get rid of it.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @alexcrichton @michaelwoerister I feel like this module would be better suited for another crate, say rustc_codegen_link or rustc_link(er), what do you think?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Who should depend on who? CrateInfo and CodegenResults are both needed by rustc_codegen_ssa and the linker code.

@eddyb
Copy link
Member

eddyb commented Apr 6, 2019

r=me with or without comments addressed

@eddyb
Copy link
Member

eddyb commented Apr 9, 2019

@bors r+

@bors
Copy link
Contributor

bors commented Apr 9, 2019

📌 Commit c922dec has been approved by eddyb

@bors
Copy link
Contributor

bors commented Apr 9, 2019

🌲 The tree is currently closed for pull requests below priority 15, this pull request will be tested once the tree is reopened

@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 Apr 9, 2019
cramertj added a commit to cramertj/rust that referenced this pull request Apr 11, 2019
Move back::link and debuginfo::type_names to cg ssa

r? @eddyb
@bors
Copy link
Contributor

bors commented Apr 12, 2019

🔒 Merge conflict

This pull request and the master branch diverged in a way that cannot be automatically merged. Please rebase on top of the latest master branch, and let the reviewer approve again.

How do I rebase?

Assuming self is your fork and upstream is this repository, you can resolve the conflict following these steps:

  1. git checkout move_link_to_cg_ssa (switch to your branch)
  2. git fetch upstream master (retrieve the latest master)
  3. git rebase upstream/master -p (rebase on top of it)
  4. Follow the on-screen instruction to resolve conflicts (check git status if you got lost).
  5. git push self move_link_to_cg_ssa --force-with-lease (update this PR)

You may also read Git Rebasing to Resolve Conflicts by Drew Blessing for a short tutorial.

Please avoid the "Resolve conflicts" button on GitHub. It uses git merge instead of git rebase which makes the PR commit history more difficult to read.

Sometimes step 4 will complete without asking for resolution. This is usually due to difference between how Cargo.lock conflict is handled during merge and rebase. This is normal, and you should still perform step 5 to update this PR.

Error message
warning: Cannot merge binary files: Cargo.lock (HEAD vs. heads/homu-tmp)
Auto-merging src/librustc_codegen_ssa/debuginfo/type_names.rs
Auto-merging src/librustc_codegen_ssa/debuginfo/mod.rs
Auto-merging src/librustc_codegen_llvm/debuginfo/mod.rs
Auto-merging src/librustc_codegen_llvm/back/write.rs
Removing src/librustc_codegen_llvm/back/link.rs
Auto-merging Cargo.lock
CONFLICT (content): Merge conflict in Cargo.lock
Automatic merge failed; fix conflicts and then commit the result.

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 12, 2019
@bors
Copy link
Contributor

bors commented Apr 20, 2019

📌 Commit 5adcd39c6bf0b07d3d8f564e4b488599ca94e592 has been approved by eddyb

@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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Apr 20, 2019
@bors
Copy link
Contributor

bors commented Apr 20, 2019

🔒 Merge conflict

This pull request and the master branch diverged in a way that cannot be automatically merged. Please rebase on top of the latest master branch, and let the reviewer approve again.

How do I rebase?

Assuming self is your fork and upstream is this repository, you can resolve the conflict following these steps:

  1. git checkout move_link_to_cg_ssa (switch to your branch)
  2. git fetch upstream master (retrieve the latest master)
  3. git rebase upstream/master -p (rebase on top of it)
  4. Follow the on-screen instruction to resolve conflicts (check git status if you got lost).
  5. git push self move_link_to_cg_ssa --force-with-lease (update this PR)

You may also read Git Rebasing to Resolve Conflicts by Drew Blessing for a short tutorial.

Please avoid the "Resolve conflicts" button on GitHub. It uses git merge instead of git rebase which makes the PR commit history more difficult to read.

Sometimes step 4 will complete without asking for resolution. This is usually due to difference between how Cargo.lock conflict is handled during merge and rebase. This is normal, and you should still perform step 5 to update this PR.

Error message
warning: Cannot merge binary files: Cargo.lock (HEAD vs. heads/homu-tmp)
Auto-merging src/librustc_codegen_ssa/lib.rs
Auto-merging src/librustc_codegen_ssa/debuginfo/type_names.rs
Auto-merging src/librustc_codegen_ssa/debuginfo/mod.rs
Auto-merging src/librustc_codegen_llvm/lib.rs
Removing src/librustc_codegen_llvm/back/link.rs
Auto-merging Cargo.lock
CONFLICT (content): Merge conflict in Cargo.lock
Automatic merge failed; fix conflicts and then commit the result.

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 20, 2019
@Xanewok
Copy link
Member

Xanewok commented Apr 20, 2019

@bjorn3 maybe this needs another rebase?

...
Auto-merging Cargo.lock
CONFLICT (content): Merge conflict in Cargo.lock

@bors delegate+

I experienced something similar in #60053 (comment).
@pietroalbini is it because how homu manages branches specifically or it uses some non-default merge strategy? (and why is Cargo.lock treated as a binary file?)

@bors
Copy link
Contributor

bors commented Apr 20, 2019

✌️ @bjorn3 can now approve this pull request

@philipc
Copy link
Contributor

philipc commented Apr 20, 2019

@Xanewok See the Cargo.lock entry in .gitattributes, and rust-lang/highfive#153

@Xanewok
Copy link
Member

Xanewok commented Apr 20, 2019

Ah, I didn't know this was enforced on the merge level; thanks @philipc!

@bjorn3
Copy link
Member Author

bjorn3 commented Apr 20, 2019

Rebased

@bors r=eddyb

@bors
Copy link
Contributor

bors commented Apr 20, 2019

📌 Commit 3af60e0 has been approved by eddyb

@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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Apr 20, 2019
@bors
Copy link
Contributor

bors commented Apr 20, 2019

⌛ Testing commit 3af60e0 with merge 0d17322...

bors added a commit that referenced this pull request Apr 20, 2019
Move back::link and debuginfo::type_names to cg ssa

r? @eddyb
@bors
Copy link
Contributor

bors commented Apr 20, 2019

☀️ Test successful - checks-travis, status-appveyor
Approved by: eddyb
Pushing 0d17322 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Apr 20, 2019
@bors bors merged commit 3af60e0 into rust-lang:master Apr 20, 2019
@bjorn3 bjorn3 deleted the move_link_to_cg_ssa branch April 20, 2019 15:11
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. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants