In working on something else, I was using the target pragmas I added in late November, and I noticed that I had a thinko in setting some of the options like -mfriz that aren't bitmasks. I committed the patch as obvious:
2011-12-30 Michael Meissner <meiss...@linux.vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_inner_target_options): Fix thinko in setting options via target #pragma or attribute. Index: gcc/config/rs6000/rs6000.c =================================================================== --- gcc/config/rs6000/rs6000.c (revision 182746) +++ gcc/config/rs6000/rs6000.c (working copy) @@ -27138,7 +27138,7 @@ rs6000_inner_target_options (tree args, if (strcmp (r, rs6000_opt_vars[i].name) == 0) { size_t j = rs6000_opt_vars[i].global_offset; - ((int *) &global_options)[j] = !invert; + *((int *) ((char *)&global_options + j)) = !invert; error_p = false; break; } -- Michael Meissner, IBM 5 Technology Place Drive, M/S 2757, Westford, MA 01886-3141, USA meiss...@linux.vnet.ibm.com fax +1 (978) 399-6899