mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-15 05:24:01 +00:00
Finally land the InvokeInst operand reordering.
I have audited all getOperandNo calls now, fixing hidden assumptions. CallSite related uglyness will be eliminated successively. Note this patch has a long and griveous history, for all the back-and-forths have a look at CallSite.h's log. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99399 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -1090,11 +1090,11 @@ static void WriteInstruction(const Instruction &I, unsigned InstID,
|
||||
|
||||
// Emit value #'s for the fixed parameters.
|
||||
for (unsigned i = 0, e = FTy->getNumParams(); i != e; ++i)
|
||||
Vals.push_back(VE.getValueID(I.getOperand(i+3))); // fixed param.
|
||||
Vals.push_back(VE.getValueID(I.getOperand(i))); // fixed param.
|
||||
|
||||
// Emit type/value pairs for varargs params.
|
||||
if (FTy->isVarArg()) {
|
||||
for (unsigned i = 3+FTy->getNumParams(), e = I.getNumOperands();
|
||||
for (unsigned i = FTy->getNumParams(), e = I.getNumOperands()-3;
|
||||
i != e; ++i)
|
||||
PushValueAndType(I.getOperand(i), InstID, Vals, VE); // vararg
|
||||
}
|
||||
|
Reference in New Issue
Block a user