diff options
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 14 | ||||
| -rw-r--r-- | clang/test/Preprocessor/init.c | 10 |
2 files changed, 14 insertions, 10 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index d22599dec61..fa1fb83845c 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -3386,19 +3386,23 @@ class AArch64TargetInfo : public TargetInfo { public: AArch64TargetInfo(const llvm::Triple &Triple) : TargetInfo(Triple) { - IntMaxType = SignedLong; - UIntMaxType = UnsignedLong; - Int64Type = SignedLong; LongWidth = LongAlign = 64; LongDoubleWidth = LongDoubleAlign = 128; PointerWidth = PointerAlign = 64; SuitableAlign = 128; WCharType = UnsignedInt; - if (getTriple().getOS() == llvm::Triple::NetBSD) + if (getTriple().getOS() == llvm::Triple::NetBSD) { WCharType = SignedInt; - else + Int64Type = SignedLongLong; + IntMaxType = SignedLongLong; + UIntMaxType = UnsignedLongLong; + } else { WCharType = UnsignedInt; + Int64Type = SignedLong; + IntMaxType = SignedLong; + UIntMaxType = UnsignedLong; + } LongDoubleFormat = &llvm::APFloat::IEEEquad; // AArch64 backend supports 64-bit operations at the moment. In principle diff --git a/clang/test/Preprocessor/init.c b/clang/test/Preprocessor/init.c index 94b062ea361..7b19ad3cddc 100644 --- a/clang/test/Preprocessor/init.c +++ b/clang/test/Preprocessor/init.c @@ -462,11 +462,11 @@ // AARCH64-NETBSD:#define __FLT_RADIX__ 2 // AARCH64-NETBSD:#define __INT16_TYPE__ short // AARCH64-NETBSD:#define __INT32_TYPE__ int -// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ L -// AARCH64-NETBSD:#define __INT64_TYPE__ long int +// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ LL +// AARCH64-NETBSD:#define __INT64_TYPE__ long long int // AARCH64-NETBSD:#define __INT8_TYPE__ char -// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L -// AARCH64-NETBSD:#define __INTMAX_TYPE__ long int +// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL +// AARCH64-NETBSD:#define __INTMAX_TYPE__ long long int // AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64 // AARCH64-NETBSD:#define __INTPTR_TYPE__ long int // AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64 @@ -510,7 +510,7 @@ // AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL // AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int // AARCH64-NETBSD:#define __SIZE_WIDTH__ 64 -// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int +// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int // AARCH64-NETBSD:#define __USER_LABEL_PREFIX__ // AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647 // AARCH64-NETBSD:#define __WCHAR_TYPE__ int |

