http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54760
--- Comment #11 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-10-15 22:04:42 UTC --- Author: olegendo Date: Mon Oct 15 22:04:37 2012 New Revision: 192480 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192480 Log: PR target/54760 * config/sh/sh.c (sh_find_base_reg_disp): Stop searching insns when hitting a call insn if GBR is marked as call used. * config/sh/iterators.md (QIHISIDI): New mode iterator. * config/sh/predicates.md (gbr_address_mem): New predicate. * config/sh/sh.md (*movdi_gbr_load, *movdi_gbr_store): New insn_and_split. Use QIHISIDI instead of QIHISI in unnamed GBR addressing splits. PR target/54760 * gcc.target/sh/pr54760-2.c: Add long long and unsigned long long test functions. * gcc.target/sh/pr54760-4.c: New. Added: trunk/gcc/testsuite/gcc.target/sh/pr54760-4.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/sh/iterators.md trunk/gcc/config/sh/predicates.md trunk/gcc/config/sh/sh.c trunk/gcc/config/sh/sh.md trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.target/sh/pr54760-2.c