Split up the baseline compiler and refactor it lightly
Categories
(Core :: JavaScript: WebAssembly, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox93 | --- | fixed |
People
(Reporter: lth, Assigned: lth)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
Yak shaving for memory64 (part 3): The baseline compiler needs to be split up and refactored a little so as to keep complexity under control when we're adding 64-bit pointers. I think this has two major parts: splitting into multiple files, and then moving some code around to centralize logic in specific files.
Assignee | ||
Comment 1•2 years ago
|
||
Every file name starts with the prefix WasmBaseline, for easy
identification. After that we have headers:
Defs -- basic configuration and a few shared definitions
Frame -- stack frame and stack map abstractions
Memory -- a few shared definitions pertaining to heap access
Object -- the compiler object itself
RegDefs -- register and register allocation abstractions
Stk -- the Stk value type
Then inline files:
Object-inl -- some inline defs for the compiler (tentative)
RegMgmt-inl -- ditto for register management
StkMgmg-inl -- almost anything that pushes or pops
Then cpp files:
Frame -- anything to do with stack frame or stack map
Memory -- virtually all code for heap access
A lot of things are still left in WasmBaselineCompile.cpp but are
slowly being moved, there will be more new files.
I'm not in love with the name "Object" for the compiler proper, but I
will not have both "Compile" and "Compiler" and the former is reserved
for the API.
Updated•2 years ago
|
Updated•2 years ago
|
Pushed by lhansen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/7a91a8befbad Split baseline compiler into multiple files. r=jseward
Comment 3•2 years ago
|
||
bugherder |
Description
•