|
My Project
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
18#define _p_MemCmp_Declare(s1, s2) \
19 const unsigned long* _s1 = ((unsigned long*) s1); \
20 const unsigned long* _s2 = ((unsigned long*) s2); \
21 REGISTER unsigned long _v1; \
22 REGISTER unsigned long _v2
24#define _p_MemCmp_Equal(i, s1, s2, actionE) \
25 do { _v1=((unsigned long*)s1)[i]; _v2=((unsigned long*)s2)[i]; if (_v1==_v2) actionE; }while (0)
26#define _p_MemCmp_NotEqual(actionG, actionS) \
27 do {if (_v1 > _v2) actionG; actionS;} while (0)
29#define _p_MemCmp_LengthOne_Equal(i, s1, s2, actionE) \
30 _p_MemCmp_Equal(i, s1, s2, actionE)
31#define _p_MemCmp_LengthTwo_Equal(i, s1, s2, actionE) \
32 _p_MemCmp_Equal(i, s1, s2, _p_MemCmp_Equal(i+1, s1, s2, actionE))
33#define _p_MemCmp_LengthThree_Equal(i, s1, s2, actionE) \
34 _p_MemCmp_LengthTwo_Equal(i, s1, s2, _p_MemCmp_Equal(i+2, s1, s2, actionE))
35#define _p_MemCmp_LengthFour_Equal(i, s1, s2, actionE) \
36 _p_MemCmp_LengthThree_Equal(i, s1, s2, _p_MemCmp_Equal(i+3, s1, s2, actionE))
37#define _p_MemCmp_LengthFive_Equal(i, s1, s2, actionE) \
38 _p_MemCmp_LengthFour_Equal(i, s1, s2, _p_MemCmp_Equal(i+4, s1, s2, actionE))
39#define _p_MemCmp_LengthSix_Equal(i, s1, s2, actionE) \
40 _p_MemCmp_LengthFive_Equal(i, s1, s2, _p_MemCmp_Equal(i+5, s1, s2, actionE))
41#define _p_MemCmp_LengthSeven_Equal(i, s1, s2, actionE) \
42 _p_MemCmp_LengthSix_Equal(i, s1, s2, _p_MemCmp_Equal(i+6, s1, s2, actionE))
43#define _p_MemCmp_LengthEight_Equal(i, s1, s2, actionE) \
44 _p_MemCmp_LengthSeven_Equal(i, s1, s2, _p_MemCmp_Equal(i+7, s1, s2, actionE))
45#define _p_MemCmp_LengthGeneral_Equal(i, s1, s2, length, actionE) \
49 REGISTER unsigned long _i = (unsigned long) i; \
50 const unsigned long _l = \
51 (unsigned long) length + (unsigned long)i ; \
53 LengthGeneral_LoopTop: \
59 if (_i == _l) actionE; \
60 else goto LengthGeneral_LoopTop; \
70#define p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
73 _p_MemCmp_Declare(s1,s2); \
74 _p_MemCmp_LengthOne_Equal(0, _s1, _s2, actionE); \
75 _p_MemCmp_NotEqual(actionG, actionS); \
78#define p_MemCmp_LengthTwo_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
81 _p_MemCmp_Declare(s1,s2); \
82 _p_MemCmp_LengthTwo_Equal(0, _s1, _s2, actionE); \
83 _p_MemCmp_NotEqual(actionG, actionS); \
86#define p_MemCmp_LengthThree_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
89 _p_MemCmp_Declare(s1,s2); \
90 _p_MemCmp_LengthThree_Equal(0, _s1, _s2, actionE); \
91 _p_MemCmp_NotEqual(actionG, actionS); \
94#define p_MemCmp_LengthFour_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
97 _p_MemCmp_Declare(s1,s2); \
98 _p_MemCmp_LengthFour_Equal(0, _s1, _s2, actionE); \
99 _p_MemCmp_NotEqual(actionG, actionS); \
102#define p_MemCmp_LengthFive_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
105 _p_MemCmp_Declare(s1,s2); \
106 _p_MemCmp_LengthFive_Equal(0, _s1, _s2, actionE); \
107 _p_MemCmp_NotEqual(actionG, actionS); \
110#define p_MemCmp_LengthSix_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
113 _p_MemCmp_Declare(s1,s2); \
114 _p_MemCmp_LengthSix_Equal(0, _s1, _s2, actionE); \
115 _p_MemCmp_NotEqual(actionG, actionS); \
118#define p_MemCmp_LengthSeven_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
121 _p_MemCmp_Declare(s1,s2); \
122 _p_MemCmp_LengthSeven_Equal(0, _s1, _s2, actionE); \
123 _p_MemCmp_NotEqual(actionG, actionS);; \
127#define p_MemCmp_LengthEight_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
130 _p_MemCmp_Declare(s1,s2); \
131 _p_MemCmp_LengthEight_Equal(0, _s1, _s2, actionE); \
132 _p_MemCmp_NotEqual(actionG, actionS); \
135#define p_MemCmp_LengthGeneral_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
138 _p_MemCmp_Declare(s1,s2); \
139 _p_MemCmp_LengthGeneral_Equal(0, _s1, _s2, length, actionE); \
140 _p_MemCmp_NotEqual(actionG, actionS); \
149#define p_MemCmp_LengthOne_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
150 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
151#define p_MemCmp_LengthTwo_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
152 p_MemCmp_LengthTwo_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
153#define p_MemCmp_LengthThree_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
154 p_MemCmp_LengthThree_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
155#define p_MemCmp_LengthFour_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
156 p_MemCmp_LengthFour_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
157#define p_MemCmp_LengthFive_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
158 p_MemCmp_LengthFive_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
159#define p_MemCmp_LengthSix_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
160 p_MemCmp_LengthSix_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
161#define p_MemCmp_LengthSeven_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
162 p_MemCmp_LengthSeven_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
163#define p_MemCmp_LengthEight_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
164 p_MemCmp_LengthEight_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
165#define p_MemCmp_LengthGeneral_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
166 p_MemCmp_LengthGeneral_OrdPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
173#define p_MemCmp_LengthTwo_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
174 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
175#define p_MemCmp_LengthThree_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
176 p_MemCmp_LengthTwo_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
177#define p_MemCmp_LengthFour_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
178 p_MemCmp_LengthThree_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
179#define p_MemCmp_LengthFive_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
180 p_MemCmp_LengthFour_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
181#define p_MemCmp_LengthSix_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
182 p_MemCmp_LengthFive_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
183#define p_MemCmp_LengthSeven_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
184 p_MemCmp_LengthSix_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
185#define p_MemCmp_LengthEight_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
186 p_MemCmp_LengthSeven_OrdPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
187#define p_MemCmp_LengthGeneral_OrdPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
188 p_MemCmp_LengthGeneral_OrdPomog(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
195#define p_MemCmp_LengthTwo_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
196 p_MemCmp_LengthOne_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
197#define p_MemCmp_LengthThree_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
198 p_MemCmp_LengthTwo_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
199#define p_MemCmp_LengthFour_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
200 p_MemCmp_LengthThree_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
201#define p_MemCmp_LengthFive_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
202 p_MemCmp_LengthFour_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
203#define p_MemCmp_LengthSix_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
204 p_MemCmp_LengthFive_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
205#define p_MemCmp_LengthSeven_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
206 p_MemCmp_LengthSix_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
207#define p_MemCmp_LengthEight_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
208 p_MemCmp_LengthSeven_OrdNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
209#define p_MemCmp_LengthGeneral_OrdNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
210 p_MemCmp_LengthGeneral_OrdNomog(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
217#define p_MemCmp_LengthTwo_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
218 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
219 _p_MemCmp_LengthOne_Equal(1, _s2, _s1,actionE), \
221#define p_MemCmp_LengthThree_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
222 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
223 _p_MemCmp_LengthTwo_Equal(1, _s2, _s1, actionE), \
225#define p_MemCmp_LengthFour_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
226 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
227 _p_MemCmp_LengthThree_Equal(1, _s2, _s1, actionE), \
229#define p_MemCmp_LengthFive_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
230 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
231 _p_MemCmp_LengthFour_Equal(1, _s2, _s1, actionE), \
233#define p_MemCmp_LengthSix_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
234 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
235 _p_MemCmp_LengthFive_Equal(1, _s2, _s1, actionE), \
237#define p_MemCmp_LengthSeven_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
238 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
239 _p_MemCmp_LengthSix_Equal(1, _s2, _s1, actionE), \
241#define p_MemCmp_LengthEight_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
242 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
243 _p_MemCmp_LengthSeven_Equal(1, _s2, _s1, actionE), \
245#define p_MemCmp_LengthGeneral_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
246 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
247 _p_MemCmp_LengthGeneral_Equal(1, _s2, _s1, (length) -1, actionE), \
255#define p_MemCmp_LengthTwo_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
256 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
257 _p_MemCmp_Equal(1, _s2, _s1, actionE), \
259#define p_MemCmp_LengthThree_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
260 p_MemCmp_LengthTwo_OrdPomog(s1, s2, length, ordsgn, \
261 _p_MemCmp_Equal(2, _s2, _s1, actionE), \
263#define p_MemCmp_LengthFour_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
264 p_MemCmp_LengthThree_OrdPomog(s1, s2, length, ordsgn, \
265 _p_MemCmp_Equal(3, _s2, _s1, actionE), \
267#define p_MemCmp_LengthFive_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
268 p_MemCmp_LengthFour_OrdPomog(s1, s2, length, ordsgn, \
269 _p_MemCmp_Equal(4, _s2, _s1, actionE), \
271#define p_MemCmp_LengthSix_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
272 p_MemCmp_LengthFive_OrdPomog(s1, s2, length, ordsgn, \
273 _p_MemCmp_Equal(5, _s2, _s1, actionE), \
275#define p_MemCmp_LengthSeven_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
276 p_MemCmp_LengthSix_OrdPomog(s1, s2, length, ordsgn, \
277 _p_MemCmp_Equal(6, _s2, _s1, actionE), \
279#define p_MemCmp_LengthEight_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
280 p_MemCmp_LengthSeven_OrdPomog(s1, s2, length, ordsgn, \
281 _p_MemCmp_Equal(7, _s2, _s1, actionE), \
283#define p_MemCmp_LengthGeneral_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS) \
284 p_MemCmp_LengthGeneral_OrdPomog(s1, s2, (length-1), ordsgn, \
285 _p_MemCmp_Equal(_i, _s2, _s1, actionE), \
293#define p_MemCmp_LengthThree_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
294 p_MemCmp_LengthThree_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
295#define p_MemCmp_LengthFour_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
296 p_MemCmp_LengthFour_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
297#define p_MemCmp_LengthFive_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
298 p_MemCmp_LengthFive_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
299#define p_MemCmp_LengthSix_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
300 p_MemCmp_LengthSix_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
301#define p_MemCmp_LengthSeven_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
302 p_MemCmp_LengthSeven_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
303#define p_MemCmp_LengthEight_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
304 p_MemCmp_LengthEight_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
305#define p_MemCmp_LengthGeneral_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
306 p_MemCmp_LengthGeneral_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionS, actionG)
313#define p_MemCmp_LengthThree_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
314 p_MemCmp_LengthThree_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
315#define p_MemCmp_LengthFour_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
316 p_MemCmp_LengthFour_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
317#define p_MemCmp_LengthFive_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
318 p_MemCmp_LengthFive_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
319#define p_MemCmp_LengthSix_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
320 p_MemCmp_LengthSix_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
321#define p_MemCmp_LengthSeven_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
322 p_MemCmp_LengthSeven_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
323#define p_MemCmp_LengthEight_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
324 p_MemCmp_LengthEight_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
325#define p_MemCmp_LengthGeneral_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
326 p_MemCmp_LengthGeneral_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionS, actionG)
334#define p_MemCmp_LengthThree_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
335 p_MemCmp_LengthTwo_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS)
336#define p_MemCmp_LengthFour_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
337 p_MemCmp_LengthThree_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS)
338#define p_MemCmp_LengthFive_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
339 p_MemCmp_LengthFour_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS)
340#define p_MemCmp_LengthSix_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
341 p_MemCmp_LengthFive_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS)
342#define p_MemCmp_LengthSeven_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
343 p_MemCmp_LengthSix_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS)
344#define p_MemCmp_LengthEight_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
345 p_MemCmp_LengthSeven_OrdPomogNeg(s1, s2, length, ordsgn, actionE, actionG, actionS)
346#define p_MemCmp_LengthGeneral_OrdPomogNegZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
347 p_MemCmp_LengthGeneral_OrdPomogNeg(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
354#define p_MemCmp_LengthThree_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
355 p_MemCmp_LengthTwo_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
356#define p_MemCmp_LengthFour_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
357 p_MemCmp_LengthThree_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
358#define p_MemCmp_LengthFive_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
359 p_MemCmp_LengthFour_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
360#define p_MemCmp_LengthSix_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
361 p_MemCmp_LengthFive_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
362#define p_MemCmp_LengthSeven_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
363 p_MemCmp_LengthSix_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
364#define p_MemCmp_LengthEight_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
365 p_MemCmp_LengthSeven_OrdNegPomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
366#define p_MemCmp_LengthGeneral_OrdNegPomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
367 p_MemCmp_LengthGeneral_OrdNegPomog(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
374#define p_MemCmp_LengthFour_OrdNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
375 p_MemCmp_LengthThree_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
376#define p_MemCmp_LengthFive_OrdNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
377 p_MemCmp_LengthFour_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
378#define p_MemCmp_LengthSix_OrdNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
379 p_MemCmp_LengthFive_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
380#define p_MemCmp_LengthSeven_OrdNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
381 p_MemCmp_LengthSix_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
382#define p_MemCmp_LengthEight_OrdNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
383 p_MemCmp_LengthSeven_OrdNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
384#define p_MemCmp_LengthGeneral_OrdNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
385 p_MemCmp_LengthGeneral_OrdNomogPos(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
392#define p_MemCmp_LengthFour_OrdPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
393 p_MemCmp_LengthThree_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
394#define p_MemCmp_LengthFive_OrdPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
395 p_MemCmp_LengthFour_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
396#define p_MemCmp_LengthSix_OrdPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
397 p_MemCmp_LengthFive_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
398#define p_MemCmp_LengthSeven_OrdPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
399 p_MemCmp_LengthSix_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
400#define p_MemCmp_LengthEight_OrdPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
401 p_MemCmp_LengthSeven_OrdPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
402#define p_MemCmp_LengthGeneral_OrdPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
403 p_MemCmp_LengthGeneral_OrdPosNomog(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
410#define p_MemCmp_LengthThree_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
411 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
412 _p_MemCmp_Equal(1, _s1, _s2, \
413 _p_MemCmp_LengthOne_Equal(2, _s2, _s1, actionE)), \
415#define p_MemCmp_LengthFour_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
416 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
417 _p_MemCmp_Equal(1, _s1, _s2, \
418 _p_MemCmp_LengthTwo_Equal(2, _s2, _s1, actionE)), \
420#define p_MemCmp_LengthFive_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
421 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
422 _p_MemCmp_Equal(1, _s1, _s2, \
423 _p_MemCmp_LengthThree_Equal(2, _s2, _s1, actionE)), \
425#define p_MemCmp_LengthSix_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
426 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
427 _p_MemCmp_Equal(1, _s1, _s2, \
428 _p_MemCmp_LengthFour_Equal(2, _s2, _s1, actionE)), \
430#define p_MemCmp_LengthSeven_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
431 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
432 _p_MemCmp_Equal(1, _s1, _s2, \
433 _p_MemCmp_LengthFive_Equal(2, _s2, _s1, actionE)), \
435#define p_MemCmp_LengthEight_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
436 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
437 _p_MemCmp_Equal(1, _s1, _s2, \
438 _p_MemCmp_LengthSix_Equal(2, _s2, _s1, actionE)), \
440#define p_MemCmp_LengthGeneral_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
441 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
442 _p_MemCmp_Equal(1, _s1, _s2, \
443 _p_MemCmp_LengthGeneral_Equal(2,_s2,_s1,(length-2), actionE)), \
451#define p_MemCmp_LengthThree_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
452 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
453 _p_MemCmp_Equal(1, _s2, _s1, \
454 _p_MemCmp_LengthOne_Equal(2, _s1, _s2, actionE)), \
456#define p_MemCmp_LengthFour_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
457 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
458 _p_MemCmp_Equal(1, _s2, _s1, \
459 _p_MemCmp_LengthTwo_Equal(2, _s1, _s2, actionE)), \
461#define p_MemCmp_LengthFive_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
462 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
463 _p_MemCmp_Equal(1, _s2, _s1, \
464 _p_MemCmp_LengthThree_Equal(2, _s1, _s2, actionE)), \
466#define p_MemCmp_LengthSix_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
467 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
468 _p_MemCmp_Equal(1, _s2, _s1, \
469 _p_MemCmp_LengthFour_Equal(2, _s1, _s2, actionE)), \
471#define p_MemCmp_LengthSeven_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
472 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
473 _p_MemCmp_Equal(1, _s2, _s1, \
474 _p_MemCmp_LengthFive_Equal(2, _s1, _s2, actionE)), \
476#define p_MemCmp_LengthEight_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
477 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
478 _p_MemCmp_Equal(1, _s2, _s1, \
479 _p_MemCmp_LengthSix_Equal(2, _s1, _s2, actionE)), \
481#define p_MemCmp_LengthGeneral_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS) \
482 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
483 _p_MemCmp_Equal(1, _s2, _s1, \
484 _p_MemCmp_LengthGeneral_Equal(2, _s1,_s2, \
485 (length-2) , actionE)), \
493#define p_MemCmp_LengthThree_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
494 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
495 _p_MemCmp_LengthOne_Equal(1, _s2, _s1, \
496 _p_MemCmp_LengthOne_Equal(2, _s1, _s2, actionE)), \
498#define p_MemCmp_LengthFour_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
499 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
500 _p_MemCmp_LengthTwo_Equal(1, _s2, _s1, \
501 _p_MemCmp_Equal(3, _s1, _s2, actionE)), \
503#define p_MemCmp_LengthFive_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
504 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
505 _p_MemCmp_LengthThree_Equal(1, _s2, _s1, \
506 _p_MemCmp_Equal(4, _s1, _s2, actionE)), \
508#define p_MemCmp_LengthSix_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
509 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
510 _p_MemCmp_LengthFour_Equal(1, _s2, _s1, \
511 _p_MemCmp_Equal(5, _s1, _s2, actionE)), \
513#define p_MemCmp_LengthSeven_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
514 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
515 _p_MemCmp_LengthFive_Equal(1, _s2, _s1, \
516 _p_MemCmp_Equal(6, _s1, _s2, actionE)), \
518#define p_MemCmp_LengthEight_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
519 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
520 _p_MemCmp_LengthSix_Equal(1, _s2, _s1, \
521 _p_MemCmp_Equal(7, _s1, _s2, actionE)), \
523#define p_MemCmp_LengthGeneral_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS) \
524 p_MemCmp_LengthOne_OrdPomog(s1, s2, length, ordsgn, \
525 _p_MemCmp_LengthGeneral_Equal(1, _s2, _s1, (length - 2), \
526 _p_MemCmp_Equal(_i, _s1, _s2, actionE)), \
535#define p_MemCmp_LengthFour_OrdPosPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
536 p_MemCmp_LengthThree_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
537#define p_MemCmp_LengthFive_OrdPosPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
538 p_MemCmp_LengthFour_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
539#define p_MemCmp_LengthSix_OrdPosPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
540 p_MemCmp_LengthFive_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
541#define p_MemCmp_LengthSeven_OrdPosPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
542 p_MemCmp_LengthSix_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
543#define p_MemCmp_LengthEight_OrdPosPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
544 p_MemCmp_LengthSeven_OrdPosPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
545#define p_MemCmp_LengthGeneral_OrdPosPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
546 p_MemCmp_LengthGeneral_OrdPosPosNomog(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
553#define p_MemCmp_LengthFour_OrdPosNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
554 p_MemCmp_LengthThree_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
555#define p_MemCmp_LengthFive_OrdPosNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
556 p_MemCmp_LengthFour_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
557#define p_MemCmp_LengthSix_OrdPosNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
558 p_MemCmp_LengthFive_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
559#define p_MemCmp_LengthSeven_OrdPosNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
560 p_MemCmp_LengthSix_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
561#define p_MemCmp_LengthEight_OrdPosNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
562 p_MemCmp_LengthSeven_OrdPosNomogPos(s1, s2, length, ordsgn, actionE, actionG, actionS)
563#define p_MemCmp_LengthGeneral_OrdPosNomogPosZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
564 p_MemCmp_LengthGeneral_OrdPosNomogPos(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
571#define p_MemCmp_LengthFour_OrdNegPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
572 p_MemCmp_LengthThree_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
573#define p_MemCmp_LengthFive_OrdNegPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
574 p_MemCmp_LengthFour_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
575#define p_MemCmp_LengthSix_OrdNegPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
576 p_MemCmp_LengthFive_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
577#define p_MemCmp_LengthSeven_OrdNegPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
578 p_MemCmp_LengthSix_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
579#define p_MemCmp_LengthEight_OrdNegPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
580 p_MemCmp_LengthSeven_OrdNegPosNomog(s1, s2, length, ordsgn, actionE, actionG, actionS)
581#define p_MemCmp_LengthGeneral_OrdNegPosNomogZero(s1, s2, length, ordsgn, actionE, actionG, actionS) \
582 p_MemCmp_LengthGeneral_OrdNegPosNomog(s1, s2, (length) -1, ordsgn, actionE, actionG, actionS)
590#define _p_MemCmp_OrdGeneral_Declare(s1, s2) \
591 const unsigned long* _s1 = ((unsigned long*) s1); \
592 const unsigned long* _s2 = ((unsigned long*) s2); \
593 REGISTER unsigned long _v1; \
594 REGISTER unsigned long _v2; \
595 REGISTER unsigned long _i
597#define _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS) \
600 const long* _ordsgn = (long*) ordsgn; \
603 if (_ordsgn[_i] == 1) actionG; \
606 if (_ordsgn[_i] == 1) actionS; \
611#define _p_MemCmp_OrdGeneral(i, actionE) \
617 if (_v1 == _v2) actionE; \
621#define _p_MemCmp_LengthTwo_OrdGeneral(actionE) \
622 _p_MemCmp_OrdGeneral(0, _p_MemCmp_OrdGeneral(1, actionE))
624#define _p_MemCmp_LengthThree_OrdGeneral(actionE) \
625 _p_MemCmp_LengthTwo_OrdGeneral(_p_MemCmp_OrdGeneral(2, actionE))
627#define _p_MemCmp_LengthFour_OrdGeneral(actionE) \
628 _p_MemCmp_LengthThree_OrdGeneral(_p_MemCmp_OrdGeneral(3, actionE))
630#define _p_MemCmp_LengthFive_OrdGeneral(actionE) \
631 _p_MemCmp_LengthFour_OrdGeneral(_p_MemCmp_OrdGeneral(4, actionE))
633#define _p_MemCmp_LengthSix_OrdGeneral(actionE) \
634 _p_MemCmp_LengthFive_OrdGeneral(_p_MemCmp_OrdGeneral(5, actionE))
636#define _p_MemCmp_LengthSeven_OrdGeneral(actionE) \
637 _p_MemCmp_LengthSix_OrdGeneral(_p_MemCmp_OrdGeneral(6, actionE))
639#define _p_MemCmp_LengthEight_OrdGeneral(actionE) \
640 _p_MemCmp_LengthSeven_OrdGeneral(_p_MemCmp_OrdGeneral(7, actionE))
642#define p_MemCmp_LengthOne_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
645 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
646 _p_MemCmp_OrdGeneral(0, actionE); \
647 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
651#define p_MemCmp_LengthTwo_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
654 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
655 _p_MemCmp_LengthTwo_OrdGeneral(actionE); \
656 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
660#define p_MemCmp_LengthThree_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
663 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
664 _p_MemCmp_LengthThree_OrdGeneral(actionE); \
665 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
669#define p_MemCmp_LengthFour_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
672 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
673 _p_MemCmp_LengthFour_OrdGeneral(actionE); \
674 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
678#define p_MemCmp_LengthFive_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
681 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
682 _p_MemCmp_LengthFive_OrdGeneral(actionE); \
683 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
687#define p_MemCmp_LengthSix_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
690 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
691 _p_MemCmp_LengthSix_OrdGeneral(actionE); \
692 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
696#define p_MemCmp_LengthSeven_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
699 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
700 _p_MemCmp_LengthSeven_OrdGeneral(actionE); \
701 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
705#define p_MemCmp_LengthEight_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
708 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
709 _p_MemCmp_LengthEight_OrdGeneral(actionE); \
710 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
719#define p_MemCmp_LengthGeneral_OrdGeneral(s1, s2, length, ordsgn, actionE, actionG, actionS) \
722 _p_MemCmp_OrdGeneral_Declare(s1, s2); \
723 const unsigned long _l = (unsigned long) length; \
727 LengthGeneral_OrdGeneral_LoopTop: \
733 if (_i == _l) actionE; \
734 goto LengthGeneral_OrdGeneral_LoopTop; \
737 _p_MemCmp_OrdGeneral_NotEqual(ordsgn, actionG, actionS); \
742#define p_MemCmp_LengthGeneral_OrdGeneral2(s1, s2, length, ordsgn, actionE, actionG, actionS) \
747 for (_i=0; _i<length;_i++) \
749 if (s1[_i] != s2[_i]) \
751 if (s1[_i] > s2[_i]) \
753 if (ordsgn[_i] == 1) \
757 if (ordsgn[_i] == 1) \
771#define _p_MemCmp_Bitmask_Declare(s1, s2, bitmask) \
772 const unsigned long* _s1 = ((unsigned long*) s1); \
773 const unsigned long* _s2 = ((unsigned long*) s2); \
774 REGISTER const unsigned long _bitmask = bitmask; \
775 REGISTER unsigned long _v1; \
776 REGISTER unsigned long _v2; \
777 REGISTER unsigned long _i \
780#define p_MemCmp_Bitmask_LengthGeneral(s1, s2, bitmask, length, actionG, actionS) \
783 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
784 const unsigned long _l = (unsigned long) length; \
794 (((_v1 & _bitmask) ^ (_v2 & _bitmask)) != ((_v2 - _v1) & _bitmask))) \
803#define _p_MemCmp_Bitmask(i, actionS) \
810 (((_v1 & _bitmask) ^ (_v2 & _bitmask)) != ((_v2 - _v1) & _bitmask))) \
815#define _p_MemCmp_Bitmask_LengthTwo(actionS) \
818 _p_MemCmp_Bitmask(0, actionS); \
819 _p_MemCmp_Bitmask(1, actionS); \
823#define _p_MemCmp_Bitmask_LengthThree(actionS) \
826 _p_MemCmp_Bitmask_LengthTwo(actionS); \
827 _p_MemCmp_Bitmask(2, actionS); \
831#define _p_MemCmp_Bitmask_LengthFour(actionS) \
834 _p_MemCmp_Bitmask_LengthThree(actionS); \
835 _p_MemCmp_Bitmask(3, actionS); \
840#define _p_MemCmp_Bitmask_LengthFive(actionS) \
843 _p_MemCmp_Bitmask_LengthFour(actionS); \
844 _p_MemCmp_Bitmask(4, actionS); \
849#define _p_MemCmp_Bitmask_LengthSix(actionS) \
852 _p_MemCmp_Bitmask_LengthFive(actionS); \
853 _p_MemCmp_Bitmask(5, actionS); \
857#define _p_MemCmp_Bitmask_LengthSeven(actionS) \
860 _p_MemCmp_Bitmask_LengthSix(actionS); \
861 _p_MemCmp_Bitmask(6, actionS); \
865#define _p_MemCmp_Bitmask_LengthEight(actionS) \
868 _p_MemCmp_Bitmask_LengthSeven(actionS); \
869 _p_MemCmp_Bitmask(7, actionS); \
873#define p_MemCmp_Bitmask_LengthZero(s1, s2, bitmask, length, actionG, actionS) actionG
875#define p_MemCmp_Bitmask_LengthOne(s1, s2, bitmask, length, actionG, actionS) \
878 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
879 _p_MemCmp_Bitmask(0, actionS); \
884#define p_MemCmp_Bitmask_LengthTwo(s1, s2, bitmask, length, actionG, actionS) \
887 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
888 _p_MemCmp_Bitmask_LengthTwo(actionS); \
893#define p_MemCmp_Bitmask_LengthThree(s1, s2, bitmask, length, actionG, actionS) \
896 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
897 _p_MemCmp_Bitmask_LengthThree(actionS); \
902#define p_MemCmp_Bitmask_LengthFour(s1, s2, bitmask, length, actionG, actionS) \
905 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
906 _p_MemCmp_Bitmask_LengthFour(actionS); \
911#define p_MemCmp_Bitmask_LengthFive(s1, s2, bitmask, length, actionG, actionS) \
914 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
915 _p_MemCmp_Bitmask_LengthFive(actionS); \
920#define p_MemCmp_Bitmask_LengthSix(s1, s2, bitmask, length, actionG, actionS) \
923 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
924 _p_MemCmp_Bitmask_LengthSix(actionS); \
929#define p_MemCmp_Bitmask_LengthSeven(s1, s2, bitmask, length, actionG, actionS) \
932 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
933 _p_MemCmp_Bitmask_LengthSeven(actionS); \
938#define p_MemCmp_Bitmask_LengthEigth(s1, s2, bitmask, length, actionG, actionS) \
941 _p_MemCmp_Bitmask_Declare(s1, s2, bitmask); \
942 _p_MemCmp_Bitmask_LengthEigth(actionS); \