xref: /freebsd/sys/riscv/include/_inttypes.h (revision 2ff63af9)
18d7e7a98SRuslan Bukin /*-
28d7e7a98SRuslan Bukin  * Copyright (c) 2001 The NetBSD Foundation, Inc.
38d7e7a98SRuslan Bukin  * All rights reserved.
48d7e7a98SRuslan Bukin  *
58d7e7a98SRuslan Bukin  * This code is derived from software contributed to The NetBSD Foundation
68d7e7a98SRuslan Bukin  * by Klaus Klein.
78d7e7a98SRuslan Bukin  *
88d7e7a98SRuslan Bukin  * Redistribution and use in source and binary forms, with or without
98d7e7a98SRuslan Bukin  * modification, are permitted provided that the following conditions
108d7e7a98SRuslan Bukin  * are met:
118d7e7a98SRuslan Bukin  * 1. Redistributions of source code must retain the above copyright
128d7e7a98SRuslan Bukin  *    notice, this list of conditions and the following disclaimer.
138d7e7a98SRuslan Bukin  * 2. Redistributions in binary form must reproduce the above copyright
148d7e7a98SRuslan Bukin  *    notice, this list of conditions and the following disclaimer in the
158d7e7a98SRuslan Bukin  *    documentation and/or other materials provided with the distribution.
168d7e7a98SRuslan Bukin  *
178d7e7a98SRuslan Bukin  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
188d7e7a98SRuslan Bukin  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
198d7e7a98SRuslan Bukin  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
208d7e7a98SRuslan Bukin  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
218d7e7a98SRuslan Bukin  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
228d7e7a98SRuslan Bukin  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
238d7e7a98SRuslan Bukin  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
248d7e7a98SRuslan Bukin  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
258d7e7a98SRuslan Bukin  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
268d7e7a98SRuslan Bukin  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
278d7e7a98SRuslan Bukin  * POSSIBILITY OF SUCH DAMAGE.
288d7e7a98SRuslan Bukin  *
298d7e7a98SRuslan Bukin  *	From: $NetBSD: int_fmtio.h,v 1.4 2008/04/28 20:23:36 martin Exp $
308d7e7a98SRuslan Bukin  */
318d7e7a98SRuslan Bukin 
328d7e7a98SRuslan Bukin #ifndef _MACHINE__INTTYPES_H_
338d7e7a98SRuslan Bukin #define	_MACHINE__INTTYPES_H_
348d7e7a98SRuslan Bukin 
358d7e7a98SRuslan Bukin /*
368d7e7a98SRuslan Bukin  * Macros for format specifiers.
378d7e7a98SRuslan Bukin  */
388d7e7a98SRuslan Bukin 
398d7e7a98SRuslan Bukin /* fprintf(3) macros for signed integers. */
408d7e7a98SRuslan Bukin 
418d7e7a98SRuslan Bukin #define	PRId8		"d"	/* int8_t */
428d7e7a98SRuslan Bukin #define	PRId16		"d"	/* int16_t */
438d7e7a98SRuslan Bukin #define	PRId32		"d"	/* int32_t */
448d7e7a98SRuslan Bukin #define	PRId64		"ld"	/* int64_t */
458d7e7a98SRuslan Bukin #define	PRIdLEAST8	"d"	/* int_least8_t */
468d7e7a98SRuslan Bukin #define	PRIdLEAST16	"d"	/* int_least16_t */
478d7e7a98SRuslan Bukin #define	PRIdLEAST32	"d"	/* int_least32_t */
488d7e7a98SRuslan Bukin #define	PRIdLEAST64	"ld"	/* int_least64_t */
498d7e7a98SRuslan Bukin #define	PRIdFAST8	"d"	/* int_fast8_t */
508d7e7a98SRuslan Bukin #define	PRIdFAST16	"d"	/* int_fast16_t */
518d7e7a98SRuslan Bukin #define	PRIdFAST32	"d"	/* int_fast32_t */
528d7e7a98SRuslan Bukin #define	PRIdFAST64	"ld"	/* int_fast64_t */
538d7e7a98SRuslan Bukin #define	PRIdMAX		"jd"	/* intmax_t */
548d7e7a98SRuslan Bukin #define	PRIdPTR		"ld"	/* intptr_t */
558d7e7a98SRuslan Bukin 
568d7e7a98SRuslan Bukin #define	PRIi8		"i"	/* int8_t */
578d7e7a98SRuslan Bukin #define	PRIi16		"i"	/* int16_t */
588d7e7a98SRuslan Bukin #define	PRIi32		"i"	/* int32_t */
598d7e7a98SRuslan Bukin #define	PRIi64		"li"	/* int64_t */
608d7e7a98SRuslan Bukin #define	PRIiLEAST8	"i"	/* int_least8_t  */
618d7e7a98SRuslan Bukin #define	PRIiLEAST16	"i"	/* int_least16_t */
628d7e7a98SRuslan Bukin #define	PRIiLEAST32	"i"	/* int_least32_t */
638d7e7a98SRuslan Bukin #define	PRIiLEAST64	"li"	/* int_least64_t */
648d7e7a98SRuslan Bukin #define	PRIiFAST8	"i"	/* int_fast8_t */
658d7e7a98SRuslan Bukin #define	PRIiFAST16	"i"	/* int_fast16_t */
668d7e7a98SRuslan Bukin #define	PRIiFAST32	"i"	/* int_fast32_t */
678d7e7a98SRuslan Bukin #define	PRIiFAST64	"li"	/* int_fast64_t */
688d7e7a98SRuslan Bukin #define	PRIiMAX		"ji"	/* intmax_t */
698d7e7a98SRuslan Bukin #define	PRIiPTR		"li"	/* intptr_t */
708d7e7a98SRuslan Bukin 
718d7e7a98SRuslan Bukin /* fprintf(3) macros for unsigned integers. */
728d7e7a98SRuslan Bukin 
738d7e7a98SRuslan Bukin #define	PRIo8		"o"	/* uint8_t */
748d7e7a98SRuslan Bukin #define	PRIo16		"o"	/* uint16_t */
758d7e7a98SRuslan Bukin #define	PRIo32		"o"	/* uint32_t */
768d7e7a98SRuslan Bukin #define	PRIo64		"lo"	/* uint64_t */
778d7e7a98SRuslan Bukin #define	PRIoLEAST8	"o"	/* uint_least8_t */
788d7e7a98SRuslan Bukin #define	PRIoLEAST16	"o"	/* uint_least16_t */
798d7e7a98SRuslan Bukin #define	PRIoLEAST32	"o"	/* uint_least32_t */
808d7e7a98SRuslan Bukin #define	PRIoLEAST64	"lo"	/* uint_least64_t */
818d7e7a98SRuslan Bukin #define	PRIoFAST8	"o"	/* uint_fast8_t */
828d7e7a98SRuslan Bukin #define	PRIoFAST16	"o"	/* uint_fast16_t */
838d7e7a98SRuslan Bukin #define	PRIoFAST32	"o"	/* uint_fast32_t */
848d7e7a98SRuslan Bukin #define	PRIoFAST64	"lo"	/* uint_fast64_t */
858d7e7a98SRuslan Bukin #define	PRIoMAX		"jo"	/* uintmax_t */
868d7e7a98SRuslan Bukin #define	PRIoPTR		"lo"	/* uintptr_t */
878d7e7a98SRuslan Bukin 
888d7e7a98SRuslan Bukin #define	PRIu8		"u"	/* uint8_t */
898d7e7a98SRuslan Bukin #define	PRIu16		"u"	/* uint16_t */
908d7e7a98SRuslan Bukin #define	PRIu32		"u"	/* uint32_t */
918d7e7a98SRuslan Bukin #define	PRIu64		"lu"	/* uint64_t */
928d7e7a98SRuslan Bukin #define	PRIuLEAST8	"u"	/* uint_least8_t */
938d7e7a98SRuslan Bukin #define	PRIuLEAST16	"u"	/* uint_least16_t */
948d7e7a98SRuslan Bukin #define	PRIuLEAST32	"u"	/* uint_least32_t */
958d7e7a98SRuslan Bukin #define	PRIuLEAST64	"lu"	/* uint_least64_t */
968d7e7a98SRuslan Bukin #define	PRIuFAST8	"u"	/* uint_fast8_t */
978d7e7a98SRuslan Bukin #define	PRIuFAST16	"u"	/* uint_fast16_t */
988d7e7a98SRuslan Bukin #define	PRIuFAST32	"u"	/* uint_fast32_t */
998d7e7a98SRuslan Bukin #define	PRIuFAST64	"lu"	/* uint_fast64_t */
1008d7e7a98SRuslan Bukin #define	PRIuMAX		"ju"	/* uintmax_t */
1018d7e7a98SRuslan Bukin #define	PRIuPTR		"lu"	/* uintptr_t */
1028d7e7a98SRuslan Bukin 
1038d7e7a98SRuslan Bukin #define	PRIx8		"x"	/* uint8_t */
1048d7e7a98SRuslan Bukin #define	PRIx16		"x"	/* uint16_t */
1058d7e7a98SRuslan Bukin #define	PRIx32		"x"	/* uint32_t */
1068d7e7a98SRuslan Bukin #define	PRIx64		"lx"	/* uint64_t */
1078d7e7a98SRuslan Bukin #define	PRIxLEAST8	"x"	/* uint_least8_t */
1088d7e7a98SRuslan Bukin #define	PRIxLEAST16	"x"	/* uint_least16_t */
1098d7e7a98SRuslan Bukin #define	PRIxLEAST32	"x"	/* uint_least32_t */
1108d7e7a98SRuslan Bukin #define	PRIxLEAST64	"lx"	/* uint_least64_t */
1118d7e7a98SRuslan Bukin #define	PRIxFAST8	"x"	/* uint_fast8_t */
1128d7e7a98SRuslan Bukin #define	PRIxFAST16	"x"	/* uint_fast16_t */
1138d7e7a98SRuslan Bukin #define	PRIxFAST32	"x"	/* uint_fast32_t */
1148d7e7a98SRuslan Bukin #define	PRIxFAST64	"lx"	/* uint_fast64_t */
1158d7e7a98SRuslan Bukin #define	PRIxMAX		"jx"	/* uintmax_t */
1168d7e7a98SRuslan Bukin #define	PRIxPTR		"lx"	/* uintptr_t */
1178d7e7a98SRuslan Bukin 
1188d7e7a98SRuslan Bukin #define	PRIX8		"X"	/* uint8_t */
1198d7e7a98SRuslan Bukin #define	PRIX16		"X"	/* uint16_t */
1208d7e7a98SRuslan Bukin #define	PRIX32		"X"	/* uint32_t */
1218d7e7a98SRuslan Bukin #define	PRIX64		"lX"	/* uint64_t */
1228d7e7a98SRuslan Bukin #define	PRIXLEAST8	"X"	/* uint_least8_t */
1238d7e7a98SRuslan Bukin #define	PRIXLEAST16	"X"	/* uint_least16_t */
1248d7e7a98SRuslan Bukin #define	PRIXLEAST32	"X"	/* uint_least32_t */
1258d7e7a98SRuslan Bukin #define	PRIXLEAST64	"lX"	/* uint_least64_t */
1268d7e7a98SRuslan Bukin #define	PRIXFAST8	"X"	/* uint_fast8_t */
1278d7e7a98SRuslan Bukin #define	PRIXFAST16	"X"	/* uint_fast16_t */
1288d7e7a98SRuslan Bukin #define	PRIXFAST32	"X"	/* uint_fast32_t */
1298d7e7a98SRuslan Bukin #define	PRIXFAST64	"lX"	/* uint_fast64_t */
1308d7e7a98SRuslan Bukin #define	PRIXMAX		"jX"	/* uintmax_t */
1318d7e7a98SRuslan Bukin #define	PRIXPTR		"lX"	/* uintptr_t */
1328d7e7a98SRuslan Bukin 
1338d7e7a98SRuslan Bukin /* fscanf(3) macros for signed integers. */
1348d7e7a98SRuslan Bukin 
1358d7e7a98SRuslan Bukin #define	SCNd8		"hhd"	/* int8_t */
1368d7e7a98SRuslan Bukin #define	SCNd16		"hd"	/* int16_t */
1378d7e7a98SRuslan Bukin #define	SCNd32		"d"	/* int32_t */
1388d7e7a98SRuslan Bukin #define	SCNd64		"ld"	/* int64_t */
1398d7e7a98SRuslan Bukin #define	SCNdLEAST8	"hhd"	/* int_least8_t */
1408d7e7a98SRuslan Bukin #define	SCNdLEAST16	"hd"	/* int_least16_t */
1418d7e7a98SRuslan Bukin #define	SCNdLEAST32	"d"	/* int_least32_t */
1428d7e7a98SRuslan Bukin #define	SCNdLEAST64	"ld"	/* int_least64_t */
1438d7e7a98SRuslan Bukin #define	SCNdFAST8	"d"	/* int_fast8_t */
1448d7e7a98SRuslan Bukin #define	SCNdFAST16	"d"	/* int_fast16_t */
1458d7e7a98SRuslan Bukin #define	SCNdFAST32	"d"	/* int_fast32_t */
1468d7e7a98SRuslan Bukin #define	SCNdFAST64	"ld"	/* int_fast64_t */
1478d7e7a98SRuslan Bukin #define	SCNdMAX		"jd"	/* intmax_t */
1488d7e7a98SRuslan Bukin #define	SCNdPTR		"ld"	/* intptr_t */
1498d7e7a98SRuslan Bukin 
1508d7e7a98SRuslan Bukin #define	SCNi8		"hhi"	/* int8_t */
1518d7e7a98SRuslan Bukin #define	SCNi16		"hi"	/* int16_t */
1528d7e7a98SRuslan Bukin #define	SCNi32		"i"	/* int32_t */
1538d7e7a98SRuslan Bukin #define	SCNi64		"li"	/* int64_t */
1548d7e7a98SRuslan Bukin #define	SCNiLEAST8	"hhi"	/* int_least8_t */
1558d7e7a98SRuslan Bukin #define	SCNiLEAST16	"hi"	/* int_least16_t */
1568d7e7a98SRuslan Bukin #define	SCNiLEAST32	"i"	/* int_least32_t */
1578d7e7a98SRuslan Bukin #define	SCNiLEAST64	"li"	/* int_least64_t */
1588d7e7a98SRuslan Bukin #define	SCNiFAST8	"i"	/* int_fast8_t */
1598d7e7a98SRuslan Bukin #define	SCNiFAST16	"i"	/* int_fast16_t */
1608d7e7a98SRuslan Bukin #define	SCNiFAST32	"i"	/* int_fast32_t */
1618d7e7a98SRuslan Bukin #define	SCNiFAST64	"li"	/* int_fast64_t */
1628d7e7a98SRuslan Bukin #define	SCNiMAX		"ji"	/* intmax_t */
1638d7e7a98SRuslan Bukin #define	SCNiPTR		"li"	/* intptr_t */
1648d7e7a98SRuslan Bukin 
1658d7e7a98SRuslan Bukin /* fscanf(3) macros for unsigned integers. */
1668d7e7a98SRuslan Bukin 
1678d7e7a98SRuslan Bukin #define	SCNo8		"hho"	/* uint8_t */
1688d7e7a98SRuslan Bukin #define	SCNo16		"ho"	/* uint16_t */
1698d7e7a98SRuslan Bukin #define	SCNo32		"o"	/* uint32_t */
1708d7e7a98SRuslan Bukin #define	SCNo64		"lo"	/* uint64_t */
1718d7e7a98SRuslan Bukin #define	SCNoLEAST8	"hho"	/* uint_least8_t */
1728d7e7a98SRuslan Bukin #define	SCNoLEAST16	"ho"	/* uint_least16_t */
1738d7e7a98SRuslan Bukin #define	SCNoLEAST32	"o"	/* uint_least32_t */
1748d7e7a98SRuslan Bukin #define	SCNoLEAST64	"lo"	/* uint_least64_t */
1758d7e7a98SRuslan Bukin #define	SCNoFAST8	"o"	/* uint_fast8_t */
1768d7e7a98SRuslan Bukin #define	SCNoFAST16	"o"	/* uint_fast16_t */
1778d7e7a98SRuslan Bukin #define	SCNoFAST32	"o"	/* uint_fast32_t */
1788d7e7a98SRuslan Bukin #define	SCNoFAST64	"lo"	/* uint_fast64_t */
1798d7e7a98SRuslan Bukin #define	SCNoMAX		"jo"	/* uintmax_t */
1808d7e7a98SRuslan Bukin #define	SCNoPTR		"lo"	/* uintptr_t */
1818d7e7a98SRuslan Bukin 
1828d7e7a98SRuslan Bukin #define	SCNu8		"hhu"	/* uint8_t */
1838d7e7a98SRuslan Bukin #define	SCNu16		"hu"	/* uint16_t */
1848d7e7a98SRuslan Bukin #define	SCNu32		"u"	/* uint32_t */
1858d7e7a98SRuslan Bukin #define	SCNu64		"lu"	/* uint64_t */
1868d7e7a98SRuslan Bukin #define	SCNuLEAST8	"hhu"	/* uint_least8_t */
1878d7e7a98SRuslan Bukin #define	SCNuLEAST16	"hu"	/* uint_least16_t */
1888d7e7a98SRuslan Bukin #define	SCNuLEAST32	"u"	/* uint_least32_t */
1898d7e7a98SRuslan Bukin #define	SCNuLEAST64	"lu"	/* uint_least64_t */
1908d7e7a98SRuslan Bukin #define	SCNuFAST8	"u"	/* uint_fast8_t */
1918d7e7a98SRuslan Bukin #define	SCNuFAST16	"u"	/* uint_fast16_t */
1928d7e7a98SRuslan Bukin #define	SCNuFAST32	"u"	/* uint_fast32_t */
1938d7e7a98SRuslan Bukin #define	SCNuFAST64	"lu"	/* uint_fast64_t */
1948d7e7a98SRuslan Bukin #define	SCNuMAX		"ju"	/* uintmax_t */
1958d7e7a98SRuslan Bukin #define	SCNuPTR		"lu"	/* uintptr_t */
1968d7e7a98SRuslan Bukin 
1978d7e7a98SRuslan Bukin #define	SCNx8		"hhx"	/* uint8_t */
1988d7e7a98SRuslan Bukin #define	SCNx16		"hx"	/* uint16_t */
1998d7e7a98SRuslan Bukin #define	SCNx32		"x"	/* uint32_t */
2008d7e7a98SRuslan Bukin #define	SCNx64		"lx"	/* uint64_t */
2018d7e7a98SRuslan Bukin #define	SCNxLEAST8	"hhx"	/* uint_least8_t */
2028d7e7a98SRuslan Bukin #define	SCNxLEAST16	"hx"	/* uint_least16_t */
2038d7e7a98SRuslan Bukin #define	SCNxLEAST32	"x"	/* uint_least32_t */
2048d7e7a98SRuslan Bukin #define	SCNxLEAST64	"lx"	/* uint_least64_t */
2058d7e7a98SRuslan Bukin #define	SCNxFAST8	"x"	/* uint_fast8_t */
2068d7e7a98SRuslan Bukin #define	SCNxFAST16	"x"	/* uint_fast16_t */
2078d7e7a98SRuslan Bukin #define	SCNxFAST32	"x"	/* uint_fast32_t */
2088d7e7a98SRuslan Bukin #define	SCNxFAST64	"lx"	/* uint_fast64_t */
2098d7e7a98SRuslan Bukin #define	SCNxMAX		"jx"	/* uintmax_t */
2108d7e7a98SRuslan Bukin #define	SCNxPTR		"lx"	/* uintptr_t */
2118d7e7a98SRuslan Bukin 
2128d7e7a98SRuslan Bukin #endif /* !_MACHINE__INTTYPES_H_ */
213