[PATCH] ScheduleDAGInstrs::buildSchedGraph() rewritten.
Jonas Paulsson
jonas.paulsson at ericsson.com
Mon Mar 30 10:21:25 PDT 2015
Hi hfinkel, atrick,
Some minor improvements to the proposed patch:
SUList uses std::list<> with composition instead of derivation. Std::list<> is still the best data structure I have tried, but I have not tried to implement a singly linked list with a memory pool, which is what is needed.
Huge regions are now reduced in fifo order always. That is, when some SUnits are dropped from maps, it is always the SUnits with highest NodeNums (lowest in instruction list) that are removed and put under a new barrier chain.
To dump the contents of a Value2SusMap, the PseudoSourceValue class got a new friend in the operator<<() function for this purpose. This is because the printCustom() method is private.
Note: There is no need to check isIdentifiedObject() in isUnsafeMemoryObject(), as in that case the underlying objects vector is cleared, and the SU is treated as unknown store / load.
http://reviews.llvm.org/D8705
Files:
include/llvm/CodeGen/PseudoSourceValue.h
include/llvm/CodeGen/ScheduleDAG.h
include/llvm/CodeGen/ScheduleDAGInstrs.h
lib/CodeGen/ScheduleDAGInstrs.cpp
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8705.22892.patch
Type: text/x-patch
Size: 39256 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150330/47496f62/attachment.bin>
More information about the llvm-commits
mailing list