[vmkit-commits] [vmkit] r61490 - in /vmkit/trunk/lib/JnJVM: Classpath/ClasspathVMStackWalker.cpp VMCore/JavaMetaJIT.cpp VMCore/JavaThread.cpp VMCore/JavaThread.h VMCore/Jni.cpp VMCore/NativeUtil.h
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Tue Dec 30 04:19:15 PST 2008
Author: geoffray
Date: Tue Dec 30 06:18:59 2008
New Revision: 61490
URL: http://llvm.org/viewvc/llvm-project?rev=61490&view=rev
Log:
Code cleanup.
Modified:
vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaThread.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h
vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp
vmkit/trunk/lib/JnJVM/VMCore/NativeUtil.h
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp?rev=61490&r1=61489&r2=61490&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp Tue Dec 30 06:18:59 2008
@@ -8,7 +8,7 @@
//
//===----------------------------------------------------------------------===//
-#include <string.h>
+#include <cstring>
#include "types.h"
@@ -107,7 +107,7 @@
BEGIN_NATIVE_EXCEPTION(0)
JavaThread* th = JavaThread::get();
UserClass* cl = th->getCallingClass();
- if (cl) res = cl->classLoader->getJavaClassLoader();
+ res = cl->classLoader->getJavaClassLoader();
END_NATIVE_EXCEPTION
return res;
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp?rev=61490&r1=61489&r2=61490&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp Tue Dec 30 06:18:59 2008
@@ -71,18 +71,16 @@
void* _buf = (void*)buf; \
readArgs(buf, sign, ap); \
void* func = (((void***)obj)[0])[offset];\
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, _buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -101,18 +99,16 @@
void* _buf = (void*)buf; \
readArgs(buf, sign, ap); \
void* func = this->compiledPtr();\
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, _buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -130,18 +126,16 @@
void* _buf = (void*)buf; \
readArgs(buf, sign, ap); \
void* func = this->compiledPtr();\
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(cl->getConstantPool(), func, _buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -158,18 +152,16 @@
\
Signdef* sign = getSignature(); \
void* func = (((void***)obj)[0])[offset];\
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -185,18 +177,16 @@
verifyNull(obj);\
void* func = this->compiledPtr();\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -211,18 +201,16 @@
\
void* func = this->compiledPtr();\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(cl->getConstantPool(), func, buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -266,18 +254,16 @@
verifyNull(obj); \
void* func = (((void***)obj)[0])[offset];\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_AP)sign->getVirtualCallAP())(cl->getConstantPool(), func, obj, ap);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -293,18 +279,16 @@
verifyNull(obj);\
void* func = this->compiledPtr();\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_AP)sign->getVirtualCallAP())(cl->getConstantPool(), func, obj, ap);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -319,18 +303,16 @@
\
void* func = this->compiledPtr();\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_STATIC_AP)sign->getStaticCallAP())(cl->getConstantPool(), func, ap);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -346,18 +328,16 @@
verifyNull(obj);\
void* func = (((void***)obj)[0])[offset];\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = false; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -373,18 +353,16 @@
verifyNull(obj);\
void* func = this->compiledPtr();\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
+ bool exc = 0; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
@@ -399,18 +377,16 @@
\
void* func = this->compiledPtr();\
Signdef* sign = getSignature(); \
- JavaObject* excp = 0; \
JavaThread* th = JavaThread::get(); \
th->startJava(); \
+ bool exc = false; \
TYPE res = 0; \
try { \
res = ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(cl->getConstantPool(), func, buf);\
} catch (...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ exc = true; \
} \
- if (excp) { \
- th->pendingException = excp; \
+ if (exc) { \
th->throwFromJava(); \
} \
th->endJava(); \
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaThread.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaThread.cpp?rev=61490&r1=61489&r2=61490&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaThread.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaThread.cpp Tue Dec 30 06:18:59 2008
@@ -108,8 +108,7 @@
JavaMethod* meth = getJVM()->IPToJavaMethod(ip);
- if (meth) return meth->classDef;
- else return 0;
+ return meth->classDef;
}
void JavaThread::getJavaFrameContext(std::vector<void*>& context) {
@@ -128,7 +127,7 @@
void* ip = FRAME_IP(addr);
context.push_back(ip);
addr = (void**)addr[0];
- // End walking the stack when we cross a native -> Java call. Here
+ // We end walking the stack when we cross a native -> Java call. Here
// the iterator points to a native -> Java call. We dereference addr twice
// because a native -> Java call always contains the signature function.
} while (((void***)addr)[0][0] != *it);
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h?rev=61490&r1=61489&r2=61490&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaThread.h Tue Dec 30 06:18:59 2008
@@ -164,6 +164,7 @@
///
void throwFromJNI() {
assert(sjlj_buffers.size());
+ internalPendingException = 0;
#if defined(__MACH__)
longjmp((int*)sjlj_buffers.back(), 1);
#else
Modified: vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp?rev=61490&r1=61489&r2=61490&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp Tue Dec 30 06:18:59 2008
@@ -130,13 +130,13 @@
}
-jint ThrowNew(JNIEnv* env, jclass clazz, const char *msg) {
+jint ThrowNew(JNIEnv* env, jclass Cl, const char *msg) {
BEGIN_JNI_EXCEPTION
- JavaThread* th = JavaThread::get();
- Jnjvm* vm = th->getJVM();
- UserCommonClass* cl = NativeUtil::resolvedImplClass(vm, clazz, true);
+ Jnjvm* vm = NativeUtil::myVM(env);
+ verifyNull(Cl);
+ UserCommonClass* cl = NativeUtil::resolvedImplClass(vm, Cl, true);
if (!cl->asClass()) assert(0 && "implement me");
UserClass* realCl = cl->asClass();
JavaObject* res = realCl->doNew(vm);
Modified: vmkit/trunk/lib/JnJVM/VMCore/NativeUtil.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/NativeUtil.h?rev=61490&r1=61489&r2=61490&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/NativeUtil.h (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/NativeUtil.h Tue Dec 30 06:18:59 2008
@@ -25,34 +25,30 @@
#define BEGIN_NATIVE_EXCEPTION(level) \
- JavaObject* excp = 0; \
JavaThread* __th = JavaThread::get(); \
__th->startNative(level); \
+ bool __exc = false; \
try {
#define END_NATIVE_EXCEPTION \
} catch(...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ __exc = true; \
} \
- if (excp) { \
- __th->pendingException = excp; \
+ if (__exc) { \
__th->throwFromNative(); \
} \
__th->endNative();
#define BEGIN_JNI_EXCEPTION \
- JavaObject* excp = 0; \
+ JavaThread* th = JavaThread::get(); \
+ bool __exc = 0; \
try {
#define END_JNI_EXCEPTION \
} catch(...) { \
- excp = JavaThread::getJavaException(); \
- JavaThread::clearException(); \
+ __exc = true; \
} \
- if (excp) { \
- JavaThread* th = JavaThread::get(); \
- th->pendingException = excp; \
+ if (__exc) { \
th->throwFromJNI(); \
}
More information about the vmkit-commits
mailing list