cvsuser     04/03/20 01:15:39

  Modified:    imcc     parser_util.c reg_alloc.c
               src      packfile.c
  Log:
  * treat a plain invoke as call
  * print correct funtion name
  * trace into @LOAD bytecode too
  
  Revision  Changes    Path
  1.62      +4 -0      parrot/imcc/parser_util.c
  
  Index: parser_util.c
  ===================================================================
  RCS file: /cvs/public/parrot/imcc/parser_util.c,v
  retrieving revision 1.61
  retrieving revision 1.62
  diff -u -w -r1.61 -r1.62
  --- parser_util.c     15 Mar 2004 13:16:08 -0000      1.61
  +++ parser_util.c     20 Mar 2004 09:15:35 -0000      1.62
  @@ -361,6 +361,10 @@
                   strlen(r1->name) - 2);
               Parrot_load_lib(interpreter, lib, NULL);
           }
  +        else if (!strcmp(name, "invoke")) {
  +            if (cur_unit->type == IMC_PCCSUB)
  +                cur_unit->instructions->r[1]->pcc_sub->calls_a_sub = 1;
  +        }
           /* set up branch flags */
           if (op_info->jump) {
   
  
  
  
  1.8       +1 -0      parrot/imcc/reg_alloc.c
  
  Index: reg_alloc.c
  ===================================================================
  RCS file: /cvs/public/parrot/imcc/reg_alloc.c,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -w -r1.7 -r1.8
  --- reg_alloc.c       14 Mar 2004 12:18:25 -0000      1.7
  +++ reg_alloc.c       20 Mar 2004 09:15:35 -0000      1.8
  @@ -87,6 +87,7 @@
       }
   #endif
   
  +    function = unit->instructions->r[0]->name;
       debug(interpreter, DEBUG_IMC, "\n------------------------\n");
       debug(interpreter, DEBUG_IMC, "processing sub %s\n", function);
       debug(interpreter, DEBUG_IMC, "------------------------\n\n");
  
  
  
  1.156     +2 -1      parrot/src/packfile.c
  
  Index: packfile.c
  ===================================================================
  RCS file: /cvs/public/parrot/src/packfile.c,v
  retrieving revision 1.155
  retrieving revision 1.156
  diff -u -w -r1.155 -r1.156
  --- packfile.c        17 Mar 2004 08:54:41 -0000      1.155
  +++ packfile.c        20 Mar 2004 09:15:39 -0000      1.156
  @@ -2,7 +2,7 @@
   Copyright (C) 2001-2002 Gregor N. Purdy. All rights reserved.
   This program is free software. It is subject to the same license as
   Parrot itself.
  -$Id: packfile.c,v 1.155 2004/03/17 08:54:41 leo Exp $
  +$Id: packfile.c,v 1.156 2004/03/20 09:15:39 leo Exp $
   
   =head1 NAME
   
  @@ -249,6 +249,7 @@
        */
       if (interpreter->run_core != PARROT_SWITCH_CORE &&
           interpreter->run_core != PARROT_CGOTO_CORE  &&
  +        interpreter->run_core != PARROT_SLOW_CORE  &&
           interpreter->run_core != PARROT_FAST_CORE)
           interpreter->run_core = PARROT_FAST_CORE;
       Parrot_runops_fromc_save(interpreter, sub_pmc);
  
  
  

Reply via email to