summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2017-11-17 08:06:49 +0000
committerMartin Storsjo <martin@martin.st>2017-11-17 08:06:49 +0000
commitec82128971fb2775a0d18de1fe25ec639495d134 (patch)
tree26aa78e01a6cd713232d3c86d740dc6b22240ce6
parentb4c907edd7340ce28d4047f6cc9a2d83702c4989 (diff)
downloadbcm5719-llvm-ec82128971fb2775a0d18de1fe25ec639495d134.tar.gz
bcm5719-llvm-ec82128971fb2775a0d18de1fe25ec639495d134.zip
[MinGW] Define __ARM_DWARF_EH__ for MinGW/ARM
Since SVN r318510, the MinGW/ARM configuration defaults to dwarf exception handling. Differential Revision: https://reviews.llvm.org/D39533 llvm-svn: 318511
-rw-r--r--clang/lib/Basic/Targets/ARM.cpp1
-rw-r--r--clang/test/Preprocessor/init.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets/ARM.cpp b/clang/lib/Basic/Targets/ARM.cpp
index def490b99ff..e6dd6de952b 100644
--- a/clang/lib/Basic/Targets/ARM.cpp
+++ b/clang/lib/Basic/Targets/ARM.cpp
@@ -1002,6 +1002,7 @@ void MinGWARMTargetInfo::getTargetDefines(const LangOptions &Opts,
DefineStd(Builder, "WIN32", Opts);
DefineStd(Builder, "WINNT", Opts);
Builder.defineMacro("_ARM_");
+ Builder.defineMacro("__ARM_DWARF_EH__");
addMinGWDefines(Opts, Builder);
}
diff --git a/clang/test/Preprocessor/init.c b/clang/test/Preprocessor/init.c
index 87a591923b8..f508c9e1aaf 100644
--- a/clang/test/Preprocessor/init.c
+++ b/clang/test/Preprocessor/init.c
@@ -2645,6 +2645,10 @@
// Thumbebv7: #define __THUMB_INTERWORK__ 1
// Thumbebv7: #define __thumb2__ 1
+// RUN: %clang -E -dM -ffreestanding -target thumbv7-pc-mingw32 %s -o - | FileCheck -match-full-lines -check-prefix THUMB-MINGW %s
+
+// THUMB-MINGW:#define __ARM_DWARF_EH__ 1
+
//
// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -match-full-lines -check-prefix I386 %s
//
OpenPOWER on IntegriCloud