Hi, I have been testing with this for almost a month. It is my attempt to follow the changes I think Joseph made to other rs6000 targets. If this change looks right, I would like to commit it.
Test results have been posted for it. Thanks. 2011-12-02 Joel Sherrill <joel.sherr...@oarcorp.com> * config/rs6000/rtems.h: Switch to using global_options_set in SUBSUBTARGET_OVERRIDE_OPTIONS. -- Joel Sherrill, Ph.D. Director of Research& Development joel.sherr...@oarcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985
Index: gcc/config/rs6000/rtems.h =================================================================== --- gcc/config/rs6000/rtems.h (revision 181924) +++ gcc/config/rs6000/rtems.h (working copy) @@ -57,15 +57,15 @@ { "cpp_os_rtems", CPP_OS_RTEMS_SPEC } #undef SUBSUBTARGET_OVERRIDE_OPTIONS -#define SUBSUBTARGET_OVERRIDE_OPTIONS \ - do { \ - if (TARGET_E500) \ - { \ - if (TARGET_HARD_FLOAT && !rs6000_explicit_options.float_gprs) \ - rs6000_float_gprs = 1; \ - if (rs6000_float_gprs != 0 && !rs6000_explicit_options.spe) \ - rs6000_spe = 1; \ - if (rs6000_spe && !rs6000_explicit_options.spe_abi) \ - rs6000_spe_abi = 1; \ - } \ +#define SUBSUBTARGET_OVERRIDE_OPTIONS \ + do { \ + if (TARGET_E500) \ + { \ + if (!global_options_set.x_rs6000_float_gprs) \ + rs6000_float_gprs = 1; \ + if (!global_options_set.x_rs6000_spe) \ + rs6000_spe = 1; \ + if (!global_options_set.x_rs6000_spe_abi) \ + rs6000_spe_abi = 1; \ + } \ } while(0)