dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnet/codegen cg_stmt.tc,1.33,1.34 cg_output.


From: Gopal.V <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/codegen cg_stmt.tc,1.33,1.34 cg_output.c,1.22,1.23
Date: Fri, 20 Dec 2002 11:32:53 -0500

Update of /cvsroot/dotgnu-pnet/pnet/codegen
In directory subversions:/tmp/cvs-serv24592/codegen

Modified Files:
        cg_stmt.tc cg_output.c 
Log Message:
Remove the "br_or_leave" virtual opcode for "leave" which seems to work
well enough


Index: cg_stmt.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_stmt.tc,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -r1.33 -r1.34
*** cg_stmt.tc  2 Dec 2002 15:06:26 -0000       1.33
--- cg_stmt.tc  20 Dec 2002 16:32:51 -0000      1.34
***************
*** 1349,1358 ****
        {
                /* The label is not yet defined and there is a "try"
!                  block in force.  We must use a pseudo-instruction
!                  called "br_or_leave" which will be fixed up by the
!                  assembler once we know if we are crossing a "try"
!                  block boundary or not */
                entry->scopeLevel = info->scopeLevel;
!               ILGenBrOrLeaveJump(info, &(entry->label));
        }
  }
--- 1349,1359 ----
        {
                /* The label is not yet defined and there is a "try"
!                  block in force.  We must use a the "leave" instruction
!                  to allow if we are crossing a "try" block boundary .
!                  Otherwise it does not make much of a difference because
!                  "leave" is like "br" for this case inside try cases
!                  as well. */
                entry->scopeLevel = info->scopeLevel;
!               ILGenJump(info, IL_OP_LEAVE, &(entry->label));
        }
  }

Index: cg_output.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_output.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -r1.22 -r1.23
*** cg_output.c 21 Jun 2002 06:46:27 -0000      1.22
--- cg_output.c 20 Dec 2002 16:32:51 -0000      1.23
***************
*** 227,242 ****
  }
  
- void ILGenBrOrLeaveJump(ILGenInfo *info, ILLabel *label)
- {
-       if(*label == ILLabel_Undefined)
-       {
-               *label = (info->nextLabel)++;
-       }
-       if(info->asmOutput)
-       {
-               fprintf(info->asmOutput, "\tbr_or_leave\t?L%lu\n", *label);
-       }
- }
- 
  void ILGenLabel(ILGenInfo *info, ILLabel *label)
  {
--- 227,230 ----




reply via email to

[Prev in Thread] Current Thread [Next in Thread]