[CGP] despeculateCountZeros - Don't create is-zero branch if cttz/ctlz source is...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 24 Jul 2021 11:58:02 +0000 (12:58 +0100)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 24 Jul 2021 12:11:49 +0000 (13:11 +0100)
commit478b22d95aee2b818008a7b92b8606175767d0de
tree5ac965bba20d939711035ac22f8a5fd071dd701b
parentfcb3bb581bdd94e001edfd33eeff2caa609c0f1b
[CGP] despeculateCountZeros - Don't create is-zero branch if cttz/ctlz source is known non-zero

If value tracking can confirm that the cttz/ctlz source is known non-zero then we don't need to create a branch (which DAG will struggle to recover from).

Differential Revision: https://reviews.llvm.org/D106685
llvm/lib/CodeGen/CodeGenPrepare.cpp
llvm/test/CodeGen/X86/clz.ll