summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorChad Rosier <mcrosier@apple.com>2012-09-03 18:47:45 +0000
committerChad Rosier <mcrosier@apple.com>2012-09-03 18:47:45 +0000
commit391d299737827c7d88f5c4f845967cf0665eeb75 (patch)
tree299d37b5f73cdd5e8b8a11bf88824a5c30aed835 /llvm/lib/Target
parent73d3f826e7275e187c9fe56ba61bf76e69920760 (diff)
downloadbcm5719-llvm-391d299737827c7d88f5c4f845967cf0665eeb75.tar.gz
bcm5719-llvm-391d299737827c7d88f5c4f845967cf0665eeb75.zip
[ms-inline asm] Add an interface to the GetMCInstOperandNum() function in the
MCTargetAsmParser class. llvm-svn: 163122
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp6
-rw-r--r--llvm/lib/Target/MBlaze/AsmParser/MBlazeAsmParser.cpp5
-rw-r--r--llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp13
-rw-r--r--llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp6
4 files changed, 30 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
index fe11bec93fc..bdb20e85347 100644
--- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
+++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
@@ -262,6 +262,12 @@ public:
bool MatchAndEmitInstruction(SMLoc IDLoc,
SmallVectorImpl<MCParsedAsmOperand*> &Operands,
MCStreamer &Out);
+
+ unsigned GetMCInstOperandNum(unsigned Kind, MCInst &Inst,
+ const SmallVectorImpl<MCParsedAsmOperand*> &Operands,
+ unsigned OperandNum) {
+ return GetMCInstOperandNumImpl(Kind, Inst, Operands, OperandNum);
+ }
};
} // end anonymous namespace
diff --git a/llvm/lib/Target/MBlaze/AsmParser/MBlazeAsmParser.cpp b/llvm/lib/Target/MBlaze/AsmParser/MBlazeAsmParser.cpp
index 1ee6e2d5da1..e81943c7751 100644
--- a/llvm/lib/Target/MBlaze/AsmParser/MBlazeAsmParser.cpp
+++ b/llvm/lib/Target/MBlaze/AsmParser/MBlazeAsmParser.cpp
@@ -56,6 +56,11 @@ class MBlazeAsmParser : public MCTargetAsmParser {
/// }
+ unsigned GetMCInstOperandNum(unsigned Kind, MCInst &Inst,
+ const SmallVectorImpl<MCParsedAsmOperand*> &Operands,
+ unsigned OperandNum) {
+ return GetMCInstOperandNumImpl(Kind, Inst, Operands, OperandNum);
+ }
public:
MBlazeAsmParser(MCSubtargetInfo &_STI, MCAsmParser &_Parser)
diff --git a/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp b/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
index 43bd3452080..deef84408dc 100644
--- a/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
+++ b/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
@@ -37,6 +37,11 @@ class MipsAsmParser : public MCTargetAsmParser {
bool ParseDirective(AsmToken DirectiveID);
OperandMatchResultTy parseMemOperand(SmallVectorImpl<MCParsedAsmOperand*>&);
+
+ unsigned GetMCInstOperandNum(unsigned Kind, MCInst &Inst,
+ const SmallVectorImpl<MCParsedAsmOperand*> &Operands,
+ unsigned OperandNum);
+
public:
MipsAsmParser(MCSubtargetInfo &sti, MCAsmParser &parser)
: MCTargetAsmParser() {
@@ -96,6 +101,14 @@ public:
};
}
+unsigned MipsAsmParser::
+GetMCInstOperandNum(unsigned Kind, MCInst &Inst,
+ const SmallVectorImpl<MCParsedAsmOperand*> &Operands,
+ unsigned OperandNum) {
+ assert (0 && "GetMCInstOperandNum() not supported by the Mips target.");
+ return 0;
+}
+
bool MipsAsmParser::
MatchAndEmitInstruction(SMLoc IDLoc,
SmallVectorImpl<MCParsedAsmOperand*> &Operands,
diff --git a/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp b/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
index 3a1aa415415..6d6e7d1eea9 100644
--- a/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
+++ b/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
@@ -73,6 +73,12 @@ private:
unsigned &OrigErrorInfo,
bool matchingInlineAsm = false);
+ unsigned GetMCInstOperandNum(unsigned Kind, MCInst &Inst,
+ const SmallVectorImpl<MCParsedAsmOperand*> &Operands,
+ unsigned OperandNum) {
+ return GetMCInstOperandNumImpl(Kind, Inst, Operands, OperandNum);
+ }
+
/// isSrcOp - Returns true if operand is either (%rsi) or %ds:%(rsi)
/// in 64bit mode or (%esi) or %es:(%esi) in 32bit mode.
bool isSrcOp(X86Operand &Op);
OpenPOWER on IntegriCloud