Closed Bug 519950 Opened 15 years ago Closed 5 years ago

remove engine-internal uses of JSAutoTemp*Rooter

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: gal, Unassigned)

References

Details

We scan the native stack for reference now, so as long the value is held on the stack somewhere (or in a register), there is no need for auto temp rooters any more in most circumstances. Note that the application's stack is scanned as well if they are currently application frames on the call stack. Only heap references have to be rooted explicitly.

Igor, if you want to grab this go ahead. I think you are more qualified than me. Otherwise I will get to this in a couple days when the stack scanning patch is in.
The (len, vec) parameterized form is still needed, along with any custom trace (mark) hook rooters.

JSAutoTempIdRooter is not needed in general with the conservative stack scanning, but JSAutoIdArray is still necessary.

JSAutoEnumStateRooter is still needed for now. I hope to avoid it and over-layered object/private enumerator data structures over in bug 480297.

/be
Obsolete with the removal of tracejit.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WONTFIX
The bug is not TM-specific.
Status: RESOLVED → REOPENED
Resolution: WONTFIX → ---
Summary: TM: remove engine-internal uses of JSAutoTemp*Rooter → remove engine-internal uses of JSAutoTemp*Rooter
Assignee: general → nobody

Nothing named "JSAutoTemp*Rooter" is still present today, so closing as Invalid.

Status: REOPENED → RESOLVED
Closed: 13 years ago5 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.