summaryrefslogtreecommitdiff
path: root/lib/Target/Mips/MipsISelLowering.h
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2012-05-07 03:13:32 +0000
committerEric Christopher <echristo@apple.com>2012-05-07 03:13:32 +0000
commit50ab03954ec0a43708ad0a5cf3d253ce41a30db3 (patch)
treeb7bf1f31906c48a53eb7c3fd1b2a29fbd17be061 /lib/Target/Mips/MipsISelLowering.h
parent0ed1f764f4e0d4cc940052e8ccca260bf5c39407 (diff)
downloadllvm-50ab03954ec0a43708ad0a5cf3d253ce41a30db3.tar.gz
llvm-50ab03954ec0a43708ad0a5cf3d253ce41a30db3.tar.bz2
llvm-50ab03954ec0a43708ad0a5cf3d253ce41a30db3.tar.xz
Add support for the 'I' inline asm constraint. Also add tests
from the previous 2 patches. Patch by Jack Carter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156279 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsISelLowering.h')
-rw-r--r--lib/Target/Mips/MipsISelLowering.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Target/Mips/MipsISelLowering.h b/lib/Target/Mips/MipsISelLowering.h
index c36f40f639..f95e0dc47e 100644
--- a/lib/Target/Mips/MipsISelLowering.h
+++ b/lib/Target/Mips/MipsISelLowering.h
@@ -176,6 +176,15 @@ namespace llvm {
getRegForInlineAsmConstraint(const std::string &Constraint,
EVT VT) const;
+ /// LowerAsmOperandForConstraint - Lower the specified operand into the Ops
+ /// vector. If it is invalid, don't add anything to Ops. If hasMemory is
+ /// true it means one of the asm constraint of the inline asm instruction
+ /// being processed is 'm'.
+ virtual void LowerAsmOperandForConstraint(SDValue Op,
+ std::string &Constraint,
+ std::vector<SDValue> &Ops,
+ SelectionDAG &DAG) const;
+
virtual bool isOffsetFoldingLegal(const GlobalAddressSDNode *GA) const;
/// isFPImmLegal - Returns true if the target can instruction select the