mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-17 21:35:07 +00:00
Misc fixes for cpp backend.
PR17317. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191258 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
3d2c90f6dd
commit
17f013265f
@ -1161,8 +1161,7 @@ void CppWriter::printInstruction(const Instruction *I,
|
||||
break;
|
||||
}
|
||||
case Instruction::Resume: {
|
||||
Out << "ResumeInst::Create(mod->getContext(), " << opNames[0]
|
||||
<< ", " << bbname << ");";
|
||||
Out << "ResumeInst::Create(" << opNames[0] << ", " << bbname << ");";
|
||||
break;
|
||||
}
|
||||
case Instruction::Invoke: {
|
||||
@ -1176,7 +1175,7 @@ void CppWriter::printInstruction(const Instruction *I,
|
||||
}
|
||||
// FIXME: This shouldn't use magic numbers -3, -2, and -1.
|
||||
Out << "InvokeInst *" << iName << " = InvokeInst::Create("
|
||||
<< getOpName(inv->getCalledFunction()) << ", "
|
||||
<< getOpName(inv->getCalledValue()) << ", "
|
||||
<< getOpName(inv->getNormalDest()) << ", "
|
||||
<< getOpName(inv->getUnwindDest()) << ", "
|
||||
<< iName << "_params, \"";
|
||||
@ -1590,6 +1589,20 @@ void CppWriter::printInstruction(const Instruction *I,
|
||||
Out << "\");";
|
||||
break;
|
||||
}
|
||||
case Instruction::LandingPad: {
|
||||
const LandingPadInst *lpi = cast<LandingPadInst>(I);
|
||||
Out << "LandingPadInst* " << iName << " = LandingPadInst::Create(";
|
||||
printCppName(lpi->getType());
|
||||
Out << ", " << opNames[0] << ", " << lpi->getNumClauses() << ", \"";
|
||||
printEscapedString(lpi->getName());
|
||||
Out << "\", " << bbname << ");";
|
||||
nl(Out) << iName << "->setCleanup("
|
||||
<< (lpi->isCleanup() ? "true" : "false")
|
||||
<< ");";
|
||||
for (unsigned i = 0, e = lpi->getNumClauses(); i != e; ++i)
|
||||
nl(Out) << iName << "->addClause(" << opNames[i+1] << ");";
|
||||
break;
|
||||
}
|
||||
}
|
||||
DefinedValues.insert(I);
|
||||
nl(Out);
|
||||
|
Loading…
x
Reference in New Issue
Block a user