Author: Konstantin Schwarz
Date: 2019-09-03T11:55:46+02:00
New Revision: 2ca7535d6caa77de04bf3d80171376d26bde3729

URL: 
https://github.com/llvm/llvm-project/commit/2ca7535d6caa77de04bf3d80171376d26bde3729
DIFF: 
https://github.com/llvm/llvm-project/commit/2ca7535d6caa77de04bf3d80171376d26bde3729.diff

LOG: Revert all changes done on the htc/master branch.

For upcoming toolchains, we need a new concept for RLM license checks.
Moreover, the HighTec driver was mostly rewritten on the htc/release/7.x branch.

The changes are still available for later (partial) reuse.

Added: 
    

Modified: 
    clang/lib/Basic/Targets.cpp
    clang/lib/Basic/Targets.h
    clang/lib/Basic/Targets/AArch64.cpp
    clang/lib/Basic/Targets/ARM.cpp
    clang/lib/Basic/Version.cpp
    clang/lib/Driver/CMakeLists.txt
    clang/lib/Driver/Driver.cpp
    clang/lib/Frontend/InitHeaderSearch.cpp
    clang/tools/driver/CMakeLists.txt
    clang/tools/driver/driver.cpp
    compiler-rt/cmake/builtin-config-ix.cmake
    compiler-rt/lib/builtins/CMakeLists.txt
    compiler-rt/lib/builtins/int_util.c
    libcxx/include/CMakeLists.txt
    libcxx/include/__config
    libcxx/include/__locale
    libcxx/include/math.h
    libcxx/src/locale.cpp
    libcxx/src/random.cpp
    libunwind/CMakeLists.txt
    lld/Common/Version.cpp

Removed: 
    clang/lib/Driver/ToolChains/HighTec.cpp
    clang/lib/Driver/ToolChains/HighTec.h
    clang/rlm_libs/x64_l/librlm.a
    clang/rlm_libs/x64_w/rlm1233.dll
    clang/rlm_libs/x64_w/rlm1233.lib
    clang/tools/driver/LicenseManagerBase.cpp
    clang/tools/driver/LicenseManagerBase.h
    clang/tools/driver/license.h
    libcxx/include/support/hightec/locale_htc.h


################################################################################
diff  --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index 5ee68fd92ce2a..1ef2fe3b81416 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -112,10 +112,6 @@ void addMinGWDefines(const llvm::Triple &Triple, const 
LangOptions &Opts,
   addCygMingDefines(Opts, Builder);
 }
 
-void addHighTecDefines(MacroBuilder &Builder) {
-  Builder.defineMacro("__HIGHTEC__");
-}
-
 
//===----------------------------------------------------------------------===//
 // Driver code
 
//===----------------------------------------------------------------------===//

diff  --git a/clang/lib/Basic/Targets.h b/clang/lib/Basic/Targets.h
index 3c31890c8e15b..d450aa3f37ed6 100644
--- a/clang/lib/Basic/Targets.h
+++ b/clang/lib/Basic/Targets.h
@@ -46,9 +46,6 @@ void addMinGWDefines(const llvm::Triple &Triple, const 
clang::LangOptions &Opts,
 LLVM_LIBRARY_VISIBILITY
 void addCygMingDefines(const clang::LangOptions &Opts,
                        clang::MacroBuilder &Builder);
-
-LLVM_LIBRARY_VISIBILITY
-void addHighTecDefines(clang::MacroBuilder &Builder);
 } // namespace targets
 } // namespace clang
 #endif // LLVM_CLANG_LIB_BASIC_TARGETS_H

diff  --git a/clang/lib/Basic/Targets/AArch64.cpp 
b/clang/lib/Basic/Targets/AArch64.cpp
index ddca8369b7423..3444591ac5933 100644
--- a/clang/lib/Basic/Targets/AArch64.cpp
+++ b/clang/lib/Basic/Targets/AArch64.cpp
@@ -211,8 +211,6 @@ void AArch64TargetInfo::getTargetDefines(const LangOptions 
&Opts,
   Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2");
   Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4");
   Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8");
-
-  addHighTecDefines(Builder);
 }
 
 ArrayRef<Builtin::Info> AArch64TargetInfo::getTargetBuiltins() const {

diff  --git a/clang/lib/Basic/Targets/ARM.cpp b/clang/lib/Basic/Targets/ARM.cpp
index 8d49f124c854a..19fcc5abea97e 100644
--- a/clang/lib/Basic/Targets/ARM.cpp
+++ b/clang/lib/Basic/Targets/ARM.cpp
@@ -752,8 +752,6 @@ void ARMTargetInfo::getTargetDefines(const LangOptions 
&Opts,
     getTargetDefinesARMV82A(Opts, Builder);
     break;
   }
-
-  addHighTecDefines(Builder);
 }
 
 const Builtin::Info ARMTargetInfo::BuiltinInfo[] = {

diff  --git a/clang/lib/Basic/Version.cpp b/clang/lib/Basic/Version.cpp
index bef40f9f1201c..c2b7753d41288 100644
--- a/clang/lib/Basic/Version.cpp
+++ b/clang/lib/Basic/Version.cpp
@@ -25,7 +25,6 @@
 namespace clang {
 
 std::string getClangRepositoryPath() {
-  return "clang:";
 #if defined(CLANG_REPOSITORY_STRING)
   return CLANG_REPOSITORY_STRING;
 #else
@@ -56,7 +55,6 @@ std::string getClangRepositoryPath() {
 }
 
 std::string getLLVMRepositoryPath() {
-  return "llvm: ";
 #ifdef LLVM_REPOSITORY
   StringRef URL(LLVM_REPOSITORY);
 #else

diff  --git a/clang/lib/Driver/CMakeLists.txt b/clang/lib/Driver/CMakeLists.txt
index 637907aa91fe3..2b03c9f7001f7 100644
--- a/clang/lib/Driver/CMakeLists.txt
+++ b/clang/lib/Driver/CMakeLists.txt
@@ -45,7 +45,6 @@ add_clang_library(clangDriver
   ToolChains/Fuchsia.cpp
   ToolChains/Gnu.cpp
   ToolChains/Haiku.cpp
-  ToolChains/HighTec.cpp
   ToolChains/HIP.cpp
   ToolChains/Hexagon.cpp
   ToolChains/Linux.cpp

diff  --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index 1caf63bf354f7..952a716cb6e61 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -26,7 +26,6 @@
 #include "ToolChains/HIP.h"
 #include "ToolChains/Haiku.h"
 #include "ToolChains/Hexagon.h"
-#include "ToolChains/HighTec.h"
 #include "ToolChains/Lanai.h"
 #include "ToolChains/Linux.h"
 #include "ToolChains/MSVC.h"
@@ -4283,12 +4282,6 @@ const ToolChain &Driver::getToolChain(const ArgList 
&Args,
 
   auto &TC = ToolChains[Target.str()];
   if (!TC) {
-
-    if (toolchains::HighTec::handlesTarget(Target)) {
-      TC = llvm::make_unique<toolchains::HighTec>(*this, Target, Args);
-      return *TC;
-    }
-
     switch (Target.getOS()) {
     case llvm::Triple::Haiku:
       TC = llvm::make_unique<toolchains::Haiku>(*this, Target, Args);

diff  --git a/clang/lib/Driver/ToolChains/HighTec.cpp 
b/clang/lib/Driver/ToolChains/HighTec.cpp
deleted file mode 100644
index 367137f771b08..0000000000000
--- a/clang/lib/Driver/ToolChains/HighTec.cpp
+++ /dev/null
@@ -1,311 +0,0 @@
-//===--- HighTec.cpp - HighTec ToolChain Implementation --------*- C++ -*-===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include "HighTec.h"
-#include "Arch/ARM.h"
-#include "clang/Basic/Version.h"
-#include "clang/Basic/VirtualFileSystem.h"
-#include "clang/Driver/Compilation.h"
-#include "clang/Driver/Driver.h"
-#include "clang/Driver/DriverDiagnostic.h"
-#include "clang/Driver/Options.h"
-#include "llvm/Option/ArgList.h"
-#include "llvm/Support/Path.h"
-#include "llvm/Support/TargetParser.h"
-#include "llvm/Support/raw_ostream.h"
-
-using namespace llvm::opt;
-using namespace clang;
-using namespace clang::driver;
-using namespace clang::driver::tools;
-using namespace clang::driver::toolchains;
-
-static std::string getArchitecture(llvm::Triple Triple) {
-
-  llvm::StringRef Arch = llvm::Triple::getArchTypePrefix(Triple.getArch());
-  if (Arch != "")
-    return Arch;
-
-  llvm_unreachable("Unknown architecture specified.");
-}
-
-static std::string getArchVersionString(StringRef Arch) {
-
-  switch (llvm::ARM::parseArch(llvm::ARM::getCanonicalArchName(Arch))) {
-    default:
-      // For now, only support v7 & v8
-      return "";
-    case llvm::ARM::ArchKind::ARMV8A:
-      return "v8-a";
-    case llvm::ARM::ArchKind::ARMV8_1A:
-      return "v8.1-a";
-    case llvm::ARM::ArchKind::ARMV8_2A:
-      return "v8-2-a";
-    case llvm::ARM::ArchKind::ARMV8_3A:
-      return "v8-3-a";
-    case llvm::ARM::ArchKind::ARMV8R:
-      return "v8-r";
-    case llvm::ARM::ArchKind::ARMV8MBaseline:
-      return "v8-m.base";
-    case llvm::ARM::ArchKind::ARMV8MMainline:
-      return "v8-m.main";
-    case llvm::ARM::ArchKind::ARMV7A:
-      return "v7-a";
-    case llvm::ARM::ArchKind::ARMV7R:
-      return "v7-r";
-    case llvm::ARM::ArchKind::ARMV7EM:
-      return "v7e-m";
-    case llvm::ARM::ArchKind::ARMV7M:
-      return "v7-m";
-    case llvm::ARM::ArchKind::ARMV7S:
-      return "v7-s";
-    case llvm::ARM::ArchKind::ARMV7K:
-      return "v7-k";
-    case llvm::ARM::ArchKind::ARMV7VE:
-      return "v7ve";
-    case llvm::ARM::ArchKind::ARMV6M:
-      return "v6-m";
-  }
-}
-
-static std::string getArchVersion(llvm::Triple Triple, const 
llvm::opt::ArgList &Args) {
-
-
-  if (const Arg *A = Args.getLastArg(options::OPT_march_EQ)) {
-      return getArchVersionString(A->getValue());
-  } else {
-
-      // The architecture might be part of the target option, parse it
-      if (const Arg *A = Args.getLastArg(options::OPT_target)) {
-          StringRef TargetString = A->getValue();
-          SmallVector<StringRef, 4> Components;
-          TargetString.split(Components, '-');
-          if (Components.size() > 0)
-              return getArchVersionString(Components[0]);
-          else
-            // This should not occur
-            return "";
-      } else {
-          // This should not occur
-          return "";
-      }
-  }
-}
-
-static std::string getFloatABI(const Driver &D, llvm::Triple Triple, const 
llvm::opt::ArgList &Args) {
-
-  // For AArch64, we currently do not support 
diff erent float abi's
-  if (Triple.getArch() == llvm::Triple::aarch64 || Triple.getArch() == 
llvm::Triple::aarch64_be)
-    return "";
-
-  if (Arg *A =
-      Args.getLastArg(options::OPT_msoft_float, options::OPT_mhard_float,
-                      options::OPT_mfloat_abi_EQ)) {
-      if (A->getOption().matches(options::OPT_msoft_float)) {
-          return "soft";
-      } else if (A->getOption().matches(options::OPT_mhard_float)) {
-          return "hard";
-      } else {
-          std::string ABI =  llvm::StringSwitch<std::string>(A->getValue())
-                                               .Case("soft", "soft")
-                                               .Case("softfp", "softfp")
-                                               .Case("hard", "hard")
-                                               .Default("");
-
-          if (ABI == "" && !StringRef(A->getValue()).empty()) {
-              D.Diag(diag::err_drv_invalid_mfloat_abi) << A->getAsString(Args);
-          } else {
-              return ABI;
-          }
-      }
-  }
-
-
-  if (Triple.getEnvironment() == llvm::Triple::EABI) {
-      return "softfp";
-  } else {
-      return "hard";
-  }
-}
-
-static std::string getISA(llvm::Triple Triple, const llvm::opt::ArgList &Args) 
{
-
-  llvm::StringRef Arch = Args.getLastArgValue(options::OPT_march_EQ);
-  bool IsArmArch = Triple.getArch() == llvm::Triple::arm;
-  bool IsThumbArch = Triple.getArch() == llvm::Triple::thumb;
-  bool IsThumbMode = IsThumbArch ||
-      Args.hasFlag(options::OPT_mthumb, options::OPT_mno_thumb, false) ||
-      (IsArmArch && llvm::ARM::parseArchISA(Arch) == 
llvm::ARM::ISAKind::THUMB);
-
-  return IsThumbMode ? "thumb" : (IsArmArch ? "arm" : "");
-}
-
-static std::string getTargetDir(const Driver &D,
-                                llvm::Triple Triple) {
-  SmallString<128> P(llvm::sys::path::parent_path(D.Dir));
-  llvm::sys::path::append(P, getArchitecture(Triple));
-  return P.str();
-}
-
-static std::string getTargetLibDir(const Driver &D, llvm::Triple Triple, const 
llvm::opt::ArgList &Args) {
-  std::string archVersion = getArchVersion(Triple, Args);
-  std::string ISA = getISA(Triple, Args);
-  std::string floatABI = getFloatABI(D, Triple, Args);
-
-  SmallString<128> P(getTargetDir(D, Triple));
-
-  llvm::sys::path::append(P, "lib");
-  llvm::sys::path::append(P, archVersion, ISA, floatABI);
-  return P.str();
-}
-
-std::string HighTec::getCompilerRT(const llvm::opt::ArgList &Args,
-                                   StringRef Component,
-                                   bool Shared) const {
-
-  SmallString<128> P(getTargetLibDir(getDriver(), getTriple(), Args));
-  llvm::sys::path::append(P, Twine("libclang_rt.") + Component + ".a" );
-  return P.str();
-}
-
-HighTec::HighTec(const Driver &D, const llvm::Triple &Triple,
-                 const ArgList &Args)
-: ToolChain(D, Triple, Args) {
-  getProgramPaths().push_back(getDriver().getInstalledDir());
-  if (getDriver().getInstalledDir() != D.Dir)
-    getProgramPaths().push_back(D.Dir);
-
-  SmallString<128> P(getTargetLibDir(D, Triple, Args));
-  getFilePaths().push_back(P.str());
-
-  if (!D.SysRoot.empty()) {
-      SmallString<128> P(D.SysRoot);
-      llvm::sys::path::append(P, "lib");
-      getFilePaths().push_back(P.str());
-  }
-}
-
-HighTec::~HighTec() {}
-
-static bool isSupportedTarget(const llvm::Triple &Triple) {
-  if (Triple.getArch() != llvm::Triple::aarch64 &&
-      Triple.getArch() != llvm::Triple::arm &&
-      Triple.getArch() != llvm::Triple::thumb)
-    return false;
-
-  if (Triple.getVendor() != llvm::Triple::UnknownVendor)
-    return false;
-
-  if (Triple.getOS() != llvm::Triple::UnknownOS)
-    return false;
-
-  if (Triple.getEnvironment() != llvm::Triple::EABI &&
-      Triple.getEnvironment() != llvm::Triple::EABIHF)
-    return false;
-
-  return true;
-}
-
-bool HighTec::handlesTarget(const llvm::Triple &Triple) {
-  return isSupportedTarget(Triple);
-}
-
-Tool *HighTec::buildLinker() const {
-  return new tools::hightec::Linker(*this);
-}
-
-void HighTec::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
-                                        ArgStringList &CC1Args) const {
-  const Driver &D = getDriver();
-
-  if (DriverArgs.hasArg(options::OPT_nostdinc))
-    return;
-
-  if (DriverArgs.hasArg(options::OPT_nostdlibinc))
-    return;
-
-  // Add Dinkum library include path
-  SmallString<128> P(getTargetDir(D, getTriple()));
-  llvm::sys::path::append(P, "include");
-  addSystemInclude(DriverArgs, CC1Args, P);
-
-  if (!D.SysRoot.empty()) {
-      SmallString<128> P(D.SysRoot);
-      llvm::sys::path::append(P, "include");
-      addExternCSystemInclude(DriverArgs, CC1Args, P.str());
-  }
-}
-
-void HighTec::addClangTargetOptions(const ArgList &DriverArgs,
-                                    ArgStringList &CC1Args,
-                                    Action::OffloadKind) const {}
-
-void HighTec::AddClangCXXStdlibIncludeArgs(
-    const ArgList &DriverArgs, ArgStringList &CC1Args) const {
-  if (DriverArgs.hasArg(options::OPT_nostdlibinc) ||
-      DriverArgs.hasArg(options::OPT_nostdincxx))
-    return;
-
-  SmallString<128> P(getTargetDir(getDriver(), getTriple()));
-  llvm::sys::path::append(P, "include", "c++", "v1");
-  addSystemInclude(DriverArgs, CC1Args, P.str());
-}
-
-void HighTec::AddCXXStdlibLibArgs(const ArgList &Args,
-                                  ArgStringList &CmdArgs) const {
-  switch (GetCXXStdlibType(Args)) {
-    case ToolChain::CST_Libcxx:
-      CmdArgs.push_back("-lc++");
-      CmdArgs.push_back("-lc++abi");
-      CmdArgs.push_back("-lunwind");
-      break;
-
-    case ToolChain::CST_Libstdcxx:
-      llvm_unreachable("invalid stdlib name");
-  }
-}
-
-void hightec::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-                                   const InputInfo &Output,
-                                   const InputInfoList &Inputs,
-                                   const ArgList &Args,
-                                   const char *LinkingOutput) const {
-  ArgStringList CmdArgs;
-
-  auto &TC = static_cast<const toolchains::HighTec&>(getToolChain());
-  const Driver &D = TC.getDriver();
-
-  if (!D.SysRoot.empty())
-    CmdArgs.push_back(Args.MakeArgString("--sysroot=" + D.SysRoot));
-
-  if (Args.hasArg(options::OPT_static))
-    CmdArgs.push_back("-Bstatic");
-
-  CmdArgs.push_back("-o");
-  CmdArgs.push_back(Output.getFilename());
-
-  if (!Args.hasArg(options::OPT_nostdlib, options::OPT_nostartfiles)) {
-
-      // TODO: Add startup code here
-  }
-
-  TC.AddFilePathLibArgs(Args, CmdArgs);
-
-  AddLinkerInputs(TC, Inputs, Args, CmdArgs, JA);
-
-  if (!Args.hasArg(options::OPT_nostdlib, options::OPT_nodefaultlibs)) {
-      AddRunTimeLibs(TC, D, CmdArgs, Args);
-
-      CmdArgs.push_back("-ldnk");
-  }
-
-  C.addCommand(llvm::make_unique<Command>(JA, *this,
-                                          
Args.MakeArgString(TC.GetLinkerPath()),
-                                          CmdArgs, Inputs));
-}

diff  --git a/clang/lib/Driver/ToolChains/HighTec.h 
b/clang/lib/Driver/ToolChains/HighTec.h
deleted file mode 100644
index 36e8e6a6de123..0000000000000
--- a/clang/lib/Driver/ToolChains/HighTec.h
+++ /dev/null
@@ -1,99 +0,0 @@
-//===--- HighTec.h - HighTec ToolChain Implementation --------*- C++ -*-===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HIGHTEC_H_
-#define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HIGHTEC_H_
-
-#include "clang/Driver/Tool.h"
-#include "clang/Driver/ToolChain.h"
-
-#include "CommonArgs.h"
-#include "InputInfo.h"
-
-#include <string>
-
-namespace clang {
-namespace driver {
-
-namespace toolchains {
-
-class LLVM_LIBRARY_VISIBILITY HighTec : public ToolChain {
-public:
-  HighTec(const Driver &D, const llvm::Triple &Triple,
-          const llvm::opt::ArgList &Args);
-  ~HighTec() override;
-
-  static bool handlesTarget(const llvm::Triple &Triple);
-protected:
-  Tool *buildLinker() const override;
-
-public:
-  bool isCrossCompiling() const override { return true; }
-  bool HasNativeLLVMSupport() const override { return true; }
-  bool IsIntegratedAssemblerDefault() const override { return true; }
-  bool IsMathErrnoDefault() const override { return false; }
-
-  const char *getDefaultLinker() const override {
-    return "ld.lld";
-  }
-
-  RuntimeLibType GetDefaultRuntimeLibType() const override {
-    return ToolChain::RLT_CompilerRT;
-  }
-  CXXStdlibType GetDefaultCXXStdlibType() const override {
-    return ToolChain::CST_Libcxx;
-  }
-
-  std::string getCompilerRT(const llvm::opt::ArgList &Args,
-                                    StringRef Component,
-                                    bool Shared = false) const override;
-
-  bool isPICDefault() const override { return false; }
-  bool isPIEDefault() const override { return false; }
-  bool isPICDefaultForced() const override { return false; }
-  bool SupportsProfiling() const override { return false; }
-
-  unsigned GetDefaultDwarfVersion() const override { return 2; };
-
-  void AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs,
-                                 llvm::opt::ArgStringList &CC1Args) const 
override;
-  void addClangTargetOptions(const llvm::opt::ArgList &DriverArgs,
-                             llvm::opt::ArgStringList &CC1Args,
-                             Action::OffloadKind DeviceOffloadKind) const 
override;
-  std::string findLibCxxIncludePath(ToolChain::CXXStdlibType LibType) const;
-  void AddClangCXXStdlibIncludeArgs(
-      const llvm::opt::ArgList &DriverArgs,
-      llvm::opt::ArgStringList &CC1Args) const override;
-  void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args,
-                           llvm::opt::ArgStringList &CmdArgs) const override;
-};
-
-} // namespace toolchains
-
-namespace tools {
-namespace hightec {
-
-class LLVM_LIBRARY_VISIBILITY Linker : public Tool {
-public:
-  Linker(const ToolChain &TC) : Tool("hightec::Linker", "ld", TC) {}
-  bool isLinkJob() const override { return true; }
-  bool hasIntegratedCPP() const override { return false; }
-  void ConstructJob(Compilation &C, const JobAction &JA,
-                    const InputInfo &Output, const InputInfoList &Inputs,
-                    const llvm::opt::ArgList &TCArgs,
-                    const char *LinkingOutput) const override;
-};
-
-} // namespace hightec
-} // namespace tools
-
-} // namespace driver
-} // namespace clang
-
-#endif /* LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HIGHTEC_H_ */

diff  --git a/clang/lib/Frontend/InitHeaderSearch.cpp 
b/clang/lib/Frontend/InitHeaderSearch.cpp
index a2bf4a7d670c4..8a70404629d36 100644
--- a/clang/lib/Frontend/InitHeaderSearch.cpp
+++ b/clang/lib/Frontend/InitHeaderSearch.cpp
@@ -228,11 +228,6 @@ void InitHeaderSearch::AddDefaultCIncludePaths(const 
llvm::Triple &triple,
       LLVM_FALLTHROUGH;
     default:
       // FIXME: temporary hack: hard-coded paths.
-
-      if (triple.getEnvironment() == llvm::Triple::EABI ||
-          triple.getEnvironment() == llvm::Triple::EABIHF)
-        break;
-
       AddPath("/usr/local/include", System, false);
       break;
     }
@@ -358,11 +353,6 @@ void InitHeaderSearch::AddDefaultCIncludePaths(const 
llvm::Triple &triple,
     LLVM_FALLTHROUGH;
   }
   default:
-
-    if (triple.getEnvironment() == llvm::Triple::EABI ||
-        triple.getEnvironment() == llvm::Triple::EABIHF)
-      break;
-
     AddPath("/usr/include", ExternCSystem, false);
     break;
   }

diff  --git a/clang/rlm_libs/x64_l/librlm.a b/clang/rlm_libs/x64_l/librlm.a
deleted file mode 100644
index de7ce2ad52dc4..0000000000000
Binary files a/clang/rlm_libs/x64_l/librlm.a and /dev/null 
diff er

diff  --git a/clang/rlm_libs/x64_w/rlm1233.dll 
b/clang/rlm_libs/x64_w/rlm1233.dll
deleted file mode 100644
index 3b625d5de5a38..0000000000000
Binary files a/clang/rlm_libs/x64_w/rlm1233.dll and /dev/null 
diff er

diff  --git a/clang/rlm_libs/x64_w/rlm1233.lib 
b/clang/rlm_libs/x64_w/rlm1233.lib
deleted file mode 100644
index 461ee6ce340c1..0000000000000
Binary files a/clang/rlm_libs/x64_w/rlm1233.lib and /dev/null 
diff er

diff  --git a/clang/tools/driver/CMakeLists.txt 
b/clang/tools/driver/CMakeLists.txt
index 5dece1b90df10..15b0519e4111b 100644
--- a/clang/tools/driver/CMakeLists.txt
+++ b/clang/tools/driver/CMakeLists.txt
@@ -29,35 +29,11 @@ if(NOT CLANG_BUILT_STANDALONE)
   set(tablegen_deps intrinsics_gen)
 endif()
 
-set(RLM_PRODUCT_NAME
-  "arm-llvm"
-  CACHE  STRING "The name of the product as defined in RLM ")
-
-set(RLM_LIB ""
-  CACHE FILEPATH
-  "Path to librlm.a - This is used for integrating the license manager.")
-
-set(RLM_LIC ""
-  CACHE  FILEPATH "Path to the license file")
-
-if(WIN32)
-  add_library(rlm MODULE IMPORTED)
-  set (RLM_LIB "${CLANG_SOURCE_DIR}/rlm_libs/x64_w/rlm1233.lib")
-  string (REPLACE ".lib" ".dll" RLM_DLL ${RLM_LIB})
-else()
-  add_library(rlm STATIC  IMPORTED)
-  set (RLM_LIB "${CLANG_SOURCE_DIR}/rlm_libs/x64_l/librlm.a")
-endif()
-
-set_property(TARGET rlm PROPERTY IMPORTED_LOCATION ${RLM_LIB})
-
-
 add_clang_tool(clang
   driver.cpp
   cc1_main.cpp
   cc1as_main.cpp
   cc1gen_reproducer_main.cpp
-  LicenseManagerBase.cpp
 
   DEPENDS
   ${tablegen_deps}
@@ -70,16 +46,8 @@ target_link_libraries(clang
   clangDriver
   clangFrontend
   clangFrontendTool
-  rlm
   )
 
-add_definitions( 
-DRLM_BASE_VERSION="${CLANG_VERSION_MAJOR}.${CLANG_VERSION_MINOR}" )
-string(TIMESTAMP D_CLANG_BUILD_DATE "%Y.%m")
-add_definitions( -DRLM_BUILD_DATE="${D_CLANG_BUILD_DATE}" )
-add_definitions( -DRLM_LIC_FILE="${RLM_LIC}" )
-add_definitions( -DRLM_PRODUCT_NAME="${RLM_PRODUCT_NAME}" )
-
-
 if(WIN32 AND NOT CYGWIN)
   # Prevent versioning if the buildhost is targeting for Win32.
 else()
@@ -154,15 +122,6 @@ if(CLANG_ORDER_FILE AND
   endif()
 endif()
 
-if(WIN32)
-add_custom_command(
-        TARGET clang POST_BUILD
-        COMMAND ${CMAKE_COMMAND} -E copy
-                ${RLM_DLL}
-                ${LLVM_RUNTIME_OUTPUT_INTDIR}/
-        COMMENT "Copying RLM shared library to bin folder...")
-endif()
-
 if(WITH_POLLY AND LINK_POLLY_INTO_TOOLS)
   target_link_libraries(clang PRIVATE Polly)
 endif(WITH_POLLY AND LINK_POLLY_INTO_TOOLS)

diff  --git a/clang/tools/driver/LicenseManagerBase.cpp 
b/clang/tools/driver/LicenseManagerBase.cpp
deleted file mode 100644
index 2c61b62810da6..0000000000000
--- a/clang/tools/driver/LicenseManagerBase.cpp
+++ /dev/null
@@ -1,171 +0,0 @@
-#include "LicenseManagerBase.h"
-#include <iostream>
-
-#include <fstream>
-#include "llvm/Support/raw_ostream.h"
-
-#include "llvm/Config/llvm-config.h"
-#if LLVM_ON_WIN32
-#include <windows.h>
-#endif
-#if LLVM_ON_UNIX
-#include <unistd.h>
-#endif
-
-static string extractString(string str, string pattern, size_t pat_size) {
-  std::size_t verStart = str.find(pattern);
-  std::size_t firstSpace = str.find(" ", verStart);
-  if (verStart != std::string::npos && firstSpace != std::string::npos) {
-    return str.substr(verStart + pat_size, firstSpace - verStart - pat_size);
-  } else if (verStart != std::string::npos && firstSpace == std::string::npos) 
{
-    return str.substr(verStart + pat_size, firstSpace - verStart - pat_size);
-  }
-  return "unknown";
-}
-
-bool LicenseManagerBase::isCorrectBaseVersion(string rlm_str) {
-  string result = extractString(rlm_str, "ver=", 4);
-  return (result == baseVer);
-}
-
-bool LicenseManagerBase::areAllParamsCorrect(string product_name,
-                                             string buildDate, string rlm_str) 
{
-  return ((pName == product_name) && isCorrectBaseVersion(rlm_str) &&
-          (buildDate >= pVersionDate));
-}
-
-int LicenseManagerBase::checkLicense() {
-  RLM_PRODUCTS products;
-  int stat = 0;
-  bool validLicFileAvailable = true;
-
-  ifstream f(licenseDir.c_str());
-
-  // Check of the passed file to the License manager is correct.
-  // In case the file doesn't exist or no file is passed, then take
-  // the file name from the environment variable named "RLM_LICENSE_FILE".
-  // If that variable is also empty or doesn't contain a file, then we
-  // set validLicFileAvailable =false.
-  if (licenseDir == "" || !f.good()) {
-    validLicFileAvailable = false;
-    char *pPath = getenv("RLM_LICENSE_FILE");
-    if (pPath != nullptr) {
-      ifstream f(const_cast<const char *>(pPath));
-      if (f.good()) {
-        validLicFileAvailable = true;
-        licenseDir = pPath;
-      }
-    }
-  }
-
-  rlm_handle = rlm_init(licenseDir.c_str(), nullptr, (char *)nullptr);
-
-  // In case there is no file, we skip the process of checking the license on
-  // the file system.
-  if (validLicFileAvailable) {
-    stat = rlm_stat(rlm_handle);
-    if (stat) {
-      char error_string[RLM_ERRSTRING_MAX];
-      llvm::errs() << "license check: " << rlm_errstring(nullptr, rlm_handle, 
error_string);
-      return -1;
-    }
-
-
-
-    products = rlm_products(rlm_handle, nullptr, (char *)nullptr);
-
-    if (products != nullptr) {
-      string name = rlm_product_name(products);
-      string verDate = rlm_product_ver(products);
-      rlm_license =
-          rlm_checkout(rlm_handle, pName.c_str(), pVersionDate.c_str(), 1);
-      if (rlm_license != nullptr) {
-        if (rlm_license_options(rlm_license) != nullptr) {
-          string options = rlm_product_options(products);
-          if (areAllParamsCorrect(name, verDate, options)) return 1;
-        }
-      }
-    }
-  }
-
-  // Check if we already have a license file.
-  rlm_license =
-      rlm_checkout(rlm_handle, pName.c_str(), pVersionDate.c_str(), 1);
-  stat = rlm_license_stat(rlm_license);
-  if (stat == 0) {
-    string rlm_str = rlm_license_options(rlm_license);
-    if (areAllParamsCorrect(rlm_license_product(rlm_license),
-                            rlm_license_ver(rlm_license), rlm_str)) {
-      return 1;
-    }
-  }
-
-  rlm_checkin(rlm_license);
-  rlm_license = (RLM_LICENSE) nullptr;
-
-  // The tried license is not suitable for us: request all the licenses.
-  products = rlm_products(rlm_handle, const_cast<char *>(pName.c_str()),
-                          const_cast<char *>(pVersionDate.c_str()));
-
-
-  if (products == nullptr) {
-  llvm::errs() << "pName: " << pName << "\n";
-  llvm::errs() << "pVersionDate: " << pVersionDate << "\n";
-  llvm::errs() << "Base Version: " << baseVer << "\n";
-    llvm::errs() << "Product Error - no product found\n";
-    return -1;
-  }
-
-  rlm_product_first(products);
-
-  rlm_license =
-      rlm_checkout(rlm_handle, pName.c_str(), pVersionDate.c_str(), 1);
-
-  if (products == nullptr) {
-  llvm::errs() << "pName: " << pName << "\n";
-  llvm::errs() << "pVersionDate: " << pVersionDate << "\n";
-  llvm::errs() << "Base Version: " << baseVer << "\n";
-    llvm::errs() << "Product Error - no product found\n";
-    return -1;
-  }
-
-  string options = rlm_product_options(products);
-  int i = 1;
-  int licFound = 0;
-  do {
-    if ((stat == RLM_EL_INQUEUE) && (rlm_license != nullptr)) {
-      stat = rlm_get_attr_health(rlm_license);
-    } else {
-      rlm_license =
-          rlm_checkout_product(rlm_handle, products, pVersionDate.c_str(), 1);
-      stat = rlm_license_stat(rlm_license);
-    }
-
-    if (areAllParamsCorrect(rlm_product_name(products),
-                            rlm_product_ver(products), options)) {
-      return 1;
-    } else {
-      licFound = -1;
-    }
-
-    if (stat != 0) {
-      if (i <= retries) {
-        if (stat != RLM_EL_INQUEUE) {
-
-          rlm_checkin(rlm_license);
-        }
-#if LLVM_ON_WIN32
-      Sleep(1);
-#endif
-#ifdef LLVM_ON_UNIX
-      usleep(1000);
-#endif
-
-      }
-    }
-
-  } while (i++ < retries);
-  rlm_products_free(products);
-
-  return (licFound == -1) ? licFound : stat;
-}

diff  --git a/clang/tools/driver/LicenseManagerBase.h 
b/clang/tools/driver/LicenseManagerBase.h
deleted file mode 100644
index d7cdaa6a01f3d..0000000000000
--- a/clang/tools/driver/LicenseManagerBase.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef LLVM_CLANG_TOOLS_CLANG_TOOLS_DRIVER_LICENSEMANAGERBASE_H_
-#define LLVM_CLANG_TOOLS_CLANG_TOOLS_DRIVER_LICENSEMANAGERBASE_H_
-
-#include "license.h"
-#include <string>
-
-using namespace std;
-
-class LicenseManagerBase {
-private:
-  string pName;
-  string pVersionDate;
-  string baseVer;
-  string licenseDir;
-  int retries;
-
-  RLM_HANDLE rlm_handle;
-  RLM_LICENSE rlm_license;
-
-  bool isCorrectBaseVersion(string rlm_str);
-  bool areAllParamsCorrect(string product_name, string buildDate,
-                           string rlm_str);
-
-public:
-  LicenseManagerBase(string _pName, string _pVersion, string _baseVer,
-                     string _licenseDir, int _retries)
-      : pName(_pName), pVersionDate(_pVersion), baseVer(_baseVer),
-        licenseDir(_licenseDir), retries(_retries),
-        rlm_handle(nullptr), rlm_license(nullptr) {}
-
-  int checkLicense();
-  int selectProduct(RLM_PRODUCTS products);
-
-};
-
-
-
-#endif /* LLVM_CLANG_TOOLS_CLANG_TOOLS_DRIVER_LICENSEMANAGERBASE_H_ */

diff  --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp
index 5d08f7560c830..0455ba029c654 100644
--- a/clang/tools/driver/driver.cpp
+++ b/clang/tools/driver/driver.cpp
@@ -43,7 +43,6 @@
 #include "llvm/Support/TargetSelect.h"
 #include "llvm/Support/Timer.h"
 #include "llvm/Support/raw_ostream.h"
-#include "LicenseManagerBase.h"
 #include <memory>
 #include <set>
 #include <system_error>
@@ -321,13 +320,6 @@ static int ExecuteCC1Tool(ArrayRef<const char *> argv, 
StringRef Tool) {
 }
 
 int main(int argc_, const char **argv_) {
-
-  LicenseManagerBase LM(RLM_PRODUCT_NAME, RLM_BUILD_DATE, RLM_BASE_VERSION,
-                      RLM_LIC_FILE, 2);
-  if (LM.checkLicense() != 1)
-    llvm::report_fatal_error("license check: No valid license!");
-
-
   llvm::InitLLVM X(argc_, argv_);
   SmallVector<const char *, 256> argv(argv_, argv_ + argc_);
 

diff  --git a/clang/tools/driver/license.h b/clang/tools/driver/license.h
deleted file mode 100644
index 6501decbd1b56..0000000000000
--- a/clang/tools/driver/license.h
+++ /dev/null
@@ -1,826 +0,0 @@
-/******************************************************************************
-
-           COPYRIGHT (c) 2005, 2017 by Reprise Software, Inc.
-       This software has been provided pursuant to a License Agreement
-       containing restrictions on its use.  This software contains
-       valuable trade secrets and proprietary information of 
-       Reprise Software Inc and is protected by law.  It may not be 
-       copied or distributed in any form or medium, disclosed to third 
-       parties, reverse engineered or used in any manner not provided 
-       for in said License Agreement except with the prior written 
-       authorization from Reprise Software Inc.
-
- *****************************************************************************/
-/*     
- *     Description:    RLM external definitions
- *
- *     M. Christiano
- *     11/19/05
- *
- */
-
-#ifndef RLM_LICENSE_H_INCLUDED
-#define RLM_LICENSE_H_INCLUDED
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define RLM_VERSION 12 
-#define RLM_REVISION 3
-#define RLM_BUILD 3
-#define RLM_PATCH 0
-
-#define RLM_SOFTWARE_VERSION  "Reprise License Manager (RLM) v12.3, Copyright 
(C) 2006-2017, Reprise Software, Inc."
-#define RLM_COPYRIGHT  "Copyright (C) 2006-2017, Reprise Software, Inc. All 
rights reserved."
-
-typedef struct rlm_license *RLM_LICENSE;
-typedef struct rlm_handle *RLM_HANDLE;
-typedef struct rlm_isv_config *RLM_ISV_CONFIG_HANDLE;
-typedef struct rlm_products *RLM_PRODUCTS;
-typedef struct rlm_act_handle *RLM_ACT_HANDLE;
-typedef struct l_hostid *L_HOSTID;
-
-/*
- *     RLM_ACT_HANDLE member settings
- */
-
-#define RLM_ACT_HANDLE_ISV     1
-#define RLM_ACT_HANDLE_HOSTID_LIST 2
-#define RLM_ACT_HANDLE_HOSTNAME        3
-#define RLM_ACT_HANDLE_EXTRA   4
-#define RLM_ACT_HANDLE_LOG     5
-#define RLM_ACT_HANDLE_REHOST  6
-#define RLM_ACT_HANDLE_DISCONN 7
-#define RLM_ACT_HANDLE_PRODUCT 8
-/* 9: unused, Next value: 10 */
-
-/*
- *     RLM Activation Pro license types
- */
-
-#define RLM_ACT_LT_FLOATING 0   /* Floating */
-#define RLM_ACT_LT_F_UPGRADE 4  /* Floating UPGRADE */
-#define RLM_ACT_LT_UNCOUNTED 1  /* Nodelocked, Uncounted */
-#define RLM_ACT_LT_NLU_UPGRADE 5 /* Nodelocked, Uncounted UPGRADE */
-#define RLM_ACT_LT_COUNTED 2    /* Nodelocked, counted (Not implemented)*/
-#define RLM_ACT_LT_NLC_UPGRADE 6 /* NL, counted UPGRADE (Not implemented )*/
-#define RLM_ACT_LT_SINGLE 3     /* Single */
-#define RLM_ACT_LT_S_UPGRADE 7  /* Single UPGRADE */
-#define RLM_ACT_LT_ASH 8        /* Alternate Server Hostid (ASH) */
-#define RLM_ACT_LT_ANH 9        /* Alternate Nodelock Hostid (ANH) */
-#define RLM_ACT_LT_TOKEN_UNLOCKED 10 /* Token, unlocked */
-#define RLM_ACT_LT_TOKEN_LOCKED 11   /* Token, locked */
-#define RLM_ACT_LT_METERED 12    /* Metered */
-
-/*
- *     Activation Pro allowed hostid types
- */
-#define RLM_ACTPRO_ALLOW_REHOST 0x1    /* Rehostable hostids */
-#define RLM_ACTPRO_ALLOW_ISV 0x2       /* ISV-defined hostids */
-#define RLM_ACTPRO_ALLOW_RLMID 0x4     /* RLMID hostids */
-#define RLM_ACTPRO_ALLOW_ETHER 0x8     /* Ethernet hostids */
-#define RLM_ACTPRO_ALLOW_32 0x10       /* 32-bit hostids */
-#define RLM_ACTPRO_ALLOW_DISKSN 0x20   /* Disk Serial number hostid */
-#define RLM_ACTPRO_ALLOW_IP 0x40       /* IP address hostids */
-#define RLM_ACTPRO_ALLOW_USER 0x80     /* Username hostid */
-#define RLM_ACTPRO_ALLOW_HOST 0x100    /* Hostname hostid */
-#define RLM_ACTPRO_ALLOW_SN 0x200      /* Serial Number hostid */
-#define RLM_ACTPRO_ALLOW_STRING 0x400  /* String hostid */
-#define RLM_ACTPRO_ALLOW_DEMO 0x1000   /* "DEMO" hostid */
-#define RLM_ACTPRO_ALLOW_ANY 0x2000    /* "ANY" hostid */
-#define RLM_ACTPRO_ALLOW_ASH 0x4000    /* Alt Server Hostid */
-#define RLM_ACTPRO_ALLOW_ISVDEF 0x8000 /* ISV string as hostid */
-#define RLM_ACTPRO_ALLOW_IPV6 0x10000  /* IPv6 address as hostid */
-#define RLM_ACTPRO_ALLOW_UUID 0x20000  /* UUID as hostid */
-
-/*
- *     Special - allow ALL hostids:
- */
-#define RLM_ACTPRO_ALLOW_ALL_HOSTIDS (RLM_ACTPRO_ALLOW_REHOST | \
-                                       RLM_ACTPRO_ALLOW_ISV | \
-                                       RLM_ACTPRO_ALLOW_RLMID  | \
-                                       RLM_ACTPRO_ALLOW_UUID | \
-                                       RLM_ACTPRO_ALLOW_ETHER  | \
-                                       RLM_ACTPRO_ALLOW_32  | \
-                                       RLM_ACTPRO_ALLOW_DISKSN  | \
-                                       RLM_ACTPRO_ALLOW_IP  | \
-                                       RLM_ACTPRO_ALLOW_IPV6  | \
-                                       RLM_ACTPRO_ALLOW_USER  | \
-                                       RLM_ACTPRO_ALLOW_HOST  | \
-                                       RLM_ACTPRO_ALLOW_ISVDEF  | \
-                                       RLM_ACTPRO_ALLOW_SN  | \
-                                       RLM_ACTPRO_ALLOW_DEMO  | \
-                                       RLM_ACTPRO_ALLOW_ASH  | \
-                                       RLM_ACTPRO_ALLOW_ANY )
-
-/*
- *     Default hostids to allow:
- */
-#define RLM_ACTPRO_ALLOW_DEFAULT     (RLM_ACTPRO_ALLOW_REHOST | \
-                                       RLM_ACTPRO_ALLOW_ISV | \
-                                       RLM_ACTPRO_ALLOW_ISVDEF | \
-                                       RLM_ACTPRO_ALLOW_RLMID  | \
-                                       RLM_ACTPRO_ALLOW_ETHER  | \
-                                       RLM_ACTPRO_ALLOW_32  | \
-                                       RLM_ACTPRO_ALLOW_ASH  | \
-                                       RLM_ACTPRO_ALLOW_UUID  | \
-                                       RLM_ACTPRO_ALLOW_DISKSN  )
-
-
-/*
- *     Default URL for activation pro server
- */
-#define RLM_ACTPRO_URL_DEFAULT "hostedactivation.com"
-
-#define RLM_MAX_LINE     1024  /* Maximum size of a LF line (after */
-                                               /* all continuations */
-
-#ifndef RLM_MAX_PATH
-#ifndef _WIN32
-#define RLM_MAX_PATH    1024 /* FIX: MAXPATHLEN */
-#else
-#define RLM_MAX_PATH   2048 /* Windows wide chars */
-#endif
-#endif
-
-#define RLM_ACT_MAX_LICENSE 32767 /* Maximum size of a license string */
-                                 /*   returned from RLM Activation Pro */
-
-#define RLM_LIC_LINE_LEN    70 /* Default max length of LICENSE lines */
-#define RLM_MAX_PRODUCT     40 /* Max length of a product name */
-#define RLM_MAX_VER         10 /* Max length of a version string vvvvvv.rrr */
-#define RLM_MAX_CUST       40  /* Maximum length of a customer name */
-#define RLM_MAX_ISV        10  /* Maximum ISV name length */
-#define RLM_MAX_EXP        11  /* Max length of expiration date: dd-mmm-yyyy */
-#define        RLM_ERRSTRING_MAX  512  /* string passed to rlm_errstring() */
-                                       /* 256 for error, 256 for extended */
-#define RLM_MAX_LOG       256  /* Max length of a log string */
-#define RLM_MAX_HOSTNAME    64 /* Max length of a license server hostname */
-#define RLM_MAX_USERNAME    32 /* Max length of a username */
-#define RLM_MAX_GC         64  /* Max length of a google cloud string */
-#define RLM_MAX_DISKSN     32  /* Max length of a disk serial number */
-#define RLM_MAX_REHOST     50  /* Max length of a rehostable hostid */
-#define RLM_MAX_UUID       41  /* Max length of a UUID hostid */
-
-#define RLM_MAX_REFRESH_ID 64  /* Max length of a refresh ID string */
-#define RLM_MAX_REFRESH_URL 64 /* Max length of a refresh URL string */
-
-#define RLM_ACT_MAX_MISC  255  /* Max length of a "misc" or "extra license */
-                               /* parameters" string */
-#define RLM_ACT_MAX_LICTEXT 1024 /* Max length of string to prepend to lic */
-/*
- *     Hostid string length
- */
-#define RLM_MAX_HOSTID  RLM_MAX_HOSTNAME       /* Max length of hostid data */
-#define RLM_MAX_HID_KEYWORD_LEN        10      /* Max length of a hostid type 
keyword */
-/*
- *     RLM_MAX_HOSTID_STRING is the maximum length of a single hostid.
- */
-#define RLM_MAX_HOSTID_STRING  (RLM_MAX_HOSTID+RLM_MAX_HID_KEYWORD_LEN+2)
-/*
- *     Max length of a hostid list (must be longer than RLM_MAX_HOSTID_STRING)
- *     This refers to a hostid list in a license line.
- */
-#define RLM_MAX_HOSTID_LIST  25                /* No more than 25 hostids in a 
list */
-#define RLM_MAX_HOSTID_LIST_STRING  200        /* Max of 200 bytes of hostid 
lists */
-/*
- *     Maximum length of hostid strings passed internally (from client->server,
- *     and client->activation server)
- */
-#define RLM_MAX_INTERNAL_HOSTID_STRING ((8*(RLM_MAX_HOSTID_STRING+1)) + 1)
-/*
- *     Max length of a list to transmit to the activation server.
- */
-#define RLM_ACT_MAX_HOSTID_STRING  (RLM_MAX_INTERNAL_HOSTID_STRING+5)  
-                                       /* internal hostid list + "list:" */
-                                       /* Was 205 pre-v11, 622 in v11+ */
-
-/*
- *     Hostid types
- */
-#define RLM_HOSTID_NONE          0     /* No hostid specified, e.g. empty 
string 
-                                  passed to rlm_get_id() - new in v3.0BL4 */
-#define RLM_HOSTID_32BIT  1
-#define RLM_HOSTID_STRING 2    /* Equivalent to ANY, ie, works anywhere */
-#define RLM_HOSTID_ETHER  3
-#define RLM_HOSTID_USER          4     /* User= */
-#define RLM_HOSTID_HOST          5     /* Host= */
-#define RLM_HOSTID_IP    6     /* IP address */
-#define RLM_HOSTID_ANY   7     /* ANY - valid anywhere */
-#define RLM_HOSTID_DEMO          8     /* DEMO - valid anywhere */
-#define RLM_HOSTID_INVALID 9   /* INVALID hostid - new in v3.0BL4 */
-#define RLM_HOSTID_SN    10    /* Serial # - just like STRING, new in v5.0 */
-#define RLM_HOSTID_RLMID1  11  /* First dongle type (aladdin) - new in v5.0 */
-#define RLM_HOSTID_RLMID2  12  /* Second dongle type (safenet) - new in v6.0 */
-#define RLM_HOSTID_RLMID3  13  /* Third dongle type (uniloc) - new in v6.0 */
-#define RLM_HOSTID_DISKSN  14  
-#define RLM_HOSTID_REHOST  15  /* Rehostable hostid */
-#define RLM_HOSTID_GC             16   /* Google Cloud hostid (v11.1) */
-#define RLM_HOSTID_ASH            17   /* Alternate Server Hostid - v11.2 */
-#define RLM_HOSTID_ISV    18   /* ISV= */
-#define RLM_HOSTID_IPV6           19   /* IPv6 address */
-#define RLM_HOSTID_UUID           20   /* BIOS UUID (Windows only) */
-
-#define RLM_ISV_HID_TYPE_MIN 1000 /* Minimum type value for ISV-def hostid */
-
-#define RLM_MAX_ISVDEF 32      /* Max length of an ISV-defined field in the */
-                               /*  rlm_set_environ() call */
-
-/* 
- *     License types, from type= keyword
- */
-
-#define RLM_LA_BETA_TYPE       0x1
-#define RLM_LA_EVAL_TYPE       0x2
-#define RLM_LA_DEMO_TYPE       0x4
-
-/* 
- *     License sharing definitions, from share= keyword
- */
-
-#define RLM_LA_SHARE_USER 1            /* Share if username matches */
-#define RLM_LA_SHARE_HOST 2            /* Share if hostname matches */
-#define RLM_LA_SHARE_ISV  4            /* Share if isv-defined matches */
-
-/*
- *     Function prototypes
- */
-extern int                     rlm_add_isv_hostid(RLM_HANDLE, const char *, 
-                                       int, int, int (*)(char *, RLM_HANDLE));
-extern int                     rlm_add_isv_hostid_compare(RLM_HANDLE, int, 
-                                               int (*)(int, char *, char *));
-extern int                     rlm_add_isv_hostid_multiple(RLM_HANDLE, 
-                                               const char *, int, int, 
-                                               int (*)(char *, RLM_HANDLE), 
-                                               int (*)(char *, RLM_HANDLE));
-extern char **                 rlm_all_hostids(RLM_HANDLE, int);
-extern void                    rlm_all_hostids_free(char **);
-extern int                     rlm_auth_check(RLM_LICENSE, char *);
-extern int                     rlm_auto_hb(RLM_HANDLE, int, int,
-                                   void (*func)(RLM_HANDLE, RLM_LICENSE, int));
-extern int                     rlm_checkin(RLM_LICENSE);
-extern struct rlm_license *    rlm_checkout(RLM_HANDLE, const char *, 
-                                                       const char *, int);
-extern struct rlm_license *    rlm_checkout_product(RLM_HANDLE, RLM_PRODUCTS,
-                                                       const char *, int);
-extern int                     rlm_close(RLM_HANDLE);
-extern char *                  rlm_errstring(RLM_LICENSE, RLM_HANDLE, char *);
-extern char *                  rlm_errstring_num(int err, char *);
-extern void                    rlm_forget_isv_down(RLM_HANDLE);
-extern int                     rlm_get_attr_health(RLM_LICENSE);
-extern char *                  rlm_get_attr_lfpath(RLM_LICENSE);
-extern void                    rlm_get_proxy(const char *url, char *proxy);
-extern int                     rlm_get_rehost(RLM_HANDLE, char *, char *);
-extern const char *            rlm_hostid(RLM_HANDLE, int, char *);
-extern struct rlm_handle *     rlm_init(const char *, const char *, 
-                                                               const char *);
-extern struct rlm_handle *     rlm_init_disconn(const char *, const char *, 
-                                                       const char *, int);
-extern int                     rlm_detached_demo(RLM_HANDLE, int, 
-                                                               const char *);
-extern int                     rlm_detached_demox(RLM_HANDLE, const char *prod,
-                                                       const char *ver);
-extern void                    rlm_diagnostics(RLM_HANDLE, char *file);
-extern void                    rlm_isv_cfg_actpro_allowed_hostids(RLM_HANDLE, 
-                                                                       int);
-extern void                    rlm_isv_cfg_disable_broadcast(RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_disable_clock_windback_check(
-                                                           RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_disable_generic_server(
-                                                           RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_disable_reference_hostid_check(
-                                                           RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_disable_windows_fileid_check(
-                                                       RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_enable_check_license(RLM_HANDLE, 
-                                                                       int);
-extern void                    rlm_isv_cfg_enable_client_cache(RLM_HANDLE, 
int);
-extern void                    rlm_isv_cfg_set_compat(RLM_HANDLE, int, int);
-extern void                    rlm_isv_cfg_set_enable_roam_transient(
-                                                       RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_set_enable_vm(RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_set_license(RLM_HANDLE, 
-                                                               const char *);
-extern int                     rlm_isv_cfg_set_name(RLM_HANDLE, const char *);
-extern void                    rlm_isv_cfg_set_oldest_server(RLM_HANDLE, 
-                                                       int oldest_ver,
-                                                       int oldest_rev,
-                                                       int oldest_build);
-extern void                    rlm_isv_cfg_set_rehost_dir(RLM_HANDLE, char *);
-extern void                    rlm_isv_cfg_set_roam_single(RLM_HANDLE, int);
-extern void                    rlm_isv_cfg_set_server_roam(RLM_HANDLE, char *);
-extern void                    rlm_isv_cfg_set_url(RLM_HANDLE, char *);
-extern void                    rlm_isv_cfg_set_use_admin_disksns(RLM_HANDLE, 
-                                                       int);
-extern void                    rlm_isv_cfg_set_use_flexlm_lockfile(RLM_HANDLE, 
-                                                       int);
-extern void                    rlm_isv_cfg_set_use_hostid(RLM_HANDLE, int, 
-                                          void (*)(RLM_HANDLE, L_HOSTID),
-                                          int (*)(RLM_HANDLE, char *, char *));
-extern int                     rlm_log(RLM_HANDLE, const char *);
-extern int                     rlm_dlog(RLM_HANDLE, const char *);
-extern int                     rlm_sign_license(RLM_HANDLE rh, int encode_bits,
-                                         char *server_hostid, char *license);
-extern void                    rlm_skip_isv_down(RLM_HANDLE);
-extern int                     rlm_putenv(const char *);
-
-/*
- *     RLM_LICENSE data
- */
-
-extern char *          rlm_license_akey(RLM_LICENSE lic);
-extern int             rlm_license_cached(RLM_LICENSE lic);
-extern int             rlm_license_client_cache(RLM_LICENSE lic);
-extern char *          rlm_license_contract(RLM_LICENSE lic);
-extern char *          rlm_license_customer(RLM_LICENSE lic);
-extern int             rlm_license_count(RLM_LICENSE lic);
-extern int             rlm_license_detached_demo(RLM_LICENSE lic);
-extern char *          rlm_license_exp(RLM_LICENSE lic);
-extern int             rlm_license_exp_days(RLM_LICENSE lic);
-extern int             rlm_license_goodonce(RLM_LICENSE lic);
-extern int             rlm_license_hold(RLM_LICENSE lic);
-extern int             rlm_license_host_based(RLM_LICENSE lic);
-extern char *          rlm_license_hostid(RLM_LICENSE lic);
-extern char *          rlm_license_issued(RLM_LICENSE lic);
-extern char *          rlm_license_issuer(RLM_LICENSE lic);
-extern char *          rlm_license_line_item(RLM_LICENSE lic);
-extern int             rlm_license_max_roam(RLM_LICENSE lic);
-extern int             rlm_license_max_roam_count(RLM_LICENSE lic);
-extern int             rlm_license_max_share(RLM_LICENSE lic);
-extern int             rlm_license_min_checkout(RLM_LICENSE lic);
-extern int             rlm_license_min_remove(RLM_LICENSE lic);
-extern int             rlm_license_min_timeout(RLM_LICENSE lic);
-extern int             rlm_license_named_user_count(RLM_LICENSE lic);
-extern int             rlm_license_named_user_min_hours(RLM_LICENSE lic);
-extern char *          rlm_license_options(RLM_LICENSE lic);
-extern char *          rlm_license_platforms(RLM_LICENSE lic);
-extern char *          rlm_license_product(RLM_LICENSE lic);
-extern int             rlm_license_roaming(RLM_LICENSE lic);
-extern char *          rlm_license_server(RLM_LICENSE lic);
-extern int             rlm_license_share(RLM_LICENSE lic);
-extern int             rlm_license_single(RLM_LICENSE lic);
-extern int             rlm_license_soft_limit(RLM_LICENSE lic);
-extern char *          rlm_license_start(RLM_LICENSE lic);
-extern int             rlm_license_stat(RLM_LICENSE);
-extern int             rlm_license_type(RLM_LICENSE lic);
-extern int             rlm_license_tz(RLM_LICENSE lic);
-extern int             rlm_license_uncounted(RLM_LICENSE lic);
-extern int             rlm_license_user_based(RLM_LICENSE lic);
-extern char *          rlm_license_ver(RLM_LICENSE lic);
-
-/*
- *     rlm_products() data
- */
-extern RLM_PRODUCTS    rlm_products(RLM_HANDLE, char *, char *);
-extern RLM_PRODUCTS    rlm_products_dynres(RLM_HANDLE rh, char *product, 
-                                               char *ver, char *dynres);
-extern void            rlm_products_free(RLM_PRODUCTS);
-extern void            rlm_product_first(RLM_PRODUCTS);
-extern int             rlm_product_next(RLM_PRODUCTS);
-
-extern char *          rlm_product_akey(RLM_PRODUCTS);
-extern int             rlm_product_client_cache(RLM_PRODUCTS);
-extern char *          rlm_product_contract(RLM_PRODUCTS);
-extern int             rlm_product_count(RLM_PRODUCTS);
-extern int             rlm_product_current_inuse(RLM_PRODUCTS);
-extern int             rlm_product_current_resuse(RLM_PRODUCTS);
-extern char *          rlm_product_customer(RLM_PRODUCTS);
-extern char *          rlm_product_exp(RLM_PRODUCTS);
-extern int             rlm_product_exp_days(RLM_PRODUCTS);
-extern int             rlm_product_hbased(RLM_PRODUCTS);
-extern int             rlm_product_hold(RLM_PRODUCTS);
-extern char *          rlm_product_hostid(RLM_PRODUCTS);
-extern char *          rlm_product_issuer(RLM_PRODUCTS);
-extern int             rlm_product_min_checkout(RLM_PRODUCTS);
-extern int             rlm_product_max_roam(RLM_PRODUCTS);
-extern int             rlm_product_max_roam_count(RLM_PRODUCTS);
-extern int             rlm_product_min_remove(RLM_PRODUCTS);
-extern int             rlm_product_max_share(RLM_PRODUCTS);
-extern int             rlm_product_min_timeout(RLM_PRODUCTS);
-extern char *          rlm_product_name(RLM_PRODUCTS);
-extern int             rlm_product_nres(RLM_PRODUCTS);
-extern int             rlm_product_num_roam_allowed(RLM_PRODUCTS);
-extern char *          rlm_product_options(RLM_PRODUCTS);
-extern int             rlm_product_roaming(RLM_PRODUCTS);
-extern char *          rlm_product_server(RLM_PRODUCTS);
-extern int             rlm_product_share(RLM_PRODUCTS);
-extern int             rlm_product_soft_limit(RLM_PRODUCTS);
-extern int             rlm_product_thisroam(RLM_PRODUCTS);
-extern int             rlm_product_timeout(RLM_PRODUCTS);
-extern int             rlm_product_tz(RLM_PRODUCTS);
-extern int             rlm_product_tokens(RLM_PRODUCTS);
-extern int             rlm_product_type(RLM_PRODUCTS);
-extern int             rlm_product_ubased(RLM_PRODUCTS);
-extern char *          rlm_product_ver(RLM_PRODUCTS);
-
-extern void            rlm_set_active(RLM_HANDLE, int);
-extern void            rlm_set_attr_keep_conn(RLM_HANDLE, int);
-extern void            rlm_set_attr_logging(RLM_HANDLE, int);
-extern void            rlm_set_attr_password(RLM_HANDLE, char *);
-extern void            rlm_set_attr_reference_hostid(RLM_HANDLE, char *);
-extern void            rlm_set_attr_req_opt(RLM_HANDLE, char *);
-extern void            rlm_set_auto_hb_isvdata(RLM_HANDLE, const void *i);
-extern void            rlm_set_environ(RLM_HANDLE, char *, char *, char *);
-extern int             rlm_stat(RLM_HANDLE);
-
-/*
- *     rlm_act_xxx() functions - Internet Activation
- */
-
-extern const char *    rlm_act_errstring(int stat);
-extern int             rlm_act_fulfill_info(RLM_HANDLE rh, const char *url, 
-                                       char *akey, char *product, char *ver, 
-                                       int *date_based, int *license_type,
-                                       char *upgrade_version, int *count,
-                                       int *fulfilled, int *rehosts, 
-                                       int *revoked, char *exp, char *hostid);
-extern int             rlm_act_info(RLM_HANDLE rh, const char *url, 
-                                       char *akey, char *product, char *ver, 
-                                       int *date_based, int *license_type,
-                                       char *upgrade_version);
-extern int             rlm_act_keyinfo(RLM_HANDLE rh, const char *url, 
-                                       char *akey, char *product, char *ver, 
-                                       int *date_based, int *license_type,
-                                       char *upgrade_version, int *count,
-                                       int *fulfilled, int *rehosts, 
-                                       int *revoked);
-extern int             rlm_act_keyvalid(RLM_HANDLE rh, const char *url,
-                                       char *akey, char *hosid);
-extern int             rlm_act_keyvalid_license(RLM_HANDLE rh, 
-                                       const char *url, char *akey, 
-                                       char *hosid, char *license);
-extern int             rlm_act_request(RLM_HANDLE rh, const char *url, 
-                                       const char *isv, const char *akey, 
-                                       const char *hostid_list, 
-                                       const char *hostname,
-                                       int count, const char *extra, 
-                                       char *license);
-extern int             rlm_act_refresh(RLM_HANDLE rh, char *isv,
-                                       void (*func)(char *, char *, int));
-extern int             rlm_activate(RLM_HANDLE rh, const char *url, 
-                                       const char *akey, int count, 
-                                       char *license, RLM_ACT_HANDLE handle);
-extern RLM_ACT_HANDLE  rlm_act_new_handle(RLM_HANDLE rh);
-extern void            rlm_act_destroy_handle(RLM_ACT_HANDLE handle);
-extern int             rlm_act_set_handle(RLM_ACT_HANDLE handle, int what, 
-                                                               void *val);
-extern int             rlm_act_revoke(RLM_HANDLE rh, const char *url,
-                                                       char *product);
-extern int             rlm_act_revoke_reference(RLM_HANDLE rh, const char *url,
-                                                               char *product);
-extern int             rlm_act_revoke_disconn(RLM_HANDLE rh, const char *url,
-                                                   char *param, char *retval);
-/*
- *    v12.0 - Apps may call this OpenSSL routine directly so define it to
- *    use the new in v12 RLM-specific name.
- */
-#if !defined(_WIN32) && !defined(hp_h1) && !defined(hp64_h1) && 
!defined(ia64_h1) && !defined(ibm_a1) && !defined(ibm64_a1) && !defined(sun_s1) 
&& !defined(sun64_s1)
-#define ERR_remove_state rlmssl_ERR_remove_state
-#endif
-
-/*
- *     General Errors - returned by rlm_stat(license_handle)
- */
-#define RLM_HANDLE_ERR_FIRST    101
-#define RLM_EH_NOHANDLE                -101    /* No handle supplied to call */
-#define RLM_EH_READ_NOLICENSE  -102    /* Can't read license data */
-#define RLM_EH_NET_INIT                -103    /* Network (msg_init()) error */
-#define RLM_EH_NET_WERR                -104    /* Error writing to network */
-#define RLM_EH_NET_RERR                -105    /* Error reading from network */
-#define RLM_EH_NET_BADRESP     -106    /* Unexpected response */
-#define RLM_EH_BADHELLO                -107    /* HELLO message for wrong 
server */
-
-#define RLM_EH_BADPRIVKEY      -108    /* Error in private key */
-#define RLM_EH_SIGERROR                -109    /* Error signing authorization 
*/
-#define RLM_EH_INTERNAL                -110    /* Internal error */
-       
-#define RLM_EH_CONN_REFUSED    -111    /* Connection refused at server */
-#define RLM_EH_NOSERVER                -112    /* No server to connect to */
-#define RLM_EH_BADHANDSHAKE    -113    /* Bad communications handshake */
-#define RLM_EH_CANTGETETHER    -114    /* Can't get ethernet address */
-                                       /* system call failures */
-#define RLM_EH_MALLOC          -115
-#define RLM_EH_BIND            -116    /* bind() error */
-#define RLM_EH_SOCKET          -117    /* socket() error */
-
-#define RLM_EH_BADPUBKEY       -118    /* Error in public key */
-#define RLM_EH_AUTHFAIL                -119    /* Authentication failed */
-#define RLM_EH_WRITE_LF                -120    /* Can't write temp license 
file */
-#define RLM_EH_NO_REPORTLOG    -121    /* No reportlog file on this server */
-#define RLM_EH_DUP_ISV_HID     -122    /* ISV-defined hostid already 
registered */
-#define RLM_EH_BADPARAM                -123    /* Bad parameter passed to RLM 
function */
-/*
- *     BADPARAM/INTERNAL sub-errors (in syserr)
- */
-#define RLM_ACT_BP_NOLIC       -1
-#define RLM_ACT_BP_NOURL       -2
-#define RLM_ACT_BP_NLKEY       -3      /* Newline in activation key */
-#define RLM_ACT_BP_NLXTRA      -4      /* Newline in extra parameter */
-#define RLM_ACT_BP_TOOMUCH     -5      /* Too much data to send */
-#define RLM_ACT_BP_ILLXTRA     -6      /* Illegal character in extra data */
-#define RLM_CO_BADCOUNT                -7      /* bad count for checkout: <= 0 
*/
-#define RLM_DD_BADDATE         -8      /* exp date <= 0 for detached demo */
-#define RLM_ILL_CHAR_HOSTID    -9      /* Illegal char in hostid */
-#define RLM_REHOST_HOSTID_FMT  -10     /* Bad format for rehostable hostid */
-#define RLM_REHOST_NO_ROOT     -11     /* No isv-specified root dir */
-#define RLM_REHOST_NO_TOP      -12     /* No/bad top-level hostid file */
-#define RLM_RLMINFO_NO_COMM    -13     /* No comm structs in rlm_rlminfo() */
-#define RLM_ISVINFO_NO_COMM    -14     /* No comm structs in rlm_isvinfo() */
-#define RLM_POOLINFO_NO_COMM   -15     /* No comm structs in rlm_poolinfo() */
-#define RLM_USERLIST_NO_COMM   -16     /* No comm structs in rlm_userlist() */
-#define RLM_DD_TEMPLATE                -17     
-                       /* Bad template license passed to rlm_detached_demo() */
-#define RLM_BAD_NAME           -18     /* Bad name to isv_cfg_set_name() */
-#define RLM_NO_ISV_HOSTID      -19     /* No isv-defined hostid for compare 
routine */
-#define RLM_ISV_HOSTID_KEYWORD -20     /* isv-defined hostid keyword missing 
or too long */
-#define RLM_ISV_HOSTID_TYPE    -21     /* isv-defined hostid type < min */
-#define RLM_SIGN_NOSTART       -22     /* No start/issued for replace lic */
-#define RLM_SIGN_BADTYPE       -23     /* unknown license type for signing */
-#define RLM_REHOST_TOOMUCHDATA -24     /* Too much data in rehost hostid */
-#define RLM_REHOST_WRONGDATA   -25     /* Wrong amt of data in rehost hostid */
-#define RLM_ACT_HOSTID_TOOLONG -26     /* Hostid list too long */
-#define RLM_CO_NOPRODUCT       -27     /* No product or version in checkout */
-#define RLM_INT_OPENFILE       -28     /* isv_get_isv: can't open file */
-#define RLM_INT_DATALEN                -29     /* isv_get_isv: data length 
wrong */
-#define RLM_INT_DATAREAD       -30     /* isv_get_isv: data read error */
-#define RLM_INT_KEYREAD                -31     /* isv_get_isv: key read error 
*/
-#define RLM_PATH_TOOLONG       -32     /* rlm_init(): path too long */
-#define RLM_REVOKE_NO_PROD     -33     /* rlm_revoke(): no product name */
-
-#define RLM_BADPARAM_LAST      -33     /* Last badparam sub-error */
-
-#define RLM_EH_ROAMWRITEERR    -124    /* Roam File write error */
-#define RLM_EH_ROAMREADERR     -125    /* Roam File read error */
-#define RLM_EH_HANDLER_INSTALLED -126  /* heartbeat handler already installed 
*/
-#define RLM_EH_CANTCREATLOCK -127      /* Cannot create 'single' lockfile */
-#define RLM_EH_CANTOPENLOCK -128       /* Cannot open 'single' lockfile */
-#define RLM_EH_CANTSETLOCK -129                /* Cannot set lock on 'single' 
*/
-#define RLM_EH_BADRLMLIC -130          /* Bad/missing/expired RLM license */
-#define RLM_EH_BADHOST -131            /* Bad hostname in LF/port@host */
-#define RLM_EH_CANTCONNECT_URL -132    /* Cannot connect to specified URL */
-#define RLM_EH_OP_NOT_ALLOWED  -133    /* Operation not allowed on server */
-#define RLM_EH_ACT_BADSTAT     -134    /* Bad status from activation binary */
-#define RLM_EH_ACT_BADLICKEY   -135    /* Bad license key in 
-                                                       activation binary */
-#define RLM_EH_BAD_HTTP               -136     /* Bad HTTP transaction */
-#define RLM_EH_DEMOEXISTS      -137    /* Demo already created */
-#define RLM_EH_DEMOWRITEERR    -138    /* Demo file write error */
-#define RLM_EH_NO_DEMO_LIC     -139    /* No "rlm_demo" license available */
-#define RLM_EH_NO_RLM_PLATFORM -140    /* RLM unlicensed on this platform */
-#define RLM_EH_EVAL_EXPIRED    -141    /* RLM eval expired */
-#define RLM_EH_SERVER_REJECT   -142    /* Server rejected by client */
-#define RLM_EH_UNLICENSED      -143    /* Unlicensed RLM option */
-#define RLM_EH_SEMAPHORE_FAILURE -144  /* Semaphore initialization failure */
-#define RLM_EH_ACT_OLDSERVER   -145    /* Activation server too old */
-#define RLM_EH_BAD_LIC_LINE    -146    /* Invalid license line in LF */
-#define RLM_EH_BAD_SERVER_HOSTID -147  /* Invalid hostid on SERVER line */
-#define RLM_EH_NO_REHOST_TOP_DIR -148  /* No rehostable hostid top-level dir */
-#define RLM_EH_CANT_GET_REHOST -149    /* Cannot get rehost hostid */
-#define RLM_EH_CANT_DEL_REHOST -150    /* Cannot delete rehost hostid */
-#define RLM_EH_CANT_CREATE_REHOST -151         /* Cannot create rehostable 
hostid */
-#define RLM_EH_REHOST_TOP_DIR_EXISTS -152 /* Rehostable top dir exists */
-#define RLM_EH_REHOST_EXISTS -153      /* Rehostable hostid exists */
-#define RLM_EH_NO_FULFILLMENTS -154    /* No fulfillments to revoke */
-#define RLM_EH_METER_READERR -155      /* Meter read error */
-#define RLM_EH_METER_WRITEERR  -156    /* Meter write error */
-#define RLM_EH_METER_BADINCREMENT -157 /* Bad meter increment command */
-#define RLM_EH_METER_NO_COUNTER -158   /* Can't find counter in meter */
-#define RLM_EH_ACT_UNLICENSED  -159    /* Activation Unlicensed */
-#define RLM_EH_ACTPRO_UNLICENSED -160  /* Activation Pro Unlicensed */
-#define RLM_EH_SERVER_REQUIRED -161    /* Counted license requires server */
-#define RLM_EH_DATE_REQUIRED -162      /* REPLACE license requires date */
-#define RLM_EH_NO_METER_UPGRADE -163   /* METERED licenses can't be UPGRADED */
-#define RLM_EH_NO_CLIENT -164          /* disconnected client data can't be 
found */
-#define RLM_EH_NO_DISCONN -165         /* op not permitted on disconn handle */
-#define RLM_EH_NO_FILES        -166            /* Too many open files */
-#define RLM_EH_NO_BROADCAST_RESP -167  /* No response from broadcast */
-#define RLM_EH_NO_BROADCAST_HOST -168  /* broadcast didn't return hostname */
-#define RLM_EH_SERVER_TOO_OLD -169     /* Server too old to support this */
-#define RLM_EH_BADLIC_FROM_SERVER -170 /* License from server doesn't */
-                                                       /* authenticate */
-#define RLM_EH_NO_LIC_FROM_SERVER -171 /* No License returned from server */
-#define RLM_EH_CACHEWRITEERR   -172    /* Client Cache File write error */
-#define RLM_EH_CACHEREADERR    -173    /* Client Cache File read error */
-#define RLM_EH_LIC_WITH_NEW_KEYWORDS -174 /* License returned from server has 
keywords I don't understand */
-#define RLM_EH_NO_ISV          -175    /* Unknown ISV name */
-#define RLM_EH_NO_CUSTOMER     -176    /* Unknown Customer name */
-#define RLM_EH_NO_SQL          -177    /* Cannot open MySQL database */
-#define RLM_EH_ONLY_LOCAL_CMDS         -178    /* Only local command-line cmds 
allowed */
-#define RLM_EH_SERVER_TIMEOUT  -179    /* Server timeout on read */
-#define RLM_EH_NONE_SIGNED     -180    /* rlmsign did not sign any licenses */
-#define RLM_EH_DUP_XFER                -181    /* Duplicate disconnected 
transfer */
-
-#define RLM_EH_MAX_ERRS 81
-
-/*
- *     rlm_checkout() errors - returned by rlm_license_stat(license)
- */
-#define RLM_EL_NOPRODUCT       -1      /* No authorization for product */
-#define RLM_EL_NOTME           -2      /* Authorization is for another ISV */
-#define RLM_EL_EXPIRED         -3      /* Authorization has expired */
-#define RLM_EL_NOTTHISHOST     -4      /* Wrong host for authorization */
-#define RLM_EL_BADKEY          -5      /* Bad key in authorization */
-#define RLM_EL_BADVER          -6      /* Requested version not supported */
-#define RLM_EL_BADDATE         -7      /* bad date format - not permanent or 
-                                                               dd-mm-yy */
-#define RLM_EL_TOOMANY         -8      /* checkout request for too many 
-                                                               licenses */
-#define RLM_EL_NOAUTH          -9      /* No license auth supplied to call */
-#define RLM_EL_ON_EXC_ALL      -10     /* On excludeall list */
-#define RLM_EL_ON_EXC          -11     /* On feature exclude list */
-#define RLM_EL_NOT_INC_ALL     -12     /* Not on the includeall list */
-#define RLM_EL_NOT_INC         -13     /* Not on the feature include list */
-#define RLM_EL_OVER_MAX                -14     /* Request would go over 
license MAX */
-#define RLM_EL_REMOVED         -15     /* License (rlm)removed by server */
-#define RLM_EL_SERVER_BADRESP  -16     /* Unexpected response from server */
-#define RLM_EL_COMM_ERROR      -17     /* Error communicating with server */
-#define RLM_EL_NO_SERV_SUPP    -18     /* License server doesn't support this 
*/
-#define RLM_EL_NOHANDLE        -19     /* No license handle */
-#define RLM_EL_SERVER_DOWN     -20     /* Server closed connection */
-#define RLM_EL_NO_HEARTBEAT    -21     /* No heartbeat response received */
-#define RLM_EL_ALLINUSE                -22     /* All licenses in use */
-#define RLM_EL_NOHOSTID                -23     /* No hostid on uncounted 
license */
-#define RLM_EL_TIMEDOUT                -24     /* License timed out by server 
*/
-#define RLM_EL_INQUEUE         -25     /* In queue for license */
-#define RLM_EL_SYNTAX          -26     /* License syntax error */
-#define RLM_EL_ROAM_TOOLONG    -27     /* Roam time exceeds maximum */
-#define RLM_EL_NO_SERV_HANDLE  -28     /* Server does not know this handle */
-#define RLM_EL_ON_EXC_ROAM     -29     /* On roam exclude list */
-#define RLM_EL_NOT_INC_ROAM    -30     /* Not on roam include list */
-#define RLM_EL_TOOMANY_ROAMING -31     /* Too many licenses roaming */
-#define RLM_EL_WILL_EXPIRE     -32     /* License expires before roam ends */
-#define RLM_EL_ROAMFILEERR     -33     /* Problem with roam file */
-#define RLM_EL_RLM_ROAM_ERR    -34     /* Cannot checkout rlm_roam license */
-#define RLM_EL_WRONG_PLATFORM  -35     /* Wrong platform for client */
-#define RLM_EL_WRONG_TZ                -36     /* Wrong timezone for client */
-#define RLM_EL_NOT_STARTED     -37     /* License start date not reached */
-#define RLM_EL_CANT_GET_DATE   -38     /* time() failure */
-#define RLM_EL_OVERSOFT                -39     /* Over license soft limit */
-#define RLM_EL_WINDBACK                -40     /* Clock setback detected */
-#define RLM_EL_BADPARAM                -41     /* Bad parameter to checkout() 
call */
-#define RLM_EL_NOROAM_FAILOVER -42     /* Roam operations not permitted on
-                                          failover servers */
-#define RLM_EL_BADHOST         -43     /* Bad hostname in LF/port@host */
-#define RLM_EL_APP_INACTIVE    -44     /* Application is inactive */
-#define RLM_EL_NOT_NAMED_USER  -45     /* Not a named user */
-#define RLM_EL_TS_DISABLED     -46     /* Terminal Server disabled */
-#define RLM_EL_VM_DISABLED     -47     /* Virtual Machines disabled */
-#define RLM_EL_PORTABLE_REMOVED        -48     /* Portable hostid removed */
-#define RLM_EL_DEMOEXP         -49     /* Demo license has expired */
-#define RLM_EL_FAILED_BACK_UP  -50     /* Failed host back up */
-#define RLM_EL_SERVER_LOST_XFER        -51     /* Server lost it's transferred 
license */
-#define RLM_EL_BAD_PASSWORD    -52     /* Incorrect password for product */
-                                       /* Note: RLM_EL_BAD_PASSWORD is an
-                                          internal error and won't ever be 
-                                          returned to the client - if the 
-                                          license password is bad, the client
-                                          will receive RLM_EL_NO_SERV_SUPP */
-#define RLM_EL_METER_NO_SERVER -53     /* Metered licenses require a server */
-#define RLM_EL_METER_NOCOUNT   -54     /* Not enough count for metered lic */
-#define RLM_EL_NOROAM_TRANSIENT        -55     /* Roam operations not 
permitted on
-                                          servers with transient hostids */
-#define RLM_EL_CANTRECONNECT   -56     /* Cannot reconnect to server */
-#define RLM_EL_NONE_CANROAM    -57     /* None of these licenses can roam */
-#define RLM_EL_SERVER_TOO_OLD  -58     /* Server too old for operation */
-#define RLM_EL_SERVER_REJECT   -59     /* Server rejected client */
-#define RLM_EL_REQ_OPT_MISSING -60     /* Requested option not present */
-#define RLM_EL_NO_DYNRES       -61     /* Reclaim can't find dynamic res */
-#define RLM_EL_RECONN_INFO_BAD -62     /* Reconnection info invalid */
-#define RLM_EL_ALREADY_ROAMING -63     /* Licenses are already roaming */
-#define RLM_EL_BAD_EXTEND_FMT  -64     /* Bad format for RLM_ROAM_EXTEND */
-#define RLM_EL_BAD_EXTEND_CODE -65     /* Bad extend code for roam extend */
-#define RLM_EL_NO_ROAM_TO_EXTEND -66   /* No roaming license to extend */
-
-#define RLM_EL_MAX_ERRS 66
-
-/*
- *     Activation errors
- */
-
-#define RLM_ACT_ERR_FIRST       1001
-#define RLM_ACT_BADPARAM       -1001   /* Missing or bad sig for disconnected
-                                          revoke (unused prior to 11.1) */
-#define RLM_ACT_NO_KEY         -1002   
-#define RLM_ACT_NO_PROD                -1003   /* No product definition */
-#define RLM_ACT_CANT_WRITE_KEYS -1004  /* Can't write keyf table */
-#define RLM_ACT_KEY_USED       -1005   /* Activation key already used*/
-#define RLM_ACT_BAD_HOSTID     -1006   /* Missing hostid */
-#define RLM_ACT_BAD_HOSTID_TYPE        -1007   /* Invalid hostid type */
-#define RLM_ACT_BAD_HTTP       -1008   /* Bad HTTP transaction - 
-                                                       UNUSED after v3.0BL4 */
-#define RLM_ACT_CANTLOCK       -1009   /* Can't lock activation DB (file-based 
activation only) */
-#define RLM_ACT_CANTREAD_DB    -1010   /* Can't read activation DB */
-#define RLM_ACT_CANT_WRITE_FULFILL -1011 /* Can't write licf table */
-#define RLM_ACT_CLIENT_TIME_BAD -1012  /* Clock incorrect on client */
-#define RLM_ACT_BAD_REDIRECT   -1013   /* Bad redirect from server */
-#define RLM_ACT_TOOMANY_HOSTID_CHANGES -1014   /* Too many hostid changes */
-                                       /*  for Refresh activation */
-#define RLM_ACT_BLACKLISTED    -1015   /* Domain on blacklist */
-#define RLM_ACT_NOT_WHITELISTED        -1016   /* Domain not on whitelist */
-#define RLM_ACT_KEY_EXPIRED    -1017   /* Activation key expired */
-#define RLM_ACT_NO_PERMISSION  -1018   /* HTTP request denied */
-#define RLM_ACT_SERVER_ERROR   -1019   /* HTTP internal server error */
-#define RLM_ACT_BAD_GENERATOR  -1020   /* Bad/missing generator file */
-#define RLM_ACT_NO_KEY_MATCH   -1021   /* No matching key in DB */
-#define RLM_ACT_NO_AUTH_SUPPLIED -1022 /* No proxy auth supplied */
-#define RLM_ACT_PROXY_AUTH_FAILED -1023        /* proxy auth failed */
-#define RLM_ACT_NO_BASIC_AUTH  -1024   /* No basic authentication */
-#define RLM_ACT_GEN_UNLICENSED   -1025 /* Activation generator unlicensed */
-#define RLM_ACT_DB_READERR     -1026   /* Activtion DB read error (MySQL) */
-#define RLM_ACT_GEN_PARAM_ERR  -1027   /* Generating license - bad parameter */
-#define RLM_ACT_UNSUPPORTED_CMD        -1028   /* Unsupported command to 
generator */
-#define RLM_ACT_REVOKE_TOOLATE -1029   /* Revoke command after expiration */
-#define RLM_ACT_KEY_DISABLED   -1030   /* Activation key disabled */
-#define RLM_ACT_KEY_NO_HOSTID  -1031  /* Key not fulfilled on this hostid */
-#define RLM_ACT_KEY_HOSTID_REVOKED -1032 /* Key revoked on this hostid */
-#define RLM_ACT_NO_FULFILLMENTS        -1033   /* No fulfillments to remove */
-#define RLM_ACT_LICENSE_TOOBIG -1034   /* Generated license too long */
-#define RLM_ACT_NO_REHOST      -1035   /* Counted licenses can't be rehostable 
*/
-#define RLM_ACT_BAD_URL                -1036   /* License Generator not found 
on server */
-#define RLM_ACT_NO_LICENSES    -1037   /* No licenses found (rlm cloud 
control) */
-#define RLM_ACT_NO_CLEAR       -1038   /* Unencrypted requests not allowed */
-#define RLM_ACT_BAD_KEY                -1039   /* Bad activation key (illegal 
char) */
-#define RCC_CANT_WRITE_FULFILL -1040   /* rcc: Can't write licf table */
-#define RCC_PORTAL_CANT_WRITE_FULFILL -1041 /* rcc: Can't write licf table */
-#define RLM_ACT_KEY_TOOMANY    -1042 /* Insufficient count left on key */
-#define RLM_ACT_SUB_BADTYPE    -1043 /* Subscription license not NL/Single */
-#define RLM_ACT_ERR_LAST       43
-
-#define RLM_ACT_ERR(x) ((x <= -RLM_ACT_ERR_FIRST) && \
-                       (x > -(RLM_ACT_ERR_FIRST+RLM_ACT_ERR_LAST)))
-
-/*
- *     Function/definitions to update an RLM license authorization
- *     Used to extend ISV servers for external license manager
- *     transfers only.
- */
-
-
-#define RLM_IX_CONTRACT 2
-#define RLM_IX_COUNT 3
-#define RLM_IX_COUNTFLAG 4
-#define RLM_IX_CUSTOMER 5
-#define RLM_IX_DISABLE 6
-#define RLM_IX_EXP 7
-#define RLM_IX_HOLD 8
-#define RLM_IX_HOSTID_STRING 9
-#define RLM_IX_ISSUED 10
-#define RLM_IX_ISSUER 11
-#define RLM_IX_LIC_OPTS 12
-#define RLM_IX_LINE_ITEM 13
-#define RLM_IX_MAX_ROAM 14
-#define RLM_IX_MAX_ROAM_COUNT 27
-#define RLM_IX_MAX_SHARE 15
-#define RLM_IX_MIN_CHECKOUT 16
-#define RLM_IX_MIN_REMOVE 17
-#define RLM_IX_MIN_TIMEOUT 18
-#define RLM_IX_PLATFORMS 19
-#define RLM_IX_PRODUCT 20
-#define RLM_IX_SOFT_LIMIT 21
-#define RLM_IX_SHARE 22
-#define RLM_IX_START 23
-#define RLM_IX_TIMEZONES 24
-#define RLM_IX_TYPE 25
-#define RLM_IX_VER 26
-       /* 27 used - MAX_ROAM_COUNT */
-#define RLM_IX_CLIENT_CACHE 28
-
-extern void rlm_ix_update_auth(void *ls, void *auth, int which, int ival, 
-                                                       char *cptr);
-
-extern void rlm_ix_enable( char *lm_name,
-                          void xfer(void *, void *), 
-                          void xfer_done(void *, void *, void *), 
-                          int open(void *, char *, int, char *, int, char *,
-                                                       void **, int *),
-                          int checkout(void *, void *, char *, char *,
-                                                               int, void **),
-                          void fillin(void *, void *, void *, void *, char *, 
-                                                                       int),
-                          int check_auth(void *, char *, void *, void *),
-                          int update_status(void *, char *, int, void *,int *),
-                          int heartbeat(void *, void *),
-                          int checkin(void *, void *),
-                          int close(void *));
-
-extern void rlm_ix_transfer(void *, void *);
-extern void rlm_ix_done_xfer(void *, void *, void *);
-extern void rlm_ix_log(void *, char *);
-
-/*
- *     End of ISV server license transfer extensions
- */
-
-/*
- *     CRYPTO_cleanup_all_ex_data is now rlmssl_CRYPTO_cleanup_all_ex_data
- *     in the client library to avoid name collisions with other OpenSSL
- *     libraries in ISV products.
- */
-#define CRYPTO_cleanup_all_ex_data rlmssl_CRYPTO_cleanup_all_ex_data
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* RLM_LICENSE_H_INCLUDED */

diff  --git a/compiler-rt/cmake/builtin-config-ix.cmake 
b/compiler-rt/cmake/builtin-config-ix.cmake
index 17311bcd8661a..a5704e5fed537 100644
--- a/compiler-rt/cmake/builtin-config-ix.cmake
+++ b/compiler-rt/cmake/builtin-config-ix.cmake
@@ -23,8 +23,8 @@ int foo(int x, int y) {
 ")
 
 
-set(ARM64 aarch64 aarch64v8a)
-set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv8r armv8a)
+set(ARM64 aarch64)
+set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k)
 set(HEXAGON hexagon)
 set(X86 i386)
 set(X86_64 x86_64)

diff  --git a/compiler-rt/lib/builtins/CMakeLists.txt 
b/compiler-rt/lib/builtins/CMakeLists.txt
index 7a1b74d0c7e0e..82332967b1047 100644
--- a/compiler-rt/lib/builtins/CMakeLists.txt
+++ b/compiler-rt/lib/builtins/CMakeLists.txt
@@ -207,11 +207,11 @@ if (HAVE_UNWIND_H)
       gcc_personality_v0.c)
 endif ()
 
-#if (NOT FUCHSIA)
-#  set(GENERIC_SOURCES
-#    ${GENERIC_SOURCES}
-#    clear_cache.c)
-#endif()
+if (NOT FUCHSIA)
+  set(GENERIC_SOURCES
+    ${GENERIC_SOURCES}
+    clear_cache.c)
+endif()
 
 # These sources work on all x86 variants, but only x86 variants.
 set(x86_ARCH_SOURCES
@@ -394,18 +394,11 @@ set(arm_Thumb1_VFPv2_SOURCES
   arm/unordsf2vfp.S)
 set(arm_Thumb1_icache_SOURCES
   arm/sync_synchronize.S)
-
-if(APPLE)
-  set(arm_Thumb1_SOURCES
-    ${arm_Thumb1_JT_SOURCES}
-    ${arm_Thumb1_SjLj_EH_SOURCES}
-    ${arm_Thumb1_VFPv2_SOURCES}
-    ${arm_Thumb1_icache_SOURCES})
-else()
-  set(arm_Thumb1_SOURCES
-    ${arm_Thumb1_JT_SOURCES}
-    ${arm_Thumb1_icache_SOURCES})
-endif()
+set(arm_Thumb1_SOURCES
+  ${arm_Thumb1_JT_SOURCES}
+  ${arm_Thumb1_SjLj_EH_SOURCES}
+  ${arm_Thumb1_VFPv2_SOURCES}
+  ${arm_Thumb1_icache_SOURCES})
 
 if(MINGW)
   set(arm_SOURCES
@@ -460,12 +453,6 @@ set(armhf_SOURCES ${arm_SOURCES})
 set(armv7_SOURCES ${arm_SOURCES})
 set(armv7s_SOURCES ${arm_SOURCES})
 set(armv7k_SOURCES ${arm_SOURCES})
-
-set(armv8a_SOURCES ${arm_SOURCES})
-set(armv8r_SOURCES ${arm_SOURCES})
-
-set(aarch64v8a_SOURCES ${aarch64_SOURCES})
-
 set(arm64_SOURCES ${aarch64_SOURCES})
 
 # macho_embedded archs
@@ -578,13 +565,8 @@ else ()
         set(_arch "arm|armv6m")
       elseif("${arch}" MATCHES "^(armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
         set(_arch "arm")
-      elseif("${arch}" MATCHES "^(armv8a|armv8r)$")
-        set(_arch "arm")
-      elseif("${arch}" MATCHES "^(aarch64v8a)$")
-        set(_arch "aarch64")
       endif()
 
-      message(WARNING "supposed to work for target: " ${arch})
       # For ARM archs, exclude any VFP builtins if VFP is not supported
       if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
         string(REPLACE ";" " " _TARGET_${arch}_CFLAGS 
"${TARGET_${arch}_CFLAGS}")
@@ -607,9 +589,8 @@ else ()
 
       # Needed for clear_cache on debug mode, due to r7's usage in inline asm.
       # Release mode already sets it via -O2/3, Debug mode doesn't.
-      set(BUILTIN_HF_CFLAGS "")
       if (${arch} STREQUAL "armhf")
-        list(APPEND BUILTIN_HF_CFLAGS -fomit-frame-pointer 
-DCOMPILER_RT_ARMHF_TARGET)
+        list(APPEND BUILTIN_CFLAGS -fomit-frame-pointer 
-DCOMPILER_RT_ARMHF_TARGET)
       endif()
 
       # For RISCV32, we must force enable int128 for compiling long
@@ -623,7 +604,7 @@ else ()
                               ARCHS ${arch}
                               SOURCES ${${arch}_SOURCES}
                               DEFS ${BUILTIN_DEFS}
-                              CFLAGS ${BUILTIN_CFLAGS} ${BUILTIN_HF_CFLAGS}
+                              CFLAGS ${BUILTIN_CFLAGS}
                               PARENT_TARGET builtins)
     endif ()
   endforeach ()

diff  --git a/compiler-rt/lib/builtins/int_util.c 
b/compiler-rt/lib/builtins/int_util.c
index b7e6a1c90741f..de87410dbca28 100644
--- a/compiler-rt/lib/builtins/int_util.c
+++ b/compiler-rt/lib/builtins/int_util.c
@@ -45,7 +45,7 @@ void compilerrt_abort_impl(const char *file, int line, const 
char *function) {
   __assert_rtn(function, file, line, "libcompiler_rt abort");
 }
 
-#elif 1
+#elif __Fuchsia__
 
 #ifndef _WIN32
 __attribute__((weak))

diff  --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt
index 80663b1631232..d9def18d725c4 100644
--- a/libcxx/include/CMakeLists.txt
+++ b/libcxx/include/CMakeLists.txt
@@ -168,7 +168,6 @@ if(LIBCXX_INSTALL_SUPPORT_HEADERS)
     ${files}
     support/android/locale_bionic.h
     support/fuchsia/xlocale.h
-    support/hightec/locale_htc.h
     support/ibm/limits.h
     support/ibm/locale_mgmt_aix.h
     support/ibm/support.h

diff  --git a/libcxx/include/__config b/libcxx/include/__config
index 840da61978a36..639d06c9f5d70 100644
--- a/libcxx/include/__config
+++ b/libcxx/include/__config
@@ -307,8 +307,6 @@
 #  define _LIBCPP_USING_NACL_RANDOM
 #elif defined(_LIBCPP_WIN32API)
 #  define _LIBCPP_USING_WIN32_RANDOM
-#elif defined(__HIGHTEC__)
-// Do not define anything here for HighTec
 #else
 #  define _LIBCPP_USING_DEV_RANDOM
 #endif
@@ -981,10 +979,6 @@ template <unsigned> struct __static_assert_check {};
 #define _LIBCPP_HAS_NO_ALIGNED_ALLOCATION
 #endif
 
-#if defined(__HIGHTEC__)
-#define _LIBCPP_HAS_NO_ALIGNED_ALLOCATION
-#endif
-
 #if defined(__APPLE__)
 #  if !defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && \
       defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__)

diff  --git a/libcxx/include/__locale b/libcxx/include/__locale
index 2a71c7d279e9a..f43e7b4303d34 100644
--- a/libcxx/include/__locale
+++ b/libcxx/include/__locale
@@ -37,8 +37,6 @@
 # include <support/fuchsia/xlocale.h>
 #elif defined(_LIBCPP_HAS_MUSL_LIBC)
 # include <support/musl/xlocale.h>
-#elif defined(__HIGHTEC__)
-# include <support/hightec/locale_htc.h>
 #endif
 
 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

diff  --git a/libcxx/include/math.h b/libcxx/include/math.h
index d28194c2992a9..3cc72aa2791e3 100644
--- a/libcxx/include/math.h
+++ b/libcxx/include/math.h
@@ -298,8 +298,6 @@ long double    truncl(long double x);
 #pragma GCC system_header
 #endif
 
-#include <type_traits>
-
 #include_next <math.h>
 
 #ifdef __cplusplus
@@ -308,7 +306,7 @@ long double    truncl(long double x);
 // back to C++ linkage before including these C++ headers.
 extern "C++" {
 
-
+#include <type_traits>
 #include <limits>
 
 // signbit

diff  --git a/libcxx/include/support/hightec/locale_htc.h 
b/libcxx/include/support/hightec/locale_htc.h
deleted file mode 100644
index 7f06f8e243633..0000000000000
--- a/libcxx/include/support/hightec/locale_htc.h
+++ /dev/null
@@ -1,56 +0,0 @@
-// -*- C++ -*-
-//===------------  support/hightec/locale_htc.h -----------------===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef _LIBCPP_SUPPORT_HIGHTEC_LOCALE_HTC_H
-#define _LIBCPP_SUPPORT_HIGHTEC_LOCALE_HTC_H
-
-#include <clocale>
-
-// Add definition for isascii function, which is not part of ISO C
-static inline int isascii(int c) {
-  return c == (c & 0x7f);
-}
-
-// Patch over lack of extended locale support
-typedef void *locale_t;
-
-static inline locale_t duplocale(locale_t) {
-  return NULL;
-}
-
-static inline void freelocale(locale_t) {
-}
-
-static inline locale_t newlocale(int, const char *, locale_t) {
-  return NULL;
-}
-
-static inline locale_t uselocale(locale_t) {
-  return NULL;
-}
-
-#define LC_COLLATE_MASK  (LC_COLLATE)
-#define LC_CTYPE_MASK    (LC_CTYPE)
-#define LC_MESSAGES_MASK (LC_MESSAGES)
-#define LC_MONETARY_MASK (LC_MONETARY)
-#define LC_NUMERIC_MASK  (LC_NUMERIC)
-#define LC_TIME_MASK     (LC_TIME)
-#define LC_ALL_MASK (LC_COLLATE_MASK|\
-                     LC_CTYPE_MASK|\
-                     LC_MONETARY_MASK|\
-                     LC_NUMERIC_MASK|\
-                     LC_TIME_MASK|\
-                     LC_MESSAGES_MASK)
-
-#include <support/xlocale/__posix_l_fallback.h>
-#include <support/xlocale/__strtonum_fallback.h>
-
-
-#endif // _LIBCPP_SUPPORT_HIGHTEC_LOCALE_HTC_H

diff  --git a/libcxx/src/locale.cpp b/libcxx/src/locale.cpp
index 0a23aba354697..b9c701137df2d 100644
--- a/libcxx/src/locale.cpp
+++ b/libcxx/src/locale.cpp
@@ -31,8 +31,6 @@
 #include "__sso_allocator"
 #if defined(_LIBCPP_MSVCRT) || defined(__MINGW32__)
 #include "support/win32/locale_win32.h"
-#elif defined(__HIGHTEC__)
-
 #elif !defined(__BIONIC__)
 #include <langinfo.h>
 #endif

diff  --git a/libcxx/src/random.cpp b/libcxx/src/random.cpp
index 90a822d9a247c..4a2468368d065 100644
--- a/libcxx/src/random.cpp
+++ b/libcxx/src/random.cpp
@@ -166,8 +166,6 @@ random_device::operator()()
     return r;
 }
 
-#elif defined(__HIGHTEC__)
-#warning TODO: implement random device for this architecture
 #else
 #error "Random device not implemented for this architecture"
 #endif

diff  --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt
index a49e482807e7d..e460a72d45c07 100644
--- a/libunwind/CMakeLists.txt
+++ b/libunwind/CMakeLists.txt
@@ -134,7 +134,6 @@ option(LIBUNWIND_ENABLE_ARM_WMMX "Enable unwinding support 
for ARM WMMX register
 option(LIBUNWIND_ENABLE_THREADS "Build libunwind with threading support." ON)
 option(LIBUNWIND_USE_COMPILER_RT "Use compiler-rt instead of libgcc" OFF)
 option(LIBUNWIND_INCLUDE_DOCS "Build the libunwind documentation." 
${LLVM_INCLUDE_DOCS})
-option(LIBUNWIND_BAREMETAL "Build libunwind for baremetal targets." OFF)
 
 set(LIBUNWIND_LIBDIR_SUFFIX "${LLVM_LIBDIR_SUFFIX}" CACHE STRING
     "Define suffix of library directory name (32/64)")
@@ -333,10 +332,6 @@ if (WIN32 AND LIBUNWIND_ENABLE_STATIC AND NOT 
LIBUNWIND_ENABLE_SHARED)
   add_definitions(-D_LIBUNWIND_DISABLE_VISIBILITY_ANNOTATIONS)
 endif()
 
-if (LIBUNWIND_BAREMETAL)
-  list(APPEND LIBUNWIND_COMPILE_FLAGS -D_LIBUNWIND_IS_BAREMETAL)
-endif()
-
 
#===============================================================================
 # Setup Source Code
 
#===============================================================================

diff  --git a/lld/Common/Version.cpp b/lld/Common/Version.cpp
index 3ef83bbeddd18..6226c9a2fac69 100644
--- a/lld/Common/Version.cpp
+++ b/lld/Common/Version.cpp
@@ -30,8 +30,6 @@ static std::string getRepository() {
   std::string Repo = getRepositoryPath();
   std::string Rev = LLD_REVISION_STRING;
 
-  return " (" + Rev + ")";
-
   if (Repo.empty() && Rev.empty())
     return "";
   if (!Repo.empty() && !Rev.empty())


        
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
  • [llvm-branch-commits] [compiler... Konstantin Schwarz via llvm-branch-commits

Reply via email to