This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Ada is still broken on AMD64 and IA64
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: Andreas Schwab <schwab at suse dot de>
- Cc: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>, aj at suse dot de,gcc-patches at gcc dot gnu dot org
- Date: Mon, 17 Nov 2003 23:44:48 +0100
- Subject: Re: Ada is still broken on AMD64 and IA64
- References: <10311141721.AA25013@vlsi1.ultra.nyu.edu> <jey8ufkv59.fsf@sykes.suse.de>
> kenner@vlsi1.ultra.nyu.edu (Richard Kenner) writes:
>
> > But now I get:
> >
> > | 3.4 20031114 (experimental) (x86_64-suse-linux-gnu) Gigi abort, Code=414
> >
> > Any ideas here?
> >
> > I mentioned that in my message, the change to ada/utils.c to clean up
> > precision vs. bitsize stuff:
>
> This fixes the build problem of the runtime library, but there is still an
> issue left:
>
> ../../xgcc -B../../ -DIN_GCC `echo -g -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -fno-common |sed -e 's/-pedantic//g' -e 's/-Wtraditional//g'` -o ../../gnatmake b_gnatm.o ctrl_c.o ali.o ali-util.o s-casuti.o alloc.o atree.o binderr.o butil.o casing.o csets.o debug.o elists.o einfo.o erroutc.o errutil.o err_vars.o fmap.o fname.o fname-uf.o fname-sf.o gnatmake.o gnatvsn.o hostparm.o krunch.o lib.o make.o makeusg.o mlib.o mlib-fil.o mlib-prj.o mlib-tgt.o mlib-utl.o namet.o nlists.o opt.o osint.o osint-m.o output.o prj.o prj-attr.o prj-com.o prj-dect.o prj-env.o prj-err.o prj-ext.o prj-nmsc.o prj-pars.o prj-part.o prj-proc.o prj-strt.o prj-tree.o prj-util.o rident.o scans.o scng.o sdefault.o sfn_scan.o s-purexc.o s-htable.o sinfo.o sinput.o sinput-c.o sinput-p.o snames.o stand.o stringt.o styleg.o stylesw.o validsw.o switch.o switch-m.o table.o targparm.o tempdir.o tree_io.o types.o uintp.o uname.o urealp.o usage.o widechar.o
> \
> ../rts/libgnat.a ../../prefix.o ../../version.o ../../../libiberty/libiberty.a
> ../rts/libgnat.a(s-stratt.o)(.text+0x832): In function `system.stream_attributes.i_llf':
> /tmp/cvs/gcc-20031117/Build/gcc/ada/rts/s-stratt.adb:276: undefined reference to `__trunctfxf2'
> ../rts/libgnat.a(s-stratt.o)(.text+0x1732): In function `system.stream_attributes.w_llf':
> /tmp/cvs/gcc-20031117/Build/gcc/ada/rts/s-stratt.adb:555: undefined reference to `__extendxftf2'
> collect2: ld returned 1 exit status
>
> I have no idea why TFmode comes into play here.
Me neither. The conversion appears to come from trees produced by Ada
frontend and I don't have much understanding why this happens.
In longer term we should get glibc 128bit FP emulation working but
we also should avoid Ada from using it when there is no reason for doing
so.
Honza
>
> Andreas.
>
> --
> Andreas Schwab, SuSE Labs, schwab@suse.de
> SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
> Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
> "And now for something completely different."