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 {