Mercurial > hg > truffle
comparison src/share/vm/memory/universe.hpp @ 2177:3582bf76420e
6990754: Use native memory and reference counting to implement SymbolTable
Summary: move symbols from permgen into C heap and reference count them
Reviewed-by: never, acorn, jmasa, stefank
author | coleenp |
---|---|
date | Thu, 27 Jan 2011 16:11:27 -0800 |
parents | f95d63e2154a |
children | 1d1603768966 |
comparison
equal
deleted
inserted
replaced
2176:27e4ea99855d | 2177:3582bf76420e |
---|---|
137 static klassOop _doubleArrayKlassObj; | 137 static klassOop _doubleArrayKlassObj; |
138 static klassOop _typeArrayKlassObjs[T_VOID+1]; | 138 static klassOop _typeArrayKlassObjs[T_VOID+1]; |
139 | 139 |
140 static klassOop _objectArrayKlassObj; | 140 static klassOop _objectArrayKlassObj; |
141 | 141 |
142 static klassOop _symbolKlassObj; | |
143 static klassOop _methodKlassObj; | 142 static klassOop _methodKlassObj; |
144 static klassOop _constMethodKlassObj; | 143 static klassOop _constMethodKlassObj; |
145 static klassOop _methodDataKlassObj; | 144 static klassOop _methodDataKlassObj; |
146 static klassOop _klassKlassObj; | 145 static klassOop _klassKlassObj; |
147 static klassOop _arrayKlassKlassObj; | 146 static klassOop _arrayKlassKlassObj; |
196 static oop _virtual_machine_error_instance; // preallocated exception object | 195 static oop _virtual_machine_error_instance; // preallocated exception object |
197 // The object used as an exception dummy when exceptions are thrown for | 196 // The object used as an exception dummy when exceptions are thrown for |
198 // the vm thread. | 197 // the vm thread. |
199 static oop _vm_exception; | 198 static oop _vm_exception; |
200 | 199 |
201 static oop _emptySymbol; // Canonical empty string ("") symbol | |
202 | |
203 // The particular choice of collected heap. | 200 // The particular choice of collected heap. |
204 static CollectedHeap* _collectedHeap; | 201 static CollectedHeap* _collectedHeap; |
205 | 202 |
206 // For UseCompressedOops. | 203 // For UseCompressedOops. |
207 static struct NarrowOopStruct _narrow_oop; | 204 static struct NarrowOopStruct _narrow_oop; |
271 assert((uint)t < T_VOID+1, "range check"); | 268 assert((uint)t < T_VOID+1, "range check"); |
272 assert(_typeArrayKlassObjs[t] != NULL, "domain check"); | 269 assert(_typeArrayKlassObjs[t] != NULL, "domain check"); |
273 return _typeArrayKlassObjs[t]; | 270 return _typeArrayKlassObjs[t]; |
274 } | 271 } |
275 | 272 |
276 static klassOop symbolKlassObj() { return _symbolKlassObj; } | |
277 static klassOop methodKlassObj() { return _methodKlassObj; } | 273 static klassOop methodKlassObj() { return _methodKlassObj; } |
278 static klassOop constMethodKlassObj() { return _constMethodKlassObj; } | 274 static klassOop constMethodKlassObj() { return _constMethodKlassObj; } |
279 static klassOop methodDataKlassObj() { return _methodDataKlassObj; } | 275 static klassOop methodDataKlassObj() { return _methodDataKlassObj; } |
280 static klassOop klassKlassObj() { return _klassKlassObj; } | 276 static klassOop klassKlassObj() { return _klassKlassObj; } |
281 static klassOop arrayKlassKlassObj() { return _arrayKlassKlassObj; } | 277 static klassOop arrayKlassKlassObj() { return _arrayKlassKlassObj; } |
285 static klassOop constantPoolKlassObj() { return _constantPoolKlassObj; } | 281 static klassOop constantPoolKlassObj() { return _constantPoolKlassObj; } |
286 static klassOop constantPoolCacheKlassObj() { return _constantPoolCacheKlassObj; } | 282 static klassOop constantPoolCacheKlassObj() { return _constantPoolCacheKlassObj; } |
287 static klassOop compiledICHolderKlassObj() { return _compiledICHolderKlassObj; } | 283 static klassOop compiledICHolderKlassObj() { return _compiledICHolderKlassObj; } |
288 static klassOop systemObjArrayKlassObj() { return _systemObjArrayKlassObj; } | 284 static klassOop systemObjArrayKlassObj() { return _systemObjArrayKlassObj; } |
289 | 285 |
290 // Known objects in tbe VM | 286 // Known objects in the VM |
291 static oop int_mirror() { return check_mirror(_int_mirror); | 287 static oop int_mirror() { return check_mirror(_int_mirror); } |
292 } | |
293 static oop float_mirror() { return check_mirror(_float_mirror); } | 288 static oop float_mirror() { return check_mirror(_float_mirror); } |
294 static oop double_mirror() { return check_mirror(_double_mirror); } | 289 static oop double_mirror() { return check_mirror(_double_mirror); } |
295 static oop byte_mirror() { return check_mirror(_byte_mirror); } | 290 static oop byte_mirror() { return check_mirror(_byte_mirror); } |
296 static oop bool_mirror() { return check_mirror(_bool_mirror); } | 291 static oop bool_mirror() { return check_mirror(_bool_mirror); } |
297 static oop char_mirror() { return check_mirror(_char_mirror); } | 292 static oop char_mirror() { return check_mirror(_char_mirror); } |
325 static ActiveMethodOopsCache* reflect_invoke_cache() { return _reflect_invoke_cache; } | 320 static ActiveMethodOopsCache* reflect_invoke_cache() { return _reflect_invoke_cache; } |
326 static oop null_ptr_exception_instance() { return _null_ptr_exception_instance; } | 321 static oop null_ptr_exception_instance() { return _null_ptr_exception_instance; } |
327 static oop arithmetic_exception_instance() { return _arithmetic_exception_instance; } | 322 static oop arithmetic_exception_instance() { return _arithmetic_exception_instance; } |
328 static oop virtual_machine_error_instance() { return _virtual_machine_error_instance; } | 323 static oop virtual_machine_error_instance() { return _virtual_machine_error_instance; } |
329 static oop vm_exception() { return _vm_exception; } | 324 static oop vm_exception() { return _vm_exception; } |
330 static oop emptySymbol() { return _emptySymbol; } | |
331 | 325 |
332 // OutOfMemoryError support. Returns an error with the required message. The returned error | 326 // OutOfMemoryError support. Returns an error with the required message. The returned error |
333 // may or may not have a backtrace. If error has a backtrace then the stack trace is already | 327 // may or may not have a backtrace. If error has a backtrace then the stack trace is already |
334 // filled in. | 328 // filled in. |
335 static oop out_of_memory_error_java_heap() { return gen_out_of_memory_error(_out_of_memory_error_java_heap); } | 329 static oop out_of_memory_error_java_heap() { return gen_out_of_memory_error(_out_of_memory_error_java_heap); } |