Skip to content
DwarfDebug.cpp 99.8 KiB
Newer Older
      // Skip special LLVM prefix that is used to inform the asm printer to not
      // emit usual symbol prefix before the symbol name. This happens for
      // Objective-C symbol names and symbol whose name is replaced using GCC's
      // __asm__ attribute.
      if (LName[0] == 1)
        LName = &LName[1];
      Asm->EmitString(LName);
    }
    Asm->EOL("MIPS linkage name");
    Asm->EmitString(Name); Asm->EOL("Function name");
    Asm->EmitULEB128Bytes(Labels.size()); Asm->EOL("Inline count");
    for (SmallVector<unsigned, 4>::iterator LI = Labels.begin(),
           LE = Labels.end(); LI != LE; ++LI) {
Devang Patel's avatar
Devang Patel committed
      DIE *SP = ModuleCU->getDieMapSlotFor(Node);
      Asm->EmitInt32(SP->getOffset()); Asm->EOL("DIE offset");
      if (TD->getPointerSize() == sizeof(int32_t))
        O << MAI->getData32bitsDirective();
        O << MAI->getData64bitsDirective();
      PrintLabelName("label", *LI); Asm->EOL("low_pc");
    }
  }
  EmitLabel("debug_inlined_end", 1);
  Asm->EOL();