blob: fde1e80aea36b8c22925afc3fc9430a1385ddebd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
// |jit-test| skip-if: !('oomTest' in this) || helperThreadCount() === 0
let THREAD_TYPE_PARSE = 4;
// Test main thread encode/decode OOM
oomTest(function() {
let t = cacheEntry(`function f() { function g() { }; return 3; };`);
evaluate(t, { sourceIsLazy: true, saveIncrementalBytecode: true });
evaluate(t, { sourceIsLazy: true, readBytecode: true });
});
// Test helper thread decode OOM
let t = cacheEntry(`function f() { function g() { }; return 3; };`);
evaluate(t, { sourceIsLazy: true, saveIncrementalBytecode: true });
for (var i = 1; i < 100; ++i) {
try {
oomAtAllocation(i, THREAD_TYPE_PARSE);
offThreadDecodeScript(t);
runOffThreadDecodedScript();
}
catch (e) {
assertEq(e, "out of memory");
}
}
|