comparison src/share/vm/runtime/vmStructs.cpp @ 132:60b728ec77c1

6652736: well known classes in system dictionary are inefficiently processed Summary: combine many scalar variables into a single enum-indexed array in SystemDictionary. Reviewed-by: kvn
author jrose
date Tue, 29 Apr 2008 19:45:22 -0700
parents ba764ed4b6f2
children 83c868b757c0
comparison
equal deleted inserted replaced
131:6e825ad773c6 132:60b728ec77c1
451 static_field(SystemDictionary, _dictionary, Dictionary*) \ 451 static_field(SystemDictionary, _dictionary, Dictionary*) \
452 static_field(SystemDictionary, _placeholders, PlaceholderTable*) \ 452 static_field(SystemDictionary, _placeholders, PlaceholderTable*) \
453 static_field(SystemDictionary, _shared_dictionary, Dictionary*) \ 453 static_field(SystemDictionary, _shared_dictionary, Dictionary*) \
454 static_field(SystemDictionary, _system_loader_lock_obj, oop) \ 454 static_field(SystemDictionary, _system_loader_lock_obj, oop) \
455 static_field(SystemDictionary, _loader_constraints, LoaderConstraintTable*) \ 455 static_field(SystemDictionary, _loader_constraints, LoaderConstraintTable*) \
456 static_field(SystemDictionary, _object_klass, klassOop) \ 456 static_field(SystemDictionary, _well_known_klasses[0], klassOop) \
457 static_field(SystemDictionary, _string_klass, klassOop) \
458 static_field(SystemDictionary, _class_klass, klassOop) \
459 static_field(SystemDictionary, _cloneable_klass, klassOop) \
460 static_field(SystemDictionary, _classloader_klass, klassOop) \
461 static_field(SystemDictionary, _serializable_klass, klassOop) \
462 static_field(SystemDictionary, _system_klass, klassOop) \
463 static_field(SystemDictionary, _throwable_klass, klassOop) \
464 static_field(SystemDictionary, _threaddeath_klass, klassOop) \
465 static_field(SystemDictionary, _error_klass, klassOop) \
466 static_field(SystemDictionary, _exception_klass, klassOop) \
467 static_field(SystemDictionary, _runtime_exception_klass, klassOop) \
468 static_field(SystemDictionary, _classNotFoundException_klass, klassOop) \
469 static_field(SystemDictionary, _noClassDefFoundError_klass, klassOop) \
470 static_field(SystemDictionary, _linkageError_klass, klassOop) \
471 static_field(SystemDictionary, _classCastException_klass, klassOop) \
472 static_field(SystemDictionary, _arrayStoreException_klass, klassOop) \
473 static_field(SystemDictionary, _virtualMachineError_klass, klassOop) \
474 static_field(SystemDictionary, _outOfMemoryError_klass, klassOop) \
475 static_field(SystemDictionary, _StackOverflowError_klass, klassOop) \
476 static_field(SystemDictionary, _protectionDomain_klass, klassOop) \
477 static_field(SystemDictionary, _AccessControlContext_klass, klassOop) \
478 static_field(SystemDictionary, _reference_klass, klassOop) \
479 static_field(SystemDictionary, _soft_reference_klass, klassOop) \
480 static_field(SystemDictionary, _weak_reference_klass, klassOop) \
481 static_field(SystemDictionary, _final_reference_klass, klassOop) \
482 static_field(SystemDictionary, _phantom_reference_klass, klassOop) \
483 static_field(SystemDictionary, _finalizer_klass, klassOop) \
484 static_field(SystemDictionary, _thread_klass, klassOop) \
485 static_field(SystemDictionary, _threadGroup_klass, klassOop) \
486 static_field(SystemDictionary, _properties_klass, klassOop) \
487 static_field(SystemDictionary, _stringBuffer_klass, klassOop) \
488 static_field(SystemDictionary, _vector_klass, klassOop) \
489 static_field(SystemDictionary, _hashtable_klass, klassOop) \
490 static_field(SystemDictionary, _box_klasses[0], klassOop) \ 457 static_field(SystemDictionary, _box_klasses[0], klassOop) \
491 static_field(SystemDictionary, _java_system_loader, oop) \ 458 static_field(SystemDictionary, _java_system_loader, oop) \
492 \ 459 \
493 /*******************/ \ 460 /*******************/ \
494 /* HashtableBucket */ \ 461 /* HashtableBucket */ \
1398 /* SystemDictionary */ \ 1365 /* SystemDictionary */ \
1399 /********************/ \ 1366 /********************/ \
1400 \ 1367 \
1401 declare_constant(SystemDictionary::_loader_constraint_size) \ 1368 declare_constant(SystemDictionary::_loader_constraint_size) \
1402 declare_constant(SystemDictionary::_nof_buckets) \ 1369 declare_constant(SystemDictionary::_nof_buckets) \
1370 /* these #foo numbers are enums used to index _well_known_klasses: */ \
1371 declare_preprocessor_constant("SystemDictionary::#object_klass", SystemDictionary::WK_KLASS_ENUM_NAME(object_klass)) \
1372 declare_preprocessor_constant("SystemDictionary::#classloader_klass", SystemDictionary::WK_KLASS_ENUM_NAME(classloader_klass)) \
1373 declare_preprocessor_constant("SystemDictionary::#string_klass", SystemDictionary::WK_KLASS_ENUM_NAME(string_klass)) \
1374 declare_preprocessor_constant("SystemDictionary::#system_klass", SystemDictionary::WK_KLASS_ENUM_NAME(system_klass)) \
1375 declare_preprocessor_constant("SystemDictionary::#thread_klass", SystemDictionary::WK_KLASS_ENUM_NAME(thread_klass)) \
1376 declare_preprocessor_constant("SystemDictionary::#threadGroup_klass", SystemDictionary::WK_KLASS_ENUM_NAME(threadGroup_klass)) \
1403 \ 1377 \
1404 /***********************************/ \ 1378 /***********************************/ \
1405 /* LoaderConstraintTable constants */ \ 1379 /* LoaderConstraintTable constants */ \
1406 /***********************************/ \ 1380 /***********************************/ \
1407 \ 1381 \