mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-09-08 23:55:03 +00:00
use specialized accessor instead of plain getOperand(0)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62330 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7103c6a993
commit
75a46eb800
@ -698,7 +698,7 @@ static void WriteModuleConstants(const ValueEnumerator &VE,
|
|||||||
/// This function adds V's value ID to Vals. If the value ID is higher than the
|
/// This function adds V's value ID to Vals. If the value ID is higher than the
|
||||||
/// instruction ID, then it is a forward reference, and it also includes the
|
/// instruction ID, then it is a forward reference, and it also includes the
|
||||||
/// type ID.
|
/// type ID.
|
||||||
static bool PushValueAndType(Value *V, unsigned InstID,
|
static bool PushValueAndType(const Value *V, unsigned InstID,
|
||||||
SmallVector<unsigned, 64> &Vals,
|
SmallVector<unsigned, 64> &Vals,
|
||||||
ValueEnumerator &VE) {
|
ValueEnumerator &VE) {
|
||||||
unsigned ValID = VE.getValueID(V);
|
unsigned ValID = VE.getValueID(V);
|
||||||
@ -825,16 +825,17 @@ static void WriteInstruction(const Instruction &I, unsigned InstID,
|
|||||||
Vals.push_back(VE.getValueID(I.getOperand(i)));
|
Vals.push_back(VE.getValueID(I.getOperand(i)));
|
||||||
break;
|
break;
|
||||||
case Instruction::Invoke: {
|
case Instruction::Invoke: {
|
||||||
const PointerType *PTy = cast<PointerType>(I.getOperand(0)->getType());
|
const InvokeInst *II = cast<InvokeInst>(&I);
|
||||||
|
const Value *Callee(II->getCalledValue());
|
||||||
|
const PointerType *PTy = cast<PointerType>(Callee->getType());
|
||||||
const FunctionType *FTy = cast<FunctionType>(PTy->getElementType());
|
const FunctionType *FTy = cast<FunctionType>(PTy->getElementType());
|
||||||
Code = bitc::FUNC_CODE_INST_INVOKE;
|
Code = bitc::FUNC_CODE_INST_INVOKE;
|
||||||
|
|
||||||
const InvokeInst *II = cast<InvokeInst>(&I);
|
|
||||||
Vals.push_back(VE.getAttributeID(II->getAttributes()));
|
Vals.push_back(VE.getAttributeID(II->getAttributes()));
|
||||||
Vals.push_back(II->getCallingConv());
|
Vals.push_back(II->getCallingConv());
|
||||||
Vals.push_back(VE.getValueID(II->getNormalDest()));
|
Vals.push_back(VE.getValueID(II->getNormalDest()));
|
||||||
Vals.push_back(VE.getValueID(II->getUnwindDest()));
|
Vals.push_back(VE.getValueID(II->getUnwindDest()));
|
||||||
PushValueAndType(I.getOperand(0), InstID, Vals, VE); // callee
|
PushValueAndType(Callee, InstID, Vals, VE);
|
||||||
|
|
||||||
// Emit value #'s for the fixed parameters.
|
// Emit value #'s for the fixed parameters.
|
||||||
for (unsigned i = 0, e = FTy->getNumParams(); i != e; ++i)
|
for (unsigned i = 0, e = FTy->getNumParams(); i != e; ++i)
|
||||||
|
Loading…
Reference in New Issue
Block a user