summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorGerard Goossen <gerard@ggoossen.net>2011-06-15 11:32:53 +0200
committerFather Chrysostomos <sprout@cpan.org>2011-07-28 14:50:19 -0700
commitd164302a58430157957e90a71e7a08de7eabbc94 (patch)
treeef2c4e6757d48ab0322715c9515be6118dcd39e0 /proto.h
parent9feb131675d04c74cc7462275ae5b70055f1c4ba (diff)
downloadperl-d164302a58430157957e90a71e7a08de7eabbc94.tar.gz
Add finalize_optree function which can take over all the compile time checking/finalization now being done by the peephole optimizer.
This function takes the optree after it is finished building. It takes over some of the checking and final conversions which are currently being done by the peephole optimizer. Add the moment this is an unnecessary extra step after the peephole optimizer, but with a separate code generation step, the current peephole optimizer can't exists and this function will take over all its essential compile time functions.
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/proto.h b/proto.h
index d060f7eda3..6ddc11c7b9 100644
--- a/proto.h
+++ b/proto.h
@@ -965,6 +965,11 @@ PERL_CALLCONV I32 Perl_filter_read(pTHX_ int idx, SV *buf_sv, int maxlen)
#define PERL_ARGS_ASSERT_FILTER_READ \
assert(buf_sv)
+PERL_CALLCONV void Perl_finalize_optree(pTHX_ OP* o)
+ __attribute__nonnull__(pTHX_1);
+#define PERL_ARGS_ASSERT_FINALIZE_OPTREE \
+ assert(o)
+
PERL_CALLCONV CV* Perl_find_runcv(pTHX_ U32 *db_seqp)
__attribute__warn_unused_result__;
@@ -5484,6 +5489,11 @@ STATIC OP * S_dup_attrlist(pTHX_ OP *o)
#define PERL_ARGS_ASSERT_DUP_ATTRLIST \
assert(o)
+STATIC void S_finalize_op(pTHX_ OP* o)
+ __attribute__nonnull__(pTHX_1);
+#define PERL_ARGS_ASSERT_FINALIZE_OP \
+ assert(o)
+
STATIC void S_find_and_forget_pmops(pTHX_ OP *o)
__attribute__nonnull__(pTHX_1);
#define PERL_ARGS_ASSERT_FIND_AND_FORGET_PMOPS \