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

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

[dotgnu-pnet-commits] pnet ChangeLog engine/jitc_inline.c


From: Klaus Treichel
Subject: [dotgnu-pnet-commits] pnet ChangeLog engine/jitc_inline.c
Date: Sun, 21 Jan 2007 18:02:10 +0000

CVSROOT:        /cvsroot/dotgnu-pnet
Module name:    pnet
Changes by:     Klaus Treichel <ktreichel>      07/01/21 18:02:10

Modified files:
        .              : ChangeLog 
        engine         : jitc_inline.c 

Log message:
        Missed engine/jitc_inline.c

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnet/ChangeLog?cvsroot=dotgnu-pnet&r1=1.3406&r2=1.3407
http://cvs.savannah.gnu.org/viewcvs/pnet/engine/jitc_inline.c?cvsroot=dotgnu-pnet&r1=1.2&r2=1.3

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ChangeLog,v
retrieving revision 1.3406
retrieving revision 1.3407
diff -u -b -r1.3406 -r1.3407
--- ChangeLog   21 Jan 2007 17:53:29 -0000      1.3406
+++ ChangeLog   21 Jan 2007 18:02:10 -0000      1.3407
@@ -4,9 +4,10 @@
        Use this information to optimize the queuing of classes to be 
initialized.
 
        * engine/cvmc.c, engine/cvmc_call.c, engine/cvmc_setup.c, engine/jitc.c,
-       engine/jitc_call.c, engine/jitc_except.c, engine/jitc_setup.c: Set the
+       engine/jitc_call.c, engine/jitc_inline.c, engine/jitc_except.c,
        current method in the cctormanager. Move the cctor invokation from the
-       call of the method to the invokation of the method.
+       engine/jitc_setup.c: Set the call of the method to the invokation of the
+       method.
 
        * engine/jitc_array.c: Fix a deadlock if the object array for varargs or
        async delegate invokation is created and the class for the object array

Index: engine/jitc_inline.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/engine/jitc_inline.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- engine/jitc_inline.c        31 Dec 2006 19:50:41 -0000      1.2
+++ engine/jitc_inline.c        21 Jan 2007 18:02:10 -0000      1.3
@@ -240,7 +240,11 @@
 
                /* Now check if the method is allready somewhere in the 
currently */
                /* inlined methods to avoid an endless recursion. */
+       #ifdef IL_JIT_ENABLE_CCTORMGR
+               if(method == ILCCtorMgr_GetCurrentMethod(&(jitCoder->cctorMgr)))
+       #else   /* !IL_JIT_ENABLE_CCTORMGR */
                if(method == jitCoder->currentMethod)
+       #endif  /* !IL_JIT_ENABLE_CCTORMGR */
                {
                        return 0;
                }
@@ -345,6 +349,16 @@
                        return 0;
                }
 
+       #ifdef IL_JIT_ENABLE_CCTORMGR
+               /* Queue the cctor to run. */
+               if(!ILCCtorMgr_OnCallMethod(&(jitCoder->cctorMgr), method))
+               {
+                       /* Pop the new created inline context. */
+                       _ILJitCoderInlineContextPop(jitCoder);
+                       return 0;
+               }
+       #endif  /* IL_JIT_ENABLE_CCTORMGR */
+
                ILMemPoolClear(&(inlineContext->labelPool));
                inlineContext->labelList = 0;
                inlineContext->inlineMethod = method;




reply via email to

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