< prev index next >

src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template

Print this page
rev 49509 : [vector] Intrinsic support for resize


 237     }
 238 
 239     public abstract Mask<$Boxtype$, S> greaterThanEq($type$ o);
 240 
 241     @Override
 242     public $abstractvectortype$<S> blend(Vector<$Boxtype$,S> o, Mask<$Boxtype$, S> m) {
 243         return bOp(o, (i, a, b) -> m.getElement(i) ? b : a);
 244     }
 245 
 246     public abstract $abstractvectortype$<S> blend($type$ o, Mask<$Boxtype$, S> m);
 247 
 248     @Override
 249     public abstract $abstractvectortype$<S> shuffle(Vector<$Boxtype$,S> o, Shuffle<$Boxtype$, S> m);
 250 
 251     @Override
 252     public abstract $abstractvectortype$<S> swizzle(Shuffle<$Boxtype$, S> m);
 253 
 254     @Override
 255     @ForceInline
 256     public <T extends Shape> $abstractvectortype$<T> resize(Species<$Boxtype$, T> species) {
 257         return ($abstractvectortype$<T>) species.reshape(this);
 258     }
 259 
 260     @Override
 261     public abstract $abstractvectortype$<S> rotateEL(int i);
 262 
 263     @Override
 264     public abstract $abstractvectortype$<S> rotateER(int i);
 265 
 266     @Override
 267     public abstract $abstractvectortype$<S> shiftEL(int i);
 268 
 269     @Override
 270     public abstract $abstractvectortype$<S> shiftER(int i);
 271 
 272 #if[FP]
 273     public $abstractvectortype$<S> div(Vector<$Boxtype$,S> o) {
 274         return bOp(o, (i, a, b) -> ($type$) (a / b));
 275     }
 276 
 277     public abstract $abstractvectortype$<S> div($type$ o);


 772                     return ($type$) 0;
 773                 }
 774             });
 775         }
 776 
 777         @Override
 778         public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix) {
 779             bb = bb.duplicate().position(ix);
 780             $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
 781             return op(i -> fb.get(i));
 782         }
 783 
 784         @Override
 785         public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix, Mask<$Boxtype$, S> m) {
 786             bb = bb.duplicate().position(ix);
 787             $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
 788             return op(m, i -> fb.get(i));
 789         }
 790 
 791         @Override

 792         public <F, T extends Shape> $abstractvectortype$<S> reshape(Vector<F, T> o) {
 793             int blen = Math.max(o.species().bitSize(), bitSize()) / Byte.SIZE;
 794             ByteBuffer bb = ByteBuffer.allocate(blen).order(ByteOrder.nativeOrder());
 795             o.intoByteBuffer(bb, 0);
 796             return fromByteBuffer(bb, 0);
 797         }
 798 
 799         @Override
 800         @ForceInline
 801         public <F> $abstractvectortype$<S> rebracket(Vector<F, S> o) {
 802             return reshape(o);
 803         }
 804 
 805         @Override
 806         @ForceInline
 807         public <T extends Shape> $abstractvectortype$<S> resize(Vector<$Boxtype$, T> o) {
 808             return reshape(o);
 809         }
 810 
 811         @Override




 237     }
 238 
 239     public abstract Mask<$Boxtype$, S> greaterThanEq($type$ o);
 240 
 241     @Override
 242     public $abstractvectortype$<S> blend(Vector<$Boxtype$,S> o, Mask<$Boxtype$, S> m) {
 243         return bOp(o, (i, a, b) -> m.getElement(i) ? b : a);
 244     }
 245 
 246     public abstract $abstractvectortype$<S> blend($type$ o, Mask<$Boxtype$, S> m);
 247 
 248     @Override
 249     public abstract $abstractvectortype$<S> shuffle(Vector<$Boxtype$,S> o, Shuffle<$Boxtype$, S> m);
 250 
 251     @Override
 252     public abstract $abstractvectortype$<S> swizzle(Shuffle<$Boxtype$, S> m);
 253 
 254     @Override
 255     @ForceInline
 256     public <T extends Shape> $abstractvectortype$<T> resize(Species<$Boxtype$, T> species) {
 257         return ($abstractvectortype$<T>) species.resize(this);
 258     }
 259 
 260     @Override
 261     public abstract $abstractvectortype$<S> rotateEL(int i);
 262 
 263     @Override
 264     public abstract $abstractvectortype$<S> rotateER(int i);
 265 
 266     @Override
 267     public abstract $abstractvectortype$<S> shiftEL(int i);
 268 
 269     @Override
 270     public abstract $abstractvectortype$<S> shiftER(int i);
 271 
 272 #if[FP]
 273     public $abstractvectortype$<S> div(Vector<$Boxtype$,S> o) {
 274         return bOp(o, (i, a, b) -> ($type$) (a / b));
 275     }
 276 
 277     public abstract $abstractvectortype$<S> div($type$ o);


 772                     return ($type$) 0;
 773                 }
 774             });
 775         }
 776 
 777         @Override
 778         public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix) {
 779             bb = bb.duplicate().position(ix);
 780             $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
 781             return op(i -> fb.get(i));
 782         }
 783 
 784         @Override
 785         public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix, Mask<$Boxtype$, S> m) {
 786             bb = bb.duplicate().position(ix);
 787             $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
 788             return op(m, i -> fb.get(i));
 789         }
 790 
 791         @Override
 792         @ForceInline
 793         public <F, T extends Shape> $abstractvectortype$<S> reshape(Vector<F, T> o) {
 794             int blen = Math.max(o.species().bitSize(), bitSize()) / Byte.SIZE;
 795             ByteBuffer bb = ByteBuffer.allocate(blen).order(ByteOrder.nativeOrder());
 796             o.intoByteBuffer(bb, 0);
 797             return fromByteBuffer(bb, 0);
 798         }
 799 
 800         @Override
 801         @ForceInline
 802         public <F> $abstractvectortype$<S> rebracket(Vector<F, S> o) {
 803             return reshape(o);
 804         }
 805 
 806         @Override
 807         @ForceInline
 808         public <T extends Shape> $abstractvectortype$<S> resize(Vector<$Boxtype$, T> o) {
 809             return reshape(o);
 810         }
 811 
 812         @Override


< prev index next >