This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, committed], Fix PR 51390 to make gcc.target/powerpc/recip-5.c run again


I committed this patch.  It fixes a thinko I had in the builtin support that I
committed on November 29th.  I had used the wrong field for figuring out the
attributes, and it meant that gcc.target/powerpc/recip-5.c started failing
since __builtin_recipdiv and __builtin_recipdivf were not considered const
functions if -ffast-math was used.

2011-12-02  Michael Meissner  <meissner@the-meissners.org>

	PR target/51390
	* config/rs6000/rs6000.c (def_builtin): Use the correct field to
	figure out the function's attributes.
	(struct builtin_description): Mark mask field as const since we no
	longer need to modify it for SPE and PAIRED builtins.

Index: gcc/config/rs6000/rs6000.c
===================================================================
--- gcc/config/rs6000/rs6000.c	(revision 181929)
+++ gcc/config/rs6000/rs6000.c	(working copy)
@@ -215,10 +215,7 @@ static GTY(()) section *toc_section;
 
 struct builtin_description
 {
-  /* mask is not const because we're going to alter it below.  This
-     nonsense will go away when we rewrite the -march infrastructure
-     to give us more target flag bits.  */
-  unsigned int mask;
+  const unsigned int mask;
   const enum insn_code icode;
   const char *const name;
   const enum rs6000_builtins code;
@@ -9394,7 +9391,7 @@ static void
 def_builtin (const char *name, tree type, enum rs6000_builtins code)
 {
   tree t;
-  unsigned classify = rs6000_builtin_info[(int)code].mask;
+  unsigned classify = rs6000_builtin_info[(int)code].attr;
   const char *attr_string = "";
 
   gcc_assert (name != NULL);

-- 
Michael Meissner, IBM
5 Technology Place Drive, M/S 2757, Westford, MA 01886-3141, USA
meissner@linux.vnet.ibm.com	fax +1 (978) 399-6899


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]