Basecase assembly optimisation project

Ondřej Bílka neleai at
Wed Oct 2 18:40:14 CEST 2013

On Thu, Sep 26, 2013 at 09:20:29PM +0200, Torbjorn Granlund wrote:
> For the last few months, I have been working on writing and rewriting
> basecase code for X64-64 processors.  The result is now in the
> mainline GMP repo.
I am writing a tool that might be useful, a simple optimizer of assembly
routines. You need to write a benchmark that measures performance and
prints elapsed time and assembly file. Currently it has two optimization
patterns, first is enclosing block of code without control flow
instructions in


and evolver will try different schedulings to find optimal one.

Second one is when you choose between different instructions, where you 
write alternatives by following form.

cmp $1, %rax #| cmp $1, %al

A sequences can be done in following way

cmp $1, %rax; ja .foo #| test %eax, %eax; jne .foo

sounds interesting?

More information about the gmp-devel mailing list