llvm-project
1ee52eda - [BOLT] Improve InsertNegateRAStatePass::inferUnknownStates

Commit
16 days ago
[BOLT] Improve InsertNegateRAStatePass::inferUnknownStates Previous implementation used a simple heuristic. This can be improved in several ways: - If a BasicBlock has instruction both with known RAState and unknown RAState, use the known states to work out the unknown ones. - If a BasicBlock only consists of instructions with unknown RAState, use the last known RAState from its predecessors, or the first known from its successors to set the RAStates in the BasicBlock. This includes error checking: all predecessors/successors should have the same RAState. - Some BasicBlocks may only contain instructions with unknown RAState, and have no CFG neighbors. These already have incorrect unwind info. For these, we copy the last known RAState based on the layout order. Updated bolt/docs/PacRetDesign.md to reflect changes.
Author
Committer
Parents
Loading