This is an archive of the discontinued LLVM Phabricator instance.

[DAGCombiner] Add node to the worklist in topological order in scalarizeExtractedVectorLoad
ClosedPublic

Authored by deadalnix on Aug 23 2019, 8:49 AM.

Diff Detail

Repository
rL LLVM

Event Timeline

deadalnix created this revision.Aug 23 2019, 8:49 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 23 2019, 8:49 AM
lebedev.ri added inline comments.Aug 23 2019, 11:10 AM
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
16639 ↗(On Diff #216871)

Won't this cause the node to be revisited, before AddToWorklist(EVE); ?

deadalnix marked 2 inline comments as done.Aug 23 2019, 12:06 PM
deadalnix added inline comments.
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
1696 ↗(On Diff #216871)

When the node itself is returned, it is not added back to the worklist.

16639 ↗(On Diff #216871)

No. The only difference between this and just returning an empty value is that it increment the counter of transform that has been done. The main loop assumes that whatever transform does this has handled the worklist properly.

This revision is now accepted and ready to land.Sep 15 2019, 12:16 PM
RKSimon accepted this revision.Sep 15 2019, 1:44 PM

LGTM

This revision was automatically updated to reflect the committed changes.