[PATCH] D72224: [LegalizeVectorOps] Improve handling of multi-result operations.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 6 12:14:47 PST 2020


efriedma added inline comments.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp:502
+             "Unexpected number of results");
+      return TranslateLegalizeResults(Op, Tmp.getNode());
     }
----------------
craig.topper wrote:
> kpn wrote:
> > It seems like a code smell to have the rules duplicated in the Promote, Expand, and Custom cases. Is there a way to pull most of this block out into a function shared by the three cases? And yet the Custom case looks a little different from the others. 
> Custom is a bit nasty due to only returning one SDValue. I had to rework it again for D72238. I should probably move that part of the change over here as I'm not entirely sure the changes I had to make there aren't needed for other cases.
> 
> I'll look into merging the handling.
We should probably fix the whole LowerOperation/LowerOperationWrapper mess at some point, so custom legalization always returns a list of values.  But I guess we don't have to do that here.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D72224





More information about the llvm-commits mailing list