HomeFreeBSD

tests: Test endian.h, byteswap.h, sys/endian.h and both endian.h and byteswap.h…

Description

tests: Test endian.h, byteswap.h, sys/endian.h and both endian.h and byteswap.h together

What's required and not required to be defined is complicated. Write
tests to enshrine it:
endian.h and sys/endian.h:

		[bl]e{16,32,64}toh
		hto[bl]e{16,32,64}

byteswap.h:

		{__,}bswap_{16,32,64}

sys/endian.h:

		{__,}bswap{16,32,64}
		_BYTE_ORDER
		_BIG_ENDIAN
		_LITTLE_ENDIAN
		_PDP_ENDIAN

endian.h:

		__BYTE_ORDER
		__BIG_ENDIAN
		__LITTLE_ENDIAN
		__PDP_ENDIAN
		__FLOAT_WORD_ORDER

We also ensure that the sys/endian.h conditions hold true when
we include both endian.h and sys/endian.h in either order.

NOT TESTED: deprecated symbols, internal to glibc symbols

Sponsored by: Netflix
Discussed with: markj (made the changes he requested)
Differential Revision: https://reviews.freebsd.org/D32052

Details

Provenance
impAuthored on Oct 15 2024, 11:14 PM
Differential Revision
D32052: tests: Test endian.h, byteswap.h, sys/endian.h and both endian.h and byteswap.h together
Parents
rG9dbff03c3478: nvme: Inject artificial failure on reset
Branches
Unknown
Tags
Unknown