diff options
author | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-02-28 17:33:03 -0800 |
---|---|---|
committer | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-02-28 17:33:03 -0800 |
commit | a4ae7da6ef0c09c2616a0b82f7f569e4e134f75c (patch) | |
tree | 5f01a743a211a5b7b3bacf6b53821a2bcef8295c /softfloat/f64_to_i64.c | |
parent | 5c8645013001ff125f9b28e0f861328e9b9a4d12 (diff) | |
download | riscv-pk-a4ae7da6ef0c09c2616a0b82f7f569e4e134f75c.zip riscv-pk-a4ae7da6ef0c09c2616a0b82f7f569e4e134f75c.tar.gz riscv-pk-a4ae7da6ef0c09c2616a0b82f7f569e4e134f75c.tar.bz2 |
Fix softfloat float->int corner cases
Diffstat (limited to 'softfloat/f64_to_i64.c')
-rwxr-xr-x | softfloat/f64_to_i64.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/softfloat/f64_to_i64.c b/softfloat/f64_to_i64.c index 89663ee..0e6ddcd 100755 --- a/softfloat/f64_to_i64.c +++ b/softfloat/f64_to_i64.c @@ -28,8 +28,6 @@ int_fast64_t f64_to_i64( float64_t a, int_fast8_t roundingMode, bool exact ) softfloat_raiseFlags( softfloat_flag_invalid );
return
! sign
- || ( ( exp == 0x7FF )
- && ( sig != UINT64_C( 0x0010000000000000 ) ) )
? INT64_C( 0x7FFFFFFFFFFFFFFF )
: - INT64_C( 0x7FFFFFFFFFFFFFFF ) - 1;
}
|