Closed Bug 717077 Opened 13 years ago Closed 13 years ago

OSI doesn't actually work on ARM

Categories

(Core :: JavaScript Engine, defect)

ARM
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: mjrosenb, Unassigned)

Details

Attachments

(1 file)

Attached patch fix OSI on armSplinter Review
This was my bad. I mis-identified all of the OSI failures as other known failures, and didn't even bother looking into them. Problems with my implementation of OSI: the stack may be misaligned when we enter the invalidator, since on a return from JS code, the (aligned) return value is popped, and on a return from C code, the (aligned) return value is ignored. Then, the calculation of the previous frame was wrong, since it only accounted for the padding that exists on x86. Finally, I didn't distinguish the return slot from the return value of a function. This patch also fixes a typo in all three implementations that ask for three arguments, but only provide two to InvalidationBailout.
Attachment #587508 - Flags: review?(christopher.leary)
Comment on attachment 587508 [details] [diff] [review] fix OSI on arm Review of attachment 587508 [details] [diff] [review]: ----------------------------------------------------------------- ::: js/src/ion/arm/Bailouts-arm.cpp @@ +170,2 @@ > } > + public: Useless label?
Attachment #587508 - Flags: review?(christopher.leary) → review+
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: