diff options
| author | Chris Lattner <sabre@nondot.org> | 2008-10-05 20:06:37 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2008-10-05 20:06:37 +0000 |
| commit | 6512a889840e1402c922717ee7475cb261a43ea9 (patch) | |
| tree | 440e60f5bc4d5d5e5fddd630fd9b51647fc7ec7d /clang/lib/Basic | |
| parent | 2b1ef227f53fe3250d5d61e0d2161a622b31692b (diff) | |
| download | bcm5719-llvm-6512a889840e1402c922717ee7475cb261a43ea9.tar.gz bcm5719-llvm-6512a889840e1402c922717ee7475cb261a43ea9.zip | |
move a bunch more integer sizing out of target-specific code into
target indep code.
Note that this changes functionality on PIC16: it defines __INT_MAX__
correctly for it, and it changes sizeof(long) to 16-bits (to match
the size of pointer).
llvm-svn: 57132
Diffstat (limited to 'clang/lib/Basic')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 42 |
1 files changed, 1 insertions, 41 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 7aad3e86545..451c67f4e00 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -115,22 +115,6 @@ static void getPowerPCDefines(std::vector<char> &Defs, bool is64Bit) { Define(Defs, "_BIG_ENDIAN"); Define(Defs, "__BIG_ENDIAN__"); - if (is64Bit) { - Define(Defs, "__INTMAX_MAX__", "9223372036854775807L"); - Define(Defs, "__INTMAX_TYPE__", "long int"); - Define(Defs, "__LONG_MAX__", "9223372036854775807L"); - Define(Defs, "__PTRDIFF_TYPE__", "long int"); - Define(Defs, "__UINTMAX_TYPE__", "long unsigned int"); - } else { - Define(Defs, "__INTMAX_MAX__", "9223372036854775807LL"); - Define(Defs, "__INTMAX_TYPE__", "long long int"); - Define(Defs, "__LONG_MAX__", "2147483647L"); - Define(Defs, "__PTRDIFF_TYPE__", "int"); - Define(Defs, "__UINTMAX_TYPE__", "long long unsigned int"); - } - Define(Defs, "__INT_MAX__", "2147483647"); - Define(Defs, "__SIZE_TYPE__", "long unsigned int"); - // Subtarget options. Define(Defs, "__NATURAL_ALIGNMENT__"); Define(Defs, "__REGISTER_PREFIX__", ""); @@ -210,22 +194,6 @@ static void getX86Defines(std::vector<char> &Defs, bool is64Bit) { // Target properties. Define(Defs, "__LITTLE_ENDIAN__"); - if (is64Bit) { - Define(Defs, "__INTMAX_MAX__", "9223372036854775807L"); - Define(Defs, "__INTMAX_TYPE__", "long int"); - Define(Defs, "__LONG_MAX__", "9223372036854775807L"); - Define(Defs, "__PTRDIFF_TYPE__", "long int"); - Define(Defs, "__UINTMAX_TYPE__", "long unsigned int"); - } else { - Define(Defs, "__INTMAX_MAX__", "9223372036854775807LL"); - Define(Defs, "__INTMAX_TYPE__", "long long int"); - Define(Defs, "__LONG_MAX__", "2147483647L"); - Define(Defs, "__PTRDIFF_TYPE__", "int"); - Define(Defs, "__UINTMAX_TYPE__", "long long unsigned int"); - } - Define(Defs, "__SIZE_TYPE__", "long unsigned int"); - Define(Defs, "__INT_MAX__", "2147483647"); - // Subtarget options. Define(Defs, "__nocona"); Define(Defs, "__nocona__"); @@ -297,15 +265,6 @@ static void getARMDefines(std::vector<char> &Defs) { // Target properties. Define(Defs, "__LITTLE_ENDIAN__"); - Define(Defs, "__INTMAX_MAX__", "9223372036854775807LL"); - Define(Defs, "__INTMAX_TYPE__", "long long int"); - Define(Defs, "__LONG_MAX__", "2147483647L"); - Define(Defs, "__PTRDIFF_TYPE__", "int"); - Define(Defs, "__UINTMAX_TYPE__", "long long unsigned int"); - Define(Defs, "__SIZE_TYPE__", "long unsigned int"); - - Define(Defs, "__INT_MAX__", "2147483647"); - // Subtarget options. [hard coded to v6 for now] Define(Defs, "__ARM_ARCH_6K__"); Define(Defs, "__ARMEL__"); @@ -936,6 +895,7 @@ namespace { // FIXME: Is IntAlign really supposed to be 16? There seems // little point on a platform with 8-bit loads. IntWidth = IntAlign = LongAlign = LongLongAlign = PointerWidth = 16; + LongWidth = 16; PointerAlign = 8; DescriptionString = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8"; } |

