llvmbot wrote:

<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Brad Smith (brad0)

<details>
<summary>Changes</summary>



---
Full diff: https://github.com/llvm/llvm-project/pull/157241.diff


8 Files Affected:

- (modified) clang/include/clang/Driver/ToolChain.h (-6) 
- (modified) clang/lib/Driver/ToolChains/CommonArgs.cpp (+1-1) 
- (modified) clang/lib/Driver/ToolChains/Fuchsia.h (-5) 
- (modified) clang/lib/Driver/ToolChains/Haiku.h (-5) 
- (modified) clang/lib/Driver/ToolChains/Linux.cpp (-13) 
- (modified) clang/lib/Driver/ToolChains/Linux.h (-1) 
- (modified) clang/lib/Driver/ToolChains/Managarm.h (-5) 
- (modified) clang/lib/Driver/ToolChains/OpenBSD.h (-5) 


``````````diff
diff --git a/clang/include/clang/Driver/ToolChain.h 
b/clang/include/clang/Driver/ToolChain.h
index 1425714d34110..b5943317fc243 100644
--- a/clang/include/clang/Driver/ToolChain.h
+++ b/clang/include/clang/Driver/ToolChain.h
@@ -564,12 +564,6 @@ class ToolChain {
   virtual UnwindTableLevel
   getDefaultUnwindTableLevel(const llvm::opt::ArgList &Args) const;
 
-  /// Test whether this toolchain supports outline atomics by default.
-  virtual bool
-  IsAArch64OutlineAtomicsDefault(const llvm::opt::ArgList &Args) const {
-    return false;
-  }
-
   /// Test whether this toolchain defaults to PIC.
   virtual bool isPICDefault() const = 0;
 
diff --git a/clang/lib/Driver/ToolChains/CommonArgs.cpp 
b/clang/lib/Driver/ToolChains/CommonArgs.cpp
index 299422328aecf..809bf8db357c5 100644
--- a/clang/lib/Driver/ToolChains/CommonArgs.cpp
+++ b/clang/lib/Driver/ToolChains/CommonArgs.cpp
@@ -3054,7 +3054,7 @@ void tools::addOutlineAtomicsArgs(const Driver &D, const 
ToolChain &TC,
         CmdArgs.push_back("-outline-atomics");
       }
     }
-  } else if (Triple.isAArch64() && TC.IsAArch64OutlineAtomicsDefault(Args)) {
+  } else if (Triple.isAArch64()) {
     CmdArgs.push_back("-target-feature");
     CmdArgs.push_back("+outline-atomics");
   }
diff --git a/clang/lib/Driver/ToolChains/Fuchsia.h 
b/clang/lib/Driver/ToolChains/Fuchsia.h
index 619968f585024..fd9a317a7b5d2 100644
--- a/clang/lib/Driver/ToolChains/Fuchsia.h
+++ b/clang/lib/Driver/ToolChains/Fuchsia.h
@@ -90,11 +90,6 @@ class LLVM_LIBRARY_VISIBILITY Fuchsia : public ToolChain {
   GetRuntimeLibType(const llvm::opt::ArgList &Args) const override;
   CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const 
override;
 
-  bool IsAArch64OutlineAtomicsDefault(
-      const llvm::opt::ArgList &Args) const override {
-    return true;
-  }
-
   void
   addClangTargetOptions(const llvm::opt::ArgList &DriverArgs,
                         llvm::opt::ArgStringList &CC1Args,
diff --git a/clang/lib/Driver/ToolChains/Haiku.h 
b/clang/lib/Driver/ToolChains/Haiku.h
index b4b14cf0aeb99..edebf5c49187b 100644
--- a/clang/lib/Driver/ToolChains/Haiku.h
+++ b/clang/lib/Driver/ToolChains/Haiku.h
@@ -56,11 +56,6 @@ class LLVM_LIBRARY_VISIBILITY Haiku : public Generic_ELF {
       const llvm::opt::ArgList &DriverArgs,
       llvm::opt::ArgStringList &CC1Args) const override;
 
-  bool IsAArch64OutlineAtomicsDefault(
-      const llvm::opt::ArgList &Args) const override {
-    return true;
-  }
-
   SanitizerMask getSupportedSanitizers() const override;
   unsigned GetDefaultDwarfVersion() const override { return 4; }
 
diff --git a/clang/lib/Driver/ToolChains/Linux.cpp 
b/clang/lib/Driver/ToolChains/Linux.cpp
index 16e35b08cfbd6..944e8f08d8859 100644
--- a/clang/lib/Driver/ToolChains/Linux.cpp
+++ b/clang/lib/Driver/ToolChains/Linux.cpp
@@ -772,19 +772,6 @@ bool Linux::isPIEDefault(const llvm::opt::ArgList &Args) 
const {
          getTriple().isMusl() || getSanitizerArgs(Args).requiresPIE();
 }
 
-bool Linux::IsAArch64OutlineAtomicsDefault(const ArgList &Args) const {
-  // Outline atomics for AArch64 are supported by compiler-rt
-  // and libgcc since 9.3.1
-  assert(getTriple().isAArch64() && "expected AArch64 target!");
-  ToolChain::RuntimeLibType RtLib = GetRuntimeLibType(Args);
-  if (RtLib == ToolChain::RLT_CompilerRT)
-    return true;
-  assert(RtLib == ToolChain::RLT_Libgcc && "unexpected runtime library type!");
-  if (GCCInstallation.getVersion().isOlderThan(9, 3, 1))
-    return false;
-  return true;
-}
-
 bool Linux::IsMathErrnoDefault() const {
   if (getTriple().isAndroid() || getTriple().isMusl())
     return false;
diff --git a/clang/lib/Driver/ToolChains/Linux.h 
b/clang/lib/Driver/ToolChains/Linux.h
index 2eb2d05786fe3..14a6e9e87b445 100644
--- a/clang/lib/Driver/ToolChains/Linux.h
+++ b/clang/lib/Driver/ToolChains/Linux.h
@@ -47,7 +47,6 @@ class LLVM_LIBRARY_VISIBILITY Linux : public Generic_ELF {
   unsigned GetDefaultDwarfVersion() const override;
   CXXStdlibType GetDefaultCXXStdlibType() const override;
   bool
-  IsAArch64OutlineAtomicsDefault(const llvm::opt::ArgList &Args) const 
override;
   bool isPIEDefault(const llvm::opt::ArgList &Args) const override;
   bool IsMathErrnoDefault() const override;
   SanitizerMask getSupportedSanitizers() const override;
diff --git a/clang/lib/Driver/ToolChains/Managarm.h 
b/clang/lib/Driver/ToolChains/Managarm.h
index 408c0589a3138..326197eb52bb7 100644
--- a/clang/lib/Driver/ToolChains/Managarm.h
+++ b/clang/lib/Driver/ToolChains/Managarm.h
@@ -35,11 +35,6 @@ class LLVM_LIBRARY_VISIBILITY Managarm : public Generic_ELF {
   addLibStdCxxIncludePaths(const llvm::opt::ArgList &DriverArgs,
                            llvm::opt::ArgStringList &CC1Args) const override;
 
-  bool IsAArch64OutlineAtomicsDefault(
-      const llvm::opt::ArgList &Args) const override {
-    return true;
-  }
-
   SanitizerMask getSupportedSanitizers() const override;
   std::string computeSysRoot() const override;
 
diff --git a/clang/lib/Driver/ToolChains/OpenBSD.h 
b/clang/lib/Driver/ToolChains/OpenBSD.h
index ad0f9e6799568..11b873cb30032 100644
--- a/clang/lib/Driver/ToolChains/OpenBSD.h
+++ b/clang/lib/Driver/ToolChains/OpenBSD.h
@@ -79,11 +79,6 @@ class LLVM_LIBRARY_VISIBILITY OpenBSD : public Generic_ELF {
   void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args,
                            llvm::opt::ArgStringList &CmdArgs) const override;
 
-  bool IsAArch64OutlineAtomicsDefault(
-      const llvm::opt::ArgList &Args) const override {
-    return true;
-  }
-
   std::string getCompilerRT(const llvm::opt::ArgList &Args, StringRef 
Component,
                             FileType Type = ToolChain::FT_Static,
                             bool IsFortran = false) const override;

``````````

</details>


https://github.com/llvm/llvm-project/pull/157241
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to