diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2024-07-01 12:31:01 +0200 |
---|---|---|
committer | Georg-Johann Lay <avr@gjlay.de> | 2024-07-01 13:07:35 +0200 |
commit | 3d23abd3dd9c8c226ea302203b214b346f4fe8d7 (patch) | |
tree | d794352550a6d786e3318fe588b0b83be5f4035a /gcc/ada | |
parent | 90c558ef740d0b98892b6a7811c278eda8adeea3 (diff) | |
download | gcc-3d23abd3dd9c8c226ea302203b214b346f4fe8d7.zip gcc-3d23abd3dd9c8c226ea302203b214b346f4fe8d7.tar.gz gcc-3d23abd3dd9c8c226ea302203b214b346f4fe8d7.tar.bz2 |
AVR: target/88236, target/115726 - Fix __memx code generation.
PR target/88236
PR target/115726
gcc/
* config/avr/avr.md (mov<mode>) [avr_mem_memx_p]: Expand in such a
way that the destination does not overlap with any hard register
clobbered / used by xload8qi_A resp. xload<mode>_A.
* config/avr/avr.cc (avr_out_xload): Avoid early-clobber
situation for Z by executing just one load when the output register
overlaps with Z.
gcc/testsuite/
* gcc.target/avr/torture/pr88236-pr115726.c: New test.
Diffstat (limited to 'gcc/ada')
0 files changed, 0 insertions, 0 deletions