Honour built-in defines on win64 targets for automatically subtarget recognize.

Force stack alignment to 16 bytes on win targets.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48695 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Anton Korobeynikov 2008-03-22 21:18:22 +00:00
parent 508f0fdb53
commit 2b4f780585

View File

@ -274,7 +274,7 @@ X86Subtarget::X86Subtarget(const Module &M, const std::string &FS, bool is64Bit)
} else if (TT.empty()) {
#if defined(__CYGWIN__)
TargetType = isCygwin;
#elif defined(__MINGW32__)
#elif defined(__MINGW32__) || defined(__MINGW64__)
TargetType = isMingw;
#elif defined(__APPLE__)
TargetType = isDarwin;
@ -284,7 +284,7 @@ X86Subtarget::X86Subtarget(const Module &M, const std::string &FS, bool is64Bit)
DarwinVers = 8; // Minimum supported darwin is Tiger.
#endif
#elif defined(_WIN32)
#elif defined(_WIN32) || defined(_WIN64)
TargetType = isWindows;
#endif
}
@ -299,6 +299,7 @@ X86Subtarget::X86Subtarget(const Module &M, const std::string &FS, bool is64Bit)
if (TargetType == isDarwin ||
TargetType == isCygwin ||
TargetType == isMingw ||
TargetType == isWindows ||
(TargetType == isELF && Is64Bit))
stackAlignment = 16;
}