about summary refs log tree commit diff
path: root/Cargo.lock
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-09-27 09:32:40 +0000
committerbors <bors@rust-lang.org>2025-09-27 09:32:40 +0000
commitade84871f718ea20a6460d28e82290353b4bf3d2 (patch)
tree88637362f5894f6893c8de6ff67bc40e270a0bd3 /Cargo.lock
parent959b450747f81e720be3a829665dd30e553e7fd7 (diff)
parentd13a5b0a6c12837007c51f229cb8c58b614cfb5b (diff)
downloadrust-ade84871f718ea20a6460d28e82290353b4bf3d2.tar.gz
rust-ade84871f718ea20a6460d28e82290353b4bf3d2.zip
Auto merge of #146829 - cjgillot:jump-threading-loop-dominator, r=dianqk
JumpThreading: Avoid computing dominators to identify loop headers.

JumpThreading tries to avoid threading through loop headers to avoid creating irreducible CFGs.

However, computing dominators is expensive, and accounts up to 20 % of the runtime of the JumpThreading pass for some cases like serde.

This PR proposes to approximate according to the post-order traversal order. We define a "maybe" loop header as a block which is visited after its predecessor in post-order.
Diffstat (limited to 'Cargo.lock')
0 files changed, 0 insertions, 0 deletions