summaryrefslogtreecommitdiff
path: root/gcc/config/sparc
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-10-27 04:04:06 +0000
committerDavid S. Miller <davem@gcc.gnu.org>2011-10-26 21:04:06 -0700
commit78968b7620c8c3ee2490a74ca93a0300d18773a2 (patch)
treec9e687cb2220cf157959d4b6286ff9cf88483364 /gcc/config/sparc
parent56ec62fa1d3d2a8655e4abc129f6e19a49e89d9a (diff)
downloadgcc-78968b7620c8c3ee2490a74ca93a0300d18773a2.tar.gz
Fix thinko in previous sparc setcc changes.
* config/sparc/sparc.c (emit_scc_insn): Force attempt of v9 sequences if we're comparing DImode and comparison is other than EQ or NE. From-SVN: r180558
Diffstat (limited to 'gcc/config/sparc')
-rw-r--r--gcc/config/sparc/sparc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index 80e05a61e47..ea9fdeff628 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -2541,6 +2541,11 @@ emit_scc_insn (rtx operands[])
}
}
+ if (TARGET_V9
+ && GET_MODE (x) == DImode
+ && gen_v9_scc (operands[0], code, x, y))
+ return true;
+
/* We can do LTU and GEU using the addx/subx instructions too. And
for GTU/LEU, if both operands are registers swap them and fall
back to the easy case. */