[svn:parrot] r41435 - in trunk: src tools/build

NotFound at svn.parrot.org NotFound at svn.parrot.org
Wed Sep 23 17:24:18 UTC 2009


Author: NotFound
Date: Wed Sep 23 17:24:16 2009
New Revision: 41435
URL: https://trac.parrot.org/parrot/changeset/41435

Log:
[nci] use get_nci_p also when no buildframes

Modified:
   trunk/src/frame_builder.h
   trunk/tools/build/nativecall.pl

Modified: trunk/src/frame_builder.h
==============================================================================
--- trunk/src/frame_builder.h	Wed Sep 23 15:19:43 2009	(r41434)
+++ trunk/src/frame_builder.h	Wed Sep 23 17:24:16 2009	(r41435)
@@ -79,6 +79,7 @@
 #define GET_NCI_S(n) get_nci_S(interp, &st, (n))
 #define GET_NCI_N(n) get_nci_N(interp, &st, (n))
 #define GET_NCI_P(n) get_nci_P(interp, &st, (n))
+#define GET_NCI_p(n) get_nci_p(interp, &st, (n))
 
 /*
  * set return value

Modified: trunk/tools/build/nativecall.pl
==============================================================================
--- trunk/tools/build/nativecall.pl	Wed Sep 23 15:19:43 2009	(r41434)
+++ trunk/tools/build/nativecall.pl	Wed Sep 23 17:24:16 2009	(r41435)
@@ -252,9 +252,9 @@
     local $_ = $argtype;
     my $temp_num = ${$temp_cnt_ref}++;
     /p/ && do {
-        push @{$temps_ref},          "PMC *t_$temp_num;";
-        push @{$extra_preamble_ref}, "t_$temp_num = GET_NCI_P($reg_num);";
-        return "(PMC_IS_NULL(t_$temp_num) ? NULL : VTABLE_get_pointer(interp, t_$temp_num))";
+        push @{$temps_ref},          "void *t_$temp_num;";
+        push @{$extra_preamble_ref}, "t_$temp_num = GET_NCI_p($reg_num);";
+        return "t_$temp_num";
     };
     /V/ && do {
         push @{$temps_ref},          "PMC *t_$temp_num;";


More information about the parrot-commits mailing list