diff --git a/src/include/missing_math.h b/src/include/missing_math.h index 083f0ca1e..fb7009ba8 100644 --- a/src/include/missing_math.h +++ b/src/include/missing_math.h @@ -8,7 +8,7 @@ Copyright 1999 Emmanuel Rouat #ifndef MISSING_MATH_H_INCLUDED #define MISSING_MATH_H_INCLUDED -bool AlmostEqualUlps(double, double, long int); +bool AlmostEqualUlps(float, float, int); #ifndef HAVE_ERFC extern double erfc(double); diff --git a/src/misc/missing_math.c b/src/misc/missing_math.c index f3e2009c5..421bd67b4 100644 --- a/src/misc/missing_math.c +++ b/src/misc/missing_math.c @@ -11,17 +11,18 @@ $Id$ #include "ngspice.h" #include "missing_math.h" + /* Initial AlmostEqualULPs version - fast and simple, but */ /* some limitations. */ -bool AlmostEqualUlps(double A, double B, long int maxUlps) +bool AlmostEqualUlps(float A, float B, int maxUlps) { - long int intDiff; - assert(sizeof(double) == sizeof(long int)); + int intDiff; + assert(sizeof(float) == sizeof(int)); if (A == B) return TRUE; - intDiff = abs(*(long int*)&A - *(long int*)&B); + intDiff = abs(*(int*)&A - *(int*)&B); if (intDiff <= maxUlps) return TRUE; diff --git a/src/misc/missing_math.h b/src/misc/missing_math.h index 51dae70a9..6b479d37b 100644 --- a/src/misc/missing_math.h +++ b/src/misc/missing_math.h @@ -6,7 +6,7 @@ #ifndef MISSING_MATH_H_INCLUDED #define MISSING_MATH_H_INCLUDED -bool AlmostEqualUlps(double, double, long int); +bool AlmostEqualUlps(float, float, int); #ifndef HAVE_ERFC double erfc(double);