https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110946
--- Comment #8 from Alexander Monakov <amonakov at gcc dot gnu.org> --- Why? There's no bswap here, in particular mbedtls_put_unaligned_uint64 is a straightforward wrapper for memcpy: inline void mbedtls_put_unaligned_uint64(void *p, uint64_t x) { memcpy(p, &x, sizeof(x)); } We deciding to not inline this, while inlining its get_unaligned counterpart? Seems bizarre.