ext: Update softfloat to 3d full version
* Add all softfloat source files without any change.
* Remove useless file softfloat.mk.in, since gem5 use Scons.
* Add `use_fast_int64` in SConscript to distinguish src of two strategies for data
larger than 64 bits.
* The SoftFloat library uses two strategies to handle data larger than 64bit. One is
spliting data into `fast_int64`, and the other is using pointer. Two strategies
are distinguished by macro `SOFTFLOAT_FAST_INT64`. But not all "*.c" files are
guarded by this macro, which leads to including useless files in compiling progress
and compiling error. `use_fast_int64` used in SConscript can exclude unnecessary
files.
Change-Id: I7cec10412c00a35c247299cd92d83cdee9066410
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/66552
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Hoa Nguyen <hoanguyen@ucdavis.edu>
This commit is contained in:
@@ -39,7 +39,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include "primitiveTypes.h"
|
||||
#include "softfloat.h"
|
||||
|
||||
@@ -56,6 +55,20 @@ extern "C" {
|
||||
| The values to return on conversions to 32-bit integer formats that raise an
|
||||
| invalid exception.
|
||||
*----------------------------------------------------------------------------*/
|
||||
#define ui8_fromPosOverflow 0xFF
|
||||
#define ui8_fromNegOverflow 0
|
||||
#define ui8_fromNaN 0xFF
|
||||
#define i8_fromPosOverflow 0x7F
|
||||
#define i8_fromNegOverflow (-0x7F - 1)
|
||||
#define i8_fromNaN 0x7F
|
||||
|
||||
#define ui16_fromPosOverflow 0xFFFF
|
||||
#define ui16_fromNegOverflow 0
|
||||
#define ui16_fromNaN 0xFFFF
|
||||
#define i16_fromPosOverflow 0x7FFF
|
||||
#define i16_fromNegOverflow (-0x7FFF - 1)
|
||||
#define i16_fromNaN 0x7FFF
|
||||
|
||||
#define ui32_fromPosOverflow 0xFFFFFFFF
|
||||
#define ui32_fromNegOverflow 0
|
||||
#define ui32_fromNaN 0xFFFFFFFF
|
||||
|
||||
Reference in New Issue
Block a user