2 ms·
> Endianness is assumed to be little because the vast majority of hardware is little endian ... libnop for efficiency Do you have any evidence of this? I would
by kevincox 8y ago
> Endianness is assumed to be little because the vast majority of hardware is little endian ... libnop for efficiency
Do you have any evidence of this? I would be flabbergasted if a modern compiler couldn't optimize out a no-op endiannes conversion.
- coreytabaka 8y agoFor the most part the optimization works well. The more subtle issue is that the union trick used by the endian utilities is not compatible with constexpr expressions. There are some interesting use cases for constexpr serialization that fail if the conversions are interposed in the Reader/Writer types. The alternative is to use reinterpret_cast, which is also incompatible with constexpr expressions. Moreover, endian conversion templates are unusually frustrating in the current C++ standard. I wish there were a better way, but one does not currently exist.