Currently "VectorMask.andNot" is not vectorized:
public VectorMask<E> andNot(VectorMask<E> m) {
// FIXME: Generate good code here.
return bOp(m, (i, a, b) -> a && !b);
}
This can be implemented with calling the "and(m.not())" instead. Since "and()/not()" have been intrinsified that can be vectorized in hotspot, directly calling them can make this function be vectorized as well.
public VectorMask<E> andNot(VectorMask<E> m) {
// FIXME: Generate good code here.
return bOp(m, (i, a, b) -> a && !b);
}
This can be implemented with calling the "and(m.not())" instead. Since "and()/not()" have been intrinsified that can be vectorized in hotspot, directly calling them can make this function be vectorized as well.