Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

Perf_cnt Class Reference

#include <perf_cnt.h>

List of all members.

Public Types

typedef Mword(* Perf_read_fn )()
enum  { Max_slot = 2, Max_pmc = 4 }
enum  Unit_mask_type { None, Fixed, Exclusive, Bitmask }
enum  Perf_event_type { P5, P6, P4 }

Static Public Member Functions

static FIASCO_INIT void init ()
static void set_pmc_fn (Mword slot, Mword nr)
static int have_watchdog ()
static void setup_watchdog (Mword timeout)
static void setup_loadcnt ()
static void start_watchdog ()
static void stop_watchdog ()
static void touch_watchdog ()
static char const * perf_type ()
static int setup_pmc (Mword slot, Mword event, Mword user, Mword kern, Mword edge)
static int mode (Mword slot, const char **mode, const char **name, Mword *event, Mword *user, Mword *kern, Mword *edge)
static Mword get_max_perf_event ()
static void get_perf_event (Mword nr, unsigned *evntsel, const char **name, const char **desc)
static Mword lookup_event (unsigned evntsel)
static void get_unit_mask (Mword nr, Unit_mask_type *type, Mword *default_value, Mword *nvalues)
static void get_unit_mask_entry (Mword nr, Mword idx, Mword *value, const char **desc)
static void split_event (Mword event, unsigned *evntsel, Mword *unit_mask)
 Split event into event selector and unit mask (depending on perftype).
static void combine_event (Mword evntsel, Mword unit_mask, Mword *event)
 Combine event from selector and unit mask.

Static Public Attributes

static Perf_read_fn read_pmc [Max_slot]

Static Private Attributes

static Perf_read_fnread_pmc_fns
static Perf_read_fn read_pmc_fn [Max_slot]
static Perf_cnt_archpcnt
static char const * perf_type_str = "n/a"
static Perf_event_type perf_event_type


Member Typedef Documentation

typedef Mword(* Perf_cnt::Perf_read_fn)()
 


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
Max_slot 
Max_pmc 

enum Perf_cnt::Perf_event_type
 

Enumeration values:
P5 
P6 
P4 

enum Perf_cnt::Unit_mask_type
 

Enumeration values:
None 
Fixed 
Exclusive 
Bitmask 


Member Function Documentation

void Perf_cnt::combine_event Mword  evntsel,
Mword  unit_mask,
Mword *  event
[static]
 

Combine event from selector and unit mask.

Mword Perf_cnt::get_max_perf_event  )  [static]
 

void Perf_cnt::get_perf_event Mword  nr,
unsigned *  evntsel,
const char **  name,
const char **  desc
[static]
 

void Perf_cnt::get_unit_mask Mword  nr,
Unit_mask_type type,
Mword *  default_value,
Mword *  nvalues
[static]
 

void Perf_cnt::get_unit_mask_entry Mword  nr,
Mword  idx,
Mword *  value,
const char **  desc
[static]
 

int Perf_cnt::have_watchdog  )  [inline, static]
 

FIASCO_INIT void Perf_cnt::init  )  [static]
 

Mword Perf_cnt::lookup_event unsigned  evntsel  )  [static]
 

int Perf_cnt::mode Mword  slot,
const char **  mode,
const char **  name,
Mword *  event,
Mword *  user,
Mword *  kern,
Mword *  edge
[static]
 

char const * Perf_cnt::perf_type  )  [inline, static]
 

void Perf_cnt::set_pmc_fn Mword  slot,
Mword  nr
[inline, static]
 

void Perf_cnt::setup_loadcnt  )  [inline, static]
 

int Perf_cnt::setup_pmc Mword  slot,
Mword  event,
Mword  user,
Mword  kern,
Mword  edge
[static]
 

void Perf_cnt::setup_watchdog Mword  timeout  )  [inline, static]
 

void Perf_cnt::split_event Mword  event,
unsigned *  evntsel,
Mword *  unit_mask
[static]
 

Split event into event selector and unit mask (depending on perftype).

void Perf_cnt::start_watchdog  )  [inline, static]
 

void Perf_cnt::stop_watchdog  )  [inline, static]
 

void Perf_cnt::touch_watchdog  )  [inline, static]
 


Member Data Documentation

Perf_cnt_arch * Perf_cnt::pcnt [static, private]
 

Perf_cnt::Perf_event_type Perf_cnt::perf_event_type [static, private]
 

char const * Perf_cnt::perf_type_str = "n/a" [static, private]
 

Perf_cnt::Perf_read_fn Perf_cnt::read_pmc [static]
 

Initial value:

{ dummy_read_pmc, dummy_read_pmc }

Perf_cnt::Perf_read_fn Perf_cnt::read_pmc_fn [static, private]
 

Initial value:

{ dummy_read_pmc, dummy_read_pmc }

Perf_cnt::Perf_read_fn * Perf_cnt::read_pmc_fns [static, private]
 


The documentation for this class was generated from the following files:
Generated on Mon Sep 26 14:20:16 2005 for Fiasco by  doxygen 1.4.2