Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/parallelScavenge/psPromotionLAB.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 |
comparison
equal
deleted
inserted
replaced
110:a49a647afe9a | 113:ba764ed4b6f2 |
---|---|
23 */ | 23 */ |
24 | 24 |
25 #include "incls/_precompiled.incl" | 25 #include "incls/_precompiled.incl" |
26 #include "incls/_psPromotionLAB.cpp.incl" | 26 #include "incls/_psPromotionLAB.cpp.incl" |
27 | 27 |
28 const size_t PSPromotionLAB::filler_header_size = align_object_size(typeArrayOopDesc::header_size(T_INT)); | 28 size_t PSPromotionLAB::filler_header_size; |
29 | 29 |
30 // This is the shared initialization code. It sets up the basic pointers, | 30 // This is the shared initialization code. It sets up the basic pointers, |
31 // and allows enough extra space for a filler object. We call a virtual | 31 // and allows enough extra space for a filler object. We call a virtual |
32 // method, "lab_is_valid()" to handle the different asserts the old/young | 32 // method, "lab_is_valid()" to handle the different asserts the old/young |
33 // labs require. | 33 // labs require. |
38 HeapWord* end = lab.end(); | 38 HeapWord* end = lab.end(); |
39 | 39 |
40 set_bottom(bottom); | 40 set_bottom(bottom); |
41 set_end(end); | 41 set_end(end); |
42 set_top(bottom); | 42 set_top(bottom); |
43 | |
44 // Initialize after VM starts up because header_size depends on compressed | |
45 // oops. | |
46 filler_header_size = align_object_size(typeArrayOopDesc::header_size(T_INT)); | |
43 | 47 |
44 // We can be initialized to a zero size! | 48 // We can be initialized to a zero size! |
45 if (free() > 0) { | 49 if (free() > 0) { |
46 if (ZapUnusedHeapArea) { | 50 if (ZapUnusedHeapArea) { |
47 debug_only(Copy::fill_to_words(top(), free()/HeapWordSize, badHeapWord)); | 51 debug_only(Copy::fill_to_words(top(), free()/HeapWordSize, badHeapWord)); |