BaselineCompiler: Use correct scope chain for global scripts

RESOLVED FIXED

Status

()

Core
JavaScript Engine
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: jandem, Assigned: jandem)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

5 years ago
Created attachment 714381 [details] [diff] [review]
Patch

Right now we use script->global() as scope chain, like IonMonkey, but I think this is only valid for compile-and-go scripts (Ion does not compile these). The browser has some code to execute global scripts with other objects as scope chain, and this bug breaks M-Oth on TBPL.

The attached patch just passes the scope chain to EnterJIT, like we already do for eval scripts.
Attachment #714381 - Flags: review?(kvijayan)
(Assignee)

Comment 1

5 years ago
(In reply to Jan de Mooij [:jandem] from comment #0)
> only valid for compile-and-go scripts (Ion does not compile
> these).

Er, Ion compiles *only* CNG scripts.
Comment on attachment 714381 [details] [diff] [review]
Patch

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

Great that you went through and changed all the names to reflect the new semantics too.
Attachment #714381 - Flags: review?(kvijayan) → review+
(Assignee)

Comment 3

5 years ago
https://hg.mozilla.org/projects/ionmonkey/rev/f3e499d59399
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.