aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Law <law@gcc.gnu.org>1993-03-11 07:13:07 -0700
committerJeff Law <law@gcc.gnu.org>1993-03-11 07:13:07 -0700
commit23c6329e923f41277f5d44aa796c4e758b0a8f88 (patch)
treefcafe1617517c6e02c2f8ae17fd6c5c0960526bb
parent6bf6db507dcde5d55afb8c1d7a79de0fa902a9cf (diff)
downloadgcc-23c6329e923f41277f5d44aa796c4e758b0a8f88.zip
gcc-23c6329e923f41277f5d44aa796c4e758b0a8f88.tar.gz
gcc-23c6329e923f41277f5d44aa796c4e758b0a8f88.tar.bz2
pa.md (FP sCC insn): Delete.
* pa.md (FP sCC insn): Delete. (sCC define_expands): FAIL instead of generating FP sCC insns. From-SVN: r3706
-rw-r--r--gcc/config/pa/pa.md51
1 files changed, 12 insertions, 39 deletions
diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md
index b681c5d..56a84b6 100644
--- a/gcc/config/pa/pa.md
+++ b/gcc/config/pa/pa.md
@@ -198,15 +198,6 @@
;; scc insns.
-(define_insn ""
- [(set (match_operand:SI 0 "register_operand" "=r")
- (match_operator:CCFP 1 "comparison_operator" [(reg:CCFP 0)
- (const_int 0)]))]
- ""
- "copy 0,%0\;ftest\;ldi 1,%0"
- [(set_attr "type" "unary")
- (set_attr "length" "3")])
-
(define_expand "seq"
[(set (match_operand:SI 0 "register_operand" "")
(eq:SI (match_dup 1)
@@ -214,12 +205,9 @@
""
"
{
+ /* fp scc patterns rarely match, and are not a win on the PA. */
if (hppa_branch_type != CMP_SI)
- {
- emit_insn (gen_cmp_fp (EQ, hppa_compare_op0, hppa_compare_op1));
- emit_insn (gen_scond_fp (EQ, operands[0]));
- DONE;
- }
+ FAIL;
/* set up operands from compare. */
operands[1] = hppa_compare_op0;
operands[2] = hppa_compare_op1;
@@ -233,12 +221,9 @@
""
"
{
+ /* fp scc patterns rarely match, and are not a win on the PA. */
if (hppa_branch_type != CMP_SI)
- {
- emit_insn (gen_cmp_fp (NE, hppa_compare_op0, hppa_compare_op1));
- emit_insn (gen_scond_fp (NE, operands[0]));
- DONE;
- }
+ FAIL;
operands[1] = hppa_compare_op0;
operands[2] = hppa_compare_op1;
}")
@@ -250,12 +235,9 @@
""
"
{
+ /* fp scc patterns rarely match, and are not a win on the PA. */
if (hppa_branch_type != CMP_SI)
- {
- emit_insn (gen_cmp_fp (LT, hppa_compare_op0, hppa_compare_op1));
- emit_insn (gen_scond_fp (LT, operands[0]));
- DONE;
- }
+ FAIL;
operands[1] = hppa_compare_op0;
operands[2] = hppa_compare_op1;
}")
@@ -267,12 +249,9 @@
""
"
{
+ /* fp scc patterns rarely match, and are not a win on the PA. */
if (hppa_branch_type != CMP_SI)
- {
- emit_insn (gen_cmp_fp (GT, hppa_compare_op0, hppa_compare_op1));
- emit_insn (gen_scond_fp (GT, operands[0]));
- DONE;
- }
+ FAIL;
operands[1] = hppa_compare_op0;
operands[2] = hppa_compare_op1;
}")
@@ -284,12 +263,9 @@
""
"
{
+ /* fp scc patterns rarely match, and are not a win on the PA. */
if (hppa_branch_type != CMP_SI)
- {
- emit_insn (gen_cmp_fp (LE, hppa_compare_op0, hppa_compare_op1));
- emit_insn (gen_scond_fp (LE, operands[0]));
- DONE;
- }
+ FAIL;
operands[1] = hppa_compare_op0;
operands[2] = hppa_compare_op1;
}")
@@ -301,12 +277,9 @@
""
"
{
+ /* fp scc patterns rarely match, and are not a win on the PA. */
if (hppa_branch_type != CMP_SI)
- {
- emit_insn (gen_cmp_fp (GE, hppa_compare_op0, hppa_compare_op1));
- emit_insn (gen_scond_fp (GE, operands[0]));
- DONE;
- }
+ FAIL;
operands[1] = hppa_compare_op0;
operands[2] = hppa_compare_op1;
}")