VectorShape
selects a particular implementation of
Vector
s.
A shape in combination with the element type determines
a particular
vector species
object.
API Note
Because not all shapes are supported by all platforms,
shape-agnostic code is more portable.
User code that selects particular shapes may
fail to run, or run slowly, on some platforms.
Use
VectorShape.
and
VectorSpecies.
to select the shape that is usually preferable for
most uses.
Modifier and Type | Field and Description |
---|---|
pack-priv static final int | |
pack-priv static final int | |
private static VectorShape | |
public static final VectorShape | S_128_BIT
Shape of length 128 bits |
public static final VectorShape | S_256_BIT
Shape of length 256 bits |
public static final VectorShape | S_512_BIT
Shape of length 512 bits |
public static final VectorShape | S_64_BIT
Shape of length 64 bits |
public static final VectorShape | S_Max_BIT
Shape of maximum length supported on the platform |
pack-priv static final int | |
pack-priv static final int | |
pack-priv static final int | |
pack-priv static final int | |
pack-priv static final int | |
pack-priv static final int | |
pack-priv final int | |
pack-priv final int | |
pack-priv final int |
Access | Constructor and Description |
---|---|
private |
Modifier and Type | Method and Description |
---|---|
private static VectorShape | |
public static VectorShape | Returns: a shape corresponding to the vector bit-sizethe proposed vector size in bits bitSize)Finds an appropriate shape depending on the proposed bit-size of a vector. |
public static VectorShape | Returns: a shape corresponding to the index vector bit-size and element size.the proposed index vector size in bits indexBitSize, int the proposed element size in bits elementSize)Finds an appropriate index shape depending on the proposed index-bit-size and element-size of a vector. |
pack-priv static int | Returns: the maximum vector bit.the element type. etype)Returns the maximum vector bit size for a given element type. |
pack-priv int | Returns: the number of lanesthe species describing the element type species)Return the number of lanes of a vector of this shape and whose element type is of the provided species |
pack-priv static VectorShape | |
pack-priv static VectorShape | |
public static VectorShape | Returns: a preferred shape for all element typesFinds the vector shape preferred by the current platform for all vector element types. |
public static VectorShape | |
public static VectorShape[] | |
public int | Returns: the size, in bits, of vectors of this shape.Returns the size, in bits, of vectors of this shape. |
public < the boxed element type E> VectorSpecies |
INC_VECTOR_SIZE | back to summary |
---|---|
pack-priv static final int INC_VECTOR_SIZE |
MAX_VECTOR_SIZE | back to summary |
---|---|
pack-priv static final int MAX_VECTOR_SIZE |
PREFERRED_SHAPE | back to summary |
---|---|
private static VectorShape PREFERRED_SHAPE
|
S_128_BIT | back to summary |
---|---|
public static final VectorShape S_128_BIT Shape of length 128 bits |
S_256_BIT | back to summary |
---|---|
public static final VectorShape S_256_BIT Shape of length 256 bits |
S_512_BIT | back to summary |
---|---|
public static final VectorShape S_512_BIT Shape of length 512 bits |
S_64_BIT | back to summary |
---|---|
public static final VectorShape S_64_BIT Shape of length 64 bits |
S_Max_BIT | back to summary |
---|---|
public static final VectorShape S_Max_BIT Shape of maximum length supported on the platform |
SK_128_BIT | back to summary |
---|---|
pack-priv static final int SK_128_BIT |
SK_256_BIT | back to summary |
---|---|
pack-priv static final int SK_256_BIT |
SK_512_BIT | back to summary |
---|---|
pack-priv static final int SK_512_BIT |
SK_64_BIT | back to summary |
---|---|
pack-priv static final int SK_64_BIT |
SK_LIMIT | back to summary |
---|---|
pack-priv static final int SK_LIMIT |
SK_Max_BIT | back to summary |
---|---|
pack-priv static final int SK_Max_BIT |
switchKey | back to summary |
---|---|
pack-priv final int switchKey |
vectorBitSize | back to summary |
---|---|
pack-priv final int vectorBitSize |
vectorBitSizeLog2 | back to summary |
---|---|
pack-priv final int vectorBitSizeLog2 |
VectorShape | back to summary |
---|---|
private VectorShape(int vectorBitSize) |
computePreferredShape | back to summary |
---|---|
private static VectorShape computePreferredShape() |
forBitSize | back to summary |
---|---|
public static VectorShape forBitSize(int bitSize) Finds an appropriate shape depending on the proposed bit-size of a vector.
|
forIndexBitSize | back to summary |
---|---|
public static VectorShape forIndexBitSize(int indexBitSize, int elementSize) Finds an appropriate index shape depending on the proposed index-bit-size and element-size of a vector.
|
getMaxVectorBitSize | back to summary |
---|---|
pack-priv static int getMaxVectorBitSize(Class<?> etype) Returns the maximum vector bit size for a given element type.
|
laneCount | back to summary |
---|---|
pack-priv int laneCount(VectorSpecies<?> species) Return the number of lanes of a vector of this shape and whose element type is of the provided species
|
largestShapeFor | back to summary |
---|---|
pack-priv static VectorShape largestShapeFor(Class<?> etype) |
ofSwitchKey | back to summary |
---|---|
pack-priv static VectorShape ofSwitchKey(int sk) |
preferredShape | back to summary |
---|---|
public static VectorShape preferredShape() Finds the vector shape preferred by the current platform for all vector element types.
The preferred shape by the platform has the largest possible
bit-size, under the constraint that all lane sizes are
supported, from
|
valueOf | back to summary |
---|---|
public static VectorShape valueOf(String name) |
values | back to summary |
---|---|
public static VectorShape[] values() |
vectorBitSize | back to summary |
---|---|
public int vectorBitSize() Returns the size, in bits, of vectors of this shape.
|
withLanes | back to summary |
---|---|
public <E> VectorSpecies Finds a vector species with the given element type
and the current shape.
Returns the same value as
|