-
Enhancement
-
Resolution: Fixed
-
P4
-
repo-panama
-
x86_64
-
generic
A) Extend C2 compile X86 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.
B) Enhance SLP Vectorizer to auto-vectorize already existing Java SE scalar equivalents of newly proposed vector operations.
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.
B) Enhance SLP Vectorizer to auto-vectorize already existing Java SE scalar equivalents of newly proposed vector operations.
- relates to
-
JDK-8283413 Add C2 mid-end and x86 back-end implementation for bit REVERSE and REVERSE_BYTES operation
- Resolved
-
JDK-8283709 Add x86 back-end implementation for bit BIT_COUNT operation
- Resolved
-
JDK-8284459 Add x86 back-end implementation for LEADING and TRAILING ZEROS COUNT operations
- Resolved