mirror of
https://github.com/revng/revng
synced 2026-06-21 14:07:57 +00:00
1e94ca0711
Introduce a new canonicalisation pass that forces a small set of exponential-dataflow-prone instructions (SelectInst plus the FShl and FShr intrinsic patterns) to be stored into a dedicated local variable. Without this, expanding their value into C expressions during decompilation can blow up into exponential path enumeration on real binaries. This is a temporary workaround. A more principled split of pathological dataflows is planned and will replace this pass.