< prev index next >
src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java
Print this page
@@ -995,16 +995,23 @@
Shuffle<Float, Shapes.S256Bit> s, Mask<Float, Shapes.S256Bit> m) {
return this.rearrange(s).blend(v.rearrange(s), m);
}
@Override
- public Float256Vector rearrange(Shuffle<Float, Shapes.S256Bit> s) {
- return uOp((i, a) -> {
+ @ForceInline
+ public Float256Vector rearrange(Shuffle<Float, Shapes.S256Bit> o1) {
+ Objects.requireNonNull(o1);
+ Float256Shuffle s = (Float256Shuffle)o1;
+
+ return VectorIntrinsics.rearrangeOp(
+ Float256Vector.class, Float256Shuffle.class, float.class, LENGTH,
+ this, s,
+ (v1, s_) -> v1.uOp((i, a) -> {
float[] vec = this.getElements();
- int ei = s.getElement(i);
+ int ei = s_.getElement(i);
return vec[ei];
- });
+ }));
}
@Override
@ForceInline
public Float256Vector blend(Vector<Float, Shapes.S256Bit> o1, Mask<Float, Shapes.S256Bit> o2) {
< prev index next >