diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-11-19 10:26:44 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2024-11-19 10:26:44 +0100 |
commit | 694613a7f9adfa9c87e733adc63839c8801f2b5c (patch) | |
tree | f7d004f02c82aefd12ae28a2af06d497961ac653 /gcc/fwprop.cc | |
parent | 600cab162c561c3061317c998972b0ed1b681d5b (diff) | |
download | gcc-694613a7f9adfa9c87e733adc63839c8801f2b5c.zip gcc-694613a7f9adfa9c87e733adc63839c8801f2b5c.tar.gz gcc-694613a7f9adfa9c87e733adc63839c8801f2b5c.tar.bz2 |
expand: Fix up ICE on VCE from _Complex types to _BitInt [PR117458]
extract_bit_field can't handle extraction of non-mode precision
from complex mode operands which don't live in memory, e.g. gen_lowpart
crashes on those.
The following patch in that case defers the extract_bit_field call
until op0 is forced into memory.
2024-11-19 Jakub Jelinek <jakub@redhat.com>
PR middle-end/117458
* expr.cc (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: Don't
call extract_bit_field if op0 has complex mode and isn't a MEM,
instead first force op0 into memory and then call extract_bit_field.
* gcc.dg/bitint-116.c: New test.
Diffstat (limited to 'gcc/fwprop.cc')
0 files changed, 0 insertions, 0 deletions