RFR(M): 8004073: Implement C2 Ideal node specific dump() method (original) (raw)

Michael Haupt michael.haupt at oracle.com
Tue Jul 28 08:56:05 UTC 2015


Dear all,

please review and sponsor this change. RFE: https://bugs.openjdk.java.net/browse/JDK-8004073 Webrev: http://cr.openjdk.java.net/~mhaupt/8004073/webrev.00

This change extends the dumping facilities of the C2 IR Node hierarchy. Node::dump() is used in debugging sessions to print information about an IR node. The API is extended by these new entry points:

The notion of "related" nodes is of course a property of the node itself, or rather, of its class. This is configured in this virtual method:

This method must be overridden by all subclasses of Node that, in their notion of what related nodes are, divert from the default behaviour as specified in the implementation of Node::rel() in the Node class itself. The default is to collect all inputs and outputs till depth 1, including both data and control nodes, ignoring compactness.

There are several auxiliary methods. Node collection is chiefly facilitated by this method:

Furthermore, there exist pre-defined collectors for common cases:

Regarding compact dumping, subclasses of Node should override this virtual method:

The default behaviour for compact dumping is to dump a node's name and index.

Specific notions of "related" have been added to the following node classes:

Here is a sample session in LLDB, showing the different dumps for an IfNode:

Best,

Michael

--

<http://www.oracle.com/> Dr. Michael Haupt | Principal Member of Technical Staff Phone: +49 331 200 7277 | Fax: +49 331 200 7561 Oracle Java Platform Group | LangTools Team | Nashorn Oracle Deutschland B.V. & Co. KG, Schiffbauergasse 14 | 14467 Potsdam, Germany <http://www.oracle.com/commitment> Oracle is committed to developing practices and products that help protect the environment

-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20150728/a288a7a1/attachment-0001.html>



More information about the hotspot-compiler-dev mailing list