Index: lib/Basic/Targets.cpp
===================================================================
--- lib/Basic/Targets.cpp	(revision 81853)
+++ lib/Basic/Targets.cpp	(working copy)
@@ -449,21 +449,21 @@
 
 
 const char * const PPCTargetInfo::GCCRegNames[] = {
-  "0", "1", "2", "3", "4", "5", "6", "7",
-  "8", "9", "10", "11", "12", "13", "14", "15",
-  "16", "17", "18", "19", "20", "21", "22", "23",
-  "24", "25", "26", "27", "28", "29", "30", "31",
-  "0", "1", "2", "3", "4", "5", "6", "7",
-  "8", "9", "10", "11", "12", "13", "14", "15",
-  "16", "17", "18", "19", "20", "21", "22", "23",
-  "24", "25", "26", "27", "28", "29", "30", "31",
+  "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
+  "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15",
+  "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23",
+  "r24", "r25", "r26", "r27", "r28", "r29", "r30", "r31",
+  "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7",
+  "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15",
+  "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23",
+  "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31",
   "mq", "lr", "ctr", "ap",
-  "0", "1", "2", "3", "4", "5", "6", "7",
+  "cr0", "cr1", "cr2", "cr3", "cr4", "cr5", "cr6", "cr7",
   "xer",
-  "0", "1", "2", "3", "4", "5", "6", "7",
-  "8", "9", "10", "11", "12", "13", "14", "15",
-  "16", "17", "18", "19", "20", "21", "22", "23",
-  "24", "25", "26", "27", "28", "29", "30", "31",
+  "v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7",
+  "v8", "v9", "v10", "v11", "v12", "v13", "v14", "v15",
+  "v16", "v17", "v18", "v19", "v20", "v21", "v22", "v23",
+  "v24", "v25", "v26", "v27", "v28", "v29", "v30", "v31",
   "vrsave", "vscr",
   "spe_acc", "spefscr",
   "sfp"
@@ -478,38 +478,71 @@
 const TargetInfo::GCCRegAlias PPCTargetInfo::GCCRegAliases[] = {
   // While some of these aliases do map to different registers
   // they still share the same register name.
-  { { "cc", "cr0", "fr0", "r0", "v0"}, "0" },
-  { { "cr1", "fr1", "r1", "sp", "v1"}, "1" },
-  { { "cr2", "fr2", "r2", "toc", "v2"}, "2" },
-  { { "cr3", "fr3", "r3", "v3"}, "3" },
-  { { "cr4", "fr4", "r4", "v4"}, "4" },
-  { { "cr5", "fr5", "r5", "v5"}, "5" },
-  { { "cr6", "fr6", "r6", "v6"}, "6" },
-  { { "cr7", "fr7", "r7", "v7"}, "7" },
-  { { "fr8", "r8", "v8"}, "8" },
-  { { "fr9", "r9", "v9"}, "9" },
-  { { "fr10", "r10", "v10"}, "10" },
-  { { "fr11", "r11", "v11"}, "11" },
-  { { "fr12", "r12", "v12"}, "12" },
-  { { "fr13", "r13", "v13"}, "13" },
-  { { "fr14", "r14", "v14"}, "14" },
-  { { "fr15", "r15", "v15"}, "15" },
-  { { "fr16", "r16", "v16"}, "16" },
-  { { "fr17", "r17", "v17"}, "17" },
-  { { "fr18", "r18", "v18"}, "18" },
-  { { "fr19", "r19", "v19"}, "19" },
-  { { "fr20", "r20", "v20"}, "20" },
-  { { "fr21", "r21", "v21"}, "21" },
-  { { "fr22", "r22", "v22"}, "22" },
-  { { "fr23", "r23", "v23"}, "23" },
-  { { "fr24", "r24", "v24"}, "24" },
-  { { "fr25", "r25", "v25"}, "25" },
-  { { "fr26", "r26", "v26"}, "26" },
-  { { "fr27", "r27", "v27"}, "27" },
-  { { "fr28", "r28", "v28"}, "28" },
-  { { "fr29", "r29", "v29"}, "29" },
-  { { "fr30", "r30", "v30"}, "30" },
-  { { "fr31", "r31", "v31"}, "31" },
+  { { "0" }, "r0" }, 
+  { { "1"}, "r1" }, 
+  { { "2" }, "r2" }, 
+  { { "3" }, "r3" }, 
+  { { "4" }, "r4" }, 
+  { { "5" }, "r5" }, 
+  { { "6" }, "r6" }, 
+  { { "7" }, "r7" }, 
+  { { "8" }, "r8" }, 
+  { { "9" }, "r9" }, 
+  { { "10" }, "r10" }, 
+  { { "11" }, "r11" }, 
+  { { "12" }, "r12" }, 
+  { { "13" }, "r13" }, 
+  { { "14" }, "r14" }, 
+  { { "15" }, "r15" }, 
+  { { "16" }, "r16" }, 
+  { { "17" }, "r17" }, 
+  { { "18" }, "r18" }, 
+  { { "19" }, "r19" }, 
+  { { "20" }, "r20" }, 
+  { { "21" }, "r21" }, 
+  { { "22" }, "r22" }, 
+  { { "23" }, "r23" }, 
+  { { "24" }, "r24" }, 
+  { { "25" }, "r25" }, 
+  { { "26" }, "r26" }, 
+  { { "27" }, "r27" }, 
+  { { "28" }, "r28" }, 
+  { { "29" }, "r29" }, 
+  { { "30" }, "r30" }, 
+  { { "31" }, "r31" }, 
+  { { "fr0" }, "f0" }, 
+  { { "fr1" }, "f1" }, 
+  { { "fr2" }, "f2" }, 
+  { { "fr3" }, "f3" }, 
+  { { "fr4" }, "f4" }, 
+  { { "fr5" }, "f5" }, 
+  { { "fr6" }, "f6" }, 
+  { { "fr7" }, "f7" }, 
+  { { "fr8" }, "f8" }, 
+  { { "fr9" }, "f9" }, 
+  { { "fr10" }, "f00" }, 
+  { { "fr11" }, "f11" }, 
+  { { "fr12" }, "f12" }, 
+  { { "fr13" }, "f13" }, 
+  { { "fr14" }, "f14" }, 
+  { { "fr15" }, "f15" }, 
+  { { "fr16" }, "f16" }, 
+  { { "fr17" }, "f17" }, 
+  { { "fr18" }, "f18" }, 
+  { { "fr19" }, "f19" }, 
+  { { "fr20" }, "f20" }, 
+  { { "fr21" }, "f21" }, 
+  { { "fr22" }, "f22" }, 
+  { { "fr23" }, "f23" }, 
+  { { "fr24" }, "f24" }, 
+  { { "fr25" }, "f25" }, 
+  { { "fr26" }, "f26" }, 
+  { { "fr27" }, "f27" }, 
+  { { "fr28" }, "f28" }, 
+  { { "fr29" }, "f29" }, 
+  { { "fr30" }, "f30" }, 
+  { { "fr31" }, "f31" }, 
+  { { "cc" }, "cr0" }, 
 };
 
 void PPCTargetInfo::getGCCRegAliases(const GCCRegAlias *&Aliases,
