[cfe-commits] r117508 - /cfe/trunk/lib/Basic/Targets.cpp

Dale Johannesen dalej at apple.com
Wed Oct 27 16:34:42 PDT 2010


Author: johannes
Date: Wed Oct 27 18:34:42 2010
New Revision: 117508

URL: http://llvm.org/viewvc/llvm-project?rev=117508&view=rev
Log:
Add D and Q register names to ARM inline asm handling.
No aliasing is needed, these work as given in the BE.


Modified:
    cfe/trunk/lib/Basic/Targets.cpp

Modified: cfe/trunk/lib/Basic/Targets.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=117508&r1=117507&r2=117508&view=diff
==============================================================================
--- cfe/trunk/lib/Basic/Targets.cpp (original)
+++ cfe/trunk/lib/Basic/Targets.cpp Wed Oct 27 18:34:42 2010
@@ -1886,10 +1886,14 @@
   "s0", "s1", "s2", "s3", "s4", "s5", "s6", "s7",
   "s8", "s9", "s10", "s11", "s12", "s13", "s14", "s15",
   "s16", "s17", "s18", "s19", "s20", "s21", "s22", "s23",
-  "s24", "s25", "s26", "s27", "s28", "s29", "s30", "s31"
+  "s24", "s25", "s26", "s27", "s28", "s29", "s30", "s31",
 
-  // FIXME: Need double and NEON registers, but we need support for aliasing
-  // multiple registers for that.
+  // Double registers
+  "d0", "d1", "d2", "d3", "d4", "d5", "d6", "d7",
+  "d8", "d9", "d10", "d11", "d12", "d13", "d14", "d15",
+
+  // Quad registers
+  "q0", "q1", "q2", "q3", "q4", "q5", "q6", "q7"
 };
 
 void ARMTargetInfo::getGCCRegNames(const char * const *&Names,
@@ -1915,6 +1919,8 @@
   { { "r13" }, "sp" },
   { { "r14" }, "lr" },
   { { "r15" }, "pc" },
+  // The S, D and Q registers overlap, but aren't really aliases; we
+  // don't want to substitute one of these for a different-sized one.
 };
 
 void ARMTargetInfo::getGCCRegAliases(const GCCRegAlias *&Aliases,





More information about the cfe-commits mailing list