19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "asm/macroAssembler.inline.hpp"
27 #include "memory/resourceArea.hpp"
28 #include "runtime/java.hpp"
29 #include "runtime/os.hpp"
30 #include "runtime/stubCodeGenerator.hpp"
31 #include "vm_version_sparc.hpp"
32
33 int VM_Version::_features = VM_Version::unknown_m;
34 const char* VM_Version::_features_str = "";
35 unsigned int VM_Version::_L2_data_cache_line_size = 0;
36
37 void VM_Version::initialize() {
38
39 guarantee(VM_Version::has_v9(), "only SPARC v9 is supported");
40 assert(_features != VM_Version::unknown_m, "System pre-initialization is not complete.");
41
42 PrefetchCopyIntervalInBytes = prefetch_copy_interval_in_bytes();
43 PrefetchScanIntervalInBytes = prefetch_scan_interval_in_bytes();
44 PrefetchFieldsAhead = prefetch_fields_ahead();
45
46 // Allocation prefetch settings
47 intx cache_line_size = prefetch_data_size();
48 if( cache_line_size > AllocatePrefetchStepSize )
49 AllocatePrefetchStepSize = cache_line_size;
50
51 assert(AllocatePrefetchLines > 0, "invalid value");
52 if( AllocatePrefetchLines < 1 ) // set valid value in product VM
53 AllocatePrefetchLines = 3;
54 assert(AllocateInstancePrefetchLines > 0, "invalid value");
55 if( AllocateInstancePrefetchLines < 1 ) // set valid value in product VM
56 AllocateInstancePrefetchLines = 1;
57
58 AllocatePrefetchDistance = allocate_prefetch_distance();
59 AllocatePrefetchStyle = allocate_prefetch_style();
60
|
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "asm/macroAssembler.inline.hpp"
27 #include "memory/resourceArea.hpp"
28 #include "runtime/java.hpp"
29 #include "runtime/os.hpp"
30 #include "runtime/stubCodeGenerator.hpp"
31 #include "vm_version_sparc.hpp"
32
33 int VM_Version::_features = VM_Version::unknown_m;
34 const char* VM_Version::_features_str = "";
35 unsigned int VM_Version::_L2_data_cache_line_size = 0;
36
37 void VM_Version::initialize() {
38
39 assert(_features != VM_Version::unknown_m, "System pre-initialization is not complete.");
40 guarantee(VM_Version::has_v9(), "only SPARC v9 is supported");
41
42 PrefetchCopyIntervalInBytes = prefetch_copy_interval_in_bytes();
43 PrefetchScanIntervalInBytes = prefetch_scan_interval_in_bytes();
44 PrefetchFieldsAhead = prefetch_fields_ahead();
45
46 // Allocation prefetch settings
47 intx cache_line_size = prefetch_data_size();
48 if( cache_line_size > AllocatePrefetchStepSize )
49 AllocatePrefetchStepSize = cache_line_size;
50
51 assert(AllocatePrefetchLines > 0, "invalid value");
52 if( AllocatePrefetchLines < 1 ) // set valid value in product VM
53 AllocatePrefetchLines = 3;
54 assert(AllocateInstancePrefetchLines > 0, "invalid value");
55 if( AllocateInstancePrefetchLines < 1 ) // set valid value in product VM
56 AllocateInstancePrefetchLines = 1;
57
58 AllocatePrefetchDistance = allocate_prefetch_distance();
59 AllocatePrefetchStyle = allocate_prefetch_style();
60
|