From 0b9675d631a33ecde9e11febea48a2c6551bfeec Mon Sep 17 00:00:00 2001 From: Jack Carter Date: Mon, 4 Mar 2013 21:33:15 +0000 Subject: Mips specific inline assembler constraint 'R' '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/llvm/trunk@176452 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Mips/MipsISelLowering.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/Target') diff --git a/lib/Target/Mips/MipsISelLowering.cpp b/lib/Target/Mips/MipsISelLowering.cpp index 310a82e..cbcc18c 100644 --- a/lib/Target/Mips/MipsISelLowering.cpp +++ b/lib/Target/Mips/MipsISelLowering.cpp @@ -3880,6 +3880,8 @@ getConstraintType(const std::string &Constraint) const case 'l': case 'x': return C_RegisterClass; + case 'R': + return C_Memory; } } return TargetLowering::getConstraintType(Constraint); @@ -3928,6 +3930,9 @@ MipsTargetLowering::getSingleConstraintMatchWeight( if (isa(CallOperandVal)) weight = CW_Constant; break; + case 'R': + weight = CW_Memory; + break; } return weight; } -- cgit v1.1