< prev index next >

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

Print this page

        

@@ -995,16 +995,23 @@
                                   Shuffle<Double, Shapes.S256Bit> s, Mask<Double, Shapes.S256Bit> m) {
         return this.rearrange(s).blend(v.rearrange(s), m);
     }
 
     @Override
-    public Double256Vector rearrange(Shuffle<Double, Shapes.S256Bit> s) {
-        return uOp((i, a) -> {
+    @ForceInline
+    public Double256Vector rearrange(Shuffle<Double, Shapes.S256Bit> o1) {
+    Objects.requireNonNull(o1);
+    Double256Shuffle s =  (Double256Shuffle)o1;
+
+        return VectorIntrinsics.rearrangeOp(
+            Double256Vector.class, Double256Shuffle.class, double.class, LENGTH,
+            this, s,
+            (v1, s_) -> v1.uOp((i, a) -> {
             double[] vec = this.getElements();
-            int ei = s.getElement(i);
+            int ei = s_.getElement(i);
             return vec[ei];
-        });
+        }));
     }
 
     @Override
     @ForceInline
     public Double256Vector blend(Vector<Double, Shapes.S256Bit> o1, Mask<Double, Shapes.S256Bit> o2) {
< prev index next >