Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8184914

Use MacroAssembler::cmpoop() consistently when comparing heap objects

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 10
    • Fix Version/s: 10
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b31
    • CPU:
      x86
    • OS:
      generic

      Description

      Current, cmpoop() is only declared for 32-bit x86, and only used in 2 places in C1 to compare oops. In other places, oops are compared using cmpptr(). It would be useful to distinguish normal pointer comparisons from heap object comparisons, and use cmpoop() consistently for heap object comparisons. This would remove clutter in several places where we #ifdef _LP64 around comparisons, and would also allow to insert necessary barriers for GCs that need them (e.g. Shenandoah) later.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              rkennke Roman Kennke
              Reporter:
              rkennke Roman Kennke
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: