Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Typedefs | Functions
softfloat.c File Reference
#include <linux/kernel.h>
#include <cpu/fpu.h>
#include <asm/div64.h>

Go to the source code of this file.

Macros

#define LIT64(a)   a##LL
 

Typedefs

typedef char flag
 
typedef unsigned char uint8
 
typedef signed char int8
 
typedef int uint16
 
typedef int int16
 
typedef unsigned int uint32
 
typedef signed int int32
 
typedef unsigned long long int bits64
 
typedef signed long long int sbits64
 
typedef unsigned char bits8
 
typedef signed char sbits8
 
typedef unsigned short int bits16
 
typedef signed short int sbits16
 
typedef unsigned int bits32
 
typedef signed int sbits32
 
typedef unsigned long long int uint64
 
typedef signed long long int int64
 
typedef unsigned long int float32
 
typedef unsigned long long float64
 

Functions

void float_raise (unsigned int flags)
 
int float_rounding_mode (void)
 
bits64 extractFloat64Frac (float64 a)
 
flag extractFloat64Sign (float64 a)
 
int16 extractFloat64Exp (float64 a)
 
int16 extractFloat32Exp (float32 a)
 
flag extractFloat32Sign (float32 a)
 
bits32 extractFloat32Frac (float32 a)
 
float64 packFloat64 (flag zSign, int16 zExp, bits64 zSig)
 
void shift64RightJamming (bits64 a, int16 count, bits64 *zPtr)
 
float32 packFloat32 (flag zSign, int16 zExp, bits32 zSig)
 
void shift32RightJamming (bits32 a, int16 count, bits32 *zPtr)
 
float64 float64_sub (float64 a, float64 b)
 
float32 float32_sub (float32 a, float32 b)
 
float32 float32_add (float32 a, float32 b)
 
float64 float64_add (float64 a, float64 b)
 
float64 float64_div (float64 a, float64 b)
 
float32 float32_div (float32 a, float32 b)
 
float32 float32_mul (float32 a, float32 b)
 
float64 float64_mul (float64 a, float64 b)
 
float32 float64_to_float32 (float64 a)
 
void add128 (bits64 a0, bits64 a1, bits64 b0, bits64 b1, bits64 *z0Ptr, bits64 *z1Ptr)
 
void sub128 (bits64 a0, bits64 a1, bits64 b0, bits64 b1, bits64 *z0Ptr, bits64 *z1Ptr)
 
void mul64To128 (bits64 a, bits64 b, bits64 *z0Ptr, bits64 *z1Ptr)
 

Macro Definition Documentation

#define LIT64 (   a)    a##LL

Definition at line 42 of file softfloat.c.

Typedef Documentation

typedef unsigned short int bits16

Definition at line 57 of file softfloat.c.

typedef unsigned int bits32

Definition at line 59 of file softfloat.c.

typedef unsigned long long int bits64

Definition at line 52 of file softfloat.c.

typedef unsigned char bits8

Definition at line 55 of file softfloat.c.

typedef char flag

Definition at line 44 of file softfloat.c.

typedef unsigned long int float32

Definition at line 65 of file softfloat.c.

typedef unsigned long long float64

Definition at line 66 of file softfloat.c.

typedef int int16

Definition at line 48 of file softfloat.c.

typedef signed int int32

Definition at line 50 of file softfloat.c.

typedef signed long long int int64

Definition at line 63 of file softfloat.c.

typedef signed char int8

Definition at line 46 of file softfloat.c.

typedef signed short int sbits16

Definition at line 58 of file softfloat.c.

typedef signed int sbits32

Definition at line 60 of file softfloat.c.

typedef signed long long int sbits64

Definition at line 53 of file softfloat.c.

typedef signed char sbits8

Definition at line 56 of file softfloat.c.

typedef int uint16

Definition at line 47 of file softfloat.c.

typedef unsigned int uint32

Definition at line 49 of file softfloat.c.

typedef unsigned long long int uint64

Definition at line 62 of file softfloat.c.

typedef unsigned char uint8

Definition at line 45 of file softfloat.c.

Function Documentation

void add128 ( bits64  a0,
bits64  a1,
bits64  b0,
bits64  b1,
bits64 z0Ptr,
bits64 z1Ptr 
)

Definition at line 638 of file softfloat.c.

int16 extractFloat32Exp ( float32  a)
bits32 extractFloat32Frac ( float32  a)
flag extractFloat32Sign ( float32  a)

Definition at line 134 of file softfloat.c.

int16 extractFloat64Exp ( float64  a)
bits64 extractFloat64Frac ( float64  a)
flag extractFloat64Sign ( float64  a)

Definition at line 119 of file softfloat.c.

float32 float32_add ( float32  a,
float32  b 
)

Definition at line 601 of file softfloat.c.

float32 float32_div ( float32  a,
float32  b 
)

Definition at line 774 of file softfloat.c.

float32 float32_mul ( float32  a,
float32  b 
)

Definition at line 824 of file softfloat.c.

float32 float32_sub ( float32  a,
float32  b 
)

Definition at line 587 of file softfloat.c.

float64 float64_add ( float64  a,
float64  b 
)

Definition at line 615 of file softfloat.c.

float64 float64_div ( float64  a,
float64  b 
)

Definition at line 716 of file softfloat.c.

float64 float64_mul ( float64  a,
float64  b 
)

Definition at line 865 of file softfloat.c.

float64 float64_sub ( float64  a,
float64  b 
)

Definition at line 573 of file softfloat.c.

float32 float64_to_float32 ( float64  a)

Definition at line 912 of file softfloat.c.

void float_raise ( unsigned int  flags)

Definition at line 393 of file fpu.c.

int float_rounding_mode ( void  )

Definition at line 398 of file fpu.c.

void mul64To128 ( bits64  a,
bits64  b,
bits64 z0Ptr,
bits64 z1Ptr 
)

Definition at line 682 of file softfloat.c.

float32 packFloat32 ( flag  zSign,
int16  zExp,
bits32  zSig 
)
float64 packFloat64 ( flag  zSign,
int16  zExp,
bits64  zSig 
)
void shift32RightJamming ( bits32  a,
int16  count,
bits32 zPtr 
)

Definition at line 347 of file softfloat.c.

void shift64RightJamming ( bits64  a,
int16  count,
bits64 zPtr 
)

Definition at line 149 of file softfloat.c.

void sub128 ( bits64  a0,
bits64  a1,
bits64  b0,
bits64  b1,
bits64 z0Ptr,
bits64 z1Ptr 
)

Definition at line 649 of file softfloat.c.