< prev index next >

src/hotspot/share/interpreter/oopMapCache.cpp

Print this page

        

@@ -273,20 +273,20 @@
   LogStream st(logv.trace());
 
   st.print("Locals (%d): ", max_locals);
   for(int i = 0; i < max_locals; i++) {
     bool v1 = is_oop(i)               ? true : false;
-    bool v2 = vars[i].is_reference() || vars[i].is_valuetype() ? true : false;
+    bool v2 = vars[i].is_reference();
     assert(v1 == v2, "locals oop mask generation error");
     st.print("%d", v1 ? 1 : 0);
   }
   st.cr();
 
   st.print("Stack (%d): ", stack_top);
   for(int j = 0; j < stack_top; j++) {
     bool v1 = is_oop(max_locals + j)  ? true : false;
-    bool v2 = stack[j].is_reference() || stack[j].is_valuetype( )? true : false;
+    bool v2 = stack[j].is_reference();
     assert(v1 == v2, "stack oop mask generation error");
     st.print("%d", v1 ? 1 : 0);
   }
   st.cr();
   return true;

@@ -364,19 +364,18 @@
     if (entry_index == max_locals) {
       cell = stack;
     }
 
     // set oop bit
-    // Note: the interpreter handles value types with oops too
-    if ( cell->is_reference() || cell->is_valuetype()) {
+    if (cell->is_reference()) {
       value |= (mask << oop_bit_number );
     }
 
     // set dead bit
     if (!cell->is_live()) {
       value |= (mask << dead_bit_number);
-      assert(!cell->is_reference() && !cell->is_valuetype(), "dead value marked as oop");
+      assert(!cell->is_reference(), "dead value marked as oop");
     }
   }
 
   // make sure last word is stored
   bit_mask()[word_index] = value;
< prev index next >