mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-03 11:24:18 +00:00
[Sparc] Bundle instruction with delay slow and its filler. Now, we can use -verify-machineinstrs with SPARC backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199014 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -184,7 +184,6 @@ static void LowerGETPCXAndEmitMCInsts(const MachineInstr *MI,
|
||||
|
||||
void SparcAsmPrinter::EmitInstruction(const MachineInstr *MI)
|
||||
{
|
||||
MCInst TmpInst;
|
||||
|
||||
switch (MI->getOpcode()) {
|
||||
default: break;
|
||||
@ -195,8 +194,13 @@ void SparcAsmPrinter::EmitInstruction(const MachineInstr *MI)
|
||||
LowerGETPCXAndEmitMCInsts(MI, OutStreamer, OutContext);
|
||||
return;
|
||||
}
|
||||
LowerSparcMachineInstrToMCInst(MI, TmpInst, *this);
|
||||
OutStreamer.EmitInstruction(TmpInst);
|
||||
MachineBasicBlock::const_instr_iterator I = MI;
|
||||
MachineBasicBlock::const_instr_iterator E = MI->getParent()->instr_end();
|
||||
do {
|
||||
MCInst TmpInst;
|
||||
LowerSparcMachineInstrToMCInst(I, TmpInst, *this);
|
||||
OutStreamer.EmitInstruction(TmpInst);
|
||||
} while ((++I != E) && I->isInsideBundle()); // Delay slot check.
|
||||
}
|
||||
|
||||
void SparcAsmPrinter::EmitFunctionBodyStart() {
|
||||
|
Reference in New Issue
Block a user