[llvm] r351571 - [SelectionDAG] Split very large token factors for chained stores to 64k chunks.
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 18 10:37:38 PST 2019
Author: fhahn
Date: Fri Jan 18 10:37:38 2019
New Revision: 351571
URL: http://llvm.org/viewvc/llvm-project?rev=351571&view=rev
Log:
[SelectionDAG] Split very large token factors for chained stores to 64k chunks.
Similar to D55073. Without this change, the DAG combiner crashes on code
with more than 64k of stores in a single basic block that form parallelizable
chains.
No test case, as it would be very IR file.
Reviewed By: RKSimon
Differential Revision: https://reviews.llvm.org/D56740
Modified:
llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Modified: llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp?rev=351571&r1=351570&r2=351571&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp (original)
+++ llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp Fri Jan 18 10:37:38 2019
@@ -19349,7 +19349,7 @@ bool DAGCombiner::parallelizeChainedStor
if (AddNewChain)
TFOps.insert(TFOps.begin(), NewChain);
- SDValue TF = DAG.getNode(ISD::TokenFactor, SDLoc(STChain), MVT::Other, TFOps);
+ SDValue TF = DAG.getTokenFactor(SDLoc(STChain), TFOps);
CombineTo(St, TF);
AddToWorklist(STChain);
More information about the llvm-commits
mailing list