In LLDB, when parsing type units, we don't need to parse the whole line table. Instead, we only need to parse the support files from the line table prologue. To make that possible, this patch moves the respective functions from the LineTable into the Prologue. Because I don't think users of the LineTable should have to know that these files come from the Prologue, I've left the original methods in place, and made them redirect to the LineTable.
Details
Details
- Reviewers
dblaikie probinson wolfgangp - Commits
- rGca16d280f7ed: Re-land "[DebugInfo] Move function from line table to the prologue (NFC)"
rLLD366164: Re-land "[DebugInfo] Move function from line table to the prologue (NFC)"
rL366164: Re-land "[DebugInfo] Move function from line table to the prologue (NFC)"
rG509903e88726: [DebugInfo] Move function from line table to the prologue (NFC)
rL366158: [DebugInfo] Move function from line table to the prologue (NFC)
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
This change broke lld:
/b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:323:28: error: conversion function from 'nullptr_t' to 'llvm::StringRef' invokes a deleted function it->second.file, nullptr, ^~~~~~~ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:1637:21: note: in instantiation of member function 'lld::elf::ObjFile<llvm::object::ELFType<llvm::support::little, false> >::getVariableLoc' requested here template class elf::ObjFile<ELF32LE>; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/ADT/StringRef.h:79:5: note: 'StringRef' has been explicitly marked deleted here StringRef(std::nullptr_t) = delete; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:263:59: note: passing argument to parameter 'CompDir' here bool getFileNameByIndex(uint64_t FileIndex, StringRef CompDir, ^ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:323:28: error: conversion function from 'nullptr_t' to 'llvm::StringRef' invokes a deleted function it->second.file, nullptr, ^~~~~~~ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:1638:21: note: in instantiation of member function 'lld::elf::ObjFile<llvm::object::ELFType<llvm::support::big, false> >::getVariableLoc' requested here template class elf::ObjFile<ELF32BE>; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/ADT/StringRef.h:79:5: note: 'StringRef' has been explicitly marked deleted here StringRef(std::nullptr_t) = delete; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:263:59: note: passing argument to parameter 'CompDir' here bool getFileNameByIndex(uint64_t FileIndex, StringRef CompDir, ^ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:323:28: error: conversion function from 'nullptr_t' to 'llvm::StringRef' invokes a deleted function it->second.file, nullptr, ^~~~~~~ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:1639:21: note: in instantiation of member function 'lld::elf::ObjFile<llvm::object::ELFType<llvm::support::little, true> >::getVariableLoc' requested here template class elf::ObjFile<ELF64LE>; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/ADT/StringRef.h:79:5: note: 'StringRef' has been explicitly marked deleted here StringRef(std::nullptr_t) = delete; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:263:59: note: passing argument to parameter 'CompDir' here bool getFileNameByIndex(uint64_t FileIndex, StringRef CompDir, ^ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:323:28: error: conversion function from 'nullptr_t' to 'llvm::StringRef' invokes a deleted function it->second.file, nullptr, ^~~~~~~ /b/s/w/ir/k/llvm-project/lld/ELF/InputFiles.cpp:1640:21: note: in instantiation of member function 'lld::elf::ObjFile<llvm::object::ELFType<llvm::support::big, true> >::getVariableLoc' requested here template class elf::ObjFile<ELF64BE>; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/ADT/StringRef.h:79:5: note: 'StringRef' has been explicitly marked deleted here StringRef(std::nullptr_t) = delete; ^ /b/s/w/ir/k/llvm-project/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:263:59: note: passing argument to parameter 'CompDir' here bool getFileNameByIndex(uint64_t FileIndex, StringRef CompDir, ^ 4 errors generated.