Give TargetInfo a new IntPtrType to hold the intptr_t type for

a target.

Make Preprocessor.cpp define a new __INTPTR_TYPE__ macro based on this.

On linux/32, set intptr_t to int, instead of long.  This fixes PR3563.

llvm-svn: 64495
This commit is contained in:
Chris Lattner
2009-02-13 22:28:55 +00:00
parent 02b63b4287
commit 7e4c81c8c6
5 changed files with 8 additions and 20 deletions

View File

@@ -557,6 +557,7 @@ static void InitializePredefinedMacros(Preprocessor &PP,
DefineType("__INTMAX_TYPE__", TI.getIntMaxType(), Buf);
DefineType("__UINTMAX_TYPE__", TI.getUIntMaxType(), Buf);
DefineType("__PTRDIFF_TYPE__", TI.getPtrDiffType(0), Buf);
DefineType("__INTPTR_TYPE__", TI.getIntPtrType(), Buf);
DefineType("__SIZE_TYPE__", TI.getSizeType(), Buf);
DefineType("__WCHAR_TYPE__", TI.getWCharType(), Buf);
// FIXME: TargetInfo hookize __WINT_TYPE__.