Mercurial > hg > truffle
comparison agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java @ 1571:2d127394260e
6916623: Align object to 16 bytes to use Compressed Oops with java heap up to 64Gb
Summary: Added new product ObjectAlignmentInBytes flag to control object alignment.
Reviewed-by: twisti, ysr, iveresov
author | kvn |
---|---|
date | Thu, 27 May 2010 18:01:56 -0700 |
parents | 89e0543e1737 |
children | e9ff18c4ace7 |
comparison
equal
deleted
inserted
replaced
1570:de91a2f25c7e | 1571:2d127394260e |
---|---|
71 smallLinearAllocBlockFieldOffset = type.getField("_smallLinearAllocBlock").getOffset(); | 71 smallLinearAllocBlockFieldOffset = type.getField("_smallLinearAllocBlock").getOffset(); |
72 } | 72 } |
73 | 73 |
74 public CompactibleFreeListSpace(Address addr) { | 74 public CompactibleFreeListSpace(Address addr) { |
75 super(addr); | 75 super(addr); |
76 if ( VM.getVM().isLP64() ) { | 76 VM vm = VM.getVM(); |
77 heapWordSize = 8; | 77 heapWordSize = vm.getHeapWordSize(); |
78 IndexSetStart = 1; | 78 IndexSetStart = vm.getMinObjAlignmentInBytes() / heapWordSize; |
79 IndexSetStride = 1; | 79 IndexSetStride = IndexSetStart; |
80 } | 80 IndexSetSize = 257; |
81 else { | |
82 heapWordSize = 4; | |
83 IndexSetStart = 2; | |
84 IndexSetStride = 2; | |
85 } | |
86 | |
87 IndexSetSize = 257; | |
88 } | 81 } |
89 | 82 |
90 // Accessing block offset table | 83 // Accessing block offset table |
91 public CMSCollector collector() { | 84 public CMSCollector collector() { |
92 return (CMSCollector) VMObjectFactory.newObject( | 85 return (CMSCollector) VMObjectFactory.newObject( |