Mercurial > hg > graal-compiler
changeset 13143:4e599571ddb2
make graph builder more visible for derived classes; add few indent levels for debug logging
author | Erik Eckstein <erik.eckstein@oracle.com> |
---|---|
date | Mon, 25 Nov 2013 13:48:13 +0100 |
parents | 401830ff96f4 |
children | b6b930315135 |
files | graal/com.oracle.graal.java/src/com/oracle/graal/java/FrameStateBuilder.java graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java |
diffstat | 2 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/FrameStateBuilder.java Mon Nov 25 13:41:18 2013 +0100 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/FrameStateBuilder.java Mon Nov 25 13:48:13 2013 +0100 @@ -438,7 +438,7 @@ } } - private void storeStack(int i, ValueNode x) { + public void storeStack(int i, ValueNode x) { assert x == null || x.isAlive() && (stack[i] == null || x.kind() == stack[i].kind()) : "Method does not handle changes from one-slot to two-slot values or non-alive values"; stack[i] = x; }
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Mon Nov 25 13:41:18 2013 +0100 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Mon Nov 25 13:48:13 2013 +0100 @@ -211,12 +211,14 @@ return map; } - private void build() { + protected void build() { if (PrintProfilingInformation.getValue()) { - TTY.println("Profiling info for " + MetaUtil.format("%H.%n(%p)", method)); + TTY.println("Profiling info for " + method); TTY.println(MetaUtil.indent(MetaUtil.profileToString(profilingInfo, method, CodeUtil.NEW_LINE), " ")); } + Indent indent = Debug.logAndIndent(false, "build graph for %s", method.toString()); + // compute the block map, setup exception handlers and get the entrypoint(s) BciBlockMapping blockMap = createBlockMap(); loopHeaders = blockMap.loopHeaders; @@ -275,6 +277,7 @@ n.safeDelete(); } } + indent.outdent(); } private Block unwindBlock(int bci) { @@ -1590,7 +1593,7 @@ Debug.log("Ignoring block %s", block); return; } - Debug.log("Parsing block %s firstInstruction: %s loopHeader: %b", block, block.firstInstruction, block.isLoopHeader); + Indent indent = Debug.logAndIndent("Parsing block %s firstInstruction: %s loopHeader: %b", block, block.firstInstruction, block.isLoopHeader); lastInstr = block.firstInstruction; frameState = block.entryState; @@ -1617,6 +1620,7 @@ frameState.setRethrowException(false); iterateBytecodesForBlock(block); } + indent.outdent(); } private void connectLoopEndToBegin() {