21 lines
530 B
C
21 lines
530 B
C
#include <stdio.h>
|
|
#include <float.h>
|
|
|
|
#define TEST_FPU(x,y) printf( "\t%s " y "\n", \
|
|
((fp_status & x) ? " " : "No") )
|
|
|
|
void main()
|
|
{
|
|
unsigned int fp_status;
|
|
|
|
fp_status = _status87();
|
|
|
|
printf( "80x87 status\n" );
|
|
TEST_FPU( SW_INVALID, "invalid operation" );
|
|
TEST_FPU( SW_DENORMAL, "denormalized operand" );
|
|
TEST_FPU( SW_ZERODIVIDE, "divide by zero" );
|
|
TEST_FPU( SW_OVERFLOW, "overflow" );
|
|
TEST_FPU( SW_UNDERFLOW, "underflow" );
|
|
TEST_FPU( SW_INEXACT, "inexact result" );
|
|
}
|