forked from OSchip/llvm-project
Fix some EH failures on NNT I introduced in r98461
llvm-svn: 98471
This commit is contained in:
parent
04857fab70
commit
5a6e262c72
|
@ -247,17 +247,19 @@ void DwarfPrinter::EmitFrameMoves(MCSymbol *BaseLabel,
|
||||||
|
|
||||||
for (unsigned i = 0, N = Moves.size(); i < N; ++i) {
|
for (unsigned i = 0, N = Moves.size(); i < N; ++i) {
|
||||||
const MachineMove &Move = Moves[i];
|
const MachineMove &Move = Moves[i];
|
||||||
|
MCSymbol *Label = 0;
|
||||||
unsigned LabelID = Move.getLabelID();
|
unsigned LabelID = Move.getLabelID();
|
||||||
// Throw out move if the label is invalid.
|
// Throw out move if the label is invalid.
|
||||||
if (LabelID == 0) continue;
|
if (LabelID) {
|
||||||
MCSymbol *Label = getDWLabel("label", LabelID);
|
Label = getDWLabel("label", LabelID);
|
||||||
if (!Label->isDefined()) continue; // Not emitted, in dead code.
|
if (!Label->isDefined()) continue; // Not emitted, in dead code.
|
||||||
|
}
|
||||||
|
|
||||||
const MachineLocation &Dst = Move.getDestination();
|
const MachineLocation &Dst = Move.getDestination();
|
||||||
const MachineLocation &Src = Move.getSource();
|
const MachineLocation &Src = Move.getSource();
|
||||||
|
|
||||||
// Advance row if new location.
|
// Advance row if new location.
|
||||||
if (BaseLabel) {
|
if (BaseLabel && Label) {
|
||||||
MCSymbol *ThisSym = Label;
|
MCSymbol *ThisSym = Label;
|
||||||
if (ThisSym != BaseLabel) {
|
if (ThisSym != BaseLabel) {
|
||||||
EmitCFAByte(dwarf::DW_CFA_advance_loc4);
|
EmitCFAByte(dwarf::DW_CFA_advance_loc4);
|
||||||
|
|
Loading…
Reference in New Issue