Closed
Bug 604035
Opened 14 years ago
Closed 11 years ago
JM: TypeInference: nop GETGLOBAL and CALLGLOBAL on known values
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: bhackett1024, Unassigned)
References
(Blocks 1 open bug)
Details
The shell testcase in bug 514765 consists primarily of a dispatch loop and functions which manipulate a few global arrays (e.g. MEM[...]). These globals are never reassigned, so the addresses of the arrays could be baked into the code and the global accesses removed. This would behave similarly to method write barriers, except that (a) no shape check on the global is needed (good for speed and robustness) (b) applies to objects other than methods, even constant primitives and (c) loading code which can change the global (e.g. through eval) triggers recompilation rather than shape change.
Benchmarks do this at least a little bit; the main benefit there is for CALLGLOBAL/CALLGNAME, which most calls in SS use and which are known singleton objects.
Reporter | ||
Updated•14 years ago
|
Blocks: TypeInference
Updated•14 years ago
|
Reporter | ||
Comment 2•11 years ago
|
||
Yes.
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: needinfo?(bhackett1024)
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•