Author: Fangrui Song
Date: 2023-02-23T15:06:02-08:00
New Revision: ab9b2fe2a5f817f3bbca0d187a99aaae23e75d6a

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

LOG: [Driver] Define BareMetal::HasNativeLLVMSupport to return true

D33259 switched the default linker to ld.lld which supports LLVM LTO.
We can support LTO compile/link in one command and drop the
`unable to pass LLVM bit-code files to linker` error.

Fix https://github.com/llvm/llvm-project/issues/52807

Added: 
    

Modified: 
    clang/lib/Driver/ToolChains/BareMetal.h
    clang/test/Driver/native-llvm.c

Removed: 
    


################################################################################
diff  --git a/clang/lib/Driver/ToolChains/BareMetal.h 
b/clang/lib/Driver/ToolChains/BareMetal.h
index 2a16a5beb08d7..54de97c734c19 100644
--- a/clang/lib/Driver/ToolChains/BareMetal.h
+++ b/clang/lib/Driver/ToolChains/BareMetal.h
@@ -37,6 +37,7 @@ class LLVM_LIBRARY_VISIBILITY BareMetal : public ToolChain {
   bool useIntegratedAs() const override { return true; }
   bool isBareMetal() const override { return true; }
   bool isCrossCompiling() const override { return true; }
+  bool HasNativeLLVMSupport() const override { return true; }
   bool isPICDefault() const override { return false; }
   bool isPIEDefault(const llvm::opt::ArgList &Args) const override {
     return false;

diff  --git a/clang/test/Driver/native-llvm.c b/clang/test/Driver/native-llvm.c
index c9543b855bc76..a1f9569317081 100644
--- a/clang/test/Driver/native-llvm.c
+++ b/clang/test/Driver/native-llvm.c
@@ -3,3 +3,5 @@
 
 // RUN: %clang -### -flto -target x86_64-unknown-unknown %s 2>&1 | FileCheck %s
 // CHECK: error: {{.*}} unable to pass LLVM bit-code files to linker
+
+// RUN: %clang -### -flto --target=arm-none-eabi %s 2>&1 | FileCheck /dev/null 
--implicit-check-not=error:


        
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to