diff options
author | Chris Lattner <sabre@nondot.org> | 2004-08-11 04:08:36 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-08-11 04:08:36 +0000 |
commit | baa2ecb7984003a5134edf5e1ca6f734e01056d1 (patch) | |
tree | f2b0643a25eff09e43dbf6a1ee0140e0d6a026c4 /llvm/utils | |
parent | 7526da6ead53f8ab1bc7e9c935cb88afe8a2e42c (diff) | |
download | bcm5719-llvm-baa2ecb7984003a5134edf5e1ca6f734e01056d1.tar.gz bcm5719-llvm-baa2ecb7984003a5134edf5e1ca6f734e01056d1.zip |
Fix minor bug in previous checkin
llvm-svn: 15649
Diffstat (limited to 'llvm/utils')
-rw-r--r-- | llvm/utils/TableGen/AsmWriterEmitter.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/utils/TableGen/AsmWriterEmitter.cpp b/llvm/utils/TableGen/AsmWriterEmitter.cpp index faecc9fdc6d..b2e2125f82a 100644 --- a/llvm/utils/TableGen/AsmWriterEmitter.cpp +++ b/llvm/utils/TableGen/AsmWriterEmitter.cpp @@ -75,15 +75,16 @@ void AsmWriterEmitter::run(std::ostream &O) { // If this is a two-address instruction and we are not accessing the // 0th operand, remove an operand. - if (I->second.isTwoAddress && OpNo != 0) { - if (OpNo == 1) + unsigned MIOp = I->second.OperandList[OpNo].MIOperandNo; + if (I->second.isTwoAddress && MIOp != 0) { + if (MIOp == 1) throw "Should refer to operand #0 instead of #1 for two-address" " instruction '" + I->first + "'!"; - --OpNo; + --MIOp; } O << "; " << I->second.OperandList[OpNo].PrinterMethodName - << "(MI, " << I->second.OperandList[OpNo].MIOperandNo << ", MVT::" + << "(MI, " << MIOp << ", MVT::" << getName(I->second.OperandList[OpNo].Ty) << "); O "; LastEmitted = VarEnd; } |