equal
deleted
inserted
replaced
745 } else { |
745 } else { |
746 // Set to a non-NULL value so the ReservedSpace ctor computes |
746 // Set to a non-NULL value so the ReservedSpace ctor computes |
747 // the correct no-access prefix. |
747 // the correct no-access prefix. |
748 // The final value will be set in initialize_heap() below. |
748 // The final value will be set in initialize_heap() below. |
749 Universe::set_narrow_oop_base((address)NarrowOopHeapMax); |
749 Universe::set_narrow_oop_base((address)NarrowOopHeapMax); |
750 #ifdef _WIN64 |
750 #if defined(_WIN64) || defined(AIX) |
751 if (UseLargePages) { |
751 if (UseLargePages) { |
752 // Cannot allocate guard pages for implicit checks in indexed |
752 // Cannot allocate guard pages for implicit checks in indexed |
753 // addressing mode when large pages are specified on windows. |
753 // addressing mode when large pages are specified on windows. |
754 Universe::set_narrow_oop_use_implicit_null_checks(false); |
754 Universe::set_narrow_oop_use_implicit_null_checks(false); |
755 } |
755 } |
823 (UseCompressedKlassPointers && |
823 (UseCompressedKlassPointers && |
824 ((uint64_t)Universe::heap()->base() + Universe::class_metaspace_size() > KlassEncodingMetaspaceMax))) { |
824 ((uint64_t)Universe::heap()->base() + Universe::class_metaspace_size() > KlassEncodingMetaspaceMax))) { |
825 // Can't reserve heap below 32Gb. |
825 // Can't reserve heap below 32Gb. |
826 // keep the Universe::narrow_oop_base() set in Universe::reserve_heap() |
826 // keep the Universe::narrow_oop_base() set in Universe::reserve_heap() |
827 Universe::set_narrow_oop_shift(LogMinObjAlignmentInBytes); |
827 Universe::set_narrow_oop_shift(LogMinObjAlignmentInBytes); |
|
828 #ifdef AIX |
|
829 // There is no protected page before the heap. This assures all oops |
|
830 // are decoded so that NULL is preserved, so this page will not be accessed. |
|
831 Universe::set_narrow_oop_use_implicit_null_checks(false); |
|
832 #endif |
828 if (verbose) { |
833 if (verbose) { |
829 tty->print(", %s: "PTR_FORMAT, |
834 tty->print(", %s: "PTR_FORMAT, |
830 narrow_oop_mode_to_string(HeapBasedNarrowOop), |
835 narrow_oop_mode_to_string(HeapBasedNarrowOop), |
831 Universe::narrow_oop_base()); |
836 Universe::narrow_oop_base()); |
832 } |
837 } |