[ada] Support 64-bit libgnat multilib on i?86-linux

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Tue Dec 13 17:36:00 GMT 2011


I recently set up a bi-arch environment on i686-unknown-linux-gnu with
--enable-targets=all to check which of a couple of problems I'm seeing
on i386-pc-solaris2.1? are Solaris specific and which are generic.  When
trying to bootstrap such a compiler with all languages, Ada bootstrap
failed compiling the 64-bit libada:

$ /var/gcc/regression/trunk/2.6.18-gcc-gas-gld-32/build/./gcc/xgcc -B/var/gcc/regression/trunk/2.6.18-gcc-gas-gld-32/build/./gcc/ -B/vol/gcc/i686-unknown-linux-gnu/bin/ -B/vol/gcc/i686-unknown-linux-gnu/lib/ -isystem /vol/gcc/i686-unknown-linux-gnu/include -isystem /vol/gcc/i686-unknown-linux-gnu/sys-include    -c -g -O2 -m64 -fpic  -W -Wall -gnatpg -nostdinc -m64  a-finali.adb -o a-finali.o
a-finali.ads:64:09: alignment for "Controlledb64s" must be at least 8
a-finali.ads:64:09: alignment for "Controlledr62s" must be at least 8
a-finali.ads:64:09: alignment for "Controlledt59s" must be at least 8
a-finali.ads:70:09: alignment for "Limited_Controlledb98s" must be at least 8
a-finali.ads:70:09: alignment for "Limited_Controlledr96s" must be at least 8
a-finali.ads:70:09: alignment for "Limited_Controlledt93s" must be at least 8

It turned out that this configuration incorrectly used
system-linux-x86.ads for both multilibs.  The following patch fixes this
and allowed (together with a libffi and libjava patch to be submitted
shortly) the bootstrap to complete.

Ok for mainline?

	Rainer


2011-12-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* gcc-interface/Makefile.in (%86 linux%):
	(LIBGNAT_TARGET_PAIRS_32): Split off from LIBGNAT_TARGET_PAIRS.
	(LIBGNAT_TARGET_PAIRS_64): New.
	(LIBGNAT_TARGET_PAIRS): Add either depending on multilib.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: linx86-libada64.patch
Type: text/x-patch
Size: 899 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20111213/4a7ff890/attachment.bin>
-------------- next part --------------

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


More information about the Gcc-patches mailing list