Simplify load/store temp registers in baseline compiler
Categories
(Core :: JavaScript: WebAssembly, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox93 | --- | fixed |
People
(Reporter: lth, Assigned: lth)
Details
Attachments
(1 file)
This is fallout from the recent cleanup of the ARM code wherein we stopped handling accesses flagged as unaligned specially. Some code was not removed but should have been, and is removed here; in turn, this reduces the needs for temp registers and the changes for that percolate into the mips64 backend too.
Assignee | ||
Comment 1•3 years ago
|
||
Remove two special cases for ARM where we tested for unaligned accesses, we do
not need to do this, as we do not treat them specially. This just created
extra register pressure.
As a result, needLoadTemps can allocate at most one temp (on MIPS), and the
load() function takes at most one temp since ARM no longer needs any temps.
So simplify all paths by removing the always-dead second and third temps.
Now needLoadTemps and needStoreTemps are MIPS-only and very simple, so
inline them in their unique callers.
Pushed by lhansen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/881b74a21041 Simplify load/store temp regs in baseline. r=jseward
Comment 3•3 years ago
|
||
bugherder |
Description
•