This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [Ada] Anyone else run ACATS on ARM?
Laurent GUERBY writes:
> On Sat, 2009-08-22 at 23:33 +0200, Laurent GUERBY wrote:
> > On Mon, 2009-08-17 at 12:00 +0200, Mikael Pettersson wrote:
> > > On Wed, 12 Aug 2009 23:08:00 +0200, Matthias Klose <doko@debian.org> wrote:
> > > >On 12.08.2009 23:07, Martin Guy wrote:
> > > >> On 8/12/09, Joel Sherrill<joel.sherrill@oarcorp.com> wrote:
> > > >>> So any ACATS results from any other ARM target would be
> > > >>> appreciated.
> > > >>
> > > >> I looked into gnat-arm for the new Debian port and the conclusion was
> > > >> that it has never been bootstrapped onto ARM. The closest I have seen
> > > >> is Adacore's GNATPro x86->xscale cross-compiler hosted on Windows and
> > > >> targetting Nucleus OS (gak!)
> > > >>
> > > >> The community feeling was that it would "just go" given a prodigal
> > > >> burst of cross-compiling, but I never got achieved sufficiently high
> > > >> blood pressure to try it...
> > > >
> > > >is there any arm-linx-gnueabi gnat binary that could be used to bootstrap an
> > > >initial gnat-4.4 package for debian?
> > > >
> > > > Matthias
> > >
> > > Yes, see <http://user.it.uu.se/~mikpe/linux/arm-eabi-ada/>.
> >
> > Nice work!
> >
> > Looks like Ada exception propagation (setjmp/longjmp based) is broken at
> > least in some cases (see below), that might explain the high number of
> > ACATS failure.
> >
> > My understanding is that
> >
> > EH_MECHANISM=-gcc
> >
> > is not correct for sjlj exceptions so I removed this line from the patch
> > and I'm currently testing with trunk.
>
> With this change plus the gcc/ada/gcc-interface/targtyps.c one
> I get very good native arm ACATS and gnat.dg results:
Thanks Laurent. I've extracted an incremental diff for the Makefile
and targtyps.c changes and applied it to my gcc-4.4.1 version. When
it has finished its rebuild I'll see if this lets me eliminate the
xsinfo.adb exception handling workaround.
> It would be nice to have a ZCX port but so far the sjlj exceptions
> based port works fine.
See e.g. <http://gcc.gnu.org/ml/gcc-patches/2009-02/msg00509.html>.
Apparently ZCX on ARM/EABI will require a new personality routine.
/Mikael