JDK-8244379 : [vector] Develop Vector API unit tests for missed public api code coverage
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: repo-panama
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • Submitted: 2020-05-04
  • Updated: 2021-12-09
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
repo-panamaUnresolved
Related Reports
Blocks :  
Relates :  
Relates :  
Description
Public Vector API code coverage shows only 79% of methods are covered by unit tests (test/jdk/jdk/incubator/vector).

Class    	         %	        (# of covered/simple/uncovered methods)
===========================
ByteVector 	 82%	(53/19/88)
DoubleVector 	 77%	(48/17/84)
FloatVector 	 77%	(48/17/84)
IntVector 	 81%	(54/17/88)
LongVector 	 84%	(54/16/83)
ShortVector 	 81%	(53/18/88)
VectorMask 	 43%	(3/0/7)
VectorOperators 	25%	(1/0/4)
VectorShape 	 100%	(4/1/5)
VectorShuffle 	 45%	(5/0/11)
VectorSpecies  50%	(2/0/4)


New unit tests to cover Vector API gaps need to be developed.

Comments
[~sviswanathan], [~psandoz], would it be possible to develop tests for missing CC in jdk17?
27-04-2021

The latest CC report shows 99% of public Vector API is covered: ByteVector 100% (84/0/84) DoubleVector 100% (80/0/80) FloatVector 100% (80/0/80) IntVector 100% (84/0/84) LongVector 100% (79/0/79) ShortVector 100% (84/0/84) VectorMask 100% (7/0/7) VectorOperators 50% (1/0/2) VectorShape 100% (5/0/5) VectorShuffle 100% (11/0/11) VectorSpecies 75% (3/0/4) 2 uncovered methods are: 1) jdk.incubator.vector.VectorOperators.$Conversion.ofReinterpret 2) jdk.incubator.vector.VectorSpecies.elementSize Paul ([~psandoz] confirmed that "Both those small methods call internal methods that are covered by other usages, so the risk is minimal". Based on this SQE is ok that missed coverage will be achieved in jdk17.
01-02-2021

The latest Public API CC results are: vector-unstable branch: 90% (463/9/522) ByteVector 93% (76/2/84) DoubleVector 90% (70/2/80) FloatVector 90% (70/2/80) IntVector 94% (78/1/84) LongVector 95% (75/0/79) ShortVector 93% (77/1/84) VectorMask 57% (4/0/7) VectorOperators$Conversion 25% (1/0/4) VectorShape 100% (4/1/5) VectorShuffle 55% (6/0/11) VectorSpecies 50% (2/0/4) vectorIntrinsics branch: 99% (515/0/522) ByteVector 100% (84/0/84) DoubleVector 100% (80/0/80) FloatVector 100% (80/0/80) IntVector 100% (84/0/84) LongVector 100% (79/0/79) ShortVector 100% (84/0/84) VectorMask 57% (4/0/7) VectorOperators$Conversion 25% (1/0/4) VectorShape 100% (5/0/5) VectorShuffle 100% (11/0/11) VectorSpecies 75% (3/0/4)
24-09-2020

Public API code coverage improved to: jdk.incubator.vector 95% (1651/1740)
10-08-2020

The tests are added to vectorIntrinsics branch.
12-05-2020

[~sviswanathan], what branch new tests have been added into?
12-05-2020

The following additional tests are since added to increase the coverage: Masked gather load (fromArray with array as index) Masked scatter store (intoArray with array as index) fromByteArray fromValues toArray Integer div op
12-05-2020

[~sviswanathan] Please, look and re-assign this issue.
04-05-2020