This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Fix PR 49026 (-mfpmath= attribute bug)
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 18 May 2011 01:11:33 +0000 (UTC)
- Subject: Fix PR 49026 (-mfpmath= attribute bug)
PR 49026 identified testsuite regressions when mfpmath= is set by
target attributes, that for some reason appear on x86_64-darwin but
not x86_64-linux.
This patch fixes one place where I failed to preserve the logic of
this attribute handling, and restores the code generated for the
testcase to the code attached to that PR as being generated before my
previous patch.
Bootstrapped with no regressions on x86_64-unknown-linux-gnu. Applied
to mainline.
2011-05-17 Joseph Myers <joseph@codesourcery.com>
* config/i386/i386.c (ix86_valid_target_attribute_tree): Use
enum_opts_set when testing if attributes have set -mfpmath=.
Index: gcc/config/i386/i386.c
===================================================================
--- gcc/config/i386/i386.c (revision 173809)
+++ gcc/config/i386/i386.c (working copy)
@@ -4692,7 +4692,7 @@ ix86_valid_target_attribute_tree (tree a
|| target_flags != def->x_target_flags
|| option_strings[IX86_FUNCTION_SPECIFIC_ARCH]
|| option_strings[IX86_FUNCTION_SPECIFIC_TUNE]
- || ix86_fpmath != def->x_ix86_fpmath)
+ || enum_opts_set.x_ix86_fpmath)
{
/* If we are using the default tune= or arch=, undo the string assigned,
and use the default. */
--
Joseph S. Myers
joseph@codesourcery.com