This preview shows page 1. Sign up to view the full content.
Unformatted text preview: or was introduced to great acclaim in 1980. It was the ﬁrst single-chip ﬂoatingpoint unit (FPU), and the ﬁrst implementation of what is now known as IEEE ﬂoating point. Operating as a coprocessor, the FPU would take over the execution of ﬂoating-point instructions after they were fetched by the main processor. There was minimal connection between the FPU and the main processor. Communicating data from one processor to the other required the sending processor to write to memory and the receiving one to read it. Artifacts of that design remain in the IA32 ﬂoating-point instruction set today. In addition, the compiler technology of 1980 was much less sophisticated than it is today. Many features of IA32 ﬂoating point make it a difﬁcult target for optimizing compilers. 3.14.1 Floating-Point Registers
The ﬂoating-point unit contains eight ﬂoating-point registers, but unlike normal registers, these are treated as a shallow stack. The registers are identiﬁed as %st(0), %st(1), and so on, up to %s...
View Full Document