pr51244-11.c
557 Bytes
-
This fixes a fallout that actually goes back to 5.0 but went unnoticed. · 50c6dd20
The costs for movt and movrt type of insns were not correctly reported and ifcvt thus made some bad choices for SH. A new cset_zero pattern variant is also required to fix the matching for some recent changes in the middle end. gcc/ PR target/51244 * config/sh/sh.c (sh_movt_set_dest, sh_movrt_set_dest): Add overloads. (sh_rtx_costs): Handle SET of movt and movrt patterns. * cnofig/sh/sh-protos.h (sh_movt_set_dest, sh_movrt_set_dest): Forward declare new overloads. * config/sh/sh.md (*cset_zero): Add variant that takes a treg_set_expr operand. gcc/testsuite/ PR target/51244 * gcc.target/sh/pr51244-11.c: Add more detailed expected insn matching. From-SVN: r240471
Oleg Endo committed