Index: gcc/config/rs6000/rs6000.c
===================================================================
--- gcc/config/rs6000/rs6000.c  (revision 121533)
+++ gcc/config/rs6000/rs6000.c  (working copy)
@@ -136,6 +136,10 @@
/* Target cpu type */
+/* APPLE LOCAL begin LLVM */
+const char *rs6000_cpu_target = "ppc";
+/* APPLE LOCAL end LLVM */
+
enum processor_type rs6000_cpu;
struct rs6000_cpu_select rs6000_select[3] =
{
@@ -1324,6 +1328,10 @@
   rs6000_select[0].string = default_cpu;
rs6000_cpu = TARGET_POWERPC64 ? PROCESSOR_DEFAULT64 : PROCESSOR_DEFAULT;
+  /* APPLE LOCAL begin LLVM */
+  rs6000_cpu_target = TARGET_POWERPC64 ? "ppc64" : "ppc";
+  /* APPLE LOCAL end LLVM */
+
   /* APPLE LOCAL begin -fast */
   if (flag_fast || flag_fastf || flag_fastcp)
   {
@@ -1355,6 +1363,10 @@
                    /* APPLE LOCAL begin -fast */
                    mcpu_cpu = processor_target_table[j].processor;
                    /* APPLE LOCAL end -fast */
+
+                   /* APPLE LOCAL begin LLVM */
+        rs6000_cpu_target = processor_target_table[j].name;
+                   /* APPLE LOCAL end LLVM */
                  }
                break;
              }
Index: gcc/config/rs6000/rs6000.h
===================================================================
--- gcc/config/rs6000/rs6000.h  (revision 121533)
+++ gcc/config/rs6000/rs6000.h  (working copy)
@@ -408,6 +408,10 @@
    PROCESSOR_POWER5
};
+/* APPLE LOCAL begin LLVM */
+extern const char *rs6000_cpu_target;
+/* APPLE LOCAL end LLVM */
+
extern enum processor_type rs6000_cpu;
/* Recast the processor type to the cpu attribute.  */
@@ -3610,27 +3614,8 @@
/* Turn -march=xx into a CPU type.
  */
#define LLVM_SET_SUBTARGET_FEATURES(F) \
-  { switch (rs6000_cpu) { \
-    case PROCESSOR_RIOS1: \
-    case PROCESSOR_RIOS2: \
-    case PROCESSOR_MPCCORE: \
-    case PROCESSOR_PPC403: \
-    case PROCESSOR_PPC405: \
-    case PROCESSOR_PPC440: F.setCPU("ppc"); break; \
-    case PROCESSOR_PPC601: F.setCPU("601"); break; \
-    case PROCESSOR_PPC603: F.setCPU("603"); break; \
-    case PROCESSOR_PPC604: F.setCPU("604"); break; \
-    case PROCESSOR_PPC604e: F.setCPU("604e"); break; \
-    case PROCESSOR_PPC620: \
-    case PROCESSOR_PPC630: F.setCPU("620"); break; \
-    case PROCESSOR_PPC750: F.setCPU("750"); break; \
-    case PROCESSOR_PPC7400: F.setCPU("7400"); break; \
-    case PROCESSOR_PPC7450: F.setCPU("7450"); break; \
-    case PROCESSOR_PPC8540: F.setCPU("7450"); break; \
-    case PROCESSOR_RS64A: F.setCPU("ppc64"); break; \
-    case PROCESSOR_POWER4: \
- case PROCESSOR_POWER5: F.setCPU("970"); break; /* FIXME: NOT RIGHT */ \
-    } \
+  { \
+    F.setCPU(rs6000_cpu_target); \
     F.AddFeature("altivec", TARGET_ALTIVEC); \
     F.AddFeature("gpul", TARGET_MFCRF); \
     F.AddFeature("fsqrt", TARGET_PPC_GPOPT); \

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to