questions related to GCC
Michael Meissner
meissner@cygnus.com
Tue Aug 8 15:41:00 GMT 2000
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
More information about the Binutils
mailing list