[Aarch64] Fix crash in Arrays.equals() intrinsic with -CCP

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P3
    • 23
    • Affects Version/s: 23, 24, repo-lilliput-17, repo-lilliput-21, repo-lilliput
    • Component/s: hotspot
    • b23
    • aarch64

      The implementations of Arrays.equals() in macroAssembler_aarch64.cpp, MacroAssembler::arrays_equals() assumes that the start of arrays is 8-byte-aligned. Since JDK-8139457 this is no longer the case, at least when running with -CompressedClassPointers (or Lilliput). The effect is that the loops may run over the array end, and if the array is at heap boundary, and that memory is unmapped, then it may crash.

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

              Created:
              Updated:
              Resolved: