Closed Bug 1710953 Opened 4 years ago Closed 4 years ago

Prepare to remove self-hosting zone

Categories

(Core :: JavaScript Engine, task, P1)

task

Tracking

()

RESOLVED FIXED
90 Branch
Tracking Status
firefox90 --- fixed

People

(Reporter: tcampbell, Assigned: tcampbell)

References

Details

Attachments

(6 files, 1 obsolete file)

Preliminary patches for Bug 1688794. Try to simplify selfhosted.js and its parsing now.

Instead of setting the realm-behaviour on the self-hosted realm, set it on the
CompileOptions directly when parsing. This is in preparation for removal of the
self-hosted Zone. Also set NoScriptRVal at same time.

GetIntrinsic ensures that using Symbol from self-hosting always gets the
original value so std_Symbol is not helpful. Add a simple test case just to
confirm this is safe.

Depends on D115028

Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f51b573ef62b Set discard-source when compiling self-hosted source. r=arai https://hg.mozilla.org/integration/autoland/rev/0fb6461e2c53 Remove unnecessary std_Symbol variable. r=arai

Instead of forcing the FUNCTION_EXTENDED flag while cloning inner functions, we
should use the original flags. To do this we must fix an edge-case around bound
functions by using a $ prefix. The change avoids unnecessary extended function
usage and prepares us to directly instantiate from a Stencil.

Replace uses of lambdas in the top-level body of self-hosting (that is executed
at startup) in order to simplify things in future when we use Stencil for self
hosting. This adds a couple of entries to the per-global intrinsics holder only
if the Intl APIs are used but it neglible.

Depends on D115556

Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3155eaf46e9c Avoid making all cloned inner self-hosted functions extended. r=arai https://hg.mozilla.org/integration/autoland/rev/83a66cdc3906 Avoid lambdas in top-level selfhosted.js code. r=arai
Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9aa5b9559855 Use consistent names for Intl localeData methods. r=anba
Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bc35f406c576 Allow parsing without active realm. r=arai
Attachment #9223572 - Attachment is obsolete: true
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: