@@ -370,33 +370,46 @@ class DataAggregator : public DataReader {
370370 // / memory.
371371 // /
372372 // / File format syntax:
373- // / {B|F|f|T} [<start_id>:]<start_offset> [<end_id>:]<end_offset> [<ft_end>]
374- // / <count> [<mispred_count>]
373+ // / E <event>
374+ // / S <start> <count>
375+ // / T <start> <end> <ft_end> <count>
376+ // / B <start> <end> <count> <mispred_count>
377+ // / [Ff] <start> <end> <count>
375378 // /
376- // / B - indicates an aggregated branch
377- // / F - an aggregated fall-through
379+ // / where <start>, <end>, <ft_end> have the format [<id>:]<offset>
380+ // /
381+ // / E - name of the sampling event used for subsequent entries
382+ // / S - indicates an aggregated basic sample at <start>
383+ // / B - indicates an aggregated branch from <start> to <end>
384+ // / F - an aggregated fall-through from <start> to <end>
378385 // / f - an aggregated fall-through with external origin - used to disambiguate
379386 // / between a return hitting a basic block head and a regular internal
380387 // / jump to the block
381- // / T - an aggregated trace: branch with a fall-through (from, to, ft_end)
382- // /
383- // / <start_id> - build id of the object containing the start address. We can
384- // / skip it for the main binary and use "X" for an unknown object. This will
385- // / save some space and facilitate human parsing.
386- // /
387- // / <start_offset> - hex offset from the object base load address (0 for the
388- // / main executable unless it's PIE) to the start address.
388+ // / T - an aggregated trace: branch from <start> to <end> with a fall-through
389+ // / to <ft_end>
389390 // /
390- // / <end_id>, <end_offset> - same for the end address.
391+ // / <id> - build id of the object containing the address. We can skip it for
392+ // / the main binary and use "X" for an unknown object. This will save some
393+ // / space and facilitate human parsing.
391394 // /
392- // / <ft_end> - same for the fallthrough_end address.
395+ // / <offset> - hex offset from the object base load address (0 for the
396+ // / main executable unless it's PIE) to the address.
393397 // /
394- // / <count> - total aggregated count of the branch or a fall-through .
398+ // / <count> - total aggregated count.
395399 // /
396400 // / <mispred_count> - the number of times the branch was mispredicted.
397- // / Omitted for fall-throughs.
398401 // /
399402 // / Example:
403+ // / Basic samples profile:
404+ // / E cycles
405+ // / S 41be50 3
406+ // / E br_inst_retired.near_taken
407+ // / S 41be60 6
408+ // /
409+ // / Trace profile combining branches and fall-throughs:
410+ // / T 4b196f 4b19e0 4b19ef 2
411+ // /
412+ // / Legacy branch profile with separate branches and fall-throughs:
400413 // / F 41be50 41be50 3
401414 // / F 41be90 41be90 4
402415 // / B 4b1942 39b57f0 3 0
0 commit comments