WebAssembly: custom IC for call_indirect
https://bugs.webkit.org/show_bug.cgi?id=166442
Summary WebAssembly: custom IC for call_indirect
JF Bastien
Reported 2016-12-22 16:15:08 PST
call_indirect does a bunch of things when trying to figure out what it needs to call. This is required because it could be calling another Instance, so it needs to save / restore things from VM, and its pinned registers, and stuff. We think many call_indirect will just be internal calls stemming from C function pointers or C++ vtables, and will be the same across all Instances of a Module. In that circumstance, the dance is much simpler: single entry IC, check that the target is this value, and if so we know it's internal and no need to dance. Just Call. Gonna be OK. Let's do it! I'll leave a FIXME for this in B3 callIndirect codegen.
Attachments
Note You need to log in before you can comment on or make changes to this bug.