Mercurial > hg > truffle
comparison src/share/vm/memory/genCollectedHeap.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 12eea04c8b06 |
comparison
equal
deleted
inserted
replaced
110:a49a647afe9a | 113:ba764ed4b6f2 |
---|---|
622 class AssertIsPermClosure: public OopClosure { | 622 class AssertIsPermClosure: public OopClosure { |
623 public: | 623 public: |
624 void do_oop(oop* p) { | 624 void do_oop(oop* p) { |
625 assert((*p) == NULL || (*p)->is_perm(), "Referent should be perm."); | 625 assert((*p) == NULL || (*p)->is_perm(), "Referent should be perm."); |
626 } | 626 } |
627 void do_oop(narrowOop* p) { ShouldNotReachHere(); } | |
627 }; | 628 }; |
628 static AssertIsPermClosure assert_is_perm_closure; | 629 static AssertIsPermClosure assert_is_perm_closure; |
629 | 630 |
630 void GenCollectedHeap:: | 631 void GenCollectedHeap:: |
631 gen_process_strong_roots(int level, | 632 gen_process_strong_roots(int level, |
1298 perm_gen()->ensure_parsability(); | 1299 perm_gen()->ensure_parsability(); |
1299 } | 1300 } |
1300 | 1301 |
1301 oop GenCollectedHeap::handle_failed_promotion(Generation* gen, | 1302 oop GenCollectedHeap::handle_failed_promotion(Generation* gen, |
1302 oop obj, | 1303 oop obj, |
1303 size_t obj_size, | 1304 size_t obj_size) { |
1304 oop* ref) { | |
1305 assert(obj_size == (size_t)obj->size(), "bad obj_size passed in"); | 1305 assert(obj_size == (size_t)obj->size(), "bad obj_size passed in"); |
1306 HeapWord* result = NULL; | 1306 HeapWord* result = NULL; |
1307 | 1307 |
1308 // First give each higher generation a chance to allocate the promoted object. | 1308 // First give each higher generation a chance to allocate the promoted object. |
1309 Generation* allocator = next_gen(gen); | 1309 Generation* allocator = next_gen(gen); |