[LLVMdev] Support for Soft-float

Eric Cheng eccheng at stanford.edu
Tue Sep 23 23:02:12 PDT 2014


Hi,

I'm trying to generate some SPARCv8 assembly for a sparc target that
doesn't have an FPU. I'm unable to get the flow to generate calls to a
soft-float library. Since I wasn't able to find a definitive answer, I was
hoping someone might be able to offer some pointers or shed some light.

Running "clang -c -emit-llvm -msoft-float test.c -o test.bc" doesn't
generate IR with soft-float library calls (perhaps understandably) - only
hard float instructions. I would expect the frontend to at least be able to
generate the library calls even though I'm not asking it to link to any
library yet.

Running "llc -march=sparc -soft-float test.bc -o test.s" next still does
not replace the hard float instructions with soft-float calls. Is this a
known issue, am I doing something wrong, etc.?

Just as a test, I see that running "llc -march=arm -soft-float test.bc -o
test.s" will indeed generate the appropriate soft-float library call. I
checked using mips, x86, ppc32, etc. and it seems that only the arm target
actually generates the soft-float call.

Is there a reason many of the backend targets will not generate the library
call? Is there some way to fix this?

Thanks,
Eric
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140923/cabff5cd/attachment.html>


More information about the llvm-dev mailing list