gnu/gcc/391b113a2b78e9ec66acfae75c1ca3679d166fb6 AVR: Provide pushti1 to fix passing vector(16) in memory
This patch adds TImode to the MPUSH mode iterator that
determines which push<mode>1 insns are available.
It fixes passing vector(16) in memory.
Push insns work around expr.cc which doesn't work properly for
STACK_GROWS_DOWNWARDS + POST_DEC push.
PR middle-end/127098
gcc/
* config/avr/avr.md (MPUSH): Add TImode to mode iterator.
* config/avr/avr.h (PUSH_ROUNDING): Adjust comment.
gcc/testsuite/
* gcc.target/avr/torture/pr127098.c: New test.
(cherry picked from commit 96a3184a784fe96c19ca9b15866162a01045b9de)
3 files changed