Closed
Bug 1046125
Opened 7 years ago
Closed 7 years ago
IonMonkey: (ARM) Assertion failure: tempFloat32 != InvalidFloatReg, at js/src/jit/IonCaches.cpp:3748
Categories
(Core :: JavaScript Engine: JIT, defect)
Tracking
()
RESOLVED
FIXED
mozilla34
People
(Reporter: dougc, Assigned: dougc)
Details
Attachments
(1 file, 2 obsolete files)
1.78 KB,
patch
|
dougc
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
With bug 1046016 patched, hasUnaliasedDouble() can now return false when there are only 16 DP registers, and this hits an assertion failure in the SetElementCache path.
Assignee | ||
Comment 1•7 years ago
|
||
Would this be an appropriate fix? Was the intent to avoid allocating an extra float32 register in this case?
Attachment #8464695 -
Flags: review?(mrosenberg)
Comment 2•7 years ago
|
||
Comment on attachment 8464695 [details] [diff] [review] Correct handling of 16 DP float registers in for SetElementCache code generation. Review of attachment 8464695 [details] [diff] [review]: ----------------------------------------------------------------- ::: js/src/jit/IonCaches.cpp @@ -3744,5 @@ > int width = Scalar::byteSize(arrayType); > BaseIndex target(elements, index, ScaleFromElemWidth(width)); > > if (arrayType == Scalar::Float32) { > - JS_ASSERT(tempFloat32 != InvalidFloatReg); I'd probably change this assert to JS_ASSERT_IF(hasUnaliasedDouble(), ...); and rather than checking tempFloat32 != InvalidFloatReg, just checking hasUnaliasedDouble()
Attachment #8464695 -
Flags: review?(mrosenberg) → review+
Assignee | ||
Comment 3•7 years ago
|
||
Thank you for the quick review. All suggestions have been integrated. Carrying forward the r+. Try run: https://tbpl.mozilla.org/?tree=Try&rev=f83c32358d06
Attachment #8464695 -
Attachment is obsolete: true
Attachment #8465367 -
Flags: review+
Assignee | ||
Comment 4•7 years ago
|
||
And fix the patch description. Carrying forward r+.
Attachment #8465367 -
Attachment is obsolete: true
Attachment #8465369 -
Flags: review+
Assignee | ||
Updated•7 years ago
|
Keywords: checkin-needed
Comment 5•7 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/736a5f1a92b5
Keywords: checkin-needed
Comment 6•7 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/736a5f1a92b5
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
Assignee | ||
Comment 7•7 years ago
|
||
Comment on attachment 8465369 [details] [diff] [review] Correct handling of 16 DP float registers for SetElementCache code generation. Approval Request Comment [Feature/regressing bug #]: Bug 991153. [User impact if declined]: Crashes, or bad code generation, on ARM devices without vfp3. [Describe test coverage new/current, TBPL]: Local testing, and TBPL. [Risks and why]: Low. It's a small patch that only affects the code path for the affected devices and these had jit-tests failures that this patch corrects. [String/UUID change made/needed]: n/a
Attachment #8465369 -
Flags: approval-mozilla-aurora?
Updated•7 years ago
|
status-firefox33:
--- → affected
status-firefox34:
--- → fixed
Updated•7 years ago
|
Attachment #8465369 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in
before you can comment on or make changes to this bug.
Description
•