Break critical edges in inline asm before code generation by tmiasko · Pull Request #138073 · rust-lang/rust
rustbot
added
S-waiting-on-review
labels
Mar 5, 2025An inline asm terminator defines outputs along its target edges -- a fallthrough target and labeled targets. Code generation implements this by inserting code directly into the target blocks. This approach works only if the target blocks don't have other predecessors. Establish required invariant by extending existing code that breaks critical edges before code generation.
bors
added
S-waiting-on-bors
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.labels
Mar 6, 2025matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request
Mar 7, 2025… r=bjorn3 Break critical edges in inline asm before code generation An inline asm terminator defines outputs along its target edges -- a fallthrough target and labeled targets. Code generation implements this by inserting code directly into the target blocks. This approach works only if the target blocks don't have other predecessors. Establish required invariant by extending existing code that breaks critical edges before code generation. Fixes rust-lang#137867. r? `@bjorn3`
This was referenced
Mar 7, 2025bors added a commit to rust-lang-ci/rust that referenced this pull request
Mar 7, 2025…iaskrgr Rollup of 6 pull requests Successful merges: - rust-lang#137674 (Enable `f16` for LoongArch) - rust-lang#138034 (library: Use `size_of` from the prelude instead of imported) - rust-lang#138060 (Revert rust-lang#138019 after further discussion about how hir-pretty printing should work) - rust-lang#138073 (Break critical edges in inline asm before code generation) - rust-lang#138107 (`librustdoc`: clippy fixes) - rust-lang#138111 (Use `default_field_values` for `rustc_errors::Context`, `rustc_session::config::NextSolverConfig` and `rustc_session::config::ErrorOutputType`) r? `@ghost` `@rustbot` modify labels: rollup
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request
Mar 7, 2025Rollup merge of rust-lang#138073 - tmiasko:inline-asm-critical-edges, r=bjorn3 Break critical edges in inline asm before code generation An inline asm terminator defines outputs along its target edges -- a fallthrough target and labeled targets. Code generation implements this by inserting code directly into the target blocks. This approach works only if the target blocks don't have other predecessors. Establish required invariant by extending existing code that breaks critical edges before code generation. Fixes rust-lang#137867. r? ``@bjorn3``
tmiasko
deleted the
inline-asm-critical-edges
branch
github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request
Mar 14, 2025…iaskrgr Rollup of 6 pull requests Successful merges: - rust-lang#137674 (Enable `f16` for LoongArch) - rust-lang#138034 (library: Use `size_of` from the prelude instead of imported) - rust-lang#138060 (Revert rust-lang#138019 after further discussion about how hir-pretty printing should work) - rust-lang#138073 (Break critical edges in inline asm before code generation) - rust-lang#138107 (`librustdoc`: clippy fixes) - rust-lang#138111 (Use `default_field_values` for `rustc_errors::Context`, `rustc_session::config::NextSolverConfig` and `rustc_session::config::ErrorOutputType`) r? `@ghost` `@rustbot` modify labels: rollup
ojeda
mentioned this pull request
48 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters