-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Some unwinding related cg_ssa cleanups #93261
Conversation
…arf and msvc instructions
Given that these instructions are diverging, not every codegen backend may be able to produce a return value for them.
Some changes occured to rustc_codegen_gcc cc @antoyo |
r? @cjgillot (rust-highfive has picked a reviewer for you, use r? to override) |
} | ||
} | ||
|
||
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? */); |
There was a problem hiding this comment.
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.
This comment has been minimized.
This comment has been minimized.
Some codegen backends may require all handlers to be immediately known
0544c8b
to
f6ce771
Compare
This is a pure refactor with no behavioural change. |
📌 Commit f6ce771 has been approved by |
Some unwinding related cg_ssa cleanups These should make it a bit easier for alternative codegen backends to implement unwinding.
…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
These should make it a bit easier for alternative codegen backends to implement unwinding.