diff options
| author | Chad Rosier <mcrosier@apple.com> | 2012-10-01 23:45:51 +0000 |
|---|---|---|
| committer | Chad Rosier <mcrosier@apple.com> | 2012-10-01 23:45:51 +0000 |
| commit | 22685876ed7231f32f7d1698c00acab22825b74c (patch) | |
| tree | e2240c27a0c5b7cfd1176155666f250b13127297 /lib/Target/ARM | |
| parent | 3fc42fd77c7f8bdb2729ce5405d65297bbfdff84 (diff) | |
| download | external_llvm-22685876ed7231f32f7d1698c00acab22825b74c.zip external_llvm-22685876ed7231f32f7d1698c00acab22825b74c.tar.gz external_llvm-22685876ed7231f32f7d1698c00acab22825b74c.tar.bz2 | |
[ms-inline asm] Add the convertToMapAndConstraints() function that is used to
map constraints and MCInst operands to inline asm operands. This replaces the
getMCInstOperandNum() function.
The logic to determine the constraints are not in place, so we still default to
a register constraint (i.e., "r"). Also, we no longer build the MCInst but
rather return just the opcode to get the MCInstrDesc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164979 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM')
| -rw-r--r-- | lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index aa5ba46..9e92649 100644 --- a/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -7480,8 +7480,10 @@ MatchAndEmitInstruction(SMLoc IDLoc, unsigned Kind; unsigned ErrorInfo; unsigned MatchResult; - - MatchResult = MatchInstructionImpl(Operands, Kind, Inst, ErrorInfo); + SmallVector<std::pair< unsigned, std::string >, 4> MapAndConstraints; + MatchResult = MatchInstructionImpl(Operands, Kind, Inst, + MapAndConstraints, ErrorInfo, + /*matchingInlineAsm*/ false); switch (MatchResult) { default: break; case Match_Success: |
