wasm: scan globals conservatively

Make the GC globals scan phase conservative instead of precise on
WebAssembly. This reduces code size at the risk of introducing some
false positives.

This is a stopgap measure to mitigate an issue with the precise scanning
of globals that doesn't track all pointers. It works for regular globals
but globals created in the interp package don't always have a type and
therefore may be missed by the AddGlobalsBitmap pass.
The same issue is present on Linux and macOS, but is not as noticeable
there.
This commit is contained in:
Ayke van Laethem
2021-05-03 14:31:33 +02:00
committed by Ron Evans
parent ff5d0c9886
commit d1e96fd0a8
4 changed files with 10 additions and 5 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
// +build gc.conservative gc.extalloc
// +build !baremetal
// +build !baremetal,!wasm
package runtime