]> granicus.if.org Git - clang/commitdiff
Mips specific inline assembler constraint 'R'
authorJack Carter <jack.carter@imgtec.com>
Mon, 4 Mar 2013 21:36:11 +0000 (21:36 +0000)
committerJack Carter <jack.carter@imgtec.com>
Mon, 4 Mar 2013 21:36:11 +0000 (21:36 +0000)
'R' An address that can be sued in a non-macro load or store.
This patch includes a positive test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176453 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/Targets.cpp
test/CodeGen/mips-constraint-regs.c

index c63ccce9cafb4ea7231a3982f6ac74634bd6a50b..9ff4ac08ee0eef77638973b487c8df10d3e640c3 100644 (file)
@@ -4486,6 +4486,9 @@ public:
     case 'x': // hilo register pair
       Info.setAllowsRegister();
       return true;
+    case 'R': // An address tha can be used in a non-macro load or store
+      Info.setAllowsMemory();
+      return true;
     }
   }
 
index c42a888fcfbab1c9fe2e1524dc78c6721fff79c2..0d533f5fc771244b2cbfc4e25cd428c1f61eb35d 100644 (file)
@@ -2,9 +2,7 @@
 // RUN: | FileCheck %s
 
 // This checks that the frontend will accept inline asm constraints
-// c', 'l' and 'x'. Semantic checking will happen in the
-// llvm backend. Any bad constraint letters will cause the frontend to
-// error out.
+// c', 'l' and 'x'.
 
 int main()
 {