Commit 825cb171 by Paul Koning Committed by Paul Koning

Fix several build errors for pdp11 target.

* config/pdp11/pdp11.md (*cmpdf): Fix tstd operands.
(cbranchdf4): Conditional on TARGET_FPU.
(movdf): Ditto; correct alternatives check.
(movmemhi): Fix predicate and constraint.
* config/pdp11/pdp11.h (HARD_REGNO_MODE_OK): Handle 64 bit mode.

From-SVN: r165729
parent 66c92425
2010-10-20 Paul Koning <pkoning@equallogic.com>
Fix several build errors for pdp11 target.
* config/pdp11/pdp11.md (*cmpdf): Fix tstd operands.
(cbranchdf4): Conditional on TARGET_FPU.
(movdf): Ditto; correct alternatives check.
(movmemhi): Fix predicate and constraint.
* config/pdp11/pdp11.h (HARD_REGNO_MODE_OK): Handle 64 bit mode.
2010-10-20 Richard Guenther <rguenther@suse.de> 2010-10-20 Richard Guenther <rguenther@suse.de>
PR lto/45667 PR lto/45667
...@@ -224,7 +224,7 @@ extern const struct real_format pdp11_d_format; ...@@ -224,7 +224,7 @@ extern const struct real_format pdp11_d_format;
#define HARD_REGNO_MODE_OK(REGNO, MODE) \ #define HARD_REGNO_MODE_OK(REGNO, MODE) \
(((REGNO) < 8)? \ (((REGNO) < 8)? \
((GET_MODE_BITSIZE(MODE) <= 16) \ ((GET_MODE_BITSIZE(MODE) <= 16) \
|| (GET_MODE_BITSIZE(MODE) == 32 && !((REGNO) & 1))) \ || (GET_MODE_BITSIZE(MODE) >= 32 && !((REGNO) & 1))) \
:(MODE) == DFmode) :(MODE) == DFmode)
......
;;- Machine description for the pdp11 for GNU C compiler ;;- Machine description for the pdp11 for GNU C compiler
;; Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2004, 2005 ;; Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2004, 2005
;; 2007, 2008 Free Software Foundation, Inc. ;; 2007, 2008, 2010 Free Software Foundation, Inc.
;; Contributed by Michael K. Gschwind (mike@vlsivie.tuwien.ac.at). ;; Contributed by Michael K. Gschwind (mike@vlsivie.tuwien.ac.at).
;; This file is part of GCC. ;; This file is part of GCC.
...@@ -95,7 +95,7 @@ ...@@ -95,7 +95,7 @@
{ {
cc_status.flags = CC_IN_FPU; cc_status.flags = CC_IN_FPU;
if (which_alternative == 0 || which_alternative == 2) if (which_alternative == 0 || which_alternative == 2)
return \"{tstd|tstf} %0, %1\;cfcc\"; return \"{tstd|tstf} %0\;cfcc\";
else else
return \"{cmpd|cmpf} %0, %1\;cfcc\"; return \"{cmpd|cmpf} %0, %1\;cfcc\";
}" }"
...@@ -187,7 +187,7 @@ ...@@ -187,7 +187,7 @@
[(cc0) (const_int 0)]) [(cc0) (const_int 0)])
(label_ref (match_operand 3 "" "")) (label_ref (match_operand 3 "" ""))
(pc)))] (pc)))]
"" "TARGET_FPU"
"") "")
(define_expand "cbranchhi4" (define_expand "cbranchhi4"
...@@ -306,12 +306,12 @@ ...@@ -306,12 +306,12 @@
;; do we have to supply all these moves? e.g. to ;; do we have to supply all these moves? e.g. to
;; NO_LOAD_FPU_REGs ? ;; NO_LOAD_FPU_REGs ?
(define_insn "movdf" (define_insn "movdf"
[(set (match_operand:DF 0 "general_operand" "=a,fR,a,Q,m") [(set (match_operand:DF 0 "general_operand" "=a,fR,a,Q,g")
(match_operand:DF 1 "general_operand" "fFR,a,Q,a,m"))] (match_operand:DF 1 "general_operand" "fFR,a,Q,a,g"))]
"" "TARGET_FPU"
"* if (which_alternative ==0) "* if (which_alternative ==0 || which_alternative == 2)
return \"ldd %1, %0\"; return \"ldd %1, %0\";
else if (which_alternative == 1) else if (which_alternative == 1 || which_alternative == 3)
return \"std %1, %0\"; return \"std %1, %0\";
else else
return output_move_quad (operands); " return output_move_quad (operands); "
...@@ -353,9 +353,9 @@ ...@@ -353,9 +353,9 @@
(define_insn "" ; "movmemhi" (define_insn "" ; "movmemhi"
[(set (mem:BLK (match_operand:HI 0 "general_operand" "=r,r")) [(set (mem:BLK (match_operand 0 "pmode_register_operand" "+r,r"))
(mem:BLK (match_operand:HI 1 "general_operand" "r,r"))) (mem:BLK (match_operand 1 "pmode_register_operand" "+r,r")))
(use (match_operand:HI 2 "arith_operand" "n,&r")) (use (match_operand:HI 2 "general_operand" "+n,&r"))
(use (match_operand:HI 3 "immediate_operand" "i,i")) (use (match_operand:HI 3 "immediate_operand" "i,i"))
(clobber (match_scratch:HI 4 "=&r,X")) (clobber (match_scratch:HI 4 "=&r,X"))
(clobber (match_dup 0)) (clobber (match_dup 0))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment