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

[vector] Correctly implement masked load and store operations

    XMLWordPrintable

    Details

      Description

      Certain masked load and store operations are implemented incorrectly or are not implemented:

      - masked fromByteBuffer is not implemented correctly when any one or more masked lanes are unset. The bounds checks look incorrect and the access ignores the mask. If the load is intrinsified it could result in access beyond the end of the buffer region.
      (see masked fromArray as a template to copy from)

      - masked intoByteBuffer throws an assertion error (stating unimplemented) if any masked lane is unset and the store covers the end of the buffer region.
      (see masked intoArray as a template to copy from)

      - masked intoArray and fromArray using an indexMap (scatter/gather)

      Aim to provide a functional but non-optimal implementation when there are unset bits in the mask, and/or if the set bits are out of bounds.

      Negative tests are required to ensure out-of-bounds exceptions are thrown, with and without intrinsification (see JDK-8221816 for possible test templates)

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              psandoz Paul Sandoz
              Reporter:
              psandoz Paul Sandoz
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: