[PATCH] D149299: [X86] Add tests for checking `isKnownNeverZero`; NFC

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 27 04:05:53 PDT 2023


RKSimon added inline comments.


================
Comment at: llvm/test/CodeGen/X86/known-never-zero.ll:56
+  %z = select i1 %c, i32 %y, i32 122
+  %r = call i32 @llvm.cttz.i32(i32 %z, i1 false)
+  ret i32 %r
----------------
Any idea why we sometimes get branches and sometimes CMOV? IIRC CodeGenPrepare does attempt to determine if a CTTZ/CTLZ is non-zero?


================
Comment at: llvm/test/CodeGen/X86/known-never-zero.ll:288
+  %shl = shl i32 %x, %sub
+  %z = or i32 %shl, %shr
+  %r = call i32 @llvm.cttz.i32(i32 %z, i1 false)
----------------
use the fshl/fshr intrinsics here to help ensure you're testing the ROTL/ROTR paths


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D149299/new/

https://reviews.llvm.org/D149299



More information about the llvm-commits mailing list