File tree 2 files changed +13
-5
lines changed
2 files changed +13
-5
lines changed Original file line number Diff line number Diff line change 7
7
#include <stdbool.h>
8
8
#include <stdint.h>
9
9
#if RV32_HAS (EXT_F )
10
+ #define float16_t softfloat_float16_t
11
+ #define bfloat16_t softfloat_bfloat16_t
12
+ #define float32_t softfloat_float32_t
13
+ #define float64_t softfloat_float64_t
10
14
#include "softfloat/softfloat.h"
15
+ #undef float16_t
16
+ #undef bfloat16_t
17
+ #undef float32_t
18
+ #undef float64_t
11
19
#endif
12
20
13
21
#ifdef __cplusplus
@@ -93,7 +101,7 @@ typedef uint16_t riscv_half_t;
93
101
typedef uint8_t riscv_byte_t ;
94
102
typedef uint32_t riscv_exception_t ;
95
103
#if RV32_HAS (EXT_F )
96
- typedef float32_t riscv_float_t ;
104
+ typedef softfloat_float32_t riscv_float_t ;
97
105
#endif
98
106
99
107
/* memory read handlers */
Original file line number Diff line number Diff line change @@ -627,7 +627,7 @@ RVOP(fmadds, {
627
627
/* FMSUB.S */
628
628
RVOP (fmsubs , {
629
629
set_rounding_mode (rv );
630
- float32_t tmp = rv -> F [ir -> rs3 ];
630
+ riscv_float_t tmp = rv -> F [ir -> rs3 ];
631
631
tmp .v ^= FMASK_SIGN ;
632
632
rv -> F [ir -> rd ] = f32_mulAdd (rv -> F [ir -> rs1 ], rv -> F [ir -> rs2 ], tmp );
633
633
set_fflag (rv );
@@ -636,7 +636,7 @@ RVOP(fmsubs, {
636
636
/* FNMSUB.S */
637
637
RVOP (fnmsubs , {
638
638
set_rounding_mode (rv );
639
- float32_t tmp = rv -> F [ir -> rs1 ];
639
+ riscv_float_t tmp = rv -> F [ir -> rs1 ];
640
640
tmp .v ^= FMASK_SIGN ;
641
641
rv -> F [ir -> rd ] = f32_mulAdd (tmp , rv -> F [ir -> rs2 ], rv -> F [ir -> rs3 ]);
642
642
set_fflag (rv );
@@ -645,8 +645,8 @@ RVOP(fnmsubs, {
645
645
/* FNMADD.S */
646
646
RVOP (fnmadds , {
647
647
set_rounding_mode (rv );
648
- float32_t tmp1 = rv -> F [ir -> rs1 ];
649
- float32_t tmp2 = rv -> F [ir -> rs3 ];
648
+ riscv_float_t tmp1 = rv -> F [ir -> rs1 ];
649
+ riscv_float_t tmp2 = rv -> F [ir -> rs3 ];
650
650
tmp1 .v ^= FMASK_SIGN ;
651
651
tmp2 .v ^= FMASK_SIGN ;
652
652
rv -> F [ir -> rd ] = f32_mulAdd (tmp1 , rv -> F [ir -> rs2 ], tmp2 );
You can’t perform that action at this time.
0 commit comments