Closed Bug 1390802 Opened 7 years ago Closed 7 years ago

Function storeValue implement error on mips64

Categories

(Core :: JavaScript Engine: JIT, defect)

55 Branch
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox57 --- fixed

People

(Reporter: yuyin-hf, Assigned: yuyin-hf)

Details

Attachments

(1 file, 1 obsolete file)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/603.2.4 (KHTML, like Gecko) Version/10.1.1 Safari/603.2.4

Steps to reproduce:

run basic/spread-call-funapply.js with --tbpl


Actual results:

test failed


Expected results:

test pass
Component: Untriaged → JavaScript Engine: JIT
Product: Firefox → Core
when tag and store -1 (imm32).

mips64 store 0xfff8 8fff ffff ffff

tag: 0xfff88 

but it should store:

0xfff8 8000 ffff ffff
Attached patch MIPS64-Fix-storeValue.patch (obsolete) — Splinter Review
Attachment #8897795 - Flags: review?(r)
Attachment #8897795 - Flags: review?(luke)
Attachment #8897795 - Flags: review?(luke) → review+
Keywords: checkin-needed
Assignee: nobody → yuyin-hf
Please attach a patch that includes commit information.
http://mozilla-version-control-tools.readthedocs.io/en/latest/mozreview/commits.html#write-detailed-commit-messages
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Flags: needinfo?(yuyin-hf)
Keywords: checkin-needed
Flags: needinfo?(yuyin-hf)
Attachment #8898102 - Flags: review?(ryanvm)
thank you. attached.

(In reply to Ryan VanderMeulen [:RyanVM] from comment #3)
> Please attach a patch that includes commit information.
> http://mozilla-version-control-tools.readthedocs.io/en/latest/mozreview/
> commits.html#write-detailed-commit-messages
Comment on attachment 8897795 [details] [diff] [review]
MIPS64-Fix-storeValue.patch

Review of attachment 8897795 [details] [diff] [review]:
-----------------------------------------------------------------

::: js/src/jit/mips64/MacroAssembler-mips64.cpp
@@ -1858,5 @@
>      MOZ_ASSERT(dest.base != SecondScratchReg);
>  
> -    ma_li(SecondScratchReg, ImmTag(JSVAL_TYPE_TO_TAG(type)));
> -    ma_dsll(SecondScratchReg, SecondScratchReg, Imm32(JSVAL_TAG_SHIFT));
> -    ma_dins(SecondScratchReg, reg, Imm32(0), Imm32(JSVAL_TAG_SHIFT));

ma_dins(SecondScratchReg, reg, Imm32(0), Imm32((type == JSVAL_TYPE_INT32) ? 32 : JSVAL_TAG_SHIFT));
What do you think?
Attachment #8897795 - Flags: review?(r)
Attachment #8897795 - Attachment is obsolete: true
Comment on attachment 8898102 [details] [diff] [review]
0001-Bug-1390802-Fix-mips64-storeValue-function.patch

Much better, thanks :)
Attachment #8898102 - Flags: review?(ryanvm) → feedback+
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/f192dae121a0
Fix mips64 storeValue function. r=luke
https://hg.mozilla.org/mozilla-central/rev/f192dae121a0
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: