diff options
author | Oleg Endo <olegendo@gcc.gnu.org> | 2013-11-26 11:48:16 +0000 |
---|---|---|
committer | Oleg Endo <olegendo@gcc.gnu.org> | 2013-11-26 11:48:16 +0000 |
commit | 91f65b12bb90226b982c4c7a31d135e73810c1de (patch) | |
tree | f023627b216c6579d7de4bdf913bdc41513ce8a2 /gcc/tree-data-ref.c | |
parent | 8d590b9cb389dc759d48974e61740e96d61a2605 (diff) | |
download | gcc-91f65b12bb90226b982c4c7a31d135e73810c1de.zip gcc-91f65b12bb90226b982c4c7a31d135e73810c1de.tar.gz gcc-91f65b12bb90226b982c4c7a31d135e73810c1de.tar.bz2 |
re PR target/58314 (SH4 error: 'asm' operand requires impossible reload)
PR target/58314
PR target/50751
* config/sh/sh.c (max_mov_insn_displacement, disp_addr_displacement):
Prefix function names with 'sh_'. Make them non-static.
* config/sh/sh-protos.h (sh_disp_addr_displacement,
sh_max_mov_insn_displacement): Add declarations.
* config/sh/constraints.md (Q): Reject QImode.
(Sdd): Use match_code "mem".
(Snd): Fix erroneous matching of non-memory operands.
* config/sh/predicates.md (short_displacement_mem_operand): New
predicate.
(general_movsrc_operand): Disallow PC relative QImode loads.
* config/sh/sh.md (*mov<mode>_reg_reg): Remove it.
(*movqi, *movhi): Merge both insns into...
(*mov<mode>): ... this new insn. Replace generic 'm' constraints with
'Snd' and 'Sdd' constraints. Calculate insn length dynamically based
on the operand types.
From-SVN: r205390
Diffstat (limited to 'gcc/tree-data-ref.c')
0 files changed, 0 insertions, 0 deletions