diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2025-08-07 14:19:03 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2025-08-07 14:19:03 +0100 |
commit | 8e3239e3e92f3cd57bf3a19f10daa66c4cb45cc1 (patch) | |
tree | b3b832fff1c94587cf427dd407b798157205f0c2 /libjava/sysdep/sh | |
parent | 53f491ccd1e59fad77fb2cb30d1a58b9e5e5f63c (diff) | |
download | gcc-master.zip gcc-master.tar.gz gcc-master.tar.bz2 |
simplify_gen_subreg rejected subregs of literal constants if
MODE_COMPOSITE_P. This was added by the fix for PR96648 in
g:c0f772894b6b3cd8ed5c5dd09d0c7917f51cf70f. Jakub said:
As for the simplify_gen_subreg change, I think it would be desirable
to just avoid creating SUBREGs of constants on all targets and for all
constants, if simplify_immed_subreg simplified, fine, otherwise punt,
but as we are late in GCC11 development, the patch instead guards this
behavior on MODE_COMPOSITE_P (outermode) - i.e. only conversions to
powerpc{,64,64le} double double long double - and only for the cases where
simplify_immed_subreg was called.
I'm not sure about relaxing the codes further, since subregs might
be wanted for CONST, SYMBOL_REF and LABEL_REF. But removing the
MODE_COMPOSITE_P is needed to fix PR120718, where we get an ICE
from generating a subreg of a V2SI const_vector.
gcc/
PR rtl-optimization/120718
* simplify-rtx.cc (simplify_context::simplify_gen_subreg):
Remove MODE_COMPOSITE_P condition.
gcc/testsuite/
PR rtl-optimization/120718
* gcc.target/aarch64/sve/acle/general/pr120718.c: New test.
Diffstat (limited to 'libjava/sysdep/sh')
0 files changed, 0 insertions, 0 deletions