Mercurial > hg > truffle
changeset 18916:66669e016466
Small clean up in GraphBuilderPhase.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Tue, 20 Jan 2015 17:47:05 +0100 |
parents | 037dc6f7d3c4 |
children | 323ac2b4d988 |
files | graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java |
diffstat | 1 files changed, 15 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Tue Jan 20 17:10:20 2015 +0100 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Tue Jan 20 17:47:05 2015 +0100 @@ -191,16 +191,14 @@ // add a monitor enter to the start block currentGraph.start().setStateAfter(frameState.create(BytecodeFrame.BEFORE_BCI)); methodSynchronizedObject = synchronizedObject(frameState, method); - lastInstr = genMonitorEnter(methodSynchronizedObject); + genMonitorEnter(methodSynchronizedObject); } frameState.clearNonLiveLocals(blockMap.startBlock, liveness, true); assert bci() == 0; ((StateSplit) lastInstr).setStateAfter(frameState.create(bci())); if (graphBuilderConfig.insertNonSafepointDebugInfo()) { - InfopointNode ipn = currentGraph.add(createInfoPointNode(InfopointReason.METHOD_START)); - lastInstr.setNext(ipn); - lastInstr = ipn; + append(createInfoPointNode(InfopointReason.METHOD_START)); } currentBlock = blockMap.startBlock; @@ -1103,19 +1101,22 @@ } } + /** + * Remove loop header without loop ends. This can happen with degenerated loops like + * this one: + * + * <pre> + * for (;;) { + * try { + * break; + * } catch (UnresolvedException iioe) { + * } + * } + * </pre> + */ private void connectLoopEndToBegin() { for (LoopBeginNode begin : currentGraph.getNodes(LoopBeginNode.class)) { if (begin.loopEnds().isEmpty()) { - // @formatter:off - // Remove loop header without loop ends. - // This can happen with degenerated loops like this one: - // for (;;) { - // try { - // break; - // } catch (UnresolvedException iioe) { - // } - // } - // @formatter:on assert begin.forwardEndCount() == 1; currentGraph.reduceDegenerateLoopBegin(begin); } else {