Software conventions determine many of the appropriate applications
for particular status fields. Typically sf0 is the
main `user' status field used for most
oating-point calculations,
and sf1, with all exceptions disabled, is used for intermediate
calculations in many standard numerical software
kernels, e.g. those for division, square root and transcendental
functions. However, the multiple status elds can be
put to other uses. In particular, when implementing interval
arithmetic one often wants to be able to switch repeatedly
between rounding up and rounding down in a short sequence
of calculations. On many existing architectures, changing
the rounding mode is so costly that performance degrades
dramatically. However, on the Itanium architecture, one can
simply set up two status fields to have diffrent rounding directions
and use whichever is desired on each instruction.