1:106
Volume 1, Part 1: Floating-point Programming Model
then inexactness is signaled. If the significand was rounded by adding a one to its least
significant bit, then bit
fpa
in ISR.code is set to 1. Finally, an interruption due to a
Floating-Point Exception trap will occur.
Note that when rounding to single, double, or double-extended real, the overflow trap
enabled response for normal (non Parallel FP) arithmetic instructions is not guaranteed
to be in the range of a valid single, double, or double-extended real quantity, because it
is in 17-bit exponent format.
5.4.3
Definition of Tininess, Inexact and Underflow
Tininess
is detected after rounding, and is said to occur when a non-zero result
(computed as though the exponent range were unbounded) would lie strictly between
+2
Emin
and -2
Emin
. See
for the values of Emin for each real type. Creation of
a tiny result may cause an exception later (such as overflow upon division because it is
so small).
Inexactness
is said to occur when the result differs from what would have been
computed if both the exponent range and precision were unbounded.
How tininess and inexactness trigger the underflow exception depends on whether the
Underflow Floating-Point Exception trap is disabled or enabled. If the trap is disabled
then the underflow exception is signaled when the result is both tiny and inexact. If the
trap is enabled then the underflow exception is signaled when the result is tiny,
regardless of inexactness. Note that in the event that the Underflow Floating-Point
Exception trap is disabled and tininess but not inexactness occurs, then neither
underflow nor inexactness is signaled, and the result is a denormal.
The IEEE Underflow Floating-Point Exception trap disabled response for all normal and
Parallel-FP arithmetic instructions is to denormalize the infinitely precise result and then
round it to the destination precision. The result may be a denormal, zero, or a normal.
The inexact exception is signaled when appropriate.
The IEEE Underflow Floating-Point Exception trap enabled response for all normal
arithmetic instructions is to return the true biased exponent value MOD 2
17
and for all
Parallel-FP arithmetic instructions is to return the true biased exponent value MOD 2
8
.
The significand is rounded to the specified precision and written to the destination
register independent of the possibility of the exponent calculation requiring a borrow. If
the rounded value is different from the infinitely-precise value, then inexactness is
signaled. If the significand was rounded by adding a one to its least significant bit, then
bit
fpa
in ISR.code is set to 1. Finally, an interruption due to a Floating-Point Exception
trap will occur.
Note:
When rounding to single, double, or double-extended real, the underflow trap
enabled response for normal (non Parallel FP) arithmetic instructions is not
guaranteed to be in the range of a valid single, double, or double-extended real
quantity, because it is in 17-bit exponent format.
When Flush-to-Zero mode is enabled, the behavior for tiny results is different. If an
instruction would deliver a tiny result, a correctly signed zero is delivered instead and
the appropriate FPSR.sf
x
.u and FPSR.sf
x
.i bits are set. This mode may improve the
Summary of Contents for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS VOLUME 3 REV 2.3
Page 1: ......
Page 11: ...x Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 13: ...1 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 33: ...1 22 Volume 1 Part 1 Introduction to the Intel Itanium Architecture ...
Page 57: ...1 46 Volume 1 Part 1 Execution Environment ...
Page 147: ...1 136 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 149: ...1 138 Volume 1 Part 2 About the Optimization Guide ...
Page 191: ...1 180 Volume 1 Part 2 Predication Control Flow and Instruction Stream ...
Page 230: ......
Page 248: ...236 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 250: ...2 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 264: ...2 16 Volume 2 Part 1 Intel Itanium System Environment ...
Page 380: ...2 132 Volume 2 Part 1 Interruptions ...
Page 398: ...2 150 Volume 2 Part 1 Register Stack Engine ...
Page 486: ...2 238 Volume 2 Part 1 IA 32 Interruption Vector Descriptions ...
Page 750: ...2 502 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 754: ...2 506 Volume 2 Part 2 About the System Programmer s Guide ...
Page 796: ...2 548 Volume 2 Part 2 Interruptions and Serialization ...
Page 808: ...2 560 Volume 2 Part 2 Context Management ...
Page 842: ...2 594 Volume 2 Part 2 Floating point System Software ...
Page 850: ...2 602 Volume 2 Part 2 IA 32 Application Support ...
Page 862: ...2 614 Volume 2 Part 2 External Interrupt Architecture ...
Page 870: ...2 622 Volume 2 Part 2 Performance Monitoring Support ...
Page 891: ......
Page 1099: ...3 200 Volume 3 Instruction Reference padd Interruptions Illegal Operation fault ...
Page 1295: ...3 396 Volume 3 Resource and Dependency Semantics ...
Page 1296: ......
Page 1302: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1494: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Page 1647: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Page 1884: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Page 1885: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Page 1886: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1898: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...