Closed
Bug 738300
Opened 14 years ago
Closed 7 years ago
Experiment: make wordcode the *only* interpreter
Categories
(Tamarin Graveyard :: Interpreter, defect)
Tamarin Graveyard
Interpreter
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: edwsmith, Unassigned)
References
Details
(Whiteboard: Tracking)
Attachments
(2 files)
|
616.57 KB,
patch
|
Details | Diff | Splinter Review | |
|
3.63 KB,
patch
|
Details | Diff | Splinter Review |
There are a number of potential advantages to having just one interpreter configuration (wordcode, or whatever variant it becomes)
* less builds to test
* less hair in the source code
* always translating makes evolving abc simpler
* always translating makes evolving interpreter code format simpler
* always translating simplifies annotating code with xlation time data
| Reporter | ||
Updated•14 years ago
|
Whiteboard: Tracking
| Reporter | ||
Comment 1•14 years ago
|
||
This is obviously a hacky work-in-progress.
Prior to march 2012, this patch was impeded by the JIT and wordcode interpreter's different use of MethodEnv::lookupCache. However, finddef was redesigned and the lookup cache is gone, so wordcode and jitcode can coexist.
Evicting wordcode that goes cold should be easy - free it and reset trampolines to recompile if necessary.
| Reporter | ||
Comment 2•14 years ago
|
||
Patch to try to make wordcode + JIT play nice together
* enable MS::_abc_body_pos in all configs
* remove AVMFEATURE_COMPILATION_POLICY restrictions
* remove at-most-one JIT + WORDCODE_INTERP
* remove JIT requires ABC_INTERP
problems found so far:
* OSR's apis are arranged around uint8_t* abc_pc, but wordcode typedefs
the code pointer as uintptr_t*. Either the true abc_pc needs to be a
canonical "position" value everywhere (probably) or OSR should be fixed up
to work with wordcode pointers (not likely since CodegenLIR generating code from the original abc, not wordcode).
Updated•7 years ago
|
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•