[vmkit-commits] [vmkit] r61495 - in /vmkit/trunk: include/mvm/Threads/Thread.h lib/JnJVM/Classpath/ClasspathConstructor.cpp lib/JnJVM/Classpath/ClasspathMethod.cpp lib/JnJVM/Classpath/ClasspathVMClass.cpp lib/JnJVM/Classpath/ClasspathVMThread.cpp lib/JnJVM/VMCore/JavaRuntimeJIT.cpp lib/JnJVM/VMCore/JavaThread.h lib/JnJVM/VMCore/Jni.cpp lib/JnJVM/VMCore/Jnjvm.cpp lib/Mvm/GCMmap2/gccollector.cpp lib/N3/VMCore/CLIRuntimeJIT.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Tue Dec 30 06:23:29 PST 2008
Author: geoffray
Date: Tue Dec 30 08:23:26 2008
New Revision: 61495
URL: http://llvm.org/viewvc/llvm-project?rev=61495&view=rev
Log:
Code cleanup: make static functions in JavaThread and mvm::Thread
instance functions.
Modified:
vmkit/trunk/include/mvm/Threads/Thread.h
vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp
vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp
vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp
vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h
vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp
vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
vmkit/trunk/lib/Mvm/GCMmap2/gccollector.cpp
vmkit/trunk/lib/N3/VMCore/CLIRuntimeJIT.cpp
Modified: vmkit/trunk/include/mvm/Threads/Thread.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/Threads/Thread.h?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/include/mvm/Threads/Thread.h (original)
+++ vmkit/trunk/include/mvm/Threads/Thread.h Tue Dec 30 08:23:26 2008
@@ -168,9 +168,8 @@
/// clearException - Clear any pending exception of the current thread.
- static void clearException() {
- Thread* th = Thread::get();
- th->internalClearException();
+ void clearException() {
+ internalClearException();
}
/// IDMask - Apply this mask to the stack pointer to get the Thread object.
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp Tue Dec 30 08:23:26 2008
@@ -120,11 +120,12 @@
}
JavaObject* excp = 0;
+ JavaThread* th = JavaThread::get();
try {
meth->invokeIntSpecialBuf(vm, cl, obj, startBuf);
}catch(...) {
- excp = JavaThread::getJavaException();
- JavaThread::clearException();
+ excp = th->getJavaException();
+ th->clearException();
}
if (excp) {
if (excp->classOf->isAssignableFrom(vm->upcalls->newException)) {
@@ -133,7 +134,7 @@
vm->invocationTargetException(excp);
} else {
// If it's an error, throw it again.
- JavaThread::throwException(excp);
+ th->throwException(excp);
}
}
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp Tue Dec 30 08:23:26 2008
@@ -155,6 +155,7 @@
}
JavaObject* exc = 0;
+ JavaThread* th = JavaThread::get();
#define RUN_METH(TYPE) \
try{ \
@@ -169,16 +170,16 @@
val = meth->invoke##TYPE##StaticBuf(vm, cl, _buf); \
} \
}catch(...) { \
- exc = JavaThread::getJavaException(); \
+ exc = th->getJavaException(); \
assert(exc && "no exception?"); \
- JavaThread::clearException(); \
+ th->clearException(); \
} \
\
if (exc) { \
if (exc->classOf->isAssignableFrom(vm->upcalls->newException)) { \
- JavaThread::get()->getJVM()->invocationTargetException(exc); \
+ th->getJVM()->invocationTargetException(exc); \
} else { \
- JavaThread::throwException(exc); \
+ th->throwException(exc); \
} \
} \
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp Tue Dec 30 08:23:26 2008
@@ -494,7 +494,7 @@
jclass clazz,
#endif
jobject throwable) {
- JavaThread::throwException((JavaObject*)throwable);
+ JavaThread::get()->throwException((JavaObject*)throwable);
}
JNIEXPORT jobjectArray Java_java_lang_VMClass_getDeclaredAnnotations(
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp Tue Dec 30 08:23:26 2008
@@ -29,7 +29,7 @@
jclass clazz
#endif
) {
- return (jobject)(JavaThread::currentThread());
+ return (jobject)(JavaThread::get()->currentThread());
}
static void start(JavaThread* thread) {
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp Tue Dec 30 08:23:26 2008
@@ -394,27 +394,27 @@
// Never throws.
extern "C" void* JavaThreadGetException() {
- return JavaThread::getException();
+ return JavaThread::get()->getException();
}
// Never throws.
extern "C" JavaObject* JavaThreadGetJavaException() {
- return JavaThread::getJavaException();
+ return JavaThread::get()->getJavaException();
}
// Does not call any Java code.
extern "C" void JavaThreadThrowException(JavaObject* obj) {
- return JavaThread::throwException(obj);
+ return JavaThread::get()->throwException(obj);
}
// Never throws.
extern "C" bool JavaThreadCompareException(UserClass* cl) {
- return JavaThread::compareException(cl);
+ return JavaThread::get()->compareException(cl);
}
// Never throws.
extern "C" void JavaThreadClearException() {
- return JavaThread::clearException();
+ return JavaThread::get()->clearException();
}
// Never throws.
@@ -426,66 +426,71 @@
extern "C" void jnjvmNullPointerException() {
JavaObject *exc = 0;
+ JavaThread *th = JavaThread::get();
BEGIN_NATIVE_EXCEPTION(1)
- exc = JavaThread::get()->getJVM()->CreateNullPointerException();
+ exc = th->getJVM()->CreateNullPointerException();
END_NATIVE_EXCEPTION
- JavaThread::throwException(exc);
+ th->throwException(exc);
}
// Creates a Java object and then throws it.
extern "C" void negativeArraySizeException(sint32 val) {
JavaObject *exc = 0;
+ JavaThread *th = JavaThread::get();
BEGIN_NATIVE_EXCEPTION(1)
- exc = JavaThread::get()->getJVM()->CreateNegativeArraySizeException();
+ exc = th->getJVM()->CreateNegativeArraySizeException();
END_NATIVE_EXCEPTION
- JavaThread::throwException(exc);
+ th->throwException(exc);
}
// Creates a Java object and then throws it.
extern "C" void outOfMemoryError(sint32 val) {
JavaObject *exc = 0;
+ JavaThread *th = JavaThread::get();
BEGIN_NATIVE_EXCEPTION(1)
- exc = JavaThread::get()->getJVM()->CreateOutOfMemoryError();
+ exc = th->getJVM()->CreateOutOfMemoryError();
END_NATIVE_EXCEPTION
- JavaThread::throwException(exc);
+ th->throwException(exc);
}
// Creates a Java object and then throws it.
extern "C" void jnjvmClassCastException(JavaObject* obj, UserCommonClass* cl) {
JavaObject *exc = 0;
+ JavaThread *th = JavaThread::get();
BEGIN_NATIVE_EXCEPTION(1)
- exc = JavaThread::get()->getJVM()->CreateClassCastException(obj, cl);
+ exc = th->getJVM()->CreateClassCastException(obj, cl);
END_NATIVE_EXCEPTION
- JavaThread::throwException(exc);
+ th->throwException(exc);
}
// Creates a Java object and then throws it.
extern "C" void indexOutOfBoundsException(JavaObject* obj, sint32 index) {
JavaObject *exc = 0;
+ JavaThread *th = JavaThread::get();
BEGIN_NATIVE_EXCEPTION(1)
- exc = JavaThread::get()->getJVM()->CreateIndexOutOfBoundsException(index);
+ exc = th->getJVM()->CreateIndexOutOfBoundsException(index);
END_NATIVE_EXCEPTION
- JavaThread::throwException(exc);
+ th->throwException(exc);
}
extern "C" void printMethodStart(JavaMethod* meth) {
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h Tue Dec 30 08:23:26 2008
@@ -150,7 +150,7 @@
/// currentThread - Return the current thread as a Java object.
///
- static JavaObject* currentThread() {
+ JavaObject* currentThread() {
JavaThread* result = get();
if (result != 0)
return result->javaThread;
@@ -160,7 +160,7 @@
/// getException - Return the C++ specific exception object.
///
- static void* getException() {
+ void* getException() {
// 32 = sizeof(_Unwind_Exception) in libgcc...
return (void*)
((uintptr_t)JavaThread::get()->internalPendingException - 32);
@@ -168,17 +168,17 @@
/// throwException - Throw the given exception in the current thread.
///
- static void throwException(JavaObject* obj);
+ void throwException(JavaObject* obj);
/// throwPendingException - Throw a pending exception created by JNI.
///
- static void throwPendingException();
+ void throwPendingException();
/// compareException - Compare the pending exception's class with the
/// given class.
///
- static bool compareException(UserClass* cl) {
- JavaObject* pe = JavaThread::get()->pendingException;
+ bool compareException(UserClass* cl) {
+ JavaObject* pe = pendingException;
assert(pe && "no pending exception?");
bool val = pe->classOf->subclassOf(cl);
return val;
@@ -186,8 +186,8 @@
/// getJavaException - Return the pending exception.
///
- static JavaObject* getJavaException() {
- return JavaThread::get()->pendingException;
+ JavaObject* getJavaException() {
+ return pendingException;
}
/// throwFromJNI - Throw an exception after executing JNI code.
Modified: vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp Tue Dec 30 08:23:26 2008
@@ -2560,8 +2560,9 @@
BEGIN_JNI_EXCEPTION
- JavaObject* th = JavaThread::currentThread();
- Jnjvm* myvm = JavaThread::get()->getJVM();
+ JavaThread* _th = JavaThread::get();
+ JavaObject* th = _th->currentThread();
+ Jnjvm* myvm = _th->getJVM();
if (th != 0) {
(*env) = &(myvm->jniEnv);
return JNI_OK;
Modified: vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp Tue Dec 30 08:23:26 2008
@@ -74,7 +74,7 @@
// current thread can obtain the lock for that object
// (Java specification §8.13).
acquire();
- mvm::Thread* self = mvm::Thread::get();
+ JavaThread* self = JavaThread::get();
if (getInitializationState() == inClinit) {
// 2. If initialization by some other thread is in progress for the
@@ -147,9 +147,9 @@
try {
super->initialiseClass(vm);
} catch(...) {
- exc = JavaThread::getJavaException();
+ exc = self->getJavaException();
assert(exc && "no exception?");
- JavaThread::clearException();
+ self->clearException();
}
if (exc) {
@@ -158,7 +158,7 @@
setOwnerClass(0);
broadcastClass();
release();
- JavaThread::throwException(exc);
+ self->throwException(exc);
}
}
@@ -196,9 +196,9 @@
try{
meth->invokeIntStatic(vm, cl);
} catch(...) {
- exc = JavaThread::getJavaException();
+ exc = self->getJavaException();
assert(exc && "no exception?");
- JavaThread::clearException();
+ self->clearException();
}
}
#ifdef SERVICE
@@ -228,7 +228,7 @@
if (exc->classOf->isAssignableFrom(vm->upcalls->newException)) {
Classpath* upcalls = classLoader->bootstrapLoader->upcalls;
UserClass* clExcp = upcalls->ExceptionInInitializerError;
- Jnjvm* vm = JavaThread::get()->getJVM();
+ Jnjvm* vm = self->getJVM();
JavaObject* obj = clExcp->doNew(vm);
if (!obj) {
fprintf(stderr, "implement me");
@@ -247,7 +247,7 @@
setOwnerClass(0);
broadcastClass();
release();
- JavaThread::throwException(exc);
+ self->throwException(exc);
}
}
@@ -255,7 +255,7 @@
const JavaObject* excp) {
JavaObject* obj = cl->doNew(this);
init->invokeIntSpecial(this, cl, obj, excp);
- JavaThread::throwException(obj);
+ JavaThread::get()->throwException(obj);
}
JavaObject* Jnjvm::CreateError(UserClass* cl, JavaMethod* init,
@@ -274,7 +274,7 @@
if (cl && !bootstrapLoader->getModule()->isStaticCompiling()) {
JavaObject* obj = CreateError(cl, init, tmp);
- JavaThread::throwException(obj);
+ JavaThread::get()->throwException(obj);
} else {
throw std::string(tmp);
}
@@ -864,7 +864,7 @@
#endif
mapInitialThread();
loadAppClassLoader();
- JavaObject* obj = JavaThread::currentThread();
+ JavaObject* obj = JavaThread::get()->currentThread();
JavaObject* javaLoader = appClassLoader->getJavaClassLoader();
#ifdef SERVICE
if (!IsolateID)
@@ -895,8 +895,9 @@
JavaObject* exc = JavaThread::get()->pendingException;
if (exc) {
- JavaThread::clearException();
- JavaObject* obj = JavaThread::currentThread();
+ JavaThread* th = JavaThread::get();
+ th->clearException();
+ JavaObject* obj = th->currentThread();
JavaObject* group =
upcalls->group->getObjectField(obj);
try{
Modified: vmkit/trunk/lib/Mvm/GCMmap2/gccollector.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/GCMmap2/gccollector.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/GCMmap2/gccollector.cpp (original)
+++ vmkit/trunk/lib/Mvm/GCMmap2/gccollector.cpp Tue Dec 30 08:23:26 2008
@@ -94,7 +94,7 @@
try {
dest(c);
} catch(...) {
- mvm::Thread::clearException();
+ mvm::Thread::get()->clearException();
}
}
}
Modified: vmkit/trunk/lib/N3/VMCore/CLIRuntimeJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/CLIRuntimeJIT.cpp?rev=61495&r1=61494&r2=61495&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/CLIRuntimeJIT.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/CLIRuntimeJIT.cpp Tue Dec 30 08:23:26 2008
@@ -77,7 +77,7 @@
}
extern "C" void ClearException() {
- return VMThread::clearException();
+ return VMThread::get()->clearException();
}
static VMObject* doMultiNewIntern(VMClassArray* cl, uint32 dim, sint32* buf) {
More information about the vmkit-commits
mailing list