[LLVMdev] About inlining the modulo function in ARM architecture

Alex S alexmountain13 at gmail.com
Mon Nov 10 11:30:23 PST 2014


Hi Tim,

Thanks for your reply.

On Mon, Nov 10, 2014 at 1:26 PM, Tim Northover <t.p.northover at gmail.com>
wrote:

> Hi Ray,
>
> On 10 November 2014 10:13, Alex S <alexmountain13 at gmail.com> wrote:
> > Sorry for bothering those not interested. I found that ARM backend will
> > insert a modulo function
> > (like __modsi3) instead of the modulo instruction. I wonder how we can
> > inline the modulo function
> > into the program. Is there any OPTION we can use in the opt or llc?
>
> It depends on whether the CPU actually supports integer division.
> Surprisingly modern CPUs don't (the Cortex-A9 for example), and LLVM
> doesn't synthesise an entire divide loop.
>


I know this may degrade the performance. I wonder whether there is any easy
way to inline these functions into the callsite? Thanks again!




>
> Oddly, it also seems to call the library at -O0, because that's what
> the FastISel decides to do. That strikes me as a bug, or at least an
> oddity.
>
> Cheers.
>
> Tim.
>

Ray
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141110/9b1a02a4/attachment.html>


More information about the llvm-dev mailing list