[llvm] [AArch64] Extend intra-block optimizer to handle TBZ/TBNZ (PR #217808)

Mugundan S via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 24 01:17:24 PDT 2026


================
@@ -53,7 +53,6 @@
 //
 // See optimizeCrossBlock() and optimizeIntraBlock() for implementation details.
 //
-// TODO: maybe handle TBNZ/TBZ the same way as CMP when used instead for "a < 0"
----------------
MGN-GIT wrote:

Hi @davemgreen,

I just wrote a small C example using a branch-if-zero condition and compiled it with ARMv8-A Clang trunk. It looks like this is already handled in the SelectionDAG/ISel path, since it emits TBZ/TBNZ.

Maybe I’m misunderstanding what the TODO in AArch64ConditionOptimizer is referring to. Is the TODO targeting a different case that the existing SD/ISel lowering doesn’t already cover?

Thanks :)


https://github.com/llvm/llvm-project/pull/217808


More information about the llvm-commits mailing list