diff options
author | Cameron Esfahani <dirty@apple.com> | 2010-09-15 00:28:12 +0000 |
---|---|---|
committer | Cameron Esfahani <dirty@apple.com> | 2010-09-15 00:28:12 +0000 |
commit | 1484e0da648e1aa3a68f7114bb771a6ca57f5316 (patch) | |
tree | a524fe90167f5caec6703aa2264d6d1e8b1d3dc4 /lib/Basic/Targets.cpp | |
parent | 09246183715f4b0a8728a3827bfe894b6c6016b9 (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.cpp | 3 |
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 { |