patch-2.3.23 linux/arch/arm/nwfpe/double_cpdo.c
Next file: linux/arch/arm/nwfpe/entry.S
Previous file: linux/arch/arm/nwfpe/Makefile
Back to the patch index
Back to the overall index
- Lines: 197
- Date:
Wed Oct 20 16:29:08 1999
- Orig file:
v2.3.22/linux/arch/arm/nwfpe/double_cpdo.c
- Orig date:
Tue Aug 31 17:29:12 1999
diff -u --recursive --new-file v2.3.22/linux/arch/arm/nwfpe/double_cpdo.c linux/arch/arm/nwfpe/double_cpdo.c
@@ -19,7 +19,6 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-#include "config.h"
#include "softfloat.h"
#include "fpopcode.h"
#include "fpa11.h"
@@ -54,14 +53,14 @@
}
else
{
- switch (fpa11->fpreg[Fm].fType)
+ switch (fpa11->fType[Fm])
{
case typeSingle:
- rFm = float32_to_float64(fpa11->fpreg[Fm].fValue.fSingle);
+ rFm = float32_to_float64(fpa11->fpreg[Fm].fSingle);
break;
case typeDouble:
- rFm = fpa11->fpreg[Fm].fValue.fDouble;
+ rFm = fpa11->fpreg[Fm].fDouble;
break;
case typeExtended:
@@ -80,14 +79,14 @@
if (!MONADIC_INSTRUCTION(opcode))
{
Fn = getFn(opcode);
- switch (fpa11->fpreg[Fn].fType)
+ switch (fpa11->fType[Fn])
{
case typeSingle:
- rFn = float32_to_float64(fpa11->fpreg[Fn].fValue.fSingle);
+ rFn = float32_to_float64(fpa11->fpreg[Fn].fSingle);
break;
case typeDouble:
- rFn = fpa11->fpreg[Fn].fValue.fDouble;
+ rFn = fpa11->fpreg[Fn].fDouble;
break;
default: return 0;
@@ -100,62 +99,62 @@
{
/* dyadic opcodes */
case ADF_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_add(rFn,rFm);
+ fpa11->fpreg[Fd].fDouble = float64_add(rFn,rFm);
break;
case MUF_CODE:
case FML_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_mul(rFn,rFm);
+ fpa11->fpreg[Fd].fDouble = float64_mul(rFn,rFm);
break;
- case SUF_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_sub(rFn,rFm);
+ case SUF_CODE:
+ fpa11->fpreg[Fd].fDouble = float64_sub(rFn,rFm);
break;
case RSF_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_sub(rFm,rFn);
+ fpa11->fpreg[Fd].fDouble = float64_sub(rFm,rFn);
break;
case DVF_CODE:
case FDV_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_div(rFn,rFm);
+ fpa11->fpreg[Fd].fDouble = float64_div(rFn,rFm);
break;
case RDF_CODE:
case FRD_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_div(rFm,rFn);
+ fpa11->fpreg[Fd].fDouble = float64_div(rFm,rFn);
break;
#if 0
case POW_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_pow(rFn,rFm);
+ fpa11->fpreg[Fd].fDouble = float64_pow(rFn,rFm);
break;
case RPW_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_pow(rFm,rFn);
+ fpa11->fpreg[Fd].fDouble = float64_pow(rFm,rFn);
break;
#endif
case RMF_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_rem(rFn,rFm);
+ fpa11->fpreg[Fd].fDouble = float64_rem(rFn,rFm);
break;
#if 0
case POL_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_pol(rFn,rFm);
+ fpa11->fpreg[Fd].fDouble = float64_pol(rFn,rFm);
break;
#endif
/* monadic opcodes */
case MVF_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = rFm;
+ fpa11->fpreg[Fd].fDouble = rFm;
break;
case MNF_CODE:
{
unsigned int *p = (unsigned int*)&rFm;
p[1] ^= 0x80000000;
- fpa11->fpreg[Fd].fValue.fDouble = rFm;
+ fpa11->fpreg[Fd].fDouble = rFm;
}
break;
@@ -163,55 +162,55 @@
{
unsigned int *p = (unsigned int*)&rFm;
p[1] &= 0x7fffffff;
- fpa11->fpreg[Fd].fValue.fDouble = rFm;
+ fpa11->fpreg[Fd].fDouble = rFm;
}
break;
case RND_CODE:
case URD_CODE:
- fpa11->fpreg[Fd].fValue.fDouble =
+ fpa11->fpreg[Fd].fDouble =
int32_to_float64(float64_to_int32(rFm));
break;
case SQT_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_sqrt(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_sqrt(rFm);
break;
#if 0
case LOG_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_log(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_log(rFm);
break;
case LGN_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_ln(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_ln(rFm);
break;
case EXP_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_exp(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_exp(rFm);
break;
case SIN_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_sin(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_sin(rFm);
break;
case COS_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_cos(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_cos(rFm);
break;
case TAN_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_tan(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_tan(rFm);
break;
case ASN_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_arcsin(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_arcsin(rFm);
break;
case ACS_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_arccos(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_arccos(rFm);
break;
case ATN_CODE:
- fpa11->fpreg[Fd].fValue.fDouble = float64_arctan(rFm);
+ fpa11->fpreg[Fd].fDouble = float64_arctan(rFm);
break;
#endif
@@ -224,7 +223,7 @@
}
}
- if (0 != nRc) fpa11->fpreg[Fd].fType = typeDouble;
+ if (0 != nRc) fpa11->fType[Fd] = typeDouble;
return nRc;
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)