The R Project SVN R

Rev

Rev 3548 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3548 Rev 3609
Line 178... Line 178...
178
#define ME_UNDERFLOW	5
178
#define ME_UNDERFLOW	5
179
 
179
 
180
#undef ML_PRECISION_WARNINGS
180
#undef ML_PRECISION_WARNINGS
181
 
181
 
182
#ifdef IEEE_754
182
#ifdef IEEE_754
183
#ifdef HAVE_IEEE754_H
183
# ifdef HAVE_IEEE754_H
184
#include <ieee754.h> /* newer Linuxen */
184
#  include <ieee754.h> /* newer Linuxen */
185
#else
185
# else
186
#ifdef HAVE_IEEEFP_H
186
#  ifdef HAVE_IEEEFP_H
187
#include <ieeefp.h> /* others [Solaris 2.5.x], .. */
187
#   include <ieeefp.h> /* others [Solaris 2.5.x], .. */
188
#endif
188
#  endif
189
#endif
189
# endif
190
 
190
 
191
extern double m_zero;
191
extern double m_zero;
192
extern double m_one;
192
extern double m_one;
193
/* extern double m_tiny; */
193
/* extern double m_tiny; */
194
#define ML_ERROR(x)	/* nothing */
194
#define ML_ERROR(x)	/* nothing */
195
#define ML_POSINF	(m_one / m_zero)
195
#define ML_POSINF	(m_one / m_zero)
196
#define ML_NEGINF	((-m_one) / m_zero)
196
#define ML_NEGINF	((-m_one) / m_zero)
197
#define ML_NAN		(m_zero / m_zero)
197
#define ML_NAN		(m_zero / m_zero)
198
#define ML_UNDERFLOW	(DBL_MIN * DBL_MIN)
198
#define ML_UNDERFLOW	(DBL_MIN * DBL_MIN)
199
#define ML_VALID(x)	(!isnan(x))
199
#define ML_VALID(x)	(!isnan(x))
200
#else
200
 
-
 
201
#else/*--- NO IEEE: No +/-Inf, NAN,... ---*/
201
#define ML_ERROR(x)	ml_error(x)
202
#define ML_ERROR(x)	ml_error(x)
202
#define ML_POSINF	DBL_MAX
203
#define ML_POSINF	DBL_MAX
203
#define ML_NEGINF	(-DBL_MAX)
204
#define ML_NEGINF	(-DBL_MAX)
204
#define ML_NAN		(-DBL_MAX)
205
#define ML_NAN		(-DBL_MAX)
205
#define ML_UNDERFLOW	0
206
#define ML_UNDERFLOW	0