diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-03-01 11:04:51 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2024-03-01 11:04:51 +0100 |
commit | d3d0fcb652748191714e4c0b2541e977a7fc7bd7 (patch) | |
tree | c7b66ed76f7fc924ece16dea7daa70586bb3a3a3 /gcc/function.cc | |
parent | c6d4fb0062c6059fe21968a9fe44c56814c88873 (diff) | |
download | gcc-d3d0fcb652748191714e4c0b2541e977a7fc7bd7.zip gcc-d3d0fcb652748191714e4c0b2541e977a7fc7bd7.tar.gz gcc-d3d0fcb652748191714e4c0b2541e977a7fc7bd7.tar.bz2 |
bitint: Handle VCE from large/huge _BitInt SSA_NAME from load [PR114156]
When adding checks in which case not to merge a VIEW_CONVERT_EXPR from
large/huge _BitInt to vector/complex etc., I missed the case of loads.
Those are handled differently later.
Anyway, I think the load case is something we can handle just fine,
so the following patch does that instead of preventing the merging
gimple_lower_bitint; we'd then copy from memory to memory and and do the
vce only on the second one, it is just better to vce the first one.
2024-03-01 Jakub Jelinek <jakub@redhat.com>
PR middle-end/114156
* gimple-lower-bitint.cc (bitint_large_huge::lower_stmt): Allow
rhs1 of a VCE to have no underlying variable if it is a load and
handle that case.
* gcc.dg/bitint-96.c: New test.
Diffstat (limited to 'gcc/function.cc')
0 files changed, 0 insertions, 0 deletions