This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: questions related to GCC


On Tue, Aug 08, 2000 at 03:08:44PM -0700, Desmond Cheung wrote:
> Hi,
> 
> I'm new to this list and I have a few questions
> regarding GCC port.
> 
> I'm developing a GCC port to our own processor. I'm
> wondering if I need binutils to run GCC. 
> 
> Is binutils needed for GCC's configure/install? 
> Or is it needed for run-time library?
> Is there a porting guide for binutils? Where?

Binutils is needed if you need an assembler, linker, or debugger.  If you are
providing all of those, then you don't need to port binutils.  Typically,
within Red Hat (aka the old Cygnus), the time line looks like:

	Add md stuff to cgen in order to generate binutils/sim pieces
	Port binutils (bfd, gas, ld, binutils)
	Write minimal testsuite for gas
	Port simulator
	Write runtime testsuite for simulator
	Design ABI for the target
	Port GCC
	Build libraries, including simulator stub support
	Run GCC testsuites, iterate until acceptable # of failures
	Port GDB
	Run GDB testsuites, iterate until acceptable # of failures
	Write GDB stub/cygmon support
	Run GCC testsuites on the real hardware, iterate until done
	Run more elaborate testsuites (Plum-Hall, Perenneial, etc.).
	Send out alpha/beta version of tools
	Fix bugs as needed, adding new tests to testuite as needed
	Work on chip specific optimizations, etc.
	Pass GO, collect money, start next port

You can do the binutils/sim ports without cgen, but it does save some amount of
time.

You generally need gas/ld working before you can begin work on the simulator.
If you already have working silicon, you can skip the simulator step, but we
find it is useful to have a simulator for all embedded targets, particularly if
you need to debug compiler output before the debugger comes on line.  I've
debugged at least 3 ports I wrote from scratch using only simulator traces for
some period of time before gdb was available.  It is real fun^H^H^Hchallenging
debugging printf, particularly for ports with simulated floating point under
such circumstances :-)

-- 
Michael Meissner, Red Hat, Inc.
PMB 198, 174 Littleton Road #3, Westford, Massachusetts 01886, USA
Work:	  meissner@redhat.com		phone: +1 978-486-9304
Non-work: meissner@spectacle-pond.org	fax:   +1 978-692-4482

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]