diff src/share/vm/memory/sharedHeap.cpp @ 113:ba764ed4b6f2

6420645: Create a vm that uses compressed oops for up to 32gb heapsizes Summary: Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
author coleenp
date Sun, 13 Apr 2008 17:43:42 -0400
parents a61af66fc99e
children d1605aabd0a1 37f87013dfd8
line wrap: on
line diff
--- a/src/share/vm/memory/sharedHeap.cpp	Fri Apr 11 09:56:35 2008 -0400
+++ b/src/share/vm/memory/sharedHeap.cpp	Sun Apr 13 17:43:42 2008 -0400
@@ -74,9 +74,10 @@
 
 class AssertIsPermClosure: public OopClosure {
 public:
-  void do_oop(oop* p) {
+  virtual void do_oop(oop* p) {
     assert((*p) == NULL || (*p)->is_perm(), "Referent should be perm.");
   }
+  virtual void do_oop(narrowOop* p) { ShouldNotReachHere(); }
 };
 static AssertIsPermClosure assert_is_perm_closure;
 
@@ -187,12 +188,13 @@
 public:
   SkipAdjustingSharedStrings(OopClosure* clo) : _clo(clo) {}
 
-  void do_oop(oop* p) {
+  virtual void do_oop(oop* p) {
     oop o = (*p);
     if (!o->is_shared_readwrite()) {
       _clo->do_oop(p);
     }
   }
+  virtual void do_oop(narrowOop* p) { ShouldNotReachHere(); }
 };
 
 // Unmarked shared Strings in the StringTable (which got there due to