mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-25 04:39:44 +00:00
use Label->isDefined() instead of isLabelDeleted() now that we
consistently use MCSymbol and only call this predicate after they should have been emitted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98461 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
53d00241fb
commit
b91306053d
@ -224,14 +224,6 @@ public:
|
||||
LabelIDList[LabelID - 1] = 0;
|
||||
}
|
||||
|
||||
/// isLabelDeleted - Return true if the label was deleted.
|
||||
/// FIXME: This should eventually be eliminated and use the 'is emitted' bit
|
||||
/// on MCSymbol.
|
||||
bool isLabelDeleted(unsigned LabelID) const {
|
||||
assert(LabelID <= LabelIDList.size() && "Debug label ID out of range.");
|
||||
return LabelID == 0 || LabelIDList[LabelID - 1] == 0;
|
||||
}
|
||||
|
||||
/// getFrameMoves - Returns a reference to a list of moves done in the current
|
||||
/// function's prologue. Used to construct frame maps for debug and exception
|
||||
/// handling comsumers.
|
||||
|
@ -2615,7 +2615,8 @@ void DwarfDebug::emitDebugLines() {
|
||||
for (unsigned i = 0, N = LineInfos.size(); i < N; ++i) {
|
||||
const SrcLineInfo &LineInfo = LineInfos[i];
|
||||
unsigned LabelID = LineInfo.getLabelID();
|
||||
if (MMI->isLabelDeleted(LabelID)) continue;
|
||||
MCSymbol *Label = getDWLabel("label", LabelID);
|
||||
if (!Label->isDefined()) continue; // Not emitted, in dead code.
|
||||
|
||||
if (LineInfo.getLine() == 0) continue;
|
||||
|
||||
@ -2638,8 +2639,8 @@ void DwarfDebug::emitDebugLines() {
|
||||
Asm->EmitInt8(dwarf::DW_LNE_set_address);
|
||||
|
||||
Asm->OutStreamer.AddComment("Location label");
|
||||
Asm->OutStreamer.EmitSymbolValue(getDWLabel("label", LabelID),
|
||||
TD->getPointerSize(), 0/*AddrSpace*/);
|
||||
Asm->OutStreamer.EmitSymbolValue(Label, TD->getPointerSize(),
|
||||
0/*AddrSpace*/);
|
||||
|
||||
// If change of source, then switch to the new source.
|
||||
if (Source != LineInfo.getSourceID()) {
|
||||
|
@ -248,17 +248,17 @@ void DwarfPrinter::EmitFrameMoves(MCSymbol *BaseLabel,
|
||||
for (unsigned i = 0, N = Moves.size(); i < N; ++i) {
|
||||
const MachineMove &Move = Moves[i];
|
||||
unsigned LabelID = Move.getLabelID();
|
||||
|
||||
// Throw out move if the label is invalid.
|
||||
if (LabelID && MMI->isLabelDeleted(LabelID))
|
||||
continue;
|
||||
if (LabelID == 0) continue;
|
||||
MCSymbol *Label = getDWLabel("label", LabelID);
|
||||
if (!Label->isDefined()) continue; // Not emitted, in dead code.
|
||||
|
||||
const MachineLocation &Dst = Move.getDestination();
|
||||
const MachineLocation &Src = Move.getSource();
|
||||
|
||||
// Advance row if new location.
|
||||
if (BaseLabel && LabelID) {
|
||||
MCSymbol *ThisSym = getDWLabel("label", LabelID);
|
||||
if (BaseLabel) {
|
||||
MCSymbol *ThisSym = Label;
|
||||
if (ThisSym != BaseLabel) {
|
||||
EmitCFAByte(dwarf::DW_CFA_advance_loc4);
|
||||
EmitDifference(ThisSym, BaseLabel, true);
|
||||
|
Loading…
Reference in New Issue
Block a user