[PATCH] D74972: [hexagon] Define __ELF__ by default.
Sid Manning via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Feb 21 09:09:39 PST 2020
sidneym created this revision.
sidneym added reviewers: kparzysz, bcain.
Herald added subscribers: Sanitizers, cfe-commits, mgorny.
Herald added projects: clang, Sanitizers, LLVM.
__ELF__ is not enabled by default. Correcting an issue in compiler-rt's cmake revealed that __ELF__ was not defined.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D74972
Files:
clang/lib/Basic/Targets/Hexagon.cpp
clang/test/Preprocessor/hexagon-predefines.c
compiler-rt/lib/builtins/CMakeLists.txt
Index: compiler-rt/lib/builtins/CMakeLists.txt
===================================================================
--- compiler-rt/lib/builtins/CMakeLists.txt
+++ compiler-rt/lib/builtins/CMakeLists.txt
@@ -492,7 +492,6 @@
set(armv7em_SOURCES ${arm_SOURCES})
# hexagon arch
-set(hexagon_SOURCES ${GENERIC_SOURCES} ${GENERIC_TF_SOURCES})
set(hexagon_SOURCES
hexagon/common_entry_exit_abi1.S
hexagon/common_entry_exit_abi2.S
@@ -524,6 +523,8 @@
hexagon/udivsi3.S
hexagon/umoddi3.S
hexagon/umodsi3.S
+ ${GENERIC_SOURCES}
+ ${GENERIC_TF_SOURCES}
)
Index: clang/test/Preprocessor/hexagon-predefines.c
===================================================================
--- clang/test/Preprocessor/hexagon-predefines.c
+++ clang/test/Preprocessor/hexagon-predefines.c
@@ -96,3 +96,8 @@
// CHECK-V67HVX-128B: #define __HVX_LENGTH__ 128
// CHECK-V67HVX-128B: #define __HVX__ 1
// CHECK-V67HVX-128B: #define __hexagon__ 1
+
+// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv67 \
+// RUN: -target-feature +hvxv67 -target-feature +hvx-length128b %s | FileCheck \
+// RUN: %s -check-prefix CHECK-ELF
+// CHECK-ELF: #define __ELF__ 1
Index: clang/lib/Basic/Targets/Hexagon.cpp
===================================================================
--- clang/lib/Basic/Targets/Hexagon.cpp
+++ clang/lib/Basic/Targets/Hexagon.cpp
@@ -24,6 +24,8 @@
Builder.defineMacro("__qdsp6__", "1");
Builder.defineMacro("__hexagon__", "1");
+ Builder.defineMacro("__ELF__");
+
// The macro __HVXDBL__ is deprecated.
bool DefineHvxDbl = false;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D74972.245885.patch
Type: text/x-patch
Size: 1584 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200221/9dec76f7/attachment.bin>
More information about the cfe-commits
mailing list