@@ -27,14 +27,14 @@ using namespace llvm::object;
2727
2828class MachODebugMapParser {
2929public:
30- MachODebugMapParser (llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS ,
31- StringRef BinaryPath, ArrayRef<std::string> Archs,
30+ MachODebugMapParser (BinaryHolder &BinHolder, StringRef BinaryPath ,
31+ ArrayRef<std::string> Archs,
3232 ArrayRef<std::string> DSYMSearchPaths,
3333 StringRef PathPrefix = " " , StringRef VariantSuffix = " " ,
3434 bool Verbose = false )
3535 : BinaryPath(std::string(BinaryPath)), Archs(Archs),
3636 DSYMSearchPaths (DSYMSearchPaths), PathPrefix(std::string(PathPrefix)),
37- VariantSuffix(std::string(VariantSuffix)), BinHolder(VFS, Verbose ),
37+ VariantSuffix(std::string(VariantSuffix)), BinHolder(BinHolder ),
3838 CurrentDebugMapObject(nullptr ), SkipDebugMapObject(false ) {}
3939
4040 // / Parses and returns the DebugMaps of the input binary. The binary contains
@@ -56,7 +56,7 @@ class MachODebugMapParser {
5656 std::string VariantSuffix;
5757
5858 // / Owns the MemoryBuffer for the main binary.
59- BinaryHolder BinHolder;
59+ BinaryHolder & BinHolder;
6060 // / Map of the binary symbol addresses.
6161 StringMap<uint64_t > MainBinarySymbolAddresses;
6262 StringRef MainBinaryStrings;
@@ -854,24 +854,25 @@ void MachODebugMapParser::loadMainBinarySymbols(
854854namespace llvm {
855855namespace dsymutil {
856856llvm::ErrorOr<std::vector<std::unique_ptr<DebugMap>>>
857- parseDebugMap (llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS ,
858- StringRef InputFile, ArrayRef<std::string> Archs,
857+ parseDebugMap (BinaryHolder &BinHolder, StringRef InputFile ,
858+ ArrayRef<std::string> Archs,
859859 ArrayRef<std::string> DSYMSearchPaths, StringRef PrependPath,
860860 StringRef VariantSuffix, bool Verbose, bool InputIsYAML) {
861861 if (InputIsYAML)
862- return DebugMap::parseYAMLDebugMap (InputFile, PrependPath, Verbose);
862+ return DebugMap::parseYAMLDebugMap (BinHolder, InputFile, PrependPath,
863+ Verbose);
863864
864- MachODebugMapParser Parser (VFS , InputFile, Archs, DSYMSearchPaths,
865+ MachODebugMapParser Parser (BinHolder , InputFile, Archs, DSYMSearchPaths,
865866 PrependPath, VariantSuffix, Verbose);
866867
867868 return Parser.parse ();
868869}
869870
870- bool dumpStab (llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS ,
871- StringRef InputFile, ArrayRef<std::string> Archs,
871+ bool dumpStab (BinaryHolder &BinHolder, StringRef InputFile ,
872+ ArrayRef<std::string> Archs,
872873 ArrayRef<std::string> DSYMSearchPaths, StringRef PrependPath,
873874 StringRef VariantSuffix) {
874- MachODebugMapParser Parser (VFS , InputFile, Archs, DSYMSearchPaths,
875+ MachODebugMapParser Parser (BinHolder , InputFile, Archs, DSYMSearchPaths,
875876 PrependPath, VariantSuffix, false );
876877 return Parser.dumpStab ();
877878}
0 commit comments