106 _discovery_is_atomic = atomic_discovery; |
106 _discovery_is_atomic = atomic_discovery; |
107 _discovery_is_mt = mt_discovery; |
107 _discovery_is_mt = mt_discovery; |
108 _num_q = MAX2(1U, mt_processing_degree); |
108 _num_q = MAX2(1U, mt_processing_degree); |
109 _max_num_q = MAX2(_num_q, mt_discovery_degree); |
109 _max_num_q = MAX2(_num_q, mt_discovery_degree); |
110 _discovered_refs = NEW_C_HEAP_ARRAY(DiscoveredList, |
110 _discovered_refs = NEW_C_HEAP_ARRAY(DiscoveredList, |
111 _max_num_q * number_of_subclasses_of_ref()); |
111 _max_num_q * number_of_subclasses_of_ref(), mtGC); |
|
112 |
112 if (_discovered_refs == NULL) { |
113 if (_discovered_refs == NULL) { |
113 vm_exit_during_initialization("Could not allocated RefProc Array"); |
114 vm_exit_during_initialization("Could not allocated RefProc Array"); |
114 } |
115 } |
115 _discoveredSoftRefs = &_discovered_refs[0]; |
116 _discoveredSoftRefs = &_discovered_refs[0]; |
116 _discoveredWeakRefs = &_discoveredSoftRefs[_max_num_q]; |
117 _discoveredWeakRefs = &_discoveredSoftRefs[_max_num_q]; |