summaryrefslogtreecommitdiff
path: root/tools/perf/util/trace-event-perl.h
blob: 666a864f5dda75610bcc296bc8ea80f623b5d7d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#ifndef __PERF_TRACE_EVENT_PERL_H
#define __PERF_TRACE_EVENT_PERL_H
#ifdef NO_LIBPERL
typedef int INTERP;
#define dSP
#define ENTER
#define SAVETMPS
#define PUTBACK
#define SPAGAIN
#define FREETMPS
#define LEAVE
#define SP
#define ERRSV
#define G_SCALAR		(0)
#define G_DISCARD		(0)
#define G_NOARGS		(0)
#define PUSHMARK(a)
#define SvTRUE(a)		(0)
#define XPUSHs(s)
#define sv_2mortal(a)
#define newSVpv(a,b)
#define newSVuv(a)
#define newSViv(a)
#define get_cv(a,b)		(0)
#define call_pv(a,b)		(0)
#define perl_alloc()		(0)
#define perl_construct(a)	(0)
#define perl_parse(a,b,c,d,e)	(0)
#define perl_run(a)		(0)
#define perl_destruct(a)	(0)
#define perl_free(a)		(0)
#define pTHX			void
#define CV			void
#define dXSUB_SYS
#define pTHX_
static inline void newXS(const char *a, void *b, const char *c) {}
#else
#include <EXTERN.h>
#include <perl.h>
typedef PerlInterpreter * INTERP;
#endif

struct scripting_context {
	void *event_data;
};

int get_common_pc(struct scripting_context *context);
int get_common_flags(struct scripting_context *context);
int get_common_lock_depth(struct scripting_context *context);

#endif /* __PERF_TRACE_EVENT_PERL_H */