aboutsummaryrefslogtreecommitdiff
path: root/lib/Basic/Targets.cpp
diff options
context:
space:
mode:
authorCameron Esfahani <dirty@apple.com>2010-09-15 00:28:12 +0000
committerCameron Esfahani <dirty@apple.com>2010-09-15 00:28:12 +0000
commit1484e0da648e1aa3a68f7114bb771a6ca57f5316 (patch)
treea524fe90167f5caec6703aa2264d6d1e8b1d3dc4 /lib/Basic/Targets.cpp
parent09246183715f4b0a8728a3827bfe894b6c6016b9 (diff)
Fix Windows64 target info so pointer arithmetic is done correctly, and no sign extension code is emitted: PtrDiffType needs to be a signed long long. Add a corresponding test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113910 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic/Targets.cpp')
-rw-r--r--lib/Basic/Targets.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp
index df20defa0f..1896b5916b 100644
--- a/lib/Basic/Targets.cpp
+++ b/lib/Basic/Targets.cpp
@@ -1483,6 +1483,9 @@ public:
IntMaxType = SignedLongLong;
UIntMaxType = UnsignedLongLong;
Int64Type = SignedLongLong;
+ SizeType = UnsignedLongLong;
+ PtrDiffType = SignedLongLong;
+ IntPtrType = SignedLongLong;
}
virtual void getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const {