This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: Inefficient ia64 system call implementation in glibc
- From: Grant Grundler <iod00d at hp dot com>
- To: "H. J. Lu" <hjl at lucon dot org>
- Cc: GNU C Library <libc-alpha at sources dot redhat dot com>,linux ia64 kernel <linux-ia64 at vger dot kernel dot org>
- Date: Fri, 19 Sep 2003 10:29:41 -0700
- Subject: Re: Inefficient ia64 system call implementation in glibc
- References: <20030919163218.GA21480@lucon.org>
On Fri, Sep 19, 2003 at 09:32:18AM -0700, H. J. Lu wrote:
> The inline ia64 system call assumes all values passed to kernel are
> signed 64bit. It does sign extension if the incoming arg is not signed
> 64bit.
AFAIK, All compilers do this. The HPUX performance team was on a rampage
to replace signed variables with "unsigned" whereever possible just for
this reason.
See example 2 in section "4.5.1 Data Types" (page 16 of 17):
http://devresource.hp.com/STK/partner/PA_PerfGuide_vs2.pdf
BTW, don't dismiss this just because it talks about parisc.
I'd guess +90% of this paper applies to ia64 as well.
grant