bug1813533.js (557B)
1 async function foo() { 2 // Suspend this function until later. 3 await undefined; 4 5 // Capture the stack using JS::AllFrames. 6 saveStack(); 7 8 // Capture the stack using JS::FirstSubsumedFrame. 9 var g = newGlobal({principal: {}}); 10 captureFirstSubsumedFrame(g); 11 } 12 13 // Invoke foo. This will capture the stack and mark the bit 14 // on the top-level script, but we clear it below. 15 foo(); 16 17 // Tier up to blinterp, clearing the hasCachedSavedFrame bit 18 // on the top-level script. 19 for (var i = 0; i < 20; i++) {} 20 21 // Continue execution of foo. 22 drainJobQueue();