Closed
Bug 982131
Opened 11 years ago
Closed 11 years ago
OdinMonkey: GenerateFFIIonExit doesn't need to save non-volatiles
Categories
(Core :: JavaScript Engine: JIT, defect)
Core
JavaScript Engine: JIT
Tracking
()
RESOLVED
DUPLICATE
of bug 898963
People
(Reporter: luke, Assigned: bbouvier)
Details
Attachments
(1 file)
|
1.85 KB,
patch
|
luke
:
review+
|
Details | Diff | Splinter Review |
I just noticed that GenerateFFIIonExit saves non-volatile registers. Since Odin uses the same calling convention as Ion, where the callee is assumed to clobber everything, this is unnecessary.
| Assignee | ||
Comment 1•11 years ago
|
||
Seemed too easy, but all tests pass (and benchmarks too) so I assume it's good.
| Assignee | ||
Comment 2•11 years ago
|
||
Comment on attachment 8390015 [details] [diff] [review]
Patch
Wrong flag set.
Attachment #8390015 -
Flags: feedback?(luke) → review?(luke)
| Reporter | ||
Comment 3•11 years ago
|
||
Comment on attachment 8390015 [details] [diff] [review]
Patch
Thanks!
Attachment #8390015 -
Flags: review?(luke) → review+
| Assignee | ||
Comment 4•11 years ago
|
||
I've ran a try build to be sure, and I am running into issues only with the ARM simulator in debug mode.
Try all platforms, d/o (with another patch)
https://tbpl.mozilla.org/?tree=Try&rev=fb9588c5d6f4
Try ARM simulator (only this patch):
https://tbpl.mozilla.org/?tree=Try&rev=da6ef962b705
This patch only removes the push of non-volatile registers when calling from Odin into Ion.
Jandem, do you have any idea of what's going on here? Do you see a better solution than ifdef'ing the removed guilty lines?
Flags: needinfo?(jdemooij)
Comment 5•11 years ago
|
||
(In reply to Benjamin Bouvier [:bbouvier] from comment #4)
> Jandem, do you have any idea of what's going on here? Do you see a better
> solution than ifdef'ing the removed guilty lines?
Can you reproduce it locally? There's a bug somewhere that may also affect real ARM hardware (we don't run jit-tests on ARM on tbpl) and we should know what it is (ifdef'ing is sweeping it under the rug).
Flags: needinfo?(jdemooij)
Comment 6•11 years ago
|
||
Odin code has some pinned registers on the x64 and ARM that will need to be restored. The patch in bug 898963 has been updated to also avoid unnecessarily saving registers, so perhaps this could be marked as a dup or visa versa.
| Assignee | ||
Comment 7•11 years ago
|
||
(In reply to Douglas Crosher [:dougc] from comment #6)
> Odin code has some pinned registers on the x64 and ARM that will need to be
> restored. The patch in bug 898963 has been updated to also avoid
> unnecessarily saving registers, so perhaps this could be marked as a dup or
> visa versa.
Sure, patch in bug 898963 seems indeed more complete.
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•