Ada is still broken on AMD64 and IA64 (Was: Re: Ada config for x86_64-linux)
Richard Kenner
kenner@vlsi1.ultra.nyu.edu
Fri Nov 14 16:27:00 GMT 2003
>> | 3.4 20031114 (experimental) (x86_64-suse-linux-gnu) GCC error:
>> | in convert_move, at expr.c:613
I believe the fix for this is below.
Zack, do you agree?
(Once this is fixed, there's a precision vs. size issue in Ada's utils.c that
also has to be fixed.)
*** expr.c 13 Nov 2003 09:48:28 -0000 1.599
--- expr.c 14 Nov 2003 16:23:59 -0000
*************** convert_move (rtx to, rtx from, int unsi
*** 606,612 ****
convert_optab tab;
! if (GET_MODE_BITSIZE (from_mode) < GET_MODE_BITSIZE (to_mode))
tab = sext_optab;
! else if (GET_MODE_BITSIZE (from_mode) > GET_MODE_BITSIZE (to_mode))
tab = trunc_optab;
else
--- 606,612 ----
convert_optab tab;
! if (GET_MODE_PRECISION (from_mode) < GET_MODE_PRECISION (to_mode))
tab = sext_optab;
! else if (GET_MODE_PRECISION (from_mode) > GET_MODE_PRECISION (to_mode))
tab = trunc_optab;
else
More information about the Gcc-patches
mailing list