434
435 #define HOTSWAP
436
437 //----------------------------------------------------------------------------------------------------
438 // Object alignment, in units of HeapWords.
439 //
440 // Minimum is max(BytesPerLong, BytesPerDouble, BytesPerOop) / HeapWordSize, so jlong, jdouble and
441 // reference fields can be naturally aligned.
442
443 extern int MinObjAlignment;
444 extern int MinObjAlignmentInBytes;
445 extern int MinObjAlignmentInBytesMask;
446
447 extern int LogMinObjAlignment;
448 extern int LogMinObjAlignmentInBytes;
449
450 const int LogKlassAlignmentInBytes = 3;
451 const int LogKlassAlignment = LogKlassAlignmentInBytes - LogHeapWordSize;
452 const int KlassAlignmentInBytes = 1 << LogKlassAlignmentInBytes;
453 const int KlassAlignment = KlassAlignmentInBytes / HeapWordSize;
454
455 // Maximal size of heap where unscaled compression can be used. Also upper bound
456 // for heap placement: 4GB.
457 const uint64_t UnscaledOopHeapMax = (uint64_t(max_juint) + 1);
458 // Maximal size of heap where compressed oops can be used. Also upper bound for heap
459 // placement for zero based compression algorithm: UnscaledOopHeapMax << LogMinObjAlignmentInBytes.
460 extern uint64_t OopEncodingHeapMax;
461
462 // Maximal size of compressed class space. Above this limit compression is not possible.
463 // Also upper bound for placement of zero based class space. (Class space is further limited
464 // to be < 3G, see arguments.cpp.)
465 const uint64_t KlassEncodingMetaspaceMax = (uint64_t(max_juint) + 1) << LogKlassAlignmentInBytes;
466
467 // Machine dependent stuff
468
469 // The maximum size of the code cache. Can be overridden by targets.
470 #define CODE_CACHE_SIZE_LIMIT (2*G)
471 // Allow targets to reduce the default size of the code cache.
472 #define CODE_CACHE_DEFAULT_LIMIT CODE_CACHE_SIZE_LIMIT
473
|
434
435 #define HOTSWAP
436
437 //----------------------------------------------------------------------------------------------------
438 // Object alignment, in units of HeapWords.
439 //
440 // Minimum is max(BytesPerLong, BytesPerDouble, BytesPerOop) / HeapWordSize, so jlong, jdouble and
441 // reference fields can be naturally aligned.
442
443 extern int MinObjAlignment;
444 extern int MinObjAlignmentInBytes;
445 extern int MinObjAlignmentInBytesMask;
446
447 extern int LogMinObjAlignment;
448 extern int LogMinObjAlignmentInBytes;
449
450 const int LogKlassAlignmentInBytes = 3;
451 const int LogKlassAlignment = LogKlassAlignmentInBytes - LogHeapWordSize;
452 const int KlassAlignmentInBytes = 1 << LogKlassAlignmentInBytes;
453 const int KlassAlignment = KlassAlignmentInBytes / HeapWordSize;
454 const int KlassPtrValueTypeMask = (1 << (LogKlassAlignmentInBytes + 1)) - 1;
455
456 // Maximal size of heap where unscaled compression can be used. Also upper bound
457 // for heap placement: 4GB.
458 const uint64_t UnscaledOopHeapMax = (uint64_t(max_juint) + 1);
459 // Maximal size of heap where compressed oops can be used. Also upper bound for heap
460 // placement for zero based compression algorithm: UnscaledOopHeapMax << LogMinObjAlignmentInBytes.
461 extern uint64_t OopEncodingHeapMax;
462
463 // Maximal size of compressed class space. Above this limit compression is not possible.
464 // Also upper bound for placement of zero based class space. (Class space is further limited
465 // to be < 3G, see arguments.cpp.)
466 const uint64_t KlassEncodingMetaspaceMax = (uint64_t(max_juint) + 1) << LogKlassAlignmentInBytes;
467
468 // Machine dependent stuff
469
470 // The maximum size of the code cache. Can be overridden by targets.
471 #define CODE_CACHE_SIZE_LIMIT (2*G)
472 // Allow targets to reduce the default size of the code cache.
473 #define CODE_CACHE_DEFAULT_LIMIT CODE_CACHE_SIZE_LIMIT
474
|