[Haskell-cafe] Very fast loops. Now!
Lennart Augustsson
lennart at augustsson.net
Sat Feb 10 13:34:46 EST 2007
Yes! That's the code I like.
On Feb 10, 2007, at 17:46 , Felipe Almeida Lessa wrote:
> On 2/10/07, Rafael Almeida <almeidaraf at gmail.com> wrote:
>> While the haskell program took so long, the C program went really
>> faster
>> than the haskell version:
>> $ gcc -O3 -ffast-math -mfpmath=sse -msse2 -std=c99 loop.c -o c_loop
>> $ time ./c_loop
>> 3.333333
>>
>> real 0m0.001s
>> user 0m0.000s
>> sys 0m0.000s
>> $ gcc --version
>> gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
>
> Under gcc (GCC) 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5),
> the following asm code is generated for part of the main function:
>
> mov dword ptr [esp+4], 0aaaaaaabh
> mov dword ptr [esp+8], 400aaaaah
> mov dword ptr [esp], data_804858c
> call wrapper_8049688_80482b4
>
> where data_804858c is "%f\n" and wrapper_8049688_80482b4 is printf.
> Needless to say that the other argument is exactly the double
> 3.3333333333333335. In the OP's words, "newer gcc's will statically
> compute that loop".
>
> --
> Felipe.
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
More information about the Haskell-Cafe
mailing list