Skip to content

Some unwinding related cg_ssa cleanups #93261

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 4 commits into from
Jan 29, 2022
Merged

Conversation

bjorn3
Copy link
Member

@bjorn3 bjorn3 commented Jan 24, 2022

These should make it a bit easier for alternative codegen backends to implement unwinding.

Given that these instructions are diverging, not every codegen backend
may be able to produce a return value for them.
@bjorn3 bjorn3 added C-cleanup Category: PRs that clean code up or issues documenting cleanup. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jan 24, 2022
@rust-highfive
Copy link
Contributor

Some changes occured to rustc_codegen_gcc

cc @antoyo

@rust-highfive
Copy link
Contributor

r? @cjgillot

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 24, 2022
}
}

fn set_cleanup(&mut self, landing_pad: &'ll Value) {
fn cleanup_landing_pad(&mut self, ty: &'ll Type, pers_fn: &'ll Value) -> &'ll Value {
let landing_pad = self.landing_pad(ty, pers_fn, 1 /* FIXME should this be 0? */);
Copy link
Member Author

Choose a reason for hiding this comment

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

cg_ssa passed 1 here, but I think it should be 0 as it doesn't call .add_clause() on the landing pad.

@rust-log-analyzer

This comment has been minimized.

Some codegen backends may require all handlers to be immediately known
@cjgillot
Copy link
Contributor

This is a pure refactor with no behavioural change.
@bors r+ rollup

@bors
Copy link
Collaborator

bors commented Jan 28, 2022

📌 Commit f6ce771 has been approved by cjgillot

@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 Jan 28, 2022
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 28, 2022
Some unwinding related cg_ssa cleanups

These should make it a bit easier for alternative codegen backends to implement unwinding.
This was referenced Jan 28, 2022
bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 28, 2022
…askrgr

Rollup of 10 pull requests

Successful merges:

 - rust-lang#92611 (Add links to the reference and rust by example for asm! docs and lints)
 - rust-lang#93158 (wasi: implement `sock_accept` and enable networking)
 - rust-lang#93239 (Add os::unix::net::SocketAddr::from_path)
 - rust-lang#93261 (Some unwinding related cg_ssa cleanups)
 - rust-lang#93295 (Avoid double panics when using `TempDir` in tests)
 - rust-lang#93353 (Unimpl {Add,Sub,Mul,Div,Rem,BitXor,BitOr,BitAnd}<$t> for Saturating<$t>)
 - rust-lang#93356 (Edit docs introduction for `std::cmp::PartialOrd`)
 - rust-lang#93375 (fix typo `documenation`)
 - rust-lang#93399 (rustbuild: Fix compiletest warning when building outside of root.)
 - rust-lang#93404 (Fix a typo from rust-lang#92899)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit ada77e9 into rust-lang:master Jan 29, 2022
@rustbot rustbot added this to the 1.60.0 milestone Jan 29, 2022
@bjorn3 bjorn3 deleted the cg_ssa_refactor6 branch January 29, 2022 13:35
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
C-cleanup Category: PRs that clean code up or issues documenting cleanup. 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.

6 participants