]> granicus.if.org Git - clang/commitdiff
Add some basic ARM asm constraints
authorNate Begeman <natebegeman@mac.com>
Tue, 22 Apr 2008 05:03:19 +0000 (05:03 +0000)
committerNate Begeman <natebegeman@mac.com>
Tue, 22 Apr 2008 05:03:19 +0000 (05:03 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50085 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/Targets.cpp

index a06d5e647fb89644216096e593695ce7cdc421fb..c4ffa0d65e2c8ffc10b23c86abe5880eb10671ac 100644 (file)
@@ -804,7 +804,16 @@ public:
     NumAliases = 0;
   }
   virtual bool validateAsmConstraint(char c,
-                                     TargetInfo::ConstraintInfo &Info) const {
+                                     TargetInfo::ConstraintInfo &info) const {
+    switch (c) {
+    default: 
+    case 'l': // r0-r7
+    case 'h': // r8-r15
+    case 'w': // VFP Floating point register single precision
+    case 'P': // VFP Floating point register double precision
+      info = (TargetInfo::ConstraintInfo)(info|TargetInfo::CI_AllowsRegister);
+      return true;
+    }
     return false;
   }
   virtual const char *getClobbers() const {