Hi Mark, It seems not many people have additional comments, so LGTM.
Do you have commit access? cheers, --renato On 20 September 2016 at 19:41, Mark Kettenis via cfe-commits <cfe-commits@lists.llvm.org> wrote: > As discussed in cfe-dev@: > > Like NetBSD, OpenBSD prefers having a consistent set of typedefs > across the architectures it supports over strictly following the ARM > ABIs. The diff below makes sure that clang's view of those types > matches OpenBSD's system header files. It also adds a test that > checks the relevant types on all OpenBSD platforms that clang works > on. Hopefully we can add mips64 and powerpc to that list in the > future. > > > Index: lib/Basic/Targets.cpp > =================================================================== > --- lib/Basic/Targets.cpp (revision 281825) > +++ lib/Basic/Targets.cpp (working copy) > @@ -4679,8 +4679,10 @@ > DoubleAlign = LongLongAlign = LongDoubleAlign = SuitableAlign = 64; > const llvm::Triple &T = getTriple(); > > - // size_t is unsigned long on MachO-derived environments, NetBSD and > Bitrig. > + // size_t is unsigned long on MachO-derived environments, NetBSD, > + // OpenBSD and Bitrig. > if (T.isOSBinFormatMachO() || T.getOS() == llvm::Triple::NetBSD || > + T.getOS() == llvm::Triple::OpenBSD || > T.getOS() == llvm::Triple::Bitrig) > SizeType = UnsignedLong; > else > @@ -4688,6 +4690,7 @@ > > switch (T.getOS()) { > case llvm::Triple::NetBSD: > + case llvm::Triple::OpenBSD: > WCharType = SignedInt; > break; > case llvm::Triple::Win32: > @@ -4885,6 +4888,7 @@ > > switch (getTriple().getOS()) { > case llvm::Triple::NetBSD: > + case llvm::Triple::OpenBSD: > PtrDiffType = SignedLong; > break; > default: > Index: test/Preprocessor/init.c > =================================================================== > --- test/Preprocessor/init.c (revision 281825) > +++ test/Preprocessor/init.c (working copy) > @@ -8463,6 +8463,29 @@ > // RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | > FileCheck -match-full-lines -check-prefix LANAI %s > // LANAI: #define __lanai__ 1 > // > +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < > /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s > +// RUN: %clang_cc1 -E -dM -ffreestanding > -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck > -match-full-lines -check-prefix OPENBSD %s > +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < > /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s > +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 > < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s > +// OPENBSD:#define __ELF__ 1 > +// OPENBSD:#define __INT16_TYPE__ short > +// OPENBSD:#define __INT32_TYPE__ int > +// OPENBSD:#define __INT64_TYPE__ long long int > +// OPENBSD:#define __INT8_TYPE__ signed char > +// OPENBSD:#define __INTMAX_TYPE__ long long int > +// OPENBSD:#define __INTPTR_TYPE__ long int > +// OPENBSD:#define __OpenBSD__ 1 > +// OPENBSD:#define __PTRDIFF_TYPE__ long int > +// OPENBSD:#define __SIZE_TYPE__ long unsigned int > +// OPENBSD:#define __UINT16_TYPE__ unsigned short > +// OPENBSD:#define __UINT32_TYPE__ unsigned int > +// OPENBSD:#define __UINT64_TYPE__ long long unsigned int > +// OPENBSD:#define __UINT8_TYPE__ unsigned char > +// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int > +// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int > +// OPENBSD:#define __WCHAR_TYPE__ int > +// OPENBSD:#define __WINT_TYPE__ int > +// > // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-freebsd < > /dev/null | FileCheck -match-full-lines -check-prefix PPC64-FREEBSD %s > // PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1 > // > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits