[PATCH] D59662: [X86] Use xmm registers to implement 64-bit popcnt on 32-bit targets if possible if popcnt instruction is not available

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 22 13:11:15 PDT 2019


spatel accepted this revision.
spatel added a comment.
This revision is now accepted and ready to land.

LGTM



================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:26715
+          DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2i64, N->getOperand(0));
+      Wide = DAG.getNode(N->getOpcode(), dl, MVT::v2i64, Wide);
+      // Bit count should fit in 32-bits, extract it as that and then zero
----------------
Clearer to make this use the constant opcode getNode(ISD::CTPOP...) instead of using N->getOpcode() again.


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

https://reviews.llvm.org/D59662





More information about the llvm-commits mailing list