Mercurial > hg > CbC > CbC_llvm
view llvm/tools/dsymutil/MachOUtils.h @ 198:cef006dc7fd5
CurLexer vanish after EnterMacro finish
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 02 Jun 2021 23:09:47 +0900 |
parents | 0572611fdcc8 |
children | c4bab56944e8 |
line wrap: on
line source
//===-- MachOUtils.h - Mach-o specific helpers for dsymutil --------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef LLVM_TOOLS_DSYMUTIL_MACHOUTILS_H #define LLVM_TOOLS_DSYMUTIL_MACHOUTILS_H #include "SymbolMap.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/FileSystem.h" #include "llvm/Support/VirtualFileSystem.h" #include <string> namespace llvm { class MCStreamer; class raw_fd_ostream; namespace dsymutil { class DebugMap; struct LinkOptions; namespace MachOUtils { struct ArchAndFile { std::string Arch; std::unique_ptr<llvm::sys::fs::TempFile> File; llvm::Error createTempFile(); llvm::StringRef path() const; ArchAndFile(StringRef Arch) : Arch(std::string(Arch)) {} ArchAndFile(ArchAndFile &&A) = default; ArchAndFile &operator=(ArchAndFile &&A) = default; ~ArchAndFile(); }; bool generateUniversalBinary(SmallVectorImpl<ArchAndFile> &ArchFiles, StringRef OutputFileName, const LinkOptions &, StringRef SDKPath); bool generateDsymCompanion(llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS, const DebugMap &DM, SymbolMapTranslator &Translator, MCStreamer &MS, raw_fd_ostream &OutFile); std::string getArchName(StringRef Arch); } // namespace MachOUtils } // namespace dsymutil } // namespace llvm #endif // LLVM_TOOLS_DSYMUTIL_MACHOUTILS_H