]> git.ipfire.org Git - thirdparty/gcc.git/commit
bitint: Fix up big-endian handling in limb_access [PR122714]
authorJakub Jelinek <jakub@redhat.com>
Thu, 27 Nov 2025 12:55:17 +0000 (13:55 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 27 Nov 2025 12:55:17 +0000 (13:55 +0100)
commit23e1be3c9517fd0a46ec6dca5af7eae2ea977179
treef4cd883a1765ccd09d13420893d0e1cee6d894ec
parentfd743aab3bc8c521e0e8cd1742a71c2d713e2c76
bitint: Fix up big-endian handling in limb_access [PR122714]

The bitint_extended changes in limb_access broke bitint_big_endian.
As we sometimes (for bitint_extended) access the MEM_REFs using
atype rather than m_limb_type, for big-endian we need to adjust
the MEM_REFs offset if atype has smaller TYPE_SIZE_UNIT than m_limb_size.

2025-11-27  Jakub Jelinek  <jakub@redhat.com>

PR target/122714
* gimple-lower-bitint.cc (bitint_large_huge::limb_access): Adjust
MEM_REFs offset for bitint_big_endian if ltype doesn't have the
same byte size as m_limb_type.
gcc/gimple-lower-bitint.cc