summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/wasm/ref-types/tables-postbarrier-grow.js
blob: 20086e6579872f986aec0e0ca0512c7cb058b582 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Add test for issue with a post-write barrier that doesn't remove
// store buffer entries when used on a table that may grow.

let {set, table} = wasmEvalText(`(module
	(table (export "table") 1 externref)
	(func (export "set") (param externref)
		i32.const 0
		local.get 0
		table.set
	)
)`).exports;

let tenured = {};
gc(tenured);
assertEq(isNurseryAllocated(tenured), false);
let nursery = {};
assertEq(isNurseryAllocated(nursery), true);
set(nursery);
set(null);
assertEq(table.grow(1000), 1, 'table grows');
gc();