Messages in this thread | | | Subject | Re: [PATCH v7 1/7] perf/core: Define the common branch type classification | From | "Jin, Yao" <> | Date | Tue, 11 Jul 2017 20:29:21 +0800 |
| |
On 7/11/2017 8:06 PM, Peter Zijlstra wrote: > On Tue, Jul 11, 2017 at 11:00:57PM +0800, Jin Yao wrote: >> PERF_BR_NONE : unknown > I would suggest PERF_BR_UNKNOWN or PERF_BR_MISC, since PERF_BR_NONE > reads like it wasn't a branch at all.
OK, I will change it to PERF_BR_UNKNOWN.
>> PERF_BR_COND :conditional >> PERF_BR_UNCOND : unconditional >> PERF_BR_IND : indirect >> PERF_BR_CALL : function call >> PERF_BR_IND_CALL : indirect function call >> PERF_BR_RET : function return >> PERF_BR_SYSCALL : syscall >> PERF_BR_SYSRET : syscall return >> PERF_BR_COND_CALL : conditional function call >> PERF_BR_COND_RET : conditional function return >> >> The patch also adds a new field type (4 bits) in perf_branch_entry >> to record the branch type (reserve 5 for future branch types) > What's up with that 5 ? I can't see anything like that in the patch > itself:
Sorry, I don't say this clearly.
We has defined 11 branch types (from PERF_BR_UNKNOWN to PERF_BR_COND_RET), so we can define 5 new types in future.
Thanks Jin Yao
>> @@ -1024,7 +1048,8 @@ struct perf_branch_entry { >> in_tx:1, /* in transaction */ >> abort:1, /* transaction abort */ >> cycles:16, /* cycle count to last branch */ >> - reserved:44; >> + type:4, /* branch type */ >> + reserved:40; >> }; >
| |