[PATCH] D62871: [Codegen] (X & (C l>>/<< Y)) ==/!= 0 --> ((X <</l>> Y) & C) ==/!= 0 fold

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 5 03:47:43 PDT 2019


RKSimon added inline comments.


================
Comment at: lib/Target/X86/X86ISelLowering.h:845
+      return X.getValueType().isScalarInteger(); // 'bt'
+    }
+
----------------
put this into X86ISelLowering.cpp, same for Hexagon


================
Comment at: test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll:740
+; X64-NEXT:    pcmpeqd %xmm3, %xmm2
+; X64-NEXT:    movdqa %xmm2, %xmm0
 ; X64-NEXT:    retq
----------------
please can you run this through llvm-mca to compare perf?


Repository:
  rL LLVM

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

https://reviews.llvm.org/D62871





More information about the llvm-commits mailing list