[llvm-bugs] [Bug 35738] New: [PowerPC] Software 128-bit floating point support is unimplemented
llvm-bugs at lists.llvm.org
Sun Dec 24 08:53:37 PST 2017
Bug ID: 35738
Summary: [PowerPC] Software 128-bit floating point support is
Assignee: unassignedbugs at nondot.org
Reporter: vit9696 at avp.su
CC: llvm-bugs at lists.llvm.org
Created attachment 19601
ppc32 long double format from gcc repo
Starting with the merged https://reviews.llvm.org/D15811 LLVM gained support
for software long double support on 32-bit PowerPC targets.
However, for the time being there is still no compiler-rt support for the
routines llvm emits. As a result, one cannot use software floating point
support until the following builtins are implemented.
This function set implements long double comparison similarly to float/double
int __gcc_qeq (double, double, double, double); // __eqdf2
int __gcc_qne (double, double, double, double); // __nedf2
int __gcc_qge (double, double, double, double); // __gedf2
int __gcc_qle (double, double, double, double); // __ledf2
This function set allows to convert between long double and other types:
long double __gcc_stoq (float);
long double __gcc_dtoq (double);
float __gcc_qtos (double, double);
double __gcc_qtod (double, double);
unsigned int __gcc_qtou (double, double);
long double __gcc_itoq (int);
long double __gcc_utoq (unsigned int);
GCC has a fairly decent format description, which I attached to the message.
The implementation should be very small, but due to licensing issues I do not
think libgcc code could simply be taken. The original code appears to be
contributed by Apple under GPLv2.
Could anybody submit a patch following this description or suggest the actions
to be made?
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-bugs