Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Dec 2002 13:51:38 -0800
From:      Marcel Moolenaar <marcel@xcllnt.net>
To:        Peter Wemm <peter@wemm.org>
Cc:        re-builders@FreeBSD.org
Subject:   Re: ia64 RC1 finished
Message-ID:  <20021207215138.GA1289@athlon.pn.xcllnt.net>
In-Reply-To: <20021207191101.4E01D2A7EA@canning.wemm.org>
References:  <20021207171031.GA3576@dhcp01.pn.xcllnt.net> <20021207191101.4E01D2A7EA@canning.wemm.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Dec 07, 2002 at 11:11:01AM -0800, Peter Wemm wrote:
> 
> None of our other 64 bit platforms do this.  It seems that on sparc64 and
> alpha, the called function does any truncation and otherwise returns in a 64
> bit register.  On ia64 though, the calling function does the truncation and
> extension.  eg: it takes the "int" result from malloc and zeroes out
> bits 32-63 to "extend" it to a 64 bit pointer.

... and this invariably turns a perfectly valid region 2 or 3 address
into a perfectly invalid region 0 address... :-(

> There are lots and lots and lots of ports that simply do the cast like in
> the example above rather than try and get the includes right.  I suspect
> this is going to hurt ia64 a lot more more than time_t stuff. :-(

It's not to late to abandon this ship and work on AMD x86_64
instead :-/

I don't think that WARNS=berserk will help. It will only result in
massive compilation failures and an unimaginable huge amount of
patching. Just too much work.

I'll think about this some more. I see 4 possible solutions:

1. Who gives a fsck. It sorts itself out in the end (for some
   definition of "end")..
2. Fix the ports we really need..
3. Have the kernel take corrective actions..
4. Create single region 0 address spaces only..

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ia64" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021207215138.GA1289>