[PATCH] D56057: [X86] Individually simplify both operands of PMULDQ/PMULUDQ using the other entry point of SimplifyDemandedBits that allows the one use check of the root node to be suppressed.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 24 09:29:34 PST 2018


craig.topper added a comment.

The AssumeSingleUse code will only allow the root to have multiple uses. The issue is that if the root has multiple uses, the most you should be allowed to do is decide if the root node is necessary for the instruction that is using it and replace it with one of it operands in this use. No new nodes should be created. You cannot recurse into SimplifyDemandedBits any further. You can only use computeKnownBits to make the decision.

This is analogous to the code in InstCombines’s SimplifyMultipleUseDemandedBits.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D56057





More information about the llvm-commits mailing list