Closed Bug 1128820 Opened 9 years ago Closed 9 years ago

Fix checkStackAlignment break code conflict with call c++ tag on Simulator

Categories

(Core :: JavaScript Engine: JIT, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla38
Tracking Status
firefox38 --- fixed

People

(Reporter: hev, Assigned: hev)

Details

Attachments

(1 file, 1 obsolete file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0
Build ID: 20150126171358

Steps to reproduce:

On simulator, The break instruction with max code (1023) is to emit a external call to c++ static code. So, I think should change break code to 1 for checkStackAlignment.
Attachment #8558308 - Flags: review?(branislav.rankov)
Comment on attachment 8558308 [details] [diff] [review]
0001-IonMonkey-MIPS-Fix-checkStackAlignment-break-code-co.patch

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

::: js/src/jit/mips/MacroAssembler-mips.cpp
@@ +3355,4 @@
>      Label aligned;
>      as_andi(ScratchRegister, sp, ABIStackAlignment - 1);
>      ma_b(ScratchRegister, zero, &aligned, Equal, ShortJump);
> +    as_break(1);

nit: Just add a constant for this next to MAX_BREAK_CODE. For example :
static const uint32_t BREAK_STACK_UNALIGNED = 1;
Attachment #8558308 - Flags: review?(branislav.rankov) → review+
Attachment #8558308 - Attachment is obsolete: true
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/7b8b9ef690b1
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla38
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: