Closed Bug 557375 Opened 15 years ago Closed 15 years ago

remove JSStackFrame::thisv

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 539144

People

(Reporter: luke, Unassigned)

References

Details

If fp->argv == null (global code), thisv caches the computed 'this' value. If fp->argv != null (function code), thisv holds a copy of argv[-1]. thisv also roots the 'obj' parameter to slow natives (in case the slow native overwrites argv[-1]. We could remove this JSStackFrame member by (1) always having argv[-1] refer to a valid jsval and (2) using a AutoValueRooter to root the 'obj' parameter to slow natives. This would save one jsval which, with bug 549143, is getting much fatter.
Blocks: 557378
There is also the case where stack frames share the same argv because of an obj_eval. However, bug 539144 aims at cloning arguments in this case.
Depends on: 539144
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.