Simplify and speed up exact tracing by generating precise slot information

NEW
Unassigned

Status

P3
normal
8 years ago
7 years ago

People

(Reporter: lhansen, Unassigned)

Tracking

(Blocks: 1 bug)

unspecified
Q1 12 - Brannan
x86
Mac OS X
Bug Flags:
flashplayer-injection -
flashplayer-qrb +
flashplayer-bug -

Details

(Reporter)

Description

8 years ago
Currently the tracer uses the Traits::m_slotDestroyInfo data structure to know which slots to scan.  However, that data structure is partial: it does not contain information about slots in native classes.  As a consequence, each native class must override gcTrace(), call the generated trace function in the native-slots structure, then call up to its base class, and so on.  If the destroyInfo contained information about all slots we could potentially avoid generating any tracer functions for the native slots.  This might save us a little code size, and - depending on code generation - save us some time.

Comment 1

8 years ago
If we use destroy info to clean up we need to make sure the smart pointer write barrier decls on the generated slots go away and we go back to naked decls with manual write barriers so we don't do double clean up duty.
(Reporter)

Updated

8 years ago
Priority: -- → P4
Target Milestone: --- → flash10.x-Serrano
(Reporter)

Updated

8 years ago
Priority: P4 → P3
Target Milestone: Q3 11 - Serrano → Q1 12 - Brannan
(Reporter)

Updated

7 years ago
Assignee: lhansen → nobody
Status: ASSIGNED → NEW

Updated

7 years ago
Flags: flashplayer-qrb+
Flags: flashplayer-injection-
Flags: flashplayer-bug-
You need to log in before you can comment on or make changes to this bug.