[svn:parrot] r44553 - in branches/ops_pct/compilers/opsc: . compiler ops t
bacek at svn.parrot.org
bacek at svn.parrot.org
Mon Mar 1 04:01:13 UTC 2010
Author: bacek
Date: Mon Mar 1 04:01:12 2010
New Revision: 44553
URL: https://trac.parrot.org/parrot/changeset/44553
Log:
Use nqp-settings. Cleanup builtins little bit
Modified:
branches/ops_pct/compilers/opsc/builtins.pir
branches/ops_pct/compilers/opsc/compiler/compiler.pm
branches/ops_pct/compilers/opsc/ops/oplib.pm
branches/ops_pct/compilers/opsc/opsc_core.pir
branches/ops_pct/compilers/opsc/t/04-oplib_parse_ops.t
Modified: branches/ops_pct/compilers/opsc/builtins.pir
==============================================================================
--- branches/ops_pct/compilers/opsc/builtins.pir Mon Mar 1 04:00:30 2010 (r44552)
+++ branches/ops_pct/compilers/opsc/builtins.pir Mon Mar 1 04:01:12 2010 (r44553)
@@ -14,29 +14,12 @@
.return ($S0)
.end
-.sub 'join'
- .param string joiner
- .param pmc args
-
- unless args goto done
- $S0 = join joiner, args
- done:
- .return ($S0)
-.end
-
.sub 'defined'
.param pmc thing
$I0 = defined thing
.return ($I0)
.end
-.sub 'exists'
- .param pmc where
- .param pmc what
- $I0 = exists where[what]
- .return ($I0)
-.end
-
.sub 'clone'
.param pmc what
$P0 = clone what
@@ -181,21 +164,11 @@
.return(retv)
.end
-.sub 'hash'
- .param pmc h :slurpy :named
- .return (h)
-.end
-
.sub 'list'
.param pmc l :slurpy
.return (l)
.end
-.sub 'say'
- .param pmc what
- say what
-.end
-
# Local Variables:
# mode: pir
# fill-column: 100
Modified: branches/ops_pct/compilers/opsc/compiler/compiler.pm
==============================================================================
--- branches/ops_pct/compilers/opsc/compiler/compiler.pm Mon Mar 1 04:00:30 2010 (r44552)
+++ branches/ops_pct/compilers/opsc/compiler/compiler.pm Mon Mar 1 04:01:12 2010 (r44553)
@@ -1,5 +1,5 @@
class Ops::Compiler is HLL::Compiler;
-
+
INIT {
Ops::Compiler.language('Ops');
Ops::Compiler.parsegrammar(Ops::Grammar);
Modified: branches/ops_pct/compilers/opsc/ops/oplib.pm
==============================================================================
--- branches/ops_pct/compilers/opsc/ops/oplib.pm Mon Mar 1 04:00:30 2010 (r44552)
+++ branches/ops_pct/compilers/opsc/ops/oplib.pm Mon Mar 1 04:01:12 2010 (r44553)
@@ -2,9 +2,8 @@
# $Id$
INIT {
- Q:PIR<
- load_bytecode "dumper.pbc"
- >
+ pir::load_bytecode("dumper.pbc");
+ pir::load_bytecode("nqp-settings.pbc");
};
class Ops::OpLib is Hash;
@@ -181,8 +180,8 @@
=end METHODS
method load_op_map_files() {
- self._load_num_file();
- self._load_skip_file();
+ self._load_num_file;
+ self._load_skip_file;
}
=begin METHODS
@@ -307,7 +306,7 @@
-method _load_num_file() {
+my method _load_num_file() {
# slurp isn't very efficient. But extending NQP beyond bare minimum is not in scope.
my $buf := slurp(self<num_file>);
grammar NUM {
@@ -331,11 +330,11 @@
my $name := ~$_<name>;
my $number := +$_<number>;
#say(@parts[0] ~ ' => ' ~@parts[1]);
- if ((+$number) eq $number) {
+ if (+$number) eq $number {
if ($prev + 1 != $number) {
die("hole in ops.num before #$number");
}
- if ( exists(self<optable>, $name) ) {
+ if self<optable>.exists($name) {
die("duplicate opcode $name and $number");
}
@@ -367,7 +366,7 @@
my $lines := SKIP.parse($buf);
for $lines<op> {
- if ( exists( self<optable>, $_<name>) ) {
+ if self<optable>.exists($_<name>) {
die("skipped opcode '$_' is also in num_file");
}
self<skiptable>{$_<name>} := 1;
Modified: branches/ops_pct/compilers/opsc/opsc_core.pir
==============================================================================
--- branches/ops_pct/compilers/opsc/opsc_core.pir Mon Mar 1 04:00:30 2010 (r44552)
+++ branches/ops_pct/compilers/opsc/opsc_core.pir Mon Mar 1 04:01:12 2010 (r44553)
@@ -4,6 +4,7 @@
.namespace [ 'Ops';'Compiler' ]
.loadlib 'PCT.pbc'
+.loadlib 'nqp-settings.pbc'
.include 'compilers/opsc/builtins.pir'
.include 'compilers/opsc/compiler/gen_grammar.pir'
Modified: branches/ops_pct/compilers/opsc/t/04-oplib_parse_ops.t
==============================================================================
--- branches/ops_pct/compilers/opsc/t/04-oplib_parse_ops.t Mon Mar 1 04:00:30 2010 (r44552)
+++ branches/ops_pct/compilers/opsc/t/04-oplib_parse_ops.t Mon Mar 1 04:01:12 2010 (r44553)
@@ -2,10 +2,7 @@
# Checking for OpLib num and skip files parsing.
-# opsc_core contains everything except nqp.pbc
-Q:PIR<
- load_bytecode "compilers/opsc/opsc_core.pbc"
->;
+pir::load_bytecode("compilers/opsc/opsc.pbc");
plan(6);
More information about the parrot-commits
mailing list