Date: 09 Apr 2001 13:16:42 +0100 From: Rolf Neugebauer <neugebar@dcs.gla.ac.uk> To: freebsd-alpha@FreeBSD.ORG Subject: Re: 64bits mixups (Was: Re: Vinum status) Message-ID: <ysqn19q2rpx.fsf@therese.dcs.gla.ac.uk> In-Reply-To: Andrew Gallatin's message of "Sun, 8 Apr 2001 15:50:38 -0400 (EDT)" References: <20010408030913.213D1380A@overcee.netplex.com.au> <3AD05711.7000002@videotron.ca> <15056.35511.810402.576637@grasshopper.cs.duke.edu> <ysqr8z32oak.fsf@therese.dcs.gla.ac.uk> <15056.49422.725576.853296@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Andrew Gallatin <gallatin@cs.duke.edu> writes: > Rolf Neugebauer writes: > > > > taso actually is a linker option, ie independent of the compiler. > > Ah, yes. I was actually thinking of this (Tru64) option: > > -xtaso_short > Directs the compiler to allocate 32-bit pointers by default. You can > still use 64-bit pointers, but only by the use of pragmas. The > -xtaso_short option also implies -xtaso; that is, -xtaso_short also > causes the compiler to respect the pointer_size pragmas. > > The use of the -xtaso_short option can cause conflicts between the > compiler's assumptions about pointer sizes and data layouts and the > default values that were in effect when the system libraries were > created. See protect_headers_setup(8) for details on how to avoid this > conflict. > > > > There is also a version of the GNU ld which implements this flag. IIRC > > this is not (yet?) part of the standard binutils distro, but is in a > > separate Linux branch. I once installed it on an Alpha/Linux box but > > can't remember were I downloaded it from :( > > Oh, That's interesting. I thought the Linux people were fundamentally > opposed to this. I am not sure about this. Folks on the linux-axp certainly seam to appreciate it. Someone in our department briefly used it feature and said it worked fine for one of the apps he needed it for. The Linux binutils are on any kernel.org mirror under pub/linux/devel/binutils. The version I just checked is 2.11.90.0.4 and ld/ChangeLog contains the following comment: 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru> * emulparams/elf64alpha.sh: Implement "-taso" emulation specific option to fit 64-bit executable in the lower 31-bit address range. This is done by changing start address of .interp (the very first section of executable) and then setting EF_ALPHA_32BIT elf header flag. Ivan explained in a recent posting http://www.alphalinux.org/archives/axp-list/December2000/0034.shtml that Richard Henderson came up with the initial idea and he implemented it. I vaguely recall that Richard posted this idea to the same list but I couldn't find his message. In the same post Ivan also says that the change made it into the official 2.10 binutils but I couldn't find taso being referenced in the 2.10.1 source anywhere. Rolf To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ysqn19q2rpx.fsf>