898 } 899 900 @Override 901 public Int64Vector shiftER(int j) { 902 int[] vec = getElements(); 903 int[] res = new int[length()]; 904 for (int i = 0; i < length() - j; i++){ 905 res[i + j] = vec[i]; 906 } 907 return new Int64Vector(res); 908 } 909 910 @Override 911 @ForceInline 912 public Int64Vector rearrange(Vector<Integer, Shapes.S64Bit> v, 913 Shuffle<Integer, Shapes.S64Bit> s, Mask<Integer, Shapes.S64Bit> m) { 914 return this.rearrange(s).blend(v.rearrange(s), m); 915 } 916 917 @Override 918 public Int64Vector rearrange(Shuffle<Integer, Shapes.S64Bit> s) { 919 return uOp((i, a) -> { 920 int[] vec = this.getElements(); 921 int ei = s.getElement(i); 922 return vec[ei]; 923 }); 924 } 925 926 @Override 927 @ForceInline 928 public Int64Vector blend(Vector<Integer, Shapes.S64Bit> o1, Mask<Integer, Shapes.S64Bit> o2) { 929 Objects.requireNonNull(o1); 930 Objects.requireNonNull(o2); 931 Int64Vector v = (Int64Vector)o1; 932 Int64Mask m = (Int64Mask)o2; 933 934 return VectorIntrinsics.blend( 935 Int64Vector.class, Int64Mask.class, int.class, LENGTH, 936 this, v, m, 937 (v1, v2, m_) -> v1.bOp(v2, (i, a, b) -> m_.getElement(i) ? b : a)); 938 } 939 940 // Accessors 941 942 @Override 943 public int get(int i) { | 898 } 899 900 @Override 901 public Int64Vector shiftER(int j) { 902 int[] vec = getElements(); 903 int[] res = new int[length()]; 904 for (int i = 0; i < length() - j; i++){ 905 res[i + j] = vec[i]; 906 } 907 return new Int64Vector(res); 908 } 909 910 @Override 911 @ForceInline 912 public Int64Vector rearrange(Vector<Integer, Shapes.S64Bit> v, 913 Shuffle<Integer, Shapes.S64Bit> s, Mask<Integer, Shapes.S64Bit> m) { 914 return this.rearrange(s).blend(v.rearrange(s), m); 915 } 916 917 @Override 918 @ForceInline 919 public Int64Vector rearrange(Shuffle<Integer, Shapes.S64Bit> o1) { 920 Objects.requireNonNull(o1); 921 Int64Shuffle s = (Int64Shuffle)o1; 922 923 return VectorIntrinsics.rearrangeOp( 924 Int64Vector.class, Int64Shuffle.class, int.class, LENGTH, 925 this, s, 926 (v1, s_) -> v1.uOp((i, a) -> { 927 int[] vec = this.getElements(); 928 int ei = s_.getElement(i); 929 return vec[ei]; 930 })); 931 } 932 933 @Override 934 @ForceInline 935 public Int64Vector blend(Vector<Integer, Shapes.S64Bit> o1, Mask<Integer, Shapes.S64Bit> o2) { 936 Objects.requireNonNull(o1); 937 Objects.requireNonNull(o2); 938 Int64Vector v = (Int64Vector)o1; 939 Int64Mask m = (Int64Mask)o2; 940 941 return VectorIntrinsics.blend( 942 Int64Vector.class, Int64Mask.class, int.class, LENGTH, 943 this, v, m, 944 (v1, v2, m_) -> v1.bOp(v2, (i, a, b) -> m_.getElement(i) ? b : a)); 945 } 946 947 // Accessors 948 949 @Override 950 public int get(int i) { |