diff options
author | Jeff Law <jeffreyalaw@gmail.com> | 2022-10-17 19:19:25 -0400 |
---|---|---|
committer | Jeff Law <jeffreyalaw@gmail.com> | 2022-10-17 19:19:25 -0400 |
commit | 43ee3f64cb519f2675fa1771007d4aa3baba944f (patch) | |
tree | 933db053eba2660c6603939066e00c6d32833dac /libgcc | |
parent | 9072db9d5b549db5e2f14335ac0adc7735d43bc6 (diff) | |
download | gcc-43ee3f64cb519f2675fa1771007d4aa3baba944f.zip gcc-43ee3f64cb519f2675fa1771007d4aa3baba944f.tar.gz gcc-43ee3f64cb519f2675fa1771007d4aa3baba944f.tar.bz2 |
Add missing splitter for H8
While testing a minor optimization on the H8 my builds failed due to
failure to split a zero-extended memory load. That particular pattern
is a bit special on the H8 in that it's split at assembly time primarily
to get the length computations correct. Arguably that alternative should
go away completely, but I haven't really looked into that.
Anyway, with the final-asm split we obviously need to match a define_split
somewhere. But none was ever written after adding CCZN optimizations. So
if we had a zero extend of a memory operand and it was used to eliminate
a compare, then we'd abort at final asm time.
Regression tested (in conjunction with various other in-progress patches) on
H8 without regressions.
gcc/
* config/h8300/extensions.md (CCZN setting zero extended load): Add
missing splitter.
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions