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

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

[Dotgnu-pnet-commits] pnet/codegen cg_defs.h, 1.2, 1.3 cg_misc.tc, 1.48,


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] pnet/codegen cg_defs.h, 1.2, 1.3 cg_misc.tc, 1.48, 1.49 cg_nodes.tc, 1.83, 1.84
Date: Fri, 07 Nov 2003 01:23:57 +0000

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

Modified Files:
        cg_defs.h cg_misc.tc cg_nodes.tc 
Log Message:


Add some semantic analysis for "new X<T>(...)" expression forms.


Index: cg_nodes.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_nodes.tc,v
retrieving revision 1.83
retrieving revision 1.84
diff -C2 -d -r1.83 -r1.84
*** cg_nodes.tc 7 Nov 2003 00:12:36 -0000       1.83
--- cg_nodes.tc 7 Nov 2003 01:23:55 -0000       1.84
***************
*** 487,490 ****
--- 487,491 ----
        ILNode     *expr;
        ILType     *type;
+       int                     useCtorMethod;
  }
  

Index: cg_defs.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_defs.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** cg_defs.h   19 Jan 2002 05:51:41 -0000      1.2
--- cg_defs.h   7 Nov 2003 01:23:55 -0000       1.3
***************
*** 28,31 ****
--- 28,32 ----
  #include "il_opcodes.h"
  #include "il_system.h"
+ #include "il_dumpasm.h"
  #include <stdio.h>
  

Index: cg_misc.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_misc.tc,v
retrieving revision 1.48
retrieving revision 1.49
diff -C2 -d -r1.48 -r1.49
*** cg_misc.tc  7 Nov 2003 00:12:36 -0000       1.48
--- cg_misc.tc  7 Nov 2003 01:23:55 -0000       1.49
***************
*** 1218,1225 ****
  
                case ILMachineType_String:
-               case ILMachineType_ObjectRef:
                {
                        ILGenSimple(info, IL_OP_LDNULL);
                        ILGenAdjust(info, 1);
                }
                break;
--- 1218,1245 ----
  
                case ILMachineType_String:
                {
                        ILGenSimple(info, IL_OP_LDNULL);
                        ILGenAdjust(info, 1);
+               }
+               break;
+ 
+               case ILMachineType_ObjectRef:
+               {
+                       if(node->useCtorMethod)
+                       {
+                               if(info->asmOutput)
+                               {
+                                       fputs("\tnewobj instance void ", 
info->asmOutput);
+                                       ILDumpType(info->asmOutput, 
info->image, node->type,
+                                                          IL_DUMP_QUOTE_NAMES);
+                                       fputs("::.ctor()\n", info->asmOutput);
+                               }
+                               ILGenAdjust(info, 1);
+                       }
+                       else
+                       {
+                               ILGenSimple(info, IL_OP_LDNULL);
+                               ILGenAdjust(info, 1);
+                       }
                }
                break;





reply via email to

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