Author: Sid Manning
Date: 2020-03-12T15:00:15-05:00
New Revision: 6174fddbe3d40972d97f63d9bf6bb1c4236de0e3

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

LOG: [Hexagon] Enable init_arrays when target is linux-musl

Differential Revision: https://reviews.llvm.org/D76079

Added: 
    

Modified: 
    clang/lib/Driver/ToolChains/Hexagon.cpp
    clang/test/Driver/hexagon-toolchain-elf.c

Removed: 
    


################################################################################
diff  --git a/clang/lib/Driver/ToolChains/Hexagon.cpp 
b/clang/lib/Driver/ToolChains/Hexagon.cpp
index 1e2e7c84b006..4a5e8254dfa0 100644
--- a/clang/lib/Driver/ToolChains/Hexagon.cpp
+++ b/clang/lib/Driver/ToolChains/Hexagon.cpp
@@ -544,7 +544,8 @@ unsigned HexagonToolChain::getOptimizationLevel(
 void HexagonToolChain::addClangTargetOptions(const ArgList &DriverArgs,
                                              ArgStringList &CC1Args,
                                              Action::OffloadKind) const {
-  bool UseInitArrayDefault = false;
+
+  bool UseInitArrayDefault = getTriple().isMusl();
 
   if (!DriverArgs.hasFlag(options::OPT_fuse_init_array,
                           options::OPT_fno_use_init_array,

diff  --git a/clang/test/Driver/hexagon-toolchain-elf.c 
b/clang/test/Driver/hexagon-toolchain-elf.c
index 93c9da2250f5..fba1a891a361 100644
--- a/clang/test/Driver/hexagon-toolchain-elf.c
+++ b/clang/test/Driver/hexagon-toolchain-elf.c
@@ -664,3 +664,13 @@
 // CHECK089:       "/hexagon{{/|\\\\}}lib{{/|\\\\}}crt1.o"
 // CHECK089-NOT:   -lclang_rt.builtins-hexagon
 // CHECK089-NOT:   -lc
+// 
-----------------------------------------------------------------------------
+// Not Passing -fno-use-init-array when musl is selected
+// 
-----------------------------------------------------------------------------
+// RUN: %clang -### -target hexagon-unknown-linux-musl \
+// RUN:   -ccc-install-dir %S/Inputs/hexagon_tree/Tools/bin \
+// RUN:   -mcpu=hexagonv60 \
+// RUN:   %s 2>&1 \
+// RUN:   | FileCheck -check-prefix=CHECK090 %s
+// CHECK090-NOT:          -fno-use-init-array
+// 
-----------------------------------------------------------------------------


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

Reply via email to