Re: [RFC] Add aarch64 support for ada

2014-04-28 Thread Richard Henderson
On 04/28/2014 08:00 AM, Eric Botcazou wrote: > You can re-apply the gcc-interface/Makefile.in hunk > (I reverted it as well) but you first need to adjust it to the mainline. Done, after re-bootstrapping on aarch64 Just to Be Sure. r~

Re: [RFC] Add aarch64 support for ada

2014-04-28 Thread Eric Botcazou
> Bootstrap and test succeeded, thanks. Thanks, applied as such. You can re-apply the gcc-interface/Makefile.in hunk (I reverted it as well) but you first need to adjust it to the mainline. * exp_dbug.ads (Get_External_Name): Add 'False' default to Has_Suffix, add 'Suffix' para

Re: [RFC] Add aarch64 support for ada

2014-04-24 Thread Richard Henderson
On 04/23/2014 01:37 PM, Eric Botcazou wrote: >> But it breaks on IA-64 for the same reason as on Aarch64 so we'll need to >> > find something else. > Tentative revised patch attached. Can you give it a try when you have some > time? There is a rationale based on my understanding in types.h. TIA

Re: [RFC] Add aarch64 support for ada

2014-04-23 Thread Eric Botcazou
> But it breaks on IA-64 for the same reason as on Aarch64 so we'll need to > find something else. Tentative revised patch attached. Can you give it a try when you have some time? There is a rationale based on my understanding in types.h. TIA. -- Eric BotcazouIndex: comperr.adb =

Re: [RFC] Add aarch64 support for ada

2014-04-23 Thread Eric Botcazou
> OK, I have installed a variant of the patch (it should not change anything). But it breaks on IA-64 for the same reason as on Aarch64 so we'll need to find something else. -- Eric Botcazou

Re: [RFC] Add aarch64 support for ada

2014-04-23 Thread Eric Botcazou
> diff --git a/gcc/ada/gcc-interface/Makefile.in > b/gcc/ada/gcc-interface/Makefile.in index dc5e912..302d9a3 100644 > --- a/gcc/ada/gcc-interface/Makefile.in > +++ b/gcc/ada/gcc-interface/Makefile.in > @@ -2123,6 +2123,44 @@ ifeq ($(strip $(filter-out alpha% linux%,$(arch) > $(osys))),) LIBRARY_VE

Re: [RFC] Add aarch64 support for ada

2014-04-22 Thread Eric Botcazou
> Yes, this bootstrapped. OK, I have installed a variant of the patch (it should not change anything). Thanks for working on this. -- Eric Botcazou

Re: [RFC] Add aarch64 support for ada

2014-04-22 Thread Eric Botcazou
> How about this? I added a check vs MINSIGSTKSZ just in case, and updated > the commentary a bit. While 16K is 2*SIGSTKSIZE for i686, it certainly > isn't for powerpc64. But since things are working as-is I thought the > revision is clearer. Fine with me, thanks. -- Eric Botcazou

Re: [RFC] Add aarch64 support for ada

2014-04-18 Thread Richard Henderson
On 04/16/2014 12:55 AM, Eric Botcazou wrote: >> Similarly with the HAVE_GNAT_ALTERNATE_STACK stuff. There aren't any >> linux hosts that don't support sigaltstack, so why is this >> conditionalized? > > Hum, I didn't know that Android also used the alternate stack... OK, let's > use it uncondit

Re: [RFC] Add aarch64 support for ada

2014-04-17 Thread Richard Henderson
On 04/17/2014 08:56 AM, Eric Botcazou wrote: > I presume that the attached kludge is sufficient to make it work? > > > * fe.h (Compiler_Abort): Replace Fat_Pointer by String. > (Error_Msg_N): Likewise. > (Error_Msg_NE): Likewise. > (Get_External_Name_With_Suffix): Likewise

Re: [RFC] Add aarch64 support for ada

2014-04-17 Thread Richard Henderson
On 04/17/2014 08:35 AM, Tristan Gingold wrote: > What about this compile-time check: > > package Fatptralign is >type String_Acc is access String; >type Integer_acc is access Integer; > >pragma Compile_Time_Error > (String_Acc'Alignment = 1 * Integer_Acc'Alignment, > "Fat poi

Re: [RFC] Add aarch64 support for ada

2014-04-17 Thread Eric Botcazou
> Ah hah. > > /* Make sure we can put it into a register. */ > if (STRICT_ALIGNMENT) > TYPE_ALIGN (record_type) = MIN (BIGGEST_ALIGNMENT, 2 * POINTER_SIZE); > > AArch64 is not a STRICT_ALIGNMENT target, thus the mismatch. I see. Initially this alignment promotion had been universal, bu

Re: [RFC] Add aarch64 support for ada

2014-04-17 Thread Tristan Gingold
On 17 Apr 2014, at 16:50, Richard Henderson wrote: > On 04/17/2014 02:00 AM, Tristan Gingold wrote: >> >> On 16 Apr 2014, at 17:36, Richard Henderson wrote: >> >>> On 04/16/2014 12:39 AM, Eric Botcazou wrote: > The primary bit of rfc here is the hunk that applies to ada/types.h > with

Re: [RFC] Add aarch64 support for ada

2014-04-17 Thread Richard Henderson
On 04/17/2014 02:00 AM, Tristan Gingold wrote: > > On 16 Apr 2014, at 17:36, Richard Henderson wrote: > >> On 04/16/2014 12:39 AM, Eric Botcazou wrote: The primary bit of rfc here is the hunk that applies to ada/types.h with respect to Fat_Pointer. Given that the Ada type, as defined

Re: [RFC] Add aarch64 support for ada

2014-04-17 Thread Tristan Gingold
On 16 Apr 2014, at 17:36, Richard Henderson wrote: > On 04/16/2014 12:39 AM, Eric Botcazou wrote: >>> The primary bit of rfc here is the hunk that applies to ada/types.h >>> with respect to Fat_Pointer. Given that the Ada type, as defined in >>> s-stratt.ads, does not include alignment, I can't

Re: [RFC] Add aarch64 support for ada

2014-04-16 Thread Richard Henderson
On 04/16/2014 12:39 AM, Eric Botcazou wrote: >> The primary bit of rfc here is the hunk that applies to ada/types.h >> with respect to Fat_Pointer. Given that the Ada type, as defined in >> s-stratt.ads, does not include alignment, I can't imagine why the C >> type should have it. > > See gcc-int

Re: [RFC] Add aarch64 support for ada

2014-04-16 Thread Eric Botcazou
> Similarly with the HAVE_GNAT_ALTERNATE_STACK stuff. There aren't any > linux hosts that don't support sigaltstack, so why is this > conditionalized? Hum, I didn't know that Android also used the alternate stack... OK, let's use it unconditionally on Linux then, except for IA-64 which is a tot

Re: [RFC] Add aarch64 support for ada

2014-04-16 Thread Eric Botcazou
> The primary bit of rfc here is the hunk that applies to ada/types.h > with respect to Fat_Pointer. Given that the Ada type, as defined in > s-stratt.ads, does not include alignment, I can't imagine why the C > type should have it. See gcc-interface/utils.c:finish_fat_pointer_type. > This cause

Re: [RFC] Add aarch64 support for ada

2014-04-16 Thread Arnaud Charlet
The Makfile.in and init.c changes are OK. The types.h change is likely more controversial and may be problematic, I'll let Eric comment. > + system.ads > IMO, this should really be called system-linux-lp64.ads, and should > be usable for any 64-bit target that uses full ieee floating point, > w

[RFC] Add aarch64 support for ada

2014-04-16 Thread rth
From: Richard Henderson The primary bit of rfc here is the hunk that applies to ada/types.h with respect to Fat_Pointer. Given that the Ada type, as defined in s-stratt.ads, does not include alignment, I can't imagine why the C type should have it. This causes problems with the AArch64 calling