#include <stdlib.h>
#include <limits.h>
#include <ctype.h>
#include <string.h>
#include <unistd.h>
#include <sys/syscall.h>
#include <linux/perf_event.h>
#include "perf_constants.h"
#include "perf_skid.h"
#include "perf_event_open.h"
Go to the source code of this file.
◆ DELIMITER_HOWOFTEN
#define DELIMITER_HOWOFTEN '@' |
◆ HPCRUN_OPTION_PRECISE_IP
#define HPCRUN_OPTION_PRECISE_IP "HPCRUN_PRECISE_IP" |
◆ PRECISE_IP_CHAR_MODIFIER
#define PRECISE_IP_CHAR_MODIFIER 'p' |
◆ PRECISE_IP_MAX_SUFFIX
#define PRECISE_IP_MAX_SUFFIX ":P" |
◆ PRECISE_IP_SUFFIX
#define PRECISE_IP_SUFFIX ":p" |
◆ find_precise_suffix()
static const char* find_precise_suffix |
( |
const char * |
s, |
|
|
const char * |
suffix, |
|
|
char |
allowed |
|
) |
| |
|
static |
◆ getEnvLong()
static long getEnvLong |
( |
const char * |
env_var, |
|
|
long |
default_value |
|
) |
| |
|
static |
◆ perf_skid_get_precise_ip()
u64 perf_skid_get_precise_ip |
( |
struct perf_event_attr * |
attr | ) |
|
◆ perf_skid_parse_event()
int perf_skid_parse_event |
( |
const char * |
event_string, |
|
|
char ** |
event_string_without_skidmarks |
|
) |
| |
◆ perf_skid_set_max_precise_ip()
int perf_skid_set_max_precise_ip |
( |
struct perf_event_attr * |
attr | ) |
|
set precise_ip attribute to the max value
TODO: this method only works on some platforms, and not general enough on all the platforms.
Definition at line 176 of file perf_skid.c.
◆ strlaststr()
static char* strlaststr |
( |
const char * |
haystack, |
|
|
const char * |
needle |
|
) |
| |
|
static |
◆ perf_skid_flavors
◆ perf_skid_precision
const int perf_skid_precision[] |
Initial value:= {
}
#define PERF_EVENT_SKID_ZERO_REQUIRED
#define PERF_EVENT_SKID_CONSTANT
#define PERF_EVENT_SKID_ARBITRARY
#define PERF_EVENT_SKID_ZERO_REQUESTED
Definition at line 91 of file perf_skid.c.