comp.lang.ada
 help / color / mirror / Atom feed
From: kenner@lab.ultra.nyu.edu (Richard Kenner)
Subject: Re: Writing a Mac Ada compiler
Date: 9 Mar 1995 10:46:03 GMT
Date: 1995-03-09T10:46:03+00:00	[thread overview]
Message-ID: <3jmm9b$iav@cmcl2.NYU.EDU> (raw)
In-Reply-To: 3jlibk$p5g@gnat.cs.nyu.edu

In article <3jlibk$p5g@gnat.cs.nyu.edu> dewar@cs.nyu.edu (Robert Dewar) writes:
>As for porting GCC, this is a task that is probably about one twentieth the
>effort of writing a compiler, but that too expects you to have significant
>experience with GCC and the technology. If you are starting from scratch
>and know little about compilers and processor architectures, you have a lot
>to learn before you can succeed in such a port.

Though true, this is somewhat confusing in the present context.  It
is indeed the case that doing a port to a new processor architecture
requires considerable knowlege about GCC.  Theoretically, you can do
a port with just the information in "Using and Porting GCC" but in
practice you need to know more in order to debug and refine the port.

I did the RS/6000 and Alpha ports in about one month each, but I spent
many years learning GCC to get that proficient in porting it.  If you
are extremely knowlegable about compilers and architecture but know
nothing about GCC, you can probably get far enough along the learning
curve to do a port in about six months, but you have a high
probability of getting stuck somewhere in the debugging stage.

However, in the case at hand, we are NOT talking about doing a GCC
port to a new architecture since GCC has long been ported to the m68k
and is also supported on the PowerPC.

Here, the major concerns are operating system issues.  If the calling
sequence used is the same as some other system (a big "if"), you could
do the port with essentially no knowlege of GCC internals (if you need
calling sequence changes, the amount you'd have to learn depends on
the nature of the changes).

However, what you do have to be very familiar with is System-7 and,
even more importantly, the rest of the toolchain: the assembler and
linker.

>After all, if it were easy to get a GCC port for the MAC, it would have
>been done some time ago. Note that getting a GNAT port once a GCC port is
>a MUCH simpler task, probably no more than a couple of person months at most
>to get a first attempt.

To clarify, this talks about porting to a "foreign" OS like System-7.
If you want to port GNAT to a Unix-like (or OS/2-like) system on which
GCC is already running, the major task is one of recompilation, which,
if you are familiar with basic cross-compilation strategies, can be
done in a couple of days, barring surprises (and not worrying about
tasking).  However, there are some OS dependencies in GNAT beyond that
of GCC, so doing the first GNAT port to a new OS can indeed take
significantly longer than a few days.



  reply	other threads:[~1995-03-09 10:46 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1995-03-06 22:09 Writing a Mac Ada compiler Mike White
1995-03-07  2:04 ` Arthur Evans Jr
1995-03-07 18:32   ` Mike White
1995-03-07 21:31     ` Mark Johannes
1995-03-08 17:39       ` Mike White
1995-03-09  8:16         ` RonaldS60
1995-03-12 23:51           ` Vladimir Vukicevic
1995-03-17 23:04           ` Need complex Math Package James M. (Mike) Hill 575-6632 msgid MHIL
1995-03-19  0:24             ` Henry Baker
1995-03-19 15:25             ` Robert Dewar
1995-03-11 19:45         ` Writing a Mac Ada compiler Gary McKee
1995-03-12 21:13           ` Mike White
1995-03-09  0:32     ` Robert Dewar
1995-03-09 10:46       ` Richard Kenner [this message]
1995-03-09 13:42       ` Arthur Evans Jr
1995-03-10  6:25         ` Vladimir Vukicevic
1995-03-10 14:17           ` Arthur Evans Jr
1995-03-10 15:30             ` Richard Kenner
1995-03-09 19:25       ` Mike White
1995-03-07 18:37   ` David Weller
1995-03-07 13:46 ` Theodore E. Dennison
1995-03-07 17:17   ` Laurent Gasser
1995-03-08 15:57   ` Robert Dewar
1995-03-08  1:08 ` Robert Dewar
1995-03-08  2:09 ` Tucker Taft
1995-03-10  4:05 ` Michael Feldman
1995-03-13  4:55   ` Fraser Wilson
1995-03-15 15:19     ` Theodore Dennison
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox