[compiler-rt] [builtins] Avoid using long double in FreeBSD standalone environment (PR #76175)

Dimitry Andric via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 1 09:48:18 PST 2024


DimitryAndric wrote:

@arichardson the problem, at least on FreeBSD, is that we've been building `xf_float` based primitives for platforms that strictly do not support 80 bit long double, such as aarch64, arm, powerpc64, and riscv.  (See https://github.com/freebsd/freebsd-src/blob/main/lib/libcompiler_rt/Makefile.inc, specifically the initial list for all arches, which includes `divtc3.c` and `divxc3.c`.) I could remove these from the list for any architectures that do not support 80 bit long doubles, but then I would be breaking backwards compat.

I.e. in older versions of compiler-rt, functions like `divtc3` were just defined with `long double` in their parameter lists. I think I need to have an alternative where `xf_float` is a plain `long double`...

https://github.com/llvm/llvm-project/pull/76175


More information about the llvm-commits mailing list