aosp-riscv / platform_bionic

1 stars 5 forks source link

libm/riscv64: add partial hard-float support to libm #6

Closed liushuyu closed 1 year ago

liushuyu commented 2 years ago

Now, riscv64 target correctly supports rint and lrint rounding for float and double (long double is currently unsupported).

A detailed analysis is available at https://liushuyu.xyz/riscv-aosp-bionic-1/. If you can't view this URL, you can navigate to https://github.com/liushuyu/articles/blob/master/content/riscv-aosp-bionic-1.md instead.

A Chinese version is also provided at https://liushuyu.xyz/zh/riscv-aosp-bionic-1/.


# define __get_fcw(cw) __asm__ volatile ("frcsr %0" : "=r" (cw))
# define __set_fcw(cw) __asm__ volatile ("fscsr %z0" : : "r" (cw))

This segment replaces the older naming convention with the newer ones specified in RISC-V ISA standard manual, version 20191213. Removed per request.

unicornx commented 2 years ago

Please separate this PR into two.

liushuyu commented 2 years ago

Rename segment removed from this pull request.

unicornx commented 1 year ago

closed because we have resolved this in other PR.