Skip to content

Commit fe06e23

Browse files
committed
[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
1 parent 92f1562 commit fe06e23

File tree

4 files changed

+4
-0
lines changed

4 files changed

+4
-0
lines changed

clang/lib/Basic/Targets/AVR.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,7 @@ void AVRTargetInfo::getTargetDefines(const LangOptions &Opts,
300300
Builder.defineMacro("AVR");
301301
Builder.defineMacro("__AVR");
302302
Builder.defineMacro("__AVR__");
303+
Builder.defineMacro("__ELF__");
303304

304305
if (!this->CPU.empty()) {
305306
auto It = llvm::find_if(

clang/test/CodeGen/avr/target-cpu-defines/atmega328p.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
// CHECK: #define __AVR 1
66
// CHECK: #define __AVR_ATmega328P__ 1
77
// CHECK: #define __AVR__ 1
8+
// CHECK: #define __ELF__ 1

clang/test/CodeGen/avr/target-cpu-defines/attiny104.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
// CHECK: #define __AVR 1
66
// CHECK: #define __AVR_ATtiny104__ 1
77
// CHECK: #define __AVR__ 1
8+
// CHECK: #define __ELF__ 1

clang/test/CodeGen/avr/target-cpu-defines/common.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@
44
// CHECK: #define AVR 1
55
// CHECK: #define __AVR 1
66
// CHECK: #define __AVR__ 1
7+
// CHECK: #define __ELF__ 1

0 commit comments

Comments
 (0)