From: Jim Wilson Date: Tue, 7 Feb 1995 20:57:00 +0000 (-0800) Subject: (prepare_scc_operands, from_compare): Force constant 0 into X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e553bfb99a96003ab5e2ef7fff56087518302436;p=gcc.git (prepare_scc_operands, from_compare): Force constant 0 into register for unsigned comparisons. From-SVN: r8891 --- diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 0fc3953dafe..7e6f325759c 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -823,7 +823,9 @@ prepare_scc_operands (code) } sh_compare_op0 = force_reg (SImode, sh_compare_op0); - if (code != EQ && code != NE && sh_compare_op1 != const0_rtx) + if (code != EQ && code != NE + && (sh_compare_op1 != const0_rtx + || code == GTU || code == GEU || code == LTU || code == LEU)) sh_compare_op1 = force_reg (SImode, sh_compare_op1); emit_insn (gen_rtx (SET, VOIDmode, @@ -2013,7 +2015,8 @@ from_compare (operands, code) { /* Force args into regs, since we can't use constants here */ sh_compare_op0 = force_reg (SImode, sh_compare_op0); - if (sh_compare_op1 != const0_rtx) + if (sh_compare_op1 != const0_rtx + || code == GTU || code == GEU || code == LTU || code == LEU) sh_compare_op1 = force_reg (SImode, sh_compare_op1); } operands[1] = sh_compare_op0;