APIdia Launch Partner
Top Description Inners Fields Constructors Methods
jdk.incubator.vector

public abstract sealed Class IntVector

extends AbstractVector<Integer>
permits IntVector64, IntVector128, IntVector256, IntVector512, IntVectorMax
Class Inheritance
Known Direct Subclasses
jdk.incubator.vector.IntVector128, jdk.incubator.vector.IntVector256, jdk.incubator.vector.IntVector512, jdk.incubator.vector.IntVector64, jdk.incubator.vector.IntVectorMax
Annotations
@SuppressWarnings:cast
Imports
java.lang.foreign.MemorySegment, .ValueLayout, java.nio.ByteOrder, java.util.Arrays, .Objects, java.util.function.Function, jdk.internal.foreign.AbstractMemorySegmentImpl, jdk.internal.misc.ScopedMemoryAccess, .Unsafe, jdk.internal.vm.annotation.ForceInline, jdk.internal.vm.vector.VectorSupport

A specialized Vector representing an ordered immutable sequence of int values.

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static interface
pack-priv static class
IntVector.IntSpecies

Class representing IntVector's of the same VectorShape.

Field Summary

Modifier and TypeField and Description
pack-priv static final long
pack-priv static final int
private static final VectorOperators.ImplCache<VectorOperators.Binary, VectorSupport.BinaryOperation<IntVector, VectorMask<Integer>>>
private static final VectorOperators.ImplCache<VectorOperators.Binary, VectorSupport.VectorBroadcastIntOp<IntVector, VectorMask<Integer>>>
pack-priv static final ValueLayout.OfInt
pack-priv static final int
pack-priv static final int
pack-priv static final int
private static final int
private static final int
private static final int
private static final VectorOperators.ImplCache<VectorOperators.Associative, VectorSupport.ReductionOperation<IntVector, VectorMask<Integer>>>
private static final int
public static final VectorSpecies<Integer>
SPECIES_128

Species representing IntVectors of VectorShape.S_128_BIT.

public static final VectorSpecies<Integer>
SPECIES_256

Species representing IntVectors of VectorShape.S_256_BIT.

public static final VectorSpecies<Integer>
SPECIES_512

Species representing IntVectors of VectorShape.S_512_BIT.

public static final VectorSpecies<Integer>
SPECIES_64

Species representing IntVectors of VectorShape.S_64_BIT.

public static final VectorSpecies<Integer>
SPECIES_MAX

Species representing IntVectors of VectorShape.S_Max_BIT.

public static final VectorSpecies<Integer>
SPECIES_PREFERRED

Preferred species for IntVectors.

private static final VectorOperators.ImplCache<VectorOperators.Ternary, VectorSupport.TernaryOperation<IntVector, VectorMask<Integer>>>
private static final int
private static final int
private static final VectorOperators.ImplCache<VectorOperators.Unary, VectorSupport.UnaryOperation<IntVector, VectorMask<Integer>>>
Inherited from jdk.incubator.vector.AbstractVector:
NATIVE_ENDIANOFFSET_IN_RANGEOFFSET_OUT_OF_RANGEREGISTER_ENDIAN

Constructor Summary

AccessConstructor and Description
pack-priv
IntVector(int[] vec)

Method Summary

Modifier and TypeMethod and Description
public final IntVector
abs()

Implements abstract jdk.incubator.vector.Vector.abs.

Returns the absolute value of this vector.

public final IntVector
add(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.add.

Adds this vector to a second input vector.

public final IntVector

Returns:

the result of adding each lane of this vector to the scalar
add
(int
the input scalar
e
)

Adds this vector to the broadcast of an input scalar.

public final IntVector
add(Vector<Integer> v, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.add.

Adds this vector to a second input vector, selecting lanes under the control of a mask.

public final IntVector

Returns:

the result of adding each lane of this vector to the scalar
add
(int
the input scalar
e
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Adds this vector to the broadcast of an input scalar, selecting lane elements controlled by a mask.

public abstract IntVector
addIndex(int scale)

Implements abstract jdk.incubator.vector.Vector.addIndex.

Adds the lanes of this vector to their corresponding lane numbers, scaled by a given constant.

pack-priv final IntVector
addIndexTemplate(int scale)

public final IntVector

Returns:

the bitwise & of this vector and the second input vector
and
(Vector<Integer>
a second input vector
v
)

Computes the bitwise logical conjunction (&) of this vector and a second input vector.

public final IntVector

Returns:

the bitwise & of this vector and scalar
and
(int
an input scalar
e
)

Computes the bitwise logical conjunction (&) of this vector and a scalar.

pack-priv static long
arrayAddress(int[] a, int index)

private static VectorSupport.BinaryOperation<IntVector, VectorMask<Integer>>
binaryOperations(int opc_)

pack-priv final <F> VectorShuffle<F>
public final IntVector

Returns:

the bitwise blend of the given bits into the current vector, under control of the bitwise mask
bitwiseBlend
(Vector<Integer>
input bits to blend into the current vector
bits
,
Vector<Integer>
a bitwise mask to enable blending of the input bits
mask
)

Blends together the bits of two vectors under the control of a third, which supplies mask bits.

public final IntVector

Returns:

the bitwise blend of the given bits into the current vector, under control of the bitwise mask
bitwiseBlend
(int
input bits to blend into the current vector
bits
,
int
a bitwise mask to enable blending of the input bits
mask
)

Blends together the bits of a vector and a scalar under the control of another scalar, which supplies mask bits.

public final IntVector

Returns:

the bitwise blend of the given bits into the current vector, under control of the bitwise mask
bitwiseBlend
(int
input bits to blend into the current vector
bits
,
Vector<Integer>
a bitwise mask to enable blending of the input bits
mask
)

Blends together the bits of a vector and a scalar under the control of another vector, which supplies mask bits.

public final IntVector

Returns:

the bitwise blend of the given bits into the current vector, under control of the bitwise mask
bitwiseBlend
(Vector<Integer>
input bits to blend into the current vector
bits
,
int
a bitwise mask to enable blending of the input bits
mask
)

Blends together the bits of two vectors under the control of a scalar, which supplies mask bits.

public abstract IntVector
blend(Vector<Integer> v, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.blend.

Replaces selected lanes of this vector with corresponding lanes from a second input vector under the control of a mask.

public final IntVector

Returns:

the result of blending the lane elements of this vector with the scalar value
blend
(int
the input scalar, containing the replacement lane value
e
,
VectorMask<Integer>
the mask controlling lane selection of the scalar
m
)

Replaces selected lanes of this vector with a scalar value under the control of a mask.

public final IntVector

Returns:

the result of blending the lane elements of this vector with the scalar value
blend
(long
the input scalar, containing the replacement lane value
e
,
VectorMask<Integer>
the mask controlling lane selection of the scalar
m
)

Implements abstract jdk.incubator.vector.Vector.blend.

Replaces selected lanes of this vector with a scalar value under the control of a mask.

pack-priv final <M extends VectorMask<Integer>> IntVector
blendTemplate(Class<M> maskType, IntVector v, M m)

pack-priv abstract IntVector
pack-priv abstract IntVector
pack-priv final IntVector
pack-priv final IntVector
public abstract IntVector

Returns:

a vector where all lane elements are set to the primitive value e
broadcast
(int
the value to broadcast
e
)

Returns a vector of the same species as this one where all lane elements are set to the primitive value e.

public static IntVector

Returns:

a vector where all lane elements are set to the primitive value e
broadcast
(VectorSpecies<Integer>
species of the desired vector
species
,
int
the value to broadcast
e
)

Returns a vector of the given species where all lane elements are set to the primitive value e.

public abstract IntVector
broadcast(long e)

Implements abstract jdk.incubator.vector.Vector.broadcast.

Returns a vector of the same species as this one where all lane elements are set to the primitive value e.

public static IntVector

Returns:

a vector where all lane elements are set to the primitive value e
broadcast
(VectorSpecies<Integer>
species of the desired vector
species
,
long
the value to broadcast
e
)

Returns a vector of the given species where all lane elements are set to the primitive value e.

private static VectorSupport.VectorBroadcastIntOp<IntVector, VectorMask<Integer>>
pack-priv final IntVector
pack-priv final IntVector
pack-priv final AbstractMask<Integer>
pack-priv static long
byteArrayAddress(byte[] a, int index)

public abstract VectorMask<Integer>
compare(VectorOperators.Comparison op, Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.compare.

Tests this vector by comparing it with another input vector, according to the given comparison operation.

public abstract VectorMask<Integer>

Returns:

the mask result of testing lane-wise if this vector compares to the input, according to the selected comparison operator
compare
(VectorOperators.Comparison
the operation used to compare lane values
op
,
int
the input scalar
e
)

Tests this vector by comparing it with an input scalar, according to the given comparison operation.

public final VectorMask<Integer>

Returns:

the mask result of testing lane-wise if this vector compares to the input, according to the selected comparison operator, and only in the lanes selected by the mask
compare
(VectorOperators.Comparison
the operation used to compare lane values
op
,
int
the input scalar
e
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Tests this vector by comparing it with an input scalar, according to the given comparison operation, in lanes selected by a mask.

public abstract VectorMask<Integer>
compare(VectorOperators.Comparison op, long e)

Implements abstract jdk.incubator.vector.Vector.compare.

Tests this vector by comparing it with an input scalar, according to the given comparison operation.

public final VectorMask<Integer>
compare(VectorOperators.Comparison op, long e, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.compare.

Tests this vector by comparing it with an input scalar, according to the given comparison operation, in lanes selected by a mask.

pack-priv final <M extends VectorMask<Integer>> M
pack-priv final <M extends VectorMask<Integer>> M
pack-priv final <M extends VectorMask<Integer>> M
pack-priv final <M extends VectorMask<Integer>> M
private static boolean
compareWithOp(int cond, int a, int b)

public abstract IntVector
compress(VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.compress.

Compresses the lane elements of this vector selecting lanes under the control of a specific mask.

pack-priv static IntVector
pack-priv final <M extends AbstractMask<Integer>> IntVector
compressTemplate(Class<M> masktype, M m)

private void
conditionalStoreNYI(int offset, IntVector.IntSpecies vsp, VectorMask<Integer> m, int scale, int limit)

public final IntVector
div(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.div.

Divides this vector by a second input vector.

public final IntVector

Returns:

the result of dividing each lane of this vector by the scalar
div
(int
the input scalar
e
)

Divides this vector by the broadcast of an input scalar.

public final IntVector
div(Vector<Integer> v, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.div.

Divides this vector by a second input vector under the control of a mask.

public final IntVector

Returns:

the result of dividing each lane of this vector by the scalar
div
(int
the input scalar
e
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Divides this vector by the broadcast of an input scalar, selecting lane elements controlled by a mask.

public final VectorMask<Integer>
eq(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.eq.

Tests if this vector is equal to another input vector.

public final VectorMask<Integer>

Returns:

the result mask of testing if this vector is equal to e
eq
(int
the input scalar
e
)

Tests if this vector is equal to an input scalar.

public final boolean
equals(Object obj)

Implements abstract jdk.incubator.vector.Vector.equals.

Indicates whether this vector is identical to some other object.

public abstract IntVector
expand(VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.expand.

Expands the lane elements of this vector under the control of a specific mask.

pack-priv static IntVector
pack-priv final <M extends AbstractMask<Integer>> IntVector
expandTemplate(Class<M> masktype, M m)

public static IntVector

Returns:

the vector loaded from an array
fromArray
(VectorSpecies<Integer>
species of desired vector
species
,
int[]
the array
a
,
int
the offset into the array
offset
)

Loads a vector from an array of type int[] starting at an offset.

public static IntVector

Returns:

the vector loaded from an array
fromArray
(VectorSpecies<Integer>
species of desired vector
species
,
int[]
the array
a
,
int
the offset into the array
offset
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Loads a vector from an array of type int[] starting at an offset and using a mask.

public static IntVector

Returns:

the vector loaded from the indexed elements of the array
fromArray
(VectorSpecies<Integer>
species of desired vector
species
,
int[]
the array
a
,
int
the offset into the array, may be negative if relative indexes in the index map compensate to produce a value within the array bounds
offset
,
int[]
the index map
indexMap
,
int
the offset into the index map
mapOffset
)

Gathers a new vector composed of elements from an array of type int[], using indexes obtained by adding a fixed offset to a series of secondary offsets from an index map.

public static IntVector

Returns:

the vector loaded from the indexed elements of the array
fromArray
(VectorSpecies<Integer>
species of desired vector
species
,
int[]
the array
a
,
int
the offset into the array, may be negative if relative indexes in the index map compensate to produce a value within the array bounds
offset
,
int[]
the index map
indexMap
,
int
the offset into the index map
mapOffset
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Gathers a new vector composed of elements from an array of type int[], under the control of a mask, and using indexes obtained by adding a fixed offset to a series of secondary offsets from an index map.

pack-priv abstract IntVector
fromArray0(int[] a, int offset)

pack-priv abstract IntVector
fromArray0(int[] a, int offset, VectorMask<Integer> m, int offsetInRange)

pack-priv abstract IntVector
fromArray0(int[] a, int offset, int[] indexMap, int mapOffset, VectorMask<Integer> m)

pack-priv final IntVector
fromArray0Template(int[] a, int offset)

pack-priv final <M extends VectorMask<Integer>> IntVector
fromArray0Template(Class<M> maskClass, int[] a, int offset, M m, int offsetInRange)

pack-priv final <M extends VectorMask<Integer>> IntVector
fromArray0Template(Class<M> maskClass, int[] a, int offset, int[] indexMap, int mapOffset, M m)

pack-priv static int
fromBits(long bits)

public static IntVector

Returns:

a vector loaded from the memory segment
fromMemorySegment
(VectorSpecies<Integer>
species of desired vector
species
,
MemorySegment
the memory segment
ms
,
long
the offset into the memory segment
offset
,
ByteOrder
the intended byte order
bo
)

Loads a vector from a memory segment starting at an offset into the memory segment.

public static IntVector

Returns:

a vector loaded from the memory segment
fromMemorySegment
(VectorSpecies<Integer>
species of desired vector
species
,
MemorySegment
the memory segment
ms
,
long
the offset into the memory segment
offset
,
ByteOrder
the intended byte order
bo
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Loads a vector from a memory segment starting at an offset into the memory segment and using a mask.

pack-priv abstract IntVector
pack-priv abstract IntVector
fromMemorySegment0(MemorySegment ms, long offset, VectorMask<Integer> m, int offsetInRange)

pack-priv final IntVector
pack-priv final <M extends VectorMask<Integer>> IntVector
fromMemorySegment0Template(Class<M> maskClass, MemorySegment ms, long offset, M m, int offsetInRange)

public final int
hashCode()

Implements abstract jdk.incubator.vector.Vector.hashCode.

Returns a hash code value for the vector.

public final void
intoArray(int[]
the array, of type int[]
a
,
int
the offset into the array
offset
)

Stores this vector into an array of type int[] starting at an offset.

public final void
intoArray(int[]
the array, of type int[]
a
,
int
the offset into the array
offset
,
VectorMask<Integer>
the mask controlling lane storage
m
)

Stores this vector into an array of type int[] starting at offset and using a mask.

public final void
intoArray(int[]
the array
a
,
int
an offset to combine with the index map offsets
offset
,
int[]
the index map
indexMap
,
int
the offset into the index map
mapOffset
)

Scatters this vector into an array of type int[] using indexes obtained by adding a fixed offset to a series of secondary offsets from an index map.

public final void
intoArray(int[]
the array
a
,
int
an offset to combine with the index map offsets
offset
,
int[]
the index map
indexMap
,
int
the offset into the index map
mapOffset
,
VectorMask<Integer>
the mask
m
)

Scatters this vector into an array of type int[], under the control of a mask, and using indexes obtained by adding a fixed offset to a series of secondary offsets from an index map.

pack-priv abstract void
intoArray0(int[] a, int offset)

pack-priv abstract void
intoArray0(int[] a, int offset, VectorMask<Integer> m)

pack-priv abstract void
intoArray0(int[] a, int offset, int[] indexMap, int mapOffset, VectorMask<Integer> m)

pack-priv final void
intoArray0Template(int[] a, int offset)

pack-priv final <M extends VectorMask<Integer>> void
intoArray0Template(Class<M> maskClass, int[] a, int offset, M m)

pack-priv final <M extends VectorMask<Integer>> void
intoArray0Template(Class<M> maskClass, int[] a, int offset, int[] indexMap, int mapOffset, M m)

public final void
intoMemorySegment(MemorySegment ms, long offset, ByteOrder bo)

Implements abstract jdk.incubator.vector.Vector.intoMemorySegment.

Stores this vector into a memory segment starting at an offset using explicit byte order.

public final void
intoMemorySegment(MemorySegment ms, long offset, ByteOrder bo, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.intoMemorySegment.

Stores this vector into a memory segment starting at an offset using explicit byte order and a mask.

pack-priv final void
pack-priv abstract void
pack-priv final <M extends VectorMask<Integer>> void
intoMemorySegment0Template(Class<M> maskClass, MemorySegment ms, long offset, M m)

public abstract int

Returns:

the lane element at lane index i
lane
(int
the lane index
i
)

Gets the lane element at lane index i

public abstract IntVector
lanewise(VectorOperators.Unary op)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Operates on the lane values of this vector.

public abstract IntVector
lanewise(VectorOperators.Unary op, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Operates on the lane values of this vector, with selection of lane elements controlled by a mask.

public abstract IntVector
lanewise(VectorOperators.Binary op, Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Combines the corresponding lane values of this vector with those of a second input vector.

public abstract IntVector
lanewise(VectorOperators.Binary op, Vector<Integer> v, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Combines the corresponding lane values of this vector with those of a second input vector, with selection of lane elements controlled by a mask.

public final IntVector

Returns:

the result of applying the operation lane-wise to the two input vectors
lanewise
(VectorOperators.Binary
the operation used to process lane values
op
,
int
the input scalar
e
)

Combines the lane values of this vector with the value of a broadcast scalar.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vector and the scalar
lanewise
(VectorOperators.Binary
the operation used to process lane values
op
,
int
the input scalar
e
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Combines the lane values of this vector with the value of a broadcast scalar, with selection of lane elements controlled by a mask.

public final IntVector
lanewise(VectorOperators.Binary op, long e)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Combines the lane values of this vector with the value of a broadcast scalar.

public final IntVector
lanewise(VectorOperators.Binary op, long e, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Combines the corresponding lane values of this vector with those of a second input vector, with selection of lane elements controlled by a mask.

public abstract IntVector
lanewise(VectorOperators.Ternary op, Vector<Integer> v1, Vector<Integer> v2)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Combines the corresponding lane values of this vector with the lanes of a second and a third input vector.

public abstract IntVector
lanewise(VectorOperators.Ternary op, Vector<Integer> v1, Vector<Integer> v2, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.lanewise.

Combines the corresponding lane values of this vector with the lanes of a second and a third input vector, with selection of lane elements controlled by a mask.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vector and the scalars
lanewise
(VectorOperators.Ternary
the operation used to combine lane values
op
,
int
the first input scalar
e1
,
int
the second input scalar
e2
)

Combines the lane values of this vector with the values of two broadcast scalars.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vector and the scalars
lanewise
(VectorOperators.Ternary
the operation used to combine lane values
op
,
int
the first input scalar
e1
,
int
the second input scalar
e2
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Combines the lane values of this vector with the values of two broadcast scalars, with selection of lane elements controlled by a mask.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vectors and the scalar
lanewise
(VectorOperators.Ternary
the operation used to combine lane values
op
,
Vector<Integer>
the other input vector
v1
,
int
the input scalar
e2
)

Combines the lane values of this vector with the values of another vector and a broadcast scalar.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vectors and the scalar
lanewise
(VectorOperators.Ternary
the operation used to combine lane values
op
,
Vector<Integer>
the other input vector
v1
,
int
the input scalar
e2
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Combines the lane values of this vector with the values of another vector and a broadcast scalar, with selection of lane elements controlled by a mask.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vectors and the scalar
lanewise
(VectorOperators.Ternary
the operation used to combine lane values
op
,
int
the input scalar
e1
,
Vector<Integer>
the other input vector
v2
)

Combines the lane values of this vector with the values of another vector and a broadcast scalar.

public final IntVector

Returns:

the result of applying the operation lane-wise to the input vectors and the scalar
lanewise
(VectorOperators.Ternary
the operation used to combine lane values
op
,
int
the input scalar
e1
,
Vector<Integer>
the other input vector
v2
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Combines the lane values of this vector with the values of another vector and a broadcast scalar, with selection of lane elements controlled by a mask.

pack-priv abstract IntVector
pack-priv abstract IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final IntVector
ldLongOp(MemorySegment memory, long offset, IntVector.FLdLongOp f)

pack-priv final IntVector
pack-priv final <M> IntVector
ldOp(M memory, int offset, IntVector.FLdOp<M> f)

pack-priv final <M> IntVector
ldOp(M memory, int offset, VectorMask<Integer> m, IntVector.FLdOp<M> f)

public final VectorMask<Integer>
lt(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.lt.

Tests if this vector is less than another input vector.

public final VectorMask<Integer>

Returns:

the mask result of testing if this vector is less than the input scalar
lt
(int
the input scalar
e
)

Tests if this vector is less than an input scalar.

pack-priv final AbstractMask<Integer>
maskFactory(boolean[] bits)

Build a mask directly using my species.

public final IntVector
max(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.max.

Computes the larger of this vector and a second input vector.

public final IntVector

Returns:

the result of multiplying this vector by the given scalar
max
(int
the input scalar
e
)

Computes the larger of this vector and the broadcast of an input scalar.

pack-priv final IntVector
pack-priv static int
memorySegmentGet(MemorySegment ms, long o, int i)

pack-priv static void
memorySegmentSet(MemorySegment ms, long o, int i, int e)

public final IntVector
min(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.min.

Computes the smaller of this vector and a second input vector.

public final IntVector

Returns:

the result of multiplying this vector by the given scalar
min
(int
the input scalar
e
)

Computes the smaller of this vector and the broadcast of an input scalar.

public final IntVector
mul(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.mul.

Multiplies this vector by a second input vector.

public final IntVector

Returns:

the result of multiplying this vector by the given scalar
mul
(int
the input scalar
e
)

Multiplies this vector by the broadcast of an input scalar.

public final IntVector
mul(Vector<Integer> v, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.mul.

Multiplies this vector by a second input vector under the control of a mask.

public final IntVector

Returns:

the result of muling each lane of this vector to the scalar
mul
(int
the input scalar
e
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Multiplies this vector by the broadcast of an input scalar, selecting lane elements controlled by a mask.

public final IntVector
neg()

Implements abstract jdk.incubator.vector.Vector.neg.

Negates this vector.

public final IntVector

Returns:

the bitwise complement ~ of this vector
not
()

Computes the bitwise logical complement (~) of this vector.

pack-priv static int
pack-priv static int
opCode(VectorOperators.Operator op, int requireKind)

pack-priv static boolean
public final IntVector

Returns:

the bitwise | of this vector and the second input vector
or
(Vector<Integer>
a second input vector
v
)

Computes the bitwise logical disjunction (|) of this vector and a second input vector.

public final IntVector

Returns:

the bitwise | of this vector and scalar
or
(int
an input scalar
e
)

Computes the bitwise logical disjunction (|) of this vector and a scalar.

public abstract IntVector
rearrange(VectorShuffle<Integer> shuffle)

Implements abstract jdk.incubator.vector.Vector.rearrange.

Rearranges the lane elements of this vector, selecting lanes under the control of a specific shuffle.

public abstract IntVector
rearrange(VectorShuffle<Integer> s, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.rearrange.

Rearranges the lane elements of this vector, selecting lanes under the control of a specific shuffle and a mask.

public abstract IntVector
rearrange(VectorShuffle<Integer> s, Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.rearrange.

Rearranges the lane elements of two vectors, selecting lanes under the control of a specific shuffle, using both normal and exceptional indexes in the shuffle to steer data.

pack-priv final <S extends VectorShuffle<Integer>> IntVector
rearrangeTemplate(Class<S> shuffletype, S shuffle)

pack-priv final <S extends VectorShuffle<Integer>, M extends VectorMask<Integer>> IntVector
rearrangeTemplate(Class<S> shuffletype, Class<M> masktype, S shuffle, M m)

pack-priv final <S extends VectorShuffle<Integer>> IntVector
rearrangeTemplate(Class<S> shuffletype, S shuffle, IntVector v)

public abstract int

Returns:

the accumulated result
reduceLanes
(VectorOperators.Associative
the operation used to combine lane values
op
)

Returns a value accumulated from all the lanes of this vector.

public abstract int

Returns:

the reduced result accumulated from the selected lane values
reduceLanes
(VectorOperators.Associative
the operation used to combine lane values
op
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Returns a value accumulated from selected lanes of this vector, controlled by a mask.

pack-priv final int
pack-priv final int
public abstract long
reduceLanesToLong(VectorOperators.Associative op)

Implements abstract jdk.incubator.vector.Vector.reduceLanesToLong.

Returns a value accumulated from all the lanes of this vector.

public abstract long
reduceLanesToLong(VectorOperators.Associative op, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.reduceLanesToLong.

Returns a value accumulated from selected lanes of this vector, controlled by a mask.

private static VectorSupport.ReductionOperation<IntVector, VectorMask<Integer>>
public final ByteVector
reinterpretAsBytes()

Implements abstract jdk.incubator.vector.Vector.reinterpretAsBytes.

Views this vector as a vector of the same shape and contents but a lane type of byte, where the bytes are extracted from the lanes according to little-endian order.

pack-priv abstract int
pack-priv final int
pack-priv final int
pack-priv static int
rotateLeft(int a, int n)

pack-priv static int
rotateRight(int a, int n)

public abstract IntVector
selectFrom(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.selectFrom.

Using index values stored in the lanes of this vector, assemble values stored in second vector v.

public abstract IntVector
selectFrom(Vector<Integer> s, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.selectFrom.

Using index values stored in the lanes of this vector, assemble values stored in second vector, under the control of a mask.

public abstract IntVector
selectFrom(Vector<Integer> v1, Vector<Integer> v2)

Implements abstract jdk.incubator.vector.Vector.selectFrom.

Using values stored in the lanes of this vector, assemble values stored in the second vector v1 and third vector v2.

pack-priv final IntVector
pack-priv final <M extends VectorMask<Integer>> IntVector
selectFromTemplate(IntVector v, Class<M> masktype, M m)

pack-priv final IntVector
pack-priv static IntVector
public abstract IntVector
slice(int origin, Vector<Integer> v1)

Implements abstract jdk.incubator.vector.AbstractVector.slice.

Slices a segment of adjacent lanes, starting at a given origin lane in the current vector, and continuing (as needed) into an immediately following vector.

public final IntVector
slice(int origin, Vector<Integer> w, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.slice.

Slices a segment of adjacent lanes under the control of a mask, starting at a given origin lane in the current vector, and continuing (as needed) into an immediately following vector.

public abstract IntVector
slice(int origin)

Implements abstract jdk.incubator.vector.AbstractVector.slice.

Slices a segment of adjacent lanes, starting at a given origin lane in the current vector.

pack-priv final IntVector
sliceTemplate(int origin, Vector<Integer> v1)

pack-priv final IntVector
sliceTemplate(int origin)

pack-priv static IntVector.IntSpecies

Returns:

a species for an element type of int and shape
species
(VectorShape
the shape
s
)

Finds a species for an element type of int and shape.

pack-priv final void
stLongOp(MemorySegment memory, long offset, IntVector.FStLongOp f)

pack-priv final void
pack-priv final <M> void
stOp(M memory, int offset, IntVector.FStOp<M> f)

pack-priv final <M> void
stOp(M memory, int offset, VectorMask<Integer> m, IntVector.FStOp<M> f)

public final IntVector
sub(Vector<Integer> v)

Implements abstract jdk.incubator.vector.Vector.sub.

Subtracts a second input vector from this vector.

public final IntVector

Returns:

the result of subtracting the scalar from each lane of this vector
sub
(int
the input scalar
e
)

Subtracts an input scalar from this vector.

public final IntVector
sub(Vector<Integer> v, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.sub.

Subtracts a second input vector from this vector under the control of a mask.

public final IntVector

Returns:

the result of subtracting the scalar from each lane of this vector
sub
(int
the input scalar
e
,
VectorMask<Integer>
the mask controlling lane selection
m
)

Subtracts an input scalar from this vector under the control of a mask.

pack-priv final IntVector
private static VectorSupport.TernaryOperation<IntVector, VectorMask<Integer>>
public abstract VectorMask<Integer>
test(VectorOperators.Test op)

Implements abstract jdk.incubator.vector.Vector.test.

Tests the lanes of this vector according to the given operation.

public abstract VectorMask<Integer>
test(VectorOperators.Test op, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.test.

Test selected lanes of this vector, according to the given operation.

pack-priv final <M extends VectorMask<Integer>> M
pack-priv final <M extends VectorMask<Integer>> M
testTemplate(Class<M> maskType, VectorOperators.Test op, M mask)

public final int[]

Returns:

an array containing the lane values of this vector
toArray
()

Implements abstract jdk.incubator.vector.Vector.toArray.

Returns an array of type int[] containing all the lane values.

pack-priv static long
toBits(int e)

public final double[]
toDoubleArray()

Implements abstract jdk.incubator.vector.Vector.toDoubleArray.

Returns a double[] array containing all the lane values, converted to the type double.

public final int[]
toIntArray()

Implements abstract jdk.incubator.vector.Vector.toIntArray.

Returns an int[] array containing all the lane values, converted to the type int.

public final long[]
toLongArray()

Implements abstract jdk.incubator.vector.Vector.toLongArray.

Returns a long[] array containing all the lane values, converted to the type long.

pack-priv abstract IntVector
pack-priv abstract IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv final <F> VectorShuffle<F>
public final String

Returns:

a string of the form "[0,1,2...]" reporting the lane values of this vector
toString
()

Implements abstract jdk.incubator.vector.Vector.toString.

Returns a string representation of this vector, of the form "[0,1,2...]", reporting the lane values of this vector, in lane order.

private static VectorSupport.UnaryOperation<IntVector, VectorMask<Integer>>
unaryOperations(int opc_)

public abstract IntVector
unslice(int origin, Vector<Integer> w, int part)

Implements abstract jdk.incubator.vector.Vector.unslice.

Reverses a slice(), inserting the current vector as a slice within another "background" input vector, which is regarded as one or the other input to a hypothetical subsequent slice() operation.

public abstract IntVector
unslice(int origin, Vector<Integer> w, int part, VectorMask<Integer> m)

Implements abstract jdk.incubator.vector.Vector.unslice.

Reverses a slice(), inserting (under the control of a mask) the current vector as a slice within another "background" input vector, which is regarded as one or the other input to a hypothetical subsequent slice() operation.

public abstract IntVector
unslice(int origin)

Implements abstract jdk.incubator.vector.Vector.unslice.

Reverses a slice(), inserting the current vector as a slice within a "background" input of zero lane values.

pack-priv final IntVector
unsliceTemplate(int origin, Vector<Integer> w, int part)

pack-priv final <M extends VectorMask<Integer>> IntVector
unsliceTemplate(Class<M> maskType, int origin, Vector<Integer> w, int part, M m)

pack-priv final IntVector
unsliceTemplate(int origin)

pack-priv abstract IntVector
pack-priv abstract IntVector
pack-priv final IntVector
pack-priv final IntVector
pack-priv abstract int[]
vec()

pack-priv abstract IntVector
vectorFactory(int[] vec)

Build a vector directly using my own constructor.

public final FloatVector
viewAsFloatingLanes()

Implements abstract jdk.incubator.vector.Vector.viewAsFloatingLanes.

Views this vector as a vector of the same shape, length, and contents, but a lane type that is a floating-point type.

public final IntVector
viewAsIntegralLanes()

Implements abstract jdk.incubator.vector.Vector.viewAsIntegralLanes.

Views this vector as a vector of the same shape, length, and contents, but a lane type that is not a floating-point type.

pack-priv final IntVector
pack-priv final IntVector
pack-priv abstract IntVector.IntSpecies
public abstract IntVector

Returns:

the result of replacing the lane element of this vector at lane index i with value e.
withLane
(int
the lane index of the lane element to be replaced
i
,
int
the value to be placed
e
)

Replaces the lane element of this vector at lane index i with value e.

private ArrayIndexOutOfBoundsException
public static IntVector

Returns:

a zero vector
zero
(VectorSpecies<Integer>
species of the desired zero vector
species
)

Returns a vector of the given species where all lane elements are set to zero, the default primitive value.

Inherited from jdk.incubator.vector.AbstractVector:
asByteVectorRawasByteVectorRawTemplateasVectorRawasVectorRawTemplatebitsToShufflebitsToShuffleTemplatecastShapecheckcheckcheckcheck0check0convertconvert0convertShapeconvertShapeTemplatedefaultCastdefaultReinterpretdefaultUCastdivZeroExceptioniotaShuffleiotaShuffleiotaShuffleTemplatelaneTypeOrdinalmaskAllmaskFromArraynormalizeSubLanesForSpeciesreinterpretAsDoublesreinterpretAsFloatsreinterpretAsIntsreinterpretAsLongsreinterpretAsShortsreinterpretShapeTemplateshapeChangeOriginshuffleFromArrayshuffleFromOpspeciessubLanesToSwapswapBytesShuffle