aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1993-12-27 12:02:09 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1993-12-27 12:02:09 -0500
commit2bbc163fd3252347d205212c6393e3d74e4af820 (patch)
treec65bfe1171c2a277605d6ac2deb60c2c72250390
parent1fc3d466bf4799a802bec8664dd1cb3a37216257 (diff)
downloadgcc-2bbc163fd3252347d205212c6393e3d74e4af820.zip
gcc-2bbc163fd3252347d205212c6393e3d74e4af820.tar.gz
gcc-2bbc163fd3252347d205212c6393e3d74e4af820.tar.bz2
(maxsf3, minsf3): Correct numerous errors.
From-SVN: r6338
-rw-r--r--gcc/config/alpha/alpha.md12
1 files changed, 7 insertions, 5 deletions
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index 73ab0c6..94db72f 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -1696,26 +1696,28 @@
(define_expand "maxsf3"
[(set (match_dup 3)
- (le:DF (match_operand:SF 1 "reg_or_fp0_operand" "")
+ (le:DF (float_extend:DF (match_operand:SF 1 "reg_or_fp0_operand" ""))
(float_extend:DF (match_operand:SF 2 "reg_or_fp0_operand" ""))))
(set (match_operand:SF 0 "register_operand" "")
- (if_then_else:SF (eq (match_dup 3) (const_int 0))
+ (if_then_else:SF (eq (match_dup 3) (match_dup 4))
(match_dup 1) (match_dup 2)))]
"TARGET_FP"
"
-{ operands[3] = gen_reg_rtx (SFmode);
+{ operands[3] = gen_reg_rtx (DFmode);
+ operands[4] = CONST0_RTX (DFmode);
}")
(define_expand "minsf3"
[(set (match_dup 3)
- (lt:DF (match_operand:SF 1 "reg_or_fp0_operand" "")
+ (lt:DF (float_extend:DF (match_operand:SF 1 "reg_or_fp0_operand" ""))
(float_extend:DF (match_operand:SF 2 "reg_or_fp0_operand" ""))))
(set (match_operand:SF 0 "register_operand" "")
(if_then_else:SF (ne (match_dup 3) (const_int 0))
(match_dup 1) (match_dup 2)))]
"TARGET_FP"
"
-{ operands[3] = gen_reg_rtx (SFmode);
+{ operands[3] = gen_reg_rtx (DFmode);
+ operands[4] = CONST0_RTX (DFmode);
}")
(define_insn ""