[PATCH] V13 of experiment for a simpler path encoding for hashed paths (for "fncache2")

Isaac Jurado diptongo at gmail.com
Sat Sep 29 12:15:08 CDT 2012


On Sat, Sep 29, 2012 at 7:00 PM, Adrian Buehlmann <adrian at cadifra.com> wrote:
>> I pasted the (hopefully) relevant part here:
>> http://pastebin.com/Pjr4N9h3
>
> I'm surprised to see that memcpy is *called*, not inlined. memcpy should
> be an intrinsic and the command line options for the compiler (cl.exe)
> are set correctly (/Ox which implies /Oi [1]).
>
> The compiler is the one from the SDK
> http://www.microsoft.com/en-us/download/details.aspx?id=3138
>
> I was under the impression that it's the optimzing one. At least it
> inlines functions, e.g. our own memcopy function appears to get inlined
> as expected, but not the call to memcpy inside it.

The calls to memcpy are only inlined when both the src and length are
constant at compile time; which is not the case in that code.  At
least, that's how it works with GCC.  I believe there cannot be much
more magic about that, so probably other compilers behave the same.

Cheers.

-- 
Isaac Jurado

"The noblest pleasure is the joy of understanding"
Leonardo da Vinci


More information about the Mercurial-devel mailing list