aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAyke van Laethem <aykevanlaethem@gmail.com>2020-04-14 17:30:24 +0200
committerAyke van Laethem <aykevanlaethem@gmail.com>2020-04-15 00:22:53 +0200
commitfe06e231ff1536e7d0a99551590f6de5a38ce23a (patch)
tree517ebd33dad09e15d1cdeb0a233163eadc2de404
parent92f1562f3dd158d837c66a1dd20ae745477d9c36 (diff)
downloadllvm-fe06e231ff1536e7d0a99551590f6de5a38ce23a.zip
llvm-fe06e231ff1536e7d0a99551590f6de5a38ce23a.tar.gz
llvm-fe06e231ff1536e7d0a99551590f6de5a38ce23a.tar.bz2
[AVR] Define __ELF__
This symbol is defined in avr-gcc. Because AVR normally uses the ELF format, define the symbol unconditionally. This patch is needed to get Clang to compile compiler-rt. Differential Revision: https://reviews.llvm.org/D78117
-rw-r--r--clang/lib/Basic/Targets/AVR.cpp1
-rw-r--r--clang/test/CodeGen/avr/target-cpu-defines/atmega328p.c1
-rw-r--r--clang/test/CodeGen/avr/target-cpu-defines/attiny104.c1
-rw-r--r--clang/test/CodeGen/avr/target-cpu-defines/common.c1
4 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets/AVR.cpp b/clang/lib/Basic/Targets/AVR.cpp
index d865676..bb215b4 100644
--- a/clang/lib/Basic/Targets/AVR.cpp
+++ b/clang/lib/Basic/Targets/AVR.cpp
@@ -300,6 +300,7 @@ void AVRTargetInfo::getTargetDefines(const LangOptions &Opts,
Builder.defineMacro("AVR");
Builder.defineMacro("__AVR");
Builder.defineMacro("__AVR__");
+ Builder.defineMacro("__ELF__");
if (!this->CPU.empty()) {
auto It = llvm::find_if(
diff --git a/clang/test/CodeGen/avr/target-cpu-defines/atmega328p.c b/clang/test/CodeGen/avr/target-cpu-defines/atmega328p.c
index 83b0acc..29f8fa6 100644
--- a/clang/test/CodeGen/avr/target-cpu-defines/atmega328p.c
+++ b/clang/test/CodeGen/avr/target-cpu-defines/atmega328p.c
@@ -5,3 +5,4 @@
// CHECK: #define __AVR 1
// CHECK: #define __AVR_ATmega328P__ 1
// CHECK: #define __AVR__ 1
+// CHECK: #define __ELF__ 1
diff --git a/clang/test/CodeGen/avr/target-cpu-defines/attiny104.c b/clang/test/CodeGen/avr/target-cpu-defines/attiny104.c
index 7de65bf..3f3d871 100644
--- a/clang/test/CodeGen/avr/target-cpu-defines/attiny104.c
+++ b/clang/test/CodeGen/avr/target-cpu-defines/attiny104.c
@@ -5,3 +5,4 @@
// CHECK: #define __AVR 1
// CHECK: #define __AVR_ATtiny104__ 1
// CHECK: #define __AVR__ 1
+// CHECK: #define __ELF__ 1
diff --git a/clang/test/CodeGen/avr/target-cpu-defines/common.c b/clang/test/CodeGen/avr/target-cpu-defines/common.c
index 0b11f5d..3f93852 100644
--- a/clang/test/CodeGen/avr/target-cpu-defines/common.c
+++ b/clang/test/CodeGen/avr/target-cpu-defines/common.c
@@ -4,3 +4,4 @@
// CHECK: #define AVR 1
// CHECK: #define __AVR 1
// CHECK: #define __AVR__ 1
+// CHECK: #define __ELF__ 1