This revision was not accepted when it landed; it landed in state "Needs Review". This revision was automatically updated to reflect the committed changes. Closed by commit rG430c9a80c17b: [Hexagon] Enable linux #defines (authored by sidneym).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76310/new/ https://reviews.llvm.org/D76310 Files: clang/lib/Basic/Targets.cpp clang/test/Preprocessor/hexagon-predefines.c Index: clang/test/Preprocessor/hexagon-predefines.c =================================================================== --- clang/test/Preprocessor/hexagon-predefines.c +++ clang/test/Preprocessor/hexagon-predefines.c @@ -101,3 +101,15 @@ // RUN: -target-feature +hvxv67 -target-feature +hvx-length128b %s | FileCheck \ // RUN: %s -check-prefix CHECK-ELF // CHECK-ELF: #define __ELF__ 1 + +// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-linux-musl \ +// RUN: -target-cpu hexagonv67 -target-feature +hvxv67 \ +// RUN: -target-feature +hvx-length128b %s | FileCheck \ +// RUN: %s -check-prefix CHECK-LINUX +// CHECK-LINUX: #define __gnu_linux__ 1 +// CHECK-LINUX: #define __linux 1 +// CHECK-LINUX: #define __linux__ 1 +// CHECK-LINUX: #define __unix 1 +// CHECK-LINUX: #define __unix__ 1 +// CHECK-LINUX: #define linux 1 +// CHECK-LINUX: #define unix 1 Index: clang/lib/Basic/Targets.cpp =================================================================== --- clang/lib/Basic/Targets.cpp +++ clang/lib/Basic/Targets.cpp @@ -117,6 +117,9 @@ return new XCoreTargetInfo(Triple, Opts); case llvm::Triple::hexagon: + if (os == llvm::Triple::Linux && + Triple.getEnvironment() == llvm::Triple::Musl) + return new LinuxTargetInfo<HexagonTargetInfo>(Triple, Opts); return new HexagonTargetInfo(Triple, Opts); case llvm::Triple::lanai:
Index: clang/test/Preprocessor/hexagon-predefines.c =================================================================== --- clang/test/Preprocessor/hexagon-predefines.c +++ clang/test/Preprocessor/hexagon-predefines.c @@ -101,3 +101,15 @@ // RUN: -target-feature +hvxv67 -target-feature +hvx-length128b %s | FileCheck \ // RUN: %s -check-prefix CHECK-ELF // CHECK-ELF: #define __ELF__ 1 + +// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-linux-musl \ +// RUN: -target-cpu hexagonv67 -target-feature +hvxv67 \ +// RUN: -target-feature +hvx-length128b %s | FileCheck \ +// RUN: %s -check-prefix CHECK-LINUX +// CHECK-LINUX: #define __gnu_linux__ 1 +// CHECK-LINUX: #define __linux 1 +// CHECK-LINUX: #define __linux__ 1 +// CHECK-LINUX: #define __unix 1 +// CHECK-LINUX: #define __unix__ 1 +// CHECK-LINUX: #define linux 1 +// CHECK-LINUX: #define unix 1 Index: clang/lib/Basic/Targets.cpp =================================================================== --- clang/lib/Basic/Targets.cpp +++ clang/lib/Basic/Targets.cpp @@ -117,6 +117,9 @@ return new XCoreTargetInfo(Triple, Opts); case llvm::Triple::hexagon: + if (os == llvm::Triple::Linux && + Triple.getEnvironment() == llvm::Triple::Musl) + return new LinuxTargetInfo<HexagonTargetInfo>(Triple, Opts); return new HexagonTargetInfo(Triple, Opts); case llvm::Triple::lanai:
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits