=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/include/interval.h,v retrieving revision 1.6 retrieving revision 1.10 diff -u -p -r1.6 -r1.10 --- OpenXM_contrib2/asir2000/include/interval.h 2003/12/08 07:15:28 1.6 +++ OpenXM_contrib2/asir2000/include/interval.h 2006/02/05 06:47:03 1.10 @@ -1,5 +1,5 @@ /* - * $OpenXM: OpenXM_contrib2/asir2000/include/interval.h,v 1.5 2002/01/08 04:14:38 kondoh Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/include/interval.h,v 1.9 2005/02/08 16:42:40 saito Exp $ */ #ifndef _INTERVAL_H #define _INTERVAL_H @@ -34,8 +34,10 @@ static char *Interval_dummy; #include #if 1 #define LINUX_FPU_RC_MASK 0xf3ff -#define LINUX_FPU_SETCW(c) {_FPU_GETCW(__fpu_control);\ - _FPU_SETCW(__fpu_control & LINUX_FPU_RC_MASK | c);} +#define LINUX_FPU_SETCW(c) \ +{fpu_control_t __tmp__; _FPU_GETCW(__fpu_control);\ + __tmp__ = (__fpu_control & LINUX_FPU_RC_MASK | c);\ + _FPU_SETCW(__tmp__);} #define FPNEAREST LINUX_FPU_SETCW(_FPU_RC_NEAREST); #define FPPLUSINF LINUX_FPU_SETCW(_FPU_RC_UP); #define FPMINUSINF LINUX_FPU_SETCW(_FPU_RC_DOWN); @@ -66,7 +68,7 @@ static char *Interval_dummy; #endif #endif -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) && defined(__GNUC__) #include #define FPNEAREST fpsetround(FP_RN); #define FPPLUSINF fpsetround(FP_RP); @@ -107,6 +109,7 @@ static char *Interval_dummy; #undef N_GFPN #undef N_GFS #undef N_GFSN +#undef N_DA #define N_NEXT_B (N_B+1) #define N_Quad (N_NEXT_B) #define N_IP (N_NEXT_B+1) @@ -121,6 +124,7 @@ static char *Interval_dummy; #define N_GFPN (N_NEXT_B+9) #define N_GFS (N_NEXT_B+10) #define N_GFSN (N_NEXT_B+11) +#define N_DA (N_NEXT_B+12) /* data structures */ struct oItv {