[llvm-dev] Clang for the PlayStation 2

Dan Ravensloft via llvm-dev llvm-dev at lists.llvm.org
Thu Sep 6 09:55:45 PDT 2018


On Thu, 6 Sep 2018, 16:31 Tim Northover, <t.p.northover at gmail.com> wrote:

> > The PS2, for what it's worth, only has an i32 -> f32 instruction, so I
> think there's an impedance mismatch somewhere.
>
> This is also a fairly common situation. If the operation can be
> emulated with a reasonably small number of native instructions you can
> often get LLVM to do that.
>
> In this case it would probably be a libcall though because it's quite
> complex. LLVM would generate a call to __floatdisf, which will be
> provided by compiler-rt (there are C implementations for all kinds of
> floating-point operations there).
>
> You should see the same thing if you compile a function doing that
> conversion with GCC.
>
> Cheers.
>
> Tim.
>

So I was rereading this; do you think the lowering function should instead
emit a library call instead, then?

If so, would you mind pointing me to a function which performs this, or
otherwise give a high-level description of how this is done?

>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180906/7642f73c/attachment.html>


More information about the llvm-dev mailing list