u_endian.h needs to be included, otherwise PIPE_ARCH_BIG_ENDIAN might not be defined on big-endian architectures and the endian conversion macros will be incorrect.
I don't think anything is broken because of this, I just noticed this when looking at the file.