llvm-project
abc0674f - [BOLT][AArch64] Handle irreversible branches in compact-code-model (#186850)

Commit
63 days ago
[BOLT][AArch64] Handle irreversible branches in compact-code-model (#186850) When the compact-code-model is used, LongJmpPass::relaxLocalBranches attempts to reverseBranchCondition without calling isReversibleBranch resulting in runtime error. With this patch I am adding an additional trampoline to handle irreversible FEAT_CMPBR branches. In the future the plan is to use liveness analysis and replace the irreversible branch with compare followed by branch (see #185731) as long as the condition flags are dead, or emit the additional trampoline otherwise.
Author
Parents
Loading