Aufgabe 3: Pro-/Epilog
FPU::State Struct Reference
512 byte structure for FPU / MMX / SSE registers corresponds to the layout used by the instructions fxsave
and fxrstor
.
More...
#include <machine/fpu.h>
Collaboration diagram for FPU::State:
Classes | |
struct | ST |
80 bit registers for FPU stack / MMX More... | |
struct | XMM |
128 bit SSE registers More... | |
Public Member Functions | |
void | init () |
Set structure to the initial FPU state Clears the FPU state (but its not just zeroed!) | |
void | save () |
Save the current FPU (+ MMX + SSE) state into this structure. More... | |
void | restore () |
Restore the saved FPU (+ MMX + SSE) state from this structure. More... | |
Public Attributes | |
uint16_t | fcw |
FPU Control Word. | |
uint16_t | fsw |
FPU Status Word. | |
uint8_t | ftw |
FPU Tag Word. | |
uint16_t | __pad0__: 0 |
(16 bit alignment) | |
uint16_t | fop |
FPU Opcode. | |
union { | |
uint64_t | ip |
struct { | |
uint32_t | ip_off |
uint32_t | ip_seg |
} | |
}; | |
union { | |
uint64_t | dp |
struct { | |
uint32_t | dp_off |
uint32_t | dp_seg |
} | |
}; | |
uint32_t | mxcsr |
uint32_t | mxcsr_mask |
struct { | |
ST | value |
uint64_t | __pad0__: 48 |
} | st [8] |
XMM | xmm [16] |
uint64_t | reserved [12] |
(reserved) | |
Detailed Description
512 byte structure for FPU / MMX / SSE registers corresponds to the layout used by the instructions fxsave
and fxrstor
.
Class Documentation
struct FPU::State::ST |
Member Function Documentation
|
inline |
Save the current FPU (+ MMX + SSE) state into this structure.
- Note
- Structure has to be 16 byte aligned
|
inline |
Restore the saved FPU (+ MMX + SSE) state from this structure.
- Note
- Structure has to be 16 byte aligned
The documentation for this struct was generated from the following files:
- machine/fpu.h
- machine/fpu.cc