1 // @(#) From generation tool: JudyTablesGen.c
2 //
3 
4 #include "JudyL.h"
5 // Leave the malloc() sizes readable in the binary (via strings(1)):
6 const char * JudyLMallocSizes = "JudyLMallocSizes = 3, 5, 7, 11, 15, 23, 32, 47, 64, Leaf1 = 13";
7 
8 
9 //	object uses 64 words
10 //	cJU_BITSPERSUBEXPB = 32
11 const uint8_t
12 j__L_BranchBJPPopToWords[cJU_BITSPERSUBEXPB + 1] =
13 {
14 	 0,
15 	 3,  5,  7, 11, 11, 15, 15, 23,
16 	23, 23, 23, 32, 32, 32, 32, 32,
17 	47, 47, 47, 47, 47, 47, 47, 64,
18 	64, 64, 64, 64, 64, 64, 64, 64
19 };
20 
21 //	object uses 15 words
22 //	cJL_LEAF1_MAXPOP1 = 13
23 const uint8_t
24 j__L_Leaf1PopToWords[cJL_LEAF1_MAXPOP1 + 1] =
25 {
26 	 0,
27 	 3,  3,  5,  5,  7,  7, 11, 11,
28 	11, 15, 15, 15, 15
29 };
30 const uint8_t
31 j__L_Leaf1Offset[cJL_LEAF1_MAXPOP1 + 1] =
32 {
33 	 0,
34 	 1,  1,  1,  1,  1,  1,  2,  2,
35 	 2,  2,  2,  2,  2
36 };
37 
38 //	object uses 64 words
39 //	cJL_LEAF2_MAXPOP1 = 51
40 const uint8_t
41 j__L_Leaf2PopToWords[cJL_LEAF2_MAXPOP1 + 1] =
42 {
43 	 0,
44 	 3,  3,  5,  5,  7, 11, 11, 11,
45 	15, 15, 15, 15, 23, 23, 23, 23,
46 	23, 23, 32, 32, 32, 32, 32, 32,
47 	32, 47, 47, 47, 47, 47, 47, 47,
48 	47, 47, 47, 47, 47, 64, 64, 64,
49 	64, 64, 64, 64, 64, 64, 64, 64,
50 	64, 64, 64
51 };
52 const uint8_t
53 j__L_Leaf2Offset[cJL_LEAF2_MAXPOP1 + 1] =
54 {
55 	 0,
56 	 1,  1,  1,  1,  2,  3,  3,  3,
57 	 3,  3,  3,  3,  5,  5,  5,  5,
58 	 5,  5,  7,  7,  7,  7,  7,  7,
59 	 7, 10, 10, 10, 10, 10, 10, 10,
60 	10, 10, 10, 10, 10, 13, 13, 13,
61 	13, 13, 13, 13, 13, 13, 13, 13,
62 	13, 13, 13
63 };
64 
65 //	object uses 64 words
66 //	cJL_LEAF3_MAXPOP1 = 46
67 const uint8_t
68 j__L_Leaf3PopToWords[cJL_LEAF3_MAXPOP1 + 1] =
69 {
70 	 0,
71 	 3,  3,  5,  7,  7, 11, 11, 11,
72 	15, 15, 23, 23, 23, 23, 23, 23,
73 	32, 32, 32, 32, 32, 32, 32, 47,
74 	47, 47, 47, 47, 47, 47, 47, 47,
75 	47, 47, 64, 64, 64, 64, 64, 64,
76 	64, 64, 64, 64, 64, 64
77 };
78 const uint8_t
79 j__L_Leaf3Offset[cJL_LEAF3_MAXPOP1 + 1] =
80 {
81 	 0,
82 	 1,  1,  2,  2,  2,  3,  3,  3,
83 	 4,  4,  6,  6,  6,  6,  6,  6,
84 	 9,  9,  9,  9,  9,  9,  9, 13,
85 	13, 13, 13, 13, 13, 13, 13, 13,
86 	13, 13, 18, 18, 18, 18, 18, 18,
87 	18, 18, 18, 18, 18, 18
88 };
89 
90 //	object uses 63 words
91 //	cJL_LEAF4_MAXPOP1 = 42
92 const uint8_t
93 j__L_Leaf4PopToWords[cJL_LEAF4_MAXPOP1 + 1] =
94 {
95 	 0,
96 	 3,  3,  5,  7, 11, 11, 11, 15,
97 	15, 15, 23, 23, 23, 23, 23, 32,
98 	32, 32, 32, 32, 32, 47, 47, 47,
99 	47, 47, 47, 47, 47, 47, 47, 63,
100 	63, 63, 63, 63, 63, 63, 63, 63,
101 	63, 63
102 };
103 const uint8_t
104 j__L_Leaf4Offset[cJL_LEAF4_MAXPOP1 + 1] =
105 {
106 	 0,
107 	 1,  1,  2,  2,  4,  4,  4,  5,
108 	 5,  5,  8,  8,  8,  8,  8, 11,
109 	11, 11, 11, 11, 11, 16, 16, 16,
110 	16, 16, 16, 16, 16, 16, 16, 21,
111 	21, 21, 21, 21, 21, 21, 21, 21,
112 	21, 21
113 };
114 
115 //	object uses 64 words
116 //	cJL_LEAF5_MAXPOP1 = 39
117 const uint8_t
118 j__L_Leaf5PopToWords[cJL_LEAF5_MAXPOP1 + 1] =
119 {
120 	 0,
121 	 3,  5,  5,  7, 11, 11, 15, 15,
122 	15, 23, 23, 23, 23, 23, 32, 32,
123 	32, 32, 32, 47, 47, 47, 47, 47,
124 	47, 47, 47, 47, 64, 64, 64, 64,
125 	64, 64, 64, 64, 64, 64, 64
126 };
127 const uint8_t
128 j__L_Leaf5Offset[cJL_LEAF5_MAXPOP1 + 1] =
129 {
130 	 0,
131 	 2,  2,  2,  3,  4,  4,  6,  6,
132 	 6,  9,  9,  9,  9,  9, 12, 12,
133 	12, 12, 12, 18, 18, 18, 18, 18,
134 	18, 18, 18, 18, 25, 25, 25, 25,
135 	25, 25, 25, 25, 25, 25, 25
136 };
137 
138 //	object uses 63 words
139 //	cJL_LEAF6_MAXPOP1 = 36
140 const uint8_t
141 j__L_Leaf6PopToWords[cJL_LEAF6_MAXPOP1 + 1] =
142 {
143 	 0,
144 	 3,  5,  7,  7, 11, 11, 15, 15,
145 	23, 23, 23, 23, 23, 32, 32, 32,
146 	32, 32, 47, 47, 47, 47, 47, 47,
147 	47, 47, 63, 63, 63, 63, 63, 63,
148 	63, 63, 63, 63
149 };
150 const uint8_t
151 j__L_Leaf6Offset[cJL_LEAF6_MAXPOP1 + 1] =
152 {
153 	 0,
154 	 1,  3,  3,  3,  5,  5,  6,  6,
155 	10, 10, 10, 10, 10, 14, 14, 14,
156 	14, 14, 20, 20, 20, 20, 20, 20,
157 	20, 20, 27, 27, 27, 27, 27, 27,
158 	27, 27, 27, 27
159 };
160 
161 //	object uses 64 words
162 //	cJL_LEAF7_MAXPOP1 = 34
163 const uint8_t
164 j__L_Leaf7PopToWords[cJL_LEAF7_MAXPOP1 + 1] =
165 {
166 	 0,
167 	 3,  5,  7, 11, 11, 15, 15, 15,
168 	23, 23, 23, 23, 32, 32, 32, 32,
169 	32, 47, 47, 47, 47, 47, 47, 47,
170 	47, 64, 64, 64, 64, 64, 64, 64,
171 	64, 64
172 };
173 const uint8_t
174 j__L_Leaf7Offset[cJL_LEAF7_MAXPOP1 + 1] =
175 {
176 	 0,
177 	 1,  3,  3,  5,  5,  7,  7,  7,
178 	11, 11, 11, 11, 15, 15, 15, 15,
179 	15, 22, 22, 22, 22, 22, 22, 22,
180 	22, 30, 30, 30, 30, 30, 30, 30,
181 	30, 30
182 };
183 
184 //	object uses 63 words
185 //	cJL_LEAFW_MAXPOP1 = 31
186 const uint8_t
187 j__L_LeafWPopToWords[cJL_LEAFW_MAXPOP1 + 1] =
188 {
189 	 0,
190 	 3,  5,  7, 11, 11, 15, 15, 23,
191 	23, 23, 23, 32, 32, 32, 32, 47,
192 	47, 47, 47, 47, 47, 47, 47, 63,
193 	63, 63, 63, 63, 63, 63, 63
194 };
195 const uint8_t
196 j__L_LeafWOffset[cJL_LEAFW_MAXPOP1 + 1] =
197 {
198 	 0,
199 	 2,  3,  4,  6,  6,  8,  8, 12,
200 	12, 12, 12, 16, 16, 16, 16, 24,
201 	24, 24, 24, 24, 24, 24, 24, 32,
202 	32, 32, 32, 32, 32, 32, 32
203 };
204 
205 //	object uses 64 words
206 //	cJU_BITSPERSUBEXPL = 64
207 const uint8_t
208 j__L_LeafVPopToWords[cJU_BITSPERSUBEXPL + 1] =
209 {
210 	 0,
211 	 3,  3,  3,  5,  5,  7,  7, 11,
212 	11, 11, 11, 15, 15, 15, 15, 23,
213 	23, 23, 23, 23, 23, 23, 23, 32,
214 	32, 32, 32, 32, 32, 32, 32, 32,
215 	47, 47, 47, 47, 47, 47, 47, 47,
216 	47, 47, 47, 47, 47, 47, 47, 64,
217 	64, 64, 64, 64, 64, 64, 64, 64,
218 	64, 64, 64, 64, 64, 64, 64, 64
219 };
220