ETISS 0.8.0
Extendable Translating Instruction Set Simulator (version 0.8.0)
Functions | Variables
fp_functions.cpp File Reference
#include "softfloat_orig.h"
#include "internals.h"
#include "specialize.h"
#include "libsoftfloat.h"
#include <limits>
Include dependency graph for fp_functions.cpp:

Go to the source code of this file.

Functions

uint32_t fget_flags ()
 
uint32_t fadd_s (uint32_t v1, uint32_t v2, uint8_t mode)
 
uint32_t fsub_s (uint32_t v1, uint32_t v2, uint8_t mode)
 
uint32_t fmul_s (uint32_t v1, uint32_t v2, uint8_t mode)
 
uint32_t fdiv_s (uint32_t v1, uint32_t v2, uint8_t mode)
 
uint32_t fsqrt_s (uint32_t v1, uint8_t mode)
 
uint32_t fcmp_s (uint32_t v1, uint32_t v2, uint32_t op)
 
uint32_t fcvt_s (uint32_t v1, uint32_t op, uint8_t mode)
 
uint32_t fmadd_s (uint32_t v1, uint32_t v2, uint32_t v3, uint32_t op, uint8_t mode)
 
uint32_t fsel_s (uint32_t v1, uint32_t v2, uint32_t op)
 
uint32_t fclass_s (uint32_t v1)
 
uint32_t fconv_d2f (uint64_t v1, uint8_t mode)
 
uint64_t fconv_f2d (uint32_t v1, uint8_t mode)
 
uint64_t fadd_d (uint64_t v1, uint64_t v2, uint8_t mode)
 
uint64_t fsub_d (uint64_t v1, uint64_t v2, uint8_t mode)
 
uint64_t fmul_d (uint64_t v1, uint64_t v2, uint8_t mode)
 
uint64_t fdiv_d (uint64_t v1, uint64_t v2, uint8_t mode)
 
uint64_t fsqrt_d (uint64_t v1, uint8_t mode)
 
uint64_t fcmp_d (uint64_t v1, uint64_t v2, uint32_t op)
 
uint64_t fcvt_d (uint64_t v1, uint32_t op, uint8_t mode)
 
uint64_t fmadd_d (uint64_t v1, uint64_t v2, uint64_t v3, uint32_t op, uint8_t mode)
 
uint64_t fsel_d (uint64_t v1, uint64_t v2, uint32_t op)
 
uint64_t fclass_d (uint64_t v1)
 
uint64_t fcvt_32_64 (uint32_t v1, uint32_t op, uint8_t mode)
 
uint32_t fcvt_64_32 (uint64_t v1, uint32_t op, uint8_t mode)
 
uint32_t unbox_s (uint64_t v)
 

Variables

const uint8_t rmm_map []
 
const uint32_t quiet_nan32 =0x7fC00000
 

Function Documentation

◆ fadd_d()

uint64_t fadd_d ( uint64_t  v1,
uint64_t  v2,
uint8_t  mode 
)

Definition at line 234 of file fp_functions.cpp.

References get_metrics::mode, nan(), quiet_nan32, and rmm_map.

Here is the call graph for this function:

◆ fadd_s()

uint32_t fadd_s ( uint32_t  v1,
uint32_t  v2,
uint8_t  mode 
)

Definition at line 59 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fclass_d()

uint64_t fclass_d ( uint64_t  v1)

Definition at line 366 of file fp_functions.cpp.

References sign().

Here is the call graph for this function:

◆ fclass_s()

uint32_t fclass_s ( uint32_t  v1)

Definition at line 183 of file fp_functions.cpp.

References sign().

Here is the call graph for this function:

◆ fcmp_d()

uint64_t fcmp_d ( uint64_t  v1,
uint64_t  v2,
uint32_t  op 
)

Definition at line 278 of file fp_functions.cpp.

References nan(), and quiet_nan32.

Here is the call graph for this function:

◆ fcmp_s()

uint32_t fcmp_s ( uint32_t  v1,
uint32_t  v2,
uint32_t  op 
)

Definition at line 99 of file fp_functions.cpp.

References nan(), and quiet_nan32.

Here is the call graph for this function:

◆ fconv_d2f()

uint32_t fconv_d2f ( uint64_t  v1,
uint8_t  mode 
)

Definition at line 212 of file fp_functions.cpp.

References get_metrics::mode, nan(), and rmm_map.

Here is the call graph for this function:

◆ fconv_f2d()

uint64_t fconv_f2d ( uint32_t  v1,
uint8_t  mode 
)

Definition at line 223 of file fp_functions.cpp.

References get_metrics::mode, nan(), and rmm_map.

Here is the call graph for this function:

◆ fcvt_32_64()

uint64_t fcvt_32_64 ( uint32_t  v1,
uint32_t  op,
uint8_t  mode 
)

Definition at line 395 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fcvt_64_32()

uint32_t fcvt_64_32 ( uint64_t  v1,
uint32_t  op,
uint8_t  mode 
)

Definition at line 414 of file fp_functions.cpp.

References int32_t, get_metrics::mode, rmm_map, and uint32_t.

◆ fcvt_d()

uint64_t fcvt_d ( uint64_t  v1,
uint32_t  op,
uint8_t  mode 
)

Definition at line 308 of file fp_functions.cpp.

References get_metrics::mode, rmm_map, and uint64_t.

◆ fcvt_s()

uint32_t fcvt_s ( uint32_t  v1,
uint32_t  op,
uint8_t  mode 
)

Definition at line 129 of file fp_functions.cpp.

References get_metrics::mode, rmm_map, and uint32_t.

◆ fdiv_d()

uint64_t fdiv_d ( uint64_t  v1,
uint64_t  v2,
uint8_t  mode 
)

Definition at line 262 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fdiv_s()

uint32_t fdiv_s ( uint32_t  v1,
uint32_t  v2,
uint8_t  mode 
)

Definition at line 83 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fget_flags()

uint32_t fget_flags ( )

Definition at line 55 of file fp_functions.cpp.

◆ fmadd_d()

uint64_t fmadd_d ( uint64_t  v1,
uint64_t  v2,
uint64_t  v3,
uint32_t  op,
uint8_t  mode 
)

Definition at line 331 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fmadd_s()

uint32_t fmadd_s ( uint32_t  v1,
uint32_t  v2,
uint32_t  v3,
uint32_t  op,
uint8_t  mode 
)

Definition at line 152 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fmul_d()

uint64_t fmul_d ( uint64_t  v1,
uint64_t  v2,
uint8_t  mode 
)

Definition at line 254 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fmul_s()

uint32_t fmul_s ( uint32_t  v1,
uint32_t  v2,
uint8_t  mode 
)

Definition at line 75 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fsel_d()

uint64_t fsel_d ( uint64_t  v1,
uint64_t  v2,
uint32_t  op 
)

Definition at line 340 of file fp_functions.cpp.

References max(), and min().

Here is the call graph for this function:

◆ fsel_s()

uint32_t fsel_s ( uint32_t  v1,
uint32_t  v2,
uint32_t  op 
)

Definition at line 161 of file fp_functions.cpp.

◆ fsqrt_d()

uint64_t fsqrt_d ( uint64_t  v1,
uint8_t  mode 
)

Definition at line 270 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fsqrt_s()

uint32_t fsqrt_s ( uint32_t  v1,
uint8_t  mode 
)

Definition at line 91 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fsub_d()

uint64_t fsub_d ( uint64_t  v1,
uint64_t  v2,
uint8_t  mode 
)

Definition at line 246 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ fsub_s()

uint32_t fsub_s ( uint32_t  v1,
uint32_t  v2,
uint8_t  mode 
)

Definition at line 67 of file fp_functions.cpp.

References get_metrics::mode, and rmm_map.

◆ unbox_s()

uint32_t unbox_s ( uint64_t  v)

Definition at line 436 of file fp_functions.cpp.

References max(), uint64_t, and v.

Here is the call graph for this function:

Variable Documentation

◆ quiet_nan32

const uint32_t quiet_nan32 =0x7fC00000

Definition at line 53 of file fp_functions.cpp.

Referenced by fadd_d(), fcmp_d(), and fcmp_s().

◆ rmm_map

const uint8_t rmm_map[]
Initial value:
= {
softfloat_round_near_even ,
softfloat_round_minMag,
softfloat_round_min,
softfloat_round_max,
softfloat_round_near_maxMag ,
softfloat_round_max,
softfloat_round_max,
softfloat_round_max,
}

Definition at line 42 of file fp_functions.cpp.

Referenced by fadd_d(), fadd_s(), fconv_d2f(), fconv_f2d(), fcvt_32_64(), fcvt_64_32(), fcvt_d(), fcvt_s(), fdiv_d(), fdiv_s(), fmadd_d(), fmadd_s(), fmul_d(), fmul_s(), fsqrt_d(), fsqrt_s(), fsub_d(), and fsub_s().