This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Import perl5321delta.pod
[perl5.git] / packsizetables.inc
CommitLineData
6b05cb81
NC
1/* -*- buffer-read-only: t -*-
2 !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
e3f061af 3 This file is built by regen/genpacksizetables.pl from its data.
6b05cb81
NC
4 Any changes made here will be lost!
5 */
298bc19c
NC
6
7#if TYPE_IS_SHRIEKING != 0x100
8 ++++shriek offset should be 256
9#endif
10
11typedef U8 packprops_t;
12#if 'J'-'I' == 1
13/* ASCII */
14STATIC const packprops_t packprops[512] = {
15 /* normal */
16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
17 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
18 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
19 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
20 0, 0, 0,
21 /* C */ sizeof(unsigned char),
22#if defined(HAS_LONG_DOUBLE) && defined(USE_LONG_DOUBLE)
23 /* D */ LONG_DOUBLESIZE,
24#else
25 0,
26#endif
27 0,
28 /* F */ NVSIZE,
29 0, 0,
30 /* I */ sizeof(unsigned int),
31 /* J */ UVSIZE,
32 0,
33 /* L */ SIZE32,
34 0,
35 /* N */ SIZE32,
36 0, 0,
1640b983 37#if IVSIZE >= 8
298bc19c
NC
38 /* Q */ sizeof(Uquad_t),
39#else
40 0,
41#endif
42 0,
43 /* S */ SIZE16,
44 0,
45 /* U */ sizeof(char) | PACK_SIZE_UNPREDICTABLE,
46 /* V */ SIZE32,
47 /* W */ sizeof(unsigned char) | PACK_SIZE_UNPREDICTABLE,
48 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
49 /* c */ sizeof(char),
50 /* d */ sizeof(double),
51 0,
52 /* f */ sizeof(float),
53 0, 0,
54 /* i */ sizeof(int),
55 /* j */ IVSIZE,
56 0,
57 /* l */ SIZE32,
58 0,
59 /* n */ SIZE16,
60 0,
61 /* p */ sizeof(char *) | PACK_SIZE_CANNOT_CSUM,
1640b983 62#if IVSIZE >= 8
298bc19c
NC
63 /* q */ sizeof(Quad_t),
64#else
65 0,
66#endif
67 0,
68 /* s */ SIZE16,
69 0, 0,
70 /* v */ SIZE16,
71 /* w */ sizeof(char) | PACK_SIZE_UNPREDICTABLE | PACK_SIZE_CANNOT_CSUM,
72 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
74 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
75 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
77 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
78 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
79 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
80 0, 0, 0, 0, 0, 0, 0, 0,
81 /* shrieking */
82 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
83 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
84 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
85 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
86 0, 0, 0, 0, 0, 0, 0, 0, 0,
87 /* I */ sizeof(unsigned int),
88 0, 0,
89 /* L */ sizeof(unsigned long),
90 0,
298bc19c 91 /* N */ SIZE32,
298bc19c
NC
92 0, 0, 0, 0,
93 /* S */ sizeof(unsigned short),
94 0, 0,
298bc19c 95 /* V */ SIZE32,
298bc19c
NC
96 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
97 0, 0,
98 /* i */ sizeof(int),
99 0, 0,
100 /* l */ sizeof(long),
101 0,
298bc19c 102 /* n */ SIZE16,
298bc19c
NC
103 0, 0, 0, 0,
104 /* s */ sizeof(short),
105 0, 0,
298bc19c 106 /* v */ SIZE16,
298bc19c
NC
107 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
108 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
109 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
110 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
111 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
112 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
113 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
115 0, 0, 0, 0, 0, 0, 0, 0, 0
116};
117#else
118/* EBCDIC (or bust) */
119STATIC const packprops_t packprops[512] = {
120 /* normal */
121 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
122 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
123 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
126 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
127 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
128 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
129 0, 0, 0,
130 /* c */ sizeof(char),
131 /* d */ sizeof(double),
132 0,
133 /* f */ sizeof(float),
134 0, 0,
135 /* i */ sizeof(int),
136 0, 0, 0, 0, 0, 0, 0,
137 /* j */ IVSIZE,
138 0,
139 /* l */ SIZE32,
140 0,
141 /* n */ SIZE16,
142 0,
143 /* p */ sizeof(char *) | PACK_SIZE_CANNOT_CSUM,
1640b983 144#if IVSIZE >= 8
298bc19c
NC
145 /* q */ sizeof(Quad_t),
146#else
147 0,
148#endif
149 0, 0, 0, 0, 0, 0, 0, 0, 0,
150 /* s */ SIZE16,
151 0, 0,
152 /* v */ SIZE16,
153 /* w */ sizeof(char) | PACK_SIZE_UNPREDICTABLE | PACK_SIZE_CANNOT_CSUM,
154 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
155 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
156 /* C */ sizeof(unsigned char),
157#if defined(HAS_LONG_DOUBLE) && defined(USE_LONG_DOUBLE)
158 /* D */ LONG_DOUBLESIZE,
159#else
160 0,
161#endif
162 0,
163 /* F */ NVSIZE,
164 0, 0,
165 /* I */ sizeof(unsigned int),
166 0, 0, 0, 0, 0, 0, 0,
167 /* J */ UVSIZE,
168 0,
169 /* L */ SIZE32,
170 0,
171 /* N */ SIZE32,
172 0, 0,
1640b983 173#if IVSIZE >= 8
298bc19c
NC
174 /* Q */ sizeof(Uquad_t),
175#else
176 0,
177#endif
178 0, 0, 0, 0, 0, 0, 0, 0, 0,
179 /* S */ SIZE16,
180 0,
181 /* U */ sizeof(char) | PACK_SIZE_UNPREDICTABLE,
182 /* V */ SIZE32,
183 /* W */ sizeof(unsigned char) | PACK_SIZE_UNPREDICTABLE,
184 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
185 0, 0, 0, 0, 0, 0, 0, 0, 0,
186 /* shrieking */
187 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
188 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
189 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
190 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
191 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
192 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
194 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
195 0, 0, 0, 0, 0, 0, 0, 0, 0,
196 /* i */ sizeof(int),
197 0, 0, 0, 0, 0, 0, 0, 0, 0,
198 /* l */ sizeof(long),
199 0,
298bc19c 200 /* n */ SIZE16,
298bc19c
NC
201 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
202 /* s */ sizeof(short),
203 0, 0,
298bc19c 204 /* v */ SIZE16,
298bc19c
NC
205 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
207 0, 0, 0,
208 /* I */ sizeof(unsigned int),
209 0, 0, 0, 0, 0, 0, 0, 0, 0,
210 /* L */ sizeof(unsigned long),
211 0,
298bc19c 212 /* N */ SIZE32,
298bc19c
NC
213 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
214 /* S */ sizeof(unsigned short),
215 0, 0,
298bc19c 216 /* V */ SIZE32,
298bc19c
NC
217 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
218 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
219};
220#endif
6b05cb81
NC
221
222/* ex: set ro: */