Skip to content

Commit

Permalink
sparcv8leon3: add hw-accelerated sqrt implementation
Browse files Browse the repository at this point in the history
  • Loading branch information
lukileczo committed Jan 9, 2024
1 parent 9d138b9 commit ed74176
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions include/arch/sparcv8leon3/arch.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,31 @@
#define __STRCPY
#define __STRNCPY

#if (!_SOFT_FLOAT)
#define __IEEE754_SQRT

static inline double __ieee754_sqrt(double x)
{
/* clang-format off */
__asm__ volatile ("fsqrtd %0, %0" : "+f"(x));
/* clang-format on */

return x;
}


#define __IEEE754_SQRTF
static inline float __ieee754_sqrtf(float x)
{
/* clang-format off */
__asm__ volatile ("fsqrts %0, %0" : "+f"(x));
/* clang-format on */

return x;
}

#endif

#ifdef NOMMU
#define _PAGE_SIZE 0x200
#else
Expand Down

0 comments on commit ed74176

Please sign in to comment.