On Tue, Jul 4, 2017 at 1:56 PM, Arnaud Charlet <char...@adacore.com> wrote: > On Tue, Jul 04, 2017 at 12:19:35PM +0000, Wilco Dijkstra wrote: >> Andreas Schwab wrote: >> > @@ -5207,6 +5209,7 @@ aarch64_print_operand (FILE *f, rtx x, int code) >> > >> > case MEM: >> > output_address (GET_MODE (x), XEXP (x, 0)); >> > + gcc_assert (GET_MODE (XEXP (x, 0)) == Pmode); >> > break; >> > >> > case CONST: >> >> > That breaks a lot of gnat tests in ilp32 mode: >> >> That's interesting since it works fine in C and C++, and unless there are >> some >> ADA specific MD patterns, it seems unlikely it could only affect ADA. >> >> So how do you build the ADA backend? GCC can't even get past the configure as >> it doesn't appear to understand GNAT is installed after finding it... >> Is there some more magic setup required for ADA? >> >> Wilco >> >> checking for gnatbind... gnatbind >> checking for gnatmake... gnatmake >> checking whether compiler driver understands Ada... no > > The line above means that using $CC -c dummy_ada_file.adb > generates an error. > > $CC is "gcc" by default, some installs use gnatgcc instead of gcc to > provide an Ada compiler. > > In other words, try to do: > > gcc -c hello.adb > > manually and you'll see the error for yourself, or check your config.log > file. > > hello.adb can be as simple as the following single line: > > procedure hello is begin null; end;
Yeah it turns out that on the machine Wilco was using, we are running 14.04 which has a gcc 4.8 base compiler that didn't have Ada on for AArch64. I think we can work around by installing a gcc-5 package and then setting CC to gcc-5. Ramana