You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It looks to me that we could get a 2 * (108459 + 61445)) / 11983692 = 2.8% reduction in frame's opcode size (and thus improve its chances of getting inlined) by creating 2 alternate versions of opcodes: dispatch_o and const_s: dispatch_o_16 and const_s_16. The only difference with their counterparts would be reserving 2 bytes for the string index, rather than 4.
In interp.c, the additions would be (I think, please correct me if I'm wrong, as my C is rusty):
As a follow up on #424:
In the core c setting, the 10 most often occurring opcodes with a string index are:
It looks to me that we could get a
2 * (108459 + 61445)) / 11983692
= 2.8% reduction in frame's opcode size (and thus improve its chances of getting inlined) by creating 2 alternate versions of opcodes:dispatch_o
andconst_s
:dispatch_o_16
andconst_s_16
. The only difference with their counterparts would be reserving 2 bytes for the string index, rather than 4.In
interp.c
, the additions would be (I think, please correct me if I'm wrong, as myC
is rusty):I guess the oplist parser would need to support a new kind of string index reference, something like "str16".
And of course the necessary changes in the MAST writing.
The text was updated successfully, but these errors were encountered: