PAPI 7.1.0.0
Loading...
Searching...
No Matches
pfmlib_pentium4_priv.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  pentium4_escr_reg_t
 
struct  pentium4_cccr_reg_t
 
struct  pentium4_replay_regs_t
 
struct  pentium4_pmc_t
 
struct  pentium4_event_mask_t
 
struct  pentium4_event_t
 

Macros

: ESCR's name

pentium4_escr_reg_t

Describe one ESCR register.

"pentium4_escrs" is a flat array of these structures that defines all the ESCRs.

@pmc: Perfmon's PMC number for this ESCR. @allowed_cccrs: Array of CCCR numbers that can be used with this ESCR. A positive value is an index into the pentium4_ccrs array. A value of -1 indicates that slot is unused.

#define MAX_CCCRS_PER_ESCR   3
 
: CCCR's name

pentium4_cccr_reg_t

Describe one CCCR register.

"pentium4_cccrs" is a flat array of these structures that defines all the CCCRs.

@pmc: Perfmon's PMC number for this CCCR @pmd: Perfmon's PMD number for the associated data counter. Every CCCR has exactly one counter. @allowed_escrs: Array of ESCR numbers that can be used with this CCCR. A positive value is an index into the pentium4_escrs array. A value of -1 indicates that slot is unused. The index into this array is the value to use in the escr_select portion of the CCCR value.

#define MAX_ESCRS_PER_CCCR   8
 
: Name

pentium4_pmc_t

Provide a mapping from PMC number to the type of control register and its index within the appropriate array.

@type: PENTIUM4_PMC_TYPE_ESCR or PENTIUM4_PMC_TYPE_CCCR @index: Index into the pentium4_escrs array or the pentium4_cccrs array.

#define PENTIUM4_PMC_TYPE_ESCR   1
 
#define PENTIUM4_PMC_TYPE_CCCR   2
 
: Event name

pentium4_event_t

Describe one event that can be counted on Pentium4/EM64T.

"pentium4_events" is a flat array of these structures that defines all possible events.

@desc: Event description @event_select: Value for the 'event_select' field in the ESCR (bits [31:25]). @escr_select: Value for the 'escr_select' field in the CCCR (bits [15:13]). @allowed_escrs: Numbers for ESCRs that can be used to count this event. A positive value is an index into the pentium4_escrs array. A value of -1 means that slot is not used. @event_masks: Array of descriptions of available masks for this event. Array elements with a NULL 'name' field are unused.

#define MAX_ESCRS_PER_EVENT   2
 

Macro Definition Documentation

◆ MAX_CCCRS_PER_ESCR

#define MAX_CCCRS_PER_ESCR   3

Definition at line 46 of file pfmlib_pentium4_priv.h.

◆ MAX_ESCRS_PER_CCCR

#define MAX_ESCRS_PER_CCCR   8

Definition at line 80 of file pfmlib_pentium4_priv.h.

◆ MAX_ESCRS_PER_EVENT

#define MAX_ESCRS_PER_EVENT   2

Definition at line 164 of file pfmlib_pentium4_priv.h.

◆ PENTIUM4_PMC_TYPE_CCCR

#define PENTIUM4_PMC_TYPE_CCCR   2

Definition at line 128 of file pfmlib_pentium4_priv.h.

◆ PENTIUM4_PMC_TYPE_ESCR

#define PENTIUM4_PMC_TYPE_ESCR   1

Definition at line 127 of file pfmlib_pentium4_priv.h.