initial commit
[freebsd-arm:freebsd-arm.git] / amd64 / include / _inttypes.h
1 /*-
2  * Copyright (c) 2001 The NetBSD Foundation, Inc.
3  * All rights reserved.
4  *
5  * This code is derived from software contributed to The NetBSD Foundation
6  * by Klaus Klein.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  *    notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  *    notice, this list of conditions and the following disclaimer in the
15  *    documentation and/or other materials provided with the distribution.
16  * 3. All advertising materials mentioning features or use of this software
17  *    must display the following acknowledgement:
18  *        This product includes software developed by the NetBSD
19  *        Foundation, Inc. and its contributors.
20  * 4. Neither the name of The NetBSD Foundation nor the names of its
21  *    contributors may be used to endorse or promote products derived
22  *    from this software without specific prior written permission.
23  *
24  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
25  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
26  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
27  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
28  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34  * POSSIBILITY OF SUCH DAMAGE.
35  *
36  *      From: $NetBSD: int_fmtio.h,v 1.2 2001/04/26 16:25:21 kleink Exp $
37  * $FreeBSD$
38  */
39
40 #ifndef _MACHINE_INTTYPES_H_
41 #define _MACHINE_INTTYPES_H_
42
43 /*
44  * Macros for format specifiers.
45  */
46
47 /* fprintf(3) macros for signed integers. */
48
49 #define PRId8           "d"     /* int8_t */
50 #define PRId16          "d"     /* int16_t */
51 #define PRId32          "d"     /* int32_t */
52 #define PRId64          "ld"    /* int64_t */
53 #define PRIdLEAST8      "d"     /* int_least8_t */
54 #define PRIdLEAST16     "d"     /* int_least16_t */
55 #define PRIdLEAST32     "d"     /* int_least32_t */
56 #define PRIdLEAST64     "ld"    /* int_least64_t */
57 #define PRIdFAST8       "d"     /* int_fast8_t */
58 #define PRIdFAST16      "d"     /* int_fast16_t */
59 #define PRIdFAST32      "d"     /* int_fast32_t */
60 #define PRIdFAST64      "ld"    /* int_fast64_t */
61 #define PRIdMAX         "jd"    /* intmax_t */
62 #define PRIdPTR         "ld"    /* intptr_t */
63
64 #define PRIi8           "i"     /* int8_t */
65 #define PRIi16          "i"     /* int16_t */
66 #define PRIi32          "i"     /* int32_t */
67 #define PRIi64          "li"    /* int64_t */
68 #define PRIiLEAST8      "i"     /* int_least8_t  */
69 #define PRIiLEAST16     "i"     /* int_least16_t */
70 #define PRIiLEAST32     "i"     /* int_least32_t */
71 #define PRIiLEAST64     "li"    /* int_least64_t */
72 #define PRIiFAST8       "i"     /* int_fast8_t */
73 #define PRIiFAST16      "i"     /* int_fast16_t */
74 #define PRIiFAST32      "i"     /* int_fast32_t */
75 #define PRIiFAST64      "li"    /* int_fast64_t */
76 #define PRIiMAX         "ji"    /* intmax_t */
77 #define PRIiPTR         "li"    /* intptr_t */
78
79 /* fprintf(3) macros for unsigned integers. */
80
81 #define PRIo8           "o"     /* uint8_t */
82 #define PRIo16          "o"     /* uint16_t */
83 #define PRIo32          "o"     /* uint32_t */
84 #define PRIo64          "lo"    /* uint64_t */
85 #define PRIoLEAST8      "o"     /* uint_least8_t */
86 #define PRIoLEAST16     "o"     /* uint_least16_t */
87 #define PRIoLEAST32     "o"     /* uint_least32_t */
88 #define PRIoLEAST64     "lo"    /* uint_least64_t */
89 #define PRIoFAST8       "o"     /* uint_fast8_t */
90 #define PRIoFAST16      "o"     /* uint_fast16_t */
91 #define PRIoFAST32      "o"     /* uint_fast32_t */
92 #define PRIoFAST64      "lo"    /* uint_fast64_t */
93 #define PRIoMAX         "jo"    /* uintmax_t */
94 #define PRIoPTR         "lo"    /* uintptr_t */
95
96 #define PRIu8           "u"     /* uint8_t */
97 #define PRIu16          "u"     /* uint16_t */
98 #define PRIu32          "u"     /* uint32_t */
99 #define PRIu64          "lu"    /* uint64_t */
100 #define PRIuLEAST8      "u"     /* uint_least8_t */
101 #define PRIuLEAST16     "u"     /* uint_least16_t */
102 #define PRIuLEAST32     "u"     /* uint_least32_t */
103 #define PRIuLEAST64     "lu"    /* uint_least64_t */
104 #define PRIuFAST8       "u"     /* uint_fast8_t */
105 #define PRIuFAST16      "u"     /* uint_fast16_t */
106 #define PRIuFAST32      "u"     /* uint_fast32_t */
107 #define PRIuFAST64      "lu"    /* uint_fast64_t */
108 #define PRIuMAX         "ju"    /* uintmax_t */
109 #define PRIuPTR         "lu"    /* uintptr_t */
110
111 #define PRIx8           "x"     /* uint8_t */
112 #define PRIx16          "x"     /* uint16_t */
113 #define PRIx32          "x"     /* uint32_t */
114 #define PRIx64          "lx"    /* uint64_t */
115 #define PRIxLEAST8      "x"     /* uint_least8_t */
116 #define PRIxLEAST16     "x"     /* uint_least16_t */
117 #define PRIxLEAST32     "x"     /* uint_least32_t */
118 #define PRIxLEAST64     "lx"    /* uint_least64_t */
119 #define PRIxFAST8       "x"     /* uint_fast8_t */
120 #define PRIxFAST16      "x"     /* uint_fast16_t */
121 #define PRIxFAST32      "x"     /* uint_fast32_t */
122 #define PRIxFAST64      "lx"    /* uint_fast64_t */
123 #define PRIxMAX         "jx"    /* uintmax_t */
124 #define PRIxPTR         "lx"    /* uintptr_t */
125
126 #define PRIX8           "X"     /* uint8_t */
127 #define PRIX16          "X"     /* uint16_t */
128 #define PRIX32          "X"     /* uint32_t */
129 #define PRIX64          "lX"    /* uint64_t */
130 #define PRIXLEAST8      "X"     /* uint_least8_t */
131 #define PRIXLEAST16     "X"     /* uint_least16_t */
132 #define PRIXLEAST32     "X"     /* uint_least32_t */
133 #define PRIXLEAST64     "lX"    /* uint_least64_t */
134 #define PRIXFAST8       "X"     /* uint_fast8_t */
135 #define PRIXFAST16      "X"     /* uint_fast16_t */
136 #define PRIXFAST32      "X"     /* uint_fast32_t */
137 #define PRIXFAST64      "lX"    /* uint_fast64_t */
138 #define PRIXMAX         "jX"    /* uintmax_t */
139 #define PRIXPTR         "lX"    /* uintptr_t */
140
141 /* fscanf(3) macros for signed integers. */
142
143 #define SCNd8           "hhd"   /* int8_t */
144 #define SCNd16          "hd"    /* int16_t */
145 #define SCNd32          "d"     /* int32_t */
146 #define SCNd64          "ld"    /* int64_t */
147 #define SCNdLEAST8      "hhd"   /* int_least8_t */
148 #define SCNdLEAST16     "hd"    /* int_least16_t */
149 #define SCNdLEAST32     "d"     /* int_least32_t */
150 #define SCNdLEAST64     "ld"    /* int_least64_t */
151 #define SCNdFAST8       "d"     /* int_fast8_t */
152 #define SCNdFAST16      "d"     /* int_fast16_t */
153 #define SCNdFAST32      "d"     /* int_fast32_t */
154 #define SCNdFAST64      "ld"    /* int_fast64_t */
155 #define SCNdMAX         "jd"    /* intmax_t */
156 #define SCNdPTR         "ld"    /* intptr_t */
157
158 #define SCNi8           "hhi"   /* int8_t */
159 #define SCNi16          "hi"    /* int16_t */
160 #define SCNi32          "i"     /* int32_t */
161 #define SCNi64          "li"    /* int64_t */
162 #define SCNiLEAST8      "hhi"   /* int_least8_t */
163 #define SCNiLEAST16     "hi"    /* int_least16_t */
164 #define SCNiLEAST32     "i"     /* int_least32_t */
165 #define SCNiLEAST64     "li"    /* int_least64_t */
166 #define SCNiFAST8       "i"     /* int_fast8_t */
167 #define SCNiFAST16      "i"     /* int_fast16_t */
168 #define SCNiFAST32      "i"     /* int_fast32_t */
169 #define SCNiFAST64      "li"    /* int_fast64_t */
170 #define SCNiMAX         "ji"    /* intmax_t */
171 #define SCNiPTR         "li"    /* intptr_t */
172
173 /* fscanf(3) macros for unsigned integers. */
174
175 #define SCNo8           "hho"   /* uint8_t */
176 #define SCNo16          "ho"    /* uint16_t */
177 #define SCNo32          "o"     /* uint32_t */
178 #define SCNo64          "lo"    /* uint64_t */
179 #define SCNoLEAST8      "hho"   /* uint_least8_t */
180 #define SCNoLEAST16     "ho"    /* uint_least16_t */
181 #define SCNoLEAST32     "o"     /* uint_least32_t */
182 #define SCNoLEAST64     "lo"    /* uint_least64_t */
183 #define SCNoFAST8       "o"     /* uint_fast8_t */
184 #define SCNoFAST16      "o"     /* uint_fast16_t */
185 #define SCNoFAST32      "o"     /* uint_fast32_t */
186 #define SCNoFAST64      "lo"    /* uint_fast64_t */
187 #define SCNoMAX         "jo"    /* uintmax_t */
188 #define SCNoPTR         "lo"    /* uintptr_t */
189
190 #define SCNu8           "hhu"   /* uint8_t */
191 #define SCNu16          "hu"    /* uint16_t */
192 #define SCNu32          "u"     /* uint32_t */
193 #define SCNu64          "lu"    /* uint64_t */
194 #define SCNuLEAST8      "hhu"   /* uint_least8_t */
195 #define SCNuLEAST16     "hu"    /* uint_least16_t */
196 #define SCNuLEAST32     "u"     /* uint_least32_t */
197 #define SCNuLEAST64     "lu"    /* uint_least64_t */
198 #define SCNuFAST8       "u"     /* uint_fast8_t */
199 #define SCNuFAST16      "u"     /* uint_fast16_t */
200 #define SCNuFAST32      "u"     /* uint_fast32_t */
201 #define SCNuFAST64      "lu"    /* uint_fast64_t */
202 #define SCNuMAX         "ju"    /* uintmax_t */
203 #define SCNuPTR         "lu"    /* uintptr_t */
204
205 #define SCNx8           "hhx"   /* uint8_t */
206 #define SCNx16          "hx"    /* uint16_t */
207 #define SCNx32          "x"     /* uint32_t */
208 #define SCNx64          "lx"    /* uint64_t */
209 #define SCNxLEAST8      "hhx"   /* uint_least8_t */
210 #define SCNxLEAST16     "hx"    /* uint_least16_t */
211 #define SCNxLEAST32     "x"     /* uint_least32_t */
212 #define SCNxLEAST64     "lx"    /* uint_least64_t */
213 #define SCNxFAST8       "x"     /* uint_fast8_t */
214 #define SCNxFAST16      "x"     /* uint_fast16_t */
215 #define SCNxFAST32      "x"     /* uint_fast32_t */
216 #define SCNxFAST64      "lx"    /* uint_fast64_t */
217 #define SCNxMAX         "jx"    /* uintmax_t */
218 #define SCNxPTR         "lx"    /* uintptr_t */
219
220 #endif /* !_MACHINE_INTTYPES_H_ */