AArch64: Backend support for VectorAPI 4th incubation

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: 19, 20
    • Component/s: hotspot
    • aarch64
    • generic

      Implement AArch64 backend to emit optimized instruction sequence for following newly proposed VectorOperations and APIs.

      1) Vector.compress, Vector.expand and VectorMask.compress APIs.
         - Cross lane vector compress and expansion operations which works under the influence of an explicit mask.
         - Mask flavor of the API clubs together all the set bits/ lanes of mask.
      2) VectorOperations.BIT_COUNT:
           - counting the number of one-bits
      3) VectorOperations.LEADING_ZEROS_COUNT:
           - counting the number of leading zero bits
      4) VectorOperations.TRAILING_ZEROS_COUNT:
          - counting the number of trailing zero bits
      5) VectorOperations.REVERSE:
          - reversing the order of bits
      6) VectorOperations.REVERSE_BYTES:
         - reversing the order of bytes
      7) compress and expand bits
         - Semantics are based on Hacker's Delight section 7-4 Compress, or Generalized Extract.

            Assignee:
            Eric Liu
            Reporter:
            Eric Liu
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: