[vmkit-commits] [vmkit] r59141 - in /vmkit/trunk: include/mvm/JIT.h include/mvm/PrintBuffer.h lib/JnJVM/VMCore/JavaObject.cpp lib/JnJVM/VMCore/JavaRuntimeJIT.cpp lib/JnJVM/VMCore/Jni.cpp lib/JnJVM/VMCore/JnjvmModule.cpp lib/Mvm/CommonThread/ctthread.cpp lib/Mvm/Runtime/JIT.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Wed Nov 12 07:49:24 PST 2008


Author: geoffray
Date: Wed Nov 12 09:49:21 2008
New Revision: 59141

URL: http://llvm.org/viewvc/llvm-project?rev=59141&view=rev
Log:
Fix compilation warnings on x64.


Modified:
    vmkit/trunk/include/mvm/JIT.h
    vmkit/trunk/include/mvm/PrintBuffer.h
    vmkit/trunk/lib/JnJVM/VMCore/JavaObject.cpp
    vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp
    vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp
    vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp
    vmkit/trunk/lib/Mvm/CommonThread/ctthread.cpp
    vmkit/trunk/lib/Mvm/Runtime/JIT.cpp

Modified: vmkit/trunk/include/mvm/JIT.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/JIT.h?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/include/mvm/JIT.h (original)
+++ vmkit/trunk/include/mvm/JIT.h Wed Nov 12 09:49:21 2008
@@ -191,6 +191,11 @@
 };
 
 // TODO: find what macro for gcc < 4.2
+
+#define __sync_bool_compare_and_swap_32(ptr, cmp, val) \
+  (mvm::MvmModule::llvm_atomic_cmp_swap_i32((uint32*)(ptr), (uint32)(cmp), \
+                                            (uint32)(val)) == (uint32)(cmp))
+
 #if (__WORDSIZE == 64)
 
 #define __sync_bool_compare_and_swap(ptr, cmp, val) \

Modified: vmkit/trunk/include/mvm/PrintBuffer.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/PrintBuffer.h?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/include/mvm/PrintBuffer.h (original)
+++ vmkit/trunk/include/mvm/PrintBuffer.h Wed Nov 12 09:49:21 2008
@@ -138,7 +138,7 @@
   /// writes8 - Writes a int64.
   inline PrintBuffer *writeS8(sint64 v) {
     char buf[32];
-    sprintf(buf, "%lld", v);
+    sprintf(buf, "%lld", (long long int)v);
     return write(buf);
   }
   

Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaObject.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaObject.cpp?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaObject.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaObject.cpp Wed Nov 12 09:49:21 2008
@@ -79,7 +79,7 @@
 }
 
 bool JavaObject::owner() {
-  uint32 id = (uint32)mvm::Thread::get();
+  uint64 id = mvm::Thread::get()->getThreadID();
   if ((lock & ThinMask) == id) return true;
   if (lock & FatMask) {
     LockObj* obj = (LockObj*)(lock << 1);

Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaRuntimeJIT.cpp Wed Nov 12 09:49:21 2008
@@ -253,19 +253,19 @@
 
 
 extern "C" void printMethodStart(JavaMethod* meth) {
-  printf("[%x] executing %s\n", (unsigned)mvm::Thread::get(),
+  printf("[%p] executing %s\n", (void*)mvm::Thread::get(),
          meth->printString());
   fflush(stdout);
 }
 
 extern "C" void printMethodEnd(JavaMethod* meth) {
-  printf("[%x] return from %s\n", (unsigned)mvm::Thread::get(),
+  printf("[%p] return from %s\n", (void*)mvm::Thread::get(),
          meth->printString());
   fflush(stdout);
 }
 
 extern "C" void printExecution(char* opcode, uint32 index, JavaMethod* meth) {
-  printf("[%x] executing %s %s at %d\n", (unsigned)mvm::Thread::get(),
+  printf("[%p] executing %s %s at %d\n", (void*)mvm::Thread::get(),
          meth->printString(), opcode, index);
   fflush(stdout);
 }

Modified: vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jni.cpp Wed Nov 12 09:49:21 2008
@@ -1727,8 +1727,9 @@
   UserClassArray* array = loader->constructArray(arrayName);
   ArrayObject* res = (ArrayObject*)array->doNew(length, vm);
   if (initialElement) {
-    memset(res->elements, (int)initialElement, 
-               length * sizeof(JavaObject*));
+    for (sint32 i = 0; i < length; ++i) {
+      res->elements[i] = (JavaObject*)initialElement;
+    }
   }
   return (jobjectArray)res;
   END_EXCEPTION
@@ -1927,7 +1928,7 @@
   BEGIN_EXCEPTION
 
   if (isCopy) (*isCopy) = false;
-  return ((ArrayLong*)array)->elements;
+  return (jlong*)(void*)(((ArrayLong*)array)->elements);
 
   END_EXCEPTION
   return 0;

Modified: vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp Wed Nov 12 09:49:21 2008
@@ -419,8 +419,8 @@
     if (!(cl->super)) {
       uint32 size =  (cl->virtualTableSize - VT_NB_FUNCS) * sizeof(void*);
 #define COPY(CLASS) \
-    memcpy((void*)((unsigned)CLASS::VT + VT_SIZE), \
-           (void*)((unsigned)res + VT_SIZE), size);
+    memcpy((void*)((uintptr_t)CLASS::VT + VT_SIZE), \
+           (void*)((uintptr_t)res + VT_SIZE), size);
 
       COPY(JavaArray)
       COPY(JavaObject)

Modified: vmkit/trunk/lib/Mvm/CommonThread/ctthread.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/CommonThread/ctthread.cpp?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/lib/Mvm/CommonThread/ctthread.cpp (original)
+++ vmkit/trunk/lib/Mvm/CommonThread/ctthread.cpp Wed Nov 12 09:49:21 2008
@@ -106,7 +106,7 @@
     bool found = false;
     uint32 myAllocPtr = allocPtr;
     do {
-      found = __sync_bool_compare_and_swap(&used[myAllocPtr], 0, 1);
+      found = __sync_bool_compare_and_swap_32(&used[myAllocPtr], 0, 1);
       myAllocPtr++;
       if (myAllocPtr == NR_THREADS) myAllocPtr = 0;
     } while (myAllocPtr != start && !found);

Modified: vmkit/trunk/lib/Mvm/Runtime/JIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Runtime/JIT.cpp?rev=59141&r1=59140&r2=59141&view=diff

==============================================================================
--- vmkit/trunk/lib/Mvm/Runtime/JIT.cpp (original)
+++ vmkit/trunk/lib/Mvm/Runtime/JIT.cpp Wed Nov 12 09:49:21 2008
@@ -36,7 +36,7 @@
 }
 
 extern "C" void printLong(sint64 l) {
-  printf("%lld\n", l);
+  printf("%lld\n", (long long int)l);
 }
 
 extern "C" void printInt(sint32 i) {





More information about the vmkit-commits mailing list