Closed Bug 1224456 Opened 9 years ago Closed 9 years ago

TraceLogger: Make TLTextIdIsToggable(uint32_t id) more consistent

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: wuwei, Assigned: wuwei)

References

Details

Attachments

(2 files)

In tracelogger, all the events belong to LOG_ITEMS are not toggable. Current implementation treats LOG_ITEMS as the same as TREE_ITEMS, which may confuses users.
Depends on: 1221844, 1223767, 1223636
Aggressive version.
Attachment #8687020 - Flags: feedback?(hv1989)
Conservative version.
Attachment #8687021 - Flags: feedback?(hv1989)
Blocks: 1224809
Attachment #8687020 - Flags: feedback?(hv1989)
Attachment #8687021 - Flags: feedback?(hv1989)
Log_items are also switchable. The log items aren't not that worked out that good yet and we don't have many of them.
But the ones that are toggable are:
- Bailout         (records every time a bailout happens, e.g. going from IonMonkey to Baseline due baked in assumption in IM)
- Invalidation    (same as bailout, but much heavier, since it also removes the IM code. This was incorrectly called an event before your patch.)
- Disable         (records every time we disable the tracelogger)
- Enable          (records every time we enable the tracelogger)

Special log items are. Only those are not toggable:
- Error
- Stop

I think you are looking at this code with only TraceLoggingGraph in your head.
- TraceLogging (in theory) doesn't make a distinction between log items and tree items. It will keep them in an incremental buffer one after the other. Where 1 item can be a log item or a tree item.
- TraceLoggingGraph makes a distinction between tree and log items. It separates the two from the TraceLogging buffer again. From the tree items it will construct a graph (with parent and children). And keep an incremental buffer for the log items.
(In reply to Hannes Verschore [:h4writer] from comment #3)
> Log_items are also switchable. The log items aren't not that worked out that
> good yet and we don't have many of them.
> But the ones that are toggable are:
> - Bailout         (records every time a bailout happens, e.g. going from
> IonMonkey to Baseline due baked in assumption in IM)
> - Invalidation    (same as bailout, but much heavier, since it also removes
> the IM code. This was incorrectly called an event before your patch.)
> - Disable         (records every time we disable the tracelogger)
> - Enable          (records every time we enable the tracelogger)
> 
> Special log items are. Only those are not toggable:
> - Error
> - Stop
> 
> I think you are looking at this code with only TraceLoggingGraph in your
> head.
> - TraceLogging (in theory) doesn't make a distinction between log items and
> tree items. It will keep them in an incremental buffer one after the other.
> Where 1 item can be a log item or a tree item.
> - TraceLoggingGraph makes a distinction between tree and log items. It
> separates the two from the TraceLogging buffer again. From the tree items it
> will construct a graph (with parent and children). And keep an incremental
> buffer for the log items.

Thank you for the explanation! It helps me a lot. :)
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: