Closed
Bug 496988
Opened 16 years ago
Closed 16 years ago
ARM JIT fails when VFP is enabled.
Categories
(Tamarin Graveyard :: Baseline JIT (CodegenLIR), defect, P1)
Tracking
(Not tracked)
VERIFIED
FIXED
flash10.1
People
(Reporter: rreitmai, Assigned: rreitmai)
Details
Attachments
(1 file)
567 bytes,
patch
|
edwsmith
:
review+
edwsmith
:
superreview+
|
Details | Diff | Splinter Review |
Enabling NJ_ARM_VFP in NativeARM.h enabled vector floating point support back end generation. When running in this mode, the jit hits asserts.
Assignee: nobody → rreitmai
Flags: flashplayer-qrb+
Priority: -- → P1
Target Milestone: --- → flash10.x
Comment 1•16 years ago
|
||
Noted that getresv() can return NULL in Assembler::freeRsrcOf() in Assembler.cpp when NJ_ARM_VFP is enabled. This causes a NULL pointer crash.
Comment 2•16 years ago
|
||
BTW, when fixing this please try to expose that setting through core/avmfeatures.as; it's the kind of thing we want to be very visible.
Assignee | ||
Comment 3•16 years ago
|
||
Tom: quick fix for this crash is to move freeRsrcOf() call into the non-vfp ifdef. The prepResultReg() in the vfp portion of code, releases the resource.
I'll post a patch with this and other fixes as I run through the rest of the test suite.
Assignee | ||
Comment 4•16 years ago
|
||
bug introduced in VFP when bug 477228 was fixed.
prepResultReg() in the VFP case clears the resources on the instruction, so freeRsrc() that was added should have been only added to non-VFP code.
Attachment #384782 -
Flags: superreview?
Assignee | ||
Updated•16 years ago
|
Attachment #384782 -
Flags: superreview? → review?(edwsmith)
Assignee | ||
Updated•16 years ago
|
Attachment #384782 -
Flags: superreview?(edwsmith)
Updated•16 years ago
|
Attachment #384782 -
Flags: superreview?(edwsmith)
Attachment #384782 -
Flags: superreview+
Attachment #384782 -
Flags: review?(edwsmith)
Attachment #384782 -
Flags: review+
Assignee | ||
Comment 5•16 years ago
|
||
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Comment 6•15 years ago
|
||
Resolved fixed engineering / work item that has been pushed. Setting status to verified.
Status: RESOLVED → VERIFIED
You need to log in
before you can comment on or make changes to this bug.
Description
•