This commit skips the safety checks of AutoAssertNoGc for the duration of host calls where the types involved are statically known to not perform any GCs (e.g. integers and floats). This helps recover some performance loss from indirect calls made on entry/exit of an AutoAssertNoGc scope when the gc feature is enabled in Wasmtime.
This commit skips the safety checks of
AutoAssertNoGc
for the duration of host calls where the types involved are statically known to not perform any GCs (e.g. integers and floats). This helps recover some performance loss from indirect calls made on entry/exit of anAutoAssertNoGc
scope when thegc
feature is enabled in Wasmtime.This is in reference to this discussion