softfloat: Add fp16 and uint8/int8 conversion functions

Backports 0d93d8ec632154dea2627a9e989972ee09721187
This commit is contained in:
Frank Chang 2021-02-26 15:08:45 -05:00 committed by Lioncash
parent 76d123efee
commit d97454eb63
18 changed files with 138 additions and 0 deletions

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_aarch64
#define float16_squash_input_denormal float16_squash_input_denormal_aarch64
#define float16_sub float16_sub_aarch64
#define float16_to_int8 float16_to_int8_aarch64
#define float16_to_int8_scalbn float16_to_int8_scalbn_aarch64
#define float16_to_int16 float16_to_int16_aarch64
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_aarch64
#define float16_to_int16_scalbn float16_to_int16_scalbn_aarch64
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_aarch64
#define float16_to_float32 float16_to_float32_aarch64
#define float16_to_float64 float16_to_float64_aarch64
#define float16_to_uint8 float16_to_uint8_aarch64
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_aarch64
#define float16_to_uint16 float16_to_uint16_aarch64
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_aarch64
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_aarch64
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_aarch64
#define int128_subfrom int128_subfrom_aarch64
#define int128_zero int128_zero_aarch64
#define int8_to_float16 int8_to_float16_aarch64
#define int16_to_float16 int16_to_float16_aarch64
#define int16_to_float16_scalbn int16_to_float16_scalbn_aarch64
#define int16_to_float32 int16_to_float32_aarch64
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_aarch64
#define type_table_get type_table_get_aarch64
#define type_table_lookup type_table_lookup_aarch64
#define uint8_to_float16 uint8_to_float16_aarch64
#define uint16_to_float16 uint16_to_float16_aarch64
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_aarch64
#define uint16_to_float32 uint16_to_float32_aarch64

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_aarch64eb
#define float16_squash_input_denormal float16_squash_input_denormal_aarch64eb
#define float16_sub float16_sub_aarch64eb
#define float16_to_int8 float16_to_int8_aarch64eb
#define float16_to_int8_scalbn float16_to_int8_scalbn_aarch64eb
#define float16_to_int16 float16_to_int16_aarch64eb
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_aarch64eb
#define float16_to_int16_scalbn float16_to_int16_scalbn_aarch64eb
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_aarch64eb
#define float16_to_float32 float16_to_float32_aarch64eb
#define float16_to_float64 float16_to_float64_aarch64eb
#define float16_to_uint8 float16_to_uint8_aarch64eb
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_aarch64eb
#define float16_to_uint16 float16_to_uint16_aarch64eb
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_aarch64eb
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_aarch64eb
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_aarch64eb
#define int128_subfrom int128_subfrom_aarch64eb
#define int128_zero int128_zero_aarch64eb
#define int8_to_float16 int8_to_float16_aarch64eb
#define int16_to_float16 int16_to_float16_aarch64eb
#define int16_to_float16_scalbn int16_to_float16_scalbn_aarch64eb
#define int16_to_float32 int16_to_float32_aarch64eb
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_aarch64eb
#define type_table_get type_table_get_aarch64eb
#define type_table_lookup type_table_lookup_aarch64eb
#define uint8_to_float16 uint8_to_float16_aarch64eb
#define uint16_to_float16 uint16_to_float16_aarch64eb
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_aarch64eb
#define uint16_to_float32 uint16_to_float32_aarch64eb

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_arm
#define float16_squash_input_denormal float16_squash_input_denormal_arm
#define float16_sub float16_sub_arm
#define float16_to_int8 float16_to_int8_arm
#define float16_to_int8_scalbn float16_to_int8_scalbn_arm
#define float16_to_int16 float16_to_int16_arm
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_arm
#define float16_to_int16_scalbn float16_to_int16_scalbn_arm
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_arm
#define float16_to_float32 float16_to_float32_arm
#define float16_to_float64 float16_to_float64_arm
#define float16_to_uint8 float16_to_uint8_arm
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_arm
#define float16_to_uint16 float16_to_uint16_arm
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_arm
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_arm
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_arm
#define int128_subfrom int128_subfrom_arm
#define int128_zero int128_zero_arm
#define int8_to_float16 int8_to_float16_arm
#define int16_to_float16 int16_to_float16_arm
#define int16_to_float16_scalbn int16_to_float16_scalbn_arm
#define int16_to_float32 int16_to_float32_arm
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_arm
#define type_table_get type_table_get_arm
#define type_table_lookup type_table_lookup_arm
#define uint8_to_float16 uint8_to_float16_arm
#define uint16_to_float16 uint16_to_float16_arm
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_arm
#define uint16_to_float32 uint16_to_float32_arm

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_armeb
#define float16_squash_input_denormal float16_squash_input_denormal_armeb
#define float16_sub float16_sub_armeb
#define float16_to_int8 float16_to_int8_armeb
#define float16_to_int8_scalbn float16_to_int8_scalbn_armeb
#define float16_to_int16 float16_to_int16_armeb
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_armeb
#define float16_to_int16_scalbn float16_to_int16_scalbn_armeb
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_armeb
#define float16_to_float32 float16_to_float32_armeb
#define float16_to_float64 float16_to_float64_armeb
#define float16_to_uint8 float16_to_uint8_armeb
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_armeb
#define float16_to_uint16 float16_to_uint16_armeb
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_armeb
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_armeb
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_armeb
#define int128_subfrom int128_subfrom_armeb
#define int128_zero int128_zero_armeb
#define int8_to_float16 int8_to_float16_armeb
#define int16_to_float16 int16_to_float16_armeb
#define int16_to_float16_scalbn int16_to_float16_scalbn_armeb
#define int16_to_float32 int16_to_float32_armeb
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_armeb
#define type_table_get type_table_get_armeb
#define type_table_lookup type_table_lookup_armeb
#define uint8_to_float16 uint8_to_float16_armeb
#define uint16_to_float16 uint16_to_float16_armeb
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_armeb
#define uint16_to_float32 uint16_to_float32_armeb

View file

@ -2071,6 +2071,13 @@ static int64_t round_to_int_and_pack(FloatParts in, FloatRoundMode rmode,
}
}
int8_t float16_to_int8_scalbn(float16 a, FloatRoundMode rmode, int scale,
float_status *s)
{
return round_to_int_and_pack(float16_unpack_canonical(a, s),
rmode, scale, INT8_MIN, INT8_MAX, s);
}
int16_t float16_to_int16_scalbn(float16 a, FloatRoundMode rmode, int scale,
float_status *s)
{
@ -2134,6 +2141,11 @@ int64_t float64_to_int64_scalbn(float64 a, FloatRoundMode rmode, int scale,
rmode, scale, INT64_MIN, INT64_MAX, s);
}
int8_t float16_to_int8(float16 a, float_status *s)
{
return float16_to_int8_scalbn(a, s->float_rounding_mode, 0, s);
}
int16_t float16_to_int16(float16 a, float_status *s)
{
return float16_to_int16_scalbn(a, s->float_rounding_mode, 0, s);
@ -2284,6 +2296,13 @@ static uint64_t round_to_uint_and_pack(FloatParts in, FloatRoundMode rmode,
}
}
uint8_t float16_to_uint8_scalbn(float16 a, FloatRoundMode rmode, int scale,
float_status *s)
{
return round_to_uint_and_pack(float16_unpack_canonical(a, s),
rmode, scale, UINT8_MAX, s);
}
uint16_t float16_to_uint16_scalbn(float16 a, FloatRoundMode rmode, int scale,
float_status *s)
{
@ -2347,6 +2366,11 @@ uint64_t float64_to_uint64_scalbn(float64 a, FloatRoundMode rmode, int scale,
rmode, scale, UINT64_MAX, s);
}
uint8_t float16_to_uint8(float16 a, float_status *s)
{
return float16_to_uint8_scalbn(a, s->float_rounding_mode, 0, s);
}
uint16_t float16_to_uint16(float16 a, float_status *s)
{
return float16_to_uint16_scalbn(a, s->float_rounding_mode, 0, s);
@ -2501,6 +2525,11 @@ float16 int16_to_float16(int16_t a, float_status *status)
return int64_to_float16_scalbn(a, 0, status);
}
float16 int8_to_float16(int8_t a, float_status *status)
{
return int64_to_float16_scalbn(a, 0, status);
}
float32 int64_to_float32_scalbn(int64_t a, int scale, float_status *status)
{
FloatParts pa = int_to_float(a, scale, status);
@ -2626,6 +2655,11 @@ float16 uint16_to_float16(uint16_t a, float_status *status)
return uint64_to_float16_scalbn(a, 0, status);
}
float16 uint8_to_float16(uint8_t a, float_status *status)
{
return uint64_to_float16_scalbn(a, 0, status);
}
float32 uint64_to_float32_scalbn(uint64_t a, int scale, float_status *status)
{
FloatParts pa = uint_to_float(a, scale, status);

View file

@ -574,6 +574,8 @@ symbols = (
'float16_sqrt',
'float16_squash_input_denormal',
'float16_sub',
'float16_to_int8',
'float16_to_int8_scalbn',
'float16_to_int16',
'float16_to_int16_round_to_zero',
'float16_to_int16_scalbn',
@ -585,6 +587,8 @@ symbols = (
'float16_to_int64_scalbn',
'float16_to_float32',
'float16_to_float64',
'float16_to_uint8',
'float16_to_uint8_scalbn',
'float16_to_uint16',
'float16_to_uint16_round_to_zero',
'float16_to_uint16_scalbn',
@ -1973,6 +1977,7 @@ symbols = (
'int128_sub',
'int128_subfrom',
'int128_zero',
'int8_to_float16',
'int16_to_float16',
'int16_to_float16_scalbn',
'int16_to_float32',
@ -3385,6 +3390,7 @@ symbols = (
'type_table_add',
'type_table_get',
'type_table_lookup',
'uint8_to_float16',
'uint16_to_float16',
'uint16_to_float16_scalbn',
'uint16_to_float32',

View file

@ -139,9 +139,11 @@ float16 uint16_to_float16_scalbn(uint16_t a, int, float_status *status);
float16 uint32_to_float16_scalbn(uint32_t a, int, float_status *status);
float16 uint64_to_float16_scalbn(uint64_t a, int, float_status *status);
float16 int8_to_float16(int8_t a, float_status *status);
float16 int16_to_float16(int16_t a, float_status *status);
float16 int32_to_float16(int32_t a, float_status *status);
float16 int64_to_float16(int64_t a, float_status *status);
float16 uint8_to_float16(uint8_t a, float_status *status);
float16 uint16_to_float16(uint16_t a, float_status *status);
float16 uint32_to_float16(uint32_t a, float_status *status);
float16 uint64_to_float16(uint64_t a, float_status *status);
@ -190,10 +192,13 @@ float32 float16_to_float32(float16, bool ieee, float_status *status);
float16 float64_to_float16(float64 a, bool ieee, float_status *status);
float64 float16_to_float64(float16 a, bool ieee, float_status *status);
int8_t float16_to_int8_scalbn(float16, FloatRoundMode, int,
float_status *status);
int16_t float16_to_int16_scalbn(float16, FloatRoundMode, int, float_status *);
int32_t float16_to_int32_scalbn(float16, FloatRoundMode, int, float_status *);
int64_t float16_to_int64_scalbn(float16, FloatRoundMode, int, float_status *);
int8_t float16_to_int8(float16, float_status *status);
int16_t float16_to_int16(float16, float_status *status);
int32_t float16_to_int32(float16, float_status *status);
int64_t float16_to_int64(float16, float_status *status);
@ -202,6 +207,8 @@ int16_t float16_to_int16_round_to_zero(float16, float_status *status);
int32_t float16_to_int32_round_to_zero(float16, float_status *status);
int64_t float16_to_int64_round_to_zero(float16, float_status *status);
uint8_t float16_to_uint8_scalbn(float16 a, FloatRoundMode,
int, float_status *status);
uint16_t float16_to_uint16_scalbn(float16 a, FloatRoundMode,
int, float_status *status);
uint32_t float16_to_uint32_scalbn(float16 a, FloatRoundMode,
@ -209,6 +216,7 @@ uint32_t float16_to_uint32_scalbn(float16 a, FloatRoundMode,
uint64_t float16_to_uint64_scalbn(float16 a, FloatRoundMode,
int, float_status *status);
uint8_t float16_to_uint8(float16 a, float_status *status);
uint16_t float16_to_uint16(float16 a, float_status *status);
uint32_t float16_to_uint32(float16 a, float_status *status);
uint64_t float16_to_uint64(float16 a, float_status *status);

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_m68k
#define float16_squash_input_denormal float16_squash_input_denormal_m68k
#define float16_sub float16_sub_m68k
#define float16_to_int8 float16_to_int8_m68k
#define float16_to_int8_scalbn float16_to_int8_scalbn_m68k
#define float16_to_int16 float16_to_int16_m68k
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_m68k
#define float16_to_int16_scalbn float16_to_int16_scalbn_m68k
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_m68k
#define float16_to_float32 float16_to_float32_m68k
#define float16_to_float64 float16_to_float64_m68k
#define float16_to_uint8 float16_to_uint8_m68k
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_m68k
#define float16_to_uint16 float16_to_uint16_m68k
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_m68k
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_m68k
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_m68k
#define int128_subfrom int128_subfrom_m68k
#define int128_zero int128_zero_m68k
#define int8_to_float16 int8_to_float16_m68k
#define int16_to_float16 int16_to_float16_m68k
#define int16_to_float16_scalbn int16_to_float16_scalbn_m68k
#define int16_to_float32 int16_to_float32_m68k
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_m68k
#define type_table_get type_table_get_m68k
#define type_table_lookup type_table_lookup_m68k
#define uint8_to_float16 uint8_to_float16_m68k
#define uint16_to_float16 uint16_to_float16_m68k
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_m68k
#define uint16_to_float32 uint16_to_float32_m68k

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_mips
#define float16_squash_input_denormal float16_squash_input_denormal_mips
#define float16_sub float16_sub_mips
#define float16_to_int8 float16_to_int8_mips
#define float16_to_int8_scalbn float16_to_int8_scalbn_mips
#define float16_to_int16 float16_to_int16_mips
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_mips
#define float16_to_int16_scalbn float16_to_int16_scalbn_mips
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_mips
#define float16_to_float32 float16_to_float32_mips
#define float16_to_float64 float16_to_float64_mips
#define float16_to_uint8 float16_to_uint8_mips
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_mips
#define float16_to_uint16 float16_to_uint16_mips
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_mips
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_mips
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_mips
#define int128_subfrom int128_subfrom_mips
#define int128_zero int128_zero_mips
#define int8_to_float16 int8_to_float16_mips
#define int16_to_float16 int16_to_float16_mips
#define int16_to_float16_scalbn int16_to_float16_scalbn_mips
#define int16_to_float32 int16_to_float32_mips
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_mips
#define type_table_get type_table_get_mips
#define type_table_lookup type_table_lookup_mips
#define uint8_to_float16 uint8_to_float16_mips
#define uint16_to_float16 uint16_to_float16_mips
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_mips
#define uint16_to_float32 uint16_to_float32_mips

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_mips64
#define float16_squash_input_denormal float16_squash_input_denormal_mips64
#define float16_sub float16_sub_mips64
#define float16_to_int8 float16_to_int8_mips64
#define float16_to_int8_scalbn float16_to_int8_scalbn_mips64
#define float16_to_int16 float16_to_int16_mips64
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_mips64
#define float16_to_int16_scalbn float16_to_int16_scalbn_mips64
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_mips64
#define float16_to_float32 float16_to_float32_mips64
#define float16_to_float64 float16_to_float64_mips64
#define float16_to_uint8 float16_to_uint8_mips64
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_mips64
#define float16_to_uint16 float16_to_uint16_mips64
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_mips64
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_mips64
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_mips64
#define int128_subfrom int128_subfrom_mips64
#define int128_zero int128_zero_mips64
#define int8_to_float16 int8_to_float16_mips64
#define int16_to_float16 int16_to_float16_mips64
#define int16_to_float16_scalbn int16_to_float16_scalbn_mips64
#define int16_to_float32 int16_to_float32_mips64
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_mips64
#define type_table_get type_table_get_mips64
#define type_table_lookup type_table_lookup_mips64
#define uint8_to_float16 uint8_to_float16_mips64
#define uint16_to_float16 uint16_to_float16_mips64
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_mips64
#define uint16_to_float32 uint16_to_float32_mips64

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_mips64el
#define float16_squash_input_denormal float16_squash_input_denormal_mips64el
#define float16_sub float16_sub_mips64el
#define float16_to_int8 float16_to_int8_mips64el
#define float16_to_int8_scalbn float16_to_int8_scalbn_mips64el
#define float16_to_int16 float16_to_int16_mips64el
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_mips64el
#define float16_to_int16_scalbn float16_to_int16_scalbn_mips64el
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_mips64el
#define float16_to_float32 float16_to_float32_mips64el
#define float16_to_float64 float16_to_float64_mips64el
#define float16_to_uint8 float16_to_uint8_mips64el
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_mips64el
#define float16_to_uint16 float16_to_uint16_mips64el
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_mips64el
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_mips64el
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_mips64el
#define int128_subfrom int128_subfrom_mips64el
#define int128_zero int128_zero_mips64el
#define int8_to_float16 int8_to_float16_mips64el
#define int16_to_float16 int16_to_float16_mips64el
#define int16_to_float16_scalbn int16_to_float16_scalbn_mips64el
#define int16_to_float32 int16_to_float32_mips64el
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_mips64el
#define type_table_get type_table_get_mips64el
#define type_table_lookup type_table_lookup_mips64el
#define uint8_to_float16 uint8_to_float16_mips64el
#define uint16_to_float16 uint16_to_float16_mips64el
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_mips64el
#define uint16_to_float32 uint16_to_float32_mips64el

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_mipsel
#define float16_squash_input_denormal float16_squash_input_denormal_mipsel
#define float16_sub float16_sub_mipsel
#define float16_to_int8 float16_to_int8_mipsel
#define float16_to_int8_scalbn float16_to_int8_scalbn_mipsel
#define float16_to_int16 float16_to_int16_mipsel
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_mipsel
#define float16_to_int16_scalbn float16_to_int16_scalbn_mipsel
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_mipsel
#define float16_to_float32 float16_to_float32_mipsel
#define float16_to_float64 float16_to_float64_mipsel
#define float16_to_uint8 float16_to_uint8_mipsel
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_mipsel
#define float16_to_uint16 float16_to_uint16_mipsel
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_mipsel
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_mipsel
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_mipsel
#define int128_subfrom int128_subfrom_mipsel
#define int128_zero int128_zero_mipsel
#define int8_to_float16 int8_to_float16_mipsel
#define int16_to_float16 int16_to_float16_mipsel
#define int16_to_float16_scalbn int16_to_float16_scalbn_mipsel
#define int16_to_float32 int16_to_float32_mipsel
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_mipsel
#define type_table_get type_table_get_mipsel
#define type_table_lookup type_table_lookup_mipsel
#define uint8_to_float16 uint8_to_float16_mipsel
#define uint16_to_float16 uint16_to_float16_mipsel
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_mipsel
#define uint16_to_float32 uint16_to_float32_mipsel

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_powerpc
#define float16_squash_input_denormal float16_squash_input_denormal_powerpc
#define float16_sub float16_sub_powerpc
#define float16_to_int8 float16_to_int8_powerpc
#define float16_to_int8_scalbn float16_to_int8_scalbn_powerpc
#define float16_to_int16 float16_to_int16_powerpc
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_powerpc
#define float16_to_int16_scalbn float16_to_int16_scalbn_powerpc
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_powerpc
#define float16_to_float32 float16_to_float32_powerpc
#define float16_to_float64 float16_to_float64_powerpc
#define float16_to_uint8 float16_to_uint8_powerpc
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_powerpc
#define float16_to_uint16 float16_to_uint16_powerpc
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_powerpc
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_powerpc
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_powerpc
#define int128_subfrom int128_subfrom_powerpc
#define int128_zero int128_zero_powerpc
#define int8_to_float16 int8_to_float16_powerpc
#define int16_to_float16 int16_to_float16_powerpc
#define int16_to_float16_scalbn int16_to_float16_scalbn_powerpc
#define int16_to_float32 int16_to_float32_powerpc
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_powerpc
#define type_table_get type_table_get_powerpc
#define type_table_lookup type_table_lookup_powerpc
#define uint8_to_float16 uint8_to_float16_powerpc
#define uint16_to_float16 uint16_to_float16_powerpc
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_powerpc
#define uint16_to_float32 uint16_to_float32_powerpc

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_riscv32
#define float16_squash_input_denormal float16_squash_input_denormal_riscv32
#define float16_sub float16_sub_riscv32
#define float16_to_int8 float16_to_int8_riscv32
#define float16_to_int8_scalbn float16_to_int8_scalbn_riscv32
#define float16_to_int16 float16_to_int16_riscv32
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_riscv32
#define float16_to_int16_scalbn float16_to_int16_scalbn_riscv32
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_riscv32
#define float16_to_float32 float16_to_float32_riscv32
#define float16_to_float64 float16_to_float64_riscv32
#define float16_to_uint8 float16_to_uint8_riscv32
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_riscv32
#define float16_to_uint16 float16_to_uint16_riscv32
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_riscv32
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_riscv32
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_riscv32
#define int128_subfrom int128_subfrom_riscv32
#define int128_zero int128_zero_riscv32
#define int8_to_float16 int8_to_float16_riscv32
#define int16_to_float16 int16_to_float16_riscv32
#define int16_to_float16_scalbn int16_to_float16_scalbn_riscv32
#define int16_to_float32 int16_to_float32_riscv32
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_riscv32
#define type_table_get type_table_get_riscv32
#define type_table_lookup type_table_lookup_riscv32
#define uint8_to_float16 uint8_to_float16_riscv32
#define uint16_to_float16 uint16_to_float16_riscv32
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_riscv32
#define uint16_to_float32 uint16_to_float32_riscv32

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_riscv64
#define float16_squash_input_denormal float16_squash_input_denormal_riscv64
#define float16_sub float16_sub_riscv64
#define float16_to_int8 float16_to_int8_riscv64
#define float16_to_int8_scalbn float16_to_int8_scalbn_riscv64
#define float16_to_int16 float16_to_int16_riscv64
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_riscv64
#define float16_to_int16_scalbn float16_to_int16_scalbn_riscv64
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_riscv64
#define float16_to_float32 float16_to_float32_riscv64
#define float16_to_float64 float16_to_float64_riscv64
#define float16_to_uint8 float16_to_uint8_riscv64
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_riscv64
#define float16_to_uint16 float16_to_uint16_riscv64
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_riscv64
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_riscv64
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_riscv64
#define int128_subfrom int128_subfrom_riscv64
#define int128_zero int128_zero_riscv64
#define int8_to_float16 int8_to_float16_riscv64
#define int16_to_float16 int16_to_float16_riscv64
#define int16_to_float16_scalbn int16_to_float16_scalbn_riscv64
#define int16_to_float32 int16_to_float32_riscv64
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_riscv64
#define type_table_get type_table_get_riscv64
#define type_table_lookup type_table_lookup_riscv64
#define uint8_to_float16 uint8_to_float16_riscv64
#define uint16_to_float16 uint16_to_float16_riscv64
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_riscv64
#define uint16_to_float32 uint16_to_float32_riscv64

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_sparc
#define float16_squash_input_denormal float16_squash_input_denormal_sparc
#define float16_sub float16_sub_sparc
#define float16_to_int8 float16_to_int8_sparc
#define float16_to_int8_scalbn float16_to_int8_scalbn_sparc
#define float16_to_int16 float16_to_int16_sparc
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_sparc
#define float16_to_int16_scalbn float16_to_int16_scalbn_sparc
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_sparc
#define float16_to_float32 float16_to_float32_sparc
#define float16_to_float64 float16_to_float64_sparc
#define float16_to_uint8 float16_to_uint8_sparc
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_sparc
#define float16_to_uint16 float16_to_uint16_sparc
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_sparc
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_sparc
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_sparc
#define int128_subfrom int128_subfrom_sparc
#define int128_zero int128_zero_sparc
#define int8_to_float16 int8_to_float16_sparc
#define int16_to_float16 int16_to_float16_sparc
#define int16_to_float16_scalbn int16_to_float16_scalbn_sparc
#define int16_to_float32 int16_to_float32_sparc
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_sparc
#define type_table_get type_table_get_sparc
#define type_table_lookup type_table_lookup_sparc
#define uint8_to_float16 uint8_to_float16_sparc
#define uint16_to_float16 uint16_to_float16_sparc
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_sparc
#define uint16_to_float32 uint16_to_float32_sparc

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_sparc64
#define float16_squash_input_denormal float16_squash_input_denormal_sparc64
#define float16_sub float16_sub_sparc64
#define float16_to_int8 float16_to_int8_sparc64
#define float16_to_int8_scalbn float16_to_int8_scalbn_sparc64
#define float16_to_int16 float16_to_int16_sparc64
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_sparc64
#define float16_to_int16_scalbn float16_to_int16_scalbn_sparc64
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_sparc64
#define float16_to_float32 float16_to_float32_sparc64
#define float16_to_float64 float16_to_float64_sparc64
#define float16_to_uint8 float16_to_uint8_sparc64
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_sparc64
#define float16_to_uint16 float16_to_uint16_sparc64
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_sparc64
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_sparc64
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_sparc64
#define int128_subfrom int128_subfrom_sparc64
#define int128_zero int128_zero_sparc64
#define int8_to_float16 int8_to_float16_sparc64
#define int16_to_float16 int16_to_float16_sparc64
#define int16_to_float16_scalbn int16_to_float16_scalbn_sparc64
#define int16_to_float32 int16_to_float32_sparc64
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_sparc64
#define type_table_get type_table_get_sparc64
#define type_table_lookup type_table_lookup_sparc64
#define uint8_to_float16 uint8_to_float16_sparc64
#define uint16_to_float16 uint16_to_float16_sparc64
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_sparc64
#define uint16_to_float32 uint16_to_float32_sparc64

View file

@ -568,6 +568,8 @@
#define float16_sqrt float16_sqrt_x86_64
#define float16_squash_input_denormal float16_squash_input_denormal_x86_64
#define float16_sub float16_sub_x86_64
#define float16_to_int8 float16_to_int8_x86_64
#define float16_to_int8_scalbn float16_to_int8_scalbn_x86_64
#define float16_to_int16 float16_to_int16_x86_64
#define float16_to_int16_round_to_zero float16_to_int16_round_to_zero_x86_64
#define float16_to_int16_scalbn float16_to_int16_scalbn_x86_64
@ -579,6 +581,8 @@
#define float16_to_int64_scalbn float16_to_int64_scalbn_x86_64
#define float16_to_float32 float16_to_float32_x86_64
#define float16_to_float64 float16_to_float64_x86_64
#define float16_to_uint8 float16_to_uint8_x86_64
#define float16_to_uint8_scalbn float16_to_uint8_scalbn_x86_64
#define float16_to_uint16 float16_to_uint16_x86_64
#define float16_to_uint16_round_to_zero float16_to_uint16_round_to_zero_x86_64
#define float16_to_uint16_scalbn float16_to_uint16_scalbn_x86_64
@ -1967,6 +1971,7 @@
#define int128_sub int128_sub_x86_64
#define int128_subfrom int128_subfrom_x86_64
#define int128_zero int128_zero_x86_64
#define int8_to_float16 int8_to_float16_x86_64
#define int16_to_float16 int16_to_float16_x86_64
#define int16_to_float16_scalbn int16_to_float16_scalbn_x86_64
#define int16_to_float32 int16_to_float32_x86_64
@ -3379,6 +3384,7 @@
#define type_table_add type_table_add_x86_64
#define type_table_get type_table_get_x86_64
#define type_table_lookup type_table_lookup_x86_64
#define uint8_to_float16 uint8_to_float16_x86_64
#define uint16_to_float16 uint16_to_float16_x86_64
#define uint16_to_float16_scalbn uint16_to_float16_scalbn_x86_64
#define uint16_to_float32 uint16_to_float32_x86_64