FPU
Go Up to Debug Windows Index
View > Debug Windows > FPU
Displays the contents of the Floating-point Unit and SSE registers in the CPU.
Item | Description |
---|---|
Instruction Pointer (IPTR) |
Displays the Instruction Pointer (IPTR) address, opcode, operand (OPTR) address of the last floating-point instruction executed. |
FPU Registers pane |
Displays the floating-point register stack (ST0 through ST7) in ascending order. After the list, the control word, status word, and tag word are shown. The information displayed for each of the eight registers is shown as follows: Register name, register status, and register value.The register status can be one of the following values:
The status of each register is determined by examining the tag word and the eleventh through thirteenth bits of the status word (top of stack indicator). When a register's status is not Empty, the value of the register in long double (extended) format is displayed immediately following the status. The registers can be displayed in different formats (other than long doubles). The control, status, and tag words are displayed in hexadecimal format only. For these three words, any values that were altered by the last run operation are displayed in red. |
Control Flags pane |
Lists the control flags encoded in the control word. Any flags that were altered by the last run operation are displayed in red. The control flags and their bit number in the control word are as follows:
Select any of the flags and right-click to change the flag's value. For single-bit flags, it changes the value from 0 to 1 or from 1 to 0. For multi-bit flags, it cycles through all possible values. |
Status Flags pane |
Lists the status flags encoded in the status word. Any flags that were altered by the last run operation are displayed in red. The flags and their bit number in the control word are as follows:
Select any of the flags and right-click to change the flag's value. For single-bit flags, it changes the value from 0 to 1 or from 1 to 0. For multi-bit flags, it cycles through all possible values. |
SSE pane |
Displays the Streaming SIMD Extensions (SSE) registers. Right-click the SSE pane and choose Display As to change the display format of the register content. |
Figure: Comparing the x86 FPU Data Registers with the x64 SSE Data Registers
Context Menu
Right-click FPU window to display the following context menu commands.
Item | Description |
---|---|
Zero |
Sets the selected register's value to 0. When used on one of the seven FPU registers, this command also sets that register's tag bits in the tag word to 01 indicating that the register holds a zero value. |
Empty |
Sets the selected register's tag bits in the tag word to 11 indicating that the register is empty. This command is grayed out if the selected register is the CTRL word, STAT word, or TAG word. |
Change |
Displays the Change dialog, where you can enter a new value for the selected register. When used on one of the seven FPU registers, this command also sets that register's tag bits in the tag word to 00 indicating that the register holds a valid value.The value you enter in the Change dialog should match the format currently specified by the Display As menu item. For example, if the currently displayed format is Extended, you should enter an Extended value in the Change dialog. |
Display As |
Determines how the values in registers are displayed. The items on the submenu change depending on Show menu selection.
|
Radix |
Available only when MMX registers are shown. Determines how the values in the MMX register are displayed. The possible values are Binary, Unsigned Decimal, Hexadecimal, and Signed Decimal. |
Show |
Toggles the FPU Registers pane between between FPU and MMX registers:
|
Toggle Flag |
In the Status Flags and Control Flags panes, changes the value of the selected flag. For single-bit flags, changes the value from 0 to 1 or from 1 to 0. For multi-bit flags, cycles through all possible values. |
Stay on Top |
Keeps the FPU view on top of other windows. |