aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorTakayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp>2024-02-04 19:20:16 +0900
committerMax Filippov <jcmvbkbc@gmail.com>2024-02-04 13:25:10 -0800
commit7c2c7dd24bd93cd9cb8a6e54a4d11850982665fd (patch)
treee1781634da2399bf8d746f8a82098ac5cefe3e21 /contrib
parent777df37a12e55ecbc135efbed2749a8a8a756d4d (diff)
downloadgcc-7c2c7dd24bd93cd9cb8a6e54a4d11850982665fd.zip
gcc-7c2c7dd24bd93cd9cb8a6e54a4d11850982665fd.tar.gz
gcc-7c2c7dd24bd93cd9cb8a6e54a4d11850982665fd.tar.bz2
xtensa: Recover constant synthesis for HImode after LRA transition
After LRA transition, HImode constants that don't fit into signed 12 bits are no longer subject to constant synthesis: /* example */ void test(void) { short foo = 32767; __asm__ ("" :: "r"(foo)); } ;; before .literal_position .literal .LC0, 32767 test: l32r a9, .LC0 ret.n This patch fixes that: ;; after test: movi.n a9, -1 extui a9, a9, 17, 15 ret.n gcc/ChangeLog: * config/xtensa/xtensa.md (SHI): New mode iterator. (2 split patterns related to constsynth): Change to also accept HImode operands.
Diffstat (limited to 'contrib')
0 files changed, 0 insertions, 0 deletions