From 9f0ddc464e0c402f25ea8ae47e53ae9dba1c60c6 Mon Sep 17 00:00:00 2001 From: mike Date: Mon, 29 Jul 2002 17:41:23 +0000 Subject: Create a new header for storing MD parts of . Previously, parts were defined in and . This resulted in two problems: (1) Defining macros in gets in the way of that header only defining types. (2) Defining C99 limits in adds pollution to . --- sys/arm/include/_limits.h | 109 ----------------------------- sys/arm/include/_stdint.h | 171 ++++++++++++++++++++++++++++++++++++++++++++++ sys/arm/include/ansi.h | 13 ---- sys/arm/include/limits.h | 109 ----------------------------- 4 files changed, 171 insertions(+), 231 deletions(-) create mode 100644 sys/arm/include/_stdint.h (limited to 'sys/arm/include') diff --git a/sys/arm/include/_limits.h b/sys/arm/include/_limits.h index dcf2ba4..5eae4ad 100644 --- a/sys/arm/include/_limits.h +++ b/sys/arm/include/_limits.h @@ -100,115 +100,6 @@ #define UQUAD_MAX ULLONG_MAX /* max value for a uquad_t */ #define QUAD_MAX LLONG_MAX /* max value for a quad_t */ #define QUAD_MIN LLONG_MIN /* min value for a quad_t */ - -#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) -/* - * ISO/IEC 9899:1999 - * 7.18.2.1 Limits of exact-width integer types - */ -/* Minimum values of exact-width signed integer types. */ -#define INT8_MIN (-0x7f-1) -#define INT16_MIN (-0x7fff-1) -#define INT32_MIN (-0x7fffffff-1) -#define INT64_MIN (-0x7fffffffffffffffLL-1) - -/* Maximum values of exact-width signed integer types. */ -#define INT8_MAX 0x7f -#define INT16_MAX 0x7fff -#define INT32_MAX 0x7fffffff -#define INT64_MAX 0x7fffffffffffffffLL - -/* Maximum values of exact-width unsigned integer types. */ -#define UINT8_MAX 0xff -#define UINT16_MAX 0xffff -#define UINT32_MAX 0xffffffffU -#define UINT64_MAX 0xffffffffffffffffULL - -/* - * ISO/IEC 9899:1999 - * 7.18.2.2 Limits of minimum-width integer types - */ -/* Minimum values of minimum-width signed integer types. */ -#define INT_LEAST8_MIN SCHAR_MIN -#define INT_LEAST16_MIN SHRT_MIN -#define INT_LEAST32_MIN INT_MIN -#define INT_LEAST64_MIN LLONG_MIN - -/* Maximum values of minimum-width signed integer types. */ -#define INT_LEAST8_MAX SCHAR_MAX -#define INT_LEAST16_MAX SHRT_MAX -#define INT_LEAST32_MAX INT_MAX -#define INT_LEAST64_MAX LLONG_MAX - -/* Maximum values of minimum-width unsigned integer types. */ -#define UINT_LEAST8_MAX UCHAR_MAX -#define UINT_LEAST16_MAX USHRT_MAX -#define UINT_LEAST32_MAX UINT_MAX -#define UINT_LEAST64_MAX ULLONG_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.2.3 Limits of fastest minimum-width integer types - */ -/* Minimum values of fastest minimum-width signed integer types. */ -#define INT_FAST8_MIN INT_MIN -#define INT_FAST16_MIN INT_MIN -#define INT_FAST32_MIN INT_MIN -#define INT_FAST64_MIN LLONG_MIN - -/* Maximum values of fastest minimum-width signed integer types. */ -#define INT_FAST8_MAX INT_MAX -#define INT_FAST16_MAX INT_MAX -#define INT_FAST32_MAX INT_MAX -#define INT_FAST64_MAX LLONG_MAX - -/* Maximum values of fastest minimum-width unsigned integer types. */ -#define UINT_FAST8_MAX UINT_MAX -#define UINT_FAST16_MAX UINT_MAX -#define UINT_FAST32_MAX UINT_MAX -#define UINT_FAST64_MAX ULLONG_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.2.4 Limits of integer types capable of holding object pointers - */ -#define INTPTR_MIN INT_MIN -#define INTPTR_MAX INT_MAX -#define UINTPTR_MAX UINT_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.2.5 Limits of greatest-width integer types - */ -#define INTMAX_MIN LLONG_MIN -#define INTMAX_MAX LLONG_MAX -#define UINTMAX_MAX ULLONG_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.3 Limits of other integer types - */ -/* Limits of ptrdiff_t. */ -#define PTRDIFF_MIN INT_MIN -#define PTRDIFF_MAX INT_MAX - -/* Limits of sig_atomic_t. */ -#define SIG_ATOMIC_MIN INT_MIN -#define SIG_ATOMIC_MAX INT_MAX - -/* Limit of size_t. */ -#define SIZE_MAX UINT_MAX - -#ifndef WCHAR_MIN /* Also possibly defined in */ -/* Limits of wchar_t. */ -#define WCHAR_MIN INT_MIN -#define WCHAR_MAX INT_MAX - -/* Limits of wint_t. */ -#define WINT_MIN INT_MIN -#define WINT_MAX INT_MAX -#endif -#endif /* !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) */ #endif /* !_POSIX_SOURCE */ #endif /* !_ANSI_SOURCE */ diff --git a/sys/arm/include/_stdint.h b/sys/arm/include/_stdint.h new file mode 100644 index 0000000..6dc5a72 --- /dev/null +++ b/sys/arm/include/_stdint.h @@ -0,0 +1,171 @@ +/*- + * Copyright (c) 2001, 2002 Mike Barcroft + * Copyright (c) 2001 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Klaus Klein. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _MACHINE__STDINT_H_ +#define _MACHINE__STDINT_H_ + +#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) + +#define INT8_C(c) (c) +#define INT16_C(c) (c) +#define INT32_C(c) (c) +#define INT64_C(c) (c ## LL) + +#define UINT8_C(c) (c) +#define UINT16_C(c) (c) +#define UINT32_C(c) (c ## U) +#define UINT64_C(c) (c ## ULL) + +#define INTMAX_C(c) (c ## LL) +#define UINTMAX_C(c) (c ## ULL) + +#endif /* !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) */ + +#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) + +/* + * ISO/IEC 9899:1999 + * 7.18.2.1 Limits of exact-width integer types + */ +/* Minimum values of exact-width signed integer types. */ +#define INT8_MIN (-0x7f-1) +#define INT16_MIN (-0x7fff-1) +#define INT32_MIN (-0x7fffffff-1) +#define INT64_MIN (-0x7fffffffffffffffLL-1) + +/* Maximum values of exact-width signed integer types. */ +#define INT8_MAX 0x7f +#define INT16_MAX 0x7fff +#define INT32_MAX 0x7fffffff +#define INT64_MAX 0x7fffffffffffffffLL + +/* Maximum values of exact-width unsigned integer types. */ +#define UINT8_MAX 0xff +#define UINT16_MAX 0xffff +#define UINT32_MAX 0xffffffffU +#define UINT64_MAX 0xffffffffffffffffULL + +/* + * ISO/IEC 9899:1999 + * 7.18.2.2 Limits of minimum-width integer types + */ +/* Minimum values of minimum-width signed integer types. */ +#define INT_LEAST8_MIN INT8_MIN +#define INT_LEAST16_MIN INT16_MIN +#define INT_LEAST32_MIN INT32_MIN +#define INT_LEAST64_MIN INT64_MIN + +/* Maximum values of minimum-width signed integer types. */ +#define INT_LEAST8_MAX INT8_MAX +#define INT_LEAST16_MAX INT16_MAX +#define INT_LEAST32_MAX INT32_MAX +#define INT_LEAST64_MAX INT64_MAX + +/* Maximum values of minimum-width unsigned integer types. */ +#define UINT_LEAST8_MAX UINT8_MAX +#define UINT_LEAST16_MAX UINT16_MAX +#define UINT_LEAST32_MAX UINT32_MAX +#define UINT_LEAST64_MAX UINT64_MAX + +/* + * ISO/IEC 9899:1999 + * 7.18.2.3 Limits of fastest minimum-width integer types + */ +/* Minimum values of fastest minimum-width signed integer types. */ +#define INT_FAST8_MIN INT32_MIN +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN +#define INT_FAST64_MIN INT64_MIN + +/* Maximum values of fastest minimum-width signed integer types. */ +#define INT_FAST8_MAX INT32_MAX +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX +#define INT_FAST64_MAX INT64_MAX + +/* Maximum values of fastest minimum-width unsigned integer types. */ +#define UINT_FAST8_MAX UINT32_MAX +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX +#define UINT_FAST64_MAX UINT64_MAX + +/* + * ISO/IEC 9899:1999 + * 7.18.2.4 Limits of integer types capable of holding object pointers + */ +#define INTPTR_MIN INT32_MIN +#define INTPTR_MAX INT32_MAX +#define UINTPTR_MAX UINT32_MAX + +/* + * ISO/IEC 9899:1999 + * 7.18.2.5 Limits of greatest-width integer types + */ +#define INTMAX_MIN INT64_MIN +#define INTMAX_MAX INT64_MAX +#define UINTMAX_MAX UINT64_MAX + +/* + * ISO/IEC 9899:1999 + * 7.18.3 Limits of other integer types + */ +/* Limits of ptrdiff_t. */ +#define PTRDIFF_MIN INT32_MIN +#define PTRDIFF_MAX INT32_MAX + +/* Limits of sig_atomic_t. */ +#define SIG_ATOMIC_MIN INT32_MIN +#define SIG_ATOMIC_MAX INT32_MAX + +/* Limit of size_t. */ +#define SIZE_MAX UINT32_MAX + +#ifndef WCHAR_MIN /* Also possibly defined in */ +/* Limits of wchar_t. */ +#define WCHAR_MIN INT32_MIN +#define WCHAR_MAX INT32_MAX + +/* Limits of wint_t. */ +#define WINT_MIN INT32_MIN +#define WINT_MAX INT32_MAX +#endif + +#endif /* !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) */ + +#endif /* !_MACHINE__STDINT_H_ */ diff --git a/sys/arm/include/ansi.h b/sys/arm/include/ansi.h index dcf65ab..2596276 100644 --- a/sys/arm/include/ansi.h +++ b/sys/arm/include/ansi.h @@ -162,19 +162,6 @@ typedef __uint64_t __uint_fast64_t; typedef __int64_t __intmax_t; typedef __uint64_t __uintmax_t; -#define __INT8_C(c) (c) -#define __INT16_C(c) (c) -#define __INT32_C(c) (c) -#define __INT64_C(c) (c ## LL) - -#define __UINT8_C(c) (c) -#define __UINT16_C(c) (c) -#define __UINT32_C(c) (c ## U) -#define __UINT64_C(c) (c ## ULL) - -#define __INTMAX_C(c) (c ## LL) -#define __UINTMAX_C(c) (c ## ULL) - /* * mbstate_t is an opaque object to keep conversion state, during multibyte * stream conversions. The content must not be referenced by user programs. diff --git a/sys/arm/include/limits.h b/sys/arm/include/limits.h index dcf2ba4..5eae4ad 100644 --- a/sys/arm/include/limits.h +++ b/sys/arm/include/limits.h @@ -100,115 +100,6 @@ #define UQUAD_MAX ULLONG_MAX /* max value for a uquad_t */ #define QUAD_MAX LLONG_MAX /* max value for a quad_t */ #define QUAD_MIN LLONG_MIN /* min value for a quad_t */ - -#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) -/* - * ISO/IEC 9899:1999 - * 7.18.2.1 Limits of exact-width integer types - */ -/* Minimum values of exact-width signed integer types. */ -#define INT8_MIN (-0x7f-1) -#define INT16_MIN (-0x7fff-1) -#define INT32_MIN (-0x7fffffff-1) -#define INT64_MIN (-0x7fffffffffffffffLL-1) - -/* Maximum values of exact-width signed integer types. */ -#define INT8_MAX 0x7f -#define INT16_MAX 0x7fff -#define INT32_MAX 0x7fffffff -#define INT64_MAX 0x7fffffffffffffffLL - -/* Maximum values of exact-width unsigned integer types. */ -#define UINT8_MAX 0xff -#define UINT16_MAX 0xffff -#define UINT32_MAX 0xffffffffU -#define UINT64_MAX 0xffffffffffffffffULL - -/* - * ISO/IEC 9899:1999 - * 7.18.2.2 Limits of minimum-width integer types - */ -/* Minimum values of minimum-width signed integer types. */ -#define INT_LEAST8_MIN SCHAR_MIN -#define INT_LEAST16_MIN SHRT_MIN -#define INT_LEAST32_MIN INT_MIN -#define INT_LEAST64_MIN LLONG_MIN - -/* Maximum values of minimum-width signed integer types. */ -#define INT_LEAST8_MAX SCHAR_MAX -#define INT_LEAST16_MAX SHRT_MAX -#define INT_LEAST32_MAX INT_MAX -#define INT_LEAST64_MAX LLONG_MAX - -/* Maximum values of minimum-width unsigned integer types. */ -#define UINT_LEAST8_MAX UCHAR_MAX -#define UINT_LEAST16_MAX USHRT_MAX -#define UINT_LEAST32_MAX UINT_MAX -#define UINT_LEAST64_MAX ULLONG_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.2.3 Limits of fastest minimum-width integer types - */ -/* Minimum values of fastest minimum-width signed integer types. */ -#define INT_FAST8_MIN INT_MIN -#define INT_FAST16_MIN INT_MIN -#define INT_FAST32_MIN INT_MIN -#define INT_FAST64_MIN LLONG_MIN - -/* Maximum values of fastest minimum-width signed integer types. */ -#define INT_FAST8_MAX INT_MAX -#define INT_FAST16_MAX INT_MAX -#define INT_FAST32_MAX INT_MAX -#define INT_FAST64_MAX LLONG_MAX - -/* Maximum values of fastest minimum-width unsigned integer types. */ -#define UINT_FAST8_MAX UINT_MAX -#define UINT_FAST16_MAX UINT_MAX -#define UINT_FAST32_MAX UINT_MAX -#define UINT_FAST64_MAX ULLONG_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.2.4 Limits of integer types capable of holding object pointers - */ -#define INTPTR_MIN INT_MIN -#define INTPTR_MAX INT_MAX -#define UINTPTR_MAX UINT_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.2.5 Limits of greatest-width integer types - */ -#define INTMAX_MIN LLONG_MIN -#define INTMAX_MAX LLONG_MAX -#define UINTMAX_MAX ULLONG_MAX - -/* - * ISO/IEC 9899:1999 - * 7.18.3 Limits of other integer types - */ -/* Limits of ptrdiff_t. */ -#define PTRDIFF_MIN INT_MIN -#define PTRDIFF_MAX INT_MAX - -/* Limits of sig_atomic_t. */ -#define SIG_ATOMIC_MIN INT_MIN -#define SIG_ATOMIC_MAX INT_MAX - -/* Limit of size_t. */ -#define SIZE_MAX UINT_MAX - -#ifndef WCHAR_MIN /* Also possibly defined in */ -/* Limits of wchar_t. */ -#define WCHAR_MIN INT_MIN -#define WCHAR_MAX INT_MAX - -/* Limits of wint_t. */ -#define WINT_MIN INT_MIN -#define WINT_MAX INT_MAX -#endif -#endif /* !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) */ #endif /* !_POSIX_SOURCE */ #endif /* !_ANSI_SOURCE */ -- cgit v1.1