PAPI
7.1.0.0
Loading...
Searching...
No Matches
freebsd.h
Go to the documentation of this file.
1
/****************************/
2
/* THIS IS OPEN SOURCE CODE */
3
/****************************/
4
/*
5
* File: freebsd-libpmc.c
6
* Author: Kevin London
7
* london@cs.utk.edu
8
* Mods: Harald Servat
9
* redcrash@gmail.com
10
*/
11
12
#ifndef _PAPI_FreeBSD_H
13
#define _PAPI_FreeBSD_H
14
15
#include <stdio.h>
16
#include <stdlib.h>
17
#include <stdarg.h>
18
#include <sys/types.h>
19
#include <sys/time.h>
20
#include <sys/times.h>
21
#include <unistd.h>
22
#include <string.h>
23
#include <errno.h>
24
#include <assert.h>
25
26
#include "
papi.h
"
27
#include <pmc.h>
28
29
#include "freebsd-config.h"
30
31
#define MAX_COUNTERS HWPMC_NUM_COUNTERS
32
#define MAX_COUNTER_TERMS MAX_COUNTERS
33
34
#undef hwd_siginfo_t
35
#undef hwd_register_t
36
#undef hwd_reg_alloc_t
37
#undef hwd_control_state_t
38
#undef hwd_context_t
39
#undef hwd_libpmc_context_t
40
41
typedef
struct
hwd_siginfo {
42
int
placeholder
;
43
}
hwd_siginfo_t
;
44
45
typedef
struct
hwd_register {
46
int
placeholder
;
47
}
hwd_register_t
;
48
49
typedef
struct
hwd_reg_alloc {
50
int
placeholder
;
51
}
hwd_reg_alloc_t
;
52
53
typedef
struct
hwd_control_state {
54
int
n_counters
;
/* Number of counters */
55
int
hwc_domain
;
/* HWC domain {user|kernel} */
56
unsigned
*
caps
;
/* Capabilities for each counter */
57
pmc_id_t *
pmcs
;
/* PMC identifiers */
58
pmc_value_t *
values
;
/* Stored values for each counter */
59
char
**
counters
;
/* Name of each counter (with mode) */
60
}
hwd_control_state_t
;
61
62
typedef
struct
hwd_context {
63
int
placeholder
;
64
}
hwd_context_t
;
65
66
#include "
freebsd-context.h
"
67
68
typedef
struct
hwd_libpmc_context {
69
int
CPUtype
;
70
int
use_rdtsc
;
71
}
hwd_libpmc_context_t
;
72
73
#define _papi_hwd_lock_init() { ; }
74
75
#endif
/* _PAPI_FreeBSD_H */
freebsd-context.h
papi.h
Return codes and api definitions.
hwd_control_state_t
#define hwd_control_state_t
Definition:
papi_internal.h:107
hwd_register_t
#define hwd_register_t
Definition:
papi_internal.h:109
hwd_context_t
Definition:
freebsd.h:62
hwd_context_t::placeholder
int placeholder
Definition:
freebsd.h:63
hwd_control_state_t::n_counters
int n_counters
Definition:
freebsd.h:54
hwd_control_state_t::caps
unsigned * caps
Definition:
freebsd.h:56
hwd_control_state_t::counters
char ** counters
Definition:
freebsd.h:59
hwd_control_state_t::hwc_domain
int hwc_domain
Definition:
freebsd.h:55
hwd_control_state_t::pmcs
pmc_id_t * pmcs
Definition:
freebsd.h:57
hwd_control_state_t::values
pmc_value_t * values
Definition:
freebsd.h:58
hwd_libpmc_context_t
Definition:
freebsd.h:68
hwd_libpmc_context_t::CPUtype
int CPUtype
Definition:
freebsd.h:69
hwd_libpmc_context_t::use_rdtsc
int use_rdtsc
Definition:
freebsd.h:70
hwd_reg_alloc_t
Definition:
freebsd.h:49
hwd_reg_alloc_t::placeholder
int placeholder
Definition:
freebsd.h:50
hwd_register_t::placeholder
int placeholder
Definition:
freebsd.h:46
hwd_siginfo_t
Definition:
freebsd.h:41
hwd_siginfo_t::placeholder
int placeholder
Definition:
freebsd.h:42
src
freebsd.h
Generated on Wed Dec 20 2023 18:12:51 for PAPI by
1.9.6