This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: condition DCE of partially dead calls
- From: "Andrew Pinski" <pinskia at gmail dot com>
- To: "Xinliang David Li" <davidxl at google dot com>
- Cc: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 30 May 2008 08:02:55 -0700
- Subject: Re: condition DCE of partially dead calls
- References: <483FA8AC.5040908@google.com>
On Fri, May 30, 2008 at 12:11 AM, Xinliang David Li <davidxl@google.com> wrote:
> 2) Enabled only when target float format is IEEE format.
+ /* The limit constants used in the implementation
+ assume IEEE floating point format. Other formats
+ can be supported in the future if needed. */
+ return (flag_tree_builtin_call_dce != 0
+ && TARGET_FLOAT_FORMAT == IEEE_FLOAT_FORMAT);
This check is incorrect really as the float format might be different
from the double format which might be different from the long double
format.
Plus REAL_MODE_FORMAT is what you should be checking as
TARGET_FLOAT_FORMAT just supplies the default but REAL_MODE_FORMAT can
be changed:
if (TARGET_LONG_DOUBLE_128 && !TARGET_IEEEQUAD)
REAL_MODE_FORMAT (TFmode) = &ibm_extended_format;
Once the spu float format are submitted the spu port will be changed
such TARGET_FLOAT_FORMAT is defined to SPU_FLOAT_FORMAT but the double
format will be ieee.
Thanks,
Andrew Pinski