[PATCH] D43446: [X86] Correct SHRUNKBLEND creation to work correctly when there are multiple uses of the condition.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 20 09:49:42 PST 2018


craig.topper added inline comments.


================
Comment at: lib/Target/X86/X86ISelLowering.cpp:31880
+    bool CanShrinkCond = true;
+    for (SDNode::use_iterator UI = Cond->use_begin(), UE = Cond->use_end();
+         UI != UE; ++UI) {
----------------
RKSimon wrote:
> Can you convert this to a for-range loop using Cond->uses()
No because uses() returns a SDNode* and I would need the SDUse* to get the operand number or I would need another loop over the SDNode's operands.


================
Comment at: lib/Target/X86/X86ISelLowering.cpp:31909
         DCI.CommitTargetLoweringOpt(TLO);
-        return SDValue();
+        return SDValue(N, 0);
       }
----------------
RKSimon wrote:
> I take it there's no reason to re-evaluate this?
We don't have any combines on SHRUNKBLEND today. Do you think I should add it to teh worklist anyway?


Repository:
  rL LLVM

https://reviews.llvm.org/D43446





More information about the llvm-commits mailing list