[racket-dev] assembler code within gmplonglong.h

2014-01-11 Thread Juan Francisco Cantero Hurtado
Hi. The last days I've been reading the code within gmplonglong.h and I've a question/request. Why there is assembler code? Why not just to remove the assembler code and to use the C fallback for every CPU?. These days the racket developers (and users) mostly only test their code on amd64,

Re: [racket-dev] assembler code within gmplonglong.h

2014-01-11 Thread Matthew Flatt
On the program (time (for/fold ([v (for/fold ([v 1]) ([i (in-range 1)]) (* (add1 i) v))]) ([i (in-range 1)]) (/ v (add1 i when compiling for 32-bit x86 with the latest XCode's clang and using a 2013 MacBook Pro running Mavericks, I get a 50% speed

Re: [racket-dev] assembler code within gmplonglong.h

2014-01-11 Thread Juan Francisco Cantero Hurtado
I will give a try to your example. I disabled the assembler code in the OpenBSD port because with your last patch to gmplonglong and clang, the 5.3.6 math lib was broken on i386. We will have the CVS lock soon and I want be very careful now. I used initially clang to fix a crash in udp.rktl,