emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Windows 64 port


From: Fabrice Popineau
Subject: Re: Windows 64 port
Date: Thu, 1 Mar 2012 21:05:51 +0100

>     Here is a more-detailed review of the latest patch you sent.
>
>     > -      int i = 0, aligned = (intptr_t) ABLOCKS_BUSY (abase);
>     > +      int i = 0, aligned = (ABLOCKS_BUSY (abase) != NULL);
>
>     Not needed for Windows 64.  The change slows the code down a bit, and
>
>
> Prove it.

I compiled it both ways (x86-64 GCC 4.6.2), and the "!= NULL" version
has an extra "cmpl" instruction, so it is indeed a bit fatter.

 
Just for fun :

version with != NULL :

; Line 1156
xor edx, edx
test rax, rax
lea rcx, OFFSET FLAT:free_ablock
setne dl
add rdx, 15
shl rdx, 10
add rdx, rdi

version without it :

; Line 1156
xor edx, edx
lea rcx, OFFSET FLAT:free_ablock
cmp DWORD PTR [rdi+1016], edx
setne dl
add rdx, 15
shl rdx, 10
add rdx, rdi

cmp on one side, test on the other side.

Fabrice

reply via email to

[Prev in Thread] Current Thread [Next in Thread]