The XL implementation of vec_round for vector double uses "round-to-nearest, ties to even" just as the vector float version does. However clang and gcc use "round-to-nearest-away" for vector double and "round-to-nearest, ties to even" for vector float.
The XL behaviour is implemented under the __XL_COMPAT_ALTIVEC__ macro similarly to other instances of incompatibility.