< prev index next >

src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractSpecies.java

Print this page
rev 55891 : 8222897: [vector] Renaming of shift, rotate operations. Few other api changes.
Summary: Renaming of shift, rotate operations. Few other api changes.
Reviewed-by: jrose, briangoetz
rev 55894 : 8222897: [vector] Renaming of shift, rotate operations. Few other api changes.
Summary: Renaming of shift, rotate operations. Few other api changes.
Reviewed-by: jrose, briangoetz

*** 44,78 **** @Stable protected final Class<E> elementType; @Stable protected final int elementSize; @Stable ! protected final Class<?> boxType; @Stable protected final Class<?> maskType; @Stable protected final VectorShape indexShape; AbstractSpecies(VectorShape shape, Class<E> elementType, int elementSize, ! Class<?> boxType, Class<?> maskType, Function<boolean[], VectorMask<E>> maskFactory, Function<IntUnaryOperator, VectorShuffle<E>> shuffleFromOpFactory, fShuffleFromArray<E> shuffleFromArrayFactory) { this.maskFactory = maskFactory; this.shuffleFromArrayFactory = shuffleFromArrayFactory; this.shuffleFromOpFactory = shuffleFromOpFactory; this.shape = shape; this.elementType = elementType; this.elementSize = elementSize; ! this.boxType = boxType; this.maskType = maskType; ! if (boxType == Long64Vector.class || boxType == Double64Vector.class) { indexShape = VectorShape.S_64_BIT; ! } ! else { int bitSize = Vector.bitSizeForVectorLength(int.class, shape.bitSize() / elementSize); indexShape = VectorShape.forBitSize(bitSize); } } --- 44,77 ---- @Stable protected final Class<E> elementType; @Stable protected final int elementSize; @Stable ! protected final Class<?> vectorType; @Stable protected final Class<?> maskType; @Stable protected final VectorShape indexShape; AbstractSpecies(VectorShape shape, Class<E> elementType, int elementSize, ! Class<?> vectorType, Class<?> maskType, Function<boolean[], VectorMask<E>> maskFactory, Function<IntUnaryOperator, VectorShuffle<E>> shuffleFromOpFactory, fShuffleFromArray<E> shuffleFromArrayFactory) { this.maskFactory = maskFactory; this.shuffleFromArrayFactory = shuffleFromArrayFactory; this.shuffleFromOpFactory = shuffleFromOpFactory; this.shape = shape; this.elementType = elementType; this.elementSize = elementSize; ! this.vectorType = vectorType; this.maskType = maskType; ! if (vectorType == Long64Vector.class || vectorType == Double64Vector.class) { indexShape = VectorShape.S_64_BIT; ! } else { int bitSize = Vector.bitSizeForVectorLength(int.class, shape.bitSize() / elementSize); indexShape = VectorShape.forBitSize(bitSize); } }
*** 94,105 **** return elementType; } @Override @ForceInline ! public Class<?> boxType() { ! return boxType; } @Override @ForceInline public Class<?> maskType() { --- 93,104 ---- return elementType; } @Override @ForceInline ! public Class<?> vectorType() { ! return vectorType; } @Override @ForceInline public Class<?> maskType() {
< prev index next >