Some basic questions on the invert_limb code

Anil Singhar anil.singhar at
Tue Nov 19 10:24:21 UTC 2013

Hi Torbjorn,

Thanks for your reply.

Yes, I started off with 5.1.3 code and have already spent more than a month
now coding the MPN functions in aarch64 assembly along the lines of ARM. I
did so assuming the advisory mentioned in the gmp manual that these
functions are generally implemented in assembly for speed. Sorry, I didn't
understand the full scope your first reply to my query in October. I got
stuck with invert_limb since it was bit non-trivial to implement and hence
decided to ask.

Anyway thanks for clarifying that you don't have any plans for further
improvements unless the hardware is available. I will inform Linaro

Best Regards,

On 19 November 2013 15:45, Torbjorn Granlund <tg at> wrote:

> Anil Singhar <anil.singhar at> writes:
>   Thanks for replying.
>   So what I understand is this is currently implemented with the function
>   "udiv_qrnnd_preinv". I got confused because for all other architectures
> such as
>   x86_64, ARM, etc. I could see a folder under mpn which typically
> contained a
>   file "invert_limb.asm" among others.
> Did you follow my advice to look the the repository code?  From your
> comment, it seems you didn't.
>   Do you have any plans to have any of these functions / code re-written
> in arm64
>   assembly..?  I am asking because I was tasked to do so at Linaro. If
> not, I
>   will inform my team accordingly and move on to different tasks.
> We don't have any plans of any further improvements.  We tend to
> optimise for processors to which we have access, and neither A53 nor A57
> is currenty in our test farm.
> Before you decide to start any arm64 GMP developments, I implore you to
> look at the current repo code.
> --
> Torbjörn

More information about the gmp-discuss mailing list