mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 19:52:54 +01:00
cppbackend support for indbr
llvm-svn: 85312
This commit is contained in:
parent
f21034d6c3
commit
34c90ce60d
@ -1118,13 +1118,13 @@ namespace {
|
||||
break;
|
||||
}
|
||||
case Instruction::Switch: {
|
||||
const SwitchInst* sw = cast<SwitchInst>(I);
|
||||
const SwitchInst *SI = cast<SwitchInst>(I);
|
||||
Out << "SwitchInst* " << iName << " = SwitchInst::Create("
|
||||
<< opNames[0] << ", "
|
||||
<< opNames[1] << ", "
|
||||
<< sw->getNumCases() << ", " << bbname << ");";
|
||||
<< SI->getNumCases() << ", " << bbname << ");";
|
||||
nl(Out);
|
||||
for (unsigned i = 2; i < sw->getNumOperands(); i += 2 ) {
|
||||
for (unsigned i = 2; i != SI->getNumOperands(); i += 2) {
|
||||
Out << iName << "->addCase("
|
||||
<< opNames[i] << ", "
|
||||
<< opNames[i+1] << ");";
|
||||
@ -1132,6 +1132,17 @@ namespace {
|
||||
}
|
||||
break;
|
||||
}
|
||||
case Instruction::IndBr: {
|
||||
const IndBrInst *IBI = cast<IndBrInst>(I);
|
||||
Out << "IndBrInst *" << iName << " = IndBrInst::Create("
|
||||
<< opNames[0] << ", " << IBI->getNumDestinations() << ");";
|
||||
nl(Out);
|
||||
for (unsigned i = 1; i != IBI->getNumOperands(); ++i) {
|
||||
Out << iName << "->addDestination(" << opNames[i] << ");";
|
||||
nl(Out);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case Instruction::Invoke: {
|
||||
const InvokeInst* inv = cast<InvokeInst>(I);
|
||||
Out << "std::vector<Value*> " << iName << "_params;";
|
||||
|
Loading…
Reference in New Issue
Block a user