* src/vm/jit/replace.c (replace_write_executionstate): Take
authoredwin <none@none>
Sun, 19 Nov 2006 15:33:28 +0000 (15:33 +0000)
committeredwin <none@none>
Sun, 19 Nov 2006 15:33:28 +0000 (15:33 +0000)
synchronization slots from next frame for inline points.

src/vm/jit/replace.c

index 2f5f48586391bae699eb8a4631add5484606efa3..898f18438cce73f28c00e2f5f904a6a44da0998e 100644 (file)
@@ -1013,10 +1013,11 @@ static void replace_write_executionstate(rplpoint *rp,
                        /* only write synchronization slots when traversing an inline point */
 
                        if (!topframe) {
-                               assert(frame->syncslotcount == 1); /* XXX need to understand more cases */
-                               assert(frame->syncslots != NULL);
+                               assert(frame->up);
+                               assert(frame->up->syncslotcount == 1); /* XXX need to understand more cases */
+                               assert(frame->up->syncslots != NULL);
 
-                               replace_write_value(es,sp,ra,frame->syncslots);
+                               replace_write_value(es,sp,ra,frame->up->syncslots);
                        }
                        continue;
                }