summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/Targets.cpp
diff options
context:
space:
mode:
authorMartell Malone <martellmalone@gmail.com>2017-11-21 11:28:29 +0000
committerMartell Malone <martellmalone@gmail.com>2017-11-21 11:28:29 +0000
commit051e966e49721685a3f1a95c6fee50a0f1762bd8 (patch)
treef1bd810b1af8390784b2502082b5e2589ce012be /clang/lib/Basic/Targets.cpp
parent124f5de84134095ac4cfa88eecfec1cf39995516 (diff)
downloadbcm5719-llvm-051e966e49721685a3f1a95c6fee50a0f1762bd8.tar.gz
bcm5719-llvm-051e966e49721685a3f1a95c6fee50a0f1762bd8.zip
[MINGW] normalize WIN32 macros
move _WIN64 and _WIN32 defines to lib/Basic/Targets/OSTargets.h move WIN32, WIN64 and __MINGW64__ to addMinGWDefines fixes __MINGW64__ not being defined for aarch64 adds WIN32 definition for x64 Reviewers: mstorsjo Differential Revision: https://reviews.llvm.org/D40285 llvm-svn: 318755
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r--clang/lib/Basic/Targets.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index a9a5f4ddcfb..7deebc06c3e 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -97,7 +97,14 @@ void addCygMingDefines(const LangOptions &Opts, MacroBuilder &Builder) {
}
}
-void addMinGWDefines(const LangOptions &Opts, MacroBuilder &Builder) {
+void addMinGWDefines(const llvm::Triple &Triple, const LangOptions &Opts,
+ MacroBuilder &Builder) {
+ DefineStd(Builder, "WIN32", Opts);
+ DefineStd(Builder, "WINNT", Opts);
+ if (Triple.isArch64Bit()) {
+ DefineStd(Builder, "WIN64", Opts);
+ Builder.defineMacro("__MINGW64__");
+ }
Builder.defineMacro("__MSVCRT__");
Builder.defineMacro("__MINGW32__");
addCygMingDefines(Opts, Builder);
OpenPOWER on IntegriCloud