mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-15 06:29:05 +00:00
Add support for frame index nodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22956 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -121,6 +121,9 @@ unsigned SimpleSched::Emit(SDOperand Op) {
|
|||||||
} else if (BasicBlockSDNode *BB =
|
} else if (BasicBlockSDNode *BB =
|
||||||
dyn_cast<BasicBlockSDNode>(Op.getOperand(i))) {
|
dyn_cast<BasicBlockSDNode>(Op.getOperand(i))) {
|
||||||
MI->addMachineBasicBlockOperand(BB->getBasicBlock());
|
MI->addMachineBasicBlockOperand(BB->getBasicBlock());
|
||||||
|
} else if (FrameIndexSDNode *FI =
|
||||||
|
dyn_cast<FrameIndexSDNode>(Op.getOperand(i))) {
|
||||||
|
MI->addFrameIndexOperand(FI->getIndex());
|
||||||
} else {
|
} else {
|
||||||
unsigned R = Emit(Op.getOperand(i));
|
unsigned R = Emit(Op.getOperand(i));
|
||||||
// Add an operand, unless this corresponds to a chain node.
|
// Add an operand, unless this corresponds to a chain node.
|
||||||
@@ -136,9 +139,7 @@ unsigned SimpleSched::Emit(SDOperand Op) {
|
|||||||
default:
|
default:
|
||||||
Op.Val->dump();
|
Op.Val->dump();
|
||||||
assert(0 && "This target-independent node should have been selected!");
|
assert(0 && "This target-independent node should have been selected!");
|
||||||
case ISD::EntryToken:
|
case ISD::EntryToken: break;
|
||||||
case ISD::BasicBlock:
|
|
||||||
break;
|
|
||||||
case ISD::TokenFactor:
|
case ISD::TokenFactor:
|
||||||
for (unsigned i = 0, e = Op.getNumOperands(); i != e; ++i)
|
for (unsigned i = 0, e = Op.getNumOperands(); i != e; ++i)
|
||||||
Emit(Op.getOperand(i));
|
Emit(Op.getOperand(i));
|
||||||
|
Reference in New Issue
Block a user