Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik
fpu.h File Reference

Helper for floating point unit (x87), Multi Media Extension (MMX) and Streaming SIMD Extensions (SSE) More...

#include "types.h"
#include "debug/assert.h"
Include dependency graph for fpu.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  FPU::State
 512 byte structure for FPU / MMX / SSE registers corresponds to the layout used by the instructions fxsave and fxrstor. More...
 
struct  FPU::State::ST
 80 bit registers for FPU stack / MMX More...
 
struct  FPU::State::XMM
 128 bit SSE registers More...
 
union  FPU::State.__unnamed__
 
struct  FPU::State.__unnamed__.__unnamed__
 
union  FPU::State.__unnamed__
 
struct  FPU::State.__unnamed__.__unnamed__
 
struct  FPU::State.st
 

Namespaces

 FPU
 For the sake of simplicity we call it just FPU, although this is for MMX and SSE as well.
 

Functions

 FPU::assert_size (State, 512)
 
bool FPU::init ()
 Initialize FPU on the current CPU. More...
 

Detailed Description

Helper for floating point unit (x87), Multi Media Extension (MMX) and Streaming SIMD Extensions (SSE)


Class Documentation

◆ FPU::State::ST

struct FPU::State::ST

80 bit registers for FPU stack / MMX

Class Members
uint64_t fraction: 63
uint64_t integer: 1
uint16_t exponent: 15
uint16_t sign: 1

◆ FPU::State::XMM

struct FPU::State::XMM

128 bit SSE registers

Class Members
uint64_t low
uint64_t high

◆ FPU::State.__unnamed__

union FPU::State.__unnamed__
Class Members
uint64_t ip
__unnamed__ __unnamed__

◆ FPU::State.__unnamed__.__unnamed__

struct FPU::State.__unnamed__.__unnamed__
Class Members
uint32_t ip_off
uint32_t ip_seg

◆ FPU::State.__unnamed__

union FPU::State.__unnamed__
Class Members
uint64_t dp
__unnamed__ __unnamed__

◆ FPU::State.__unnamed__.__unnamed__

struct FPU::State.__unnamed__.__unnamed__
Class Members
uint32_t dp_off
uint32_t dp_seg

◆ FPU::State.st

struct FPU::State.st
Class Members
ST value
uint64_t __pad0__: 48