Author: brad Date: Thu Aug 13 16:45:57 2015 New Revision: 244961 URL: http://llvm.org/viewvc/llvm-project?rev=244961&view=rev Log: [SPARC] Fix types of size_t, intptr_t, and ptrdiff_t on OpenBSD.
Modified: cfe/trunk/lib/Basic/Targets.cpp cfe/trunk/test/Preprocessor/init.c Modified: cfe/trunk/lib/Basic/Targets.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=244961&r1=244960&r2=244961&view=diff ============================================================================== --- cfe/trunk/lib/Basic/Targets.cpp (original) +++ cfe/trunk/lib/Basic/Targets.cpp Thu Aug 13 16:45:57 2015 @@ -5726,16 +5726,19 @@ class SparcV8TargetInfo : public SparcTa public: SparcV8TargetInfo(const llvm::Triple &Triple) : SparcTargetInfo(Triple) { DataLayoutString = "E-m:e-p:32:32-i64:64-f128:64-n32-S64"; - // NetBSD uses long (same as llvm default); everyone else uses int. - if (getTriple().getOS() == llvm::Triple::NetBSD) { - SizeType = UnsignedLong; - IntPtrType = SignedLong; - PtrDiffType = SignedLong; - } else { + // NetBSD / OpenBSD use long (same as llvm default); everyone else uses int. + switch (getTriple().getOS()) { + default: SizeType = UnsignedInt; IntPtrType = SignedInt; PtrDiffType = SignedInt; - } + break; + case llvm::Triple::NetBSD: + case llvm::Triple::OpenBSD: + SizeType = UnsignedLong; + IntPtrType = SignedLong; + PtrDiffType = SignedLong; + break; } void getTargetDefines(const LangOptions &Opts, Modified: cfe/trunk/test/Preprocessor/init.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Preprocessor/init.c?rev=244961&r1=244960&r2=244961&view=diff ============================================================================== --- cfe/trunk/test/Preprocessor/init.c (original) +++ cfe/trunk/test/Preprocessor/init.c Thu Aug 13 16:45:57 2015 @@ -6984,14 +6984,15 @@ // SPARC:#define __sparcv8 1 // SPARC:#define sparc 1 // -// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -check-prefix SPARC-NETBSD %s -// SPARC-NETBSD:#define __INTPTR_FMTd__ "ld" -// SPARC-NETBSD:#define __INTPTR_FMTi__ "li" -// SPARC-NETBSD:#define __INTPTR_MAX__ 2147483647L -// SPARC-NETBSD:#define __INTPTR_TYPE__ long int -// SPARC-NETBSD:#define __PTRDIFF_TYPE__ long int -// SPARC-NETBSD:#define __SIZE_TYPE__ long unsigned int -// SPARC-NETBSD:#define __UINTPTR_TYPE__ long unsigned int +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -check-prefix SPARC-NETOPENBSD %s +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -check-prefix SPARC-NETOPENBSD %s +// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld" +// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li" +// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L +// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int +// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int +// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int +// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int // RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s // _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits