ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/uae_cpu/fpu/fpu_ieee.cpp
(Generate patch)

Comparing BasiliskII/src/uae_cpu/fpu/fpu_ieee.cpp (file contents):
Revision 1.4 by gbeauche, 2002-09-16T12:01:38Z vs.
Revision 1.5 by gbeauche, 2002-09-19T16:02:13Z

# Line 1591 | Line 1591 | void FFPU fpuop_arithmetic(uae_u32 opcod
1591                                  FPU registers[reg] = 1.0e256;
1592                                  fpu_debug(("FP const: 1.0e256\n"));
1593                                  break;
1594 < #if USE_LONG_DOUBLE
1594 > #if USE_LONG_DOUBLE || USE_QUAD_DOUBLE
1595                          case 0x3c:
1596                                  FPU registers[reg] = 1.0e512;
1597                                  fpu_debug(("FP const: 1.0e512\n"));
# Line 1967 | Line 1967 | void FFPU fpuop_arithmetic(uae_u32 opcod
1967                                  // an overflow or underflow always results.
1968                                  // Here (int) cast is okay.
1969                                  int scale_factor = (int)fp_round_to_zero(src);
1970 < #ifndef USE_LONG_DOUBLE
1970 > #if USE_LONG_DOUBLE || USE_QUAD_DOUBLE
1971 >                                fp_declare_init_shape(sxp, FPU registers[reg], extended);
1972 >                                sxp->ieee.exponent += scale_factor;
1973 > #else
1974                                  fp_declare_init_shape(sxp, FPU registers[reg], double);
1975                                  uae_u32 exp = sxp->ieee.exponent + scale_factor;
1976                                  if (exp < FP_EXTENDED_EXP_BIAS - FP_DOUBLE_EXP_BIAS)
# Line 1977 | Line 1980 | void FFPU fpuop_arithmetic(uae_u32 opcod
1980                                  else
1981                                          exp += FP_DOUBLE_EXP_BIAS - FP_EXTENDED_EXP_BIAS;
1982                                  sxp->ieee.exponent = exp;
1980 #else
1981                                fp_declare_init_shape(sxp, FPU registers[reg], extended);
1982                                sxp->ieee.exponent += scale_factor;
1983   #endif
1984                          }
1985                          else if (fl_source.infinity) {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines