[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] AVaRICE and gdb windows port

From: Ebert, Rolf
Subject: RE: [avr-gcc-list] AVaRICE and gdb windows port
Date: Thu, 27 Feb 2003 10:21:43 +0100

Joerg Wunsch wrote:
> "E. Weddington" <address@hidden> wrote:
> >> ByTheWay: Has anybody tried to build the gnu-pascal frontend for
> >> avr-gcc?
> > 
> > AFAIK, no. If you can build it, I'll include it.
> I guess the problem here will be the same as with Ada: building the
> frontend is probably not much of a problem, but you need to add a lot
> of run-time environment for Pascal to make sense.

I think the Pascal RTS (run time system) is easier to achieve than the Ada
one, as the language defined requirements are smaller in Pascal than in Ada.
But then, even the C runtime (aka libc) is not (yet) complete with respect
to the standard.

Ada for example defines a complete tasking behaviour at the language level.
The smallest tasking implementation that I heard of is 200kB, way too big
for any AVR part.

The current strategy is to get the Ada front end working at a level that is
comparable to the C front end, i.e. to write programs that do not rely at
all on the Ada RTS.  The problem with the Ada front end is that has never
been ported to an 8-bit architecture before.  There seem to be a few bugs
related to that fact. Once we get that reasoably stable we shall shift the
focus to the RTS.  

As an example: Ada has a defined sytax for attaching subroutines to
interrupts.  If we use that we would drag in the complete tasking
environment. Therefore we currently use the GNAT equivalent of the gcc
__attribute__ and definition of external linker names for attaching
interrupt routines. This will eventually be integrated in a patched front
end and a largely reduced Ada-RTS.  

Eric already mentioned my AVR-GNAT page at
http://tech.ebert-langer.de/avr-gnat.html, and I have recently moved the
development to a SF project at http://sourceforge.net/projects/avr-ada/.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]