[llvm-commits] [llvm] r130187 - in /llvm/trunk/lib: CodeGen/AsmPrinter/AsmPrinter.cpp CodeGen/AsmPrinter/AsmPrinterDwarf.cpp Target/X86/X86FrameLowering.cpp
Rafael Espindola
rafael.espindola at gmail.com
Mon Apr 25 20:58:56 PDT 2011
Author: rafael
Date: Mon Apr 25 22:58:56 2011
New Revision: 130187
URL: http://llvm.org/viewvc/llvm-project?rev=130187&view=rev
Log:
Print all the moves at a given label instead of just the first one.
Remove previous DwarfCFI hack.
Modified:
llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
llvm/trunk/lib/Target/X86/X86FrameLowering.cpp
Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp?rev=130187&r1=130186&r2=130187&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Mon Apr 25 22:58:56 2011
@@ -607,16 +607,16 @@
const MachineFunction &MF = *MI.getParent()->getParent();
MachineModuleInfo &MMI = MF.getMMI();
std::vector<MachineMove> &Moves = MMI.getFrameMoves();
- const MachineMove *Move = NULL;
+ bool FoundOne = false;
+ (void)FoundOne;
for (std::vector<MachineMove>::iterator I = Moves.begin(),
E = Moves.end(); I != E; ++I) {
if (I->getLabel() == Label) {
- Move = &*I;
- break;
+ EmitCFIFrameMove(*I);
+ FoundOne = true;
}
}
- assert(Move);
- EmitCFIFrameMove(*Move);
+ assert(FoundOne);
}
/// EmitFunctionBody - This method emits the body and trailer for a
Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp?rev=130187&r1=130186&r2=130187&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp Mon Apr 25 22:58:56 2011
@@ -300,7 +300,7 @@
} else {
assert(!Dst.isReg() && "Machine move not supported yet.");
OutStreamer.EmitCFIOffset(RI->getDwarfRegNum(Src.getReg(), true),
- -Dst.getOffset());
+ Dst.getOffset());
}
}
Modified: llvm/trunk/lib/Target/X86/X86FrameLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86FrameLowering.cpp?rev=130187&r1=130186&r2=130187&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86FrameLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86FrameLowering.cpp Mon Apr 25 22:58:56 2011
@@ -477,15 +477,6 @@
.addReg(StackPtr);
if (needsFrameMoves) {
- const MCAsmInfo &MAI = MMI.getContext().getAsmInfo();
- if (MAI.getExceptionHandlingType() == ExceptionHandling::DwarfCFI) {
- MCSymbol *FrameLabel0 = MMI.getContext().CreateTempSymbol();
- BuildMI(MBB, MBBI, DL, TII.get(X86::PROLOG_LABEL)).addSym(FrameLabel0);
- MachineLocation FPSrc0(FramePtr);
- MachineLocation FPDst0(FramePtr, -2 * stackGrowth);
- Moves.push_back(MachineMove(FrameLabel0, FPDst0, FPSrc0));
- }
-
// Mark effective beginning of when frame pointer becomes valid.
MCSymbol *FrameLabel = MMI.getContext().CreateTempSymbol();
BuildMI(MBB, MBBI, DL, TII.get(X86::PROLOG_LABEL)).addSym(FrameLabel);
More information about the llvm-commits
mailing list