deep-c-rsc/jcgo_Out/FnlzrThr.c

390 lines
10 KiB
C

/* DO NOT EDIT THIS FILE - it is machine generated (JCGO_116) */
#ifdef JCGO_SEPARATED
#define JCGO_116
#include "jcgortl.h"
#include "Main.h"
#endif
#ifdef JCGO_116
#ifdef CHKALL_java_lang_VMRuntime
#include "jcgobchk.h"
#endif
JCGO_NOSEP_STATIC java_lang_VMRuntime_FinalizerThread CFASTCALL
java_lang_VMRuntime_FinalizerThread__this__ZLsI( java_lang_VMRuntime_FinalizerThread
This, java_lang_String name, jint priority, jboolean noWait )
{
{
(java_lang_Thread__this__L40aspLsIZ((java_lang_Thread)This, (java_lang_VMThread)jnull,
name, priority, (jboolean)jtrue));
(java_lang_VMThread__rootGroupAdd__L20uxk(
(java_lang_Thread)This));
JCGO_FIELD_NZACCESS(This, noWait)= (jboolean)noWait;
}
return This;
}
JCGO_NOSEP_INLINE java_lang_VMRuntime_FinalizerThread CFASTCALL
java_lang_VMRuntime_FinalizerThread__new__ZLsI( java_lang_String name,
jint priority, jboolean noWait )
{
return java_lang_VMRuntime_FinalizerThread__this__ZLsI(
(java_lang_VMRuntime_FinalizerThread)jcgo_newObject((jvtable)&java_lang_VMRuntime_FinalizerThread_methods),
name, priority, noWait);
}
JCGO_NOSEP_INLINE void CFASTCALL
java_lang_VMRuntime_FinalizerThread__changeStalledFinalizer__( java_lang_VMRuntime_FinalizerThread
This )
{
{
jint threadNum;
{
JCGO_SYNC_BLOCKSAFENZ(java_lang_VMRuntime_FinalizerThread__lock)
{
if (JCGO_FIELD_NZACCESS(This, noWait))
{
#ifndef JCGO_SEHTRY
JCGO_SYNC_JUMPLEAVE(0);
#endif
return;
}
threadNum= ++java_lang_VMRuntime_FinalizerThread__stalledThreadCnt;
}
JCGO_SYNC_END
}
if ((java_lang_VMRuntime_FinalizerThread__createFinalizer__()))
{
java_lang_VMThread vt;
if ((vt= JCGO_VLT_LFETCH(java_lang_VMThread, JCGO_FIELD_NZACCESS(This,
vmThread))) != jnull)
{
(java_lang_VMThread__setName__Ls(
vt, (java_lang_String__concat__Ls(
JCGO_STRREF_OF(jcgo_string3_FnlzrThr), (java_lang_String__valueOf__I(
threadNum))))));
(java_lang_VMThread__setPriority__I(
vt, java_lang_Thread__MIN_PRIORITY));
}
}
}
}
JCGO_NOSEP_STATIC void CFASTCALL
java_lang_VMRuntime_FinalizerThread__run__( java_lang_VMRuntime_FinalizerThread
This )
{
{
{
JCGO_SYNC_BLOCKSAFENZ(java_lang_VMRuntime_FinalizerThread__lock)
{
JCGO_FIELD_NZACCESS(This, runFinalizeCount)= java_lang_VMRuntime_FinalizerThread__notifyCount;
}
JCGO_SYNC_END
}
do
{
{
JCGO_TRY_BLOCK
{
do
{
(java_lang_VMRuntime__runFinalization0__());
{
JCGO_SYNC_BLOCKSAFENZ(java_lang_VMRuntime_FinalizerThread__lock)
{
if (JCGO_FIELD_NZACCESS(This, noWait))
{
#ifndef JCGO_SEHTRY
JCGO_SYNC_JUMPLEAVE(0);
jcgo_tryLeave();
#endif
return;
}
if (JCGO_FIELD_NZACCESS(This, runFinalizeCount) == java_lang_VMRuntime_FinalizerThread__notifyCount)
{
(java_lang_VMThread__wait__LoJI(
(java_lang_Object)java_lang_VMRuntime_FinalizerThread__lock,
JLONG_C(0), 0));
}
JCGO_FIELD_NZACCESS(This, runFinalizeCount)= java_lang_VMRuntime_FinalizerThread__notifyCount;
}
JCGO_SYNC_END
}
}
while (jtrue);
}
JCGO_TRY_LEAVE
JCGO_TRY_CATCHES(1)
JCGO_TRY_CATCH(OBJT_java_lang_InterruptedException, MAXT_java_lang_InterruptedException)
{
}
JCGO_TRY_RETHROW(1)
}
}
while (jtrue);
}
}
JCGO_NOSEP_FRWINL jboolean CFASTCALL
java_lang_VMRuntime_FinalizerThread__runFinalization__( java_lang_VMRuntime_FinalizerThread
This )
{
{
java_lang_Thread thread;
jint threadNum;
jObject jcgo_rcvrL1;
{
JCGO_SYNC_BLOCKSAFENZ(java_lang_VMRuntime_FinalizerThread__lock)
{
threadNum= ++java_lang_VMRuntime_FinalizerThread__secondaryThreadCnt;
}
JCGO_SYNC_END
}
thread= (java_lang_Thread)(jcgo_rcvrL1= (jObject)(java_lang_String__concat__Ls(
JCGO_STRREF_OF(jcgo_string4_FnlzrThr), (java_lang_String__valueOf__I(
threadNum)))), java_lang_VMRuntime_FinalizerThread__new__ZLsI(
(java_lang_String)jcgo_rcvrL1, (java_lang_Thread__getPriority__(
(java_lang_Thread__currentThread__()))), (jboolean)jtrue));
{
JCGO_TRY_BLOCK
{
(java_lang_Thread__start__(
thread));
}
JCGO_TRY_LEAVE
JCGO_TRY_CATCHES(1)
JCGO_TRY_CATCH(OBJT_java_lang_OutOfMemoryError, MAXT_java_lang_OutOfMemoryError)
{
return (jboolean)jfalse;
}
JCGO_TRY_RETHROW(1)
}
{
JCGO_TRY_BLOCK
{
(java_lang_Thread__join__(
thread));
}
JCGO_TRY_LEAVE
JCGO_TRY_CATCHES(2)
JCGO_TRY_CATCH(OBJT_java_lang_InterruptedException, MAXT_java_lang_InterruptedException)
{
}
JCGO_TRY_RETHROW(2)
}
return (jboolean)jtrue;
}
}
JCGO_NOSEP_STATIC jboolean CFASTCALL
java_lang_VMRuntime_FinalizerThread__createFinalizer__( void )
{
{
java_lang_VMRuntime_FinalizerThread thread;
thread= (java_lang_VMRuntime_FinalizerThread__new__ZLsI(
JCGO_STRREF_OF(jcgo_string5_FnlzrThr), java_lang_Thread__MAX_PRIORITY -
(jint)1, (jboolean)jfalse));
{
JCGO_SYNC_BLOCKSAFENZ(java_lang_VMRuntime_FinalizerThread__lock)
{
java_lang_VMRuntime_FinalizerThread fnlz;
{
JCGO_TRY_BLOCK
{
(java_lang_Thread__start__(
(java_lang_Thread)thread));
}
JCGO_TRY_LEAVE
JCGO_TRY_CATCHES(1)
JCGO_TRY_CATCH(OBJT_java_lang_OutOfMemoryError, MAXT_java_lang_OutOfMemoryError)
{
#ifndef JCGO_SEHTRY
JCGO_SYNC_JUMPLEAVE(0);
#endif
return (jboolean)jfalse;
}
JCGO_TRY_RETHROW(1)
}
fnlz= java_lang_VMRuntime__finalizerThread;
java_lang_VMRuntime__finalizerThread= thread;
if (fnlz != jnull)
{
JCGO_FIELD_NZACCESS(fnlz, noWait)= (jboolean)jtrue;
}
}
JCGO_SYNC_END
}
return (jboolean)jtrue;
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
java_lang_VMRuntime_FinalizerThread__notifyFinalizer__( java_lang_VMRuntime_FinalizerThread
This )
{
{
java_lang_VMRuntime_FinalizerThread fnlz;
{
JCGO_SYNC_BLOCKSAFENZ(java_lang_VMRuntime_FinalizerThread__lock)
{
jint curNotifyCount;
curNotifyCount= ++java_lang_VMRuntime_FinalizerThread__notifyCount;
(java_lang_VMThread__notify__LoZ(
(java_lang_Object)java_lang_VMRuntime_FinalizerThread__lock, (jboolean)jtrue));
if ((fnlz= java_lang_VMRuntime__finalizerThread) == jnull || curNotifyCount -
JCGO_FIELD_NZACCESS(fnlz, runFinalizeCount) <= java_lang_VMRuntime_FinalizerThread__MAX_NOTIFY_COUNT_DELTA ||
(java_lang_Thread__currentThread__()) == (java_lang_Thread)fnlz)
{
#ifndef JCGO_SEHTRY
JCGO_SYNC_JUMPLEAVE(0);
#endif
return;
}
JCGO_FIELD_NZACCESS(fnlz, runFinalizeCount)= curNotifyCount - (jint)1;
}
JCGO_SYNC_END
}
{
JCGO_TRY_BLOCK
{
(java_lang_VMRuntime_FinalizerThread__changeStalledFinalizer__(
fnlz));
}
JCGO_TRY_LEAVE
JCGO_TRY_CATCHES(1)
JCGO_TRY_CATCH(OBJT_java_lang_OutOfMemoryError, MAXT_java_lang_OutOfMemoryError)
{
}
JCGO_TRY_RETHROW(1)
}
}
}
JCGO_NOSEP_DATA CONST struct java_lang_VMRuntime_FinalizerThread_methods_s
java_lang_VMRuntime_FinalizerThread_methods=
{
JCGO_CLASSREF_OF(java_lang_VMRuntime_FinalizerThread__class),
JCGO_GCJDESCR_INIT(java_lang_VMRuntime_FinalizerThread_s, locals)
OBJT_java_lang_VMRuntime_FinalizerThread,
(JCGO_OBJSIZE_T)sizeof(struct java_lang_VMRuntime_FinalizerThread_s),
NULL,
JCGO_CLINIT_INIT(0)
0,
java_lang_Object__equals__Lo,
java_lang_Object__hashCode__,
java_lang_Thread__toString__,
java_lang_Object__finalize__,
java_lang_VMRuntime_FinalizerThread__run__
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_VMRuntime_FinalizerThread_class_s
java_lang_VMRuntime_FinalizerThread__class JCGO_THRD_ATTRNONGC=
{
{
&java_lang_Class_methods,
JCGO_MON_INIT
JCGO_OBJREF_OF(*(java_lang_Object)&java_lang_VMRuntime_FinalizerThread_methods),
JCGO_STRREF_OF(jcgo_string1_FnlzrThr),
JCGO_CLASSREF_OF(java_lang_Thread__class),
((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
0x11a
}
};
JCGO_NOSEP_DATA jint java_lang_VMRuntime_FinalizerThread__stalledThreadCnt=
(jint)0;
JCGO_NOSEP_DATA jint java_lang_VMRuntime_FinalizerThread__secondaryThreadCnt=
(jint)0;
JCGO_NOSEP_DATA jint java_lang_VMRuntime_FinalizerThread__notifyCount=
(jint)0;
JCGO_NOSEP_DATA JCGO_NOTHR_CONST jcgo_arrtype2_GameMdl jcgo_array2_FnlzrThr
JCGO_THRD_ATTRNONGC=
{
(jvtable)&jObjectArr_methods,
JCGO_MON_INIT
0,
JCGO_CLASSREF_OF(java_lang_Object__class),
{
jnull
}
};
JCGO_NOSEP_DATA CONST jcgo_arrtype82_GmCnnctn jcgo_array6_FnlzrThr=
{
(jvtable)&jbyteArr_methods,
JCGO_MON_INIT
18,
{
(jbyte)(jchar)83/*'S'*/, (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)97/*'a'*/,
(jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)101/*'e'*/,
(jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)70/*'F'*/,
(jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)97/*'a'*/,
(jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)122/*'z'*/,
(jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)45/*'-'*/
}
};
JCGO_NOSEP_DATA CONST jcgo_arrtype23_Object jcgo_array7_FnlzrThr=
{
(jvtable)&jbyteArr_methods,
JCGO_MON_INIT
20,
{
(jbyte)(jchar)83/*'S'*/, (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)99/*'c'*/,
(jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)100/*'d'*/,
(jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)121/*'y'*/,
(jbyte)(jchar)32/*' '*/, (jbyte)(jchar)102/*'f'*/, (jbyte)(jchar)105/*'i'*/,
(jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)108/*'l'*/,
(jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)122/*'z'*/, (jbyte)(jchar)101/*'e'*/,
(jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)45/*'-'*/
}
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_FnlzrThr
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array4_VMRntm),
0, 35, (jint)0xbda65ee7L
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string3_FnlzrThr
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array6_FnlzrThr),
0, 18, (jint)0xb2c8955aL
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string4_FnlzrThr
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array7_FnlzrThr),
0, 20, (jint)0xdeb3c4e5L
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string5_FnlzrThr
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array6_FnlzrThr),
8, 9, (jint)0x8ca8c7f4L
};
#ifdef CHKALL_java_lang_VMRuntime
#include "jcgochke.h"
#endif
#endif