PowerPC e500 Core Family Reference Manual, Rev. 1
10-22 Freescale Semiconductor
Auxiliary Processing Units (APUs)
10.4.4 Embedded Floating-Point Results Summary
Tables in the “Embedded Floating-Point Results” appendix in the EREF summarize the results of
various types of floating-point operations on various combinations of input operands. Flag settings
are performed on appropriate element flags. Double-precision values appropriate to those tables
are as follows:
• pmax denotes the maximum normalized positive number. The encoding for
double-precision is 0x7FEF_FFFF_FFFF_FFFF.
• nmax denotes the maximum normalized negative number. The encoding for
double-precision is 0xFFEF_FFFF_FFFF_FFFF.
• pmin denotes the minimum normalized positive number. The encoding for
double-precision is 0x0010_0000_0000_0000.
• nmin denotes the minimum normalized negative number. The encoding for
double-precision is0x8010_0000_0000_0000.
10.4.5 Floating-Point Conversion Models
The floating-point to and from non–floating-point conversion model pseudo RTL is provided here
as a group of functions that is called from the individual instruction pseudo RTL descriptions.
10.4.5.1 Common Functions
// Determine if fp value is a NaN or Infinity
Isa32NaNorInfinity(fp)
return (fp
exp
= 255)
Isa32NaN(fp)
return ((fp
exp
= 255) & (fp
frac
≠ 0))
Isa32Infinity(fp)
return ((fp
exp
= 255) & (fp
frac
= 0))
// Determine if fp value is denormalized
Isa32Denorm(fp)
return ((fp
exp
= 0) & (fp
frac
≠ 0))
// Determine if fp value is a NaN or Infinity
Isa64NaNorInfinity(fp)
return (fp
exp
= 2047)
Isa64NaN(fp)
return ((fp
exp
= 2047) & (fp
frac
≠ 0))
Isa64Infinity(fp)
return ((fp
exp
= 2047) & (fp
frac
= 0))
// Determine if fp value is denormalized
Isa64Denorm(fp)