xref: /openbmc/linux/tools/perf/scripts/perl/Perf-Trace-Util/Context.c (revision 976e3645923bdd2fe7893aae33fd7a21098bfb28)
1*1a59d1b8SThomas Gleixner // SPDX-License-Identifier: GPL-2.0-or-later
2d1b93772STom Zanussi /*
3d1b93772STom Zanussi  * This file was generated automatically by ExtUtils::ParseXS version 2.18_02 from the
4d1b93772STom Zanussi  * contents of Context.xs. Do not edit this file, edit Context.xs instead.
5d1b93772STom Zanussi  *
6d1b93772STom Zanussi  *	ANY CHANGES MADE HERE WILL BE LOST!
7d1b93772STom Zanussi  */
875e0b5f0SWang Nan #include <stdbool.h>
975e0b5f0SWang Nan #ifndef HAS_BOOL
1075e0b5f0SWang Nan # define HAS_BOOL 1
1175e0b5f0SWang Nan #endif
12d1b93772STom Zanussi #line 1 "Context.xs"
13d1b93772STom Zanussi /*
14765532c8SArnaldo Carvalho de Melo  * Context.xs.  XS interfaces for perf script.
15d1b93772STom Zanussi  *
16d1b93772STom Zanussi  * Copyright (C) 2009 Tom Zanussi <tzanussi@gmail.com>
17d1b93772STom Zanussi  */
18d1b93772STom Zanussi 
19d1b93772STom Zanussi #include "EXTERN.h"
20d1b93772STom Zanussi #include "perl.h"
21d1b93772STom Zanussi #include "XSUB.h"
227397d80dSTom Zanussi #include "../../../util/trace-event.h"
23d1b93772STom Zanussi 
24d1b93772STom Zanussi #ifndef PERL_UNUSED_VAR
25d1b93772STom Zanussi #  define PERL_UNUSED_VAR(var) if (0) var = var
26d1b93772STom Zanussi #endif
27d1b93772STom Zanussi 
287397d80dSTom Zanussi #line 42 "Context.c"
29d1b93772STom Zanussi 
3061381de0STom Zanussi XS(XS_Perf__Trace__Context_common_pc); /* prototype to pass -Wmissing-prototypes */
XS(XS_Perf__Trace__Context_common_pc)3161381de0STom Zanussi XS(XS_Perf__Trace__Context_common_pc)
32d1b93772STom Zanussi {
33d1b93772STom Zanussi #ifdef dVAR
34d1b93772STom Zanussi     dVAR; dXSARGS;
35d1b93772STom Zanussi #else
36d1b93772STom Zanussi     dXSARGS;
37d1b93772STom Zanussi #endif
38d1b93772STom Zanussi     if (items != 1)
3961381de0STom Zanussi        Perl_croak(aTHX_ "Usage: %s(%s)", "Perf::Trace::Context::common_pc", "context");
40d1b93772STom Zanussi     PERL_UNUSED_VAR(cv); /* -W */
41d1b93772STom Zanussi     {
42d1b93772STom Zanussi 	struct scripting_context *	context = INT2PTR(struct scripting_context *,SvIV(ST(0)));
43d1b93772STom Zanussi 	int	RETVAL;
44d1b93772STom Zanussi 	dXSTARG;
45d1b93772STom Zanussi 
4661381de0STom Zanussi 	RETVAL = common_pc(context);
47d1b93772STom Zanussi 	XSprePUSH; PUSHi((IV)RETVAL);
48d1b93772STom Zanussi     }
49d1b93772STom Zanussi     XSRETURN(1);
50d1b93772STom Zanussi }
51d1b93772STom Zanussi 
52d1b93772STom Zanussi 
5361381de0STom Zanussi XS(XS_Perf__Trace__Context_common_flags); /* prototype to pass -Wmissing-prototypes */
XS(XS_Perf__Trace__Context_common_flags)5461381de0STom Zanussi XS(XS_Perf__Trace__Context_common_flags)
55d1b93772STom Zanussi {
56d1b93772STom Zanussi #ifdef dVAR
57d1b93772STom Zanussi     dVAR; dXSARGS;
58d1b93772STom Zanussi #else
59d1b93772STom Zanussi     dXSARGS;
60d1b93772STom Zanussi #endif
61d1b93772STom Zanussi     if (items != 1)
6261381de0STom Zanussi        Perl_croak(aTHX_ "Usage: %s(%s)", "Perf::Trace::Context::common_flags", "context");
63d1b93772STom Zanussi     PERL_UNUSED_VAR(cv); /* -W */
64d1b93772STom Zanussi     {
65d1b93772STom Zanussi 	struct scripting_context *	context = INT2PTR(struct scripting_context *,SvIV(ST(0)));
66d1b93772STom Zanussi 	int	RETVAL;
67d1b93772STom Zanussi 	dXSTARG;
68d1b93772STom Zanussi 
6961381de0STom Zanussi 	RETVAL = common_flags(context);
70d1b93772STom Zanussi 	XSprePUSH; PUSHi((IV)RETVAL);
71d1b93772STom Zanussi     }
72d1b93772STom Zanussi     XSRETURN(1);
73d1b93772STom Zanussi }
74d1b93772STom Zanussi 
75d1b93772STom Zanussi 
7661381de0STom Zanussi XS(XS_Perf__Trace__Context_common_lock_depth); /* prototype to pass -Wmissing-prototypes */
XS(XS_Perf__Trace__Context_common_lock_depth)7761381de0STom Zanussi XS(XS_Perf__Trace__Context_common_lock_depth)
78d1b93772STom Zanussi {
79d1b93772STom Zanussi #ifdef dVAR
80d1b93772STom Zanussi     dVAR; dXSARGS;
81d1b93772STom Zanussi #else
82d1b93772STom Zanussi     dXSARGS;
83d1b93772STom Zanussi #endif
84d1b93772STom Zanussi     if (items != 1)
8561381de0STom Zanussi        Perl_croak(aTHX_ "Usage: %s(%s)", "Perf::Trace::Context::common_lock_depth", "context");
86d1b93772STom Zanussi     PERL_UNUSED_VAR(cv); /* -W */
87d1b93772STom Zanussi     {
88d1b93772STom Zanussi 	struct scripting_context *	context = INT2PTR(struct scripting_context *,SvIV(ST(0)));
89d1b93772STom Zanussi 	int	RETVAL;
90d1b93772STom Zanussi 	dXSTARG;
91d1b93772STom Zanussi 
9261381de0STom Zanussi 	RETVAL = common_lock_depth(context);
93d1b93772STom Zanussi 	XSprePUSH; PUSHi((IV)RETVAL);
94d1b93772STom Zanussi     }
95d1b93772STom Zanussi     XSRETURN(1);
96d1b93772STom Zanussi }
97d1b93772STom Zanussi 
98d1b93772STom Zanussi #ifdef __cplusplus
99d1b93772STom Zanussi extern "C"
100d1b93772STom Zanussi #endif
101d1b93772STom Zanussi XS(boot_Perf__Trace__Context); /* prototype to pass -Wmissing-prototypes */
XS(boot_Perf__Trace__Context)102d1b93772STom Zanussi XS(boot_Perf__Trace__Context)
103d1b93772STom Zanussi {
104d1b93772STom Zanussi #ifdef dVAR
105d1b93772STom Zanussi     dVAR; dXSARGS;
106d1b93772STom Zanussi #else
107d1b93772STom Zanussi     dXSARGS;
108d1b93772STom Zanussi #endif
109d1b93772STom Zanussi     const char* file = __FILE__;
110d1b93772STom Zanussi 
111d1b93772STom Zanussi     PERL_UNUSED_VAR(cv); /* -W */
112d1b93772STom Zanussi     PERL_UNUSED_VAR(items); /* -W */
113d1b93772STom Zanussi     XS_VERSION_BOOTCHECK ;
114d1b93772STom Zanussi 
11561381de0STom Zanussi         newXSproto("Perf::Trace::Context::common_pc", XS_Perf__Trace__Context_common_pc, file, "$");
11661381de0STom Zanussi         newXSproto("Perf::Trace::Context::common_flags", XS_Perf__Trace__Context_common_flags, file, "$");
11761381de0STom Zanussi         newXSproto("Perf::Trace::Context::common_lock_depth", XS_Perf__Trace__Context_common_lock_depth, file, "$");
118d1b93772STom Zanussi     if (PL_unitcheckav)
119d1b93772STom Zanussi          call_list(PL_scopestack_ix, PL_unitcheckav);
120d1b93772STom Zanussi     XSRETURN_YES;
121d1b93772STom Zanussi }
122d1b93772STom Zanussi 
123