aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/TextAPI/MachO/InterfaceFile.cpp
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2018-11-29 15:47:24 +0000
committerHans Wennborg <hans@hanshq.net>2018-11-29 15:47:24 +0000
commite632286d24083b0e8fb4ed26bf3c20d3c325a1f5 (patch)
tree0502d32d2d0f420ae077f201281d90c6ad0a00d4 /llvm/lib/TextAPI/MachO/InterfaceFile.cpp
parent4fb02effccf359d50cb71cf60ba71ea31efe39b7 (diff)
downloadllvm-e632286d24083b0e8fb4ed26bf3c20d3c325a1f5.zip
llvm-e632286d24083b0e8fb4ed26bf3c20d3c325a1f5.tar.gz
llvm-e632286d24083b0e8fb4ed26bf3c20d3c325a1f5.tar.bz2
Revert r347823 "[TextAPI] Switch back to a custom Platform enum."
It broke the Windows buildbots, e.g. http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/21829/steps/test/logs/stdio This also reverts the follow-ups: r347824, r347827, and r347836. llvm-svn: 347874
Diffstat (limited to 'llvm/lib/TextAPI/MachO/InterfaceFile.cpp')
-rw-r--r--llvm/lib/TextAPI/MachO/InterfaceFile.cpp86
1 files changed, 0 insertions, 86 deletions
diff --git a/llvm/lib/TextAPI/MachO/InterfaceFile.cpp b/llvm/lib/TextAPI/MachO/InterfaceFile.cpp
deleted file mode 100644
index e252356..0000000
--- a/llvm/lib/TextAPI/MachO/InterfaceFile.cpp
+++ /dev/null
@@ -1,86 +0,0 @@
-//===- lib/TextAPI/InterfaceFile.cpp - Interface File -----------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-///
-/// \file
-/// \brief Implements the Interface File.
-///
-//===----------------------------------------------------------------------===//
-
-#include "llvm/TextAPI/MachO/InterfaceFile.h"
-#include <iomanip>
-#include <sstream>
-
-using namespace llvm::MachO;
-
-namespace llvm {
-namespace MachO {
-namespace detail {
-template <typename C>
-typename C::iterator addEntry(C &Container, StringRef InstallName) {
- auto I =
- std::lower_bound(std::begin(Container), std::end(Container), InstallName,
- [](const InterfaceFileRef &LHS, const StringRef &RHS) {
- return LHS.getInstallName() < RHS;
- });
- if ((I != std::end(Container)) && !(InstallName < I->getInstallName()))
- return I;
-
- return Container.emplace(I, InstallName);
-}
-} // end namespace detail.
-
-void InterfaceFile::addAllowableClient(StringRef Name,
- ArchitectureSet Architectures) {
- auto Client = detail::addEntry(AllowableClients, Name);
- Client->addArchitectures(Architectures);
-}
-
-void InterfaceFile::addReexportedLibrary(StringRef InstallName,
- ArchitectureSet Architectures) {
- auto Lib = detail::addEntry(ReexportedLibraries, InstallName);
- Lib->addArchitectures(Architectures);
-}
-
-void InterfaceFile::addUUID(Architecture Arch, StringRef UUID) {
- auto I = std::lower_bound(UUIDs.begin(), UUIDs.end(), Arch,
- [](const std::pair<Architecture, std::string> &LHS,
- Architecture RHS) { return LHS.first < RHS; });
-
- if ((I != UUIDs.end()) && !(Arch < I->first)) {
- I->second = UUID;
- return;
- }
-
- UUIDs.emplace(I, Arch, UUID);
- return;
-}
-
-void InterfaceFile::addUUID(Architecture Arch, uint8_t UUID[16]) {
- std::stringstream Stream;
- for (unsigned i = 0; i < 16; ++i) {
- if (i == 4 || i == 6 || i == 8 || i == 10)
- Stream << '-';
- Stream << std::setfill('0') << std::setw(2) << std::uppercase << std::hex
- << static_cast<int>(UUID[i]);
- }
- addUUID(Arch, Stream.str());
-}
-
-void InterfaceFile::addSymbol(SymbolKind Kind, StringRef Name,
- ArchitectureSet Archs, SymbolFlags Flags) {
- Name = copyString(Name);
- auto result = Symbols.try_emplace(SymbolsMapKey{Kind, Name}, nullptr);
- if (result.second)
- result.first->second = new (Allocator) Symbol{Kind, Name, Archs, Flags};
- else
- result.first->second->addArchitectures(Archs);
-}
-
-} // end namespace MachO.
-} // end namespace llvm.