[svn:parrot] r39796 - branches/pmc_pct/compilers/pmcc/src/emitter

cotto at svn.parrot.org cotto at svn.parrot.org
Fri Jun 26 05:10:44 UTC 2009


Author: cotto
Date: Fri Jun 26 05:10:43 2009
New Revision: 39796
URL: https://trac.parrot.org/parrot/changeset/39796

Log:
[pmcc] clean up generated code a little, add a MULTI-related #define and function call that I previously missed

Modified:
   branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm

Modified: branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm
==============================================================================
--- branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm	Fri Jun 26 05:03:09 2009	(r39795)
+++ branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm	Fri Jun 26 05:10:43 2009	(r39796)
@@ -555,9 +555,9 @@
     @res.push('        Parrot_create_mro(interp, entry);');
 
     for self.past.methods { 
-        @res.push('    register_raw_nci_method_in_ns(interp, entry, F2DPTR(Parrot_'~self.name~'_nci_'~$_~'), CONST_STRING_GEN(interp, "'~$_~'"));');
+        @res.push('        register_raw_nci_method_in_ns(interp, entry, F2DPTR(Parrot_'~self.name~'_nci_'~$_~'), CONST_STRING_GEN(interp, "'~$_~'"));');
         if self.past.methods{$_}{'attrs'}{'write'} {
-            @res.push('    Parrot_mark_method_writes(interp, entry, "nci_'~$_~'");');
+            @res.push('        Parrot_mark_method_writes(interp, entry, "nci_'~$_~'");');
         }
     }
     @res.push('');
@@ -570,6 +570,13 @@
         @res.push('        }');
     }
 
+    if elements(self.past.multis) {
+        @res.push('#define N_MULTI_LIST (sizeof(_temp_multi_func_list)/sizeof(_temp_multi_func_list[0]))');
+        @res.push('        Parrot_mmd_add_multi_list_from_c_args(interp,');
+        @res.push('            _temp_multi_func_list, N_MULTI_LIST);');
+    }
+        
+
     @res.push('    }');
     join("\n", @res);
 }


More information about the parrot-commits mailing list