< prev index next >

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

Print this page




 827     }
 828 
 829     @Override
 830     public Byte128Vector shiftER(int j) {
 831         byte[] vec = getElements();
 832         byte[] res = new byte[length()];
 833         for (int i = 0; i < length() - j; i++){
 834             res[i + j] = vec[i];
 835         }
 836         return new Byte128Vector(res);
 837     }
 838 
 839     @Override
 840     @ForceInline
 841     public Byte128Vector rearrange(Vector<Byte, Shapes.S128Bit> v,
 842                                   Shuffle<Byte, Shapes.S128Bit> s, Mask<Byte, Shapes.S128Bit> m) {
 843         return this.rearrange(s).blend(v.rearrange(s), m);
 844     }
 845 
 846     @Override
 847     public Byte128Vector rearrange(Shuffle<Byte, Shapes.S128Bit> s) {
 848         return uOp((i, a) -> {







 849             byte[] vec = this.getElements();
 850             int ei = s.getElement(i);
 851             return vec[ei];
 852         });
 853     }
 854 
 855     @Override
 856     @ForceInline
 857     public Byte128Vector blend(Vector<Byte, Shapes.S128Bit> o1, Mask<Byte, Shapes.S128Bit> o2) {
 858         Objects.requireNonNull(o1);
 859         Objects.requireNonNull(o2);
 860         Byte128Vector v = (Byte128Vector)o1;
 861         Byte128Mask   m = (Byte128Mask)o2;
 862 
 863         return VectorIntrinsics.blend(
 864             Byte128Vector.class, Byte128Mask.class, byte.class, LENGTH,
 865             this, v, m,
 866             (v1, v2, m_) -> v1.bOp(v2, (i, a, b) -> m_.getElement(i) ? b : a));
 867     }
 868 
 869     // Accessors
 870 
 871     @Override
 872     public byte get(int i) {




 827     }
 828 
 829     @Override
 830     public Byte128Vector shiftER(int j) {
 831         byte[] vec = getElements();
 832         byte[] res = new byte[length()];
 833         for (int i = 0; i < length() - j; i++){
 834             res[i + j] = vec[i];
 835         }
 836         return new Byte128Vector(res);
 837     }
 838 
 839     @Override
 840     @ForceInline
 841     public Byte128Vector rearrange(Vector<Byte, Shapes.S128Bit> v,
 842                                   Shuffle<Byte, Shapes.S128Bit> s, Mask<Byte, Shapes.S128Bit> m) {
 843         return this.rearrange(s).blend(v.rearrange(s), m);
 844     }
 845 
 846     @Override
 847     @ForceInline
 848     public Byte128Vector rearrange(Shuffle<Byte, Shapes.S128Bit> o1) {
 849     Objects.requireNonNull(o1);
 850     Byte128Shuffle s =  (Byte128Shuffle)o1;
 851 
 852         return VectorIntrinsics.rearrangeOp(
 853             Byte128Vector.class, Byte128Shuffle.class, byte.class, LENGTH,
 854             this, s,
 855             (v1, s_) -> v1.uOp((i, a) -> {
 856             byte[] vec = this.getElements();
 857             int ei = s_.getElement(i);
 858             return vec[ei];
 859         }));
 860     }
 861 
 862     @Override
 863     @ForceInline
 864     public Byte128Vector blend(Vector<Byte, Shapes.S128Bit> o1, Mask<Byte, Shapes.S128Bit> o2) {
 865         Objects.requireNonNull(o1);
 866         Objects.requireNonNull(o2);
 867         Byte128Vector v = (Byte128Vector)o1;
 868         Byte128Mask   m = (Byte128Mask)o2;
 869 
 870         return VectorIntrinsics.blend(
 871             Byte128Vector.class, Byte128Mask.class, byte.class, LENGTH,
 872             this, v, m,
 873             (v1, v2, m_) -> v1.bOp(v2, (i, a, b) -> m_.getElement(i) ? b : a));
 874     }
 875 
 876     // Accessors
 877 
 878     @Override
 879     public byte get(int i) {


< prev index next >