X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f From: Kbwms AT aol DOT com Message-ID: <1ad.1a156e05.2ca86cc4@aol.com> Date: Sun, 28 Sep 2003 12:56:36 EDT Subject: Re: Integrating K. B. Williams's maths functions To: rich AT phekda DOT freeserve DOT co DOT uk (Rich Dawe) CC: djgpp-workers AT delorie DOT com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="part1_1ad.1a156e05.2ca86cc4_boundary" X-Mailer: 8.0 for Windows sub 6015 Reply-To: djgpp-workers AT delorie DOT com --part1_1ad.1a156e05.2ca86cc4_boundary Content-Type: multipart/alternative; boundary="part1_1ad.1a156e05.2ca86cc4_alt_boundary" --part1_1ad.1a156e05.2ca86cc4_alt_boundary Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Rich Dawe: In a message dated 9/28/2003 8:01:27 AM Eastern Standard Time, rich AT phekda DOT freeserve DOT co DOT uk writes: > > * keepthis.h? Build broken, until I have that file. > > That is a work in progress, too. It is appended. Please forgive the oversight. Eventually, keepthis.h will become part of genmathv.h and will no longer be needed. The code in ../tgen is being modified continuously because I am writing and testing new functions of type double from C99 -- stuff like round(), llround(), llrint() and trunc(). KB Williams --part1_1ad.1a156e05.2ca86cc4_alt_boundary Content-Type: text/html; charset="US-ASCII" Content-Transfer-Encoding: quoted-printable Rich Dawe:

In a message dated 9/28/2003 8:01:27 AM Eastern Standard Time, rich AT phekda DOT f= reeserve.co.uk writes:


* keepthis.h? Build broken, until I have that file.



That is a work in progress, too.  It is appended.  Please forgive=20= the oversight.  Eventually, keepthis.h will become part of genmathv.h a= nd will no longer be needed.

The code in ../tgen is being modified continuously because I am writing and=20= testing new functions of type double from C99 -- stuff like round(), llround= (), llrint() and trunc().


KB Williams
--part1_1ad.1a156e05.2ca86cc4_alt_boundary-- --part1_1ad.1a156e05.2ca86cc4_boundary Content-Type: text/plain; name="keepthis.h" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline; filename="keepthis.h" # if defined WRITE_DOUBLE_VECTORS # =09if defined USE_WRITE_2_VECTOR || defined USE_WRITE_3_VECTOR #=09=09if defined USE_WRITE_2_VECTOR // ----------------------------------------------------------------- // Write2VectorDbl - Writes next one-parameter test vector to stdout // ----------------------------------------------------------------- static=09void Write2VectorDbl(int MeasBit, double ArgY, double ArgX, double Exp, int ErrEx= p) { ULLONG Argument1Bits, Argument2Bits; ULLONG ExpectedBits; MapDblToInt(ArgY, Argument1Bits); MapDblToInt(ArgX, Argument2Bits); MapDblToInt(Exp, ExpectedBits); printf("{%d, %d, 0,__LINE__, 0x%016Lx, 0x%016Lx, 0x%016Lx, }," =09=09"\t/* %+.4E%s=3DF(%+8.4g,%+8.4g) */\n", MeasBit, ErrExp, =09=09ExpectedBits, Argument1Bits, Argument2Bits, =09=09Exp, (isinf(Exp) || isnan(Exp)) ? " " : "", =09=09ArgY, ArgX); =09=09fflush(NULL); } #=09=09endif // End USE_WRITE_2_VECTOR / WRITE_DOUBLE_VECTORS #=09=09if defined USE_WRITE_3_VECTOR #=09=09endif // End USE_WRITE_3_VECTOR / WRITE_DOUBLE_VECTORS # else // End USE_WRITE_2_VECTOR / WRITE_DOUBLE_VECTORS // ---------------------------------------------------------------- // WriteVectorDbl - Writes next one-parameter test vector to stdout // ---------------------------------------------------------------- static=09void WriteVectorDbl(int MeasBit, double Arg, double Exp, int ErrExp) { ULLONG ArgumentBits; ULLONG ExpectedBits; MapDblToInt(Arg, ArgumentBits); MapDblToInt(Exp, ExpectedBits); printf("{%d, %d, 0,__LINE__, 0x%016Lx, 0x%016Lx, }," =09=09"\t/* %+.4E%s=3DF(%+8.4g) */\n", MeasBit, ErrExp, =09=09ExpectedBits, ArgumentBits, =09=09Exp, (isinf(Exp) || isnan(Exp)) ? " " : "", =09=09Arg); =09=09fflush(NULL); } #=09endif=09// End else part of USE_WRITE_2_VECTOR / WRITE_DOUBLE_VECTORS #=09if defined WRITE_DBL_RND_VECTOR // ------------------------------------------------------------------------- // WriteVectorDblRnd - Writes to stdout test vectors with rounding mode for //=09=09=09functions with one parameter of type double // ------------------------------------------------------------------------ static=09void WriteVectorDblRnd(int MeasBit, double Arg, double Exp, int ErrExp, int RndMo= de) { ULLONG ArgumentBits; ULLONG ExpectedBits; MapDblToInt(Arg, ArgumentBits); MapDblToInt(Exp, ExpectedBits); printf("{%d, %d, 0x%04x,__LINE__, 0x%016Lx, 0x%016Lx, }," =09=09"\t/* %+.4lE%s=3DF(%+.8lg) */\n", MeasBit, ErrExp, RndMode, =09=09ExpectedBits, ArgumentBits, =09=09Exp, (isinf(Exp) || isnan(Exp)) ? " " : "", =09=09Arg); =09=09fflush(NULL); } #=09endif // WRITE_DBL_RND_VECTOR # endif # if defined WRITE_FLOAT_VECTORS # =09if defined USE_WRITE_2_VECTOR || defined USE_WRITE_3_VECTOR #=09=09if defined USE_WRITE_2_VECTOR // ----------------------------------------------------------------- // Write2VectorFlt - Writes next one-parameter test vector to stdout // ----------------------------------------------------------------- static=09void Write2VectorFlt(int MeasBit, float ArgY, float ArgX, float Exp, int ErrExp) { ULONG Argument1Bits, Argument2Bits; ULLONG ExpectedBits; MapFltToInt(ArgY, Argument1Bits); MapFltToInt(ArgX, Argument2Bits); MapFltToInt(Exp, ExpectedBits); printf("{%d, %d, 0,__LINE__, 0x%016Lx, 0x%08lx, 0x%08lx, }," =09=09"\t/* %+.4E%s=3DF(%+8.4g,%+8.4g) */\n", MeasBit, ErrExp, =09=09ExpectedBits, Argument1Bits, Argument2Bits, =09=09Exp, (isinf(Exp) || isnan(Exp)) ? " " : "", =09=09ArgY, ArgX); =09=09fflush(NULL); } #=09=09endif // End USE_WRITE_2_VECTOR / WRITE_FLOAT_VECTORS #=09=09if defined USE_WRITE_3_VECTOR #=09=09endif // End USE_WRITE_3_VECTOR / WRITE_FLOAT_VECTORS # else // End USE_WRITE_2_VECTOR / WRITE_FLOAT_VECTORS // ---------------------------------------------------------------- // WriteVectorFlt - Writes next one-parameter test vector to stdout // ---------------------------------------------------------------- static=09void WriteVectorFlt(int MeasBit, float Arg, float Exp, int ErrExp) { ULONG ArgumentBits; ULLONG ExpectedBits; MapFltToInt(Arg, ArgumentBits); MapFltToInt(Exp, ExpectedBits); printf("{%d, %d, 0,__LINE__, 0x%016Lx, 0x%08lx, }," =09=09"\t/* %+.4E%s=3DF(%+8.4g) */\n", MeasBit, ErrExp, =09=09ExpectedBits, ArgumentBits, =09=09Exp, (isinf(Exp) || isnan(Exp)) ? " " : "", =09=09Arg); =09=09fflush(NULL); } #=09endif # endif --part1_1ad.1a156e05.2ca86cc4_boundary--