Upstream-Status: Pending

People are working to include this fixes upstream

--- gcc-4.6.3/gcc/config/rs6000/rs6000-c.c-orig	2012-07-10 12:16:59.708254001 -0500
+++ gcc-4.6.3/gcc/config/rs6000/rs6000-c.c	2012-07-10 12:18:58.625254001 -0500
@@ -272,19 +272,19 @@
     builtin_define ("_ARCH_PPCGR");
   if (TARGET_POWERPC64)
     builtin_define ("_ARCH_PPC64");
-  if (TARGET_MFCRF)
+  if (TARGET_MFCRF && rs6000_cpu != PROCESSOR_PPCE6500)
     builtin_define ("_ARCH_PWR4");
-  if (TARGET_POPCNTB)
+  if (TARGET_POPCNTB && rs6000_cpu != PROCESSOR_PPCE5500 && rs6000_cpu != PROCESSOR_PPCE6500)
     builtin_define ("_ARCH_PWR5");
   if (TARGET_FPRND)
     builtin_define ("_ARCH_PWR5X");
-  if (TARGET_CMPB)
+  if (TARGET_CMPB && rs6000_cpu != PROCESSOR_PPCE5500 && rs6000_cpu != PROCESSOR_PPCE6500)
     builtin_define ("_ARCH_PWR6");
   if (TARGET_MFPGPR)
     builtin_define ("_ARCH_PWR6X");
   if (! TARGET_POWER && ! TARGET_POWER2 && ! TARGET_POWERPC)
     builtin_define ("_ARCH_COM");
-  if (TARGET_POPCNTD)
+  if (TARGET_POPCNTD && rs6000_cpu != PROCESSOR_PPCE5500 && rs6000_cpu != PROCESSOR_PPCE6500)
     builtin_define ("_ARCH_PWR7");
   if (TARGET_ALTIVEC)
     {
