< prev index next >

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

Print this page

438     @ForceInline
439     public Float512Vector rearrange(VectorShuffle<Float> shuffle,
440                                   VectorMask<Float> m) {
441         return (Float512Vector)
442             super.rearrangeTemplate(Float512Shuffle.class,
443                                     Float512Mask.class,
444                                     (Float512Shuffle) shuffle,
445                                     (Float512Mask) m);  // specialize
446     }
447 
448     @Override
449     @ForceInline
450     public Float512Vector rearrange(VectorShuffle<Float> s,
451                                   Vector<Float> v) {
452         return (Float512Vector)
453             super.rearrangeTemplate(Float512Shuffle.class,
454                                     (Float512Shuffle) s,
455                                     (Float512Vector) v);  // specialize
456     }
457 
















458     @Override
459     @ForceInline
460     public Float512Vector selectFrom(Vector<Float> v) {
461         return (Float512Vector)
462             super.selectFromTemplate((Float512Vector) v);  // specialize
463     }
464 
465     @Override
466     @ForceInline
467     public Float512Vector selectFrom(Vector<Float> v,
468                                    VectorMask<Float> m) {
469         return (Float512Vector)
470             super.selectFromTemplate((Float512Vector) v,
471                                      (Float512Mask) m);  // specialize
472     }
473 
474 
475     @ForceInline
476     @Override
477     public float lane(int i) {

643                 this, species,
644                 (m, s) -> s.maskFactory(m.toArray()).check(s));
645         }
646 
647         @Override
648         @ForceInline
649         public Float512Mask eq(VectorMask<Float> mask) {
650             Objects.requireNonNull(mask);
651             Float512Mask m = (Float512Mask)mask;
652             return xor(m.not());
653         }
654 
655         // Unary operations
656 
657         @Override
658         @ForceInline
659         public Float512Mask not() {
660             return xor(maskAll(true));
661         }
662 









663         // Binary operations
664 
665         @Override
666         @ForceInline
667         public Float512Mask and(VectorMask<Float> mask) {
668             Objects.requireNonNull(mask);
669             Float512Mask m = (Float512Mask)mask;
670             return VectorSupport.binaryOp(VECTOR_OP_AND, Float512Mask.class, null, int.class, VLENGTH,
671                                           this, m, null,
672                                           (m1, m2, vm) -> m1.bOp(m2, (i, a, b) -> a & b));
673         }
674 
675         @Override
676         @ForceInline
677         public Float512Mask or(VectorMask<Float> mask) {
678             Objects.requireNonNull(mask);
679             Float512Mask m = (Float512Mask)mask;
680             return VectorSupport.binaryOp(VECTOR_OP_OR, Float512Mask.class, null, int.class, VLENGTH,
681                                           this, m, null,
682                                           (m1, m2, vm) -> m1.bOp(m2, (i, a, b) -> a | b));

438     @ForceInline
439     public Float512Vector rearrange(VectorShuffle<Float> shuffle,
440                                   VectorMask<Float> m) {
441         return (Float512Vector)
442             super.rearrangeTemplate(Float512Shuffle.class,
443                                     Float512Mask.class,
444                                     (Float512Shuffle) shuffle,
445                                     (Float512Mask) m);  // specialize
446     }
447 
448     @Override
449     @ForceInline
450     public Float512Vector rearrange(VectorShuffle<Float> s,
451                                   Vector<Float> v) {
452         return (Float512Vector)
453             super.rearrangeTemplate(Float512Shuffle.class,
454                                     (Float512Shuffle) s,
455                                     (Float512Vector) v);  // specialize
456     }
457 
458     @Override
459     @ForceInline
460     public Float512Vector compress(VectorMask<Float> m) {
461         return (Float512Vector)
462             super.compressTemplate(Float512Mask.class,
463                                    (Float512Mask) m);  // specialize
464     }
465 
466     @Override
467     @ForceInline
468     public Float512Vector expand(VectorMask<Float> m) {
469         return (Float512Vector)
470             super.expandTemplate(Float512Mask.class,
471                                    (Float512Mask) m);  // specialize
472     }
473 
474     @Override
475     @ForceInline
476     public Float512Vector selectFrom(Vector<Float> v) {
477         return (Float512Vector)
478             super.selectFromTemplate((Float512Vector) v);  // specialize
479     }
480 
481     @Override
482     @ForceInline
483     public Float512Vector selectFrom(Vector<Float> v,
484                                    VectorMask<Float> m) {
485         return (Float512Vector)
486             super.selectFromTemplate((Float512Vector) v,
487                                      (Float512Mask) m);  // specialize
488     }
489 
490 
491     @ForceInline
492     @Override
493     public float lane(int i) {

659                 this, species,
660                 (m, s) -> s.maskFactory(m.toArray()).check(s));
661         }
662 
663         @Override
664         @ForceInline
665         public Float512Mask eq(VectorMask<Float> mask) {
666             Objects.requireNonNull(mask);
667             Float512Mask m = (Float512Mask)mask;
668             return xor(m.not());
669         }
670 
671         // Unary operations
672 
673         @Override
674         @ForceInline
675         public Float512Mask not() {
676             return xor(maskAll(true));
677         }
678 
679         @Override
680         @ForceInline
681         public Float512Mask compress() {
682             return (Float512Mask)VectorSupport.comExpOp(VectorSupport.VECTOR_OP_MASK_COMPRESS,
683                 Float512Vector.class, Float512Mask.class, ETYPE, VLENGTH, null, this,
684                 (v1, m1) -> VSPECIES.iota().compare(VectorOperators.LT, m1.trueCount()));
685         }
686 
687 
688         // Binary operations
689 
690         @Override
691         @ForceInline
692         public Float512Mask and(VectorMask<Float> mask) {
693             Objects.requireNonNull(mask);
694             Float512Mask m = (Float512Mask)mask;
695             return VectorSupport.binaryOp(VECTOR_OP_AND, Float512Mask.class, null, int.class, VLENGTH,
696                                           this, m, null,
697                                           (m1, m2, vm) -> m1.bOp(m2, (i, a, b) -> a & b));
698         }
699 
700         @Override
701         @ForceInline
702         public Float512Mask or(VectorMask<Float> mask) {
703             Objects.requireNonNull(mask);
704             Float512Mask m = (Float512Mask)mask;
705             return VectorSupport.binaryOp(VECTOR_OP_OR, Float512Mask.class, null, int.class, VLENGTH,
706                                           this, m, null,
707                                           (m1, m2, vm) -> m1.bOp(m2, (i, a, b) -> a | b));
< prev index next >