Bug 1915045 Ensure decode tasks are scheduled on BufferingState::Enter() r=media...
[gecko.git] / js / xpconnect / tests / chrome / test_bug732665_meta.js
blob92bf9066b35361dea243019a26c634388cbd9ddd
1 /* globals stackPointerInfo */
3 var stackBottom = stackPointerInfo();
4 var stackTop = stackBottom;
6 function nearNativeStackLimit() {
7   function inner() {
8     try {
9       stackTop = stackPointerInfo();
10       // eslint-disable-next-line no-eval
11       var stepsFromLimit = eval("inner()"); // Use eval to force a number of native stackframes to be created.
12       return stepsFromLimit + 1;
13     } catch (e) {
14       // It would be nice to check here that the exception is actually an
15       // over-recursion here. But doing so would require toString()ing the
16       // exception, which we may not have the stack space to do.
17       return 1;
18     }
19   }
20   return inner();
23 var nbFrames = nearNativeStackLimit();
24 var frameSize = stackBottom - stackTop;
25 print(
26   "Max stack size:",
27   frameSize,
28   "bytes",
29   "\nMaximum number of frames:",
30   nbFrames,
31   "\nAverage frame size:",
32   Math.ceil(frameSize / nbFrames),
33   "bytes"