forked from OSchip/llvm-project
Move ARM frame-unwinding EHABI handling a touch earlier.
It should go before AsmPrinter MC pseudo expansion since it's based on MachineInstr, not MCInst. Otherwise any frame related pseudo instructions may be missed. llvm-svn: 138386
This commit is contained in:
parent
129c3db6a7
commit
51b554247d
|
@ -1151,6 +1151,10 @@ extern cl::opt<bool> EnableARMEHABI;
|
|||
#include "ARMGenMCPseudoLowering.inc"
|
||||
|
||||
void ARMAsmPrinter::EmitInstruction(const MachineInstr *MI) {
|
||||
// Emit unwinding stuff for frame-related instructions
|
||||
if (EnableARMEHABI && MI->getFlag(MachineInstr::FrameSetup))
|
||||
EmitUnwindingInstruction(MI);
|
||||
|
||||
// Do any auto-generated pseudo lowerings.
|
||||
if (emitPseudoExpansionLowering(OutStreamer, MI))
|
||||
return;
|
||||
|
@ -1881,10 +1885,6 @@ void ARMAsmPrinter::EmitInstruction(const MachineInstr *MI) {
|
|||
MCInst TmpInst;
|
||||
LowerARMMachineInstrToMCInst(MI, TmpInst, *this);
|
||||
|
||||
// Emit unwinding stuff for frame-related instructions
|
||||
if (EnableARMEHABI && MI->getFlag(MachineInstr::FrameSetup))
|
||||
EmitUnwindingInstruction(MI);
|
||||
|
||||
OutStreamer.EmitInstruction(TmpInst);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue