1206917Smarius
2206917Smarius/*
3206917Smarius===============================================================================
4206917Smarius
5206917SmariusThis C header file is part of TestFloat, Release 2a, a package of programs
6206917Smariusfor testing the correctness of floating-point arithmetic complying to the
7206917SmariusIEC/IEEE Standard for Floating-Point.
8206917Smarius
9206917SmariusWritten by John R. Hauser.  More information is available through the Web
10206917Smariuspage `http://HTTP.CS.Berkeley.EDU/~jhauser/arithmetic/TestFloat.html'.
11206917Smarius
12206917SmariusTHIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE.  Although reasonable effort
13206917Smariushas been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT
14206917SmariusTIMES RESULT IN INCORRECT BEHAVIOR.  USE OF THIS SOFTWARE IS RESTRICTED TO
15206917SmariusPERSONS AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ANY
16206917SmariusAND ALL LOSSES, COSTS, OR OTHER PROBLEMS ARISING FROM ITS USE.
17206917Smarius
18206917SmariusDerivative works are acceptable, even for commercial purposes, so long as
19206917Smarius(1) they include prominent notice that the work is derivative, and (2) they
20206917Smariusinclude prominent notice akin to these four paragraphs for those parts of
21206917Smariusthis code that are retained.
22206917Smarius
23206917Smarius===============================================================================
24206917Smarius*/
25206917Smarius
26206917Smariusvoid testCases_setLevel( int8 );
27206917Smarius
28206917Smariusvoid testCases_initSequence( int8 );
29206917Smariusenum {
30206917Smarius    testCases_sequence_a_int32,
31206917Smarius#ifdef BITS64
32206917Smarius    testCases_sequence_a_int64,
33206917Smarius#endif
34206917Smarius    testCases_sequence_a_float32,
35206917Smarius    testCases_sequence_ab_float32,
36206917Smarius    testCases_sequence_a_float64,
37206917Smarius    testCases_sequence_ab_float64,
38206917Smarius#ifdef FLOATX80
39206917Smarius    testCases_sequence_a_floatx80,
40206917Smarius    testCases_sequence_ab_floatx80,
41206917Smarius#endif
42206917Smarius#ifdef FLOAT128
43206917Smarius    testCases_sequence_a_float128,
44206917Smarius    testCases_sequence_ab_float128,
45206917Smarius#endif
46206917Smarius};
47206917Smarius
48206917Smariusextern uint32 testCases_total;
49206917Smariusextern flag testCases_done;
50206917Smarius
51206917Smariusvoid testCases_next( void );
52206917Smarius
53206917Smariusextern int32 testCases_a_int32;
54206917Smarius#ifdef BITS64
55206917Smariusextern int64 testCases_a_int64;
56206917Smarius#endif
57206917Smariusextern float32 testCases_a_float32;
58206917Smariusextern float32 testCases_b_float32;
59206917Smariusextern float64 testCases_a_float64;
60206917Smariusextern float64 testCases_b_float64;
61206917Smarius#ifdef FLOATX80
62206917Smariusextern floatx80 testCases_a_floatx80;
63206917Smariusextern floatx80 testCases_b_floatx80;
64206917Smarius#endif
65206917Smarius#ifdef FLOAT128
66206917Smariusextern float128 testCases_a_float128;
67206917Smariusextern float128 testCases_b_float128;
68206917Smarius#endif
69206917Smarius
70