diff options
author | Martell Malone <martellmalone@gmail.com> | 2017-11-21 11:28:29 +0000 |
---|---|---|
committer | Martell Malone <martellmalone@gmail.com> | 2017-11-21 11:28:29 +0000 |
commit | 051e966e49721685a3f1a95c6fee50a0f1762bd8 (patch) | |
tree | f1bd810b1af8390784b2502082b5e2589ce012be /clang/lib/Basic/Targets.cpp | |
parent | 124f5de84134095ac4cfa88eecfec1cf39995516 (diff) | |
download | bcm5719-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.cpp | 9 |
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); |