File tree Expand file tree Collapse file tree 2 files changed +8
-2
lines changed
graalpython/com.oracle.graal.python/src/com/oracle/graal/python/nodes/control Expand file tree Collapse file tree 2 files changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -185,7 +185,10 @@ public void executeVoid(VirtualFrame frame) {
185185 }
186186 frame .setObject (iteratorSlot , iterator .execute (frame ));
187187 try {
188- loopNode .executeLoop (frame );
188+ if (((ForRepeatingNode ) loopNode .getRepeatingNode ()).executeRepeating (frame )) {
189+ // manually peel the first iteration
190+ loopNode .executeLoop (frame );
191+ }
189192 } finally {
190193 frame .setObject (iteratorSlot , null );
191194 }
Original file line number Diff line number Diff line change @@ -81,6 +81,9 @@ public CastToBooleanNode getCondition() {
8181
8282 @ Override
8383 public void executeVoid (VirtualFrame frame ) {
84- loopNode .executeLoop (frame );
84+ if (((WhileRepeatingNode ) loopNode .getRepeatingNode ()).executeRepeating (frame )) {
85+ // manually peel the first iteration
86+ loopNode .executeLoop (frame );
87+ }
8588 }
8689}
You can’t perform that action at this time.
0 commit comments