• Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Icon: P4 P4
    • 18
    • None
    • hotspot
    • b07

      This is in preparation of JDK-8270489 - Support archived heap objects in EpsilonGC.

      We have the following function that's used ONLY in asserts and WhiteBox tests.

      bool HeapShared::is_archived_object(oop p) {
        return Universe::heap()->is_archived_object(p);
      }

      This function is used for two completely different purposes:

      [1] During dump time, is "p" an object that's about to be written into the archived heap?

      [2] During runtime, is "p" an object in an archive region?

      To support archived objects in other types of GCs that do not support archive regions, we should refactor this code to distinguish between the two use cases. This will make the code easier to understand.

      =========

      [0] Remove HeapShared::is_archived_object()

      [1] -> add new function HeapShared::is_archived_object_during_dumptime()

      [2] -> rewrite the code to call Universe::heap()->is_archived_object(p) instead.

            iklam Ioi Lam
            iklam Ioi Lam
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: