Open Bug 1589767 Opened 6 months ago Updated 4 months ago

[meta] Cleanup JSFunction/JSScript/LazyScript/Scope initialization sequence

Categories

(Core :: JavaScript Engine, task, P2)

task

Tracking

()

People

(Reporter: tcampbell, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: meta)

Attachments

(1 file)

The sequence of construction and the partial-initialization states of the JSFunction / JSScript / LazyScript / Scope is pretty inconsistent right now, particularly with OOM. We should try to clean this up to support Bug 1529456 and Bug 1544117.

  • Define the partial-initialization states (eg. JSFunction without a script; JSScript without SSD)
  • Identify the fields (such as LazyScript::enclosingLazyScriptOrScope_) that form cycles and explicitly document them
  • More helper methods for patching scripts into tree into the JSFunction namespace
  • Add a script tree verification helper
  • ??
Blocks: 1529456, 1544117
No longer depends on: 1529456, 1544117
Depends on: 1599936
You need to log in before you can comment on or make changes to this bug.