You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Greg Hudson <gh...@MIT.EDU> on 2002/07/17 21:37:51 UTC

Re: Is --enable-utf8 working everywhere

On Wed, 2002-07-17 at 17:33, Ulrich Drepper wrote:
> You will always end up with two calls to 'foo' since the compiler is not
> allowed to eliminate them.  It has no means to determine that 'foo' has
> no side effects and a constant return value.

I'll try once more, having been seemingly ignored last time: What,
precisely, is the problem with calling __error() twice?


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Is --enable-utf8 working everywhere

Posted by Ulrich Drepper <dr...@redhat.com>.
On Wed, 2002-07-17 at 14:37, Greg Hudson wrote:

> I'll try once more, having been seemingly ignored last time: What,
> precisely, is the problem with calling __error() twice?

Speed and much more importantly size.  On x86 the code sequence with
using a variable is 14 bytes shorter and no conditional jump is needed. 
Multiply this with all the places you have to perform "defensive
programming" and you'll end up with a large number.  The error handling
code also effects the non-error case since icache gets polluted with
unnecessary code.

I have never suggested to change every place where errno isn't used up
to this standard (even though this would be good).  But if you get a
patch which does it like that no argument like "that's not how we did it
so far" must outweigh the benefits.

-- 
---------------.                          ,-.   1325 Chesapeake Terrace
Ulrich Drepper  \    ,-------------------'   \  Sunnyvale, CA 94089 USA
Red Hat          `--' drepper at redhat.com   `------------------------

Re: Is --enable-utf8 working everywhere

Posted by Ulrich Drepper <dr...@redhat.com>.
On Wed, 2002-07-17 at 14:37, Greg Hudson wrote:

> I'll try once more, having been seemingly ignored last time: What,
> precisely, is the problem with calling __error() twice?

Speed and much more importantly size.  On x86 the code sequence with
using a variable is 14 bytes shorter and no conditional jump is needed. 
Multiply this with all the places you have to perform "defensive
programming" and you'll end up with a large number.  The error handling
code also effects the non-error case since icache gets polluted with
unnecessary code.

I have never suggested to change every place where errno isn't used up
to this standard (even though this would be good).  But if you get a
patch which does it like that no argument like "that's not how we did it
so far" must outweigh the benefits.

-- 
---------------.                          ,-.   1325 Chesapeake Terrace
Ulrich Drepper  \    ,-------------------'   \  Sunnyvale, CA 94089 USA
Red Hat          `--' drepper at redhat.com   `------------------------