ESBMC
Efficient SMT-based Context-Bounded Model Checker
Loading...
Searching...
No Matches
logb.c File Reference
#include <math.h>
#include <limits.h>
Include dependency graph for logb.c:

Macros

#define LOGB(type, suff)

Macro Definition Documentation

◆ LOGB

#define LOGB ( type,
suff )
Value:
int ilogb##suff(type x) \
{ \
__ESBMC_HIDE:; \
if (x == 0) \
return FP_ILOGB0; \
if (isnan(x)) \
return FP_ILOGBNAN; \
if (isinf(x)) \
return INT_MAX; \
int e; \
frexp##suff(x, &e); \
return e - 1; \
} \
\
type logb##suff(type x) \
{ \
__ESBMC_HIDE:; \
if (x == 0) \
return -HUGE_VAL; \
if (!isfinite(x)) \
return x * x; \
int e; \
frexp##suff(x, &e); \
return e - 1; \
}
#define INT_MAX
Definition limits.h:29