[sw/example/floating_point_test] minor optimization of intrinsic library

This commit is contained in:
stnolting 2021-03-28 21:21:35 +02:00
parent 892a7fd2fc
commit ec25d50e75

View file

@ -863,7 +863,7 @@ inline float __attribute__ ((always_inline)) riscv_intrinsic_fnmadds(float rs1,
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fadds(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fadds(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -880,7 +880,7 @@ float riscv_emulate_fadds(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fsubs(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fsubs(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -897,7 +897,7 @@ float riscv_emulate_fsubs(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fmuls(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fmuls(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -914,7 +914,7 @@ float riscv_emulate_fmuls(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fmins(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fmins(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -955,7 +955,7 @@ float riscv_emulate_fmins(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fmaxs(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fmaxs(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -996,7 +996,7 @@ float riscv_emulate_fmaxs(float rs1, float rs2) {
* @param[in] rs1 Source operand 1.
* @return Result.
**************************************************************************/
uint32_t riscv_emulate_fcvt_wus(float rs1) {
uint32_t __attribute__ ((noinline)) riscv_emulate_fcvt_wus(float rs1) {
float opa = subnormal_flush(rs1);
@ -1010,7 +1010,7 @@ uint32_t riscv_emulate_fcvt_wus(float rs1) {
* @param[in] rs1 Source operand 1.
* @return Result.
**************************************************************************/
int32_t riscv_emulate_fcvt_ws(float rs1) {
int32_t __attribute__ ((noinline)) riscv_emulate_fcvt_ws(float rs1) {
float opa = subnormal_flush(rs1);
@ -1024,7 +1024,7 @@ int32_t riscv_emulate_fcvt_ws(float rs1) {
* @param[in] rs1 Source operand 1.
* @return Result.
**************************************************************************/
float riscv_emulate_fcvt_swu(uint32_t rs1) {
float __attribute__ ((noinline)) riscv_emulate_fcvt_swu(uint32_t rs1) {
return (float)rs1;
}
@ -1036,7 +1036,7 @@ float riscv_emulate_fcvt_swu(uint32_t rs1) {
* @param[in] rs1 Source operand 1.
* @return Result.
**************************************************************************/
float riscv_emulate_fcvt_sw(int32_t rs1) {
float __attribute__ ((noinline)) riscv_emulate_fcvt_sw(int32_t rs1) {
return (float)rs1;
}
@ -1049,7 +1049,7 @@ float riscv_emulate_fcvt_sw(int32_t rs1) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
uint32_t riscv_emulate_feqs(float rs1, float rs2) {
uint32_t __attribute__ ((noinline)) riscv_emulate_feqs(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1077,7 +1077,7 @@ uint32_t riscv_emulate_feqs(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
uint32_t riscv_emulate_flts(float rs1, float rs2) {
uint32_t __attribute__ ((noinline)) riscv_emulate_flts(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1102,7 +1102,7 @@ uint32_t riscv_emulate_flts(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
uint32_t riscv_emulate_fles(float rs1, float rs2) {
uint32_t __attribute__ ((noinline)) riscv_emulate_fles(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1127,7 +1127,7 @@ uint32_t riscv_emulate_fles(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fsgnjs(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fsgnjs(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1164,7 +1164,7 @@ float riscv_emulate_fsgnjs(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fsgnjns(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fsgnjns(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1201,7 +1201,7 @@ float riscv_emulate_fsgnjns(float rs1, float rs2) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fsgnjxs(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fsgnjxs(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1237,7 +1237,7 @@ float riscv_emulate_fsgnjxs(float rs1, float rs2) {
* @param[in] rs1 Source operand 1.
* @return Result.
**************************************************************************/
uint32_t riscv_emulate_fclasss(float rs1) {
uint32_t __attribute__ ((noinline)) riscv_emulate_fclasss(float rs1) {
float opa = subnormal_flush(rs1);
@ -1309,7 +1309,7 @@ uint32_t riscv_emulate_fclasss(float rs1) {
* @param[in] rs2 Source operand 2.
* @return Result.
**************************************************************************/
float riscv_emulate_fdivs(float rs1, float rs2) {
float __attribute__ ((noinline)) riscv_emulate_fdivs(float rs1, float rs2) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1325,7 +1325,7 @@ float riscv_emulate_fdivs(float rs1, float rs2) {
* @param[in] rs1 Source operand 1.
* @return Result.
**************************************************************************/
float riscv_emulate_fsqrts(float rs1) {
float __attribute__ ((noinline)) riscv_emulate_fsqrts(float rs1) {
float opa = subnormal_flush(rs1);
@ -1346,7 +1346,7 @@ float riscv_emulate_fsqrts(float rs1) {
* @param[in] rs3 Source operand 3
* @return Result.
**************************************************************************/
float riscv_emulate_fmadds(float rs1, float rs2, float rs3) {
float __attribute__ ((noinline)) riscv_emulate_fmadds(float rs1, float rs2, float rs3) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1365,7 +1365,7 @@ float riscv_emulate_fmadds(float rs1, float rs2, float rs3) {
* @param[in] rs3 Source operand 3
* @return Result.
**************************************************************************/
float riscv_emulate_fmsubs(float rs1, float rs2, float rs3) {
float __attribute__ ((noinline)) riscv_emulate_fmsubs(float rs1, float rs2, float rs3) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1384,7 +1384,7 @@ float riscv_emulate_fmsubs(float rs1, float rs2, float rs3) {
* @param[in] rs3 Source operand 3
* @return Result.
**************************************************************************/
float riscv_emulate_fnmsubs(float rs1, float rs2, float rs3) {
float __attribute__ ((noinline)) riscv_emulate_fnmsubs(float rs1, float rs2, float rs3) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);
@ -1403,7 +1403,7 @@ float riscv_emulate_fnmsubs(float rs1, float rs2, float rs3) {
* @param[in] rs3 Source operand 3
* @return Result.
**************************************************************************/
float riscv_emulate_fnmadds(float rs1, float rs2, float rs3) {
float __attribute__ ((noinline)) riscv_emulate_fnmadds(float rs1, float rs2, float rs3) {
float opa = subnormal_flush(rs1);
float opb = subnormal_flush(rs2);