Closed
Bug 965229
Opened 10 years ago
Closed 10 years ago
ARM simulator: scratch volatile registers across system ABI calls
Categories
(Core :: JavaScript Engine: JIT, defect)
Tracking
()
RESOLVED
FIXED
mozilla30
People
(Reporter: dougc, Assigned: dougc)
References
Details
Attachments
(1 file, 1 obsolete file)
10.48 KB,
patch
|
nbp
:
review+
|
Details | Diff | Splinter Review |
It would help detect compiler error if the simulator scratched the volatile registers across system ABI calls. Some of the calls assume that not all the registers are scratched. This is an efficiency optimization. For example calls to __aeabi_idivmod and __aeabi_uidivmod. Need to audit all calls and decide how to manage this.
Assignee | ||
Comment 1•10 years ago
|
||
Here's that patch moved from bug 959597. This is not adequate alone because it is still necessary to avoid scratching some registers for some calls.
Assignee: nobody → dtc-moz
Assignee | ||
Comment 2•10 years ago
|
||
Revised to avoid scratching the volatile float registers when calling __aeabi_idivmod or __aeabi_uidivmod because the ARM backend assumes that the float registers are not volatile across these calls - a performance optimization. Requesting review again because there were substantive changes, and I am not certain about the style.
Attachment #8367273 -
Attachment is obsolete: true
Attachment #8372770 -
Flags: review?(nicolas.b.pierron)
Updated•10 years ago
|
Attachment #8372770 -
Flags: review?(nicolas.b.pierron) → review+
Comment 3•10 years ago
|
||
(In reply to Douglas Crosher [:dougc] from comment #2) > Requesting review again because there were substantive changes, and I am not > certain about the style. The style looks good. In the previous obsolete patch, I noticed a void Foo::bar(void) { } "void" arguments are valid in C, to prevent making it a variadic function by defining a function with no arguments, but I do not think this has any meaning in C++.
Assignee | ||
Updated•10 years ago
|
Keywords: checkin-needed
Comment 4•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/f5590c1dcf70
Keywords: checkin-needed
Comment 5•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/f5590c1dcf70
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in
before you can comment on or make changes to this bug.
Description
•