aboutsummaryrefslogtreecommitdiff
path: root/softfloat/softfloat.h
diff options
context:
space:
mode:
authorHan-Kuan Chen <hankuan.chen@sifive.com>2020-03-24 19:39:36 -0700
committerChih-Min Chao <chihmin.chao@sifive.com>2020-05-04 09:50:05 -0700
commit2b38341691cae78d1e06c9e80af1944d4c7aa0e5 (patch)
treebb996497242425f1f21025f53c593c4cce744b52 /softfloat/softfloat.h
parentb6432b1edf368b38661d00e0f2b7fe672d09bd72 (diff)
downloadriscv-isa-sim-2b38341691cae78d1e06c9e80af1944d4c7aa0e5.zip
riscv-isa-sim-2b38341691cae78d1e06c9e80af1944d4c7aa0e5.tar.gz
riscv-isa-sim-2b38341691cae78d1e06c9e80af1944d4c7aa0e5.tar.bz2
sf: fp16: add missing APIs
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
Diffstat (limited to 'softfloat/softfloat.h')
-rw-r--r--softfloat/softfloat.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/softfloat/softfloat.h b/softfloat/softfloat.h
index ddc39e3..5579c68 100644
--- a/softfloat/softfloat.h
+++ b/softfloat/softfloat.h
@@ -141,8 +141,10 @@ void i64_to_f128M( int64_t, float128_t * );
/*----------------------------------------------------------------------------
| 16-bit (half-precision) floating-point operations.
*----------------------------------------------------------------------------*/
+uint_fast16_t f16_to_ui16( float16_t, uint_fast8_t, bool );
uint_fast32_t f16_to_ui32( float16_t, uint_fast8_t, bool );
uint_fast64_t f16_to_ui64( float16_t, uint_fast8_t, bool );
+int_fast16_t f16_to_i16( float16_t, uint_fast8_t, bool );
int_fast32_t f16_to_i32( float16_t, uint_fast8_t, bool );
int_fast64_t f16_to_i64( float16_t, uint_fast8_t, bool );
uint_fast32_t f16_to_ui32_r_minMag( float16_t, bool );
@@ -174,12 +176,15 @@ bool f16_eq_signaling( float16_t, float16_t );
bool f16_le_quiet( float16_t, float16_t );
bool f16_lt_quiet( float16_t, float16_t );
bool f16_isSignalingNaN( float16_t );
+uint_fast16_t f16_classify( float16_t );
/*----------------------------------------------------------------------------
| 32-bit (single-precision) floating-point operations.
*----------------------------------------------------------------------------*/
+uint_fast16_t f32_to_ui16( float32_t, uint_fast8_t, bool );
uint_fast32_t f32_to_ui32( float32_t, uint_fast8_t, bool );
uint_fast64_t f32_to_ui64( float32_t, uint_fast8_t, bool );
+int_fast16_t f32_to_i16( float32_t, uint_fast8_t, bool );
int_fast32_t f32_to_i32( float32_t, uint_fast8_t, bool );
int_fast64_t f32_to_i64( float32_t, uint_fast8_t, bool );
uint_fast32_t f32_to_ui32_r_minMag( float32_t, bool );