[vmkit-commits] [vmkit] r121492 - in /vmkit/trunk: lib/J3/Compiler/JavaJIT.cpp lib/J3/Compiler/JavaJITOpcodes.cpp lib/Mvm/GCMmap2/MvmGC.h lib/Mvm/MMTk/MvmGC.cpp lib/Mvm/MMTk/MvmGC.h mmtk/java/src/org/j3/bindings/Bindings.java mmtk/mmtk-alloc/Selected.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Fri Dec 10 09:11:57 PST 2010


Author: geoffray
Date: Fri Dec 10 11:11:57 2010
New Revision: 121492

URL: http://llvm.org/viewvc/llvm-project?rev=121492&view=rev
Log:
Rename to needsWriteBarrier and needsNonHeapWriteBarrier.


Modified:
    vmkit/trunk/lib/J3/Compiler/JavaJIT.cpp
    vmkit/trunk/lib/J3/Compiler/JavaJITOpcodes.cpp
    vmkit/trunk/lib/Mvm/GCMmap2/MvmGC.h
    vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp
    vmkit/trunk/lib/Mvm/MMTk/MvmGC.h
    vmkit/trunk/mmtk/java/src/org/j3/bindings/Bindings.java
    vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp

Modified: vmkit/trunk/lib/J3/Compiler/JavaJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaJIT.cpp?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Compiler/JavaJIT.cpp (original)
+++ vmkit/trunk/lib/J3/Compiler/JavaJIT.cpp Fri Dec 10 11:11:57 2010
@@ -2067,7 +2067,7 @@
     convertValue(val, type, currentBlock, false);
   }
   
-  if (mvm::Collector::supportsWriteBarrier() && type == intrinsics->JavaObjectType) {
+  if (mvm::Collector::needsNonHeapWriteBarrier() && type == intrinsics->JavaObjectType) {
     ptr = new BitCastInst(ptr, intrinsics->ptrPtrType, "", currentBlock);
     val = new BitCastInst(val, intrinsics->ptrType, "", currentBlock);
     Value* args[2] = { ptr, val };
@@ -2174,7 +2174,7 @@
     convertValue(val, type, currentBlock, false);
   }
   
-  if (mvm::Collector::supportsWriteBarrier() && type == intrinsics->JavaObjectType) {
+  if (mvm::Collector::needsWriteBarrier() && type == intrinsics->JavaObjectType) {
     ptr = new BitCastInst(ptr, intrinsics->ptrPtrType, "", currentBlock);
     val = new BitCastInst(val, intrinsics->ptrType, "", currentBlock);
     object = new LoadInst(object, "", currentBlock);

Modified: vmkit/trunk/lib/J3/Compiler/JavaJITOpcodes.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaJITOpcodes.cpp?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Compiler/JavaJITOpcodes.cpp (original)
+++ vmkit/trunk/lib/J3/Compiler/JavaJITOpcodes.cpp Fri Dec 10 11:11:57 2010
@@ -721,7 +721,7 @@
         Value* obj = pop();
         Value* ptr = verifyAndComputePtr(obj, index,
                                          intrinsics->JavaArrayObjectType);
-        if (mvm::Collector::supportsWriteBarrier()) {
+        if (mvm::Collector::needsWriteBarrier()) {
           ptr = new BitCastInst(ptr, intrinsics->ptrPtrType, "", currentBlock);
           val = new BitCastInst(val, intrinsics->ptrType, "", currentBlock);
           obj = new BitCastInst(obj, intrinsics->ptrType, "", currentBlock);

Modified: vmkit/trunk/lib/Mvm/GCMmap2/MvmGC.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/GCMmap2/MvmGC.h?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/GCMmap2/MvmGC.h (original)
+++ vmkit/trunk/lib/Mvm/GCMmap2/MvmGC.h Fri Dec 10 11:11:57 2010
@@ -376,7 +376,11 @@
     return (res == old);
   }
 
-  static bool supportsWriteBarrier() {
+  static bool needsWriteBarrier() {
+    return false;
+  }
+
+  static bool needsNonHeapWriteBarrier() {
     return false;
   }
 };

Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp (original)
+++ vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp Fri Dec 10 11:11:57 2010
@@ -146,6 +146,10 @@
 void Collector::initialise() {
 }
 
-bool Collector::supportsWriteBarrier() {
+bool Collector::needsWriteBarrier() {
+  return false;
+}
+
+bool Collector::needsNonHeapWriteBarrier() {
   return false;
 }

Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MvmGC.h?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/MMTk/MvmGC.h (original)
+++ vmkit/trunk/lib/Mvm/MMTk/MvmGC.h Fri Dec 10 11:11:57 2010
@@ -80,7 +80,8 @@
   static void objectReferenceArrayWriteBarrier(gc* ref, gc** slot, gc* value) __attribute__ ((always_inline));
   static void objectReferenceNonHeapWriteBarrier(gc** slot, gc* value) __attribute__ ((always_inline));
   static bool objectReferenceTryCASBarrier(gc* ref, gc** slot, gc* old, gc* value) __attribute__ ((always_inline));
-  static bool supportsWriteBarrier();
+  static bool needsWriteBarrier() __attribute__ ((always_inline));
+  static bool needsNonHeapWriteBarrier() __attribute__ ((always_inline));
 
   static void collect();
   

Modified: vmkit/trunk/mmtk/java/src/org/j3/bindings/Bindings.java
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/java/src/org/j3/bindings/Bindings.java?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/mmtk/java/src/org/j3/bindings/Bindings.java (original)
+++ vmkit/trunk/mmtk/java/src/org/j3/bindings/Bindings.java Fri Dec 10 11:11:57 2010
@@ -154,4 +154,14 @@
       return slot.attempt(old.toAddress().toWord(), value.toAddress().toWord());
     }
   }
+
+  @Inline
+  private static boolean needsWriteBarrier() {
+    return Selected.Constraints.get().needsObjectReferenceWriteBarrier();
+  }
+
+  @Inline
+  private static boolean needsNonHeapWriteBarrier() {
+    return Selected.Constraints.get().needsObjectReferenceNonHeapWriteBarrier();
+  }
 }

Modified: vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp?rev=121492&r1=121491&r2=121492&view=diff
==============================================================================
--- vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp (original)
+++ vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp Fri Dec 10 11:11:57 2010
@@ -198,8 +198,15 @@
   return res;
 }
 
-bool Collector::supportsWriteBarrier() {
-  return true;
+extern "C" uint8_t JnJVM_org_j3_bindings_Bindings_needsWriteBarrier__() ALWAYS_INLINE;
+extern "C" uint8_t JnJVM_org_j3_bindings_Bindings_needsNonHeapWriteBarrier__() ALWAYS_INLINE;
+
+bool Collector::needsWriteBarrier() {
+  return JnJVM_org_j3_bindings_Bindings_needsWriteBarrier__();
+}
+
+bool Collector::needsNonHeapWriteBarrier() {
+  return JnJVM_org_j3_bindings_Bindings_needsNonHeapWriteBarrier__();
 }
 
 //TODO: Remove these.





More information about the vmkit-commits mailing list