/* Check for a negative REAL_VALUE_TYPE number.
- * this means strictly less than zero, not -0.
+ * This just checks the sign bit, so that -0 counts as negative.
*/
int
target_negative (x)
REAL_VALUE_TYPE x;
{
- unsigned EMUSHORT e[NE];
-
- GET_REAL (&x, e);
- if (ecmp (e, ezero) == -1)
- return (1);
- return (0);
+ return ereal_isneg (x);
}
/* Expansion of REAL_VALUE_TRUNCATE.
r = etrunci (arg);
return (r);
+ /* If an unsupported type was requested, presume that
+ the machine files know something useful to do with
+ the unmodified value. */
default:
- abort ();
+ return (arg);
}
PUT_REAL (t, &r);
return (r);