From owner-freebsd-current Tue May 26 13:04:33 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA10028 for freebsd-current-outgoing; Tue, 26 May 1998 13:04:33 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from spinner.netplex.com.au (spinner.netplex.com.au [202.12.86.3]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA09977; Tue, 26 May 1998 13:04:25 -0700 (PDT) (envelope-from peter@netplex.com.au) Received: from spinner.netplex.com.au (localhost [127.0.0.1]) by spinner.netplex.com.au (8.8.8/8.8.8/Spinner) with ESMTP id EAA28582; Wed, 27 May 1998 04:04:17 +0800 (WST) (envelope-from peter@spinner.netplex.com.au) Message-Id: <199805262004.EAA28582@spinner.netplex.com.au> X-Mailer: exmh version 2.0.2 2/24/98 To: sos@FreeBSD.ORG cc: eivind@yes.no (Eivind Eklund), nate@mt.sri.com, current@FreeBSD.ORG Subject: Re: Switching default compiler (was Re: Fix for undefined "__error" and discussion of shared object versioning) In-reply-to: Your message of "Tue, 26 May 1998 21:11:48 +0200." <199805261911.VAA23526@sos.freebsd.dk> Content-Transfer-Encoding: quoted-printable Date: Wed, 27 May 1998 04:04:17 +0800 From: Peter Wemm Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG S ren Schmidt wrote: > In reply to Eivind Eklund who wrote: > > On Tue, May 26, 1998 at 12:40:15PM -0600, Nate Williams wrote: > > > Eivind Eklund writes: > > > > On Tue, May 26, 1998 at 11:50:53AM -0600, Nate Williams wrote: > > > > > > Personally I'd prefer to use TenDRA if at all possible. It s= eems t o > > > > > > be much better than GCC when you look at error control etc. > > > > > = > > > > > Can it do shlibs? > > > > = > > > > I don't know - is there much special it would have to do? > > > = > > > Generating PIC code is a big prerequisite, so the assembly it gener= ates > > > must be capable of being relocated. I'm not 100% sure if this is a= > > > function of the compiler, but given that GCC1 couldn't do it and GC= C2 > > > could, I suspect it's a function of the compiler. > > = > > It can do PIC for ELF on Linux. I suspect this means that we can mak= e > > it do PIC for ELF on FreeBSD, too. I don't know if making it do PIC > > for a.out would be significantly different. > = > No, its the same thing.... Almost the same thing, but there are differences.. ELF supports (and requires) PIC jumps, our a.out doesn't. (jumps and calls have an absolut= e address, branches do not. Both require relocation for PIC to work). Hav= e a look at the cerror stuff in libc. I don't think any of the compilers generate code that will run into this though. So yes, at compiler-> assembler level, a.out and ELF have identical PIC output (this was the ea= sy part in dual-format gcc :-). Cheers, -Peter -- Peter Wemm Netplex Consulting To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message