[svn:parrot] r41652 - in branches/pcc_reapply: include/parrot src src/call
bacek at svn.parrot.org
bacek at svn.parrot.org
Sat Oct 3 23:02:18 UTC 2009
Author: bacek
Date: Sat Oct 3 23:02:17 2009
New Revision: 41652
URL: https://trac.parrot.org/parrot/changeset/41652
Log:
[cage] Remove bunch of unused functions
Modified:
branches/pcc_reapply/include/parrot/call.h
branches/pcc_reapply/include/parrot/extend.h
branches/pcc_reapply/src/call/ops.c
branches/pcc_reapply/src/frame_builder.h
Modified: branches/pcc_reapply/include/parrot/call.h
==============================================================================
--- branches/pcc_reapply/include/parrot/call.h Sat Oct 3 23:01:55 2009 (r41651)
+++ branches/pcc_reapply/include/parrot/call.h Sat Oct 3 23:02:17 2009 (r41652)
@@ -390,185 +390,6 @@
void new_runloop_jump_point(PARROT_INTERP)
__attribute__nonnull__(1);
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void * Parrot_run_meth_fromc(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- SHIM(STRING *meth))
- __attribute__nonnull__(1)
- __attribute__nonnull__(2);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void* Parrot_run_meth_fromc_arglist(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth),
- ARGIN(const char *sig),
- va_list args)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(4)
- __attribute__nonnull__(5);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL /*@alt void@*/
-Parrot_run_meth_fromc_arglist_retf(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth),
- ARGIN(const char *sig),
- va_list args)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(4)
- __attribute__nonnull__(5);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-INTVAL /*@alt void@*/
-Parrot_run_meth_fromc_arglist_reti(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth),
- ARGIN(const char *sig),
- va_list args)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(4)
- __attribute__nonnull__(5);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void* Parrot_run_meth_fromc_args(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(4)
- __attribute__nonnull__(5);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL /*@alt void@*/
-Parrot_run_meth_fromc_args_retf(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(4)
- __attribute__nonnull__(5);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-INTVAL /*@alt void@*/
-Parrot_run_meth_fromc_args_reti(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(4)
- __attribute__nonnull__(5);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CANNOT_RETURN_NULL
-PMC * Parrot_runops_fromc(PARROT_INTERP, ARGIN(PMC *sub))
- __attribute__nonnull__(1)
- __attribute__nonnull__(2);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void * Parrot_runops_fromc_arglist(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- va_list args)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL /*@alt void@*/
-Parrot_runops_fromc_arglist_retf(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- va_list args)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-INTVAL /*@alt void@*/
-Parrot_runops_fromc_arglist_reti(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- va_list args)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-PMC * Parrot_runops_fromc_args(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void * Parrot_runops_fromc_args_event(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL /*@alt void@*/
-Parrot_runops_fromc_args_retf(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-INTVAL /*@alt void@*/
-Parrot_runops_fromc_args_reti(PARROT_INTERP,
- ARGIN(PMC *sub),
- ARGIN(const char *sig),
- ...)
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- __attribute__nonnull__(3);
-
void destroy_runloop_jump_points(PARROT_INTERP)
__attribute__nonnull__(1);
@@ -582,77 +403,6 @@
PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_new_runloop_jump_point __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_run_meth_fromc __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub))
-#define ASSERT_ARGS_Parrot_run_meth_fromc_arglist __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(meth) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_run_meth_fromc_arglist_retf \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(meth) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_run_meth_fromc_arglist_reti \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(meth) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_run_meth_fromc_args __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(meth) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_run_meth_fromc_args_retf \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(meth) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_run_meth_fromc_args_reti \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(meth) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub))
-#define ASSERT_ARGS_Parrot_runops_fromc_arglist __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc_arglist_retf \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc_arglist_reti \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc_args __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc_args_event \
- __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc_args_retf __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
-#define ASSERT_ARGS_Parrot_runops_fromc_args_reti __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(sub) \
- , PARROT_ASSERT_ARG(sig))
#define ASSERT_ARGS_destroy_runloop_jump_points __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_really_destroy_runloop_jump_points \
Modified: branches/pcc_reapply/include/parrot/extend.h
==============================================================================
--- branches/pcc_reapply/include/parrot/extend.h Sat Oct 3 23:01:55 2009 (r41651)
+++ branches/pcc_reapply/include/parrot/extend.h Sat Oct 3 23:02:17 2009 (r41652)
@@ -443,6 +443,15 @@
__attribute__nonnull__(2)
__attribute__nonnull__(3);
+void append_result(PARROT_INTERP,
+ ARGIN(PMC *sig_object),
+ ARGIN(Parrot_String type),
+ ARGIN(void *result))
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2)
+ __attribute__nonnull__(3)
+ __attribute__nonnull__(4);
+
#define ASSERT_ARGS_Parrot_call_method __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(signature))
@@ -582,6 +591,11 @@
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(pio) \
, PARROT_ASSERT_ARG(s))
+#define ASSERT_ARGS_append_result __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp) \
+ , PARROT_ASSERT_ARG(sig_object) \
+ , PARROT_ASSERT_ARG(type) \
+ , PARROT_ASSERT_ARG(result))
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
/* HEADERIZER END: src/extend.c */
Modified: branches/pcc_reapply/src/call/ops.c
==============================================================================
--- branches/pcc_reapply/src/call/ops.c Sat Oct 3 23:01:55 2009 (r41651)
+++ branches/pcc_reapply/src/call/ops.c Sat Oct 3 23:02:17 2009 (r41652)
@@ -132,577 +132,6 @@
interp->current_runloop_id = old_runloop_id;
}
-/*
-
-=item C<PMC * Parrot_runops_fromc(PARROT_INTERP, PMC *sub)>
-
-Runs the Parrot ops, called from C code. The function arguments are
-already setup according to Parrot calling conventions, the C<sub> argument
-is an invocable C<Sub> PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CANNOT_RETURN_NULL
-PMC *
-Parrot_runops_fromc(PARROT_INTERP, ARGIN(PMC *sub))
-{
- ASSERT_ARGS(Parrot_runops_fromc)
- opcode_t offset, *dest;
- PMC *ctx;
-
- /* we need one return continuation with a NULL offset */
- PMC * const ret_c = new_ret_continuation_pmc(interp, NULL);
- interp->current_cont = ret_c;
-#if defined GC_VERBOSE && GC_VERBOSE
- PObj_report_SET(ret_c); /* s. also src/gc/api.c */
-#endif
- /* invoke the sub, which places the context of the sub in the
- * interpreter, and switches code segments if needed
- * Passing a dummy true destination copies registers
- */
- dest = VTABLE_invoke(interp, sub, (void*) 1);
- if (!dest)
- Parrot_ex_throw_from_c_args(interp, NULL, 1,
- "Subroutine returned a NULL address");
-
- ctx = CURRENT_CONTEXT(interp);
- offset = dest - interp->code->base.data;
- runops(interp, offset);
- return ctx;
-}
-
-
-/*
-
-=item C<static PMC * runops_args(PARROT_INTERP, PMC *sub, PMC *obj, STRING
-*meth, const char *sig, va_list ap)>
-
-Calls the PMC subroutine C<sub> with optional name C<meth>. If PMC object
-C<obj> is provided, the call is treated as a method call on that object.
-The function has a function signature C<sig> and a variadic argument list
-C<ap>.
-
-Signatures are similar to NCI:
-
- v ... void return
- I ... INTVAL (not Interpreter)
- N ... NUMVAL
- S ... STRING*
- P ... PMC*
-
-TODO: Update this list of possible signature elements.
-
-=cut
-
-*/
-
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-static PMC *
-runops_args(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- SHIM(STRING *meth), ARGIN(const char *sig), va_list ap)
-{
- ASSERT_ARGS(runops_args)
- opcode_t offset, *dest;
- PMC *ctx;
-
- char new_sig[10];
- const char *sig_p;
- PMC * const old_ctx = CURRENT_CONTEXT(interp);
-
- interp->current_cont = new_ret_continuation_pmc(interp, NULL);
- interp->current_object = obj;
- dest = VTABLE_invoke(interp, sub, NULL);
-
- if (!dest)
- Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_PARROT_USAGE_ERROR,
- "Subroutine returned a NULL address");
-
- /* The following code assumes that an empty signature is not valid,
- * check that condition and throws in that case.
- */
- if (sig[0] == '\0')
- Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_PARROT_USAGE_ERROR,
- "Invalid empty signature");
-
- if (PMC_IS_NULL(obj)) {
- /* skip over the return type */
- sig_p = sig + 1;
- }
- else if (sig[1] == 'O') {
- /* skip over the return type */
- sig_p = sig + 1;
- }
- else {
- const size_t len = strlen(sig);
- if (len > 8)
- Parrot_ex_throw_from_c_args(interp, NULL, 1,
- "too many arguments in runops_args");
-
- new_sig[0] = 'O';
- /* -1 from the end, +1 for the nul at the end */
- memcpy(new_sig+1, sig+1, len);
- sig_p = new_sig;
- }
-
- if (*sig_p && (dest[0] == PARROT_OP_get_params_pc
- || (sub->vtable->base_type == enum_class_ExceptionHandler
- && PARROT_CONTINUATION(sub)->current_results))) {
- dest = parrot_pass_args_fromc(interp, sig_p, dest, old_ctx, ap);
- }
-
- /*
- * main is now started with runops_args_fromc too
- * PASM subs usually don't have get_params
- * XXX we could check, if we are running main
- else
- Parrot_ex_throw_from_c_args(interp, NULL, EXCEPTION_INVALID_OPERATION,
- "no get_params in sub");
- */
-
- ctx = CURRENT_CONTEXT(interp);
- offset = dest - interp->code->base.data;
- runops(interp, offset);
- return ctx;
-}
-
-
-/*
-
-=item C<void * Parrot_run_meth_fromc(PARROT_INTERP, PMC *sub, PMC *obj, STRING
-*meth)>
-
-Run a method sub from C. The function arguments are
-already setup according to Parrot calling conventions, the C<sub> argument
-is an invocable C<Sub> PMC.
-
-If a PMC return value is registered it is returned.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void *
-Parrot_run_meth_fromc(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj), SHIM(STRING *meth))
-{
- ASSERT_ARGS(Parrot_run_meth_fromc)
- PMC *ctx;
- opcode_t offset, *dest;
-
- interp->current_cont = new_ret_continuation_pmc(interp, NULL);
- interp->current_object = obj;
- dest = VTABLE_invoke(interp, sub, (void *)1);
-
- if (!dest)
- Parrot_ex_throw_from_c_args(interp, NULL, 1,
- "Subroutine returned a NULL address");
-
- ctx = CURRENT_CONTEXT(interp);
- offset = dest - interp->code->base.data;
- runops(interp, offset);
- return set_retval(interp, 0, ctx);
-}
-
-/*
-
-=item C<PMC * Parrot_runops_fromc_args(PARROT_INTERP, PMC *sub, const char *sig,
-...)>
-
-Run parrot ops, called from C code, function arguments are passed as
-C<va_args> according to the signature. The C<sub> argument is an
-invocable C<Sub> PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-PMC *
-Parrot_runops_fromc_args(PARROT_INTERP, ARGIN(PMC *sub), ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_runops_fromc_args)
- va_list args;
- PMC *ctx;
- PMC *retval;
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- va_end(args);
- retval = (PMC *)set_retval(interp, *sig, ctx);
- return retval ? retval : PMCNULL;
-}
-
-/*
-
-=item C<void * Parrot_runops_fromc_args_event(PARROT_INTERP, PMC *sub, const
-char *sig, ...)>
-
-Run code from within event handlers. This variant deals with some reentrency
-issues. It also should do sanity checks, if e.g. the handler subroutine
-didn't return properly.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void *
-Parrot_runops_fromc_args_event(PARROT_INTERP, ARGIN(PMC *sub),
- ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_runops_fromc_args_event)
- va_list args;
- PMC *ctx;
- void *retval;
- /*
- * running code from event handlers isn't fully reentrant due to
- * these interpreter variables - mainly related to calls
- */
- opcode_t * const cargs = interp->current_args;
- opcode_t * const params = interp->current_params;
- opcode_t * const returns = interp->current_returns;
- PMC * const cont = interp->current_cont;
- /* what else ? */
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- va_end(args);
- retval = set_retval(interp, *sig, ctx);
-
- interp->current_args = cargs;
- interp->current_params = params;
- interp->current_returns = returns;
- interp->current_cont = cont;
- return retval;
-}
-
-/*
-
-=item C<INTVAL Parrot_runops_fromc_args_reti(PARROT_INTERP, PMC *sub, const char
-*sig, ...)>
-
-Called from C code, runs a Parrot subroutine C<sub>. The subroutine has
-function signature C<sig> and a C variadic argument list. Returns an
-C<INTVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-INTVAL
-Parrot_runops_fromc_args_reti(PARROT_INTERP, ARGIN(PMC *sub),
- ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_runops_fromc_args_reti)
- va_list args;
- PMC *ctx;
- INTVAL retval;
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- va_end(args);
- retval = set_retval_i(interp, *sig, ctx);
- return retval;
-}
-
-/*
-
-=item C<FLOATVAL Parrot_runops_fromc_args_retf(PARROT_INTERP, PMC *sub, const
-char *sig, ...)>
-
-Called from C code, runs a Parrot subroutine C<sub>. The subroutine has
-function signature C<sig> and a C variadic argument list. Returns a
-C<FLOATVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL
-Parrot_runops_fromc_args_retf(PARROT_INTERP, ARGIN(PMC *sub),
- ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_runops_fromc_args_retf)
- va_list args;
- PMC *ctx;
- FLOATVAL retval;
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- va_end(args);
- retval = set_retval_f(interp, *sig, ctx);
- return retval;
-}
-
-/*
-
-=item C<void* Parrot_run_meth_fromc_args(PARROT_INTERP, PMC *sub, PMC *obj,
-STRING *meth, const char *sig, ...)>
-
-Called from C code, runs a Parrot subroutine C<sub> as a method on object
-C<obj>. The subroutine has function signature C<sig> and a C variadic argument
-list.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void*
-Parrot_run_meth_fromc_args(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth), ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_run_meth_fromc_args)
- va_list args;
- PMC *ctx;
- void *retval;
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, obj, meth, sig, args);
- va_end(args);
- retval = set_retval(interp, *sig, ctx);
- return retval;
-}
-
-/*
-
-=item C<INTVAL Parrot_run_meth_fromc_args_reti(PARROT_INTERP, PMC *sub, PMC
-*obj, STRING *meth, const char *sig, ...)>
-
-Called from C code, runs a Parrot subroutine C<sub> as a method on object
-C<obj>. The subroutine has function signature C<sig> and a C variadic argument
-list. Returns an C<INTVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-INTVAL
-Parrot_run_meth_fromc_args_reti(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth), ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_run_meth_fromc_args_reti)
- va_list args;
- PMC *ctx;
- INTVAL retval;
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, obj, meth, sig, args);
- va_end(args);
- retval = set_retval_i(interp, *sig, ctx);
- return retval;
-}
-
-/*
-
-=item C<FLOATVAL Parrot_run_meth_fromc_args_retf(PARROT_INTERP, PMC *sub, PMC
-*obj, STRING *meth, const char *sig, ...)>
-
-Called from C code, runs a Parrot subroutine C<sub> as a method on object
-C<obj>. The subroutine has function signature C<sig> and a C variadic argument
-list C<args>. Returns a C<FLOATVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL
-Parrot_run_meth_fromc_args_retf(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth), ARGIN(const char *sig), ...)
-{
- ASSERT_ARGS(Parrot_run_meth_fromc_args_retf)
- va_list args;
- PMC *ctx;
- FLOATVAL retval;
-
- va_start(args, sig);
- ctx = runops_args(interp, sub, obj, meth, sig, args);
- va_end(args);
- retval = set_retval_f(interp, *sig, ctx);
- return retval;
-}
-
-/*
-
-=item C<void * Parrot_runops_fromc_arglist(PARROT_INTERP, PMC *sub, const char
-*sig, va_list args)>
-
-Called from C code, runs a Parrot subroutine C<sub>.
-The subroutine has function signature C<sig> and a C C<va_list>
-argument list C<args>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void *
-Parrot_runops_fromc_arglist(PARROT_INTERP, ARGIN(PMC *sub),
- ARGIN(const char *sig), va_list args)
-{
- ASSERT_ARGS(Parrot_runops_fromc_arglist)
- PMC * const ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- void * const retval = set_retval(interp, *sig, ctx);
-
- return retval;
-}
-
-/*
-
-=item C<INTVAL Parrot_runops_fromc_arglist_reti(PARROT_INTERP, PMC *sub, const
-char *sig, va_list args)>
-
-Called from C code, runs a Parrot subroutine C<sub>.
-The subroutine has function signature C<sig> and a C C<va_list>
-argument list C<args>. Returns an C<INTVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-INTVAL
-Parrot_runops_fromc_arglist_reti(PARROT_INTERP, ARGIN(PMC *sub),
- ARGIN(const char *sig), va_list args)
-{
- ASSERT_ARGS(Parrot_runops_fromc_arglist_reti)
- PMC * const ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- const INTVAL retval = set_retval_i(interp, *sig, ctx);
-
- return retval;
-}
-
-/*
-
-=item C<FLOATVAL Parrot_runops_fromc_arglist_retf(PARROT_INTERP, PMC *sub, const
-char *sig, va_list args)>
-
-Called from C code, runs a Parrot subroutine C<sub>.
-The subroutine has function signature C<sig> and a C C<va_list>
-argument list C<args>. Returns an C<FLOATVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL
-Parrot_runops_fromc_arglist_retf(PARROT_INTERP, ARGIN(PMC *sub),
- ARGIN(const char *sig), va_list args)
-{
- ASSERT_ARGS(Parrot_runops_fromc_arglist_retf)
- PMC * const ctx = runops_args(interp, sub, PMCNULL, NULL, sig, args);
- const FLOATVAL retval = set_retval_f(interp, *sig, ctx);
-
- return retval;
-}
-
-/*
-
-=item C<void* Parrot_run_meth_fromc_arglist(PARROT_INTERP, PMC *sub, PMC *obj,
-STRING *meth, const char *sig, va_list args)>
-
-Calls the subroutine C<sub> as a method on object C<obj>. The method to be
-called is named C<meth>, has the function signature C<sig> and arguments
-C<args>. C<args> is a C variadic argument list created with C<va_start>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-void*
-Parrot_run_meth_fromc_arglist(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth), ARGIN(const char *sig), va_list args)
-{
- ASSERT_ARGS(Parrot_run_meth_fromc_arglist)
- PMC * const ctx = runops_args(interp, sub, obj, meth, sig, args);
- void * const retval = set_retval(interp, *sig, ctx);
-
- return retval;
-}
-
-/*
-
-=item C<INTVAL Parrot_run_meth_fromc_arglist_reti(PARROT_INTERP, PMC *sub, PMC
-*obj, STRING *meth, const char *sig, va_list args)>
-
-Calls the subroutine C<sub> as a method on object C<obj>. The method to be
-called is named C<meth>, has the function signature C<sig> and arguments
-C<args>. C<args> is a C variadic argument list created with C<va_start>.
-Returns an C<INTVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-PARROT_CAN_RETURN_NULL
-INTVAL
-Parrot_run_meth_fromc_arglist_reti(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth), ARGIN(const char *sig), va_list args)
-{
- ASSERT_ARGS(Parrot_run_meth_fromc_arglist_reti)
- PMC * const ctx = runops_args(interp, sub, obj, meth, sig, args);
- const INTVAL retval = set_retval_i(interp, *sig, ctx);
-
- return retval;
-}
-
-/*
-
-=item C<FLOATVAL Parrot_run_meth_fromc_arglist_retf(PARROT_INTERP, PMC *sub, PMC
-*obj, STRING *meth, const char *sig, va_list args)>
-
-Calls the subroutine C<sub> as a method on object C<obj>. The method to be
-called is named C<meth>, has the function signature C<sig> and arguments
-C<args>. C<args> is a C variadic argument list created with C<va_start>.
-Returns a C<FLOATVAL>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_IGNORABLE_RESULT
-FLOATVAL
-Parrot_run_meth_fromc_arglist_retf(PARROT_INTERP, ARGIN(PMC *sub), ARGIN_NULLOK(PMC *obj),
- ARGIN(STRING *meth), ARGIN(const char *sig), va_list args)
-{
- ASSERT_ARGS(Parrot_run_meth_fromc_arglist_retf)
- PMC * const ctx = runops_args(interp, sub, obj, meth, sig, args);
- const FLOATVAL retval = set_retval_f(interp, *sig, ctx);
-
- return retval;
-}
/*
Modified: branches/pcc_reapply/src/frame_builder.h
==============================================================================
--- branches/pcc_reapply/src/frame_builder.h Sat Oct 3 23:01:55 2009 (r41651)
+++ branches/pcc_reapply/src/frame_builder.h Sat Oct 3 23:02:17 2009 (r41652)
@@ -82,17 +82,6 @@
#define GET_NCI_p(n) get_nci_p(interp, &st, (n))
/*
- * set return value
- */
-void set_nci_I(PARROT_INTERP, ARGOUT(call_state *st), INTVAL val);
-
-void set_nci_N(PARROT_INTERP, ARGOUT(call_state *st), FLOATVAL val);
-
-void set_nci_S(PARROT_INTERP, ARGOUT(call_state *st), STRING *val);
-
-void set_nci_P(PARROT_INTERP, ARGOUT(call_state *st), PMC* val);
-
-/*
* if we have a delegated method like typeof_i_p, that returns an INTVAL
* and that is all in a sequence of JITted opcodes, and when these INTVAL
* is MAPped, we got a problem. So the EXT_CALL flag is disabled - mapped
More information about the parrot-commits
mailing list