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) {
185
185
}
186
186
frame .setObject (iteratorSlot , iterator .execute (frame ));
187
187
try {
188
- loopNode .executeLoop (frame );
188
+ if (((ForRepeatingNode ) loopNode .getRepeatingNode ()).executeRepeating (frame )) {
189
+ // manually peel the first iteration
190
+ loopNode .executeLoop (frame );
191
+ }
189
192
} finally {
190
193
frame .setObject (iteratorSlot , null );
191
194
}
Original file line number Diff line number Diff line change @@ -81,6 +81,9 @@ public CastToBooleanNode getCondition() {
81
81
82
82
@ Override
83
83
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
+ }
85
88
}
86
89
}
You can’t perform that action at this time.
0 commit comments