summaryrefslogblamecommitdiff
path: root/tools/perf/util/mem-events.h
blob: 0467f6775dc246cc79cefb5bda85e3b8e32a08c5 (plain) (tree)
1
2
3
4
5
6
7
8
9






                               
                                  
                             
                              
                                    









                                                                   
                                            
                                
 
                                   

                
                                                                             
                                                                             
                                                                              

                                                                              
                                
#ifndef __PERF_MEM_EVENTS_H
#define __PERF_MEM_EVENTS_H

#include <stdbool.h>

struct perf_mem_event {
	bool		record;
	bool		supported;
	const char	*tag;
	const char	*name;
	const char	*sysfs_name;
};

enum {
	PERF_MEM_EVENTS__LOAD,
	PERF_MEM_EVENTS__STORE,
	PERF_MEM_EVENTS__MAX,
};

extern struct perf_mem_event perf_mem_events[PERF_MEM_EVENTS__MAX];

int perf_mem_events__parse(const char *str);
int perf_mem_events__init(void);

char *perf_mem_events__name(int i);

struct mem_info;
int perf_mem__tlb_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
int perf_mem__lvl_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
void perf_mem__snp_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
void perf_mem__lck_scnprintf(char *out, size_t sz, struct mem_info *mem_info);

#endif /* __PERF_MEM_EVENTS_H */