[svn:parrot] r44690 - in branches/ops_pct/compilers/opsc: src/Ops src/Ops/Trans t
bacek at svn.parrot.org
bacek at svn.parrot.org
Sat Mar 6 11:47:37 UTC 2010
Author: bacek
Date: Sat Mar 6 11:47:36 2010
New Revision: 44690
URL: https://trac.parrot.org/parrot/changeset/44690
Log:
Add Trans.source_preamble
Modified:
branches/ops_pct/compilers/opsc/src/Ops/Emitter.pm
branches/ops_pct/compilers/opsc/src/Ops/Trans.pm
branches/ops_pct/compilers/opsc/src/Ops/Trans/C.pm
branches/ops_pct/compilers/opsc/t/06-emitter.t
Modified: branches/ops_pct/compilers/opsc/src/Ops/Emitter.pm
==============================================================================
--- branches/ops_pct/compilers/opsc/src/Ops/Emitter.pm Sat Mar 6 11:47:08 2010 (r44689)
+++ branches/ops_pct/compilers/opsc/src/Ops/Emitter.pm Sat Mar 6 11:47:36 2010 (r44690)
@@ -105,6 +105,8 @@
#END_C_2
# }
+ $fh.print(self.trans.source_preamble);
+
$fh.print(self.ops_file.preamble);
}
Modified: branches/ops_pct/compilers/opsc/src/Ops/Trans.pm
==============================================================================
--- branches/ops_pct/compilers/opsc/src/Ops/Trans.pm Sat Mar 6 11:47:08 2010 (r44689)
+++ branches/ops_pct/compilers/opsc/src/Ops/Trans.pm Sat Mar 6 11:47:36 2010 (r44690)
@@ -24,5 +24,7 @@
method defines() { die('...') }
+method source_preamble() { '' }
+
# vim: expandtab shiftwidth=4 ft=perl6:
Modified: branches/ops_pct/compilers/opsc/src/Ops/Trans/C.pm
==============================================================================
--- branches/ops_pct/compilers/opsc/src/Ops/Trans/C.pm Sat Mar 6 11:47:08 2010 (r44689)
+++ branches/ops_pct/compilers/opsc/src/Ops/Trans/C.pm Sat Mar 6 11:47:36 2010 (r44690)
@@ -72,4 +72,10 @@
}
+method source_preamble() {
+q/
+static int get_op(PARROT_INTERP, const char * name, int full);
+/
+}
+
# vim: expandtab shiftwidth=4 ft=perl6:
Modified: branches/ops_pct/compilers/opsc/t/06-emitter.t
==============================================================================
--- branches/ops_pct/compilers/opsc/t/06-emitter.t Sat Mar 6 11:47:08 2010 (r44689)
+++ branches/ops_pct/compilers/opsc/t/06-emitter.t Sat Mar 6 11:47:36 2010 (r44690)
@@ -3,7 +3,7 @@
pir::load_bytecode("compilers/opsc/opsc.pbc");
pir::load_bytecode("nqp-settings.pbc");
-plan(10);
+plan(11);
my $trans := Ops::Trans::C.new();
@@ -54,6 +54,8 @@
ok($source ~~ /Parrot_pcc_get_constants/, 'defines from Trans::C generated');
ok($source ~~ /io_private.h/, 'Preamble from io.ops preserved');
+ok($source ~~ /static \s int \s get_op/, 'Trans::C preamble generated');
+
#say($source);
# vim: expandtab shiftwidth=4 ft=perl6:
More information about the parrot-commits
mailing list