--- gcc/config/ns32k.md 2018/04/24 17:51:36 1.1.1.1 +++ gcc/config/ns32k.md 2018/04/24 17:54:50 1.1.1.2 @@ -6,7 +6,7 @@ ;; I.e., one cannot say "cmpd _p,@_x" ;; Implement unsigned multiplication?? -;;- Machine descrption for GNU compiler +;;- Machine description for GNU compiler ;;- ns32000 Version ;; Copyright (C) 1988 Free Software Foundation, Inc. ;; Contributed by Michael Tiemann (tiemann@mcc.com) @@ -242,7 +242,12 @@ return \"movf %1,tos\;movd tos,%0\"; return \"movf %1,%0\"; } -#if 0 +#if 0 /* Someone suggested this for the Sequent. Is it needed? */ + else if (GET_CODE (operands[1]) == CONST_DOUBLE) + return \"movf %1,%0\"; +#endif +/* There was a #if 0 around this, but that was erroneous + for anything bug GAS syntax -- rms. */ #ifndef GAS_SYNTAX /* GAS understands floating constants in ordinary movd instructions but other assemblers might object. */ @@ -258,7 +263,6 @@ return \"movd %1,%0\"; } #endif -#endif else return \"movd %1,%0\"; }") @@ -2179,9 +2183,10 @@ rtx temp = XEXP (operands[0], 0); if (CONSTANT_ADDRESS_P (temp)) { +#ifdef GAS_SYNTAX operands[0] = temp; return \"bsr %0\"; -#if 0 +#else #ifdef GNX_V3 return \"bsr %0\"; #else @@ -2190,8 +2195,9 @@ #endif } if (GET_CODE (XEXP (operands[0], 0)) == REG) +#if defined (GNX_V3) || defined (GAS_SYNTAX) return \"jsr %0\"; -#if 0 +#else return \"jsr %a0\"; #endif } @@ -2212,9 +2218,10 @@ rtx temp = XEXP (operands[1], 0); if (CONSTANT_ADDRESS_P (temp)) { +#ifdef GAS_SYNTAX operands[1] = temp; return \"bsr %1\"; -#if 0 +#else #ifdef GNX_V3 return \"bsr %1\"; #else @@ -2223,8 +2230,9 @@ #endif } if (GET_CODE (XEXP (operands[1], 0)) == REG) +#if defined (GNX_V3) || defined (GAS_SYNTAX) return \"jsr %1\"; -#if 0 +#else return \"jsr %a1\"; #endif }