From: Eli Friedman Date: Sun, 5 Jul 2009 22:31:18 +0000 (+0000) Subject: More tweaks to types for OpenBSD. Patch by Jonathan Gray. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6036ebe330ff97223d7d226de6eb3a74af5aeb32;p=clang More tweaks to types for OpenBSD. Patch by Jonathan Gray. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74805 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 7a5adea1a3..f850ea7dd4 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -895,6 +895,7 @@ public: OpenBSDTargetInfo(triple) { SizeType = UnsignedLong; IntPtrType = SignedLong; + PtrDiffType = SignedLong; } }; } // end anonymous namespace @@ -987,6 +988,18 @@ public: }; } // end anonymous namespace +namespace { +class OpenBSDX86_64TargetInfo : public OpenBSDTargetInfo { +public: + OpenBSDX86_64TargetInfo(const std::string& triple) + : OpenBSDTargetInfo(triple) { + IntMaxType = SignedLongLong; + UIntMaxType = UnsignedLongLong; + Int64Type = SignedLongLong; + } +}; +} // end anonymous namespace + namespace { class ARMTargetInfo : public TargetInfo { enum { @@ -1392,7 +1405,7 @@ TargetInfo* TargetInfo::CreateTargetInfo(const std::string &T) { if (isLinux) return new LinuxTargetInfo(T); if (isOpenBSD) - return new OpenBSDTargetInfo(T); + return new OpenBSDX86_64TargetInfo(T); if (isFreeBSD) return new FreeBSDTargetInfo(T); if (isSolaris)