[patch cygwin]: Replace inline-assembler in string.h by C implementation
Ryan Johnson
ryan.johnson@cs.utoronto.ca
Wed Oct 24 15:07:00 GMT 2012
On 24/10/2012 5:16 AM, Kai Tietz wrote:
> Hello,
>
> this patch replaces the inline-assember used in string.h by C implementation.
> There are three reasons why I want to suggest this. First, the C-code might
> be optimized further by fixed (constant) arguments. Secondly, it is
> architecture
> independent and so we just need to maintain on code-path. And as
> third point, by
> inspecting generated assembly code produced by compiler out of C code
> vs. inline-assembler
> it shows that compiler produces better code. It handles
> jump-threading better, and also
> improves average executed instructions.
Devil's advocate: better-looking code isn't always faster code.
However, I'm surprised that code was inline asm in the first place -- no
special instructions or unusual control flow -- and would not be at all
surprised if the compiler does a better job.
Also, the portability issue is relevant now that cygwin is starting the
move toward 64-bit support.
$0.02
Ryan
More information about the Cygwin-patches
mailing list