bug1756592-2.js (566B)
1 // |jit-test| --fast-warmup; --no-threads 2 3 let g = newGlobal({ newCompartment: true}); 4 let d = new Debugger; 5 g.eval("function foo() { invokeInterruptCallback(() => {}) }"); 6 g.eval("function bar() { foo(); }"); 7 8 // Warp-compile. 9 with ({}) {} 10 setInterruptCallback(function() { return true; }); 11 for (var i = 0; i < 100; i++) { 12 g.bar(); 13 } 14 15 // Trigger a forced return from an inlined frame 16 setInterruptCallback(function() { 17 d.addDebuggee(g) 18 d.getNewestFrame().onStep = function() { 19 d.removeDebuggee(g); 20 return { return: 0 }; 21 } 22 return true 23 }); 24 25 g.bar();