From owner-freebsd-current  Tue May 26 13:04:33 1998
Return-Path: <owner-freebsd-current@FreeBSD.ORG>
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 <peter@netplex.com.au>
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 <peter@netplex.com.au>   Netplex Consulting



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