hhvm
hhvm copied to clipboard
vasm-graph-color: dedupe phijmp operands before coloring
Deduplicate duplicate phijmp sources so each phi operand has its own SSA name. When two phi operands pointed at the same penalty vector, biasing one register also penalized the other, so we almost never picked a single physreg for the phidef/phijmp chain. That produced extra copy/copy2s (especially painful on AArch64 where there’s no xchg). Splitting duplicates during preparation keeps the penalty data independent and reduces those redundant moves.
@facebook-github-bot has imported this pull request. If you are a Meta employee, you can view this in D88385561. (Because this pull request was imported automatically, there will not be any future comments.)