perf tools: Introduce event selectors
Out of ad-hoc code and global arrays with hard coded sizes.
This is the first step on having a library that will be first
used on regression tests in the 'perf test' tool.
[acme@felicio linux]$ size /tmp/perf.before
text data bss dec hex filename
1273776 97384 5104416 6475576 62cf38 /tmp/perf.before
[acme@felicio linux]$ size /tmp/perf.new
text data bss dec hex filename
1275422 97416 1392416 2765254 2a31c6 /tmp/perf.new
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Tom Zanussi <tzanussi@gmail.com>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
56f4c40034
commit
69aad6f1ee
14 changed files with 432 additions and 244 deletions
20
tools/perf/util/xyarray.c
Normal file
20
tools/perf/util/xyarray.c
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
#include "xyarray.h"
|
||||
#include "util.h"
|
||||
|
||||
struct xyarray *xyarray__new(int xlen, int ylen, size_t entry_size)
|
||||
{
|
||||
size_t row_size = ylen * entry_size;
|
||||
struct xyarray *xy = zalloc(sizeof(*xy) + xlen * row_size);
|
||||
|
||||
if (xy != NULL) {
|
||||
xy->entry_size = entry_size;
|
||||
xy->row_size = row_size;
|
||||
}
|
||||
|
||||
return xy;
|
||||
}
|
||||
|
||||
void xyarray__delete(struct xyarray *xy)
|
||||
{
|
||||
free(xy);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue