Go to the source code of this file.
◆ _papi_hwd_lock
◆ _papi_hwd_unlock
| #define _papi_hwd_unlock |
( |
|
locknum | ) |
|
Value: do { \
__asm__ volatile("lwsync": : :"memory"); \
} while(0)
volatile unsigned int lock[]
Definition at line 101 of file perfctr-ppc64.h.
◆ AI_ERROR
| #define AI_ERROR "No support for a-mode counters after adding an i-mode counter" |
◆ EVENT_INFO_FILE_ERROR
| #define EVENT_INFO_FILE_ERROR "Event info file error" |
◆ FOPEN_ERROR
| #define FOPEN_ERROR "fopen(%s) returned NULL" |
◆ GCNTRL_ERROR
| #define GCNTRL_ERROR "gperfctr_control() returned < 0" |
◆ GOPEN_ERROR
| #define GOPEN_ERROR "gperfctr_open() returned NULL" |
◆ HW_OVERFLOW
◆ hwd_pmc_control
| #define hwd_pmc_control vperfctr_control |
◆ MAX_COUNTERS
◆ MODEL_ERROR
| #define MODEL_ERROR "This is not a PowerPC" |
◆ MUTEX_LOCKED
◆ MUTEX_OPEN
◆ NUM_COUNTER_MASKS
◆ PERF_CONTROL_MASK
| #define PERF_CONTROL_MASK 0xFFFFE001 |
◆ PERF_HYPERVISOR
| #define PERF_HYPERVISOR 0x00000001 |
◆ PERF_INT_ENABLE
| #define PERF_INT_ENABLE 0x0000C000 |
◆ PERF_KERNEL
| #define PERF_KERNEL 0x40000000 |
◆ PERF_USER
| #define PERF_USER 0x20000000 |
◆ PMC1_SEL_MASK
| #define PMC1_SEL_MASK 0xFFFFF0FFUL |
◆ PMC2_SEL_MASK
| #define PMC2_SEL_MASK 0xFFFFFFE1UL |
◆ PMC3_SEL_MASK
| #define PMC3_SEL_MASK 0xFFFFFFFF87FFFFFFULL |
◆ PMC4_SEL_MASK
| #define PMC4_SEL_MASK 0xFFFFFFFFFC3FFFFFULL |
◆ PMC5_SEL_MASK
| #define PMC5_SEL_MASK 0xFFFFFFFFFFE1FFFFULL |
◆ PMC6_SEL_MASK
| #define PMC6_SEL_MASK 0xFFFFFFFFFFFF0FFFULL |
◆ PMC7_SEL_MASK
| #define PMC7_SEL_MASK 0xFFFFFFFFFFFFF87FULL |
◆ PMC8_SEL_MASK
| #define PMC8_SEL_MASK 0xFFFFFFFFFFFFFFC3ULL |
◆ PMC8a_SEL_MASK
| #define PMC8a_SEL_MASK 0xFFFDFFFFUL |
◆ PMC_OVFL
| #define PMC_OVFL 0x80000000 |
◆ RCNTRL_ERROR
| #define RCNTRL_ERROR "rvperfctr_control() returned < 0" |
◆ STATE_MAL_ERROR
| #define STATE_MAL_ERROR "Error allocating perfctr structures" |
◆ VCNTRL_ERROR
| #define VCNTRL_ERROR "vperfctr_control() returned < 0" |
◆ VINFO_ERROR
| #define VINFO_ERROR "vperfctr_info() returned < 0" |
◆ VOPEN_ERROR
| #define VOPEN_ERROR "vperfctr_open() returned NULL, please run perfex -i to verify your perfctr installation" |
◆ hwd_context_t
◆ hwd_control_state_t
◆ hwd_reg_alloc_t
◆ _papi_hwd_trylock()
| static unsigned long _papi_hwd_trylock |
( |
unsigned int * |
lock | ) |
|
|
inlinestatic |
Definition at line 83 of file perfctr-ppc64.h.
84{
85 unsigned long tmp, tmp2;
86 __asm__ volatile ( " li %1,%3\n"
87 "1: lwarx %0,0,%2\n"
88 " cmpwi 0,%0,%4\n"
89 " bne- 2f\n"
90 " stwcx. %1,0,%2\n"
91 " bne- 1b\n"
92 " isync\n" "2:":
"=&r" (
tmp ),
"=&r"( tmp2 )
94 :"cr0", "memory" );
96}
◆ perfctr_get_native_evt_info()
Definition at line 483 of file ppc64_events.c.
484{
487 if ( evt_file != NULL ) {
489 }
490 return evt_info;
491
492}
static FILE * open_file(const char *fname)
static ntv_event_info_t * parse_eventfile(FILE *evfile)
◆ perfctr_get_native_group_info()
Definition at line 495 of file ppc64_events.c.
496{
498 FILE *grp_file = NULL;
499 if ( ( grp_file =
open_file(
"groups" ) ) != NULL ) {
501 }
503}
static const pmg_power_group_t * groups
static ntv_event_group_info_t * parse_groupfile(FILE *grp_file)
◆ setup_ppc64_native_table()
| int setup_ppc64_native_table |
( |
void |
| ) |
|
◆ lock
| volatile unsigned int lock[] |
|
extern |
Definition at line 25 of file aix.c.