GNU Octave  6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
lo-ieee.h File Reference
#include <cmath>
#include "octave-config.h"
Include dependency graph for lo-ieee.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

union  lo_ieee_double
 
union  lo_ieee_float
 

Macros

#define lo_ieee_finite(x)
 
#define lo_ieee_is_NA(x)
 
#define lo_ieee_is_NaN_or_NA(x)
 
#define lo_ieee_isinf(x)
 
#define lo_ieee_isnan(x)
 
#define LO_IEEE_NA_FLOAT   0x7FC207A2
 
#define LO_IEEE_NA_HW   0x7FF840F4
 
#define LO_IEEE_NA_HW_OLD   0x7ff00000
 
#define LO_IEEE_NA_LW   0x40000000
 
#define LO_IEEE_NA_LW_OLD   1954
 
#define lo_ieee_signbit(x)
 
#define octave_Float_Inf   (lo_ieee_float_inf_value ())
 
#define octave_Float_NA   (lo_ieee_float_na_value ())
 
#define octave_Float_NaN   (lo_ieee_float_nan_value ())
 
#define octave_Inf   (lo_ieee_inf_value ())
 
#define octave_NA   (lo_ieee_na_value ())
 
#define octave_NaN   (lo_ieee_nan_value ())
 

Functions

int __lo_ieee_finite (double x)
 
int __lo_ieee_float_finite (float x)
 
OCTAVE_API int __lo_ieee_float_is_NA (float)
 
int __lo_ieee_float_isinf (float x)
 
int __lo_ieee_float_isnan (float x)
 
int __lo_ieee_float_signbit (float x)
 
OCTAVE_API int __lo_ieee_is_NA (double)
 
OCTAVE_API int __lo_ieee_is_old_NA (double)
 
int __lo_ieee_isinf (double x)
 
int __lo_ieee_isnan (double x)
 
OCTAVE_API double __lo_ieee_replace_old_NA (double)
 
int __lo_ieee_signbit (double x)
 
OCTAVE_API float lo_ieee_float_inf_value (void)
 
OCTAVE_API float lo_ieee_float_na_value (void)
 
OCTAVE_API float lo_ieee_float_nan_value (void)
 
OCTAVE_API double lo_ieee_inf_value (void)
 
OCTAVE_API double lo_ieee_na_value (void)
 
OCTAVE_API double lo_ieee_nan_value (void)
 
OCTAVE_API void octave_ieee_init (void)
 

Macro Definition Documentation

◆ lo_ieee_finite

#define lo_ieee_finite (   x)
Value:
(sizeof (x) == sizeof (float) \
int __lo_ieee_float_finite(float x)
Definition: lo-ieee.h:97
int __lo_ieee_finite(double x)
Definition: lo-ieee.h:83
F77_RET_T const F77_DBLE * x

Definition at line 116 of file lo-ieee.h.

◆ lo_ieee_is_NA

#define lo_ieee_is_NA (   x)
Value:
(sizeof (x) == sizeof (float) \
OCTAVE_API int __lo_ieee_is_NA(double)
Definition: lo-ieee.cc:51
OCTAVE_API int __lo_ieee_float_is_NA(float)
Definition: lo-ieee.cc:102

Definition at line 124 of file lo-ieee.h.

◆ lo_ieee_is_NaN_or_NA

#define lo_ieee_is_NaN_or_NA (   x)
Value:
(sizeof (x) == sizeof (float) \
? __lo_ieee_float_is_NaN_or_NA (x) : __lo_ieee_is_NaN_or_NA (x))

Definition at line 128 of file lo-ieee.h.

◆ lo_ieee_isinf

#define lo_ieee_isinf (   x)
Value:
(sizeof (x) == sizeof (float) \
int __lo_ieee_isinf(double x)
Definition: lo-ieee.h:84
int __lo_ieee_float_isinf(float x)
Definition: lo-ieee.h:98

Definition at line 120 of file lo-ieee.h.

◆ lo_ieee_isnan

#define lo_ieee_isnan (   x)
Value:
(sizeof (x) == sizeof (float) \
int __lo_ieee_float_isnan(float x)
Definition: lo-ieee.h:96
int __lo_ieee_isnan(double x)
Definition: lo-ieee.h:82

Definition at line 112 of file lo-ieee.h.

◆ LO_IEEE_NA_FLOAT

#define LO_IEEE_NA_FLOAT   0x7FC207A2

Definition at line 78 of file lo-ieee.h.

◆ LO_IEEE_NA_HW

#define LO_IEEE_NA_HW   0x7FF840F4

Definition at line 75 of file lo-ieee.h.

◆ LO_IEEE_NA_HW_OLD

#define LO_IEEE_NA_HW_OLD   0x7ff00000

Definition at line 70 of file lo-ieee.h.

◆ LO_IEEE_NA_LW

#define LO_IEEE_NA_LW   0x40000000

Definition at line 77 of file lo-ieee.h.

◆ LO_IEEE_NA_LW_OLD

#define LO_IEEE_NA_LW_OLD   1954

Definition at line 71 of file lo-ieee.h.

◆ lo_ieee_signbit

#define lo_ieee_signbit (   x)
Value:
(sizeof (x) == sizeof (float) \
int __lo_ieee_signbit(double x)
Definition: lo-ieee.h:94
int __lo_ieee_float_signbit(float x)
Definition: lo-ieee.h:106

Definition at line 132 of file lo-ieee.h.

◆ octave_Float_Inf

#define octave_Float_Inf   (lo_ieee_float_inf_value ())

Definition at line 47 of file lo-ieee.h.

◆ octave_Float_NA

#define octave_Float_NA   (lo_ieee_float_na_value ())

Definition at line 50 of file lo-ieee.h.

◆ octave_Float_NaN

#define octave_Float_NaN   (lo_ieee_float_nan_value ())

Definition at line 53 of file lo-ieee.h.

◆ octave_Inf

#define octave_Inf   (lo_ieee_inf_value ())

Definition at line 38 of file lo-ieee.h.

◆ octave_NA

#define octave_NA   (lo_ieee_na_value ())

Definition at line 41 of file lo-ieee.h.

◆ octave_NaN

#define octave_NaN   (lo_ieee_nan_value ())

Definition at line 44 of file lo-ieee.h.

Function Documentation

◆ __lo_ieee_finite()

int __lo_ieee_finite ( double  x)
inline

Definition at line 83 of file lo-ieee.h.

References octave::math::isfinite(), and x.

◆ __lo_ieee_float_finite()

int __lo_ieee_float_finite ( float  x)
inline

Definition at line 97 of file lo-ieee.h.

References octave::math::isfinite(), and x.

◆ __lo_ieee_float_is_NA()

OCTAVE_API int __lo_ieee_float_is_NA ( float  x)

◆ __lo_ieee_float_isinf()

int __lo_ieee_float_isinf ( float  x)
inline

Definition at line 98 of file lo-ieee.h.

References octave::math::isinf(), and x.

◆ __lo_ieee_float_isnan()

int __lo_ieee_float_isnan ( float  x)
inline

Definition at line 96 of file lo-ieee.h.

References octave::math::isnan(), and x.

Referenced by __lo_ieee_float_is_NA().

◆ __lo_ieee_float_signbit()

int __lo_ieee_float_signbit ( float  x)
inline

Definition at line 106 of file lo-ieee.h.

References octave::math::signbit(), and x.

Referenced by octave::math::negative_sign().

◆ __lo_ieee_is_NA()

OCTAVE_API int __lo_ieee_is_NA ( double  x)

◆ __lo_ieee_is_old_NA()

OCTAVE_API int __lo_ieee_is_old_NA ( double  x)

◆ __lo_ieee_isinf()

int __lo_ieee_isinf ( double  x)
inline

Definition at line 84 of file lo-ieee.h.

References octave::math::isinf(), and x.

◆ __lo_ieee_isnan()

int __lo_ieee_isnan ( double  x)
inline

Definition at line 82 of file lo-ieee.h.

References octave::math::isnan(), and x.

Referenced by __lo_ieee_is_NA(), and __lo_ieee_is_old_NA().

◆ __lo_ieee_replace_old_NA()

OCTAVE_API double __lo_ieee_replace_old_NA ( double  x)

Definition at line 69 of file lo-ieee.cc.

References __lo_ieee_is_old_NA(), lo_ieee_na_value(), and x.

Referenced by read_doubles(), and octave::replace_old_NA< double >().

◆ __lo_ieee_signbit()

int __lo_ieee_signbit ( double  x)
inline

Definition at line 94 of file lo-ieee.h.

References octave::math::signbit(), and x.

Referenced by octave::math::negative_sign().

◆ lo_ieee_float_inf_value()

OCTAVE_API float lo_ieee_float_inf_value ( void  )

Definition at line 110 of file lo-ieee.cc.

References lo_float_inf, and octave_ieee_init().

Referenced by FInf().

◆ lo_ieee_float_na_value()

OCTAVE_API float lo_ieee_float_na_value ( void  )

Definition at line 118 of file lo-ieee.cc.

References lo_float_na, and octave_ieee_init().

Referenced by FNA().

◆ lo_ieee_float_nan_value()

◆ lo_ieee_inf_value()

OCTAVE_API double lo_ieee_inf_value ( void  )

Definition at line 78 of file lo-ieee.cc.

References lo_inf, and octave_ieee_init().

Referenced by Ffread(), FInf(), Fsscanf(), mxGetInf(), and scanf_internal().

◆ lo_ieee_na_value()

OCTAVE_API double lo_ieee_na_value ( void  )

Definition at line 86 of file lo-ieee.cc.

References lo_na, and octave_ieee_init().

Referenced by __lo_ieee_replace_old_NA(), and FNA().

◆ lo_ieee_nan_value()

OCTAVE_API double lo_ieee_nan_value ( void  )

Definition at line 94 of file lo-ieee.cc.

References lo_nan, and octave_ieee_init().

Referenced by NDArray::NDArray(), octave::math::ellipj(), FNaN(), Ftsearch(), and mxGetNaN().

◆ octave_ieee_init()