Closed Bug 1620500 Opened 4 years ago Closed 4 years ago

Remove BaseScript::isLazyScript flag

Categories

(Core :: JavaScript Engine, task, P2)

task

Tracking

()

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: tcampbell, Assigned: tcampbell)

References

Details

Attachments

(4 files)

This flag was introduced to support Bug 1529456, but should be deprecated in favour of more specific feature tests (such as hasBytecode or hasEnclosingScope).

The majority of the remaining uses are in Zone::cellIter loops which should be using more specific differentiation between incomplete/hasEnclosingScript/hasEnclosingScope/hasBytecode.

Replace uses of isLazyScript (which indicates the parser that generated it)
with more specific tests like hasBytecode or hasJitScript. Also move the
hasBaselineScript and hasIonScript accessors to BaseScript.

Depends on D66876

This method indicates a BaseScript is "lazy" but has a valid enclosing scope
such that it could be compiled now. This is not true for lazy scripts with
lazy parent scripts.

Patch also cleans up the gc/PublicIterators to use this method and
hasBytecode instead of the general isLazyScript check.

Depends on D66881

Depends on D66882

Assignee: nobody → tcampbell
Status: NEW → ASSIGNED

This method was checking for a specific partially initialized state. Replace
with checks for hasBytecode() instead (which ends up checking the same
fields).

Depends on D66883

Pushed by tcampbell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/36d00c1d1a1f
Use more specific queries instead of BaseScript::isLazyScript r=jandem
https://hg.mozilla.org/integration/autoland/rev/98e520150cc8
Add BaseScript::isReadyForDelazification r=jandem
https://hg.mozilla.org/integration/autoland/rev/c8fb6eca7ad9
Remove BaseScript::IsLazyScript flag r=jandem
https://hg.mozilla.org/integration/autoland/rev/cc99b4449f14
Remove JSScript::isUncompleted() r=jandem
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: