162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * This file was generated automatically by ExtUtils::ParseXS version 2.18_02 from the
462306a36Sopenharmony_ci * contents of Context.xs. Do not edit this file, edit Context.xs instead.
562306a36Sopenharmony_ci *
662306a36Sopenharmony_ci *	ANY CHANGES MADE HERE WILL BE LOST!
762306a36Sopenharmony_ci */
862306a36Sopenharmony_ci#include <stdbool.h>
962306a36Sopenharmony_ci#ifndef HAS_BOOL
1062306a36Sopenharmony_ci# define HAS_BOOL 1
1162306a36Sopenharmony_ci#endif
1262306a36Sopenharmony_ci#line 1 "Context.xs"
1362306a36Sopenharmony_ci/*
1462306a36Sopenharmony_ci * Context.xs.  XS interfaces for perf script.
1562306a36Sopenharmony_ci *
1662306a36Sopenharmony_ci * Copyright (C) 2009 Tom Zanussi <tzanussi@gmail.com>
1762306a36Sopenharmony_ci */
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci#include "EXTERN.h"
2062306a36Sopenharmony_ci#include "perl.h"
2162306a36Sopenharmony_ci#include "XSUB.h"
2262306a36Sopenharmony_ci#include "../../../util/trace-event.h"
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci#ifndef PERL_UNUSED_VAR
2562306a36Sopenharmony_ci#  define PERL_UNUSED_VAR(var) if (0) var = var
2662306a36Sopenharmony_ci#endif
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci#line 42 "Context.c"
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ciXS(XS_Perf__Trace__Context_common_pc); /* prototype to pass -Wmissing-prototypes */
3162306a36Sopenharmony_ciXS(XS_Perf__Trace__Context_common_pc)
3262306a36Sopenharmony_ci{
3362306a36Sopenharmony_ci#ifdef dVAR
3462306a36Sopenharmony_ci    dVAR; dXSARGS;
3562306a36Sopenharmony_ci#else
3662306a36Sopenharmony_ci    dXSARGS;
3762306a36Sopenharmony_ci#endif
3862306a36Sopenharmony_ci    if (items != 1)
3962306a36Sopenharmony_ci       Perl_croak(aTHX_ "Usage: %s(%s)", "Perf::Trace::Context::common_pc", "context");
4062306a36Sopenharmony_ci    PERL_UNUSED_VAR(cv); /* -W */
4162306a36Sopenharmony_ci    {
4262306a36Sopenharmony_ci	struct scripting_context *	context = INT2PTR(struct scripting_context *,SvIV(ST(0)));
4362306a36Sopenharmony_ci	int	RETVAL;
4462306a36Sopenharmony_ci	dXSTARG;
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci	RETVAL = common_pc(context);
4762306a36Sopenharmony_ci	XSprePUSH; PUSHi((IV)RETVAL);
4862306a36Sopenharmony_ci    }
4962306a36Sopenharmony_ci    XSRETURN(1);
5062306a36Sopenharmony_ci}
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ciXS(XS_Perf__Trace__Context_common_flags); /* prototype to pass -Wmissing-prototypes */
5462306a36Sopenharmony_ciXS(XS_Perf__Trace__Context_common_flags)
5562306a36Sopenharmony_ci{
5662306a36Sopenharmony_ci#ifdef dVAR
5762306a36Sopenharmony_ci    dVAR; dXSARGS;
5862306a36Sopenharmony_ci#else
5962306a36Sopenharmony_ci    dXSARGS;
6062306a36Sopenharmony_ci#endif
6162306a36Sopenharmony_ci    if (items != 1)
6262306a36Sopenharmony_ci       Perl_croak(aTHX_ "Usage: %s(%s)", "Perf::Trace::Context::common_flags", "context");
6362306a36Sopenharmony_ci    PERL_UNUSED_VAR(cv); /* -W */
6462306a36Sopenharmony_ci    {
6562306a36Sopenharmony_ci	struct scripting_context *	context = INT2PTR(struct scripting_context *,SvIV(ST(0)));
6662306a36Sopenharmony_ci	int	RETVAL;
6762306a36Sopenharmony_ci	dXSTARG;
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci	RETVAL = common_flags(context);
7062306a36Sopenharmony_ci	XSprePUSH; PUSHi((IV)RETVAL);
7162306a36Sopenharmony_ci    }
7262306a36Sopenharmony_ci    XSRETURN(1);
7362306a36Sopenharmony_ci}
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ciXS(XS_Perf__Trace__Context_common_lock_depth); /* prototype to pass -Wmissing-prototypes */
7762306a36Sopenharmony_ciXS(XS_Perf__Trace__Context_common_lock_depth)
7862306a36Sopenharmony_ci{
7962306a36Sopenharmony_ci#ifdef dVAR
8062306a36Sopenharmony_ci    dVAR; dXSARGS;
8162306a36Sopenharmony_ci#else
8262306a36Sopenharmony_ci    dXSARGS;
8362306a36Sopenharmony_ci#endif
8462306a36Sopenharmony_ci    if (items != 1)
8562306a36Sopenharmony_ci       Perl_croak(aTHX_ "Usage: %s(%s)", "Perf::Trace::Context::common_lock_depth", "context");
8662306a36Sopenharmony_ci    PERL_UNUSED_VAR(cv); /* -W */
8762306a36Sopenharmony_ci    {
8862306a36Sopenharmony_ci	struct scripting_context *	context = INT2PTR(struct scripting_context *,SvIV(ST(0)));
8962306a36Sopenharmony_ci	int	RETVAL;
9062306a36Sopenharmony_ci	dXSTARG;
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ci	RETVAL = common_lock_depth(context);
9362306a36Sopenharmony_ci	XSprePUSH; PUSHi((IV)RETVAL);
9462306a36Sopenharmony_ci    }
9562306a36Sopenharmony_ci    XSRETURN(1);
9662306a36Sopenharmony_ci}
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ci#ifdef __cplusplus
9962306a36Sopenharmony_ciextern "C"
10062306a36Sopenharmony_ci#endif
10162306a36Sopenharmony_ciXS(boot_Perf__Trace__Context); /* prototype to pass -Wmissing-prototypes */
10262306a36Sopenharmony_ciXS(boot_Perf__Trace__Context)
10362306a36Sopenharmony_ci{
10462306a36Sopenharmony_ci#ifdef dVAR
10562306a36Sopenharmony_ci    dVAR; dXSARGS;
10662306a36Sopenharmony_ci#else
10762306a36Sopenharmony_ci    dXSARGS;
10862306a36Sopenharmony_ci#endif
10962306a36Sopenharmony_ci    const char* file = __FILE__;
11062306a36Sopenharmony_ci
11162306a36Sopenharmony_ci    PERL_UNUSED_VAR(cv); /* -W */
11262306a36Sopenharmony_ci    PERL_UNUSED_VAR(items); /* -W */
11362306a36Sopenharmony_ci    XS_VERSION_BOOTCHECK ;
11462306a36Sopenharmony_ci
11562306a36Sopenharmony_ci        newXSproto("Perf::Trace::Context::common_pc", XS_Perf__Trace__Context_common_pc, file, "$");
11662306a36Sopenharmony_ci        newXSproto("Perf::Trace::Context::common_flags", XS_Perf__Trace__Context_common_flags, file, "$");
11762306a36Sopenharmony_ci        newXSproto("Perf::Trace::Context::common_lock_depth", XS_Perf__Trace__Context_common_lock_depth, file, "$");
11862306a36Sopenharmony_ci    if (PL_unitcheckav)
11962306a36Sopenharmony_ci         call_list(PL_scopestack_ix, PL_unitcheckav);
12062306a36Sopenharmony_ci    XSRETURN_YES;
12162306a36Sopenharmony_ci}
12262306a36Sopenharmony_ci
123