cscope 15 $HOME/suif-cuda-omega-latest/code_gen/src 0000481316
@CG.cc
21
~<omega.h
>
22
~<�r�g.h
>
23
~<basic/omega_�r�.h
>
24
~<code_g�/CG.h
>
25
~<code_g�/CG_ou�utBu�d�.h
>
26
~<code_g�/CG_ou�utR�r.h
>
27
~<code_g�/CG_�r�gBu�d�.h
>
28
~<code_g�/ou�ut_��.h
>
29
~<�ack
>
31
�me�a�
gomega
{
33
Tu�e
<
R��i�
>
�w_IS
;
34
Tu�e
<Tu�e<
R��i�
> >
�oje�ed_nIS
;
35
Tu�e
<
CG_ou�utR�r
*>
��em�tInfo
;
36
Tu�e
<
R��i�
>
��sf�m�i�s
;
37
ϡ_�v�
;
39
CG_�su�
*
g�_�cursive
(
�v�
,
I�Tu�e
&
isA�ive
);
43
�me�a�
gomega
{
45
Tu�e
<
I�Tu�e
>
smtN�S��Lev�s
;
46
Tu�e
<Tu�e<
�d
::
�r�g
> >
lo�IdxNames
;
47
�d
::
ve��
<�d::
��
<, std::
�r�g
> >
syncs
;
48
checkLo�Lev�
;
49
�mtF�Lo�Check
;
50
u��BoundF�Lev�
;
51
low�BoundF�Lev�
;
52
bo�
f�lInBounds
;
58
g�d
::
�r�g
CG_�su�
::
��t
(
�d�t
) {
59
CG_�r�gBu�d�
ocg
;
60
CG_ou�utR�r
*
g��
=
��tR�r
(&
ocg
,
�d�t
,
61
�d
::
ve��
<
CG_ou�utR�r
*>(
ϡ_�v�
,
62
��ic_��
<
CG_ou�utR�r
*>(
NULL
)));
63 i�(
g��
=�
NULL
)
64
�d
::
�r�g
();
66
G�S��g
(
��
);
73
gCG_�l�
::
CG_�l�
(
I�Tu�e
&
a�ive
,
lvl
, cڡ
R��i�
&
c�d_
,
74
CG_�su�
*
T
, CG_�su� *
F
) {
75
R��i�
gc�d
=
c�y
(
c�d_
);
76
as��
(
c�d
.
has_s�g�_c�jun�
());
78
c�f_t
gc
= 0;
79
gpos
= -1;
80
GEQ_I��t�
G
(
c�d
.
s�g�_c�jun�
());
81 i�(
gG
) {
82
Cڡr_V�s_I�r
cvi
(*
G
,
�l�
);
gcvi
; cvi++)
83 i�((*
gcvi
).
gc�f
&& (*cvi).
gv�
->
k�d
(�=�
I�ut_V�
84 && (*
cvi
).
v�
->
g�_pos�i�
(�>
pos
) {
85
pos
= (*
cvi
).
v�
->
g�_pos�i�
();
86
gc
= (*
cvi
).
c�f
;
89 #i�de�
NDEBUG
90 i�(
gpos
>
glvl
+ 1) {
91
�r�tf
(
DebugF�e
, "I�eg� s����lv�%d\n",
lvl
);
92
gc�d
.
�efix_��t
(
DebugF�e
);
93
gcode_g�_debug
= 1;
97
as��
(
pos
=�0 ||�o�<�
lvl
+ 1);
99 i�(
gpos
> 0 &&
gc
> 0) {
100
CG_�su�
*
gfoo
=
T
;
101
gT
=
F
;
102
gF
=
foo
;
103 i�(
gcode_g�_debug
) {
104
�r�tf
(
DebugF�e
,
105 "Rev�s�g c�u� i��w s���od���v�%d\n",
lvl
);
106
gc�d
.
�efix_��t
(
DebugF�e
);
108
gc�d
=
Com�em�t
(
c�d
);
110
gc�d
.
sim�ify
();
112
as��
(
c�d
.
has_s�g�_c�jun�
());
115
as��
(
EQ_I��t�
(
c�d
.
s�g�_c�jun�
()));
117
gisA�ive
=
a�ive
;
118
gc�d�i�
=
c�d
;
119
g�v�
=
lvl
;
120
g�ueC�u�
=
T
;
121
g�l�C�u�
=
F
;
124
g�d
::
�r�g
CG_�l�
::
��tS�u�u�
(
�d�t
) {
125
�d
::
�r�g
�su�
=
G�Ind�tS��s
(
�d�t
) + "// split�t "
126 +
to_�r�g
((*�
this
�+ "\n" +
G�Ind�tS��s
(
�d�t
)
127 + "// gu�d:" +
gu�d
.
��t_f�mu�_to_�r�g
() + "\n"
128 +
G�Ind�tS��s
(
�d�t
) + "// if "
129 +
c�d�i�
.
��t_f�mu�_to_�r�g
() + "�hen\n"
130 +
�ueC�u�
->
��tS�u�u�
(
�d�t
+ 1�+
G�Ind�tS��s
(indent)
131 + "//�l�\n" +
�l�C�u�
->
��tS�u�u�
(
�d�t
+ 1);
132
g�su�
;
135
CG_ou�utR�r
*
gCG_�l�
::
��tR�r
(
CG_ou�utBu�d�
*
ocg
,
�d�t
,
136 cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
138 i�(!
Mu�_Be_Sub�t
(
c�y
(
��ri�i�s
), c�y(
known
)))
139
��tf
("------------wrong------------------\n");
141
CG_ou�utR�r
*
g�mtLi�
;
143
CG_ou�utR�r
*
g��R�r
=
NULL
;
144 i�(!
ggu�d
.
is_nu�
(�&& !gu�d.
is_obvious_�ut�ogy
()) {
145
g��R�r
=
ou�utGu�d
(
ocg
,
gu�d
,
assig�d_�_the_�y
);
146
g�d�t
++;
148 i�(
g��R�r
!�
NULL
)
149
�mtLi�
=
ocg
->
C��eIf
(
�d�t
- 1,
��R�r
,
150
�ueC�u�
->
��tR�r
(
ocg
,
�d�t
,
assig�d_�_the_�y
),
151
�l�C�u�
->
��tR�r
(
ocg
,
�d�t
,
assig�d_�_the_�y
));
153
g�mtLi�
=
ocg
->
StmtLi�A��d
(
154
�ueC�u�
->
��tR�r
(
ocg
,
�d�t
,
assig�d_�_the_�y
),
155
�l�C�u�
->
��tR�r
(
ocg
,
�d�t
,
assig�d_�_the_�y
));
157
g�mtLi�
;
160
CG_�su�
*
gCG_�l�
::
li�Ov�h�d
(
d�th
) {
161
as��
(
d�th
>= 1);
162
g�ueC�u�
=
�ueC�u�
->
li�Ov�h�d
(
d�th
);
163
g�l�C�u�
=
�l�C�u�
->
li�Ov�h�d
(
d�th
);
164
gthis
;
167
CG_�su�
*
gCG_�l�
::
f��_f��e_bounds
() {
168
�ueC�u�
=�rueC�u�->
f��_f��e_bounds
();
169
g�l�C�u�
=
�l�C�u�
->
f��_f��e_bounds
();
170
gthis
;
173
R��i�
gCG_�l�
::
f�dOv�h�d
(
li�To
) {
174
R��i�
r
=
�ueC�u�
->
f�dOv�h�d
(
li�To
);
175 i�(
gr
.
is_obvious_�ut�ogy
())
176
gr
=
�l�C�u�
->
f�dOv�h�d
(
li�To
);
177
gr
;
180
CG_�su�
*
gCG_�l�
::
�compu�
(cڡ
R��i�
&
k
, cڡ R��i� &
r
) {
181
gknown
=
c�y
(
k
);
182
g��ri�i�s
=
c�y
(
r
);
184
gnumA�ive
= 0;
185
gs
= 1; s <�
isA�ive
.
size
(); s++)
186 i�(
gisA�ive
[
s
]) {
187
R��i�
gI
=
�oje�ed_nIS
[
�v�
][
s
];
188 i�(!
I����i�
(
c�y
(
��ri�i�s
),
I
).
is_u��_bound_�tisf�b�
())
189
gisA�ive
[
s
] = 0;
191
gnumA�ive
++;
193 i�(
gnumA�ive
== 0) {
194
d��e
this
;
195
�w
gCG_nu�
;
196 } i�(
gnumA�ive
== 1 && 0) {
199
CG_�su�
*
cg
=
g�_�cursive
(
�v�
,
isA�ive
);
200
gcg
=
cg
->
�compu�
(
k
,
r
);
201
d��e
gthis
;
202
gcg
;
205
R��i�
g�w_��ri�i�s
=
I����i�
(
c�y
(
��ri�i�s
),
206
c�y
(
c�d�i�
));
207
g�w_��ri�i�s
.
sim�ify
();
208
g�ueC�u�
=
�ueC�u�
->
�compu�
(
known
,
�w_��ri�i�s
);
209
g�w_��ri�i�s
=
Dif�n�
(
c�y
(
��ri�i�s
), c�y(
c�d�i�
));
210
g�w_��ri�i�s
.
sim�ify
();
211
g�l�C�u�
=
�l�C�u�
->
�compu�
(
known
,
�w_��ri�i�s
);
213 i�(
g�ueC�u�
->
isNu�
()) {
214
CG_�su�
*
gcg
=
�l�C�u�
;
215
g�l�C�u�
=
NULL
;
216
d��e
gthis
;
217
gcg
;
219 i�(
g�l�C�u�
->
isNu�
()) {
220
CG_�su�
*
gcg
=
�ueC�u�
;
221
g�ueC�u�
=
NULL
;
222
d��e
gthis
;
223
gcg
;
225
gthis
;
228
R��i�
gCG_�l�
::
hoi�Gu�d
() {
229
R��i�
gu�d1
=
�ueC�u�
->
hoi�Gu�d
();
230
R��i�
ggu�d2
=
�l�C�u�
->
hoi�Gu�d
();
231 i�(
ggu�d
.
is_nu�
())
232
ggu�d
=
R��i�
::
True
(
c�d�i�
.
n_�t
());
234 i�(!
ggu�d1
.
is_obvious_�ut�ogy
(�&& !
ggu�d2
.is_obvious_tautology()
235 &&
Mu�_Be_Sub�t
(
c�y
(
gu�d1
), c�y(
gu�d2
))
236 &&
Mu�_Be_Sub�t
(
c�y
(
gu�d2
), c�y(
gu�d1
))) {
237
g�ueC�u�
->
�moveGu�d
();
238
g�l�C�u�
->
�moveGu�d
();
239
ggu�d
=
I����i�
(
gu�d
,
gu�d1
);
242
ggu�d
;
249
R��i�
gCG_�af
::
f�dOv�h�d
(
li�To
) {
250
s
= 1;
gs
<�
isA�ive
.
size
(); s++)
251 i�(
gisA�ive
[
s
]) {
252
gbb
= !
gu�d
[
s
].
is_obvious_�ut�ogy
();
253 i�(
gbb
) {
254 i�(
gcode_g�_debug
)
255
�r�tf
(
DebugF�e
,
257
s
,
gu�d
[s].
��t_f�mu�_to_�r�g
().
c_�r
());
258
R��i�
gr
=
pickOv�h�d
(
gu�d
[
s
],
li�To
);
259 i�(!
gr
.
is_obvious_�ut�ogy
())
260
gr
;
263
gR��i�
::
True
(
known
.
n_�t
());
266
g�d
::
�r�g
CG_�af
::
��tS�u�u�
() {
267
�d
::
�r�g
�su�
;
268
gs
= 1; s <�
isA�ive
.
size
(); s++)
269 i�(
gisA�ive
[
s
]) {
270
g�su�
+�
�d
::
�r�g
("s"�+
to_�r�g
(
s
);
272
g�su�
+ "\n";
275
CG_ou�utR�r
*
gCG_�af
::
��tR�r
(
CG_ou�utBu�d�
*
ocg
,
�d�t
,
276 cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
278 i�(!
Mu�_Be_Sub�t
(
c�y
(
��ri�i�s
), c�y(
known
)))
279
��tf
("------------wrong------------------\n");
281
g�d
::
�r�g
�su�
;
282
CG_ou�utR�r
*
g�mtLi�
=
NULL
;
283
CG_ou�utR�r
*
g�mtNode
=
NULL
;
285
gTu�e
<>
gw�k�g
;
287 i�(
gcode_g�_debug
> 1) {
288
g�su�
= "known: " +
known
.
��t_f�mu�_to_�r�g
();
289
g�mtLi�
=
ocg
->
StmtLi�A��d
(
�mtLi�
,
290
ocg
->
C��eComm�t
(
�d�t
,
�su�
));
293
gs
= 1; s <�
isA�ive
.
size
(); s++)
294 i�(
gisA�ive
[
s
]) {
295 i�(
ggu�d
[
s
].
is_obvious_�ut�ogy
()) {
296
g�mtNode
=
ou�utS��m�t
(
ocg
,
��em�tInfo
[
s
]->
��e
(),
297
�d�t
,
��sf�m�i�s
[
s
],
known
,
assig�d_�_the_�y
);
298
g�mtLi�
=
ocg
->
StmtLi�A��d
(
�mtLi�
,
�mtNode
);
300 i�(
gcode_g�_debug
> 1) {
301
g�su�
= "restrictions: "
302 +
��ri�i�s
.
��t_f�mu�_to_�r�g
();
303
g�mtLi�
=
ocg
->
StmtLi�A��d
(
�mtLi�
,
304
ocg
->
C��eComm�t
(
�d�t
,
�su�
));
306
gw�k�g
.
��nd
(
s
);
311
gi
= 1; i <�
w�k�g
.
size
(); i++)
312 i�(
gw�k�g
[
i
] != 0) {
313
R��i�
g
=
I����i�
(
c�y
(
gu�d
[
w�k�g
[
i
]]), c�y(
known
));
314
g�mtNode
=
ou�utS��m�t
(
ocg
,
��em�tInfo
[
w�k�g
[
i
]]->
��e
(),
315
�d�t
+ 1,
��sf�m�i�s
[
w�k�g
[
i
]],
g
,
316
assig�d_�_the_�y
);
318
gj
=
i
+ 1; j <�
w�k�g
.
size
(); j++)
319 i�(
gw�k�g
[
j
] != 0) {
320 i�(
Mu�_Be_Sub�t
(
c�y
(
gu�d
[
w�k�g
[
i
]]),
321
c�y
(
gu�d
[
w�k�g
[
j
]]))
322 &&
Mu�_Be_Sub�t
(
c�y
(
gu�d
[
w�k�g
[
j
]]),
323
c�y
(
gu�d
[
w�k�g
[
i
]]))) {
324
�mtNode
=
ocg
->
StmtLi�A��d
(stmtNode,
325
ou�utS��m�t
(
ocg
,
326
��em�tInfo
[
w�k�g
[
j
]]->
��e
(),
327
�d�t
+ 1,
��sf�m�i�s
[
w�k�g
[
j
]],
328
g
,
assig�d_�_the_�y
));
329
gw�k�g
[
j
] = 0;
333
CG_ou�utR�r
*
gifGu�d
=
ou�utGu�d
(
ocg
,
gu�d
[
w�k�g
[
i
]],
334
assig�d_�_the_�y
);
335
g�mtNode
=
ocg
->
C��eIf
(
�d�t
,
ifGu�d
,
�mtNode
,
NULL
);
336
g�mtLi�
=
ocg
->
StmtLi�A��d
(
�mtLi�
,
�mtNode
);
339
g�mtLi�
;
342
CG_�su�
*
gCG_�af
::
�compu�
(cڡ
R��i�
&
k
, cڡ R��i� &
r
) {
343
gknown
=
c�y
(
k
);
344
g��ri�i�s
=
c�y
(
r
);
346
ggu�d
.
��lo��
(
isA�ive
.
size
());
348
bo�
g�yA�ive
=
�l�
;
349
gs
= 1; s <�
isA�ive
.
size
(); s++)
350 i�(
gisA�ive
[
s
]) {
351
R��i�
gI
=
I����i�
(
c�y
(
��ri�i�s
), c�y(
�w_IS
[
s
]));
352 i�(!
gI
.
is_u��_bound_�tisf�b�
())
353
gisA�ive
[
s
] = 0;
355
g�yA�ive
=
�ue
;
356
as��
(!
I
.
is_nu�
());
357
ggu�d
[
s
] =
Gi�
(
c�y
(
I
), c�y(
known
), 1);
363 i�(!
g�yA�ive
) {
364
d��e
gthis
;
365
�w
CG_nu�
();
367
gthis
;
370
R��i�
gCG_�af
::
hoi�Gu�d
() {
371
s
;
372
gs
= 1; s <�
isA�ive
.
size
(�&& !isA�ive[
s
]; s++)
375 i�(
gs
>
gisA�ive
.
size
())
376
gR��i�
::
True
(1);
378
R��i�
ggu�d1
=
gu�d
[
s
];
380
gi
=
s
+ 1; i <�
isA�ive
.
size
(); i++)
381 i�(
gisA�ive
[
i
]
382 && !(
Mu�_Be_Sub�t
(
c�y
(
gu�d1
), c�y(
gu�d
[
i
]))
383 &&
Mu�_Be_Sub�t
(
c�y
(
gu�d
[
i
]), c�y(
gu�d1
))))
384
gR��i�
::
True
(
gu�d1
.
n_�t
());
386
ggu�d1
;
389
gCG_�af
::
�moveGu�d
() {
390
i
= 1;
gi
<�
isA�ive
.
size
(); i++)
391 i�(
gisA�ive
[
i
])
392
ggu�d
[
i
] =
R��i�
::
True
(
gu�d
[i].
n_�t
());
399
CG_�su�
*
gCG_lo�
::
f��_f��e_bounds
() {
400 i�(!
�edLo�
401 || (
hasBound
(
bounds
,
�v�
, 0) && hasBound(bounds,�evel, 1))) {
402
gbody
=
body
->
f��_f��e_bounds
();
403
gthis
;
406 i�(
gcode_g�_debug
)
407
�r�tf
(
DebugF�e
, "Don't have finite bounds in:\n%s\n\n",
408
this
->
��t
(2).
c_�r
());
409
bo�
gbb
= !
hasBound
(
bounds
,
�v�
, 0);
410
gd�e�i�
=
bb
? 0 : 1;
411
gs
;
412
R��i�
gS
;
413
gs
= 1; s <�
isA�ive
.
size
(); s++)
414 i�(
gisA�ive
[
s
])
415 i�(
f�d_�y_cڡ��t
(
s
,
�v�
,
��ri�i�s
,
d�e�i�
,
S
,
416
�l�
))
420 i�(
gS
.
is_nu�
())
421
gs
= 1; s <�
isA�ive
.
size
(); s++)
422 i�(
gisA�ive
[
s
])
423 i�(
f�d_�y_cڡ��t
(
s
,
�v�
,
��ri�i�s
,
d�e�i�
,
S
,
424
�ue
))
427 i�(
gS
.
is_nu�
()) {
429
�r�tf
(
DebugF�e
,"hasBound(%s,%d,%s�id f��, bu�ov�h�d wa��ut�ogy\n",
I
.
��t_f�mu�_to_�r�g
().
c_�r
(),
�v�
,
d�e�i�
?"upper bound":"lower bound");
431
throw
codeg�_�r�
("unable�o force finite bounds");
436
��tf
("S���g o�%s\n",
S
.
��t_f�mu�_to_�r�g
().
c_�r
());
438
CG_�su�
*
g�l
=
�w
CG_�l�
(
isA�ive
,
�v�
,
S
,
this
,�his->
��e
());
439
g�l
=
�l
->
�compu�
(
c�y
(
known
), c�y(
��ri�i�s
));
441 i�(
gcode_g�_debug
)
442
�r�tf
(
DebugF�e
,"S�� o�t���� f���bounds:\n%s\n\n",
�l
->
��t
(2).
c_�r
());
444
g�l
->
f��_f��e_bounds
();
447
CG_�su�
*
gCG_lo�
::
li�Ov�h�d
(
d�th
) {
448
as��
(
d�th
>= 1);
449 i�(
gthis
->
d�th
(�<
gd�th
)
450
gthis
;
451 i�(!(
g�edLo�
&&
gthis
->
d�th
() == depth)) {
452
body
= body->
li�Ov�h�d
(
d�th
);
453
gthis
;
456
R��i�
gc
=
body
->
f�dOv�h�d
(
�v�
);
457 i�(
gc
.
is_obvious_�ut�ogy
())
458
gthis
;
459
as��
(
c
.
is_u��_bound_�tisf�b�
());
460
g�d
::
�r�g
bef�e
;
461 i�(
gcode_g�_debug
) {
462
gbef�e
=
��t
(1);
464
CG_�su�
*
gs
=
�w
CG_�l�
(
isA�ive
,
�v�
,
c
,
this
,�his->
��e
());
466
gs
=
s
->
�compu�
(
c�y
(
known
), c�y(
��ri�i�s
));
467 i�(
gcode_g�_debug
) {
468
g�d
::
�r�g
a�
=
s
->
��t
(1);
469
�r�tf
(
DebugF�e
, "Lifted out overhead of %s\n",
470
c
.
��t_f�mu�_to_�r�g
().
c_�r
());
471
�r�tf
(
DebugF�e
, "�om:\n%s\n",
bef�e
.
c_�r
());
472
�r�tf
(
DebugF�e
, "t�g�:\n%s--\n",
a�
.
c_�r
());
474
gs
=
s
->
li�Ov�h�d
(
d�th
);
475
gs
;
478
g�d
::
�r�g
CG_lo�
::
��tS�u�u�
(
�d�t
) {
479
�d
::
�r�g
s
= "";
480
g�d�
=
�d�t
;
481
gs
+�
G�Ind�tS��s
(
�d�t
�+ "//�o�" + (
�edLo�
? "" : "(single)")
482 + " f܁" +
to_�r�g
(
�v�
�+ "��" +�o_�r�g((*�
this
)
484
gs
+�
G�Ind�tS��s
(
�d�t
) + "// known: "
485 +
known
.
��t_f�mu�_to_�r�g
() + "\n";
486
gs
+�
G�Ind�tS��s
(
�d�t
) + "// guard: "
487 +
gu�d
.
��t_f�mu�_to_�r�g
() + "\n";
488
gs
+�
G�Ind�tS��s
(
�d�t
) + "// bounds: "
489 +
bounds
.
��t_f�mu�_to_�r�g
() + "\n";
492
gi
= 1; i <�
isA�ive
.
size
(); i++)
493 i�(
gisA�ive
[
i
]) {
494
gs
+�
G�Ind�tS��s
(
�d�t
�+ "// " + "s" +
to_�r�g
(
i
) + ":"
495 +
�oje�ed_nIS
[
�v�
][
i
].
��t_f�mu�_to_�r�g
() + "\n";
498
gs
+
gbody
->
��tS�u�u�
(
�d�
+ 1�+
G�Ind�tS��s
(indnt + 1)
502
CG_ou�utR�r
*
gCG_lo�
::
��tR�r
(
CG_ou�utBu�d�
*
ocg
,
�d�t
,
503 cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
505 i�(!
Mu�_Be_Sub�t
(
c�y
(
��ri�i�s
), c�y(
known
)))
506
��tf
("------------wrong------------------\n");
529
CG_ou�utR�r
*
ggu�dR�r
=
ou�utGu�d
(
ocg
,
gu�d
,
assig�d_�_the_�y
);
530
R��i�
g�f��d
=
I����i�
(
c�y
(
known
), c�y(
gu�d
));
531
g�f��d
.
sim�ify
();
536
g�d
::
ve��
<
CG_ou�utR�r
*>
a�f
=
assig�d_�_the_�y
;
538
g�d
::
��
<
CG_ou�utR�r
*,
gbo�
>
geqR�r
=
ou�utAssignm�t
(
ocg
,
bounds
,
539
bounds
.
�t_v�
(
�v�
),
�f��d
,
gu�dR�r
,
a�f
);
540 i�(!
geqR�r
.
g�c�d
)
541
ga�f
[
�v�
- 1] =
eqR�r
.
f��
;
543
g�d�
=
�d�t
;
544 i�(
ggu�dR�r
!�
NULL
)
545
�d�
++;
548 i�(
gcheckLo�Lev�
) {
549 i�(
g�v�
=�
checkLo�Lev�
) {
550
bo�
�mtP���
=
�l�
;
551
gs
= 1; s <�
isA�ive
.
size
(); s++) {
552 i�(
gisA�ive
[
s
] &&
gs
- 1 =�
�mtF�Lo�Check
)
553
�mtP���
=
�ue
;
555 i�(
g�mtP���
) {
556
gf�lInBounds
=
�ue
;
563
g�d
::
��
<
CG_ou�utR�r
*,
gbo�
>
g��R�r
=
ou�utBounds
(
ocg
,
bounds
,
564
bounds
.
�t_v�
(
�v�
),
�d�
,
�f��d
,
a�f
);
567
gf�lInBounds
=
�l�
;
570
R��i�
g��_ov�
=
Gi�
(
c�y
(
bounds
), c�y(
�f��d
), 1);
572 i�(!
g��_ov�
.
is_obvious_�ut�ogy
())
573
��tf
("=============something wrong===============\n");
575
CG_ou�utR�r
*
glo�R�r
=
NULL
;
576 i�(
geqR�r
.
g�c�d
) {
577
CG_ou�utR�r
*
gbodyR�r
=
body
->
��tR�r
(
ocg
,
�d�
,
a�f
);
578
CG_ou�utR�r
*
gassignR�r
=
ocg
->
C��eAssignm�t
(
�d�
,
579
ocg
->
C��eId�t
(
bounds
.
�t_v�
(
�v�
)->
�me
()),
eqR�r
.
f��
);
580
glo�R�r
=
ocg
->
StmtLi�A��d
(
assignR�r
,
bodyR�r
);
581 } i�(
g��R�r
.
g�c�d
) {
582
CG_ou�utR�r
*
gbodyR�r
=
body
->
��tR�r
(
ocg
,
�d�
+ 1,
a�f
);
583
glo�R�r
=
ocg
->
C��eLo�
(
�d�
,
��R�r
.
f��
,
bodyR�r
);
585 #ifde�
BUILDCUDA
591
bo�
gblockLo�
=
�l�
;
592
bo�
gth�adLo�
=
�l�
;
593
bo�
gsync
=
�l�
;
594
gf��A�iveStmt
= -1;
595
gs
= 1; s <�
isA�ive
.
size
(); s++) {
596 i�(
gisA�ive
[
s
]) {
597 i�(
gf��A�iveStmt
< 0)
598
gf��A�iveStmt
=
s
;
602
gidx
=
smtN�S��Lev�s
[
s
].
�dex
(
�v�
);
603 i�(
gidx
== 1) {
604
blockLo�
=
�ue
;
607 i�(
gidx
== 2) {
608
th�adLo�
=
�ue
;
612 i�(
gblockLo�
&&
gth�adLo�
) {
613
�r�tf
(
�d�r
,
615
�v�
);
616
gth�adLo�
=
�l�
;
618
g�d
::
�r�g
�e�edIdx
;
619 i�(
glo�IdxNames
.
size
()
620 && (
g�v�
/ 2�- 1 <
glo�IdxNames
[
f��A�iveStmt
].
size
())
621
g�e�edIdx
=
lo�IdxNames
[
f��A�iveStmt
][(
�v�
/ 2)];
622
gs
= 1; s <�
isA�ive
.
size
(); s++) {
623 i�(
gisA�ive
[
s
]) {
624
gi
= 0; i <
gsyncs
.
size
(); i++) {
625 i�(
gsyncs
[
i
].
gf��
=�
s
- 1
626 &&
�rcmp
(
syncs
[
i
].
�c�d
.
c_�r
(),
627
�e�edIdx
.
c_�r
()) == 0) {
628
sync
=
�ue
;
634 i�(
gth�adLo�
||
gblockLo�
||
g�e�edIdx
.
�ngth
() != 0) {
635
buf
[1024];
636
g�d
::
�r�g
lo�
;
637 i�(
gblockLo�
)
638
glo�
= "blockLoop ";
639 i�(
gth�adLo�
)
640
glo�
= "threadLoop ";
641 i�(
g�e�edIdx
.
�ngth
(�!�0 &&
sync
) {
642
�r�tf
(
buf
, "~cuda~ %���edIdx: %�sync",
lo�
.
c_�r
(),
643
�e�edIdx
.
c_�r
());
644 } i�(
g�e�edIdx
.
�ngth
() != 0) {
645
�r�tf
(
buf
, "~cuda~ %���edIdx: %s",
lo�
.
c_�r
(),
646
�e�edIdx
.
c_�r
());
648
�r�tf
(
buf
, "~cuda~ %s",
lo�
.
c_�r
());
651 #ifde�
BUILD_ROSE
652
glo�R�r
=
ocg
->
C��eA�ribu�
(
lo�R�r
,
buf
);
658
glo�R�r
=
ocg
->
StmtLi�A��d
(ocg->
C��eComm�t
(
�d�
,
buf
),
659
lo�R�r
);
668 } i�(
g��R�r
.
gf��
!�
NULL
) {
669
CG_ou�utR�r
*
bodyR�r
=
body
->
��tR�r
(
ocg
,
�d�
,
a�f
);
670
glo�R�r
=
ocg
->
StmtLi�A��d
(
��R�r
.
f��
,
bodyR�r
);
672
glo�R�r
=
body
->
��tR�r
(
ocg
,
�d�
,
a�f
);
674 i�(
ggu�dR�r
!�
NULL
)
675
lo�R�r
=
ocg
->
C��eIf
(
�d�t
,
gu�dR�r
,�o�R�r,
NULL
);
677
d��e
ga�f
[
�v�
- 1];
678
glo�R�r
;
757
R��i�
gCG_lo�
::
f�dOv�h�d
(
li�To
) {
760 i�(
�edLo�
) {
761
bb
= !
gu�d
.
is_obvious_�ut�ogy
();
762 i�(
gbb
) {
764
�r�tf
(
DebugF�e
,"Trying�o�emove overhead on guard of�oop %x�t�evel %d: %s\n",
765 (*�
this
,
�v�
,
gu�d
.
��t_f�mu�_to_�r�g
().
c_�r
());
767
R��i�
gr
=
pickOv�h�d
(
gu�d
,
li�To
);
768 i�(!
gr
.
is_obvious_�ut�ogy
())
769
gr
;
771
R��i�
gb
=
bounds
;
772
R��i�
gr
=
m�MaxOv�h�d
(
b
,
�v�
);
773 i�(!
gr
.
is_obvious_�ut�ogy
()) {
775
�r�tf
(
DebugF�e
,"Trying�o�emove minMax overhead on guard of�oop %x�t�evel %d: %s\n",
776 (*�
this
,
�v�
,
gu�d
.
��t_f�mu�_to_�r�g
().
c_�r
());
778
gr
;
781
R��i�
gr
=
body
->
f�dOv�h�d
(
li�To
);
782 i�(
gr
.
is_obvious_�ut�ogy
())
783
gr
;
797
gr
=
I����i�
(
r
,
c�y
(
bounds
));
799
gr
=
�oje�_�to_�v�s
(
r
,
�v�
, 0);
801
gr
=
Gi�
(
r
,
c�y
(
bounds
), 1);
804
gr
;
807
CG_�su�
*
gCG_lo�
::
�compu�
(cڡ
R��i�
&
k
, cڡ R��i� &
r
) {
808
gknown
=
c�y
(
k
);
809
g��ri�i�s
=
c�y
(
r
);
813
bo�
g�yA�ive
=
�l�
;
814
gs
= 1; s <�
isA�ive
.
size
(); s++)
815 i�(
gisA�ive
[
s
]) {
816 i�(!
I����i�
(
c�y
(
��ri�i�s
),
817
c�y
(
�oje�ed_nIS
[
�v�
][
s
])).
is_u��_bound_�tisf�b�
()) {
818
gisA�ive
[
s
] = 0;
820
g�yA�ive
=
�ue
;
823 i�(!
g�yA�ive
) {
824
d��e
gthis
;
825
�w
CG_nu�
();
832
R��i�
ghu�
=
Hu�
(
�oje�ed_nIS
[
�v�
],
isA�ive
, 1,
�ue
,
833
c�y
(
��ri�i�s
));
834
ghu�
=
I����i�
(
hu�
,
c�y
(
��ri�i�s
));
835
ghu�
.
sim�ify
(2, 4);
838
g�edLo�
=
�ue
;
839
EQ_I��t�
ge
=
hu�
.
s�g�_c�jun�
()->
EQs
();�;�++) {
840 i�(!(*
ge
).
has_w�d�rds
(�&& (*e).
g�_c�f
(
hu�
.
�t_v�
(
�v�
)) != 0) {
841
�edLo�
=
�l�
;
842
gbounds
=
R��i�
::
True
(
hu�
.
n_�t
());
843
gbounds
.
�d_w�h_EQ
(*
e
);
844
gbounds
.
sim�ify
();
845
gbounds
.
c�y_�mes
(
hu�
);
846
gbounds
.
�tup_�mes
();
852 i�(
g�edLo�
) {
853
ghu�
=
Gi�
(
hu�
,
c�y
(
known
), 1);
854
R��i�
gb
=
hu�
;
856
gbounds
=
R��i�
(
hu�
.
n_�t
());
857
F_Exi�s
*
g�
=
bounds
.
add_�d
()->
add_exi�s
();
858
F_And
*
gf_ro�
=
�
->
add_�d
();
861
bo�
ghas_u�es�ved_bound
=
�l�
;
863
C�jun�
*
gc
=
b
.
s�g�_c�jun�
();
864
V��b�_ID
gv
=
b
.
�t_v�
(
�v�
);
865
g�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>
gexi�s_m�p�g
;
866
g�d
::
�ack
<
�d
::
��
<
GEQ_H�d�
,
gV��b�_ID
> >
g�o�_geq_�ack
;
867
g�d
::
�t
<
V��b�_ID
>
�o�_v�_�t
;
870
GEQ_I��t�
gi
(
c
);
ggi
; gi++)
871 i�((*
ggi
).
g�_c�f
(
v
) != 0) {
872
bo�
is_��_of_bound
=
�ue
;
873
GEQ_H�d�
gh2
;
874
Cڡr_V�s_I�r
cvi
(*
gi
,
�ue
);
gcvi
; cvi++)
875 i�(!
f�dFlo�I�qu��y
(
b
,
cvi
.
cu�_v�
(),
h2
,
v
)) {
876
ghas_u�es�ved_bound
=
�ue
;
877
gis_��_of_bound
=
�l�
;
880 i�(!
gis_��_of_bound
)
883
GEQ_H�d�
gh
=
f_ro�
->
add_GEQ
();
884
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++) {
885
V��b�_ID
gv2
=
cvi
.
cu�_v�
();
886
gv2
->
k�d
()) {
887
gI�ut_V�
: {
888
pos
=
v2
->
g�_pos�i�
();
889
gh
.
upd�e_c�f
(
bounds
.
�t_v�
(
pos
),
cvi
.
cu�_c�f
());
892
gExi�s_V�
:
893
W�d�rd_V�
: {
894
�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>::
����
p
=
895
exi�s_m�p�g
.
f�d
(
v2
);
896
V��b�_ID
ge
;
897 i�(
gp
=�
exi�s_m�p�g
.
�d
()) {
898
e
=
�
->
de��e
();
899
gexi�s_m�p�g
[
v2
] =
e
;
901
ge
= (*
p
).
�c�d
;
902
gh
.
upd�e_c�f
(
e
,
cvi
.
cu�_c�f
());
904 i�(
g�o�_v�_�t
.
f�d
(
v2
�=�
�o�_v�_�t
.
�d
()) {
905
f�dFlo�I�qu��y
(
b
,
v2
,
h2
,
v
);
906
g�o�_geq_�ack
.
push
(
�d
::
make_��
(
h2
,
v2
));
907
g�o�_v�_�t
.
���
(
v2
);
911
gGlob�_V�
: {
912
Glob�_V�_ID
g
=
v2
->
g�_glob�_v�
();
913
V��b�_ID
gv3
;
914 i�(
gg
->
��y
() == 0)
915
v3
=
bounds
.
g�_lo�l
(
g
);
917
gv3
=
bounds
.
g�_lo�l
(
g
,
v2
->
fun�i�_of
());
918
gh
.
upd�e_c�f
(
v3
,
cvi
.
cu�_c�f
());
922
as��
(0);
925
gh
.
upd�e_cڡ
((*
gi
).
g�_cڡ
());
929 !
g�o�_geq_�ack
.
em�y
()) {
930
g�d
::
��
<
GEQ_H�d�
,
gV��b�_ID
>
gp
=
�o�_geq_�ack
.
t�
();
931
g�o�_geq_�ack
.
p�
();
933
GEQ_H�d�
gh1
=
f_ro�
->
add_GEQ
();
934
GEQ_H�d�
gh2
=
f_ro�
->
add_GEQ
();
935
Cڡr_V�s_I�r
cvi
(
p
.
f��
);
gcvi
; cvi++) {
936
V��b�_ID
gv2
= (*
cvi
).
v�
;
937
gv2
->
k�d
()) {
938
gI�ut_V�
: {
939
pos
=
v2
->
g�_pos�i�
();
940
gh1
.
upd�e_c�f
(
bounds
.
�put_v�
(
pos
),
cvi
.
cu�_c�f
());
941
gh2
.
upd�e_c�f
(
bounds
.
�put_v�
(
pos
), -
cvi
.
cu�_c�f
());
944
gExi�s_V�
:
945
W�d�rd_V�
: {
946
�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>::
����
p2
=
947
exi�s_m�p�g
.
f�d
(
v2
);
948
V��b�_ID
ge
;
949 i�(
gp2
=�
exi�s_m�p�g
.
�d
()) {
950
e
=
�
->
de��e
();
951
gexi�s_m�p�g
[
v2
] =
e
;
953
ge
= (*
p2
).
�c�d
;
954
gh1
.
upd�e_c�f
(
e
,
cvi
.
cu�_c�f
());
955
gh2
.
upd�e_c�f
(
e
, -
cvi
.
cu�_c�f
());
957 i�(
g�o�_v�_�t
.
f�d
(
v2
�=�
�o�_v�_�t
.
�d
()) {
958
GEQ_H�d�
h3
;
959
f�dFlo�I�qu��y
(
b
,
v2
,
h3
,
v
);
960
g�o�_geq_�ack
.
push
(
�d
::
make_��
(
h3
,
v2
));
961
g�o�_v�_�t
.
���
(
v2
);
965
gGlob�_V�
: {
966
Glob�_V�_ID
g
=
v2
->
g�_glob�_v�
();
967
V��b�_ID
gv3
;
968 i�(
gg
->
��y
() == 0)
969
v3
=
bounds
.
g�_lo�l
(
g
);
971
gv3
=
bounds
.
g�_lo�l
(
g
,
v2
->
fun�i�_of
());
972
gh1
.
upd�e_c�f
(
v3
,
cvi
.
cu�_c�f
());
973
gh2
.
upd�e_c�f
(
v3
, -
cvi
.
cu�_c�f
());
977
as��
(0);
980
gh1
.
upd�e_cڡ
(
p
.
f��
.
g�_cڡ
());
981
gh2
.
upd�e_cڡ
(-
p
.
f��
.
g�_cڡ
());
982
gh2
.
upd�e_cڡ
(-
p
.
f��
.
g�_c�f
�.
�c�d
) - 1);
985 i�(
ghas_u�es�ved_bound
) {
986
gb
=
A�roxim�e
(
b
);
987
gb
.
sim�ify
();
988
gc
=
b
.
s�g�_c�jun�
();
990
GEQ_I��t�
gi
(
c
);
ggi
; gi++)
991 i�((*
ggi
).
g�_c�f
(
v
) != 0)
992
f_ro�
->
add_GEQ
(*
gi
);
996
R��i�
gthe_gcs
=
g��e�_comm�_��
(
�oje�ed_nIS
[
�v�
],
isA�ive
,
997
�v�
,
known
);
998
gbounds
=
I����i�
(
bounds
,
c�y
(
the_gcs
));
999
gbounds
.
sim�ify
();
1000
gbounds
.
c�y_�mes
(
hu�
);
1001
gbounds
.
�tup_�mes
();
1005 i�(
g�edLo�
) {
1006
ggu�d
=
Gi�
(
c�y
(
hu�
), c�y(
bounds
));
1007
ggu�d
=
Proje�
(
gu�d
, gu�d.
�t_v�
(
�v�
));
1008
ggu�d
=
Gi�
(
gu�d
,
c�y
(
known
));
1009
ggu�d
.
sim�ify
();
1014
ggu�d
=
R��i�
::
True
(
hu�
.
n_�t
());
1016
ggu�d
.
c�y_�mes
(
hu�
);
1017
ggu�d
.
�tup_�mes
();
1020
R��i�
g�f��d
=
I����i�
(
c�y
(
bounds
), c�y(
gu�d
));
1021
g�f��d
.
sim�ify
();
1022
R��i�
g�w_known
=
I����i�
(
c�y
(
known
), c�y(
�f��d
));
1023
g�w_known
.
sim�ify
();
1024
R��i�
g�w_��ri�i�s
=
I����i�
(
c�y
(
��ri�i�s
),
1025
c�y
(
�f��d
));
1026
g�w_��ri�i�s
.
sim�ify
();
1027
gbody
=
body
->
�compu�
(
�w_known
,
�w_��ri�i�s
);
1028
gthis
;
1031
R��i�
gCG_lo�
::
hoi�Gu�d
() {
1032
R��i�
r
=
body
->
hoi�Gu�d
();
1033 i�(!
gr
.
is_obvious_�ut�ogy
()) {
1035
bo�
g���
=
�l�
;
1036
DNF_I��t�
di
(
r
.
qu�y_DNF
());
gdi
; di++) {
1037
GEQ_I��t�
gi
((*
di
)->
GEQs
());
ggi
; gi++)
1038 i�((*
ggi
).
g�_c�f
(
r
.
�t_v�
(
�v�
)) != 0) {
1039
���
=
�ue
;
1042 i�(
g���
)
1045
EQ_I��t�
ei
((*
di
)->
EQs
());
gei
;�i++)
1046 i�((*
gei
).
g�_c�f
(
r
.
�t_v�
(
�v�
)) != 0) {
1047
���
=
�ue
;
1050 i�(
g���
)
1054 i�(!
g���
) {
1055
gbody
->
�moveGu�d
();
1056
ggu�d
=
I����i�
(
gu�d
,
r
);
1062 i�(
g�edLo�
)
1063
gR��i�
::
True
(
bounds
.
n_�t
());
1065
ggu�d
;
@CG_roseBuilder.cc
15
~<�ack
>
16
~<code_g�/CG_ro�Bu�d�.h
>
17
~<�r�g
>
19
g�_�r�
:
public
�d
::
ru�ime_�r�
{
20
�_�r�
(cڡ
�d
::
�r�g
&
msg
) :
21
�d
::
ru�ime_�r�
(
msg
) {
25
us�g
�me�a�
gSageBu�d�
;
26
us�g
�me�a�
gSageI����
;
27
us�g
�me�a�
gOmpSu��t
;
29
�me�a�
gomega
{
34 *
gk_ocg_comm�t
;
52
gCG_ro�Bu�d�
::
CG_ro�Bu�d�
(
SgGlob�
*
glob�
, SgGlob�*
f��Sc�e
,
53
SgSymb�Tab�
*
sym�b
, SgSymb�Tab�*
sym�b2
,
SgNode
*
ro�
) :
54
glob�_
(
glob�
),
glob�_sc�e
(
f��Sc�e
),
sym�b_
(
sym�b
),
sym�b2_
(
55
sym�b2
),
ro�_
(
ro�
) {
58
gCG_ro�Bu�d�
::~
CG_ro�Bu�d�
() {
64
CG_ou�utR�r
*
CG_ro�Bu�d�
::
C��eP��H�d�
(, CG_ou�utR��*
�mt
,
65
Tu�e
<
CG_ou�utR�r
*> &
funcLi�
, Tu�e<
�d
::
�r�g
> &
lo�_v�s
) const {
67
SgS��m�tP�Li�
*
li�
=
��ic_��
<
CG_ro�R�r
*>(
�mt
)->
li�_
;
68
SgNode
*
g�l
;
69
SgS��m�t
*
g��em�t
;
70 i�(
gli�
!�
NULL
) {
73
d��e
�mt
;
74
gi
= 1; i <�
funcLi�
.
size
(); i++) {
76 i�((
gfuncLi�
[
i
] =�
NULL
�&& (�<
funcLi�
.
size
()))
78 i�((
gfuncLi�
[
i
] =�
NULL
�&& (�=�
funcLi�
.
size
()))
81
CG_ro�R�r
*
g��
=
��ic_��
<CG_ro�R�r*>(
funcLi�
[
i
]);
82
SgEx�essi�
*
g�
=
��
->
�_
;
84
gSgS��m�tP�Li�
::
����
�
= (*
li�
).
beg�
();
85
g�
!�(*
li�
).
�d
(); it++) {
86
g��em�t
= (*
�
);
87
g�l
=
isSgNode
(
��em�t
);
91
gj
;
92
gn�_�_sym�b_
;
94
gn�_�_sym�b_
= 0;
96
SgV��b�Symb�
*
gvs
=
sym�b_
->
f�d_v��b�
(
97
SgName
(
lo�_v�s
[
i
].
c_�r
()));
99 i�(
gvs
=�
NULL
) {
101
n�_�_sym�b_
= 1;
103
gvs
=
sym�b2_
->
f�d_v��b�
(
SgName
(
lo�_v�s
[
i
].
c_�r
()));
105 i�(
gvs
!�
NULL
) {
109
�d
::
ve��
<
SgV�RefExp
*>
��y
=
sub��u�
(
�l
,
110 (cڡ
SgV��b�Symb�
*�
vs
,
�
,
ro�_
);
111
g�d
::
ve��
<
SgV�RefExp
*>::
����
�
=
112
��y
.
beg�
();
g�
!�y.
�d
(); it++) {
115 i�(
isSgV�RefExp
(
�
)) {
116 i�(
�rcmp
(
117
isSgV�RefExp
(
�
)->
g�_symb�
()->
g�_�me
().
g�S��g
().
c_�r
(),
118
vs
->
g�_�me
().
g�S��g
().
c_�r
())) {
120 (*
g�
)->
�t_symb�
(
121
isSgV�RefExp
(
�
)->
g�_symb�
());
127 } i�(
isSgEx�essi�
(
�
)) {
129 i�(
isSgB��yOp
((*
�
)->
g�_���
()))
130
isSgB��yOp
((*
�
)->
g�_���
())->
��a�_ex�essi�
(
131 *
�
,
�
);
143
d��e
g��
;
144
gfuncLi�
[
i
] =
NULL
;
146 i�(
gfuncLi�
[
i
] !�
NULL
)
147
throw
�_�r�
("not freed�roperly");
151
�w
CG_ro�R�r
(
li�
);
154
g�l
=
��ic_��
<
CG_ro�R�r
*>(
�mt
)->
�l_
;
157 i�(
g�l
=�
NULL
)
158
throw
�_�r�
("both�ist�nd�nl�re�ull!!");
160
d��e
g�mt
;
161
gj
;
162
gn�_�_sym�b_
;
163
gi
= 1; i <�
funcLi�
.
size
(); i++) {
164
gn�_�_sym�b_
= 0;
166 i�((
gfuncLi�
[
i
] =�
NULL
�&& (�<
funcLi�
.
size
()))
168 i�((
gfuncLi�
[
i
] =�
NULL
�&& (�=�
funcLi�
.
size
()))
171
CG_ro�R�r
*
g��
=
��ic_��
<CG_ro�R�r*>(
funcLi�
[
i
]);
172
SgEx�essi�
*
g�
=
��
->
�_
;
173
d��e
g��
;
174
gfuncLi�
[
i
] =
NULL
;
176
SgV��b�Symb�
*
gvs
=
sym�b_
->
f�d_v��b�
(
177
SgName
(
lo�_v�s
[
i
].
c_�r
()));
179 i�(
gvs
=�
NULL
) {
181
n�_�_sym�b_
= 1;
183
gvs
=
sym�b2_
->
f�d_v��b�
(
SgName
(
lo�_v�s
[
i
].
c_�r
()));
185 i�(
gvs
!�
NULL
) {
188
�d
::
ve��
<
SgV�RefExp
*>
��y
=
sub��u�
(
�l
,
vs
,
�
,
189
ro�_
);
191 i�(
gn�_�_sym�b_
&&
isSgV�RefExp
(
�
)) {
192 i�(
�rcmp
(
193
isSgV�RefExp
(
�
)->
g�_symb�
()->
g�_�me
().
g�S��g
().
c_�r
(),
194
vs
->
g�_�me
().
g�S��g
().
c_�r
())) {
205
g�d
::
ve��
<
SgV�RefExp
*>::
����
j
=
��y
.
beg�
();
206
gj
!�
��y
.
�d
(); j++) {
209 i�(
isSgV�RefExp
(
�
)) {
210 i�(
�rcmp
(
211
isSgV�RefExp
(
�
)->
g�_symb�
()->
g�_�me
().
g�S��g
().
c_�r
(),
212
vs
->
g�_�me
().
g�S��g
().
c_�r
())) {
213 (*
gj
)->
�t_symb�
(
isSgV�RefExp
(
�
)->
g�_symb�
());
218 } i�(
isSgEx�essi�
(
�
)) {
220 i�(
isSgB��yOp
((*
j
)->
g�_���
()))
221
isSgB��yOp
((*
j
)->
g�_���
())->
��a�_ex�essi�
(
222 *
j
,
�
);
297
�w
CG_ro�R�r
(
�l
);
305
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eAssignm�t
(, CG_ou�utR��*
lhs
,
306
CG_ou�utR�r
*
rhs
) const {
307 i�(
glhs
=�
NULL
||
rhs
== NULL) {
308
�r�tf
(
�d�r
, "Code generation: Missing�hs or�hs\n");
309
gNULL
;
312
SgEx�essi�
*
g�c
=
��ic_��
<
CG_ro�R�r
*>(
rhs
)->
�_
;
313
SgEx�essi�
*
gd�
=
��ic_��
<
CG_ro�R�r
*>(
lhs
)->
�_
;
315
SgEx�S��m�t
*
g�s
=
bu�dAssignS��m�t
(
d�
,
�c
);
316
g�c
->
�t_���
(
�s
);
317
gd�
->
�t_���
(
�s
);
319
SgS��m�tP�Li�
*
g�w_li�
=
�w
SgStatementPtrList;
321 (*
g�w_li�
).
push_back
(
isSgS��m�t
(
�s
));
323
d��e
glhs
;
324
d��e
grhs
;
326
�w
CG_ro�R�r
(
�w_li�
);
333
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eInvoke
(cڡ
�d
::
�r�g
&
�ame
,
334
Tu�e
<
CG_ou�utR�r
*> &
li�
) const {
336 i�(
g�ame
=�
�d
::
�r�g
("max"�||
�ame
== std::string("min")) {
337 i�(
li�
.
size
() == 0) {
338
NULL
;
339 } i�(
gli�
.
size
() == 1) {
340
li�
[1];
342
gϡ
=
li�
.
size
();
343
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
li�
[
ϡ
])->
�_
;
344
d��e
gli�
[
ϡ
];
345
gli�
.
d��e_ϡ
();
346
CG_ro�R�r
*
g��
=
��ic_��
<CG_ro�R�r*>(
C��eInvoke
(
�ame
,
347
li�
));
348
SgEx�essi�
*
g�1
=
��
->
�_
;
350
SgEx�essi�
*
g�s
;
351
SgEx�Li�Exp
*
g�g_li�
=
bu�dEx�Li�Exp
();
352
��ndEx�essi�
(
�g_li�
,
�1
);
353
��ndEx�essi�
(
�g_li�
,
�2
);
354
SgV�RefExp
*
g�aque_v�
;
356 i�(
g�ame
=�
�d
::
�r�g
("max")) {
357
�aque_v�
=
bu�dO�queV�RefExp
("__ro�_gt",
glob�_
);
358
g�s
=
isSgEx�essi�
(
359
bu�dFun�i�C�lExp
(
�aque_v�
,
�g_li�
));
362
g�aque_v�
=
bu�dO�queV�RefExp
("__ro�_�",
glob�_
);
363
g�s
=
isSgEx�essi�
(
364
bu�dFun�i�C�lExp
(
�aque_v�
,
�g_li�
));
366
g��
->
g�_
=
�s
;
368
g��
;
371
�r�tf
(
�d�r
,
373
gNULL
;
381
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eComm�t
(,
382 cڡ
�d
::
�r�g
&
comm�tText
) const {
383 i�(
comm�tText
=�
�d
::
�r�g
("")) {
384
NULL
;
387
SgLo��dNode
*
g�l
=
�w
SgLocatedNode();
388
bu�dComm�t
(
�l
, "//omega_comm�t: " +
comm�tText
);
390
�w
CG_ro�R�r
(
isSgNode
(
�l
));
397
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eIf
(, CG_ou�utR��*
gu�dLi�
,
398
CG_ou�utR�r
*
�ue_�mtLi�
, CG_ou�utR��*
�l�_�mtLi�
) const {
404 i�(
g�ue_�mtLi�
=�
NULL
&&
�l�_�mtLi�
== NULL) {
405
d��e
gu�dLi�
;
406
gNULL
;
407 } i�(
ggu�dLi�
=�
NULL
) {
408
StmtLi�A��d
(
�ue_�mtLi�
,
�l�_�mtLi�
);
411
SgEx�essi�
*
gh�d�
=
��ic_��
<
CG_ro�R�r
*>(
gu�dLi�
)->
�_
;
413
SgS��m�tP�Li�
*
gth�_��1
, *
g��_��1
;
414
SgS��m�t
*
gth�_��
;
415
SgS��m�t
*
g��_��
;
416
SgBasicBlock
*
gth�_��2
;
417
SgBasicBlock
*
g��_��2
;
418 i�(
g�ue_�mtLi�
!�
NULL
) {
419
th�_��1
=
��ic_��
<
CG_ro�R�r
*>(
�ue_�mtLi�
)->
li�_
;
420 i�(
gth�_��1
!�
NULL
) {
421
th�_��
= *((*
th�_��1
).
beg�
());
423 i�((*
gth�_��1
).
size
() > 1) {
424
gth�_��2
=
bu�dBasicBlock
();
425
gSgS��m�tP�Li�
::
����
�
= (*
th�_��1
).
beg�
();
426
g�
!�(*
th�_��1
).
�d
(); it++) {
427
gth�_��2
->
��nd_��em�t
(*
�
);
430
gth�_��
=
isSgS��m�t
(
th�_��2
);
434
gth�_��
=
isSgS��m�t
(
435
��ic_��
<
CG_ro�R�r
*>(
�ue_�mtLi�
)->
�l_
);
437
gth�_��
=
NULL
;
439 i�(
g�l�_�mtLi�
!�
NULL
) {
440
��_��1
=
��ic_��
<
CG_ro�R�r
*>(
�l�_�mtLi�
)->
li�_
;
441 i�(
g��_��1
!�
NULL
) {
442
��_��
= *((*
��_��1
).
beg�
());
443 i�((*
g��_��1
).
size
() > 1) {
444
g��_��2
=
bu�dBasicBlock
();
445
gSgS��m�tP�Li�
::
����
�2
= (*
��_��1
).
beg�
();
446
g�2
!�(*
��_��1
).
�d
(); it2++) {
447
g��_��2
->
��nd_��em�t
(*
�2
);
450
g��_��
=
isSgS��m�t
(
��_��2
);
454
g��_��
=
isSgS��m�t
(
455
��ic_��
<
CG_ro�R�r
*>(
�l�_�mtLi�
)->
�l_
);
457
g��_��
=
NULL
;
460
SgIfStmt
*
gti
=
bu�dIfStmt
(
h�d�
,
isSgS��m�t
(
th�_��
),
461
isSgS��m�t
(
��_��
));
468
d��e
ggu�dLi�
;
469
d��e
g�ue_�mtLi�
;
470
d��e
g�l�_�mtLi�
;
472
�w
CG_ro�R�r
(
isSgNode
(
ti
));
479
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eIndu�ive
(CG_ou�utR��*
�dex
,
480
CG_ou�utR�r
*
low�
, CG_ou�utR��*
u��
, CG_ou�utR��*
��
) const {
482 i�(
g�dex
=�
NULL
||
low�
=�NULL ||
u��
== NULL) {
483
�r�tf
(
�d�r
,
485
gNULL
;
488 i�(
g��
=�
NULL
)
489
��
=
�w
CG_ro�R�r
(
isSgEx�essi�
(
bu�dI�V�
(1)));
491
SgV�RefExp
*
g�dex_sym
=
isSgV�RefExp
(
492
��ic_��
<
CG_ro�R�r
*>(
�dex
)->
�_
);
493
SgEx�essi�
*
glow�_bound
=
��ic_��
<
CG_ro�R�r
*>(
low�
)->
�_
;
494
SgEx�essi�
*
gu��_bound
=
��ic_��
<
CG_ro�R�r
*>(
u��
)->
�_
;
495
SgEx�essi�
*
g��_size
=
��ic_��
<
CG_ro�R�r
*>(
��
)->
�_
;
501
SgS��m�t
*
gf�_��_�mt
=
bu�dAssignS��m�t
(
�dex_sym
,
low�_bound
);
502
SgLessOrEqu�Op
*
gc�d
=
bu�dLessOrEqu�Op
(
�dex_sym
,
u��_bound
);
503
SgEx�S��m�t
*
g��
=
bu�dEx�S��m�t
(
c�d
);
504
SgPlusAssignOp
*
g��em�t
=
bu�dPlusAssignOp
(
�dex_sym
,
��_size
);
505
SgF�S��m�t
*
gf�_�mt
=
bu�dF�S��m�t
(
f�_��_�mt
,
506
isSgS��m�t
(
��
),
��em�t
,
NULL
);
508
d��e
g�dex
;
509
d��e
glow�
;
510
d��e
gu��
;
511
d��e
g��
;
513
�w
CG_ro�R�r
(
isSgNode
(
f�_�mt
));
520
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eA�ribu�
(CG_ou�utR��*
cڌ�
,
521 cڡ
�d
::
�r�g
&
comm�tText
) const {
523
SgNode
*
�l
=
��ic_��
<
CG_ro�R�r
*>(
cڌ�
)->
�l_
;
525
g�l
->
�tA�ribu�
("omega_comm�t",
�w
A�TextA�ribu�
(
comm�tText
));
527
g��ic_��
<
gCG_ro�R�r
*>(
gcڌ�
);
534
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eLo�
(, CG_ou�utR��*
cڌ�
,
535
CG_ou�utR�r
*
�mtLi�
) const {
536 i�(
g�mtLi�
=�
NULL
) {
537
d��e
cڌ�
;
538
gNULL
;
539 } i�(
gcڌ�
=�
NULL
) {
540
�r�tf
(
�d�r
, "Code generation:�o inductive for�his�oop\n");
541
g�mtLi�
;
544
SgNode
*
g�l
=
��ic_��
<
CG_ro�R�r
*>(
cڌ�
)->
�l_
;
545
SgF�S��m�t
*
gtf
=
isSgF�S��m�t
(
�l
);
547
SgS��m�tP�Li�
*
gbody
=
��ic_��
<
CG_ro�R�r
*>(
�mtLi�
)->
li�_
;
549 i�(
gbody
!�
NULL
) {
550 i�(!((*
body
).
em�y
())) {
551 i�((*
body
).
size
() == 1) {
553
tf
->
�t_lo�_body
(*((*
body
).
beg�
()));
554 (*((*
gbody
).
beg�
()))->
�t_���
(
tf
);
564
SgBasicBlock
*
gbb
=
bu�dBasicBlock
();
565
gbb
->
�t_���
(
tf
);
566
gSgS��m�tP�Li�
::
����
�
= (*
body
).
beg�
();
567
g�
!�(*
body
).
�d
(); it++) {
568
gbb
->
��nd_��em�t
(*
�
);
569 (*
g�
)->
�t_���
(
bb
);
571
gtf
->
�t_lo�_body
(
bb
);
576
SgNode
*
g�l2
=
��ic_��
<
CG_ro�R�r
*>(
�mtLi�
)->
�l_
;
578 i�(
g�l2
!�
NULL
) {
579
tf
->
�t_lo�_body
(
isSgS��m�t
(
�l2
));
580
g�l2
->
�t_���
(
tf
);
584
d��e
g�mtLi�
;
586
gcڌ�
;
592
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eI�
(
_i
) const {
593
�w
CG_ro�R�r
(
isSgEx�essi�
(
bu�dI�V�
(
_i
)));
596
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eId�t
(cڡ
�d
::
�r�g
&
_s
) const {
598
SgV��b�Symb�
*
vs
=
sym�b_
->
f�d_v��b�
(
SgName
(
_s
.
c_�r
()));
599
SgV��b�Symb�
*
gvs2
=
sym�b2_
->
f�d_v��b�
(
SgName
(
_s
.
c_�r
()));
601 i�(
gvs
=�
NULL
&&
vs2
== NULL) {
603
SgV��b�De���i�
*
de�
=
bu�dV��b�De���i�
(
604
SgName
(
_s
.
c_�r
()),
bu�dI�Ty�
());
605
gSgIn��lizedNameP�Li�
&
gv��b�s
=
de�
->
g�_v��b�s
();
606
gSgIn��lizedNameP�Li�
::
cڡ_����
i
=
v��b�s
.
beg�
();
607
SgIn��lizedName
*
g���lizedName
= *
i
;
608
gvs
=
�w
SgV��b�Symb�
(
���lizedName
);
609
���dS��m�t
(
de�
,
isSgSc�eS��m�t
(
ro�_
));
611
gvs
->
�t_���
(
sym�b2_
);
612
gsym�b2_
->
���
(
SgName
(
_s
.
c_�r
()),
vs
);
613
�w
CG_ro�R�r
(
isSgEx�essi�
(
bu�dV�RefExp
(
vs
)));
619 i�(!
isSgEx�essi�
(
bu�dV�RefExp
(
SgName
(
_s
.
c_�r
()))))
620
throw
�_�r�
("error in Create ident!!");
621 i�(
gvs2
!�
NULL
)
622
�w
CG_ro�R�r
(
isSgEx�essi�
(
bu�dV�RefExp
(
vs2
)));
624
�w
CG_ro�R�r
(
isSgEx�essi�
(
bu�dV�RefExp
(
vs
)));
631
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��ePlus
(CG_ou�utR��*
l�
,
632
CG_ou�utR�r
*
r�
) const {
633 i�(
gr�
=�
NULL
) {
634
l�
;
635 } i�(
gl�
=�
NULL
) {
636
r�
;
639
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
640
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
642
SgAddOp
*
g�s
=
bu�dAddOp
(
�1
,
�2
);
643
g�1
->
�t_���
(
�s
);
644
g�2
->
�t_���
(
�s
);
645
d��e
gl�
;
646
d��e
gr�
;
648
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
652
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eM�us
(CG_ou�utR��*
l�
,
653
CG_ou�utR�r
*
r�
) const {
654 i�(
gr�
=�
NULL
) {
655
l�
;
656 } i�(
gl�
=�
NULL
) {
657
SgEx�essi�
*
�
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
658
SgM�usOp
*
g�s
=
bu�dM�usOp
(
�
);
660
d��e
gr�
;
662
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
664
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
665
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
667
SgSub�a�Op
*
g�s
=
bu�dSub�a�Op
(
�1
,
�2
);
668
g�1
->
�t_���
(
�s
);
669
g�2
->
�t_���
(
�s
);
670
d��e
gl�
;
671
d��e
gr�
;
672
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
677
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eTimes
(CG_ou�utR��*
l�
,
678
CG_ou�utR�r
*
r�
) const {
679 i�(
gr�
=�
NULL
||
l�
== NULL) {
680 i�(
r�
!�
NULL
) {
681
r�
->
��r
();
682
d��e
gr�
;
684 i�(
gl�
!�
NULL
) {
685
l�
->
��r
();
686
d��e
gl�
;
688
gNULL
;
691
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
692
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
694
SgMuɝlyOp
*
g�s
=
bu�dMuɝlyOp
(
�1
,
�2
);
695
g�1
->
�t_���
(
�s
);
696
g�2
->
�t_���
(
�s
);
697
d��e
gl�
;
698
d��e
gr�
;
700
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
704
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eI�eg�Divide
(CG_ou�utR��*
l�
,
705
CG_ou�utR�r
*
r�
) const {
706 i�(
gr�
=�
NULL
) {
707
�r�tf
(
�d�r
, "Code generation: divide by NULL\n");
708
gNULL
;
709 } i�(
gl�
=�
NULL
) {
710
d��e
r�
;
711
gNULL
;
715
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
716
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
719
SgDivideOp
*
g�s
=
bu�dDivideOp
(
�1
,
�2
);
721
d��e
gl�
;
722
d��e
gr�
;
724
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
728
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eI�eg�Mod
(CG_ou�utR��*
l�
,
729
CG_ou�utR�r
*
r�
) const {
730 i�(
gr�
=�
NULL
||
l�
== NULL) {
731
NULL
;
734
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
735
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
738
SgModOp
*
g�s
=
bu�dModOp
(
�1
,
�2
);
740
d��e
gl�
;
741
d��e
gr�
;
743
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
750
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eAnd
(CG_ou�utR��*
l�
,
751
CG_ou�utR�r
*
r�
) const {
752 i�(
gr�
=�
NULL
||
l�
== NULL) {
753
NULL
;
756
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
757
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
759
SgAndOp
*
g�s
=
bu�dAndOp
(
�1
,
�2
);
761
d��e
gl�
;
762
d��e
gr�
;
764
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
771
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eGE
(CG_ou�utR��*
l�
,
772
CG_ou�utR�r
*
r�
) const {
773
C��eLE
(
r�
,
l�
);
776
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eLE
(CG_ou�utR��*
l�
,
777
CG_ou�utR�r
*
r�
) const {
778 i�(
gr�
=�
NULL
||
l�
== NULL) {
779
NULL
;
782
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
783
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
785
SgLessOrEqu�Op
*
g�s
=
bu�dLessOrEqu�Op
(
�1
,
�2
);
787
d��e
gl�
;
788
d��e
gr�
;
790
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
794
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eEQ
(CG_ou�utR��*
l�
,
795
CG_ou�utR�r
*
r�
) const {
796 i�(
gr�
=�
NULL
||
l�
== NULL) {
797
NULL
;
800
SgEx�essi�
*
g�1
=
��ic_��
<
CG_ro�R�r
*>(
l�
)->
�_
;
801
SgEx�essi�
*
g�2
=
��ic_��
<
CG_ro�R�r
*>(
r�
)->
�_
;
803
SgEqu��yOp
*
g�s
=
bu�dEqu��yOp
(
�1
,
�2
);
805
d��e
gl�
;
806
d��e
gr�
;
808
�w
CG_ro�R�r
(
isSgEx�essi�
(
�s
));
815
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eStmtLi�
(CG_ou�utR��*
s�g�t�
) const {
819 i�(
s�g�t�
=�
NULL
) {
820
�w
CG_ro�R�r
�ew
SgS��m�tP�Li�
);
823
SgS��m�tP�Li�
*
g�l
=
��ic_��
<
CG_ro�R�r
*>(
s�g�t�
)->
li�_
;
824
SgNode
*
gsgn
=
��ic_��
<
CG_ro�R�r
*>(
s�g�t�
)->
�l_
;
826 i�(
g�l
=�
NULL
)
827
�l
=
�w
SgS��m�tP�Li�
;
829 i�(
gsgn
=�
NULL
) {
830
SgEx�essi�
*
�
=
��ic_��
<
CG_ro�R�r
*>(
s�g�t�
)->
�_
;
832 i�(
g�
!�
NULL
)
833 (*
�l
).
push_back
(
834
bu�dEx�S��m�t
(
835
��ic_��
<
CG_ro�R�r
*>(
s�g�t�
)->
�_
));
838 (*
g�l
).
push_back
(
isSgS��m�t
(
sgn
));
840
d��e
gs�g�t�
;
841
�w
CG_ro�R�r
(
�l
);
850
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
StmtLi�In��La�
(CG_ou�utR��*
li�
,
851
CG_ou�utR�r
*
node
) const {
852
StmtLi�A��d
(
li�
,
node
);
855
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
StmtLi�A��d
(CG_ou�utR��*
li�1
,
856
CG_ou�utR�r
*
li�2
) const {
858 i�(
gli�2
=�
NULL
) {
859
li�1
;
860 } i�(
gli�1
=�
NULL
) {
861
li�2
;
868
SgS��m�tP�Li�
*
g�w_li�
;
870
SgS��m�tP�Li�
*
g�l1
=
��ic_��
<
CG_ro�R�r
*>(
li�1
)->
li�_
;
871
SgS��m�tP�Li�
*
g�l2
=
��ic_��
<
CG_ro�R�r
*>(
li�2
)->
li�_
;
872
SgNode
*
g�e
=
��ic_��
<
CG_ro�R�r
*>(
li�1
)->
�l_
;
873
SgNode
*
gtwo
=
��ic_��
<
CG_ro�R�r
*>(
li�2
)->
�l_
;
875
SgEx�essi�
*
gexp1
=
��ic_��
<
CG_ro�R�r
*>(
li�1
)->
�_
;
876
SgEx�essi�
*
gexp2
=
��ic_��
<
CG_ro�R�r
*>(
li�2
)->
�_
;
878 i�(
gexp1
||
gexp2
)
879
throw
�_�r�
("error in stmtlistappend!!");
895 i�((
g�l1
=�
NULL
�&& (
�l2
== NULL)) {
897 i�((
�e
!�
NULL
�&& (
two
!= NULL)) {
899
�w_li�
=
�w
SgS��m�tP�Li�
;
901 (*
g�w_li�
).
push_back
(
isSgS��m�t
(
�e
));
902 (*
g�w_li�
).
push_back
(
isSgS��m�t
(
two
));
904
CG_ro�R�r
*
g�w_�p
=
�w
CG_ro�R�r(
�w_li�
);
906
g��ic_��
<
gCG_ou�utR�r
*>(
g�w_�p
);
908 } i�((
g�e
!�
NULL
�&& (
two
== NULL)) {
910
��ic_��
<
CG_ou�utR�r
*>(
�w
CG_ro�R�r
(
�e
));
912 } i�((
gtwo
!�
NULL
�&& (
�e
== NULL)) {
913
��ic_��
<
CG_ou�utR�r
*>(
�w
CG_ro�R�r
(
two
));
918 i�((
g�l2
!�
NULL
�&& (
�l1
== NULL)) {
925 i�(
�e
=�
NULL
)
926
li�2
;
929 (*
g�l2
).
push_back
(
isSgS��m�t
(
�e
));
931
g��ic_��
<
gCG_ou�utR�r
*>(
�w
CG_ro�R�r
(
�l2
));
933 } i�((
g�l1
!�
NULL
�&& (
�l2
== NULL)) {
934 i�(
two
=�
NULL
)
935
li�1
;
938 (*
g�l1
).
push_back
(
isSgS��m�t
(
two
));
940
g��ic_��
<
gCG_ou�utR�r
*>(
�w
CG_ro�R�r
(
�l1
));
944 } i�((
g�l1
!�
NULL
�&& (
�l2
!= NULL)) {
946
SgS��m�tP�Li�
::
����
�
= (*
�l2
).
beg�
();
947
g�
!�(*
�l2
).
�d
(); it++) {
948 (*
g�l1
).
push_back
(*
�
);
954
g��ic_��
<
gCG_ou�utR�r
*>(
�w
CG_ro�R�r
(
�l1
));
1002
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eDim3
(cڡ *
v�Name
,
�g1
,
1003
�g2
) const {
1005
SgName
ty�_�me
("dim3");
1006
SgC�ssSymb�
*
gty�_symb�
=
glob�_sc�e
->
lookup_�ass_symb�
(
ty�_�me
);
1007
SgC�ssDe���i�
*
gty�_de�
=
isSgC�ssDe���i�
(
1008
ty�_symb�
->
g�_de���i�
());
1012
SgFun�i�Symb�
*
g��_symb�
=
glob�_sc�e
->
lookup_fun�i�_symb�
(
1013
SgName
("dim3"));
1015
SgEx�Li�Exp
*
g��_�gs
=
bu�dEx�Li�Exp
(
bu�dI�V�
(
�g1
),
1016
bu�dI�V�
(
�g2
));
1018
SgFun�i�C�lExp
*
gdim3_func_��
=
bu�dFun�i�C�lExp
(
1019
bu�dFun�i�RefExp
(
��_symb�
->
g�_de���i�
()),
��_�gs
);
1021
gjo�ed_�r
[20];
1023
�r�y
(
jo�ed_�r
, "dim3 ");
1024
�r�t
(
jo�ed_�r
,
v�Name
);
1026
SgEx�S��m�t
*
gde�
=
bu�dAssignS��m�t
(
1027
bu�dO�queV�RefExp
(
jo�ed_�r
,
isSgSc�eS��m�t
(
ro�_
)),
1028
dim3_func_��
);
1030
SgS��m�tP�Li�
*
g�l2
=
�w
SgStatementPtrList;
1033 (*
g�l2
).
push_back
(
de�
);
1034
�w
CG_ro�R�r
(
�l2
);
1037
CG_ou�utR�r
*
gCG_ro�Bu�d�
::
C��eDim3
(cڡ *
v�Name
,
�g1
,
1038
�g2
,
�g3
) const {
1040
SgName
ty�_�me
("dim3");
1041
SgC�ssSymb�
*
gty�_symb�
=
glob�_sc�e
->
lookup_�ass_symb�
(
ty�_�me
);
1042
SgC�ssDe���i�
*
gty�_de�
=
isSgC�ssDe���i�
(
1043
ty�_symb�
->
g�_de���i�
());
1047
SgFun�i�Symb�
*
g��_symb�
=
glob�_sc�e
->
lookup_fun�i�_symb�
(
1048
SgName
("dim3"));
1050
SgEx�Li�Exp
*
g��_�gs
=
bu�dEx�Li�Exp
(
bu�dI�V�
(
�g1
),
1051
bu�dI�V�
(
�g2
), bu�dI�V�(
�g3
));
1053
SgFun�i�C�lExp
*
gdim3_func_��
=
bu�dFun�i�C�lExp
(
1054
bu�dFun�i�RefExp
(
��_symb�
->
g�_de���i�
()),
��_�gs
);
1056
gjo�ed_�r
[20];
1058
�r�y
(
jo�ed_�r
, "dim3 ");
1059
�r�t
(
jo�ed_�r
,
v�Name
);
1061
SgEx�S��m�t
*
gde�
=
bu�dAssignS��m�t
(
1062
bu�dO�queV�RefExp
(
jo�ed_�r
,
isSgSc�eS��m�t
(
ro�_
)),
1063
dim3_func_��
);
1065
SgS��m�tP�Li�
*
g�l2
=
�w
SgStatementPtrList;
1068 (*
g�l2
).
push_back
(
de�
);
1069
�w
CG_ro�R�r
(
�l2
);
1144
g�d
::
ve��
<
SgV�RefExp
*>
sub��u�
(
SgNode
*
�
, cڡ
SgV��b�Symb�
*
sym
,
1145
SgEx�essi�
*
ex�
,
SgNode
*
ro�
) {
1147
SgS��m�t
*
g�mt
;
1148
SgEx�essi�
*
g�
;
1149
g�d
::
ve��
<
SgV�RefExp
*>
��ys
;
1151 i�(
g�
!�
NULL
) {
1152 i�(
�mt
=
isSgS��m�t
(
�
)) {
1153 i�(
isSgBasicBlock
(
�mt
)) {
1154
SgS��m�tP�Li�
&
�mts
=
1155
isSgBasicBlock
(
�mt
)->
g�_��em�ts
();
1156
gi
= 0; i <
g�mts
.
size
(); i++) {
1157
g�mts
[
i
]->
�t_���
(
�mt
);
1158
g�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1159
isSgNode
(
�mts
[
i
]),
sym
,
ex�
,
ro�
);
1160
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1162 } i�(
isSgF�S��m�t
(
�mt
)) {
1163
SgF�S��m�t
*
g�f
=
isSgF�S��m�t
(
�mt
);
1164
g�f
->
g�_f�_��_�mt
()->
�t_���
(
�f
);
1165
g�f
->
g�_��
()->
�t_���
(
�f
);
1166
g�f
->
g�_��em�t
()->
�t_���
(
�f
);
1167
g�f
->
g�_lo�_body
()->
�t_���
(
�f
);
1168
g�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1169
isSgNode
(
�f
->
g�_f�_��_�mt
()),
sym
,
ex�
,
ro�
);
1170
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1171
g�d
::
ve��
<
SgV�RefExp
*>
a1
=
sub��u�
(
1172
isSgNode
(
�f
->
g�_��
()),
sym
,
ex�
,
ro�
);
1173
g�d
::
c�y
(
a1
.
beg�
(),�1.
�d
(),
back_����
(
��ys
));
1174
g�d
::
ve��
<
SgV�RefExp
*>
a2
=
sub��u�
(
1175
isSgNode
(
�f
->
g�_��em�t
()),
sym
,
ex�
,
ro�
);
1176
g�d
::
c�y
(
a2
.
beg�
(),�2.
�d
(),
back_����
(
��ys
));
1177
g�d
::
ve��
<
SgV�RefExp
*>
a3
=
sub��u�
(
1178
isSgNode
(
�f
->
g�_lo�_body
()),
sym
,
ex�
,
ro�
);
1179
g�d
::
c�y
(
a3
.
beg�
(),�3.
�d
(),
back_����
(
��ys
));
1188 i�(
isSgV��b�De���i�
(
�mt
)) {
1189 i�(
SgEx�essi�
*
g��
=
1190
isSgV��b�De���i�
(
�mt
)->
g�_v��b�s
().
��t
()->
g�_���liz�
()) {
1191 i�(
isSgAssignIn��liz�
(
��
)) {
1192
�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1193
isSgAssignIn��liz�
(
��
)->
g�_ݔ�d
(),
sym
,
1194
ex�
,
ro�
);
1195
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1198 } i�(
isSgIfStmt
(
�mt
)) {
1199
SgIfStmt
*
g�i
=
isSgIfStmt
(
�mt
);
1200
g�i
->
g�_c�d�iڮ
()->
�t_���
(
�i
);
1201
g�i
->
g�_�ue_body
()->
�t_���
(
�i
);
1202
g�i
->
g�_�l�_body
()->
�t_���
(
�i
);
1203
g�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1204
isSgNode
(
�i
->
g�_c�d�iڮ
()),
sym
,
ex�
,
ro�
);
1205
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1206
g�d
::
ve��
<
SgV�RefExp
*>
a1
=
sub��u�
(
1207
isSgNode
(
�i
->
g�_�ue_body
()),
sym
,
ex�
,
ro�
);
1208
g�d
::
c�y
(
a1
.
beg�
(),�1.
�d
(),
back_����
(
��ys
));
1209
g�d
::
ve��
<
SgV�RefExp
*>
a2
=
sub��u�
(
1210
isSgNode
(
�i
->
g�_�l�_body
()),
sym
,
ex�
,
ro�
);
1211
g�d
::
c�y
(
a2
.
beg�
(),�2.
�d
(),
back_����
(
��ys
));
1212 } i�(
isSgEx�S��m�t
(
�mt
)) {
1213 (
isSgEx�S��m�t
(
�mt
)->
g�_ex�essi�
())->
�t_���
(
1214
isSgEx�S��m�t
(
�mt
));
1215
g�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1216
isSgNode
(
isSgEx�S��m�t
(
�mt
)->
g�_ex�essi�
()),
1217
sym
,
ex�
,
ro�
);
1218
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1222
g�
=
isSgEx�essi�
(
�
);
1224
g�d
::
�r�g
y
=
sym
->
g�_�me
().
g�S��g
();
1226 i�(
isSgB��yOp
(
�
)) {
1228
isSgB��yOp
(
�
)->
g�_lhs_ݔ�d
()->
�t_���
(op);
1229
isSgB��yOp
(
�
)->
g�_rhs_ݔ�d
()->
�t_���
(op);
1231
g�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1232
isSgB��yOp
(
�
)->
g�_lhs_ݔ�d
(),
sym
,
ex�
,
ro�
);
1233
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1234
g�d
::
ve��
<
SgV�RefExp
*>
a1
=
sub��u�
(
1235
isSgB��yOp
(
�
)->
g�_rhs_ݔ�d
(),
sym
,
ex�
,
ro�
);
1236
g�d
::
c�y
(
a1
.
beg�
(),�1.
�d
(),
back_����
(
��ys
));
1237 } i�(
isSgU�ryOp
(
�
)) {
1238
isSgU�ryOp
(
�
)->
g�_ݔ�d
()->
�t_���
(op);
1239
g�d
::
ve��
<
SgV�RefExp
*>
a
=
sub��u�
(
1240
isSgU�ryOp
(
�
)->
g�_ݔ�d
(),
sym
,
ex�
,
ro�
);
1241
g�d
::
c�y
(
a
.
beg�
(),�.
�d
(),
back_����
(
��ys
));
1242 } i�(
isSgV�RefExp
(
�
)) {
1243
g�d
::
�r�g
z
=
1244
isSgV�RefExp
(
�
)->
g�_symb�
()->
g�_�me
().
g�S��g
();
1245 i�(!
�rcmp
(
z
.
c_�r
(),
y
.c_str())) {
1247
g��ys
.
push_back
(
isSgV�RefExp
(
�
));
1273
g��ys
;
@CG_roseRepr.cc
14
~<code_g�/CG_ro�R�r.h
>
15
~<�dio.h
>
16
~<�r�g.h
>
17
~<c�r�g
>
18
�me�a�
gomega
{
23
gCG_ro�R�r
::
CG_ro�R�r
():
�l_
(
NULL
),
�_
(NULL),
li�_
(NULL){
27
gCG_ro�R�r
::
CG_ro�R�r
(
SgNode
*
�l
):
�l_
��),
�_
(
NULL
),
li�_
(NULL) {
30
gCG_ro�R�r
::
CG_ro�R�r
(
SgEx�essi�
*
�
):
�l_
(
NULL
),
�_
(�),
li�_
(NULL){
32
gCG_ro�R�r
::
CG_ro�R�r
(
SgS��m�tP�Li�
*
�m�i�
):
�l_
(
NULL
),
�_
(NULL),
li�_
(stmtlist){
35
gCG_ro�R�r
::~
CG_ro�R�r
() {
40
CG_ou�utR�r
*
CG_ro�R�r
::
��e
() {
42 if�
�l_
!�
NULL
) {
43
SgT�eC�y
tc
;
44
SgNode
*
g�l
=
�l_
->
c�y
(
tc
);
45
g�l
->
�t_���
(
�l_
->
g�_���
());
46
�w
CG_ro�R�r
(
�l
);
48 if(
g�_
!�
NULL
)
50
SgT�eC�y
tc1
;
51
SgNode
*
g�
=
isSgNode
(
�_
)->
c�y
(
tc1
);
53
g�
->
�t_���
(
isSgNode
(
�_
)->
g�_���
());
54
�w
CG_ro�R�r
(
isSgEx�essi�
(
�
));
56 if(
gli�_
!�
NULL
)
58
SgS��m�tP�Li�
*
li�2
=
�w
SgStatementPtrList;
60
gSgS��m�tP�Li�
::
����
�
= (*
li�_
).
beg�
();
g�
!�(*li�_).
�d
(); it++){
61
SgT�eC�y
gtc3
;
62
SgNode
*
g�l2
=
isSgNode
(*
�
)->
c�y
(
tc3
);
63
g�l2
->
�t_���
(
isSgNode
(*
�
)->
g�_���
());
65 (*
gli�2
).
push_back
(
isSgS��m�t
(
�l2
));
67
�w
CG_ro�R�r
(
li�2
);
70
gNULL
;
73
gCG_ro�R�r
::
��r
() {
74 if(
�l_
!�
NULL
) {
75
d��e
�l_
;
76
g�l_
=
NULL
;
80
SgNode
*
gCG_ro�R�r
::
G�Code
() const {
81
�l_
;
84
SgS��m�tP�Li�
*
gCG_ro�R�r
::
G�Li�
() const {
85
li�_
;
88
SgEx�essi�
*
gCG_ro�R�r
::
G�Ex�essi�
() const {
89
�_
;
91
gCG_ro�R�r
::
Dump
() const {
92
SgNode
*
�l
=
�l_
;
93
SgEx�essi�
*
g�
=
�_
;
94 if(
g�l
!�
NULL
)
95
DumpF�eH��r
(
�l
,
�dout
);
96 if(
g�
!�
NULL
)
97
DumpF�eH��r
(
isSgNode
(
�
),
�dout
);
101
gCG_ro�R�r
::
DumpF�eH��r
(
SgNode
*
node
,
FILE
*
�
) const{
102
g�d
::
�r�g
x
;
103
size_t
gnumb�OfSuc�ss�s
=
node
->
g�_numb�OfT�v��lSuc�ss�s
();
104 if(
gnumb�OfSuc�ss�s
== 0){
105
x
=
node
->
uŬ�ToS��g
();
106
�r�tf
(
�
, "%s",
x
.
c_�r
());
109
size_t
gidx
= 0; idx <
gnumb�OfSuc�ss�s
; idx++)
111
SgNode
*
gch�d
=
NULL
;
112
gch�d
=
node
->
g�_�av��lSuc�ss�ByIndex
(
idx
);
113
DumpF�eH��r
(
ch�d
,
�
);
119
gCG_ro�R�r
::
DumpToF�e
(
FILE
*
�
) const {
121
SgNode
*
�l
=
�l_
;
122
SgEx�essi�
*
g�
=
�_
;
124 if(
g�l
!�
NULL
){
125
�d
::
�r�g
x
=
�l
->
uŬ�ToS��g
();
126
�r�tf
(
�
, "%s",
x
.
c_�r
());
129 if(
g�
!�
NULL
){
130
�d
::
�r�g
x
=
isSgNode
(
�
)->
uŬ�ToS��g
();
131
�r�tf
(
�
, "%s",
x
.
c_�r
());
@CG_stringBuilder.cc
17
~<code_g�/CG_�r�gBu�d�.h
>
18
~<code_g�/CG_�r�gR�r.h
>
19
~<�r�g
>
21
�me�a�
gomega
{
23
g�d
::
�r�g
Sa�gu�dS��g
(cڡ
�d
::�r�g &
s
,
�
);
29
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eP��H�d�
(
�d�t
,
30
CG_ou�utR�r
*
�mt
,
Tu�e
<CG_ou�utR�r*> &
funcLi�
,
31
Tu�e
<
�d
::
�r�g
> &) const {
32
�d
::
�r�g
li�S�
= "";
34
gi
= 1; i <�
funcLi�
.
size
(); i++) {
35 i�(
gfuncLi�
[
i
] =�
NULL
)
36
li�S�
+= "N/A";
38
gli�S�
+�
G�S��g
(
funcLi�
[
i
]);
39 i�(
gi
<
gfuncLi�
.
size
())
40
gli�S�
+= ",";
43
g�d
::
�r�g
�mtName
=
G�S��g
(
�mt
);
44
g�d
::
�r�g
�d�tS�
=
G�Ind�tS��s
(
�d�t
);
46
�w
CG_�r�gR�r
(
�d�tS�
+
�mtName
+ "(" +
li�S�
+ ");\n");
49
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eAssignm�t
(
�d�t
,
50
CG_ou�utR�r
*
lhs
, CG_ou�utR�r*
rhs
) const {
51 i�(
glhs
=�
NULL
||
rhs
== NULL) {
52
�r�tf
(
�d�r
, "Code generation: missing�hs or�hs\n");
53
gNULL
;
56
g�d
::
�r�g
lhsS�
=
G�S��g
(
lhs
);
57
g�d
::
�r�g
rhsS�
=
G�S��g
(
rhs
);
59
g�d
::
�r�g
�d�tS�
=
G�Ind�tS��s
(
�d�t
);
61
�w
CG_�r�gR�r
(
�d�tS�
+
lhsS�
+ "=" +
rhsS�
+ ";\n");
64
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eInvoke
(cڡ
�d
::
�r�g
&
�ame
,
65
Tu�e
<
CG_ou�utR�r
*> &
li�
) const {
66
g�d
::
�r�g
li�S�
= "";
68
gi
= 1; i <�
li�
.
size
(); i++) {
69
gli�S�
+�
G�S��g
(
li�
[
i
]);
70 i�(
gi
<
gli�
.
size
())
71
gli�S�
+= ",";
74
�w
CG_�r�gR�r
(
�ame
+ "(" +
li�S�
+ ")");
77
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eComm�t
(
�d�t
,
78 cڡ
�d
::
�r�g
&
comm�tText
) const {
79 i�(
comm�tText
=�
�d
::
�r�g
("")) {
80
NULL
;
83
g�d
::
�r�g
�d�tS�
=
G�Ind�tS��s
(
�d�t
);
85
�w
CG_�r�gR�r
(
�d�tS�
+ "// " +
comm�tText
+ "\n");
88
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eA�ribu�
(CG_ou�utR��*
cڌ�
,
89 cڡ
�d
::
�r�g
&
comm�tText
) const {
90 i�(
comm�tText
=�
�d
::
�r�g
("")) {
91
cڌ�
;
94
g�d
::
�r�g
cڌ�S��g
=
G�S��g
(
cڌ�
);
96
�w
CG_�r�gR�r
("// " +
comm�tText
+ "\n" +
cڌ�S��g
);
100
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eIf
(
�d�t
, CG_ou�utR�r*
gu�dLi�
,
101
CG_ou�utR�r
*
�ue_�mtLi�
, CG_ou�utR�r*
�l�_�mtLi�
) const {
102 i�(
g�ue_�mtLi�
=�
NULL
&&
�l�_�mtLi�
== NULL) {
103
d��e
gu�dLi�
;
104
gNULL
;
105 } i�(
ggu�dLi�
=�
NULL
) {
106
StmtLi�A��d
(
�ue_�mtLi�
,
�l�_�mtLi�
);
109
g�d
::
�r�g
gu�dLi�S�
=
G�S��g
(
gu�dLi�
);
110
g�d
::
�r�g
�d�tS�
=
G�Ind�tS��s
(
�d�t
);
111
g�d
::
�r�g
s
;
112 i�(
g�ue_�mtLi�
!�
NULL
&&
�l�_�mtLi�
== NULL) {
113
s
=
�d�tS�
+ "i�(" +
gu�dLi�S�
+ ") {\n"
114 +
G�S��g
(
�ue_�mtLi�
�+
�d�tS�
+ "}\n";
115 } i�(
g�ue_�mtLi�
=�
NULL
&&
�l�_�mtLi�
!= NULL) {
116
s
=
�d�tS�
+ "i�!(" +
gu�dLi�S�
+ ") {\n"
117 +
G�S��g
(
�l�_�mtLi�
�+
�d�tS�
+ "}\n";
119
gs
=
�d�tS�
+ "i�(" +
gu�dLi�S�
+ ") {\n"
120 +
G�S��g
(
�ue_�mtLi�
�+
�d�tS�
+ "}\n" + indentStr
121 + "�� {\n" +
G�S��g
(
�l�_�mtLi�
�+
�d�tS�
+ "}\n";
124
�w
CG_�r�gR�r
(
s
);
127
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eIndu�ive
(CG_ou�utR�r*
�dex
,
128
CG_ou�utR�r
*
low�
, CG_ou�utR�r*
u��
, CG_ou�utR�r*
��
) const {
129 i�(
g�dex
=�
NULL
) {
130
�r�tf
(
�d�r
, "Code generation: missing�oop index\n");
131
gNULL
;
134 i�(
glow�
=�
NULL
||
u��
== NULL) {
135
�r�tf
(
�d�r
, "Code generation: missing�oop bound\n");
138
g�d
::
�r�g
�dexS�
=
G�S��g
(
�dex
);
139
g�d
::
�r�g
low�S�
,
gu��S�
;
140 i�(
glow�
!�
NULL
)
141
low�S�
=
G�S��g
(
low�
);
143
glow�S�
=
�d
::
�r�g
("-infinity");
144 i�(
gu��
!�
NULL
)
145
u��S�
=
G�S��g
(
u��
);
147
gu��S�
=
�d
::
�r�g
("+infinity");
149
g�d
::
�r�g
doS�
= "f�(" +
�dexS�
+ " = " +
low�S�
+ "; " + indexStr
150 + " <�" +
u��S�
+ "; " +
�dexS�
;
152 i�(
g��
!�
NULL
) {
153
�d
::
�r�g
��S�
=
G�S��g
(
��
);
154
gdoS�
+�" +�" +
��S�
;
156
gdoS�
+= "++";
159
gdoS�
+= ")";
161
�w
CG_�r�gR�r
(
doS�
);
164
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eLo�
(
�d�t
, CG_ou�utR�r*
cڌ�
,
165
CG_ou�utR�r
*
�mtLi�
) const {
166 i�(
g�mtLi�
=�
NULL
) {
167
d��e
cڌ�
;
168
gNULL
;
169 } i�(
gcڌ�
=�
NULL
) {
170
�r�tf
(
�d�r
, "Code generation:�o inductive for�his�oop\n");
171
g�mtLi�
;
174
g�d
::
�r�g
��S�
=
G�S��g
(
cڌ�
);
175
g�d
::
�r�g
�mtS�
=
G�S��g
(
�mtLi�
);
177
g�d
::
�r�g
�d�tS�
=
G�Ind�tS��s
(
�d�t
);
179
g�d
::
�r�g
s
=
�d�tS�
+
��S�
+ " {\n" +
�mtS�
+ indentStr + "}\n";
181
�w
CG_�r�gR�r
(
s
);
184
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eI�
(
_i
) const {
185
�d
::
�r�g
_s
=
to_�r�g
(
_i
);
186
�w
CG_�r�gR�r
(
_s
);
189
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eId�t
(cڡ
�d
::
�r�g
&
_s
) const {
190 i�(&
_s
=�
NULL
|| _�=�
�d
::
�r�g
("")) {
191
NULL
;
194
�w
CG_�r�gR�r
(
_s
);
197
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��ePlus
(CG_ou�utR�r*
l�
,
198
CG_ou�utR�r
*
r�
) const {
199 i�(
gr�
=�
NULL
) {
200
l�
;
201 } i�(
gl�
=�
NULL
) {
202
r�
;
205
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
206
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
208
�w
CG_�r�gR�r
(
l�S�
+ "+" +
r�S�
);
211
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eM�us
(CG_ou�utR�r*
l�
,
212
CG_ou�utR�r
*
r�
) const {
213 i�(
gr�
=�
NULL
) {
214
l�
;
215 } i�(
gl�
=�
NULL
) {
216
�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
217
�w
CG_�r�gR�r
("-" +
Sa�gu�dS��g
(
r�S�
, '-'));
220
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
221
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
223
�w
CG_�r�gR�r
(
l�S�
+ "-" +
Sa�gu�dS��g
(
r�S�
, '-'));
226
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eTimes
(CG_ou�utR�r*
l�
,
227
CG_ou�utR�r
*
r�
) const {
228 i�(
gr�
=�
NULL
||
l�
== NULL) {
229
d��e
r�
;
230
d��e
gl�
;
231
gNULL
;
234
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
235
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
237
�w
CG_�r�gR�r
(
238
Sa�gu�dS��g
(
l�S�
, '*'�+ "*" + Sa�gu�dS��g(
r�S�
, '*'));
241
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eI�eg�Divide
(CG_ou�utR�r*
l�
,
242
CG_ou�utR�r
*
r�
) const {
243 i�(
gr�
=�
NULL
) {
244
�r�tf
(
�d�r
, "Code generation: divide by NULL\n");
245
gNULL
;
246 } i�(
gl�
=�
NULL
) {
247
d��e
r�
;
248
gNULL
;
251
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
252
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
254
�w
CG_�r�gR�r
("�tDiv(" +
l�S�
+ "," +
r�S�
+ ")");
257
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eI�eg�Mod
(CG_ou�utR�r*
l�
,
258
CG_ou�utR�r
*
r�
) const {
259 i�(
gr�
=�
NULL
||
l�
== NULL) {
260
NULL
;
263
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
264
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
266
�w
CG_�r�gR�r
("�tMod(" +
l�S�
+ "," +
r�S�
+ ")");
269
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eI�eg�Ce�
(CG_ou�utR�r*
l�
,
270
CG_ou�utR�r
*
r�
) const {
271 i�(
gr�
=�
NULL
||
l�
== NULL) {
272
NULL
;
275
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
276
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
278
�w
CG_�r�gR�r
("�tCe�(" +
l�S�
+ "," +
r�S�
+ ")");
281
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eAnd
(CG_ou�utR�r*
l�
,
282
CG_ou�utR�r
*
r�
) const {
283 i�(
gr�
=�
NULL
)
284
l�
;
285 i�(
gl�
=�
NULL
)
286
r�
;
288
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
289
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
291
�w
CG_�r�gR�r
(
l�S�
+ " && " +
r�S�
);
294
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eGE
(CG_ou�utR�r*
l�
,
295
CG_ou�utR�r
*
r�
) const {
296 i�(
gr�
=�
NULL
||
l�
== NULL) {
297
NULL
;
300
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
301
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
303
�w
CG_�r�gR�r
(
l�S�
+ " >�" +
r�S�
);
306
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eLE
(CG_ou�utR�r*
l�
,
307
CG_ou�utR�r
*
r�
) const {
308 i�(
gr�
=�
NULL
||
l�
== NULL) {
309
NULL
;
312
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
313
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
315
�w
CG_�r�gR�r
(
l�S�
+ " <�" +
r�S�
);
318
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
C��eEQ
(CG_ou�utR�r*
l�
,
319
CG_ou�utR�r
*
r�
) const {
320 i�(
gr�
=�
NULL
||
l�
== NULL) {
321
NULL
;
324
g�d
::
�r�g
l�S�
=
G�S��g
(
l�
);
325
g�d
::
�r�g
r�S�
=
G�S��g
(
r�
);
327
�w
CG_�r�gR�r
(
l�S�
+ " =�" +
r�S�
);
330
CG_ou�utR�r
*
gCG_�r�gBu�d�
::
StmtLi�A��d
(CG_ou�utR�r*
li�1
,
331
CG_ou�utR�r
*
li�2
) const {
332 i�(
gli�2
=�
NULL
) {
333
li�1
;
334 } i�(
gli�1
=�
NULL
) {
335
li�2
;
338
g�d
::
�r�g
li�1S�
=
G�S��g
(
li�1
);
339
g�d
::
�r�g
li�2S�
=
G�S��g
(
li�2
);
341
�w
CG_�r�gR�r
(
li�1S�
+
li�2S�
);
347
g�d
::
�r�g
G�Ind�tS��s
(
�d�t
) {
348
�d
::
�r�g
�d�tS�
;
349
gi
= 1; i <
g�d�t
; i++) {
350
g�d�tS�
+= " ";
352
g�d�tS�
;
359
g�d
::
�r�g
G�S��g
(
CG_ou�utR�r
*
��
) {
360
�d
::
�r�g
�su�
=
��ic_��
<
CG_�r�gR�r
*>(
��
)->
G�S��g
();
361
d��e
g��
;
362
g�su�
;
365
g�d
::
�r�g
Sa�gu�dS��g
(cڡ
�d
::�r�g &
s
,
�
) {
366
g�n
=
s
.
�ngth
();
367
g��n_�v�
= 0;
368
gnum_�usm�us
= 0;
369
gnum_mul
= 0;
370
gnum_div
= 0;
371
gi
= 0; i <
g�n
; i++)
372
gs
[
i
]) {
374
��n_�v�
++;
377
��n_�v�
--;
381 i�(
��n_�v�
== 0)
382
num_�usm�us
++;
385 i�(
��n_�v�
== 0)
386
num_mul
++;
389 i�(
��n_�v�
== 0)
390
num_div
++;
396
bo�
g�ed_��n
=
�l�
;
397
g�
) {
399 i�(
num_�usm�us
> 0)
400
�ed_��n
=
�ue
;
403 i�(
num_�usm�us
> 0 ||
num_div
> 0)
404
�ed_��n
=
�ue
;
407 i�(
num_�usm�us
> 0 ||
num_div
> 0 ||
num_mul
> 0)
408
�ed_��n
=
�ue
;
414 i�(
g�ed_��n
)
415 "(" +
gs
+ ")";
417
gs
;
@CG_stringRepr.cc
16
~<code_g�/CG_�r�gR�r.h
>
17
~<�dio.h
>
19
�me�a�
gomega
{
21
gCG_�r�gR�r
::
CG_�r�gR�r
() {
24
CG_�r�gR�r
::CG_�r�gR�r(cڡ
�d
::
�r�g
&
_s
�:
s
(_s) {
27
CG_�r�gR�r
::~CG_stringRepr() {
30
CG_ou�utR�r
*
CG_�r�gR�r
::
��e
() {
31
�w
CG_�r�gR�r
(
s
);
38
g�d
::
�r�g
CG_�r�gR�r
::
G�S��g
() const {
39
s
;
46
gCG_�r�gR�r
::
Dump
() const {
47
��tf
("%s\n",
s
.
c_�r
());
50
gCG_�r�gR�r
::
DumpToF�e
(
FILE
*
�
) const {
51
�r�tf
(
�
,"%s",
s
.
c_�r
());
@CG_suifBuilder.cc
15
~<�ack
>
16
~<code_g�/CG_suifBu�d�.h
>
17
~<suif1/�n�e.h
>
18
~<ve��
>
20
�me�a�
gomega
{
25 *
gk_ocg_comm�t
;
26 *
gk_s2c_�agma
;
27 *
gk_cuda_dim3
;
28 *
gk_cuda_k��l
;
29 *
gk_cuda_modif�r
;
30 *
gk_cuda_�xtu�_mem�y
;
38
Tu�e
< Tu�e<> >
smtN�S��Lev�s
;
39
Tu�e
< Tu�e<
�d
::
�r�g
> >
lo�IdxNames
;
40
�d
::
ve��
< std::
��
<, std::
�r�g
> >
syncs
;
41
checkLo�Lev�
;
42
�mtF�Lo�Check
;
43
u��BoundF�Lev�
;
44
low�BoundF�Lev�
;
45
bo�
f�lInBounds
;
48 cڡ *
glibcode_g�_v�_�r�g
= "";
49 cڡ *
glibcode_g�_who_�r�g
= "";
50 cڡ *
glibcode_g�_suif_�r�g
= "";
53
��_code_g�
() {
54
bo�
gisIn�
=
�l�
;
55 if(!
gisIn�
)
57
gisIn�
=
�ue
;
58
ANNOTE
(
k_ocg_comm�t
, "omega_comm�t",
TRUE
);
59
ANNOTE
(
k_s2c_�agma
, "s2��agma",
TRUE
);
60
ANNOTE
(
k_cuda_dim3
, "cud�dim3",
TRUE
);
61
ANNOTE
(
k_cuda_k��l
, "cud�k��l",
TRUE
);
62
ANNOTE
(
k_cuda_modif�r
, "cud�modif�r",
TRUE
);
67
ex�_code_g�
() {
75
gCG_suifBu�d�
::
CG_suifBu�d�
(
�oc_sym�b
*
sym�b
)
77
sym�b_
=
sym�b
;
78
��_code_g�
();
81
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eP��H�d�
(, CG_ou�utR��*
�mt
,
82
Tu�e
<
CG_ou�utR�r
*> &
funcLi�
, Tu�e<
�d
::
�r�g
> &
lo�_v�s
) const {
83
��_node_li�
*
�l
=
��ic_��
<
CG_suifR�r
*>(
�mt
)->
�l_
;
84
d��e
g�mt
;
86
gi
= 1; i <�
funcLi�
.
size
(); i++) {
87 i�(
gfuncLi�
[
i
] =�
NULL
)
90
CG_suifR�r
*
g��
=
��ic_��
<CG_suifR�r*>(
funcLi�
[
i
]);
91
ݔ�d
g�
=
��
->
�_
;
92
d��e
g��
;
94
v�_sym
*
gvs
=
��ic_��
<v�_sym*>(
sym�b_
->
lookup_sym
(
lo�_v�s
[
i
].
c_�r
(),
SYM_VAR
));
96
sub��u�
(
�l
,
vs
,
�
,
sym�b_
);
98 i�(
g�
.
is_��r
())
99
d��e
g�
.
��r
();
102
�w
CG_suifR�r
(
�l
);
106
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eAssignm�t
(, CG_ou�utR��*
lhs
,
107
CG_ou�utR�r
*
rhs
) const {
108 i��
glhs
=�
NULL
||
rhs
== NULL ) {
109
�r�tf
(
�d�r
, "Code generation: Missing�hs or�hs\n");
110
gNULL
;
113
ݔ�d
g�c
=
��ic_��
<
CG_suifR�r
*>(
rhs
)->
�_
;
114 i�(
g�c
.
is_��r
(�&& src.
��r
()->
�code
(�=�
io_��y
) {
115
�_��y
*
�
=
��ic_��
<�_��y *>(
�c
.
��r
());
116
��ru�i�
*
g�s
=
�w
�_�r
(
io_lod
,
�
->
�em_ty�
(),
ݔ�d
(), ia);
117
g�c
=
ݔ�d
(
�s
);
120
��ru�i�
*
g�s
;
121
ݔ�d
gd�
=
��ic_��
<
CG_suifR�r
*>(
lhs
)->
�_
;
122 i�(
gd�
.
is_��r
(�&& d�.
��r
()->
�code
(�=�
io_��y
) {
123
�_��y
*
�
=
��ic_��
<�_��y *>(
d�
.
��r
());
124
g�s
=
�w
�_�r
(
io_�r
,
ty�_void
,
ݔ�d
(), o��nd(
�
),
�c
);
127
g�s
=
�w
�_�r
(
io_�y
,
�c
.
ty�
(),
d�
, src);
129
d��e
glhs
;
130
d��e
grhs
;
132
��_node_li�
*
g�l
=
�w
�ree_node_list;
133
g�l
->
��nd
(
�w
��_��r
(
�s
));
135
�w
CG_suifR�r
(
�l
);
139
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eInvoke
(cڡ
�d
::
�r�g
&
�ame
,
140
Tu�e
<
CG_ou�utR�r
*> &
li�
) const {
141 i�(
g�ame
=�
�d
::
�r�g
("max"�||
�ame
== std::string("min")) {
142 i�(
li�
.
size
() == 0) {
143
NULL
;
145 i�(
gli�
.
size
() == 1) {
146
li�
[1];
149
gϡ
=
li�
.
size
();
150
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
li�
[
ϡ
])->
�_
;
151
d��e
gli�
[
ϡ
];
152
gli�
.
d��e_ϡ
();
153
CG_suifR�r
*
g��
=
��ic_��
<CG_suifR�r*>(
C��eInvoke
(
�ame
,
li�
));
154
ݔ�d
g�1
=
��
->
�_
;
156
��ru�i�
*
g�s
;
157 i�(
g�ame
=�
�d
::
�r�g
("max"))
158
�s
=
�w
�_�r
(
io_max
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
160
g�s
=
�w
�_�r
(
io_m�
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
162
g��
->
g�_
=
ݔ�d
(
�s
);
164
g��
;
168
�r�tf
(
�d�r
, "Code generation: invoke function io_call�ot implemented\n");
169
gNULL
;
174
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eA�ribu�
(CG_ou�utR��*
cڌ�
,
175 cڡ
�d
::
�r�g
&
comm�tText
)const {
176 i�(
comm�tText
=�
�d
::
�r�g
("")) {
177
cڌ�
;
180
��ru�i�
*
g�s
=
�w
�_�r
(
io_mrk
);
182
immed_li�
*
giml
=
�w
immed_list;
183
giml
->
��nd
(
immed
(
cڡ_��
<*>(
comm�tText
.
c_�r
())));
184
g�s
->
���d_�n�e
(
k_ocg_comm�t
,
iml
);
186
��_node_li�
*
g�l
;
187
g�l
=
��ic_��
<
CG_suifR�r
*>(
cڌ�
)->
�l_
;
188
g�l
->
��nd
(
�w
��_��r
(
�s
));
191
�w
CG_suifR�r
(
�l
);
198
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eComm�t
(, cڡ
�d
::
�r�g
&
comm�tText
) const {
199 i��
comm�tText
=�
�d
::
�r�g
("") ) {
200
NULL
;
203
��ru�i�
*
g�s
=
�w
�_�r
(
io_mrk
);
205
immed_li�
*
giml
=
�w
immed_list;
206
giml
->
��nd
(
immed
(
cڡ_��
<*>(
comm�tText
.
c_�r
())));
207
g�s
->
���d_�n�e
(
k_ocg_comm�t
,
iml
);
209
��_node_li�
*
g�l
=
�w
�ree_node_list;
210
g�l
->
��nd
(
�w
��_��r
(
�s
));
212
�w
CG_suifR�r
(
�l
);
216
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eIf
(, CG_ou�utR��*
gu�dLi�
,
217
CG_ou�utR�r
*
�ue_�mtLi�
, CG_ou�utR��*
�l�_�mtLi�
) const {
218
gif_cou��
= 1;
219
g�d
::
�r�g
s
=
�d
::�r�g("omegaif_")+
to_�r�g
(
if_cou��
++);
220
�b�_sym
*
gif_�b�
=
�w
�ab�_sym(
cڡ_��
<*>(
s
.
c_�r
()));
221
gsym�b_
->
add_sym
(
if_�b�
);
223 i��
g�ue_�mtLi�
=�
NULL
&&
�l�_�mtLi�
== NULL ) {
224
d��e
gu�dLi�
;
225
gNULL
;
227 i��
ggu�dLi�
=�
NULL
) {
228
StmtLi�A��d
(
�ue_�mtLi�
,
�l�_�mtLi�
);
231
��_node_li�
*
gh�d�
=
�w
�ree_node_list;
232
ݔ�d
g�
=
��ic_��
<
CG_suifR�r
*>(
gu�dLi�
)->
�_
;
234
g�d
::
�ack
<*>
S
;
235
gS
.
push
(
�
.
��r
());
236 !
gS
.
em�y
()) {
237
��ru�i�
*
g�s
=
��ic_��
<��ru�i� *>(
S
.
t�
());
238
gS
.
p�
();
239 i�(
g�s
->
�code
(�=�
io_�d
) {
240
��ru�i�
*
�s1
=
�s
->
�c_�
(0).
��r
();
241
g�s1
->
�move
();
242
gS
.
push
(
�s1
);
243
��ru�i�
*
g�s2
=
�s
->
�c_�
(1).
��r
();
244
g�s2
->
�move
();
245
gS
.
push
(
�s2
);
246
d��e
g�s
;
249
g�s
=
�w
�_bj
(
io_b�l�
,
if_�b�
,
ݔ�d
(
�s
));
250
gh�d�
->
��nd
(
�w
��_��r
(
�s
));
254
��_node_li�
*
gth�_��
, *
g��_��
;
255 i�(
g�ue_�mtLi�
!�
NULL
)
256
th�_��
=
��ic_��
<
CG_suifR�r
*>(
�ue_�mtLi�
)->
�l_
;
258
gth�_��
=
NULL
;
259 i�(
g�l�_�mtLi�
!�
NULL
)
260
��_��
=
��ic_��
<
CG_suifR�r
*>(
�l�_�mtLi�
)->
�l_
;
262
g��_��
=
NULL
;
263
��_if
*
gti
=
�w
��e_if(
if_�b�
,
h�d�
,
th�_��
,
��_��
);
265
��_node_li�
*
g�l
=
�w
�ree_node_list;
266
g�l
->
��nd
(
ti
);
268
d��e
ggu�dLi�
;
269
d��e
g�ue_�mtLi�
;
270
d��e
g�l�_�mtLi�
;
272
�w
CG_suifR�r
(
�l
);
276
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eIndu�ive
(CG_ou�utR��*
�dex
,
277
CG_ou�utR�r
*
low�
,
278
CG_ou�utR�r
*
u��
,
279
CG_ou�utR�r
*
��
) const {
280 i��
g�dex
=�
NULL
||
low�
=�NULL ||
u��
== NULL ) {
281
�r�tf
(
�d�r
, "Code generation: something wrong in CreateInductive\n");
282
gNULL
;
285 i�(
g��
=�
NULL
)
286
��
=
C��eI�
(1);
288
v�_sym
*
g�dex_sym
=
��ic_��
<
CG_suifR�r
*>(
�dex
)->
�_
.
symb�
();
289
ݔ�d
glow�_bound
=
��ic_��
<
CG_suifR�r
*>(
low�
)->
�_
;
290
ݔ�d
gu��_bound
=
��ic_��
<
CG_suifR�r
*>(
u��
)->
�_
;
291
ݔ�d
g��_size
=
��ic_��
<
CG_suifR�r
*>(
��
)->
�_
;
293
�b�_sym
*
gc�tLab�
=
�w
�abel_sym("");
294
�b�_sym
*
gbrkLab�
=
�w
�abel_sym("");
295
gsym�b_
->
add_sym
(
c�tLab�
);
296
gsym�b_
->
add_sym
(
brkLab�
);
297
��_f�
*
gtf
=
�w
��e_f�(
�dex_sym
,
FOR_SLTE
,
c�tLab�
,
brkLab�
,
NULL
,
298
low�_bound
,
u��_bound
,
��_size
,
NULL
);
300
��_node_li�
*
g�l
=
�w
�ree_node_list;
301
g�l
->
��nd
(
tf
);
303
d��e
g�dex
;
304
d��e
glow�
;
305
d��e
gu��
;
306
d��e
g��
;
308
�w
CG_suifR�r
(
�l
);
312
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eLo�
(, CG_ou�utR��*
cڌ�
,
313
CG_ou�utR�r
*
�mtLi�
) const {
314 i��
g�mtLi�
=�
NULL
) {
315
d��e
cڌ�
;
316
gNULL
;
318 i��
gcڌ�
=�
NULL
) {
319
�r�tf
(
�d�r
, "Code generation:�o inductive for�his�oop\n");
320
g�mtLi�
;
323
��_node_li�
*
g�l
=
��ic_��
<
CG_suifR�r
*>(
cڌ�
)->
�l_
;
324
��_node_li�_��
��
(
�l
);
325
��_f�
*
gtf
=
��ic_��
<��_f�*>(
��
.
��
());
327
��_node_li�
*
gbody
=
��ic_��
<
CG_suifR�r
*>(
�mtLi�
)->
�l_
;
328
gtf
->
�t_body
(
body
);
330
d��e
g�mtLi�
;
332
gcڌ�
;
336
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eI�
(
_i
) const {
337
�_ldc
*
�s
=
�w
in_ldc(
ty�_s32
,
ݔ�d
(),
immed
(
_i
));
339
�w
CG_suifR�r
(
ݔ�d
(
�s
));
343
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eId�t
(cڡ
�d
::
�r�g
&
_s
) const {
344 i��&
_s
=�
NULL
|| _�=�
�d
::
�r�g
("") ) {
345
NULL
;
348
v�_sym
*
gvs
=
��ic_��
<v�_sym*>(
sym�b_
->
lookup_sym
(
_s
.
c_�r
(),
SYM_VAR
));
350 i�(
gvs
=�
NULL
) {
351
vs
=
�w
v�_sym
(
ty�_s32
,
cڡ_��
<*>(
_s
.
c_�r
()));
352
gsym�b_
->
add_sym
(
vs
);
355
�w
CG_suifR�r
(
ݔ�d
(
vs
));
359
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��ePlus
(CG_ou�utR��*
l�
,
360
CG_ou�utR�r
*
r�
) const {
361 i��
gr�
=�
NULL
) {
362
l�
;
364 i��
gl�
=�
NULL
) {
365
r�
;
368
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
369
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
371
��ru�i�
*
g�s
=
�w
�_�r
(
io_add
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
373
d��e
gl�
;
374
d��e
gr�
;
376
�w
CG_suifR�r
(
ݔ�d
(
�s
));
380
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eM�us
(CG_ou�utR��*
l�
,
381
CG_ou�utR�r
*
r�
) const {
382 i��
gr�
=�
NULL
) {
383
l�
;
385 i��
gl�
=�
NULL
) {
386
ݔ�d
�
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
387
��ru�i�
*
g�s
=
�w
�_�r
(
io_�g
,
�
.
ty�
(),
ݔ�d
(), op);
389
d��e
gr�
;
391
�w
CG_suifR�r
(
ݔ�d
(
�s
));
394
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
395
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
397
��ru�i�
*
g�s
=
�w
�_�r
(
io_sub
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
399
d��e
gl�
;
400
d��e
gr�
;
402
�w
CG_suifR�r
(
ݔ�d
(
�s
));
407
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eTimes
(CG_ou�utR��*
l�
,
408
CG_ou�utR�r
*
r�
) const {
409 i��
gr�
=�
NULL
||
l�
== NULL) {
410 i�(
r�
!�
NULL
) {
411
r�
->
��r
();
412
d��e
gr�
;
414 i�(
gl�
!�
NULL
) {
415
l�
->
��r
();
416
d��e
gl�
;
418
gNULL
;
421
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
422
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
424
��ru�i�
*
g�s
=
�w
�_�r
(
io_mul
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
426
d��e
gl�
;
427
d��e
gr�
;
429
�w
CG_suifR�r
(
ݔ�d
(
�s
));
433
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eI�eg�Divide
(CG_ou�utR��*
l�
,
434
CG_ou�utR�r
*
r�
) const {
435 i��
gr�
=�
NULL
) {
436
�r�tf
(
�d�r
, "Code generation: divide by NULL\n");
437
gNULL
;
439 i��
gl�
=�
NULL
) {
440
d��e
r�
;
441
gNULL
;
445
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
446
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
449
��ru�i�
*
g�s
=
�w
�_�r
(
io_div
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
451
d��e
gl�
;
452
d��e
gr�
;
454
�w
CG_suifR�r
(
ݔ�d
(
�s
));
458
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eI�eg�Mod
(CG_ou�utR��*
l�
,
459
CG_ou�utR�r
*
r�
) const {
460 i��
gr�
=�
NULL
||
l�
== NULL ) {
461
NULL
;
464
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
465
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
468
��ru�i�
*
g�s
=
�w
�_�r
(
io_�m
,
ty�_s32
,
ݔ�d
(),
�1
,
�2
);
470
d��e
gl�
;
471
d��e
gr�
;
473
�w
CG_suifR�r
(
ݔ�d
(
�s
));
477
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eAnd
(CG_ou�utR��*
l�
,
478
CG_ou�utR�r
*
r�
) const {
479 i�(
gr�
=�
NULL
)
480
l�
;
481 i�(
gl�
=�
NULL
)
482
r�
;
484
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
485
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
487
��ru�i�
*
g�s
=
�w
�_�r
(
io_�d
,
�1
.
ty�
(),
ݔ�d
(), op1,
�2
);
489
d��e
gl�
;
490
d��e
gr�
;
492
�w
CG_suifR�r
(
ݔ�d
(
�s
));
496
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eGE
(CG_ou�utR��*
l�
,
497
CG_ou�utR�r
*
r�
) const {
498
C��eLE
(
r�
,
l�
);
502
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eLE
(CG_ou�utR��*
l�
,
503
CG_ou�utR�r
*
r�
) const {
504 i��
gr�
=�
NULL
||
l�
== NULL ) {
505
NULL
;
508
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
509
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
511
��ru�i�
*
g�s
=
�w
�_�r
(
io_�e
,
ty�_s32
,
ݔ�d
(),
�1
,
�2
);
513
d��e
gl�
;
514
d��e
gr�
;
516
�w
CG_suifR�r
(
ݔ�d
(
�s
));
520
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eEQ
(CG_ou�utR��*
l�
,
521
CG_ou�utR�r
*
r�
) const {
522 i��
gr�
=�
NULL
||
l�
== NULL ) {
523
NULL
;
526
ݔ�d
g�1
=
��ic_��
<
CG_suifR�r
*>(
l�
)->
�_
;
527
ݔ�d
g�2
=
��ic_��
<
CG_suifR�r
*>(
r�
)->
�_
;
529
��ru�i�
*
g�s
=
�w
�_�r
(
io_�q
,
ty�_s32
,
ݔ�d
(),
�1
,
�2
);
531
d��e
gl�
;
532
d��e
gr�
;
534
�w
CG_suifR�r
(
ݔ�d
(
�s
));
539
CG_ou�utR�r
*
gCG_suifBu�d�
::
StmtLi�A��d
(CG_ou�utR��*
li�1
,
540
CG_ou�utR�r
*
li�2
) const {
541 i��
gli�2
=�
NULL
) {
542
li�1
;
544 i��
gli�1
=�
NULL
) {
545
li�2
;
548
��_node_li�
*
g�l1
=
��ic_��
<
CG_suifR�r
*>(
li�1
)->
�l_
;
549
��_node_li�
*
g�l2
=
��ic_��
<
CG_suifR�r
*>(
li�2
)->
�l_
;
550 i�(
g�l2
=�
NULL
)
551
�l1
->
��nd
(
�w
��_��r
(
��ic_��
<
CG_suifR�r
*>(
li�2
)->
�_
.
��r
()));
553
g�l1
->
��nd
(
�l2
);
555
d��e
gli�2
;
557
gli�1
;
565
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eP�gma
(,
566 cڡ
�d
::
�r�g
&
�agmaText
) const {
567 i��
�agmaText
=�
�d
::
�r�g
("") ) {
568
NULL
;
570
��ru�i�
*
g�s
=
�w
�_�r
(
io_mrk
);
571
immed_li�
*
giml
=
�w
immed_list;
572
giml
->
��nd
(
immed
(
cڡ_��
<*>(
�agmaText
.
c_�r
())));
573
g�s
->
��nd_�n�e
(
k_s2c_�agma
,
iml
);
574
��_node_li�
*
g�l
=
�w
�ree_node_list;
575
g�l
->
��nd
(
�w
��_��r
(
�s
));
576
�w
CG_suifR�r
(
�l
);
579
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eDim3
(
immed
v�Name
, immed
�g1
, immed
�g2
) const {
580
��ru�i�
*
g�s
=
�w
�_�r
(
io_mrk
);
581
immed_li�
*
giml
=
�w
immed_list;
582
giml
->
��nd
(
immed
(
v�Name
));
583
giml
->
��nd
(
�g1
);
584
giml
->
��nd
(
�g2
);
585
g�s
->
��nd_�n�e
(
k_cuda_dim3
,
iml
);
586
��_node_li�
*
g�l
=
�w
�ree_node_list;
587
g�l
->
��nd
(
�w
��_��r
(
�s
));
588
�w
CG_suifR�r
(
�l
);
591
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eDim3
(
immed
v�Name
, immed
�g1
, immed
�g2
, immed
�g3
) const {
592
��ru�i�
*
g�s
=
�w
�_�r
(
io_mrk
);
593
immed_li�
*
giml
=
�w
immed_list;
594
giml
->
��nd
(
immed
(
v�Name
));
595
giml
->
��nd
(
�g1
);
596
giml
->
��nd
(
�g2
);
597
giml
->
��nd
(
�g3
);
598
g�s
->
��nd_�n�e
(
k_cuda_dim3
,
iml
);
599
��_node_li�
*
g�l
=
�w
�ree_node_list;
600
g�l
->
��nd
(
�w
��_��r
(
�s
));
601
�w
CG_suifR�r
(
�l
);
604
CG_ou�utR�r
*
gCG_suifBu�d�
::
C��eK��l
(
immed_li�
*
iml
) const {
605
��ru�i�
*
�s
=
�w
�_�r
(
io_mrk
);
606
g�s
->
��nd_�n�e
(
k_cuda_k��l
,
iml
);
607
��_node_li�
*
g�l
=
�w
�ree_node_list;
608
g�l
->
��nd
(
�w
��_��r
(
�s
));
609
�w
CG_suifR�r
(
�l
);
612
ty�_node
*
gCG_suifBu�d�
::
ModifyTy�
�y�_node*
ba�
, cڡ *
modif�r
) const {
613
modif�r_ty�
*
g�su�
=
�w
modif�r_ty�(
TYPE_NULL
,
ba�
);
614
immed_li�
*
giml
=
�w
immed_list;
615
giml
->
��nd
(
immed
((*)
modif�r
));
616
g�su�
->
��nd_�n�e
(
k_cuda_modif�r
,
iml
);
617
g�su�
;
626
bo�
sub��u�
(
��ru�i�
*
�
,
v�_sym
*
sym
,
ݔ�d
ex�
,
ba�_sym�b
*
�
) {
627 i�(
g�
=�
NULL
||
sym
== NULL)
628
�l�
;
630
bo�
gr
=
�l�
;
631
gi
= 0; i <
g�
->
num_�cs
(); i++) {
632
ݔ�d
�
(
�
->
�c_�
(
i
));
634 i�(
g�
.
is_symb�
(�&& op.
symb�
(�=�
sym
) {
635
�
->
�t_�c_�
(
i
,
ex�
.
��e
(
�
));
636
gr
=
�ue
;
638 i�(
g�
.
is_��r
()) {
639
gr
=
sub��u�
(
�
.
��r
(),
sym
,
ex�
,
�
) ||�;
643
gr
;
646
bo�
sub��u�
(
��_node
*
�
,
v�_sym
*
sym
,
ݔ�d
ex�
,
ba�_sym�b
*
�
) {
647 i�(
g�
=�
NULL
)
648
�l�
;
650
bo�
gr
=
�l�
;
651 i�(
g�
->
k�d
(�=�
TREE_INSTR
)
652
r
=
sub��u�
(
��ic_��
<
��_��r
*>(
�
)->
��r
(),
sym
,
ex�
,
�
�||
gr
;
654
gi
= 0; i <
g�
->
num_ch�d_li�s
(); i++) {
655
gr
=
sub��u�
(
�
->
ch�d_li�_num
(
i
),
sym
,
ex�
,
�
) ||�;
659
gr
;
662
bo�
sub��u�
(
��_node_li�
*
�l
,
v�_sym
*
sym
,
ݔ�d
ex�
,
663
ba�_sym�b
*
�
) {
664 i�(
g�l
=�
NULL
)
665
�l�
;
667
bo�
gr
=
�l�
;
668
��_node_li�_��
��
(
�l
);
669 !
g��
.
is_em�y
()) {
670
��_node
*
g�
=
��
.
��
();
672
gr
=
sub��u�
(
�
,
sym
,
ex�
,
�
) ||�;
675
gr
;
@CG_suifRepr.cc
14
~<code_g�/CG_suifR�r.h
>
15
~<�dio.h
>
17
�me�a�
gomega
{
19
gCG_suifR�r
::
CG_suifR�r
():
�l_
(
NULL
),
�_
() {
22
gCG_suifR�r
::
CG_suifR�r
(
��_node_li�
*
�l
):
�l_
��),
�_
() {
25
gCG_suifR�r
::
CG_suifR�r
(
ݔ�d
�
):
�l_
(
NULL
),
�_
(op) {
28
gCG_suifR�r
::~
CG_suifR�r
() {
33
CG_ou�utR�r
*
CG_suifR�r
::
��e
() {
34 i�(!
�_
.
is_nu�
() ) {
35
ݔ�d
�
=
�_
.
��e
();
36
�w
CG_suifR�r
(
�
);
38 i�(
g�l_
!�
NULL
) {
39
��_node_li�
*
�l
=
�l_
->
��e
();
40
�w
CG_suifR�r
(
�l
);
43
�w
CG_suifR�r
();
46
gCG_suifR�r
::
��r
() {
47 i�(!
�_
.
is_nu�
()) {
48 i�(
�_
.
is_��r
())
49
d��e
�_
.
��r
();
50
g�_
.
�t_nu�
();
52 i�(
g�l_
!�
NULL
) {
53
d��e
�l_
;
54
g�l_
=
NULL
;
58
��_node_li�
*
gCG_suifR�r
::
G�Code
() const {
59
�l_
;
62
ݔ�d
gCG_suifR�r
::
G�Ex�essi�
() const {
63
�_
;
66
gCG_suifR�r
::
Dump
() const {
67 i�(
�l_
!�
NULL
)
68
�l_
->
��t
();
69 i�(!
g�_
.
is_nu�
())
70
g�_
.
��t
();
73
gCG_suifR�r
::
DumpToF�e
(
FILE
*
�
) const {
74 i�(
�l_
!�
NULL
)
75
�l_
->
��t
(
�
);
76 i�(!
g�_
.
is_nu�
())
77
g�_
.
��t
(
�
);
@code_gen.cc
16
~<omega.h
>
17
~<omega/R�_m�.h
>
18
~<basic/C���i�.h
>
19
~<basic/Bag.h
>
20
~<basic/M�.h
>
21
~<basic/ut�.h
>
22
~<basic/omega_�r�.h
>
23
~<m�h.h
>
24
~<ve��
>
26
~<code_g�/CG.h
>
27
~<code_g�/code_g�.h
>
28
~<code_g�/CG_ou�utBu�d�.h
>
29
~<code_g�/CG_ou�utR�r.h
>
30
~<code_g�/CG_�r�gBu�d�.h
>
31
~<code_g�/CG_�r�gR�r.h
>
32
~<code_g�/ou�ut_��.h
>
34
�me�a�
gomega
{
37
gϡ_�v�
;
38
S�Tu�e
g�w_IS
;
39
S�Tu�eTu�e
g�oje�ed_nIS
;
40
gTu�e
<
gCG_ou�utR�r
*>
g��em�tInfo
;
41
R�Tu�e
g��sf�m�i�s
;
44
gTu�e
< Tu�e<> >
gsmtN�S��Lev�s
;
45
gTu�e
< Tu�e<
g�d
::
�r�g
> >
lo�IdxNames
;
46
g�d
::
ve��
<
�d
::
��
<, std::
�r�g
> >
syncs
;
51
gcheckLo�Lev�
;
52
g�mtF�Lo�Check
;
53
gu��BoundF�Lev�
;
54
glow�BoundF�Lev�
;
55
bo�
gf�lInBounds
;
58 �as�
cJunkS�ticIn�
{
gpublic
:
JunkS�ticIn�
(){
checkLo�Lev�
=0;
gf�lInBounds
=
�l�
;} };
59
JunkS�ticIn�
gjunkIn�In���__
;
64
CG_�su�
*
g�_�cursive
(
�v�
,
I�Tu�e
&
isA�ive
);
67
gcode_g�_debug
=0;
70
S�Tu�e
$f��r_fun�i�_symb�s
(
S�Tu�e
&
�ts
,
bo�
k�p_fs
){
71
S�Tu�e
`�w_�ts
(
�ts
.
`size
());
72
i
= 1; i <�
�ts
.
`size
(); i++) {
73
R��i�
R
=
�ts
[
i
];
74
R��i�
&
S
=
�w_�ts
[
i
];
75
`as��
(
R
.
`is_�t
());
77
S
=
`R��i�
(
R
.
`n_�t
());
78
S
.
`c�y_�mes
(
R
);
79
F_Exi�s
*
�
=
S
.
`add_exi�s
();
80
F_Or
*
fo
=
�
->
`add_�
();
81
DNF_I��t�
`D
(
R
.
`qu�y_DNF
());
D
; D++) {
82
F_And
*
�
=
fo
->
`add_�d
();
83
V��b�_ID_Tu�e
&
�dlo�ls
= (*
D
)->
`lo�ls
();
84
Se�i�
<
V��b�_ID
>
�wlo�ls
=
�
->
`de��e_tu�e
(
�dlo�ls
.
`size
());
91
EQ_I��t�
`e
(*
D
);
e
;�++)
92 if((
`max_fs_��y
(*
e
�> 0�=�
k�p_fs
){
93
EQ_H�d�
n
=
�
->
`add_EQ
();
94
Cڡr_V�s_I�r
`cvi
(*
e
,
�l�
);
cvi
;cvi++)
95 if((*
cvi
).
v�
->
`k�d
(�=�
W�d�rd_V�
)
96
n
.
`upd�e_c�f
(
�wlo�ls
[
�dlo�ls
.
`�dex
((*
cvi
).
v�
)],
97 (*
cvi
).
c�f
);
99 if((*
cvi
).
v�
->
`k�d
(�=�
Glob�_V�
)
100
n
.
`upd�e_c�f
(
S
.
`g�_lo�l
((*
cvi
).
v�
->
`g�_glob�_v�
(),
101 (*
cvi
).
v�
->
`fun�i�_of
()),
102 (*
cvi
).
c�f
);
104
n
.
`upd�e_c�f
((*
cvi
).
v�
,(*cvi).
c�f
);
105
n
.
`upd�e_cڡ
((*
e
).
`g�_cڡ
());
106
n
.
`f��ize
();
109
GEQ_I��t�
`g
(*
D
);
g
; g++)
110 if((
`max_fs_��y
(*
g
�> 0�=�
k�p_fs
) {
111
GEQ_H�d�
n
=
�
->
`add_GEQ
();
112
Cڡr_V�s_I�r
`cvi
(*
g
,
�l�
);
cvi
;cvi++)
113 if((*
cvi
).
v�
->
`k�d
(�=�
W�d�rd_V�
)
114
n
.
`upd�e_c�f
(
�wlo�ls
[
�dlo�ls
.
`�dex
((*
cvi
).
v�
)],
115 (*
cvi
).
c�f
);
117 if((*
cvi
).
v�
->
`k�d
(�=�
Glob�_V�
)
118
n
.
`upd�e_c�f
(
S
.
`g�_lo�l
((*
cvi
).
v�
->
`g�_glob�_v�
(),
119 (*
cvi
).
v�
->
`fun�i�_of
()),
120 (*
cvi
).
c�f
);
122
n
.
`upd�e_c�f
((*
cvi
).
v�
,(*cvi).
c�f
);
123
n
.
`upd�e_cڡ
((*
g
).
`g�_cڡ
());
124
n
.
`f��ize
();
127
S
.
`f��ize
();
130
�w_�ts
;
131
}
}
134
R�Tu�e
$�r�_fun�i�_symb�s
(
S�Tu�e
&
�ts
) {
135
`f��r_fun�i�_symb�s
(
�ts
,
�l�
);
136
}
}
138
R�Tu�e
$ex�a�_fun�i�_symb�s
(
S�Tu�e
&
�ts
) {
139
`f��r_fun�i�_symb�s
(
�ts
,
�ue
);
140
}
}
143
g�d
::
�r�g
$MMG���eCode
(
R�Tu�e
&
T
,
S�Tu�e
&
�d_IS
,
R��i�
&
known
,
eff�t
) {
144
Tu�e
<
CG_ou�utR�r
*>
�meInfo
;
145
�mt
= 1; stm�<�
T
.
`size
(); stmt++)
146
�meInfo
.
`��nd
(
�w
`CG_�r�gR�r
("s" +
`to_�r�g
(
�mt
)));
148
CG_�r�gBu�d�
ocg
;
149
CG_�r�gR�r
*
sR�r
=
��ic_��
<CG_�r�gR��*>(
`MMG���eCode
(&
ocg
,
T
,
�d_IS
,
�meInfo
,
known
,
eff�t
));
151
i
= 1; i <�
�meInfo
.
`size
(); i++)
152
d��e
�meInfo
[
i
];
153 i�(
sR�r
!�
NULL
)
154
`G�S��g
(
sR�r
);
156
�d
::
`�r�g
();
157
}
}
163
CG_ou�utR�r
*
MMG���eCode
(
CG_ou�utBu�d�
*
ocg
,
R�Tu�e
&
T
,
S�Tu�e
&
�d_IS
, cڡ
Tu�e
<CG_ou�utR��*> &
�mt_cڋ�
,
R��i�
&
known
,
eff�t
) {
164
g�mts
=
T
.
size
();
165 i�(
g�mts
== 0)
166
ocg
->
C��eComm�t
(1, "No statements found!");
167 i�(!
gknown
.
is_nu�
())
168
gknown
.
sim�ify
();
171
gmaxStmt
= 1;
172
gϡ_�v�
= 0;
173
g�mt
= 1; stm�<�
�mts
; stmt++) {
174
g�d_dim
=
T
[
�mt
].
n_out
();
175 i�(
g�d_dim
>
gϡ_�v�
)
176
gϡ_�v�
=
�d_dim
;
178
gi
= 1; i <�
�d_IS
[
�mt
].
n_�t
(); i++)
179
gT
[
�mt
].
�me_�put_v�
(
i
,
�d_IS
[�mt].
�t_v�
(i)->
�me
());
180
gi
= 1; i <�
�d_dim
; i++)
181
gT
[
�mt
].
�me_ou�ut_v�
(
i
,
�d
::
�r�g
("t")+
to_�r�g
(i));
182
gT
[
�mt
].
�tup_�mes
();
184
R��i�
gR
=
R�ge
(
Re�ri�_Doma�
(
c�y
(
T
[
�mt
]), c�y(
�d_IS
[stmt])));
185
gR
.
sim�ify
();
186
gR
.
is_u��_bound_�tisf�b�
()) {
187
g�w_IS
.
��lo��
(
maxStmt
);
188
g��sf�m�i�s
.
��lo��
(
maxStmt
);
189
g��em�tInfo
.
��lo��
(
maxStmt
);
190
DNF
*
gdnf
=
R
.
qu�y_DNF
();
191
DNF_I��t�
c
(
dnf
);
192
R��i�
gR2
= R��i�(
R
, *
c
);
193
gR2
.
sim�ify
();
194 i�(
gR2
.
is_�exa�
())
195
throw
codeg�_�r�
("unknown constraint in�oop bounds");
196 i�(
gknown
.
is_nu�
()) {
197
g�w_IS
[
maxStmt
] =
R2
;
198
g��sf�m�i�s
[
maxStmt
] =
T
[
�mt
];
199
g��em�tInfo
[
maxStmt
] =
�mt_cڋ�
[
�mt
];
200
gmaxStmt
++;
203
R��i�
gR2_ex�nded
=
c�y
(
R2
);
204
R��i�
gknown_ex�nded
=
c�y
(
known
);
205 i�(
gR2
.
n_�t
(�>
gknown
.n_set())
206
gknown_ex�nded
=
Ex�nd_S�
(
known_ex�nded
,
R2
.
n_�t
()-
known
.n_set());
207 i�(
gR2
.
n_�t
(�<
gknown
.n_set())
208
gR2_ex�nded
=
Ex�nd_S�
(
R2_ex�nded
,
known
.
n_�t
()-
R2
.n_set());
209 i�(
I����i�
(
R2_ex�nded
,
known_ex�nded
).
is_u��_bound_�tisf�b�
()) {
210
g�w_IS
[
maxStmt
] =
R2
;
211
g��sf�m�i�s
[
maxStmt
] =
T
[
�mt
];
212
g��em�tInfo
[
maxStmt
] =
�mt_cڋ�
[
�mt
];
213
gmaxStmt
++;
216
gc
.
�xt
();
217 i�(!
gc
.
live
())
219 if(
gcode_g�_debug
) {
220
�r�tf
(
DebugF�e
, "splitting iteration space for disjoint form\n");
221
�r�tf
(
DebugF�e
, "Original iteration space: \n");
222
gR
.
��t_w�h_subs
(
DebugF�e
);
223
�r�tf
(
DebugF�e
, "First conjunct: \n");
224
gR2
.
��t_w�h_subs
(
DebugF�e
);
226
R��i�
�ma�d�
(
R
, *
c
);
227
gc
.
�xt
();
228
gc
.
live
()) {
229
g�ma�d�
=
Uni�
(
�ma�d�
,
R��i�
(
R
, *
c
));
230
gc
.
�xt
();
232
gR
=
Dif�n�
(
�ma�d�
,
c�y
(
R2
));
233
gR
.
sim�ify
();
234 if(
gcode_g�_debug
) {
235
�r�tf
(
DebugF�e
, "Remaining iteration space: \n");
236
gR
.
��t_w�h_subs
(
DebugF�e
);
242
g�mts
=
maxStmt
-1;
243 if(
g�mts
== 0)
244
ocg
->
C��eComm�t
(1, "No�oints in�ny of�he iteration spaces!");
247
g�mt
= 1; stm�<�
�mts
; stmt++) {
248
g�d_dim
=
�w_IS
[
�mt
].
n_�t
();
249 i�(
g�d_dim
<
gϡ_�v�
) {
250
g�w_IS
[
�mt
] =
Ex�nd_S�
(
�w_IS
[�mt],
ϡ_�v�
-
�d_dim
);
251
F_And
*
gf_ro�
=
�w_IS
[
�mt
].
�d_w�h_�d
();
252
gi
=
�d_dim
+1; i <�
ϡ_�v�
; i++) {
253
EQ_H�d�
gh
=
f_ro�
->
add_EQ
();
254
gh
.
upd�e_c�f
(
�w_IS
[
�mt
].
�t_v�
(
i
), 1);
255
gh
.
upd�e_cڡ
(
posInf��y
);
261 if(
gknown
.
is_nu�
()) {
262
gknown
=
R��i�
::
True
(
ϡ_�v�
);
264
gknown
=
Ex�nd_S�
(
known
,
ϡ_�v�
-known.
n_�t
());
265
gi
= 1; i <�
ϡ_�v�
; i++)
266
gknown
.
�me_�t_v�
(
i
,
�d
::
�r�g
("t")+
to_�r�g
(i));
267
gknown
.
�tup_�mes
();
270
g�oje�ed_nIS
.
��r
();
271
g�oje�ed_nIS
.
��lo��
(
ϡ_�v�
);
272
gi
= 1; i <�
ϡ_�v�
; i++ ) {
273
g�oje�ed_nIS
[
i
].
��lo��
(
�mts
);
275
g�mt
= 1; stm�<�
�mts
; stmt++) {
276 i�(
gϡ_�v�
> 0)
277
g�oje�ed_nIS
[
ϡ_�v�
][
�mt
] =
�w_IS
[stmt];
278
gi
=
ϡ_�v�
-1; i >= 1; i--) {
279
g�oje�ed_nIS
[
i
][
�mt
] =
Proje�
(
c�y
(
�oje�ed_nIS
[i+1][�mt]), i+1,
S�_V�
);
280
g�oje�ed_nIS
[
i
][
�mt
].
sim�ify
();
285
I�Tu�e
�lStmts
(
�mts
);
286
gi
= 1; i <�
�mts
; i++)
287
g�lStmts
[
i
] = 1;
288
CG_�su�
*
gcg
=
g�_�cursive
(1,
�lStmts
);
291
gcg
=
cg
->
�compu�
(
known
, known);
292
gcg
=
cg
->
f��_f��e_bounds
();
295
gi
= 1; i <�
m�
(
eff�t
,
cg
->
d�th
()); i++)
296
gcg
=
cg
->
li�Ov�h�d
(
i
);
299
gcg
->
hoi�Gu�d
();
303
CG_ou�utR�r
*
gsR�r
=
cg
->
��tR�r
(
ocg
, 1,
�d
::
ve��
<CG_ou�utR��*>(
ϡ_�v�
));
304
d��e
gcg
;
305
gcg
=
NULL
;
306
g�oje�ed_nIS
.
��r
();
307
g��sf�m�i�s
.
��r
();
308
g�w_IS
.
��r
();
310
gsR�r
;
314
CG_ou�utR�r
*
MMG���eCode
(
CG_ou�utBu�d�
*
ocg
,
R�Tu�e
&
T
,
S�Tu�e
&
�d_IS
,
315 cڡ
Tu�e
<
CG_ou�utR�r
*> &
�mt_cڋ�
,
R��i�
&
known
,
316
Tu�e
<
I�Tu�e
>&
smtN�S��Lev�s_
,
317
�d
::
ve��
< std::
��
<, std::
�r�g
> >
syncs_
,
318 cڡ
Tu�e
< Tu�e<
�d
::
�r�g
> >&
lo�IdxNames_
,
319
eff�t
) {
320
g�mts
=
T
.
size
();
321 i�(
g�mts
== 0)
322
ocg
->
C��eComm�t
(1, "No statements found!");
323 i�(!
gknown
.
is_nu�
())
324
gknown
.
sim�ify
();
328
gsmtN�S��Lev�s
=
smtN�S��Lev�s_
;
329
gsyncs
=
syncs_
;
330
glo�IdxNames
=
lo�IdxNames_
;
336
gmaxStmt
= 1;
337
gϡ_�v�
= 0;
338
g�mt
= 1; stm�<�
�mts
; stmt++) {
339
g�d_dim
=
T
[
�mt
].
n_out
();
340 i�(
g�d_dim
>
gϡ_�v�
)
341
gϡ_�v�
=
�d_dim
;
343
gi
= 1; i <�
�d_IS
[
�mt
].
n_�t
(); i++)
344
gT
[
�mt
].
�me_�put_v�
(
i
,
�d_IS
[�mt].
�t_v�
(i)->
�me
());
345
gi
= 1; i <�
�d_dim
; i++)
346
gT
[
�mt
].
�me_ou�ut_v�
(
i
,
�d
::
�r�g
("t")+
to_�r�g
(i));
347
gT
[
�mt
].
�tup_�mes
();
349
R��i�
gR
=
R�ge
(
Re�ri�_Doma�
(
c�y
(
T
[
�mt
]), c�y(
�d_IS
[stmt])));
350
gR
.
sim�ify
();
351
gR
.
is_u��_bound_�tisf�b�
()) {
352
g�w_IS
.
��lo��
(
maxStmt
);
353
g��sf�m�i�s
.
��lo��
(
maxStmt
);
354
g��em�tInfo
.
��lo��
(
maxStmt
);
357
gsmtN�S��Lev�s
.
��lo��
(
maxStmt
);
361
DNF
*
gdnf
=
R
.
qu�y_DNF
();
362
DNF_I��t�
c
(
dnf
);
363
R��i�
gR2
= R��i�(
R
, *
c
);
364
gR2
.
sim�ify
();
365 i�(
gR2
.
is_�exa�
())
366
throw
codeg�_�r�
("unknown constraint in�oop bounds");
367 i�(
gknown
.
is_nu�
()) {
368
g�w_IS
[
maxStmt
] =
R2
;
369
g��sf�m�i�s
[
maxStmt
] =
T
[
�mt
];
370
g��em�tInfo
[
maxStmt
] =
�mt_cڋ�
[
�mt
];
371
gmaxStmt
++;
374
R��i�
gR2_ex�nded
=
c�y
(
R2
);
375
R��i�
gknown_ex�nded
=
c�y
(
known
);
376 i�(
gR2
.
n_�t
(�>
gknown
.n_set())
377
gknown_ex�nded
=
Ex�nd_S�
(
known_ex�nded
,
R2
.
n_�t
()-
known
.n_set());
378 i�(
gR2
.
n_�t
(�<
gknown
.n_set())
379
gR2_ex�nded
=
Ex�nd_S�
(
R2_ex�nded
,
known
.
n_�t
()-
R2
.n_set());
380 i�(
I����i�
(
R2_ex�nded
,
known_ex�nded
).
is_u��_bound_�tisf�b�
()) {
381
g�w_IS
[
maxStmt
] =
R2
;
382
g��sf�m�i�s
[
maxStmt
] =
T
[
�mt
];
383
g��em�tInfo
[
maxStmt
] =
�mt_cڋ�
[
�mt
];
384
gmaxStmt
++;
387
gc
.
�xt
();
388 i�(!
gc
.
live
())
390 if(
gcode_g�_debug
) {
391
�r�tf
(
DebugF�e
, "splitting iteration space for disjoint form\n");
392
�r�tf
(
DebugF�e
, "Original iteration space: \n");
393
gR
.
��t_w�h_subs
(
DebugF�e
);
394
�r�tf
(
DebugF�e
, "First conjunct: \n");
395
gR2
.
��t_w�h_subs
(
DebugF�e
);
397
R��i�
�ma�d�
(
R
, *
c
);
398
gc
.
�xt
();
399
gc
.
live
()) {
400
g�ma�d�
=
Uni�
(
�ma�d�
,
R��i�
(
R
, *
c
));
401
gc
.
�xt
();
403
gR
=
Dif�n�
(
�ma�d�
,
c�y
(
R2
));
404
gR
.
sim�ify
();
405 if(
gcode_g�_debug
) {
406
�r�tf
(
DebugF�e
, "Remaining iteration space: \n");
407
gR
.
��t_w�h_subs
(
DebugF�e
);
413
g�mts
=
maxStmt
-1;
414 if(
g�mts
== 0)
415
ocg
->
C��eComm�t
(1, "No�oints in�ny of�he iteration spaces!");
418
g�mt
= 1; stm�<�
�mts
; stmt++) {
419
g�d_dim
=
�w_IS
[
�mt
].
n_�t
();
420 i�(
g�d_dim
<
gϡ_�v�
) {
421
g�w_IS
[
�mt
] =
Ex�nd_S�
(
�w_IS
[�mt],
ϡ_�v�
-
�d_dim
);
422
F_And
*
gf_ro�
=
�w_IS
[
�mt
].
�d_w�h_�d
();
423
gi
=
�d_dim
+1; i <�
ϡ_�v�
; i++) {
424
EQ_H�d�
gh
=
f_ro�
->
add_EQ
();
425
gh
.
upd�e_c�f
(
�w_IS
[
�mt
].
�t_v�
(
i
), 1);
426
gh
.
upd�e_cڡ
(
posInf��y
);
432 if(
gknown
.
is_nu�
()) {
433
gknown
=
R��i�
::
True
(
ϡ_�v�
);
435
gknown
=
Ex�nd_S�
(
known
,
ϡ_�v�
-known.
n_�t
());
436
gi
= 1; i <�
ϡ_�v�
; i++)
437
gknown
.
�me_�t_v�
(
i
,
�d
::
�r�g
("t")+
to_�r�g
(i));
438
gknown
.
�tup_�mes
();
441
g�oje�ed_nIS
.
��r
();
442
g�oje�ed_nIS
.
��lo��
(
ϡ_�v�
);
443
gi
= 1; i <�
ϡ_�v�
; i++ ) {
444
g�oje�ed_nIS
[
i
].
��lo��
(
�mts
);
446
g�mt
= 1; stm�<�
�mts
; stmt++) {
447 i�(
gϡ_�v�
> 0)
448
g�oje�ed_nIS
[
ϡ_�v�
][
�mt
] =
�w_IS
[stmt];
449
gi
=
ϡ_�v�
-1; i >= 1; i--) {
450
g�oje�ed_nIS
[
i
][
�mt
] =
Proje�
(
c�y
(
�oje�ed_nIS
[i+1][�mt]), i+1,
S�_V�
);
451
g�oje�ed_nIS
[
i
][
�mt
].
sim�ify
();
456
I�Tu�e
�lStmts
(
�mts
);
457
gi
= 1; i <�
�mts
; i++)
458
g�lStmts
[
i
] = 1;
459
CG_�su�
*
gcg
=
g�_�cursive
(1,
�lStmts
);
462
gcg
=
cg
->
�compu�
(
known
, known);
463
gcg
=
cg
->
f��_f��e_bounds
();
466
gi
= 1; i <�
m�
(
eff�t
,
cg
->
d�th
()); i++)
467
gcg
=
cg
->
li�Ov�h�d
(
i
);
470
gcg
->
hoi�Gu�d
();
474
CG_ou�utR�r
*
gsR�r
=
cg
->
��tR�r
(
ocg
, 1,
�d
::
ve��
<CG_ou�utR��*>(
ϡ_�v�
));
475
d��e
gcg
;
476
gcg
=
NULL
;
477
g�oje�ed_nIS
.
��r
();
478
g��sf�m�i�s
.
��r
();
479
g�w_IS
.
��r
();
481
gsR�r
;
484
CG_�su�
*
$g�_�cursive
(
�v�
,
I�Tu�e
&
isA�ive
) {
485
�mts
=
isA�ive
.
`size
();
487
S�
<>
a�ive
;
488
s
;
489
s
= 1; s <�
�mts
; s++)
490 if(
isA�ive
[
s
]�
a�ive
.
`���
(s);
492
`as��
(
a�ive
.
`size
() >= 1);
493 if(
�v�
>
ϡ_�v�
�
�w
`CG_�af
(
isA�ive
);
495 i�(
a�ive
.
`size
() == 1)
496
�w
`CG_lo�
(
isA�ive
,
�v�
,
`g�_�cursive
(level+1,isActive));
498
bo�
cڡ�tLev�
=
�ue
;
500
��_�l_size
;
501
c�f_t
��t
,
f�ish
;
502
f�ish
= -(
posInf��y
-1);
503
��t
=
posInf��y
;
504
Tu�e
<
c�f_t
>
`wh�
(
�mts
);
505
s
=1; s<=
�mts
; s++�i�(
isA�ive
[s]) {
506
c�f_t
lb
,
ub
;
507
��_�l_size
=
�oje�ed_nIS
[
�v�
][
s
].
`n_�t
();
508
�oje�ed_nIS
[
�v�
][
s
].
`s�g�_c�jun�
()
509 ->
`qu�y_v��b�_bounds
(
510
�oje�ed_nIS
[
�v�
][
s
].
`�t_v�
(level),
511
lb
,
ub
);
512 if(
code_g�_debug
) {
513
`�r�tf
(
DebugF�e
, "IS%d: "
c�f_fmt
" <�t%d <�" c�f_fm�"\n",
s
,
514
lb
,
�v�
,
ub
);
515
�oje�ed_nIS
[
�v�
][
s
].
`�efix_��t
(
DebugF�e
);
517 i�(
lb
!�
ub
) {
518
cڡ�tLev�
=
�l�
;
522
`�t_max
(
f�ish
,
lb
);
523
`�t_m�
(
��t
,
lb
);
524
wh�
[
s
] =
lb
;
529 i�(
cڡ�tLev�
&&
f�ish
-
��t
<�
�mts
) {
530
I�Tu�e
`�wA�ive
(
isA�ive
.
`size
());
531
i
=1; i<=
�mts
; i++)
532
�wA�ive
[
i
] =
isA�ive
[i] &&
wh�
[i] =�
��t
;
533
CG_�su�
*
r
=
�w
`CG_lo�
(
isA�ive
,
�v�
,
534
`g�_�cursive
(
�v�
+1,
�wA�ive
));
535
c�f_t
time
=
��t
+1;�im�<�
f�ish
;�ime++) {
536
cou�
= 0;
537
i
=1; i<=
�mts
; i++) {
538
�wA�ive
[
i
] =
isA�ive
[i] &&
wh�
[i] =�
time
;
539 i�(
�wA�ive
[
i
]�
cou�
++;
541 i�(
cou�
) {
542
R��i�
`��_�l
(
��_�l_size
);
543
GEQ_H�d�
g
=
��_�l
.
`�d_w�h_GEQ
();
544
g
.
`upd�e_c�f
(
��_�l
.
`�t_v�
(
�v�
),-1);
545
g
.
`upd�e_cڡ
(
time
-1);
547
r
=
�w
`CG_�l�
(
isA�ive
,
�v�
,
��_�l
,r,
548
�w
`CG_lo�
(
isA�ive
,
�v�
,
549
`g�_�cursive
(
�v�
+1,
�wA�ive
)));
552
r
;
560
R��i�
hu�
=
`Hu�
(
�oje�ed_nIS
[
�v�
],
isA�ive
,1);
562
R��i�
hu�
=
`Hu�
(
�oje�ed_nIS
[
�v�
],
isA�ive
,0);
565 if(
code_g�_debug
) {
566
`�r�tf
(
DebugF�e
, "Hu� (�v� %d�is:\n",
�v�
);
567
hu�
.
`�efix_��t
(
DebugF�e
);
571
I�Tu�e
`f��Chunk
(
isA�ive
);
572
I�Tu�e
`�c�dChunk
(
isA�ive
);
579
bo�
checkF�S��s
=
�ue
;
580
s
= 1; s <�
isA�ive
.
`size
(); s++){
581 i�(
isA�ive
[
s
]) {
582 if(
s
<
smtN�S��Lev�s
.
`size
(�&& smtN�S��Lev�s[s].
`�dex
(
�v�
-2) != 0){
583
checkF�S��s
=
�l�
;
590
s
= 1;
checkF�S��s
&& s <�
isA�ive
.
`size
(); s++)
591 i�(
isA�ive
[
s
]) {
592
R��i�
gi�
=
`Gi�
(
`c�y
(
�oje�ed_nIS
[
�v�
][
s
]),c�y(
hu�
),1);
593 i�(
gi�
.
`is_obvious_�ut�ogy
()) ;
594
gi�
.
`sim�ify
();
595
C�jun�
*
s_c�j
=
gi�
.
`s�g�_c�jun�
();
596
GEQ_I��t�
`G
(
s_c�j
);
G
; G++) {
597
R��i�
`��_�l
(
gi�
.
`n_�t
());
598
��_�l
.
`�d_w�h_GEQ
(*
G
);
599
V��b�_ID
v
=
`�t_v�
(
�v�
);
600
c�f_t
sign
= (*
G
).
`g�_c�f
(
v
);
601 if(
sign
> 0�
��_�l
=
`Com�em�t
(test_rel);
602 if(
code_g�_debug
) {
603
`�r�tf
(
DebugF�e
, "C�sid��g s�� from stm�%d:\n",
s
);
604
��_�l
.
`�efix_��t
(
DebugF�e
);
607
f��Chunk
[
s
] =
sign
<= 0;
608
�c�dChunk
[
s
] =
sign
> 0;
609
numb�F��
=
sign
<= 0;
610
numb�Sec�d
=
sign
> 0;
612
s2
= 1; s2 <�
isA�ive
.
`size
(); s2++)
613 i�(
isA�ive
[
s2
] && s2 !�
s
) {
614 if(
code_g�_debug
)
615
`�r�tf
(
DebugF�e
,"C�sid� stm�%d\n",
s2
);
616
bo�
t
=
`I����i�
(
`c�y
(
�oje�ed_nIS
[
�v�
][
s2
]),
617
`c�y
(
��_�l
)).
`is_u��_bound_�tisf�b�
();
618
bo�
f
=
`Dif�n�
(
`c�y
(
�oje�ed_nIS
[
�v�
][
s2
]),
619
`c�y
(
��_�l
)).
`is_u��_bound_�tisf�b�
();
620
`as��
(
t
||
f
);
621 if(
code_g�_debug
&&
t
&&
f
)
622
`�r�tf
(
DebugF�e
, "S�she��m�%d\n",
s2
);
623 i�(
t
&&
f
�
�xtGEQ
;
624 if(
code_g�_debug
) {
625 i�(
t
)
626
`�r�tf
(
DebugF�e
, "�u�f� stm�%d\n",
s2
);
628
`�r�tf
(
DebugF�e
, "�l� f� stm�%d\n",
s2
);
630 i�(
t
�
numb�F��
++;
631
numb�Sec�d
++;
632
f��Chunk
[
s2
] =
t
;
633
�c�dChunk
[
s2
] = !
t
;
636
`as��
(
numb�F��
+
numb�Sec�d
>1 && "Can't handle wildcard in iteration space");
637 if(
code_g�_debug
)
638
`�r�tf
(
DebugF�e
, "%d�rue, %d false\n",
639
numb�F��
,
640
numb�Sec�d
);
641 i�(
numb�F��
&&
numb�Sec�d
) {
643
�w
`CG_�l�
(
isA�ive
,
�v�
,
��_�l
,
644
`g�_�cursive
(
�v�
,
f��Chunk
),
645
`g�_�cursive
(
�v�
,
�c�dChunk
));
647
�xtGEQ
: ;
653
�w
`CG_lo�
(
isA�ive
,
�v�
,
`g�_�cursive
(level+1,isActive));
654
}
}
@output_repr.cc
16
~<omega.h
>
17
~<code_g�/CG_�r�gBu�d�.h
>
18
~<code_g�/ou�ut_��.h
>
19
~<basic/omega_�r�.h
>
20
~<m�h.h
>
21
~<�ack
>
22
~<ty��fo
>
24
�me�a�
gomega
{
26
Tu�e
<Tu�e<
R��i�
> >
�oje�ed_nIS
;
27
gv�_sub��uti�_th�sh�d
= 100;
29
u��BoundF�Lev�
;
30
low�BoundF�Lev�
;
31
bo�
f�lInBounds
;
37
�me�a�
gomega
{
39
g�d
::
��
<
EQ_H�d�
, >
f�d_sim�e�_assignm�t
(cڡ
R��i�
&
R_
,
V��b�_ID
v
, cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
);
42
g�me�a�
{
47
g�_�ride
(cڡ
Cڡ��t_H�d�
&
h
,
V��b�_ID
&
wc
,
c�f_t
&
��
){
48
gwc
= 0;
49
Cڡr_V�s_I�r
i
(
h
,
�ue
);
gi
; i++) {
50
as��
(
wc
== 0);
51
gwc
= (*
i
).
v�
;
52
g��
= ((*
i
).
c�f
);
58
CG_ou�utR�r
*
ou�utId�t
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
R_
,
V��b�_ID
v
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
59
R��i�
&
R
=
cڡ_��
<R��i� &>(
R_
);
61
gv
->
k�d
()) {
62
gS�_V�
: {
63
pos
=
v
->
g�_pos�i�
();
64 i�(
gassig�d_�_the_�y
[
pos
-1] !�
NULL
)
65
assig�d_�_the_�y
[
pos
-1]->
��e
();
67
gocg
->
C��eId�t
(
v
->
�me
());
70
gGlob�_V�
: {
71 i�(
v
->
g�_glob�_v�
()->
��y
() == 0)
72
ocg
->
C��eId�t
(
v
->
�me
());
76
g��y
=
v
->
g�_glob�_v�
()->
��y
();
78
gTu�e
<
gCG_ou�utR�r
*>
g�gLi�
;
82
gi
= 1; i <�
��y
; i++)
83
g�gLi�
.
��nd
(
ocg
->
C��eId�t
(
R
.
�t_v�
(
i
)->
�me
()));
84
CG_ou�utR�r
*
g��
=
ocg
->
C��eInvoke
(
v
->
g�_glob�_v�
()->
ba�_�me
(),
�gLi�
);
85
g��
;
90
throw
�d
::
�v�id_�gum�t
("wrong variable�ype");
101
g�d
::
��
<
CG_ou�utR�r
*,
gbo�
>
ou�utAssignm�t
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
R_
,
V��b�_ID
v
, R��i� &
�f��d
, CG_ou�utR��*&
if_��
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
102
R��i�
&
R
=
cڡ_��
<R��i� &>(
R_
);
104
C�jun�
*
gc
=
R
.
qu�y_DNF
()->
s�g�_c�jun�
();
107
EQ_I��t�
ei
(
c
);
gei
;�i++)
108 i�(!(*
gei
).
has_w�d�rds
(�&&
abs
((*
ei
).
g�_c�f
(
v
)) > 1) {
109
R��i�
r
(
R
.
n_�t
());
110
F_And
*
gf_su�r_ro�
=
r
.
add_�d
();
111
F_Exi�s
*
g�
=
f_su�r_ro�
->
add_exi�s
();
112
V��b�_ID
ge
=
�
->
de��e
();
113
F_And
*
gf_ro�
=
�
->
add_�d
();
114
EQ_H�d�
gh
=
f_ro�
->
add_EQ
();
115
Cڡr_V�s_I�r
cvi
(*
ei
);
gcvi
; cvi++)
116 (*
gcvi
).
gv�
->
k�d
()) {
117
gI�ut_V�
: {
118 i�((*
cvi
).
v�
=�
v
)
119
h
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
121
gh
.
upd�e_c�f
(
r
.
�t_v�
((*
cvi
).
v�
->
g�_pos�i�
()), (*cvi).
c�f
);
124
gGlob�_V�
: {
125
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
126
V��b�_ID
gv2
;
127 i�(
gg
->
��y
() == 0)
128
v2
=
r
.
g�_lo�l
(
g
);
130
gv2
=
r
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
131
gh
.
upd�e_c�f
(
v2
, (*
cvi
).
c�f
);
135
as��
(0);
137
gh
.
upd�e_cڡ
((*
ei
).
g�_cڡ
());
139
gr
.
c�y_�mes
(
R
);
140
gr
.
�tup_�mes
();
143 i�(!
Gi�
(
r
,
c�y
(
�f��d
), 1).
is_obvious_�ut�ogy
()) {
144
c�f_t
gc�f
= (*
ei
).
g�_c�f
(
v
);
145
c�f_t
gsign
= -((
c�f
>0)?1:-1);
146
gc�f
=
abs
(
c�f
);
148
CG_ou�utR�r
*
g�rm
=
NULL
;
149
Cڡr_V�s_I�r
cvi
(*
ei
);
gcvi
; cvi++)
150 i�((*
gcvi
).
gv�
!�
v
) {
151
CG_ou�utR�r
*
v�R�r
=
ou�utId�t
(
ocg
,
R
, (*
cvi
).
v�
,
assig�d_�_the_�y
);
152
c�f_t
gt
=
sign
*(*
cvi
).
c�f
;
153 i�(
gt
== 1)
154
�rm
=
ocg
->
C��ePlus
єm,
v�R�r
);
155 i�(
gt
== -1)
156
�rm
=
ocg
->
C��eM�us
єm,
v�R�r
);
157 i�(
gt
> 0)
158
g�rm
=
ocg
->
C��ePlus
(
�rm
, ocg->
C��eTimes
(ocg->
C��eI�
(
t
),
v�R�r
));
159 i�(
gt
< 0)
160
g�rm
=
ocg
->
C��eM�us
(
�rm
, ocg->
C��eTimes
(ocg->
C��eI�
(-
t
),
v�R�r
));
162
c�f_t
gt
=
sign
*(*
ei
).
g�_cڡ
();
163 i�(
gt
> 0)
164
g�rm
=
ocg
->
C��ePlus
(
�rm
, ocg->
C��eI�
(
t
));
165 i�(
gt
< 0)
166
g�rm
=
ocg
->
C��eM�us
(
�rm
, ocg->
C��eI�
(-
t
));
168
g�rm
=
ocg
->
C��eI�eg�Mod
(
�rm
, ocg->
C��eI�
(
c�f
));
169
g�rm
=
ocg
->
C��eEQ
(
�rm
, ocg->
C��eI�
(0));
171
gif_��
=
ocg
->
C��eAnd
(
if_��
,
�rm
);
174
g�f��d
.
�d_w�h_EQ
(*
ei
);
175
g�f��d
.
sim�ify
();
179
g�d
::
��
<
EQ_H�d�
, >
ga
=
f�d_sim�e�_assignm�t
(
R
,
v
,
assig�d_�_the_�y
);
182 i�(
ga
.
g�c�d
<
gINT_MAX
) {
183
EQ_H�d�
geq
=
a
.
f��
;
184
CG_ou�utR�r
*
gr�_��
=
NULL
;
186
c�f_t
gdivid�
=
eq
.
g�_c�f
(
v
);
187
gsign
= 1;
188 i�(
gdivid�
< 0) {
189
gdivid�
= -
divid�
;
190
gsign
= -1;
193
Cڡr_V�s_I�r
cvi
(
eq
);
gcvi
; cvi++)
194 i�((*
gcvi
).
gv�
!�
v
) {
195
CG_ou�utR�r
*
v�_��
=
ou�utId�t
(
ocg
,
R
, (*
cvi
).
v�
,
assig�d_�_the_�y
);
196
c�f_t
gc�f
= (*
cvi
).
c�f
;
197 i�(-
sign
*
gc�f
== -1)
198
r�_��
=
ocg
->
C��eM�us
��_��,
v�_��
);
199 i�(-
sign
*
gc�f
< -1)
200
gr�_��
=
ocg
->
C��eM�us
(
r�_��
, ocg->
C��eTimes
(ocg->
C��eI�
(
sign
*
c�f
),
v�_��
));
201 i�(-
sign
*
gc�f
== 1)
202
r�_��
=
ocg
->
C��ePlus
��_��,
v�_��
);
204
gr�_��
=
ocg
->
C��ePlus
(
r�_��
, ocg->
C��eTimes
(ocg->
C��eI�
(-
sign
*
c�f
),
v�_��
));
207
c�f_t
gc_�rm
= -(
eq
.
g�_cڡ
(�*
sign
);
209 i�(
gc_�rm
> 0)
210
gr�_��
=
ocg
->
C��ePlus
(
r�_��
, ocg->
C��eI�
(
c_�rm
));
211 i�(
gc_�rm
< 0)
212
gr�_��
=
ocg
->
C��eM�us
(
r�_��
, ocg->
C��eI�
(-
c_�rm
));
213 i�(
gr�_��
=�
NULL
)
214
r�_��
=
ocg
->
C��eI�
(0);
216 i�(
gdivid�
!= 1)
217
r�_��
=
ocg
->
C��eI�eg�Divide
��_��, ocg->
C��eI�
(
divid�
));
219
g�f��d
.
�d_w�h_EQ
(
eq
);
220
g�f��d
.
sim�ify
();
222 i�(
ga
.
g�c�d
>
gv�_sub��uti�_th�sh�d
)
223
g�d
::
make_��
(
r�_��
,
�ue
);
225
g�d
::
make_��
(
r�_��
,
�l�
);
228
g�d
::
make_��
(
��ic_��
<
CG_ou�utR�r
*>(
NULL
),
�l�
);
237
gTu�e
<
gCG_ou�utR�r
*>
ou�utSub��uti�
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
R_
, cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
238
R��i�
&
R
=
cڡ_��
<R��i� &>(
R_
);
240 cڡ
gn
=
R
.
n_out
();
241
gTu�e
<
gCG_ou�utR�r
*>
goR�rLi�
;
244
gi
= 1; i <�
n
; i++) {
245
R��i�
m�p�g
(
n
, 1);
246
F_And
*
gf_ro�
=
m�p�g
.
add_�d
();
247
EQ_H�d�
gh
=
f_ro�
->
add_EQ
();
248
gh
.
upd�e_c�f
(
m�p�g
.
ou�ut_v�
(1), 1);
249
gh
.
upd�e_c�f
(
m�p�g
.
�put_v�
(
i
), -1);
251
R��i�
gS
=
Compos�i�
(
m�p�g
,
c�y
(
R
));
253
g�d
::
��
<
EQ_H�d�
, >
ga
=
f�d_sim�e�_assignm�t
(
S
, S.
ou�ut_v�
(1),
assig�d_�_the_�y
);
255 i�(
ga
.
g�c�d
<
gINT_MAX
) {
256
ga
.
g�c�d
> 0) {
257
EQ_H�d�
geq
=
a
.
f��
;
258
g�d
::
�t
<>
�ndid�es
;
259
Cڡr_V�s_I�r
cvi
(
eq
);
gcvi
; cvi++)
260 i�((*
gcvi
).
gv�
->
k�d
(�=�
I�ut_V�
)
261
�ndid�es
.
���
((*
cvi
).
v�
->
g�_pos�i�
());
263
bo�
gch�ged
=
�l�
;
264
g�d
::
�t
<>::
����
j
=
�ndid�es
.
beg�
();
gj
!��ndid�es.
�d
(); j++) {
265
R��i�
gS2
=
Proje�
(
c�y
(
S
), *
j
,
I�ut_V�
);
266
g�d
::
��
<
EQ_H�d�
, >
ga2
=
f�d_sim�e�_assignm�t
(
S2
, S2.
ou�ut_v�
(1),
assig�d_�_the_�y
);
267 i�(
ga2
.
g�c�d
<�
a
.
�c�d
) {
268
S
=
S2
;
269
ga
=
a2
;
270
gch�ged
=
�ue
;
274 i�(!
gch�ged
)
279 i�(
ga
.
g�c�d
<
gINT_MAX
) {
280
CG_ou�utR�r
*
g��
=
NULL
;
281
EQ_H�d�
geq
=
a
.
f��
;
282
V��b�_ID
gv
=
S
.
ou�ut_v�
(1);
284
gj
= 1; j <�
S
.
n_�p
(); j++)
285
gS
.
�me_�put_v�
(
j
,
R
.
�put_v�
(j)->
�me
());
286
gS
.
�tup_�mes
();
288
gd
=
eq
.
g�_c�f
(
v
);
289
as��
(
d
!= 0);
290
gsign
= (
d
>0)?-1:1;
291
gd
= -
sign
*
d
;
292
Cڡr_V�s_I�r
cvi
(
eq
);
gcvi
; cvi++)
293 i�((*
gcvi
).
gv�
!�
v
) {
294
c�f
=
sign
* (*
cvi
).coef;
295
CG_ou�utR�r
*
g�
=
ou�utId�t
(
ocg
,
S
, (*
cvi
).
v�
,
assig�d_�_the_�y
);
296 i�(
gc�f
> 1)
297
g�
=
ocg
->
C��eTimes
(ocg->
C��eI�
(
c�f
),
�
);
298 i�(
gc�f
< -1)
299
g�
=
ocg
->
C��eTimes
(ocg->
C��eI�
(-
c�f
),
�
);
300 i�(
gc�f
> 0)
301
g��
=
ocg
->
C��ePlus
(
��
,
�
);
302 i�(
gc�f
< 0)
303
g��
=
ocg
->
C��eM�us
(
��
,
�
);
306
gc
=
sign
*
eq
.
g�_cڡ
();
307 i�(
gc
> 0)
308
g��
=
ocg
->
C��ePlus
(
��
, ocg->
C��eI�
(
c
));
309 i�(
gc
< 0)
310
g��
=
ocg
->
C��eM�us
(
��
, ocg->
C��eI�
(-
c
));
311 i�(
g��
=�
NULL
)
312
��
=
ocg
->
C��eI�
(0);
314 i�(
gd
!= 1)
315
��
=
ocg
->
C��eI�eg�Divide
ԕr, ocg->
C��eI�
(
d
));
317
goR�rLi�
.
��nd
(
��
);
320
goR�rLi�
.
��nd
(
NULL
);
323
goR�rLi�
;
326
g�me�a�
{
328
R��i�
���_�ride_�_bound
(
n
, cڡ
�d
::
m�
<
V��b�_ID
,
c�f_t
> &
lb
, c�f_�
�ride
) {
329
R��i�
�su�
(
n
);
330
F_And
*
gf_ro�
=
�su�
.
add_�d
();
331
EQ_H�d�
gh
=
f_ro�
->
add_�ride
(
�ride
);
333
g�d
::
m�
<
V��b�_ID
,
gc�f_t
>::
cڡ_����
i
=
lb
.
beg�
();
gi
!�lb.
�d
(); i++) {
334 i�(
gi
->
gf��
=�
NULL
)
335
h
.
upd�e_cڡ
(
i
->
�c�d
);
337
gi
->
gf��
->
k�d
()) {
338
gI�ut_V�
: {
339
pos
=
i
->
f��
->
g�_pos�i�
();
340
gh
.
upd�e_c�f
(
�su�
.
�t_v�
(
pos
),
i
->
�c�d
);
343
gGlob�_V�
: {
344
Glob�_V�_ID
g
=
i
->
f��
->
g�_glob�_v�
();
345
V��b�_ID
gv
;
346 i�(
gg
->
��y
() == 0)
347
v
=
�su�
.
g�_lo�l
(
g
);
349
gv
=
�su�
.
g�_lo�l
(
g
,
i
->
f��
->
fun�i�_of
());
350
gh
.
upd�e_c�f
(
v
,
i
->
�c�d
);
354
as��
(0);
359
g�su�
;
368
R��i�
g��e�_comm�_��
(cڡ
Tu�e
<R��i�> &
I
, cڡ Tu�e<> &
a�ive
,
�v�
, cڡ R��i� &
known
) {
369
as��
(
I
.
size
(�=�
a�ive
.size());
370
gn
= 0;
372
g�d
::
ve��
<
R��i�
>
I1
,
gI2
;
373
gi
= 1; i <�
I
.
size
(); i++)
374 i�(
ga�ive
[
i
]) {
375 i�(
gn
== 0)
376
n
=
I
[
i
].
n_�t
();
378
R��i�
gr1
;
379 i�(
gknown
.
is_nu�
())
380
gr1
=
c�y
(
I
[
i
]);
382
gr1
=
I����i�
(
c�y
(
I
[
i
]), c�y(
known
));
383
gr1
.
sim�ify
();
385
gI1
.
push_back
(
r1
);
386
R��i�
gr2
=
Gi�
(
c�y
(
I
[
i
]), c�y(
known
));
387
as��
(
r2
.
is_u��_bound_�tisf�b�
());
388 i�(
gr2
.
is_obvious_�ut�ogy
())
389
gR��i�
::
True
(
n
);
390
gI2
.
push_back
(
r2
);
393
g�d
::
ve��
<
bo�
>
is_exa�
(
I2
.
size
(),
�ue
);
394
g�d
::
ve��
<
c�f_t
>
��
(
I2
.
size
(), 0);
395
g�d
::
ve��
<
c�f_t
>
messy_��
(
I2
.
size
(), 0);
396
V��b�_ID
gt_c�
=
�t_v�
(
�v�
);
397
g�d
::
m�
<
V��b�_ID
,
gc�f_t
>
glb
;
400
size_t
gi
= 0; i <
gI2
.
size
(); i++) {
401
C�jun�
*
gc
=
I2
[
i
].
qu�y_DNF
()->
s�g�_c�jun�
();
403
bo�
gis_deg���ed
=
�l�
;
404
EQ_I��t�
ge
=
c
->
EQs
();�;�++) {
405
c�f_t
gc�f
=
abs
((*
e
).
g�_c�f
(
t_c�
));
406 i�(
gc�f
!�0 && !(*
e
).
has_w�d�rds
()) {
407
is_deg���ed
=
�ue
;
411 i�(
gis_deg���ed
)
414
EQ_I��t�
ge
=
c
->
EQs
();�;�++) {
415 i�((*
ge
).
has_w�d�rds
()) {
416
c�f_t
gc�f
=
abs
((*
e
).
g�_c�f
(
t_c�
));
417 i�(
gc�f
== 0)
419 i�(
gc�f
!= 1) {
420
is_exa�
[
i
] =
�l�
;
424
c�f_t
gthis_��
=
abs
(
Cڡr_V�s_I�r
(*
e
,
�ue
).
cu�_c�f
());
425
as��
(
this_��
!= 1);
427 i�(
glb
.
size
() != 0) {
428
R��i�
��
=
���_�ride_�_bound
(
n
,
lb
,
this_��
);
429 i�(
Gi�
(
��
,
c�y
(
I1
[
i
])).
is_obvious_�ut�ogy
()) {
430 i�(
g��
[
i
] == 0)
431
��
[
i
] =
this_��
;
433
g��
[
i
] =
lcm
(
��
[i],
this_��
);
436
gis_exa�
[
i
] =
�l�
;
440
C�jun�
*
gc
=
I2
[
i
].
qu�y_DNF
()->
s�g�_c�jun�
();
441
GEQ_I��t�
gge
=
c
->
GEQs
(); ge; ge++) {
442 i�((*
gge
).
has_w�d�rds
(�|| (*ge).
g�_c�f
(
t_c�
) != 1)
445
g�d
::
m�
<
V��b�_ID
,
gc�f_t
>
gcur_lb
;
446
Cڡr_V�s_I�r
cv
(*
ge
);
gcv
; cv++)
447
gcur_lb
[
cv
.
cu�_v�
()] = cv.
cu�_c�f
();
448
gcur_lb
[
NULL
] = (*
ge
).
g�_cڡ
();
450
R��i�
g��
=
���_�ride_�_bound
(
n
,
cur_lb
,
this_��
);
451 i�(
Gi�
(
��
,
c�y
(
I1
[
i
])).
is_obvious_�ut�ogy
()) {
452 i�(
g��
[
i
] == 0)
453
��
[
i
] =
this_��
;
455
g��
[
i
] =
lcm
(
��
[i],
this_��
);
457
glb
=
cur_lb
;
463 i�(
glb
.
size
() == 0) {
464
�d
::
m�
<
V��b�_ID
,
c�f_t
>
cur_lb
;
465
gw�d_cou�
= 0;
466
Cڡr_V�s_I�r
cv
(*
e
);
gcv
; cv++)
467 i�(
gcv
.
cu�_v�
()->
k�d
(�=�
W�d�rd_V�
)
468
w�d_cou�
++;
470
gcur_lb
[
cv
.
cu�_v�
()] = cv.
cu�_c�f
();
471
gcur_lb
[
NULL
] = (*
e
).
g�_cڡ
();
473 i�(
gw�d_cou�
== 1) {
474
lb
=
cur_lb
;
475 i�(
g��
[
i
] == 0)
476
��
[
i
] =
this_��
;
478
g��
[
i
] =
lcm
(
��
[i],
this_��
);
482 i�(
glb
.
size
() == 0)
483
is_exa�
[
i
] =
�l�
;
490
c�f_t
gglob�_��
= 0;
491
size_t
gi
= 0; i <
gis_exa�
.
size
(); i++)
492 i�(
gis_exa�
[
i
])
493
gglob�_��
=
gcd
(
glob�_��
,
��
[
i
]);
494 i�(
gglob�_��
== 1)
495
R��i�
::
True
(
n
);
498
size_t
gi
= 0; i <
gI2
.
size
(); i++)
499 i�(!
gis_exa�
[
i
]) {
500
C�jun�
*
gc
=
I2
[
i
].
qu�y_DNF
()->
s�g�_c�jun�
();
501
EQ_I��t�
ge
=
c
->
EQs
();�;�++) {
502
c�f_t
gc�f
=
abs
((*
e
).
g�_c�f
(
t_c�
));
503 i�(
gc�f
=�0 ||
c�f
== 1)
507
c�f_t
gthis_��
=
abs
(
Cڡr_V�s_I�r
(*
e
,
�ue
).
cu�_c�f
());
508
gthis_��
/�
gcd
(
this_��
,
c�f
);
509
gthis_��
=
gcd
(
glob�_��
,
this_��
);
510 i�(
gthis_��
== 1)
513 i�(
glb
.
size
() != 0) {
514
R��i�
��
=
���_�ride_�_bound
(
n
,
lb
,
this_��
);
515 i�(
Gi�
(
��
,
c�y
(
I1
[
i
])).
is_obvious_�ut�ogy
()) {
516 i�(
g��
[
i
] == 0)
517
��
[
i
] =
this_��
;
519
g��
[
i
] =
lcm
(
��
[i],
this_��
);
524
C�jun�
*
gc
=
I2
[
i
].
qu�y_DNF
()->
s�g�_c�jun�
();
525
GEQ_I��t�
gge
=
c
->
GEQs
(); ge; ge++) {
526 i�((*
gge
).
has_w�d�rds
(�|| (*ge).
g�_c�f
(
t_c�
) != 1)
529
g�d
::
m�
<
V��b�_ID
,
gc�f_t
>
gcur_lb
;
531
Cڡr_V�s_I�r
cv
(*
ge
);
gcv
; cv++)
532
gcur_lb
[
cv
.
cu�_v�
()] = cv.
cu�_c�f
();
534
gcur_lb
[
NULL
] = (*
ge
).
g�_cڡ
();
536
R��i�
g��
=
���_�ride_�_bound
(
n
,
cur_lb
,
this_��
);
537 i�(
Gi�
(
��
,
c�y
(
I1
[
i
])).
is_obvious_�ut�ogy
()) {
538 i�(
g��
[
i
] == 0)
539
��
[
i
] =
this_��
;
541
g��
[
i
] =
lcm
(
��
[i],
this_��
);
543
glb
=
cur_lb
;
552
size_t
gi
= 0; i <
gis_exa�
.
size
(); i++)
553 i�(!
gis_exa�
[
i
])
554
gglob�_��
=
gcd
(
glob�_��
,
��
[
i
]);
555 i�(
gglob�_��
=�1 ||
glob�_��
== 0)
556
R��i�
::
True
(
n
);
558
R��i�
g�su�
=
���_�ride_�_bound
(
n
,
lb
,
glob�_��
);
561
size_t
gi
= 0; i <
gI1
.
size
(); i++)
562 i�(
g��
[
i
] == 0) {
563 i�(!
Gi�
(
c�y
(
�su�
), c�y(
I1
[
i
])).
is_obvious_�ut�ogy
())
564
R��i�
::
True
(
n
);
567
g�su�
;
574
CG_ou�utR�r
*
ou�utS��m�t
(
CG_ou�utBu�d�
*
ocg
, CG_ou�utR��*
�mt
,
�d�t
, cڡ
R��i�
&
m�p�g_
, cڡ R��i� &
known_
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
575
R��i�
m�p�g
=
c�y
(
m�p�g_
);
576
R��i�
gknown
=
c�y
(
known_
);
577
gTu�e
<
g�d
::
�r�g
>
lo�_v�s
;
579
gi
= 1; i <�
m�p�g
.
n_�p
(); i++)
580
glo�_v�s
.
��nd
(
m�p�g
.
�put_v�
(
i
)->
�me
());
583 i�(
gknown
.
n_�t
(�>
gm�p�g
.
n_out
()) {
584
R��i�
r
(
known
.
n_�t
(),
m�p�g
.
n_out
());
585
F_And
*
gf_ro�
=
r
.
add_�d
();
586
gi
= 1; i <�
m�p�g
.
n_out
(); i++) {
587
EQ_H�d�
gh
=
f_ro�
->
add_EQ
();
588
gh
.
upd�e_c�f
(
r
.
�put_v�
(
i
), 1);
589
gh
.
upd�e_c�f
(
r
.
ou�ut_v�
(
i
), -1);
591
gknown
=
R�ge
(
Re�ri�_Doma�
(
r
,
known
));
592
gknown
.
sim�ify
();
596
R��i�
k
(
known
.
n_�t
());
597
F_And
*
gf_ro�
=
k
.
add_�d
();
598
C�jun�
*
gc
=
known
.
qu�y_DNF
()->
s�g�_c�jun�
();
599
EQ_I��t�
ge
=
c
->
EQs
();�;�++) {
600 i�(!(*
ge
).
has_w�d�rds
())
601
gf_ro�
->
add_EQ
(*
e
);
603
gk
.
sim�ify
();
606
R��i�
gInv_m�p�g
=
Re�ri�_Doma�
(
Inv��
(
m�p�g
),
k
);
607
gTu�e
<
gCG_ou�utR�r
*>
gsLi�
=
ou�utSub��uti�
(
ocg
,
Inv_m�p�g
,
assig�d_�_the_�y
);
609
gocg
->
C��eP��H�d�
(
�d�t
,
�mt
,
sLi�
,
lo�_v�s
);
614
bo�
f�dFlo�I�qu��y
(
R��i�
&
r
,
V��b�_ID
v
,
GEQ_H�d�
&
h
, V��b�_ID
ex�uded
) {
615
C�jun�
*
gc
=
r
.
s�g�_c�jun�
();
617
g�d
::
�t
<
V��b�_ID
>
v�_checked
;
618
g�d
::
�ack
<
V��b�_ID
>
v�_check�g
;
619
gv�_check�g
.
push
(
v
);
621 !
gv�_check�g
.
em�y
()) {
622
V��b�_ID
gv2
=
v�_check�g
.
t�
();
623
gv�_check�g
.
p�
();
625
bo�
gis_�o�
=
�l�
;
626
GEQ_I��t�
gi
(
c
);
ggi
; gi++) {
627 i�(
gex�uded
!�
NULL
&& (*
gi
).
g�_c�f
(
ex�uded
) != 0)
630
c�f_t
ga
= (*
gi
).
g�_c�f
(
v2
);
631 i�(
ga
< 0) {
632
GEQ_I��t�
gi2
(
c
);
ggi2
; gi2++) {
633
c�f_t
gb
= (*
gi2
).
g�_c�f
(
v2
);
634 i�(
gb
=�-
a
&& (*
gi
).
g�_cڡ
()+(*
gi2
).get_const() < -a) {
635
bo�
m�ch
=
�ue
;
636
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++)
637 i�((*
ggi2
).
g�_c�f
((*
cvi
).
v�
�!�-(*cvi).
c�f
) {
638
m�ch
=
�l�
;
641 i�(!
gm�ch
)
643
Cڡr_V�s_I�r
cvi
(*
gi2
);
gcvi
; cvi++)
644 i�((*
ggi
).
g�_c�f
((*
cvi
).
v�
�!�-(*cvi).
c�f
) {
645
m�ch
=
�l�
;
648 i�(
gm�ch
) {
649
gv�_checked
.
���
(
v2
);
650
gis_�o�
=
�ue
;
651 i�(
gv
=�
v2
)
652
h
= *
gi
;
654
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++)
655 i�(((*
gcvi
).
gv�
->
k�d
(�=�
Exi�s_V�
|| (*
cvi
).
v�
->k�d(�=�
W�d�rd_V�
) &&
656
v�_checked
.
f�d
((*
cvi
).
v�
�=�v�_checked.
�d
())
657
v�_check�g
.
push
((*
cvi
).
v�
);
663 i�(
gis_�o�
)
667 i�(!
gis_�o�
)
668
g�l�
;
670
g�ue
;
680
CG_ou�utR�r
*
ou�ut_as_gu�d
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
gu�ds_�
,
Cڡ��t_H�d�
e
,
bo�
is_equ��y
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
681
R��i�
&
gu�ds
=
cڡ_��
<R��i� &>(
gu�ds_�
);
682 i�(
ge
.
has_w�d�rds
())
683
throw
g�d
::
�v�id_�gum�t
("constraint must�ot have wildcard");
685
V��b�_ID
gv
= (*
Cڡr_V�s_I�r
(
e
)).
v�
;
687
c�f_t
g�ved_c�f
= ((
e
).
g�_c�f
(
v
));
688
gsign
=
�ved_c�f
< 0 ? -1 : 1;
690 (
ge
).
upd�e_c�f_dur�g_sim�ify
(
v
, -
�ved_c�f
+
sign
);
691
CG_ou�utR�r
*
gr�
=
ou�utEasyBoundAsR�r
(
ocg
,
gu�ds
,
e
,
v
,
�l�
, 0,
assig�d_�_the_�y
);
692 (
ge
).
upd�e_c�f_dur�g_sim�ify
(
v
,
�ved_c�f
-
sign
);
694
CG_ou�utR�r
*
gl�
=
ou�utId�t
(
ocg
,
gu�ds
,
v
,
assig�d_�_the_�y
);
695 i�(
abs
(
�ved_c�f
) != 1)
696
l�
=
ocg
->
C��eTimes
(ocg->
C��eI�
(
abs
(
�ved_c�f
)),�op);
699 i�(
gis_equ��y
) {
700
gocg
->
C��eEQ
(
l�
,
r�
);
703 i�(
g�ved_c�f
< 0)
704
gocg
->
C��eLE
(
l�
,
r�
);
706
gocg
->
C��eGE
(
l�
,
r�
);
715
CG_ou�utR�r
*
ou�ut_EQ_�rides
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
gu�ds_�
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
716
R��i�
gu�ds
=
cڡ_��
<R��i� &>(
gu�ds_�
);
717
C�jun�
*
gc
=
gu�ds
.
s�g�_c�jun�
();
719
CG_ou�utR�r
*
geqR�r
=
NULL
;
721
EQ_I��t�
ei
(
c
->
EQs
());
gei
;�i++) {
722
V��b�_ID
gwc
=
NULL
;
723
Cڡr_V�s_I�r
cvi
((*
ei
),
�ue
);
gcvi
; cvi++) {
724 i�(
gwc
!�
NULL
)
725
throw
codeg�_�r�
("Can't generate�quality condition with multiple wildcards");
727
gwc
= (*
cvi
).
v�
;
729 i�(
gwc
=�
NULL
)
732
c�f_t
g��
= (*
ei
).
g�_c�f
(
wc
);
734 (*
gei
).
upd�e_c�f_dur�g_sim�ify
(
wc
, 1-
��
);
735
CG_ou�utR�r
*
gl�
=
ou�utEasyBoundAsR�r
(
ocg
,
gu�ds
, (*
ei
),
wc
,
�l�
, 0,
assig�d_�_the_�y
);
736 (*
gei
).
upd�e_c�f_dur�g_sim�ify
(
wc
,
��
-1);
738
CG_ou�utR�r
*
gr�
=
ocg
->
C��eI�
(
abs
(
��
));
739
CG_ou�utR�r
*
g�tMod
=
ocg
->
C��eI�eg�Mod
(
l�
,
r�
);
740
CG_ou�utR�r
*
geqNode
=
ocg
->
C��eEQ
(
�tMod
, ocg->
C��eI�
(0));
742
geqR�r
=
ocg
->
C��eAnd
(
eqR�r
,
eqNode
);
745
geqR�r
;
759
CG_ou�utR�r
*
ou�ut_GEQ_�rides
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
gu�ds_�
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
760
R��i�
gu�ds
=
cڡ_��
<R��i� &>(
gu�ds_�
);
761
C�jun�
*
gc
=
gu�ds
.
s�g�_c�jun�
();
763
CG_ou�utR�r
*
ggeqR�r
=
NULL
;
765
g�d
::
�t
<
V��b�_ID
>
n�_�ph�_w�d�rd
;
766
GEQ_I��t�
gi
(
c
);
ggi
; gi++) {
767
gnum_w�d
= 0;
768
V��b�_ID
gf��_�e
;
769
Cڡr_V�s_I�r
cvi
(*
gi
,
�ue
);
gcvi
; cvi++) {
770
gnum_w�d
++;
771 i�(
gnum_w�d
== 1)
772
f��_�e
= (*
cvi
).
v�
;
774
gn�_�ph�_w�d�rd
.
���
((*
cvi
).
v�
);
776 i�(
gnum_w�d
> 1)
777
gn�_�ph�_w�d�rd
.
���
(
f��_�e
);
780
gi
= 1; i <�(*(
c
->
v��b�s
())).
size
(); i++) {
781
V��b�_ID
gwc
= (*(
c
->
v��b�s
()))[
i
];
782 i�(
gwc
->
k�d
(�=�
W�d�rd_V�
&&
n�_�ph�_w�d�rd
.
f�d
(
wc
�=�n�_�ph�_w�d�rd.
�d
()) {
783
Tu�e
<
GEQ_H�d�
>
low�
,
u��
;
784
GEQ_I��t�
gi
(
c
);
ggi
; gi++) {
785 if((*
ggi
).
g�_c�f
(
wc
) > 0)
786
glow�
.
��nd
(*
gi
);
787 if((*
ggi
).
g�_c�f
(
wc
) < 0)
788
gu��
.
��nd
(*
gi
);
793
gTu�e_I��t�
<
gGEQ_H�d�
>
low
(
low�
);
glow
;�ow++) {
794
gTu�e_I��t�
<
gGEQ_H�d�
>
up
(
u��
);
gup
; up++) {
795
c�f_t
glow_c�f
= (*
low
).
g�_c�f
(
wc
);
796
c�f_t
gup_c�f
= (*
up
).
g�_c�f
(
wc
);
798 (*
glow
).
upd�e_c�f_dur�g_sim�ify
(
wc
, 1-
low_c�f
);
799
CG_ou�utR�r
*
glowEx�
=
ou�utEasyBoundAsR�r
(
ocg
,
gu�ds
, *
low
,
wc
,
�l�
, 0,
assig�d_�_the_�y
);
800 (*
glow
).
upd�e_c�f_dur�g_sim�ify
(
wc
,
low_c�f
-1);
802 (*
gup
).
upd�e_c�f_dur�g_sim�ify
(
wc
, -1-
up_c�f
);
803
CG_ou�utR�r
*
gupEx�
=
ou�utEasyBoundAsR�r
(
ocg
,
gu�ds
, *
up
,
wc
,
�l�
, 0,
assig�d_�_the_�y
);
804 (*
gup
).
upd�e_c�f_dur�g_sim�ify
(
wc
,
up_c�f
+1);
806
CG_ou�utR�r
*
g�tDiv
=
ocg
->
C��eI�eg�Divide
(
upEx�
, ocg->
C��eI�
(-
up_c�f
));
807
CG_ou�utR�r
*
gr�
=
ocg
->
C��eTimes
(ocg->
C��eI�
(
low_c�f
),
�tDiv
);
808
CG_ou�utR�r
*
ggeqNode
=
ocg
->
C��eLE
(
lowEx�
,
r�
);
810
ggeqR�r
=
ocg
->
C��eAnd
(
geqR�r
,
geqNode
);
816 i�(
gn�_�ph�_w�d�rd
.
size
() > 0) {
826
throw
codeg�_�r�
("Can't generate multiple wildcard GEQ guards�ight�ow");
829
ggeqR�r
;
836
CG_ou�utR�r
*
ou�utGu�d
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
gu�ds_�
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
837
R��i�
&
gu�ds
=
cڡ_��
<R��i� &>(
gu�ds_�
);
838 i�(
ggu�ds
.
is_nu�
(�|| gu�ds.
is_obvious_�ut�ogy
())
839
gNULL
;
841
CG_ou�utR�r
*
gnodeR�r
=
NULL
;
843
CG_ou�utR�r
*
geqS�ideR�r
=
ou�ut_EQ_�rides
(
ocg
,
gu�ds
,
assig�d_�_the_�y
);
844
gnodeR�r
=
ocg
->
C��eAnd
(
nodeR�r
,
eqS�ideR�r
);
846
CG_ou�utR�r
*
ggeqS�ideR�r
=
ou�ut_GEQ_�rides
(
ocg
,
gu�ds
,
assig�d_�_the_�y
);
847
gnodeR�r
=
ocg
->
C��eAnd
(
nodeR�r
,
geqS�ideR�r
);
849
C�jun�
*
gc
=
gu�ds
.
s�g�_c�jun�
();
850
EQ_I��t�
ei
(
c
->
EQs
());
gei
;�i++)
851 i�(!(*
gei
).
has_w�d�rds
()) {
852
CG_ou�utR�r
*
geqR�r
=
ou�ut_as_gu�d
(
ocg
,
gu�ds
, (*
ei
),
�ue
,
assig�d_�_the_�y
);
853
gnodeR�r
=
ocg
->
C��eAnd
(
nodeR�r
,
eqR�r
);
855
GEQ_I��t�
gi
(
c
->
GEQs
());
ggi
; gi++)
856 i�(!(*
ggi
).
has_w�d�rds
()) {
857
CG_ou�utR�r
*
ggeqR�r
=
ou�ut_as_gu�d
(
ocg
,
gu�ds
, (*
gi
),
�l�
,
assig�d_�_the_�y
);
858
gnodeR�r
=
ocg
->
C��eAnd
(
nodeR�r
,
geqR�r
);
861
gnodeR�r
;
869
CG_ou�utR�r
*
ou�utLBasR�r
(
CG_ou�utBu�d�
*
ocg
, cڡ
GEQ_H�d�
&
g
,
870
R��i�
&
bounds
,
V��b�_ID
v
,
871
c�f_t
�ride
, cڡ
EQ_H�d�
&
�rideEQ
,
872
R��i�
known
, cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
873 #i�!
def�ed
NDEBUG
874
c�f_t
v_c�f
;
875
as��
((
v_c�f
=
g
.
g�_c�f
(
v
)) > 0);
878
g�d
::
�r�g
s
;
879
CG_ou�utR�r
*
glbR�r
;
880 i�(
g�ride
== 1) {
881
lbR�r
=
ou�utEasyBoundAsR�r
(
ocg
,
bounds
,
g
,
v
,
�l�
, 1,
assig�d_�_the_�y
);
884 i�(!
boundH�sS�ide
(
g
,
v
,
�rideEQ
,
�ride
,
known
)) {
885
gbounds
.
�tup_�mes
();
887
CG_�r�gBu�d�
goscg
;
888
g�d
::
�r�g
c
=
G�S��g
(
ou�utEasyBoundAsR�r
(&
oscg
,
bounds
,
�rideEQ
,
v
,
�ue
, 0,
assig�d_�_the_�y
));
889
CG_ou�utR�r
*
gcR�r
=
NULL
;
890 i�(
gc
!�
�d
::
�r�g
("0"))
891
cR�r
=
ou�utEasyBoundAsR�r
(
ocg
,
bounds
,
�rideEQ
,
v
,
�ue
, 0,
assig�d_�_the_�y
);
892
g�d
::
�r�g
Lov�M
=
G�S��g
(
ou�utEasyBoundAsR�r
(&
oscg
,
bounds
,
g
,
v
,
�l�
, 1,
assig�d_�_the_�y
));
893
CG_ou�utR�r
*
gLov�MR�r
=
NULL
;
894 i�(
gLov�M
!�
�d
::
�r�g
("0"))
895
Lov�MR�r
=
ou�utEasyBoundAsR�r
(
ocg
,
bounds
,
g
,
v
,
�l�
, 1,
assig�d_�_the_�y
);
897 i�(
gcode_g�_debug
> 2) {
898
�r�tf
(
DebugF�e
,"::: Lov�M i�%s\n",
Lov�M
.
c_�r
());
899
�r�tf
(
DebugF�e
,"::: c i�%s\n",
c
.
c_�r
());
902
gcom�ex�y1
= 0,
gcom�ex�y2
= 0;
903
size_t
gi
= 0; i <
gc
.
�ngth
(); i++)
904 i�(
gc
[
i
] =�'+' ||
c
[i] == '-' || c[i] == '*' || c[i] == '/')
905
com�ex�y1
++;
906 i�(
gc
[
i
] == ',')
907
com�ex�y1
+= 2;
908
size_t
gi
= 0; i <
gLov�M
.
�ngth
(); i++)
909 i�(
gLov�M
[
i
] =�'+' ||
Lov�M
[i] == '-' || LoverM[i] == '*' || LoverM[i] == '/')
910
com�ex�y2
++;
911 i�(
gLov�M
[
i
] == ',')
912
com�ex�y2
+= 2;
914 i�(
gcom�ex�y1
<
gcom�ex�y2
) {
915
CG_ou�utR�r
*
gidUp
=
Lov�MR�r
;
916
CG_ou�utR�r
*
gc1R�r
=
ocg
->
C��eC�y
(
cR�r
);
917
gidUp
=
ocg
->
C��eM�us
(
idUp
,
c1R�r
);
918
gidUp
=
ocg
->
C��ePlus
(
idUp
, ocg->
C��eI�
(
�ride
-1));
919
CG_ou�utR�r
*
gidLow
=
ocg
->
C��eI�
(
�ride
);
920
glbR�r
=
ocg
->
C��eTimes
(ocg->
C��eI�
(
�ride
),
921
ocg
->
C��eI�eg�Divide
(
idUp
,
idLow
));
922
glbR�r
=
ocg
->
C��ePlus
(
lbR�r
,
cR�r
);
925
CG_ou�utR�r
*
gLov�M1R�r
=
ocg
->
C��eC�y
(
Lov�MR�r
);
926
CG_ou�utR�r
*
gimUp
=
ocg
->
C��eM�us
(
cR�r
,
Lov�M1R�r
);
927
CG_ou�utR�r
*
gimLow
=
ocg
->
C��eI�
(
�ride
);
928
CG_ou�utR�r
*
g�tMod
=
ocg
->
C��eI�eg�Mod
(
imUp
,
imLow
);
929
glbR�r
=
ocg
->
C��ePlus
(
Lov�MR�r
,
�tMod
);
934
gbounds
.
�tup_�mes
();
935
glbR�r
=
ou�utEasyBoundAsR�r
(
ocg
,
bounds
,
g
,
v
,
�l�
, 0,
assig�d_�_the_�y
);
939
glbR�r
;
946
CG_ou�utR�r
*
ou�utUBasR�r
(
CG_ou�utBu�d�
*
ocg
, cڡ
GEQ_H�d�
&
g
,
947
R��i�
&
bounds
,
948
V��b�_ID
v
,
949
c�f_t
,
950 cڡ
EQ_H�d�
& ,
951 cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
952
as��
(
g
.
g�_c�f
(
v
) < 0);
953
CG_ou�utR�r
*
gupR�r
=
ou�utEasyBoundAsR�r
(
ocg
,
bounds
,
g
,
v
,
�l�
, 0,
assig�d_�_the_�y
);
954
gupR�r
;
966
CG_ou�utR�r
*
ou�utEasyBoundAsR�r
(
CG_ou�utBu�d�
*
ocg
,
R��i�
&
bounds
,
967 cڡ
Cڡ��t_H�d�
&
g
,
V��b�_ID
v
,
968
bo�
ign�eWC
,
969
���g
,
970 cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
974
CG_ou�utR�r
*
�syBoundR�r
=
NULL
;
976
c�f_t
gv_c�f
=
g
.
g�_c�f
(
v
);
977
gv_sign
=
v_c�f
> 0 ? 1 : -1;
978
gv_c�f
*�
v_sign
;
979
as��
(
v_c�f
> 0);
982
gsign_adj
= -
v_sign
;
987
Cڡr_V�s_I�r
c2
(
g
,
�l�
);
gc2
; c2++) {
988 i�((*
gc2
).
gv�
!�
v
&& (!
ign�eWC
|| (*
c2
).
v�
->
k�d
()!=
W�d�rd_V�
)) {
990
c�f_t
cf
= (*
c2
).
c�f
*
sign_adj
;
991
as��
(
cf
!= 0);
993
CG_ou�utR�r
*
gv�Name
;
994 i�((*
gc2
).
gv�
->
k�d
(�=�
W�d�rd_V�
) {
995
GEQ_H�d�
h
;
996 i�(!
f�dFlo�I�qu��y
(
bounds
, (*
c2
).
v�
,
h
,
v
)) {
997 i�(
g�syBoundR�r
!�
NULL
) {
998
�syBoundR�r
->
��r
();
999
d��e
g�syBoundR�r
;
1001
gNULL
;
1003
gv�Name
=
ou�utEasyBoundAsR�r
(
ocg
,
bounds
,
h
, (*
c2
).
v�
,
�l�
, 0,
assig�d_�_the_�y
);
1006
gv�Name
=
ou�utId�t
(
ocg
,
bounds
, (*
c2
).
v�
,
assig�d_�_the_�y
);
1008
CG_ou�utR�r
*
gcfR�r
=
NULL
;
1010 i�(
gcf
> 1) {
1011
gcfR�r
=
ocg
->
C��eI�
(
cf
);
1012
CG_ou�utR�r
*
grbR�r
=
ocg
->
C��eTimes
(
cfR�r
,
v�Name
);
1013
g�syBoundR�r
=
ocg
->
C��ePlus
(
�syBoundR�r
,
rbR�r
);
1015 i�(
gcf
< -1) {
1016
gcfR�r
=
ocg
->
C��eI�
(-
cf
);
1017
CG_ou�utR�r
*
grbR�r
=
ocg
->
C��eTimes
(
cfR�r
,
v�Name
);
1018
g�syBoundR�r
=
ocg
->
C��eM�us
(
�syBoundR�r
,
rbR�r
);
1020 i�(
gcf
== 1) {
1021
�syBoundR�r
=
ocg
->
C��ePlus
�asyBoundR�r,
v�Name
);
1023 i�(
gcf
== -1) {
1024
�syBoundR�r
=
ocg
->
C��eM�us
�asyBoundR�r,
v�Name
);
1029 i�(
gg
.
g�_cڡ
()) {
1030
c�f_t
gcf
=
g
.
g�_cڡ
()*
sign_adj
;
1031
as��
(
cf
!= 0);
1032 i�(
gcf
> 0) {
1033
g�syBoundR�r
=
ocg
->
C��ePlus
(
�syBoundR�r
, ocg->
C��eI�
(
cf
));
1036
g�syBoundR�r
=
ocg
->
C��eM�us
(
�syBoundR�r
, ocg->
C��eI�
(-
cf
));
1040 if(
g�syBoundR�r
=�
NULL
) {
1041
�syBoundR�r
=
ocg
->
C��eI�
(0);
1045 i�(
gv_c�f
> 1) {
1046
as��
(
���g
>= 0);
1047 i�(
g���g
) {
1048
g�syBoundR�r
�
ocg
->
C��ePlus
(
�syBoundR�r
, ocg->
C��eI�
(
v_c�f
-1));
1050
g�syBoundR�r
=
ocg
->
C��eI�eg�Divide
(
�syBoundR�r
, ocg->
C��eI�
(
v_c�f
));
1053
g�syBoundR�r
;
1062
g�d
::
��
<
CG_ou�utR�r
*,
gbo�
>
ou�utBounds
(
CG_ou�utBu�d�
*
ocg
, cڡ
R��i�
&
bounds
,
V��b�_ID
v
,
�d�t
, R��i� &
�f��d
, cڡ
�d
::
ve��
<CG_ou�utR��*> &
assig�d_�_the_�y
) {
1063
R��i�
b
=
c�y
(
bounds
);
1064
C�jun�
*
gc
=
b
.
qu�y_DNF
()->
s�g�_c�jun�
();
1068
R��i�
gr1
= R��i�::
True
(
b
.
n_�t
()),
gr2
= Relation::True(b.n_set());
1069
EQ_I��t�
ei
(
c
);
gei
;�i++) {
1070 i�((*
gei
).
g�_c�f
(
v
�!�0 && (*
ei
).
has_w�d�rds
()) {
1071
c�f_t
sign
;
1072 i�((*
gei
).
g�_c�f
(
v
) > 0)
1073
gsign
= 1;
1075
gsign
= -1;
1077
c�f_t
g�ride
= 0;
1078
Cڡr_V�s_I�r
cvi
(*
ei
,
�ue
);
gcvi
; cvi++)
1079 i�((*
gcvi
).
gv�
->
k�d
(�=�
W�d�rd_V�
) {
1080
�ride
=
abs
((*
cvi
).
c�f
);
1085
bo�
gfound_m�ch
=
�l�
;
1086 i�(
abs
((*
ei
).
g�_c�f
(
v
)) != 1) {
1087
c�f_t
d
=
�ride
/
gcd
(
abs
((*
ei
).
g�_c�f
(
v
)), stride);
1088
R��i�
gr3
= R��i�::
True
(
b
.
n_�t
());
1089
gr3
.
�d_w�h_EQ
(*
ei
);
1091
GEQ_I��t�
gi
(
c
);
ggi
; gi++) {
1092 i�((*
ggi
).
g�_c�f
(
v
�=�1 && !(*
gi
).
has_w�d�rds
()) {
1093
R��i�
r4
(
b
.
n_�t
());
1094
F_And
*
gf_ro�
=
r4
.
add_�d
();
1095
S�ide_H�d�
gh
=
f_ro�
->
add_�ride
(
d
);
1097
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++)
1098 (*
gcvi
).
gv�
->
k�d
()) {
1099
gI�ut_V�
: {
1100
pos
= (*
cvi
).
v�
->
g�_pos�i�
();
1101
gh
.
upd�e_c�f
(
r4
.
�t_v�
(
pos
), (*
cvi
).
c�f
);
1104
gGlob�_V�
: {
1105
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
1106
V��b�_ID
gv
;
1107 i�(
gg
->
��y
() == 0)
1108
v
=
r4
.
g�_lo�l
(
g
);
1110
gv
=
r4
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1111
gh
.
upd�e_c�f
(
v
, (*
cvi
).
c�f
);
1115
�r�tf
(
DebugF�e
, "can't deal with�he variable�ype in�ower bound\n");
1116
g�d
::
make_��
(
��ic_��
<
CG_ou�utR�r
*>(
NULL
),
�l�
);
1118
gh
.
upd�e_cڡ
((*
gi
).
g�_cڡ
());
1120
R��i�
gr5
=
Gi�
(
c�y
(
r3
),
I����i�
(c�y(
r4
), c�y(
�f��d
)));
1123 i�(
gr5
.
is_obvious_�ut�ogy
()) {
1124
gr1
=
I����i�
(
r1
,
r4
);
1125
gfound_m�ch
=
�ue
;
1132
GEQ_I��t�
gi
(
c
);
ggi
; gi++) {
1133 i�((*
ggi
).
g�_c�f
(
v
�=�
abs
((*
ei
).g�_c�f(v)�&& !(*
gi
).
has_w�d�rds
()) {
1134
R��i�
r
(
b
.
n_�t
());
1135
S�ide_H�d�
gh
=
r
.
add_�d
()->
add_�ride
(
�ride
);
1137
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++)
1138 (*
gcvi
).
gv�
->
k�d
()) {
1139
gI�ut_V�
: {
1140
pos
= (*
cvi
).
v�
->
g�_pos�i�
();
1141 i�((*
gcvi
).
gv�
!�
v
) {
1142
t1
=
�t_mod
((*
cvi
).
c�f
,
�ride
);
1143 i�(
gt1
!= 0) {
1144
c�f_t
t2
=
�f��d
.
qu�y_v��b�_mod
�nf��d.
�t_v�
(
pos
),
�ride
);
1145 i�(
gt2
!�
posInf��y
)
1146
h
.
upd�e_cڡ
(
t1
*
t2
);
1148
gh
.
upd�e_c�f
(
r
.
�t_v�
(
pos
),
t1
);
1152
gh
.
upd�e_c�f
(
r
.
�t_v�
(
pos
), (*
cvi
).
c�f
);
1155
gGlob�_V�
: {
1156
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
1157
V��b�_ID
gv
;
1158 i�(
gg
->
��y
() == 0)
1159
v
=
�f��d
.
g�_lo�l
(
g
);
1161
gv
=
�f��d
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1162
c�f_t
gt
=
�f��d
.
qu�y_v��b�_mod
(
v
,
�ride
);
1163 i�(
gt
!�
posInf��y
)
1164
h
.
upd�e_cڡ
(
t
*(*
cvi
).
c�f
);
1166
V��b�_ID
gv2
;
1167 i�(
gg
->
��y
() == 0)
1168
v2
=
r
.
g�_lo�l
(
g
);
1170
gv2
=
r
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1171
gh
.
upd�e_c�f
(
v2
, (*
cvi
).
c�f
);
1176
�r�tf
(
DebugF�e
, "can't deal with�he variable�ype in�ower bound\n");
1177
g�d
::
make_��
(
��ic_��
<
CG_ou�utR�r
*>(
NULL
),
�l�
);
1179
gh
.
upd�e_cڡ
((*
gi
).
g�_cڡ
());
1181
bo�
gt
=
�ue
;
1183
C�jun�
*
gc2
=
r
.
qu�y_DNF
()->
s�g�_c�jun�
();
1184
EQ_H�d�
gh2
;
1185
EQ_I��t�
ei2
(
c2
);
gei2
;�i2++) {
1186
gh2
= *
ei2
;
1190
gsign
;
1191 i�(
gh2
.
g�_c�f
(
v
�=�(*
ei
).get_coef(v))
1192
sign
= 1;
1194
gsign
= -1;
1196
gt
=
�t_mod
(
h2
.
g�_cڡ
(�-
sign
* (*
ei
).g�_cڡ(),
�ride
) == 0;
1198 i�(
gt
!�
�l�
)
1199
Cڡr_V�s_I�r
cvi
(
h2
);
gcvi
; cvi++)
1200 i�((*
gcvi
).
gv�
->
k�d
(�!�
W�d�rd_V�
&&
1201
�t_mod
((*
cvi
).
c�f
-
sign
* (*
ei
).
g�_c�f
((*cvi).
v�
),
�ride
) != 0) {
1202
t
=
�l�
;
1206 i�(
gt
!�
�l�
)
1207
Cڡr_V�s_I�r
cvi
(*
ei
);
gcvi
; cvi++)
1208 i�((*
gcvi
).
gv�
->
k�d
(�!�
W�d�rd_V�
&&
1209
�t_mod
((*
cvi
).
c�f
-
sign
*
h2
.
g�_c�f
((*cvi).
v�
),
�ride
) != 0) {
1210
t
=
�l�
;
1216 i�(
gt
) {
1218
F_And
*
gf_ro�
=
r1
.
�d_w�h_�d
();
1219
S�ide_H�d�
gh
=
f_ro�
->
add_�ride
(
�ride
);
1220
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++)
1221 (*
gcvi
).
gv�
->
k�d
()) {
1222
gI�ut_V�
: {
1223
h
.
upd�e_c�f
(
r1
.
�t_v�
((*
cvi
).
v�
->
g�_pos�i�
()), (*cvi).
c�f
);
1226
gGlob�_V�
: {
1227
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
1228
V��b�_ID
gv
;
1229 i�(
gg
->
��y
() == 0)
1230
v
=
r1
.
g�_lo�l
(
g
);
1232
gv
=
r1
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1233
gh
.
upd�e_c�f
(
v
, (*
cvi
).
c�f
);
1237
�r�tf
(
DebugF�e
, "can't deal with�he variable�ype in�ower bound\n");
1238
g�d
::
make_��
(
��ic_��
<
CG_ou�utR�r
*>(
NULL
),
�l�
);
1240
gh
.
upd�e_cڡ
((*
gi
).
g�_cڡ
());
1242
gfound_m�ch
=
�ue
;
1249 i�(!
gfound_m�ch
)
1250
gr1
.
�d_w�h_EQ
(*
ei
);
1252 i�((*
gei
).
g�_c�f
(
v
) == 0) {
1253
R��i�
r3
= R��i�::
True
(
b
.
n_�t
());
1254
gr3
.
�d_w�h_EQ
(*
ei
);
1255
R��i�
gr4
=
Gi�
(
r3
,
c�y
(
�f��d
));
1256 i�(!
gr4
.
is_obvious_�ut�ogy
())
1257
gr2
.
�d_w�h_EQ
(*
ei
);
1260
gr2
.
�d_w�h_EQ
(*
ei
);
1265
g�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>
gexi�s_m�p�g
;
1266
F_Exi�s
*
g�
=
r2
.
�d_w�h_�d
()->
add_exi�s
();
1267
F_And
*
gf_ro�
=
�
->
add_�d
();
1268
GEQ_I��t�
gi
(
c
);
ggi
; gi++) {
1269
GEQ_H�d�
gh
=
f_ro�
->
add_GEQ
();
1270
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++) {
1271
V��b�_ID
gv
=
cvi
.
cu�_v�
();
1272
gv
->
k�d
()) {
1273
gI�ut_V�
: {
1274
pos
=
v
->
g�_pos�i�
();
1275
gh
.
upd�e_c�f
(
r2
.
�t_v�
(
pos
),
cvi
.
cu�_c�f
());
1278
gExi�s_V�
:
1279
W�d�rd_V�
: {
1280
�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>::
����
p
=
exi�s_m�p�g
.
f�d
(
v
);
1281
V��b�_ID
ge
;
1282 i�(
gp
=�
exi�s_m�p�g
.
�d
()) {
1283
e
=
�
->
de��e
();
1284
gexi�s_m�p�g
[
v
] =
e
;
1287
ge
= (*
p
).
�c�d
;
1288
gh
.
upd�e_c�f
(
e
,
cvi
.
cu�_c�f
());
1291
gGlob�_V�
: {
1292
Glob�_V�_ID
g
=
v
->
g�_glob�_v�
();
1293
V��b�_ID
gv2
;
1294 i�(
gg
->
��y
() == 0)
1295
v2
=
r2
.
g�_lo�l
(
g
);
1297
gv2
=
r2
.
g�_lo�l
(
g
,
v
->
fun�i�_of
());
1298
gh
.
upd�e_c�f
(
v2
,
cvi
.
cu�_c�f
());
1302
as��
(0);
1305
gh
.
upd�e_cڡ
((*
gi
).
g�_cڡ
());
1311
gr1
.
sim�ify
();
1312
gr2
.
sim�ify
();
1313
R��i�
gb2
=
I����i�
(
r1
,
r2
);
1314
gb2
.
sim�ify
();
1315
gi
= 1; i <�
b
.
n_�t
(); i++)
1316
gb2
.
�me_�t_v�
(
i
,
b
.
�t_v�
(i)->
�me
());
1317
gb2
.
�tup_�mes
();
1318
gb
=
b2
;
1319
gc
=
b
.
qu�y_DNF
()->
s�g�_c�jun�
();
1324
EQ_H�d�
g�rideEQ
;
1325
bo�
gfoundS�ide
=
�l�
;
1326
bo�
gfoundSim�eS�ide
=
�l�
;
1327
c�f_t
g��
= 1;
1328
gnum_�ride
= 0;
1330
EQ_I��t�
ei
(
c
);
gei
;�i++) {
1331 i�((*
gei
).
g�_c�f
(
v
�!�0 && (*
ei
).
has_w�d�rds
()) {
1332
num_�ride
++;
1334 i�(
abs
((*
ei
).
g�_c�f
(
v
)) != 1)
1337
bo�
gt
=
�ue
;
1338
c�f_t
gd
= 1;
1339
Cڡr_V�s_I�r
cvi
(*
ei
);
gcvi
; cvi++)
1340 i�((*
gcvi
).
gv�
->
k�d
(�=�
W�d�rd_V�
) {
1341
as��
(
d
==1);
1342
gd
=
abs
((*
cvi
).
c�f
);
1344 i�((*
gcvi
).
gv�
->
k�d
(�=�
I�ut_V�
) {
1345 i�((*
cvi
).
v�
!�
v
)
1346
t
=
�l�
;
1349
gt
=
�l�
;
1351 i�(
gd
>
g��
) {
1352
g��
=
d
;
1353
gfoundSim�eS�ide
=
t
;
1354
g�rideEQ
= *
ei
;
1355
gfoundS�ide
=
�ue
;
1362 i�(!(
gnum_�ride
=�0 || (
num_�ride
=�1 &&
foundS�ide
)))
1363
�d
::
make_��
(
��ic_��
<
CG_ou�utR�r
*>(
NULL
),
�l�
);
1366
glow�_bounds
= 0,
gu��_bounds
= 0;
1367
gTu�e
<
gCG_ou�utR�r
*>
glbLi�
;
1368
gTu�e
<
gCG_ou�utR�r
*>
gubLi�
;
1369
c�f_t
gcڡ_lb
=
�gInf��y
,
gcڡ_ub
=
posInf��y
;
1370
GEQ_I��t�
g
(
c
);
gg
; g++) {
1371
c�f_t
gc�f
= (*
g
).
g�_c�f
(
v
);
1372 i�(
gc�f
== 0)
1374 i�(
gc�f
> 0) {
1375
glow�_bounds
++;
1376 i�((*
gg
).
is_cڡ
(
v
�&& !
gfoundS�ide
) {
1378
c�f_t
gL
,
gm
;
1379
gL
= -((*
g
).
g�_cڡ
());
1381
gm
= (*
g
).
g�_c�f
(
v
);
1382
c�f_t
gsb
= (�(
��
(((�
L
�/
m
));
1383
�t_max
(
cڡ_lb
,
sb
);
1385 i�((*
gg
).
is_cڡ
(
v
�&&
gfoundSim�eS�ide
) {
1388
c�f_t
gL
,
gm
,
gs
,
gc
;
1389
gL
= -((*
g
).
g�_cڡ
());
1390
gm
= (*
g
).
g�_c�f
(
v
);
1391
gs
=
��
;
1392
gc
=
�rideEQ
.
g�_cڡ
();
1393
c�f_t
gsb
= (
s
* (�(
��
�(�(
L
- (
c
*
m
)) /(s*m))))+ c;
1394
�t_max
(
cڡ_lb
,
sb
);
1397
glbLi�
.
��nd
(
ou�utLBasR�r
(
ocg
, *
g
,
b
,
v
,
��
,
�rideEQ
,
�f��d
,
assig�d_�_the_�y
));
1400
gu��_bounds
++;
1401 i�((*
gg
).
is_cڡ
(
v
)) {
1403
�t_m�
(
cڡ_ub
,-(*
g
).
g�_cڡ
()/(*g).
g�_c�f
(
v
));
1406
gubLi�
.
��nd
(
ou�utUBasR�r
(
ocg
, *
g
,
b
,
v
,
��
,
�rideEQ
,
assig�d_�_the_�y
));
1410
CG_ou�utR�r
*
glbR�r
=
NULL
;
1411
CG_ou�utR�r
*
gubR�r
=
NULL
;
1412 i�(
gcڡ_lb
!�
�gInf��y
)
1413
lbLi�
.
��nd
(
ocg
->
C��eI�
(
cڡ_lb
));
1414 i�(
glbLi�
.
size
() > 1)
1415
glbR�r
=
ocg
->
C��eInvoke
("max",
lbLi�
);
1416 i�(
glbLi�
.
size
() == 1)
1417
lbR�r
=
lbLi�
[1];
1420 if(
gf�lInBounds
&&
glbLi�
.
size
(�=�1 &&
cڡ_lb
!�
�gInf��y
)
1421
low�BoundF�Lev�
=
cڡ_lb
;
1424 i�(
gcڡ_ub
!�
posInf��y
)
1425
ubLi�
.
��nd
(
ocg
->
C��eI�
(
cڡ_ub
));
1426 i�(
gubLi�
.
size
() > 1)
1427
gubR�r
=
ocg
->
C��eInvoke
("m�",
ubLi�
);
1428 i�(
gubLi�
.
size
() == 1)
1429
ubR�r
=
ubLi�
[1];
1432 if(
gf�lInBounds
&&
gcڡ_ub
!�
posInf��y
)
1433
u��BoundF�Lev�
=
cڡ_ub
;
1436 i�(
gu��_bounds
=�0 ||
low�_bounds
== 0) {
1437
�d
::
make_��
(
��ic_��
<
CG_ou�utR�r
*>(
NULL
),
�l�
);
1441
F_Exi�s
*
g�
=
�f��d
.
�d_w�h_�d
()->
add_exi�s
();
1442
F_And
*
gf_ro�
=
�
->
add_�d
();
1443
g�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>
gexi�s_m�p�g
;
1444
g�d
::
�ack
<
�d
::
��
<
GEQ_H�d�
,
gV��b�_ID
> >
g�o�_geq_�ack
;
1445
g�d
::
�t
<
V��b�_ID
>
�o�_v�_�t
;
1447 i�(
gfoundS�ide
) {
1448
EQ_H�d�
gh
=
f_ro�
->
add_EQ
();
1449
Cڡr_V�s_I�r
cvi
(
�rideEQ
);
gcvi
; cvi++)
1450 (*
gcvi
).
gv�
->
k�d
()) {
1451
gI�ut_V�
: {
1452
pos
= (*
cvi
).
v�
->
g�_pos�i�
();
1453
gh
.
upd�e_c�f
(
�f��d
.
�t_v�
(
pos
), (*
cvi
).
c�f
);
1456
gExi�s_V�
:
1457
W�d�rd_V�
: {
1458
�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>::
����
p
=
exi�s_m�p�g
.
f�d
((*
cvi
).
v�
);
1459
V��b�_ID
ge
;
1460 i�(
gp
=�
exi�s_m�p�g
.
�d
()) {
1461
e
=
�
->
de��e
();
1462
gexi�s_m�p�g
[(*
cvi
).
v�
] =
e
;
1465
ge
= (*
p
).
�c�d
;
1466
gh
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
1469
gGlob�_V�
: {
1470
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
1471
V��b�_ID
ge
;
1472 i�(
gg
->
��y
() == 0)
1473
e
=
�f��d
.
g�_lo�l
(
g
);
1475
ge
=
�f��d
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1476
gh
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
1480
as��
(0);
1482
gh
.
upd�e_cڡ
(
�rideEQ
.
g�_cڡ
());
1485
GEQ_I��t�
gi
(
c
);
ggi
; gi++)
1486 i�((*
ggi
).
g�_c�f
(
v
) != 0) {
1487
GEQ_H�d�
h
=
f_ro�
->
add_GEQ
();
1488
Cڡr_V�s_I�r
cvi
(*
gi
);
gcvi
; cvi++)
1489 (*
gcvi
).
gv�
->
k�d
()) {
1490
gI�ut_V�
: {
1491
pos
= (*
cvi
).
v�
->
g�_pos�i�
();
1492
gh
.
upd�e_c�f
(
�f��d
.
�t_v�
(
pos
), (*
cvi
).
c�f
);
1495
gExi�s_V�
:
1496
W�d�rd_V�
: {
1497
�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>::
����
p
=
exi�s_m�p�g
.
f�d
((*
cvi
).
v�
);
1498
V��b�_ID
ge
;
1499 i�(
gp
=�
exi�s_m�p�g
.
�d
()) {
1500
e
=
�
->
de��e
();
1501
gexi�s_m�p�g
[(*
cvi
).
v�
] =
e
;
1504
ge
= (*
p
).
�c�d
;
1505
gh
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
1507 i�(
g�o�_v�_�t
.
f�d
((*
cvi
).
v�
�=�
�o�_v�_�t
.
�d
()) {
1508
GEQ_H�d�
h2
;
1509
f�dFlo�I�qu��y
(
b
, (*
cvi
).
v�
,
h2
,
v
);
1510
g�o�_geq_�ack
.
push
(
�d
::
make_��
(
h2
, (*
cvi
).
v�
));
1511
g�o�_v�_�t
.
���
((*
cvi
).
v�
);
1515
gGlob�_V�
: {
1516
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
1517
V��b�_ID
ge
;
1518 i�(
gg
->
��y
() == 0)
1519
e
=
�f��d
.
g�_lo�l
(
g
);
1521
ge
=
�f��d
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1522
gh
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
1526
as��
(0);
1528
gh
.
upd�e_cڡ
((*
gi
).
g�_cڡ
());
1532 !
g�o�_geq_�ack
.
em�y
()) {
1533
g�d
::
��
<
GEQ_H�d�
,
gV��b�_ID
>
gp
=
�o�_geq_�ack
.
t�
();
1534
g�o�_geq_�ack
.
p�
();
1536
GEQ_H�d�
gh1
=
f_ro�
->
add_GEQ
();
1537
GEQ_H�d�
gh2
=
f_ro�
->
add_GEQ
();
1538
Cڡr_V�s_I�r
cvi
(
p
.
f��
);
gcvi
; cvi++) {
1539 (*
gcvi
).
gv�
->
k�d
()) {
1540
gI�ut_V�
: {
1541
pos
= (*
cvi
).
v�
->
g�_pos�i�
();
1542
gh1
.
upd�e_c�f
(
�f��d
.
�put_v�
(
pos
), (*
cvi
).
c�f
);
1543
gh2
.
upd�e_c�f
(
�f��d
.
�put_v�
(
pos
), -(*
cvi
).
c�f
);
1546
gExi�s_V�
:
1547
W�d�rd_V�
: {
1548
�d
::
m�
<
V��b�_ID
,
gV��b�_ID
>::
����
p2
=
exi�s_m�p�g
.
f�d
((*
cvi
).
v�
);
1549
V��b�_ID
ge
;
1550 i�(
gp2
=�
exi�s_m�p�g
.
�d
()) {
1551
e
=
�
->
de��e
();
1552
gexi�s_m�p�g
[(*
cvi
).
v�
] =
e
;
1555
ge
= (*
p2
).
�c�d
;
1556
gh1
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
1557
gh2
.
upd�e_c�f
(
e
, -(*
cvi
).
c�f
);
1559 i�(
g�o�_v�_�t
.
f�d
((*
cvi
).
v�
�=�
�o�_v�_�t
.
�d
()) {
1560
GEQ_H�d�
h3
;
1561
f�dFlo�I�qu��y
(
b
, (*
cvi
).
v�
,
h3
,
v
);
1562
g�o�_geq_�ack
.
push
(
�d
::
make_��
(
h3
, (*
cvi
).
v�
));
1563
g�o�_v�_�t
.
���
((*
cvi
).
v�
);
1567
gGlob�_V�
: {
1568
Glob�_V�_ID
g
= (*
cvi
).
v�
->
g�_glob�_v�
();
1569
V��b�_ID
ge
;
1570 i�(
gg
->
��y
() == 0)
1571
e
=
�f��d
.
g�_lo�l
(
g
);
1573
ge
=
�f��d
.
g�_lo�l
(
g
, (*
cvi
).
v�
->
fun�i�_of
());
1574
gh1
.
upd�e_c�f
(
e
, (*
cvi
).
c�f
);
1575
gh2
.
upd�e_c�f
(
e
, -(*
cvi
).
c�f
);
1579
as��
(0);
1582
gh1
.
upd�e_cڡ
(
p
.
f��
.
g�_cڡ
());
1583
gh2
.
upd�e_cڡ
(-
p
.
f��
.
g�_cڡ
());
1584
gh2
.
upd�e_cڡ
(-
p
.
f��
.
g�_c�f
�.
�c�d
)-1);
1586
g�f��d
.
sim�ify
();
1588
CG_ou�utR�r
*
g�R�r
=
NULL
;
1589 i�(
g��
!= 1)
1590
�R�r
=
ocg
->
C��eI�
(
abs
(
��
));
1591
CG_ou�utR�r
*
g�dexR�r
=
ou�utId�t
(
ocg
,
b
,
v
,
assig�d_�_the_�y
);
1592
CG_ou�utR�r
*
g��R�r
=
ocg
->
C��eIndu�ive
(
�dexR�r
,
lbR�r
,
ubR�r
,
�R�r
);
1594
g�d
::
make_��
(
��R�r
,
�ue
);
1599
R��i�
�oje�_�to_�v�s
(R��i�
R
,
ϡ_�v�
,
bo�
w�d�rds
) {
1600
as��
(
ϡ_�v�
>�0 &&
R
.
is_�t
(�&&�a�_�v� <�R.
n_�t
());
1601 i�(
gϡ_�v�
=�
R
.
n_�t
()) R;
1603
g�ig_v�s
=
R
.
n_�t
();
1604
gnum_�oje�ed
=
�ig_v�s
-
ϡ_�v�
;
1605
gR
=
Ex�nd_S�
(
R
,
num_�oje�ed
1607
M�p�g
gm1
= M�p�g::
Id�t�y
(
R
.
n_�t
());
1609
gi
=
ϡ_�v�
+1; i <�
�ig_v�s
; i++) {
1610
gm1
.
�t_m�
(
S�_V�
,
i
,
Exi�s_V�
, i);
1611
gm1
.
�t_m�
(
S�_V�
,
i
+
num_�oje�ed
, Set_Var, i);
1614
M�R�1
(
R
,
m1
,
Comb_Id
);
1615
gR
.
f��ize
();
1616
gR
.
sim�ify
();
1617 i�(!
gw�d�rds
)
1618
gR
=
A�roxim�e
(
R
,1);
1619
as��
(
R
.
is_�t
());
1620
gR
;
1627
bo�
boundH�sS�ide
(cڡ
GEQ_H�d�
&
g
,
V��b�_ID
v
,
1628 cڡ
EQ_H�d�
&
�rideEQ
,
1629
c�f_t
,
1630
R��i�
known
) {
1635
c�f_t
gm
=
g
.
g�_c�f
(
v
);
1636
R��i�
��
(
known
.
n_�t
());
1637
F_Exi�s
*
ge
=
��
.
add_exi�s
();
1638
V��b�_ID
g�pha
=
e
->
de��e
();
1639
F_And
*
ga
=
e
->
add_�d
();
1640
EQ_H�d�
gh
=
a
->
add_EQ
();
1641
Cڡr_V�s_I�r
I
(
g
,
�l�
);
gI
; I++)
1642 if((*
gI
).
gv�
!�
v
) {
1643 if((*
I
).
v�
->
k�d
(�!�
Glob�_V�
)
1644
h
.
upd�e_c�f
((*
I
).
v�
, (*I).
c�f
);
1646
gh
.
upd�e_c�f
(
��
.
g�_lo�l
((*
I
).
v�
->
g�_glob�_v�
()), (*I).
c�f
);
1649
gh
.
upd�e_cڡ
(
g
.
g�_cڡ
());
1650
gh
.
upd�e_c�f
(
�pha
,
m
);
1651 i�(!(
Gi�
(
��
,
c�y
(
known
)).
is_obvious_�ut�ogy
()))
1652
g�l�
;
1654
R��i�
gboundR�
=
known
;
1655
gboundR�
.
�d_w�h_EQ
(
g
);
1656
R��i�
�rideR�
(
known
.
n_�t
());
1657
g�rideR�
.
�d_w�h_EQ
(
�rideEQ
);
1658
Gi�
(
�rideR�
,
boundR�
).
is_obvious_�ut�ogy
();
1663
bo�
isSim�eS�ide
(cڡ
EQ_H�d�
&
g
,
V��b�_ID
v
) {
1664
EQ_H�d�
ggg
=
g
;
1666
bo�
gis_sim�e
=
�ue
;
1667
Cڡr_V�s_I�r
cvi
(
gg
,
�l�
);
gcvi
&&
gis_sim�e
; cvi++)
1668
gis_sim�e
= ((*
cvi
).
c�f
=�0 || (*cvi).
v�
=�
v
1669 || (*
cvi
).
v�
->
k�d
(�=�
W�d�rd_V�
);
1670
gis_sim�e
;
1674
cou�S�ides
(
C�jun�
*
c
,
V��b�_ID
v
,
EQ_H�d�
&
�rideEQ
,
1675
bo�
&
sim�e
) {
1676
g�rides
=0;
1677
EQ_I��t�
G
(
c
);
gG
; G++)
1678
Cڡr_V�s_I�r
I
(*
G
,
�ue
);
gI
; I++)
1679 i�(((*
gI
).
gc�f
!�0�&& (*
G
).
g�_c�f
(
v
) != 0) {
1680
�rides
++;
1681
gsim�e
=
isSim�eS�ide
(*
G
,
v
);
1682
g�rideEQ
= *
G
;
1685
g�rides
;
1688
g�me�a�
{
1690
bo�
hasEQ
(
R��i�
r
,
�v�
) {
1691
gr
.
sim�ify
();
1692
V��b�_ID
gv
=
�t_v�
(
�v�
);
1693
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1694
EQ_I��t�
G
(
s_c�j
);
gG
; G++)
1695 i�((*
gG
).
g�_c�f
(
v
))
1696
g�ue
;
1697
g�l�
;
1702
R��i�
pickEQ
(R��i�
r
,
�v�
) {
1703
gr
.
sim�ify
();
1704
V��b�_ID
gv
=
�t_v�
(
�v�
);
1705
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1706
EQ_I��t�
E
(
s_c�j
);
gE
; E++)
1707 i�((*
gE
).
g�_c�f
(
v
)) {
1708
R��i�
��_�l
(
r
.
n_�t
());
1709
g��_�l
.
�d_w�h_EQ
(*
E
);
1710
g��_�l
;
1712
as��
(0);
1713
gr
;
1717
R��i�
pickBound
(R��i�
r
,
�v�
,
UB
) {
1718
gr
.
sim�ify
();
1719
V��b�_ID
gv
=
�t_v�
(
�v�
);
1720
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1721
GEQ_I��t�
G
(
s_c�j
);
gG
; G++) {
1722 i�((
gUB
&& (*
gG
).
g�_c�f
(
v
) < 0)
1723 || (!
gUB
&& (*
gG
).
g�_c�f
(
v
) > 0) ) {
1724
R��i�
��_�l
(
r
.
n_�t
());
1725
g��_�l
.
�d_w�h_GEQ
(*
G
);
1726
g��_�l
;
1729
EQ_I��t�
E
(
s_c�j
);
gE
; E++) {
1730 i�((*
gE
).
g�_c�f
(
v
)) {
1731
R��i�
��_�l
(
r
.
n_�t
());
1732
g��_�l
.
�d_w�h_GEQ
(*
E
);
1733 i�((
gUB
&& (*
gE
).
g�_c�f
(
v
) > 0)
1734 || (!
gUB
&& (*
gE
).
g�_c�f
(
v
) < 0) )
1735
g��_�l
=
Com�em�t
(
��_�l
);
1736
g��_�l
;
1739
as��
(0);
1740
gr
;
1745
R��i�
pickOv�h�d
(R��i�
r
,
li�To
) {
1746
gr
.
sim�ify
();
1747
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1748
GEQ_I��t�
G
(
s_c�j
);
gG
; G++) {
1749
R��i�
��_�l
(
r
.
n_�t
());
1750
g��_�l
.
�d_w�h_GEQ
(*
G
);
1751
V��b�_ID
gv
;
1752
c�f_t
gpos
= -1;
1753
c�f_t
gc
= 0;
1754
Cڡr_V�s_I�r
cvi
(*
G
,
�l�
);
gcvi
; cvi++)
1755 i�((*
gcvi
).
gc�f
&& (*cvi).
gv�
->
k�d
(�=�
I�ut_V�
1756 && (*
cvi
).
v�
->
g�_pos�i�
(�>
pos
) {
1757
v
= (*
cvi
).
v�
;
1758
gpos
= (*
cvi
).
v�
->
g�_pos�i�
();
1759
gc
= (*
cvi
).
c�f
;
1762
�r�tf
(
DebugF�e
,"Coef = %d, constraint = %s\n",
1763
c
,(cڡ *)
��_�l
.
��t_f�mu�_to_�r�g
());
1765
g��_�l
;
1767
EQ_I��t�
E
(
s_c�j
);
gE
; E++) {
1768
as��
(
li�To
>= 1);
1769
gpos
=
max
((*
E
).
max_tu�e_pos
(),
max_fs_��y
(*E)+1);
1773 i�((*
gE
).
has_w�d�rds
(�&&
gpos
<
gli�To
) {
1774
R��i�
��_�l
(
r
.
n_�t
());
1775
g��_�l
.
�d_w�h_EQ
(*
E
);
1776
g��_�l
;
1778 i�(!(*
gE
).
has_w�d�rds
(�&&
gpos
<�
li�To
) {
1779
R��i�
��_�l
(
r
.
n_�t
());
1780
g��_�l
.
�d_w�h_EQ
(*
E
);
1781
g��_�l
.
sim�ify
();
1782
g��_�l
=
EQs_to_GEQs
(
��_�l
,
�ue
);
1783
pickOv�h�d
(
��_�l
,
li�To
);
1786 i�(
gcode_g�_debug
>1) {
1787
�r�tf
(
DebugF�e
,"Could�ot find overhead:\n");
1788
gr
.
�efix_��t
(
DebugF�e
);
1790
gR��i�
::
True
(
r
.
n_�t
());
1795
bo�
hasBound
(
R��i�
r
,
�v�
,
UB
) {
1796
gr
.
sim�ify
();
1797
V��b�_ID
gv
=
�t_v�
(
�v�
);
1798
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1799
GEQ_I��t�
G
(
s_c�j
);
gG
; G++) {
1800 i�(
gUB
&& (*
gG
).
g�_c�f
(
v
�< 0�
g�ue
;
1801 i�(!
gUB
&& (*
gG
).
g�_c�f
(
v
�> 0�
g�ue
;
1803
EQ_I��t�
E
(
s_c�j
);
gE
; E++) {
1804 i�((*
gE
).
g�_c�f
(
v
)�
g�ue
;
1806
g�l�
;
1809
bo�
f�d_�y_cڡ��t
(
s
,
�v�
,
R��i�
&
kr
,
d�e�i�
,
1810
R��i�
&
S
,
bo�
��ox
) {
1816
R��i�
gI
=
�oje�ed_nIS
[
�v�
][
s
];
1817
gI
=
Gi�
(
I
,
c�y
(
kr
));
1818 if(
g��ox
�
gI
=
A�roxim�e
(
I
);
1819 i�(
hasBound
(
I
,
�v�
,
d�e�i�
)) {
1820
R��i�
gpick�om
;
1821 if(
has_nڡride_EQ
(
I
,
�v�
))
1822
gpick�om
=
pickEQ
(
I
,
�v�
);
1824
gpick�om
=
pickBound
(
I
,
�v�
,
d�e�i�
);
1825
gS
=
pickOv�h�d
(
pick�om
,
�v�
);
1826 if(
gS
.
is_obvious_�ut�ogy
()�S =
R��i�
::
Nu�
();
1827 !
gS
.
is_nu�
();
1829
g�l�
;
1833
bo�
has_nڡride_EQ
(
R��i�
r
,
�v�
) {
1834
gr
.
sim�ify
();
1835
V��b�_ID
gv
=
�t_v�
(
�v�
);
1836
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1837
EQ_I��t�
G
(
s_c�j
);
gG
; G++)
1838 i�((*
gG
).
g�_c�f
(
v
�&& !(*G).
has_w�d�rds
())
1839
g�ue
;
1840
g�l�
;
1844
R��i�
m�MaxOv�h�d
(R��i�
r
,
�v�
) {
1845
gr
.
f��ize
();
1846
gr
.
sim�ify
();
1847
C�jun�
*
gs_c�j
=
r
.
s�g�_c�jun�
();
1848
GEQ_H�d�
gLBs
[50],
gUBs
[50];
1849
gnumLBs
= 0;
1850
gnumUBs
= 0;
1851
V��b�_ID
gv
=
�t_v�
(
�v�
);
1852
GEQ_I��t�
G
(
s_c�j
);
gG
; G++�i�((*G).
g�_c�f
(
v
)) {
1853
GEQ_H�d�
gg
= *
G
;
1854 i�(
gg
.
g�_c�f
(
v
�> 0�
gLBs
[
numLBs
++] =
g
;
1855
gUBs
[
numUBs
++] =
g
;
1857 i�(
gnumLBs
<�1 &&
numUBs
<= 1) {
1858
R��i�
::
True
(
r
.
n_�t
());
1860
R��i�
r1
(
r
.
n_�t
());
1861
R��i�
r2
(
r
.
n_�t
());
1862 i�(
gnumLBs
> 1) {
1864
gr1
.
�d_w�h_GEQ
(
LBs
[0]);
1865
gr2
.
�d_w�h_GEQ
(
LBs
[1]);
1866
gr1
=
�oje�_�to_�v�s
(
Dif�n�
(
r1
,
r2
),
�v�
-1,0);
1870
gr1
.
�d_w�h_GEQ
(
UBs
[0]);
1871
gr2
.
�d_w�h_GEQ
(
UBs
[1]);
1872
gr1
=
�oje�_�to_�v�s
(
Dif�n�
(
r1
,
r2
),
�v�
-1,0);
1875
�r�tf
(
DebugF�e
,"Te��g %s\n",(cڡ *)
r1
.
��t_f�mu�_to_�r�g
());
1876
�r�tf
(
DebugF�e
,"w�Ȼmoved ov�h�d o�bound�o�t%d: %s\n",
�v�
,
1877 (cڡ *)
r
.
��t_f�mu�_to_�r�g
());
1880
pickOv�h�d
(
r1
, -1);
1883
g�d
::
��
<
EQ_H�d�
, >
f�d_sim�e�_assignm�t
(cڡ
R��i�
&
R_
,
V��b�_ID
v
, cڡ
�d
::
ve��
<
CG_ou�utR�r
*> &
assig�d_�_the_�y
) {
1884
R��i�
&
R
=
cڡ_��
<R��i� &>(
R_
);
1885
C�jun�
*
gc
=
R
.
s�g�_c�jun�
();
1887
gm�_co�
=
INT_MAX
;
1888
EQ_H�d�
geq
;
1889
EQ_I��t�
ei
(
c
->
EQs
());
gei
;�i++)
1890 i�(!(*
gei
).
has_w�d�rds
(�&& (*ei).
g�_c�f
(
v
) != 0) {
1891
co�
= 0;
1893 i�(
abs
((*
ei
).
g�_c�f
(
v
)) != 1)
1894
co�
+= 4;
1896
gnum_v�
= 0;
1897
Cڡr_V�s_I�r
cvi
(*
ei
);
gcvi
; cvi++)
1898 i�((*
gcvi
).
gv�
!�
v
) {
1899
num_v�
++;
1900 i�((*
gcvi
).
gv�
->
k�d
(�=�
Glob�_V�
&& (*
cvi
).
v�
->
g�_glob�_v�
()->
��y
() > 0) {
1901
co�
+= 10;
1903 i�(
abs
((*
cvi
).
c�f
) != 1)
1904
co�
+= 2;
1905 i�((*
gcvi
).
gv�
->
k�d
(�=�
I�ut_V�
&&
assig�d_�_the_�y
[(*
cvi
).
v�
->
g�_pos�i�
()-1] !�
NULL
) {
1906
co�
+= 5;
1909 i�((*
gei
).
g�_cڡ
() != 0)
1910
num_v�
++;
1911 i�(
gnum_v�
> 1)
1912
gco�
+�
num_v�
- 1;
1914 i�(
gco�
<
gm�_co�
) {
1915
gm�_co�
=
co�
;
1916
geq
= *
ei
;
1920
g�d
::
make_��
(
eq
,
m�_co�
);
1923
max_fs_��y
(cڡ
Cڡ��t_H�d�
&
c
) {
1924
gmax_��y
=0;
1925
Cڡr_V�s_I�r
cv
(
c
);
gcv
; cv++)
1926 if((*
gcv
).
gv�
->
k�d
(�=�
Glob�_V�
)
1927
max_��y
=
max
(max_��y,(*
cv
).
v�
->
g�_glob�_v�
()->
��y
());
1928
gmax_��y
;
@/usr/include/math.h
25 #i�def
_MATH_H
26
#_MATH_H
1
)
28
~<�u�s.h
>
30
g__BEGIN_DECLS
34
~<b�s/huge_v�.h
>
35 #ifde�
__USE_ISOC99
36
~<b�s/huge_v�f.h
>
37
~<b�s/huge_v�l.h
>
40
~<b�s/�f.h
>
43
~<b�s/�n.h
>
47
~<b�s/m�hdef.h
>
54
#__MATHCALL
(
fun�i�
,
suffix
,
�gs
) \
55
`__MATHDECL
(
_Mdoub�_
,
fun�i�
,
suffix
,
�gs
)
)
56
#__MATHDECL
(
ty�
,
fun�i�
,
suffix
,
�gs
) \
57
`__MATHDECL_1
(
ty�
,
fun�i�
,
suffix
,
�gs
); \
58
`__MATHDECL_1
(
ty�
,
`__CONCAT
(
__
,
fun�i�
),
suffix
,
�gs
)
)
59
#__MATHCALLX
(
fun�i�
,
suffix
,
�gs
,
��ib
) \
60
`__MATHDECLX
(
_Mdoub�_
,
fun�i�
,
suffix
,
�gs
,
��ib
)
)
61
#__MATHDECLX
(
ty�
,
fun�i�
,
suffix
,
�gs
,
��ib
) \
62
`__MATHDECL_1
(
ty�
,
fun�i�
,
suffix
,
�gs
�
`__��ibu�__
(
��ib
); \
63
`__MATHDECL_1
(
ty�
,
`__CONCAT
(
__
,
fun�i�
),
suffix
,
�gs
�
`__��ibu�__
(
��ib
)
)
64
#__MATHDECL_1
(
ty�
,
fun�i�
,
suffix
,
�gs
) \
65
ty�
`__MATH_PRECNAME
(
fun�i�
,
suffix
�
�gs
__THROW
)
67
#_Mdoub�_
)
68
#__MATH_PRECNAME
(
�me
,
r
�
`__CONCAT
�ame,r)
)
69
#_Mdoub�_BEGIN_NAMESPACE
__BEGIN_NAMESPACE_STD
)
70
#_Mdoub�_END_NAMESPACE
__END_NAMESPACE_STD
)
71
~<b�s/m�h��s.h
>
72 #unde�
_Mdoub�_
73 #unde�
_Mdoub�_BEGIN_NAMESPACE
74 #unde�
_Mdoub�_END_NAMESPACE
75 #unde�
__MATH_PRECNAME
77 #i�
def�ed
__USE_MISC
|| def�ed
__USE_ISOC99
83 #i�de�
_M��t_
84
#_M��t_
)
86
#_Mdoub�_
_M��t_
)
87 #ifde�
__STDC__
88
#__MATH_PRECNAME
(
�me
,
r
��me##
f
##
)
r
90
#__MATH_PRECNAME
(
�me
,
r
��m�
f
)
r
92
#_Mdoub�_BEGIN_NAMESPACE
__BEGIN_NAMESPACE_C99
)
93
#_Mdoub�_END_NAMESPACE
__END_NAMESPACE_C99
)
94
~<b�s/m�h��s.h
>
95 #unde�
_Mdoub�_
96 #unde�
_Mdoub�_BEGIN_NAMESPACE
97 #unde�
_Mdoub�_END_NAMESPACE
98 #unde�
__MATH_PRECNAME
100 #i�(
__STDC__
- 0 ||
__GNUC__
- 0) \
101 && (!
def�ed
__NO_LONG_DOUBLE_MATH
\
102 ||
def�ed
__LDBL_COMPAT
\
103 || !
def�ed
_LIBC
)
104 #ifde�
__LDBL_COMPAT
106 #ifde�
__USE_ISOC99
107
$__�dbl_�x�ow�df
(
__x
,
__y
)
108
__THROW
`__��ibu�__
((
__cڡ__
));
109 #ifde�
__REDIRECT_NTH
110
`__REDIRECT_NTH
(
�x�ow�df
, (
__x
,
__y
),
111
__�dbl_�x�ow�df
)
112
`__��ibu�__
((
__cڡ__
));
113
`__REDIRECT_NTH
(
�x�ow�d
, (
__x
,
__y
),
114
�x��
�
`__��ibu�__
((
__cڡ__
));
115
`__REDIRECT_NTH
(
�x�ow�dl
,
116 (
__x
,
__y
),
117
�x��
�
`__��ibu�__
((
__cڡ__
));
122 #i�
def�ed
__LDBL_COMPAT
|| def�ed
__NO_LONG_DOUBLE_MATH
124 #unde�
__MATHDECL_1
125
#__MATHDECL_2
(
ty�
,
fun�i�
,
suffix
,
�gs
,
��s
) \
126
ty�
`__REDIRECT_NTH
(
`__MATH_PRECNAME
(
fun�i�
,
suffix
), \
127
�gs
,
��s
)
)
128
#__MATHDECL_1
(
ty�
,
fun�i�
,
suffix
,
�gs
) \
129
`__MATHDECL_2
(
ty�
,
fun�i�
,
suffix
,
�gs
,
`__CONCAT
(fun�i�,suffix))
)
134 #i�de�
_Ml�g_doub�_
135
#_Ml�g_doub�_
)
137
#_Mdoub�_
_Ml�g_doub�_
)
138 #ifde�
__STDC__
139
#__MATH_PRECNAME
(
�me
,
r
��me##
l
##
)
r
141
#__MATH_PRECNAME
(
�me
,
r
��m�
l
)
r
143
#_Mdoub�_BEGIN_NAMESPACE
__BEGIN_NAMESPACE_C99
)
144
#_Mdoub�_END_NAMESPACE
__END_NAMESPACE_C99
)
145
~<b�s/m�h��s.h
>
146 #unde�
_Mdoub�_
147 #unde�
_Mdoub�_BEGIN_NAMESPACE
148 #unde�
_Mdoub�_END_NAMESPACE
149 #unde�
__MATH_PRECNAME
154 #unde�
__MATHDECL_1
155 #unde�
__MATHDECL
156 #unde�
__MATHCALL
159 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
161
signgam
;
166 #ifde�
__USE_ISOC99
204
FP_NAN
,
205
#FP_NAN
FP_NAN
)
206
FP_INFINITE
,
207
#FP_INFINITE
FP_INFINITE
)
208
FP_ZERO
,
209
#FP_ZERO
FP_ZERO
)
210
FP_SUBNORMAL
,
211
#FP_SUBNORMAL
FP_SUBNORMAL
)
212
FP_NORMAL
213
#FP_NORMAL
FP_NORMAL
)
217 #ifde�
__NO_LONG_DOUBLE_MATH
218
#��assify
(
x
) \
219 ( (
x
�=� (�?
`__��assifyf
(x�:
`__��assify
(x))
)
221
#��assify
(
x
) \
222 ( (
x
) == () \
223 ?
`__��assifyf
(
x
) \
224 : (
x
) == () \
225 ?
`__��assify
(
x
�:
`__��assifyl
(x))
)
229 #ifde�
__NO_LONG_DOUBLE_MATH
230
#signb�
(
x
) \
231 ( (
x
�=� (�?
`__signb�f
(x�:
`__signb�
(x))
)
233
#signb�
(
x
) \
234 ( (
x
) == () \
235 ?
`__signb�f
(
x
) \
236 : (
x
) == () \
237 ?
`__signb�
(
x
�:
`__signb�l
(x))
)
241 #ifde�
__NO_LONG_DOUBLE_MATH
242
#isf��e
(
x
) \
243 ( (
x
�=� (�?
`__f��ef
(x�:
`__f��e
(x))
)
245
#isf��e
(
x
) \
246 ( (
x
) == () \
247 ?
`__f��ef
(
x
) \
248 : (
x
) == () \
249 ?
`__f��e
(
x
�:
`__f���
(x))
)
253
#i��m�
(
x
�(
`��assify
(x�=�
FP_NORMAL
)
)
257 #ifde�
__NO_LONG_DOUBLE_MATH
258
#i��
(
x
) \
259 ( (
x
�=� (�?
`__i��f
(x�:
`__i��
(x))
)
261
#i��
(
x
) \
262 ( (
x
) == () \
263 ?
`__i��f
(
x
) \
264 : (
x
) == () \
265 ?
`__i��
(
x
�:
`__i��l
(x))
)
269 #ifde�
__NO_LONG_DOUBLE_MATH
270
#is�f
(
x
) \
271 ( (
x
�=� (�?
`__is�ff
(x�:
`__is�f
(x))
)
273
#is�f
(
x
) \
274 ( (
x
) == () \
275 ?
`__is�ff
(
x
) \
276 : (
x
) == () \
277 ?
`__is�f
(
x
�:
`__is��
(x))
)
281
#MATH_ERRNO
1
)
282
#MATH_ERREXCEPT
2
)
287 #i�de�
__FAST_MATH__
288
#m�h_�rh�dl�g
(
MATH_ERRNO
|
MATH_ERREXCEPT
)
)
293 #ifdef
__USE_MISC
297
_IEEE_
= -1,
298
_SVID_
,
299
_XOPEN_
,
300
_POSIX_
,
301
_ISOC_
302 }
t_LIB_VERSION_TYPE
;
307
_LIB_VERSION_TYPE
_LIB_VERSION
;
311 #ifde�
__USE_SVID
317 #ifde�
__�lu�lus
318
__ex��i�
320
ex��i�
323
ty�
;
324 *
�me
;
325
�g1
;
326
�g2
;
327
�tv�
;
328
}
};
330 #ifde�
__�lu�lus
331
$m�h�r
(
__ex��i�
*
__exc
�
`throw
();
333
`m�h�r
(
ex��i�
*
__exc
);
336
#X_TLOSS
1.41484755040568800000e+16
)
339
#DOMAIN
1
)
340
#SING
2
)
341
#OVERFLOW
3
)
342
#UNDERFLOW
4
)
343
#TLOSS
5
)
344
#PLOSS
6
)
347
#HUGE
3.40282347e+38F
)
351 #ifde�
__USE_XOPEN
353
#MAXFLOAT
3.40282347e+38F
)
360 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN
361
#M_E
2.7182818284590452354
)
362
#M_LOG2E
1.4426950408889634074
)
363
#M_LOG10E
0.43429448190325182765
)
364
#M_LN2
0.69314718055994530942
)
365
#M_LN10
2.30258509299404568402
)
366
#M_PI
3.14159265358979323846
)
367
#M_PI_2
1.57079632679489661923
)
368
#M_PI_4
0.78539816339744830962
)
369
#M_1_PI
0.31830988618379067154
)
370
#M_2_PI
0.63661977236758134308
)
371
#M_2_SQRTPI
1.12837916709551257390
)
372
#M_SQRT2
1.41421356237309504880
)
373
#M_SQRT1_2
0.70710678118654752440
)
379 #ifde�
__USE_GNU
380
#M_El
2.7182818284590452353602874713526625L
)
381
#M_LOG2El
1.4426950408889634073599246810018921L
)
382
#M_LOG10El
0.4342944819032518276511289189166051L
)
383
#M_LN2l
0.6931471805599453094172321214581766L
)
384
#M_LN10l
2.3025850929940456840179914546843642L
)
385
#M_PIl
3.1415926535897932384626433832795029L
)
386
#M_PI_2l
1.5707963267948966192313216916397514L
)
387
#M_PI_4l
0.7853981633974483096156608458198757L
)
388
#M_1_PIl
0.3183098861837906715377675267450287L
)
389
#M_2_PIl
0.6366197723675813430755350534900574L
)
390
#M_2_SQRTPIl
1.1283791670955125738961589031215452L
)
391
#M_SQRT2l
1.4142135623730950488016887242096981L
)
392
#M_SQRT1_2l
0.7071067811865475244008443621048490L
)
399 #i�
def�ed
__STRICT_ANSI__
&& !def�ed
__NO_MATH_INLINES
400
#__NO_MATH_INLINES
1
)
403 #i�
def�ed
__USE_ISOC99
&&
`__GNUC_PREREQ
(2,97)
410
#isg���
(
x
,
y
�
`__bu�t�_isg���
(x, y)
)
411
#isg���equ�
(
x
,
y
�
`__bu�t�_isg���equ�
(x, y)
)
412
#i�ess
(
x
,
y
�
`__bu�t�_i�ess
(x, y)
)
413
#i�es�qu�
(
x
,
y
�
`__bu�t�_i�es�qu�
(x, y)
)
414
#i�essg���
(
x
,
y
�
`__bu�t�_i�essg���
(x, y)
)
415
#isun�d�ed
(
u
,
v
�
`__bu�t�_isun�d�ed
(u, v)
)
419 #ifde�
__USE_EXTERN_INLINES
420
~<b�s/m�h�l�e.h
>
423 #ifde�
__USE_ISOC99
427 #i�de�
isg���
428
#isg���
(
x
,
y
) \
429 (
__ex�nsi�__
\
430 ({
`__ty�of__
(
x
�
__x
= (x); __ty�of__(
y
�
__y
= (y); \
431 !
`isun�d�ed
(
__x
,
__y
�&& __x > __y;
}
}))
)
435 #i�de�
isg���equ�
436
#isg���equ�
(
x
,
y
) \
437 (
__ex�nsi�__
\
438 ({
`__ty�of__
(
x
�
__x
= (x); __ty�of__(
y
�
__y
= (y); \
439 !
`isun�d�ed
(
__x
,
__y
�&& __x >�__y; }))
)
443 #i�de�
i�ess
444
#i�ess
(
x
,
y
) \
445 (
__ex�nsi�__
\
446 ({
`__ty�of__
(
x
�
__x
= (x); __ty�of__(
y
�
__y
= (y); \
447 !
`isun�d�ed
(
__x
,
__y
�&& __x < __y; }))
)
451 #i�de�
i�es�qu�
452
#i�es�qu�
(
x
,
y
) \
453 (
__ex�nsi�__
\
454 ({
`__ty�of__
(
x
�
__x
= (x); __ty�of__(
y
�
__y
= (y); \
455 !
`isun�d�ed
(
__x
,
__y
�&& __x <�__y; }))
)
459 #i�de�
i�essg���
460
#i�essg���
(
x
,
y
) \
461 (
__ex�nsi�__
\
462 ({
`__ty�of__
(
x
�
__x
= (x); __ty�of__(
y
�
__y
= (y); \
463 !
`isun�d�ed
(
__x
,
__y
�&& (__x < __y || __y < __x); }))
)
467 #i�de�
isun�d�ed
468
#isun�d�ed
(
u
,
v
) \
469 (
__ex�nsi�__
\
470 ({
`__ty�of__
(
u
�
__u
= (u); __ty�of__(
v
�
__v
= (v); \
471
`��assify
(
__u
�=�
FP_NAN
|| fp�assify (
__v
�=�FP_NAN; }))
)
476
g__END_DECLS
@/usr/include/stdio.h
24 #i�de�
_STDIO_H
26 #i�!
def�ed
__�ed_FILE
&& !def�ed
__�ed___FILE
27
#_STDIO_H
1
)
28
~<�u�s.h
>
30
g__BEGIN_DECLS
32
#__�ed_size_t
)
33
#__�ed_NULL
)
34
~<�ddef.h
>
36
~<b�s/ty�s.h
>
37
#__�ed_FILE
)
38
#__�ed___FILE
)
42 #i�!
def�ed
__FILE_def�ed
&& def�ed
__�ed_FILE
45
g_IO_FILE
;
47
__BEGIN_NAMESPACE_STD
49
_IO_FILE
tFILE
;
50
g__END_NAMESPACE_STD
51 #i�
def�ed
__USE_LARGEFILE64
|| def�ed
__USE_SVID
|| def�ed
__USE_POSIX
\
52 ||
def�ed
g__USE_BSD
|| def�ed
g__USE_ISOC99
|| def�ed
g__USE_XOPEN
\
53 ||
def�ed
__USE_POSIX2
54
$__USING_NAMESPACE_STD
(
FILE
)
57
#__FILE_def�ed
1
)
59 #unde�
__�ed_FILE
62 #i�!
def�ed
____FILE_def�ed
&& def�ed
__�ed___FILE
65
_IO_FILE
t__FILE
;
67
#____FILE_def�ed
1
)
69 #unde�
__�ed___FILE
72 #ifdef
_STDIO_H
73
#_STDIO_USES_IOSTREAM
)
75
~<libio.h
>
77 #ifde�
__USE_XOPEN
78 #ifde�
__GNUC__
79 #i�de�
_VA_LIST_DEFINED
80
_G_va_li�
tva_li�
;
81
#_VA_LIST_DEFINED
)
84
~<�d�g.h
>
89
__BEGIN_NAMESPACE_STD
90 #i�de�
__USE_FILE_OFFSET64
91
_G_�os_t
t�os_t
;
93
_G_�os64_t
t�os_t
;
95
__END_NAMESPACE_STD
96 #ifde�
__USE_LARGEFILE64
97
_G_�os64_t
t�os64_t
;
101
#_IOFBF
0
)
102
#_IOLBF
1
)
103
#_IONBF
2
)
107 #i�de�
BUFSIZ
108
#BUFSIZ
_IO_BUFSIZ
)
114 #i�de�
EOF
115
#EOF
(-1)
)
121
#SEEK_SET
0
)
122
#SEEK_CUR
1
)
123
#SEEK_END
2
)
126 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
128
#P_tmpd�
"/tmp"
)
141
~<b�s/�dio_lim.h
>
145
_IO_FILE
*
�d�
;
146
_IO_FILE
*
�dout
;
147
_IO_FILE
*
�d�r
;
149
#�d�
�d�
)
150
#�dout
�dout
)
151
#�d�r
�d�r
)
153
__BEGIN_NAMESPACE_STD
155
$�move
(
__cڡ
*
__f��ame
�
__THROW
;
157
$��me
(
__cڡ
*
__�d
, __cڡ *
__�w
�
__THROW
;
158
__END_NAMESPACE_STD
160 #ifde�
__USE_ATFILE
162
$��m�t
(
__�dfd
,
__cڡ
*
__�d
,
__�wfd
,
163
__cڡ
*
__�w
�
__THROW
;
166
__BEGIN_NAMESPACE_STD
171 #i�de�
__USE_FILE_OFFSET64
172
FILE
*
$tmpf�e
(�
__wur
;
174 #ifde�
__REDIRECT
175
FILE
*
`__REDIRECT
(
tmpf�e
, (),
tmpf�e64
�
__wur
;
177
#tmpf�e
tmpf�e64
)
181 #ifde�
__USE_LARGEFILE64
182
FILE
*
$tmpf�e64
(�
__wur
;
186
*
$tm�am
(*
__s
�
__THROW
__wur
;
187
__END_NAMESPACE_STD
189 #ifde�
__USE_MISC
192
*
$tm�am_r
(*
__s
�
__THROW
__wur
;
196 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
204
*
$�m�am
(
__cڡ
*
__d�
, __cڡ *
__pfx
)
205
__THROW
__��ibu�_m�loc__
__wur
;
209
__BEGIN_NAMESPACE_STD
214
`f�o�
(
FILE
*
__��am
);
219
`f�ush
(
FILE
*
__��am
);
220
__END_NAMESPACE_STD
222 #ifde�
__USE_MISC
229
`f�ush_u�ocked
(
FILE
*
__��am
);
232 #ifde�
__USE_GNU
239
`f�o��l
();
243
__BEGIN_NAMESPACE_STD
244 #i�de�
__USE_FILE_OFFSET64
249
FILE
*
$fݒ
(
__cڡ
*
__��ri�
__f��ame
,
250
__cڡ
*
__��ri�
__modes
�
__wur
;
255
FILE
*
$�eݒ
(
__cڡ
*
__��ri�
__f��ame
,
256
__cڡ
*
__��ri�
__modes
,
257
FILE
*
__��ri�
__��am
�
__wur
;
259 #ifde�
__REDIRECT
260
FILE
*
`__REDIRECT
(
fݒ
, (
__cڡ
*
__��ri�
__f��ame
,
261
__cڡ
*
__��ri�
__modes
),
fݒ64
)
262
__wur
;
263
FILE
*
`__REDIRECT
(
�eݒ
, (
__cڡ
*
__��ri�
__f��ame
,
264
__cڡ
*
__��ri�
__modes
,
265
FILE
*
__��ri�
__��am
),
�eݒ64
)
266
__wur
;
268
#fݒ
fݒ64
)
269
#�eݒ
�eݒ64
)
272
__END_NAMESPACE_STD
273 #ifde�
__USE_LARGEFILE64
274
FILE
*
$fݒ64
(
__cڡ
*
__��ri�
__f��ame
,
275
__cڡ
*
__��ri�
__modes
�
__wur
;
276
FILE
*
$�eݒ64
(
__cڡ
*
__��ri�
__f��ame
,
277
__cڡ
*
__��ri�
__modes
,
278
FILE
*
__��ri�
__��am
�
__wur
;
281 #ifdef
__USE_POSIX
283
FILE
*
$fdݒ
(
__fd
,
__cڡ
*
__modes
�
__THROW
__wur
;
286 #ifdef
__USE_GNU
289
FILE
*
$fݒcook�
(*
__��ri�
__magic_cook�
,
290
__cڡ
*
__��ri�
__modes
,
291
_IO_cook�_io_fun�i�s_t
__io_funcs
�
__THROW
__wur
;
294 #ifde�
__USE_XOPEN2K8
296
FILE
*
$fmemݒ
(*
__s
,
size_t
__�n
,
__cڡ
*
__modes
)
297
__THROW
__wur
;
302
FILE
*
$ݒ_mem��am
(**
__bu�oc
,
size_t
*
__siz�oc
�
__THROW
__wur
;
306
__BEGIN_NAMESPACE_STD
309
$�tbuf
(
FILE
*
__��ri�
__��am
, *__��ri�
__buf
�
__THROW
;
313
$�tvbuf
(
FILE
*
__��ri�
__��am
, *__��ri�
__buf
,
314
__modes
,
size_t
__n
�
__THROW
;
315
__END_NAMESPACE_STD
317 #ifdef
__USE_BSD
320
$�tbuf�r
(
FILE
*
__��ri�
__��am
, *__��ri�
__buf
,
321
size_t
__size
�
__THROW
;
324
$���ebuf
(
FILE
*
__��am
�
__THROW
;
328
__BEGIN_NAMESPACE_STD
333
`�r�tf
(
FILE
*
__��ri�
__��am
,
334
__cڡ
*
__��ri�
__f�m�
, ...);
339
`��tf
(
__cڡ
*
__��ri�
__f�m�
, ...);
341
$�r�tf
(*
__��ri�
__s
,
342
__cڡ
*
__��ri�
__f�m�
, ...�
__THROW
;
348
`v�r�tf
(
FILE
*
__��ri�
__s
,
__cڡ
*__��ri�
__f�m�
,
349
_G_va_li�
__�g
);
354
`v��tf
(
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�g
);
356
$v�r�tf
(*
__��ri�
__s
,
__cڡ
*__��ri�
__f�m�
,
357
_G_va_li�
__�g
�
__THROW
;
358
__END_NAMESPACE_STD
360 #i�
def�ed
__USE_BSD
|| def�ed
__USE_ISOC99
|| def�ed
__USE_UNIX98
361
__BEGIN_NAMESPACE_C99
363
$���tf
(*
__��ri�
__s
,
size_t
__max�n
,
364
__cڡ
*
__��ri�
__f�m�
, ...)
365
__THROW
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 3, 4)));
367
$v���tf
(*
__��ri�
__s
,
size_t
__max�n
,
368
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�g
)
369
__THROW
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 3, 0)));
370
__END_NAMESPACE_C99
373 #ifde�
__USE_GNU
376
$va�r�tf
(**
__��ri�
__�r
,
__cڡ
*__��ri�
__f
,
377
_G_va_li�
__�g
)
378
__THROW
`__��ibu�__
((
$__f�m�__
(
__��tf__
, 2, 0))�
__wur
;
379
$__a�r�tf
(**
__��ri�
__�r
,
380
__cڡ
*
__��ri�
__fmt
, ...)
381
__THROW
`__��ibu�__
((
$__f�m�__
(
__��tf__
, 2, 3))�
__wur
;
382
$a�r�tf
(**
__��ri�
__�r
,
383
__cڡ
*
__��ri�
__fmt
, ...)
384
__THROW
`__��ibu�__
((
$__f�m�__
(
__��tf__
, 2, 3))�
__wur
;
387 #ifde�
__USE_XOPEN2K8
394
$vd��tf
(
__fd
,
__cڡ
*
__��ri�
__fmt
,
395
_G_va_li�
__�g
)
396
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 2, 0)));
397
$d��tf
(
__fd
,
__cڡ
*
__��ri�
__fmt
, ...)
398
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 2, 3)));
402
__BEGIN_NAMESPACE_STD
407
$fs�nf
(
FILE
*
__��ri�
__��am
,
408
__cڡ
*
__��ri�
__f�m�
, ...�
__wur
;
413
$s�nf
(
__cڡ
*
__��ri�
__f�m�
, ...�
__wur
;
415
$ss�nf
(
__cڡ
*
__��ri�
__s
,
416
__cڡ
*
__��ri�
__f�m�
, ...�
__THROW
;
418 #i�
def�ed
__USE_ISOC99
&& !def�ed
__USE_GNU
\
419 && (!
def�ed
__LDBL_COMPAT
|| !def�ed
__REDIRECT
) \
420 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
421 #ifde�
__REDIRECT
425
`__REDIRECT
(
fs�nf
, (
FILE
*
__��ri�
__��am
,
426
__cڡ
*
__��ri�
__f�m�
, ...),
427
__isoc99_fs�nf
�
__wur
;
428
`__REDIRECT
(
s�nf
, (
__cڡ
*
__��ri�
__f�m�
, ...),
429
__isoc99_s�nf
�
__wur
;
430
`__REDIRECT
(
ss�nf
, (
__cڡ
*
__��ri�
__s
,
431
__cڡ
*
__��ri�
__f�m�
, ...),
432
__isoc99_ss�nf
�
__THROW
;
434
$__isoc99_fs�nf
(
FILE
*
__��ri�
__��am
,
435
__cڡ
*
__��ri�
__f�m�
, ...�
__wur
;
436
$__isoc99_s�nf
(
__cڡ
*
__��ri�
__f�m�
, ...�
__wur
;
437
$__isoc99_ss�nf
(
__cڡ
*
__��ri�
__s
,
438
__cڡ
*
__��ri�
__f�m�
, ...�
__THROW
;
439
#fs�nf
__isoc99_fs�nf
)
440
#s�nf
__isoc99_s�nf
)
441
#ss�nf
__isoc99_ss�nf
)
445
__END_NAMESPACE_STD
447 #ifdef
__USE_ISOC99
448
__BEGIN_NAMESPACE_C99
453
$vfs�nf
(
FILE
*
__��ri�
__s
,
__cڡ
*__��ri�
__f�m�
,
454
_G_va_li�
__�g
)
455
`__��ibu�__
((
$__f�m�__
(
__s�nf__
, 2, 0))�
__wur
;
461
$vs�nf
(
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�g
)
462
`__��ibu�__
((
$__f�m�__
(
__s�nf__
, 1, 0))�
__wur
;
465
$vss�nf
(
__cڡ
*
__��ri�
__s
,
466
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�g
)
467
__THROW
`__��ibu�__
((
`__f�m�__
(
__s�nf__
, 2, 0)));
469 #i�!
def�ed
__USE_GNU
\
470 && (!
def�ed
__LDBL_COMPAT
|| !def�ed
__REDIRECT
) \
471 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
472 #ifde�
__REDIRECT
476
`__REDIRECT
(
vfs�nf
,
477 (
FILE
*
__��ri�
__s
,
478
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�g
),
479
__isoc99_vfs�nf
)
480
`__��ibu�__
((
$__f�m�__
(
__s�nf__
, 2, 0))�
__wur
;
481
`__REDIRECT
(
vs�nf
, (
__cڡ
*
__��ri�
__f�m�
,
482
_G_va_li�
__�g
),
__isoc99_vs�nf
)
483
`__��ibu�__
((
$__f�m�__
(
__s�nf__
, 1, 0))�
__wur
;
484
`__REDIRECT
(
vss�nf
,
485 (
__cڡ
*
__��ri�
__s
,
486
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�g
),
487
__isoc99_vss�nf
)
488
__THROW
`__��ibu�__
((
`__f�m�__
(
__s�nf__
, 2, 0)));
490
$__isoc99_vfs�nf
(
FILE
*
__��ri�
__s
,
491
__cڡ
*
__��ri�
__f�m�
,
492
_G_va_li�
__�g
�
__wur
;
493
$__isoc99_vs�nf
(
__cڡ
*
__��ri�
__f�m�
,
494
_G_va_li�
__�g
�
__wur
;
495
$__isoc99_vss�nf
(
__cڡ
*
__��ri�
__s
,
496
__cڡ
*
__��ri�
__f�m�
,
497
_G_va_li�
__�g
�
__THROW
;
498
#vfs�nf
__isoc99_vfs�nf
)
499
#vs�nf
__isoc99_vs�nf
)
500
#vss�nf
__isoc99_vss�nf
)
504
__END_NAMESPACE_C99
508
__BEGIN_NAMESPACE_STD
513
`fg�c
(
FILE
*
__��am
);
514
`g�c
(
FILE
*
__��am
);
520
`g�ch�
();
521
__END_NAMESPACE_STD
525
#g�c
(
_�
�
`_IO_g�c
(_�)
)
527 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
532
`g�c_u�ocked
(
FILE
*
__��am
);
533
`g�ch�_u�ocked
();
536 #ifde�
__USE_MISC
543
`fg�c_u�ocked
(
FILE
*
__��am
);
547
__BEGIN_NAMESPACE_STD
555
`�utc
(
__c
,
FILE
*
__��am
);
556
`putc
(
__c
,
FILE
*
__��am
);
562
`putch�
(
__c
);
563
__END_NAMESPACE_STD
567
#putc
(
_ch
,
_�
�
`_IO_putc
(_ch, _�)
)
569 #ifde�
__USE_MISC
576
`�utc_u�ocked
(
__c
,
FILE
*
__��am
);
579 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
584
`putc_u�ocked
(
__c
,
FILE
*
__��am
);
585
`putch�_u�ocked
(
__c
);
589 #i�
def�ed
__USE_SVID
|| def�ed
__USE_MISC
\
590 || (
def�ed
__USE_XOPEN
&& !def�ed
__USE_XOPEN2K
)
592
`g�w
(
FILE
*
__��am
);
595
`putw
(
__w
,
FILE
*
__��am
);
599
__BEGIN_NAMESPACE_STD
604
*
$fg�s
(*
__��ri�
__s
,
__n
,
FILE
*__��ri�
__��am
)
605
__wur
;
612
*
$g�s
(*
__s
�
__wur
;
613
__END_NAMESPACE_STD
615 #ifde�
__USE_GNU
622
*
$fg�s_u�ocked
(*
__��ri�
__s
,
__n
,
623
FILE
*
__��ri�
__��am
�
__wur
;
627 #ifdef
__USE_XOPEN2K8
638
_IO_ssize_t
$__g�d�im
(**
__��ri�
__l���
,
639
size_t
*
__��ri�
__n
,
__d�im��
,
640
FILE
*
__��ri�
__��am
�
__wur
;
641
_IO_ssize_t
$g�d�im
(**
__��ri�
__l���
,
642
size_t
*
__��ri�
__n
,
__d�im��
,
643
FILE
*
__��ri�
__��am
�
__wur
;
651
_IO_ssize_t
$g�l�e
(**
__��ri�
__l���
,
652
size_t
*
__��ri�
__n
,
653
FILE
*
__��ri�
__��am
�
__wur
;
657
__BEGIN_NAMESPACE_STD
662
`�uts
(
__cڡ
*
__��ri�
__s
,
FILE
*__��ri�
__��am
);
668
`puts
(
__cڡ
*
__s
);
675
`ung�c
(
__c
,
FILE
*
__��am
);
682
size_t
$�d
(*
__��ri�
__�r
,
size_t
__size
,
683
size_t
__n
,
FILE
*
__��ri�
__��am
�
__wur
;
688
size_t
`fwr�e
(
__cڡ
*
__��ri�
__�r
, size_�
__size
,
689
size_t
__n
,
FILE
*
__��ri�
__s
);
690
__END_NAMESPACE_STD
692 #ifde�
__USE_GNU
699
`�uts_u�ocked
(
__cڡ
*
__��ri�
__s
,
700
FILE
*
__��ri�
__��am
);
703 #ifde�
__USE_MISC
710
size_t
$�d_u�ocked
(*
__��ri�
__�r
,
size_t
__size
,
711
size_t
__n
,
FILE
*
__��ri�
__��am
�
__wur
;
712
size_t
`fwr�e_u�ocked
(
__cڡ
*
__��ri�
__�r
, size_�
__size
,
713
size_t
__n
,
FILE
*
__��ri�
__��am
);
717
__BEGIN_NAMESPACE_STD
722
`f�ek
(
FILE
*
__��am
,
__off
,
__wh��
);
727
$�l
(
FILE
*
__��am
�
__wur
;
732
`�w�d
(
FILE
*
__��am
);
733
__END_NAMESPACE_STD
740 #i�
def�ed
__USE_LARGEFILE
|| def�ed
__USE_XOPEN2K
741 #i�de�
__USE_FILE_OFFSET64
746
`f�eko
(
FILE
*
__��am
,
__off_t
__off
,
__wh��
);
751
__off_t
$�lo
(
FILE
*
__��am
�
__wur
;
753 #ifde�
__REDIRECT
754
`__REDIRECT
(
f�eko
,
755 (
FILE
*
__��am
,
__off64_t
__off
,
__wh��
),
756
f�eko64
);
757
__off64_t
`__REDIRECT
(
�lo
, (
FILE
*
__��am
),
�lo64
);
759
#f�eko
f�eko64
)
760
#�lo
�lo64
)
765
__BEGIN_NAMESPACE_STD
766 #i�de�
__USE_FILE_OFFSET64
771
`fg�pos
(
FILE
*
__��ri�
__��am
,
�os_t
*__��ri�
__pos
);
776
`f��os
(
FILE
*
__��am
,
__cڡ
�os_t
*
__pos
);
778 #ifde�
__REDIRECT
779
`__REDIRECT
(
fg�pos
, (
FILE
*
__��ri�
__��am
,
780
�os_t
*
__��ri�
__pos
),
fg�pos64
);
781
`__REDIRECT
(
f��os
,
782 (
FILE
*
__��am
,
__cڡ
�os_t
*
__pos
),
f��os64
);
784
#fg�pos
fg�pos64
)
785
#f��os
f��os64
)
788
__END_NAMESPACE_STD
790 #ifde�
__USE_LARGEFILE64
791
`f�eko64
(
FILE
*
__��am
,
__off64_t
__off
,
__wh��
);
792
__off64_t
$�lo64
(
FILE
*
__��am
�
__wur
;
793
`fg�pos64
(
FILE
*
__��ri�
__��am
,
�os64_t
*__��ri�
__pos
);
794
`f��os64
(
FILE
*
__��am
,
__cڡ
�os64_t
*
__pos
);
797
__BEGIN_NAMESPACE_STD
799
$����
(
FILE
*
__��am
�
__THROW
;
801
$�of
(
FILE
*
__��am
�
__THROW
__wur
;
803
$��
(
FILE
*
__��am
�
__THROW
__wur
;
804
__END_NAMESPACE_STD
806 #ifde�
__USE_MISC
808
$����_u�ocked
(
FILE
*
__��am
�
__THROW
;
809
$�of_u�ocked
(
FILE
*
__��am
�
__THROW
__wur
;
810
$��_u�ocked
(
FILE
*
__��am
�
__THROW
__wur
;
814
__BEGIN_NAMESPACE_STD
819
`���
(
__cڡ
*
__s
);
820
__END_NAMESPACE_STD
826
~<b�s/sys_��i�.h
>
829 #ifdef
__USE_POSIX
831
$f��o
(
FILE
*
__��am
�
__THROW
__wur
;
834 #ifde�
__USE_MISC
836
$f��o_u�ocked
(
FILE
*
__��am
�
__THROW
__wur
;
840 #i�(
def�ed
__USE_POSIX2
|| def�ed
__USE_SVID
|| def�ed
__USE_BSD
|| \
841
def�ed
__USE_MISC
)
846
FILE
*
$pݒ
(
__cڡ
*
__comm�d
, __cڡ *
__modes
�
__wur
;
852
`p�o�
(
FILE
*
__��am
);
856 #ifdef
__USE_POSIX
858
*
$��mid
(*
__s
�
__THROW
;
862 #ifde�
__USE_XOPEN
864
*
`cu�rid
(*
__s
);
868 #ifdef
__USE_GNU
869
ob�ack
;
872
$ob�ack_��tf
(
ob�ack
*
__��ri�
__ob�ack
,
873
__cڡ
*
__��ri�
__f�m�
, ...)
874
__THROW
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 2, 3)));
875
$ob�ack_v��tf
(
ob�ack
*
__��ri�
__ob�ack
,
876
__cڡ
*
__��ri�
__f�m�
,
877
_G_va_li�
__�gs
)
878
__THROW
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 2, 0)));
882 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
886
$�ockf�e
(
FILE
*
__��am
�
__THROW
;
890
$�rylockf�e
(
FILE
*
__��am
�
__THROW
__wur
;
893
$fu�ockf�e
(
FILE
*
__��am
�
__THROW
;
896 #i�
def�ed
__USE_XOPEN
&& !def�ed
__USE_XOPEN2K
&& !def�ed
__USE_GNU
900
#__�ed_g��t
)
901
~<g��t.h
>
906 #ifde�
__USE_EXTERN_INLINES
907
~<b�s/�dio.h
>
909 #i�
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
910
~<b�s/�dio2.h
>
912 #ifde�
__LDBL_COMPAT
913
~<b�s/�dio-ldbl.h
>
916
__END_DECLS
@/usr/include/string.h
23 #i�def
_STRING_H
24
#_STRING_H
1
)
26
~<�u�s.h
>
28
g__BEGIN_DECLS
31
#__�ed_size_t
)
32
#__�ed_NULL
)
33
~<�ddef.h
>
36 #i�
def�ed
__�lu�lus
&&
__GNUC_PREREQ
(4, 4)
37
#__CORRECT_ISO_CPP_STRING_H_PROTO
)
41
__BEGIN_NAMESPACE_STD
43
*
$mem�y
(*
__��ri�
__de�
,
44
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
45
__THROW
`__n�nu�
((1, 2));
48
*
$memmove
(*
__de�
,
__cڡ
*
__�c
,
size_t
__n
)
49
__THROW
`__n�nu�
((1, 2));
50
__END_NAMESPACE_STD
55 #i�
def�ed
__USE_SVID
|| def�ed
__USE_BSD
|| def�ed
__USE_XOPEN
56
*
$memc�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
57
__c
,
size_t
__n
)
58
__THROW
`__n�nu�
((1, 2));
62
__BEGIN_NAMESPACE_STD
64
*
$mem�t
(*
__s
,
__c
,
size_t
__n
�
__THROW
`__n�nu�
((1));
67
$memcmp
(
__cڡ
*
__s1
, __cڡ *
__s2
,
size_t
__n
)
68
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
71 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
74
*
`memchr
(*
__s
,
__c
,
size_t
__n
)
75
__THROW
`__asm
("memchr"�
__��ibu�_pu�__
`__n�nu�
((1));
76
__cڡ
*
`memchr
(__cڡ *
__s
,
__c
,
size_t
__n
)
77
__THROW
`__asm
("memchr"�
__��ibu�_pu�__
`__n�nu�
((1));
79 #ifde�
__OPTIMIZE__
80
__ex��_�ways_�l�e
*
81
`memchr
(*
__s
,
__c
,
size_t
__n
�
__THROW
83
`__bu�t�_memchr
(
__s
,
__c
,
__n
);
86
__ex��_�ways_�l�e
__cڡ
*
87
`memchr
(
__cڡ
*
__s
,
__c
,
size_t
__n
�
__THROW
89
`__bu�t�_memchr
(
__s
,
__c
,
__n
);
92
}
}
94
*
$memchr
(
__cڡ
*
__s
,
__c
,
size_t
__n
)
95
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
97
__END_NAMESPACE_STD
99 #ifde�
__USE_GNU
102 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
103
"C++" *
$�wmemchr
(*
__s
,
__c
)
104
__THROW
`__asm
("�wmemchr"�
__��ibu�_pu�__
`__n�nu�
((1));
105
"C++"
__cڡ
*
$�wmemchr
(
__cڡ
*
__s
,
__c
)
106
__THROW
`__asm
("�wmemchr"�
__��ibu�_pu�__
`__n�nu�
((1));
108
*
$�wmemchr
(
__cڡ
*
__s
,
__c
)
109
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
113 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
114
"C++" *
$memrchr
(*
__s
,
__c
,
size_t
__n
)
115
__THROW
`__asm
("memrchr"�
__��ibu�_pu�__
`__n�nu�
((1));
116
"C++"
__cڡ
*
$memrchr
(
__cڡ
*
__s
,
__c
,
size_t
__n
)
117
__THROW
`__asm
("memrchr"�
__��ibu�_pu�__
`__n�nu�
((1));
119
*
$memrchr
(
__cڡ
*
__s
,
__c
,
size_t
__n
)
120
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
125
__BEGIN_NAMESPACE_STD
127
*
$�r�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
)
128
__THROW
`__n�nu�
((1, 2));
130
*
$���y
(*
__��ri�
__de�
,
131
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
132
__THROW
`__n�nu�
((1, 2));
135
*
$�r�t
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
)
136
__THROW
`__n�nu�
((1, 2));
138
*
$���t
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
139
size_t
__n
�
__THROW
`__n�nu�
((1, 2));
142
$�rcmp
(
__cڡ
*
__s1
, __cڡ *
__s2
)
143
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
145
$��cmp
(
__cڡ
*
__s1
, __cڡ *
__s2
,
size_t
__n
)
146
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
149
$�rc�l
(
__cڡ
*
__s1
, __cڡ *
__s2
)
150
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
152
size_t
$�rx�m
(*
__��ri�
__de�
,
153
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
154
__THROW
`__n�nu�
((2));
155
__END_NAMESPACE_STD
157 #ifde�
__USE_XOPEN2K8
161
~<xlo��.h
>
164
$�rc�l_l
(
__cڡ
*
__s1
, __cڡ *
__s2
,
__lo��_t
__l
)
165
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2, 3));
167
size_t
$�rx�m_l
(*
__de�
,
__cڡ
*
__�c
,
size_t
__n
,
168
__lo��_t
__l
�
__THROW
`__n�nu�
((2, 4));
171 #i�
def�ed
__USE_SVID
|| def�ed
__USE_BSD
|| def�ed
__USE_XOPEN_EXTENDED
173
*
$�rdup
(
__cڡ
*
__s
)
174
__THROW
__��ibu�_m�loc__
`__n�nu�
((1));
180 #i�
def�ed
__USE_XOPEN2K8
181
*
$��dup
(
__cڡ
*
__�r�g
,
size_t
__n
)
182
__THROW
__��ibu�_m�loc__
`__n�nu�
((1));
185 #i�
def�ed
__USE_GNU
&& def�ed
__GNUC__
187
#�rdu�
(
s
) \
188 (
__ex�nsi�__
\
190
__cڡ
*
__�d
= (
s
); \
191
size_t
__�n
=
`���
(
__�d
) + 1; \
192 *
__�w
= (*�
`__bu�t�_�lo�
(
__�n
); \
193 (*�
`mem�y
(
__�w
,
__�d
,
__�n
); \
194
}
}))
)
197
#��du�
(
s
,
n
) \
198 (
__ex�nsi�__
\
200
__cڡ
*
__�d
= (
s
); \
201
size_t
__�n
=
`���n
(
__�d
, (
n
)); \
202 *
__�w
= (*�
`__bu�t�_�lo�
(
__�n
+ 1); \
203
__�w
[
__�n
] = '\0'; \
204 (*�
`mem�y
(
__�w
,
__�d
,
__�n
); \
205 }))
)
208
g__BEGIN_NAMESPACE_STD
210 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
213
*
�rchr
(*
__s
,
__c
)
214
__THROW
__asm
("�rchr"�
__��ibu�_pu�__
__n�nu�
((1));
215
__cڡ
*
�rchr
(__cڡ *
__s
,
__c
)
216
__THROW
__asm
("�rchr"�
__��ibu�_pu�__
__n�nu�
((1));
218 #ifde�
__OPTIMIZE__
219
__ex��_�ways_�l�e
*
220
�rchr
(*
__s
,
__c
�
g__THROW
222
__bu�t�_�rchr
(
__s
,
__c
);
225
__ex��_�ways_�l�e
__cڡ
*
226
�rchr
(
__cڡ
*
__s
,
__c
�
g__THROW
228
__bu�t�_�rchr
(
__s
,
__c
);
233
*
$�rchr
(
__cڡ
*
__s
,
__c
)
234
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
237 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
240
*
`��chr
(*
__s
,
__c
)
241
__THROW
`__asm
("��chr"�
__��ibu�_pu�__
`__n�nu�
((1));
242
__cڡ
*
`��chr
(__cڡ *
__s
,
__c
)
243
__THROW
`__asm
("��chr"�
__��ibu�_pu�__
`__n�nu�
((1));
245 #ifde�
__OPTIMIZE__
246
__ex��_�ways_�l�e
*
247
`��chr
(*
__s
,
__c
�
__THROW
249
`__bu�t�_��chr
(
__s
,
__c
);
252
__ex��_�ways_�l�e
__cڡ
*
253
`��chr
(
__cڡ
*
__s
,
__c
�
__THROW
255
`__bu�t�_��chr
(
__s
,
__c
);
258
}
}
260
*
$��chr
(
__cڡ
*
__s
,
__c
)
261
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
263
__END_NAMESPACE_STD
265 #ifde�
__USE_GNU
268 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
269
"C++" *
$�rch�ul
(*
__s
,
__c
)
270
__THROW
`__asm
("�rch�ul"�
__��ibu�_pu�__
`__n�nu�
((1));
271
"C++"
__cڡ
*
$�rch�ul
(
__cڡ
*
__s
,
__c
)
272
__THROW
`__asm
("�rch�ul"�
__��ibu�_pu�__
`__n�nu�
((1));
274
*
$�rch�ul
(
__cڡ
*
__s
,
__c
)
275
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
279
__BEGIN_NAMESPACE_STD
282
size_t
$�rc�n
(
__cڡ
*
__s
, __cڡ *
__�je�
)
283
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
286
size_t
$�r�n
(
__cڡ
*
__s
, __cڡ *
__ac��
)
287
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
289 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
292
*
`��brk
(*
__s
,
__cڡ
*
__ac��
)
293
__THROW
`__asm
("��brk"�
__��ibu�_pu�__
`__n�nu�
((1, 2));
294
__cڡ
*
`��brk
(__cڡ *
__s
, __cڡ *
__ac��
)
295
__THROW
`__asm
("��brk"�
__��ibu�_pu�__
`__n�nu�
((1, 2));
297 #ifde�
__OPTIMIZE__
298
__ex��_�ways_�l�e
*
299
`��brk
(*
__s
,
__cڡ
*
__ac��
�
__THROW
301
`__bu�t�_��brk
(
__s
,
__ac��
);
304
__ex��_�ways_�l�e
__cڡ
*
305
`��brk
(
__cڡ
*
__s
, __cڡ *
__ac��
�
__THROW
307
`__bu�t�_��brk
(
__s
,
__ac��
);
310
}
}
312
*
$��brk
(
__cڡ
*
__s
, __cڡ *
__ac��
)
313
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
316 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
319
*
`�r�r
(*
__hay�ack
,
__cڡ
*
__�ed�
)
320
__THROW
`__asm
("�r�r"�
__��ibu�_pu�__
`__n�nu�
((1, 2));
321
__cڡ
*
`�r�r
(__cڡ *
__hay�ack
,
322
__cڡ
*
__�ed�
)
323
__THROW
`__asm
("�r�r"�
__��ibu�_pu�__
`__n�nu�
((1, 2));
325 #ifde�
__OPTIMIZE__
326
__ex��_�ways_�l�e
*
327
`�r�r
(*
__hay�ack
,
__cڡ
*
__�ed�
�
__THROW
329
`__bu�t�_�r�r
(
__hay�ack
,
__�ed�
);
332
__ex��_�ways_�l�e
__cڡ
*
333
`�r�r
(
__cڡ
*
__hay�ack
, __cڡ *
__�ed�
�
__THROW
335
`__bu�t�_�r�r
(
__hay�ack
,
__�ed�
);
338
}
}
340
*
$�r�r
(
__cڡ
*
__hay�ack
, __cڡ *
__�ed�
)
341
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
346
*
$��ok
(*
__��ri�
__s
,
__cڡ
*__��ri�
__d�im
)
347
__THROW
`__n�nu�
((2));
348
__END_NAMESPACE_STD
352
*
$__��ok_r
(*
__��ri�
__s
,
353
__cڡ
*
__��ri�
__d�im
,
354 **
__��ri�
__�ve_�r
)
355
__THROW
`__n�nu�
((2, 3));
356 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
357
*
$��ok_r
(*
__��ri�
__s
,
__cڡ
*__��ri�
__d�im
,
358 **
__��ri�
__�ve_�r
)
359
__THROW
`__n�nu�
((2, 3));
362 #ifde�
__USE_GNU
364 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
365
"C++" *
$�r���r
(*
__hay�ack
,
__cڡ
*
__�ed�
)
366
__THROW
`__asm
("�r���r"�
__��ibu�_pu�__
`__n�nu�
((1, 2));
367
"C++"
__cڡ
*
$�r���r
(
__cڡ
*
__hay�ack
,
368
__cڡ
*
__�ed�
)
369
__THROW
`__asm
("�r���r"�
__��ibu�_pu�__
`__n�nu�
((1, 2));
371
*
$�r���r
(
__cڡ
*
__hay�ack
, __cڡ *
__�ed�
)
372
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
376 #ifde�
__USE_GNU
380
*
$memmem
(
__cڡ
*
__hay�ack
,
size_t
__hay�ack�n
,
381
__cڡ
*
__�ed�
,
size_t
__�ed��n
)
382
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 3));
386
*
$__memp�y
(*
__��ri�
__de�
,
387
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
388
__THROW
`__n�nu�
((1, 2));
389
*
$memp�y
(*
__��ri�
__de�
,
390
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
391
__THROW
`__n�nu�
((1, 2));
395
__BEGIN_NAMESPACE_STD
397
size_t
$���
(
__cڡ
*
__s
)
398
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
399
__END_NAMESPACE_STD
401 #ifdef
__USE_XOPEN2K8
404
size_t
$���n
(
__cڡ
*
__�r�g
,
size_t
__max�n
)
405
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
409
__BEGIN_NAMESPACE_STD
411
*
$����
(
__��um
�
__THROW
;
412
__END_NAMESPACE_STD
413 #i�
def�ed
__USE_XOPEN2K
|| def�ed
__USE_MISC
421 #i�
def�ed
__USE_XOPEN2K
&& !def�ed
__USE_GNU
424 #ifde�
__REDIRECT_NTH
425
`__REDIRECT_NTH
(
����_r
,
426 (
__��um
, *
__buf
,
size_t
__bu�
),
427
__xpg_����_r
�
`__n�nu�
((2));
429
$__xpg_����_r
(
__��um
, *
__buf
,
size_t
__bu�
)
430
__THROW
`__n�nu�
((2));
431
#����_r
__xpg_����_r
)
436
*
$����_r
(
__��um
, *
__buf
,
size_t
__bu�
)
437
__THROW
`__n�nu�
((2));
441 #ifde�
__USE_XOPEN2K8
443
*
$����_l
(
__��um
,
__lo��_t
__l
�
__THROW
;
449
$__bz�o
(*
__s
,
size_t
__n
�
__THROW
`__n�nu�
((1));
451 #ifde�
__USE_BSD
453
$bc�y
(
__cڡ
*
__�c
, *
__de�
,
size_t
__n
)
454
__THROW
`__n�nu�
((1, 2));
457
$bz�o
(*
__s
,
size_t
__n
�
__THROW
`__n�nu�
((1));
460
$bcmp
(
__cڡ
*
__s1
, __cڡ *
__s2
,
size_t
__n
)
461
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
464 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
467
*
`�dex
(*
__s
,
__c
)
468
__THROW
`__asm
("�dex"�
__��ibu�_pu�__
`__n�nu�
((1));
469
__cڡ
*
`�dex
(__cڡ *
__s
,
__c
)
470
__THROW
`__asm
("�dex"�
__��ibu�_pu�__
`__n�nu�
((1));
472 #i�
def�ed
__OPTIMIZE__
&& !def�ed
__CORRECT_ISO_CPP_STRINGS_H_PROTO
473
__ex��_�ways_�l�e
*
474
`�dex
(*
__s
,
__c
�
__THROW
476
`__bu�t�_�dex
(
__s
,
__c
);
479
__ex��_�ways_�l�e
__cڡ
*
480
`�dex
(
__cڡ
*
__s
,
__c
�
__THROW
482
`__bu�t�_�dex
(
__s
,
__c
);
485
}
}
487
*
$�dex
(
__cڡ
*
__s
,
__c
)
488
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
492 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
495
*
`r�dex
(*
__s
,
__c
)
496
__THROW
`__asm
("r�dex"�
__��ibu�_pu�__
`__n�nu�
((1));
497
__cڡ
*
`r�dex
(__cڡ *
__s
,
__c
)
498
__THROW
`__asm
("r�dex"�
__��ibu�_pu�__
`__n�nu�
((1));
500 #i�
def�ed
__OPTIMIZE__
&& !def�ed
__CORRECT_ISO_CPP_STRINGS_H_PROTO
501
__ex��_�ways_�l�e
*
502
`r�dex
(*
__s
,
__c
�
__THROW
504
`__bu�t�_r�dex
(
__s
,
__c
);
507
__ex��_�ways_�l�e
__cڡ
*
508
`r�dex
(
__cڡ
*
__s
,
__c
�
__THROW
510
`__bu�t�_r�dex
(
__s
,
__c
);
513
}
}
515
*
$r�dex
(
__cڡ
*
__s
,
__c
)
516
__THROW
__��ibu�_pu�__
`__n�nu�
((1));
521
$ffs
(
__i
�
__THROW
`__��ibu�__
((
__cڡ__
));
525 #ifdef
__USE_GNU
526
$ff�
(
__l
�
__THROW
`__��ibu�__
((
__cڡ__
));
527 #ifde�
__GNUC__
528
__ex�nsi�__
$ff�l
(
__�
)
529
__THROW
`__��ibu�__
((
__cڡ__
));
534
$�r��cmp
(
__cڡ
*
__s1
, __cڡ *
__s2
)
535
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
538
$����cmp
(
__cڡ
*
__s1
, __cڡ *
__s2
,
size_t
__n
)
539
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
542 #ifdef
__USE_GNU
545
$�r��cmp_l
(
__cڡ
*
__s1
, __cڡ *
__s2
,
546
__lo��_t
__loc
)
547
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2, 3));
549
$����cmp_l
(
__cڡ
*
__s1
, __cڡ *
__s2
,
550
size_t
__n
,
__lo��_t
__loc
)
551
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2, 4));
554 #ifdef
__USE_BSD
557
*
$�r�p
(**
__��ri�
__�r�gp
,
558
__cڡ
*
__��ri�
__d�im
)
559
__THROW
`__n�nu�
((1, 2));
562 #ifdef
__USE_XOPEN2K8
564
*
$�rsig�l
(
__sig
�
__THROW
;
567
*
$__�p�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
)
568
__THROW
`__n�nu�
((1, 2));
569
*
$�p�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
)
570
__THROW
`__n�nu�
((1, 2));
574
*
$__���y
(*
__��ri�
__de�
,
575
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
576
__THROW
`__n�nu�
((1, 2));
577
*
$���y
(*
__��ri�
__de�
,
578
__cڡ
*
__��ri�
__�c
,
size_t
__n
)
579
__THROW
`__n�nu�
((1, 2));
582 #ifdef
__USE_GNU
584
$�rv�scmp
(
__cڡ
*
__s1
, __cڡ *
__s2
)
585
__THROW
__��ibu�_pu�__
`__n�nu�
((1, 2));
588
*
$�r�y
(*
__�r�g
�
__THROW
`__n�nu�
((1));
591
*
$mem�ob
(*
__s
,
size_t
__n
�
__THROW
`__n�nu�
((1));
593 #i�de�
ba��me
598 #ifde�
__CORRECT_ISO_CPP_STRING_H_PROTO
599
"C++" *
$ba��me
(*
__f��ame
)
600
__THROW
`__asm
("ba��me"�
`__n�nu�
((1));
601
"C++"
__cڡ
*
$ba��me
(
__cڡ
*
__f��ame
)
602
__THROW
`__asm
("ba��me"�
`__n�nu�
((1));
604
*
$ba��me
(
__cڡ
*
__f��ame
�
__THROW
`__n�nu�
((1));
610 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
611 #i�
def�ed
__OPTIMIZE__
&& !def�ed
__OPTIMIZE_SIZE__
\
612 && !
def�ed
__NO_INLINE__
&& !def�ed
__�lu�lus
632
~<b�s/�r�g.h
>
635
~<b�s/�r�g2.h
>
638 #i�
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
640
~<b�s/�r�g3.h
>
644
__END_DECLS
@/usr/include/bits/huge_val.h
22 #i�de�
_MATH_H
28 #i�
__GNUC_PREREQ
(3,3)
29
#HUGE_VAL
(
`__bu�t�_huge_v�
())
)
30 #�i�
__GNUC_PREREQ
(2,96)
31
#HUGE_VAL
(
__ex�nsi�__
0x1.0
p2047
)
)
32 #�i�
def�ed
__GNUC__
34
#HUGE_VAL
\
35 (
__ex�nsi�__
\
36 ((uni� {
__l
`__��ibu�__
((
`__mode__
(
__DI__
)));
__d
; }) \
37 {
__l
: 0x7ff0000000000000ULL }).
__d
)
)
41
~<�d�n.h
>
43 uni� {
m__c
[8];
m__d
; }
t__huge_v�_t
;
45 #i�
__BYTE_ORDER
=�
__BIG_ENDIAN
46
#__HUGE_VAL_by�s
{ 0x7f, 0xf0, 0, 0, 0, 0, 0, 0 }
)
48 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
49
#__HUGE_VAL_by�s
{ 0, 0, 0, 0, 0, 0, 0xf0, 0x7�}
)
52
__huge_v�_t
g__huge_v�
= {
__HUGE_VAL_by�s
};
53
#HUGE_VAL
(
__huge_v�
.
__d
)
)
@/usr/include/bits/huge_valf.h
22 #i�de�
_MATH_H
28 #i�
__GNUC_PREREQ
(3,3)
29
#HUGE_VALF
(
`__bu�t�_huge_v�f
())
)
30 #�i�
__GNUC_PREREQ
(2,96)
31
#HUGE_VALF
(
__ex�nsi�__
0x1.0
p255f
)
)
32 #�i�
def�ed
__GNUC__
34
#HUGE_VALF
\
35 (
__ex�nsi�__
\
36 ((uni� {
__l
`__��ibu�__
((
`__mode__
(
__SI__
)));
__d
; }) \
37 {
__l
: 0x7f800000UL }).
__d
)
)
41 uni� {
m__c
[4];
m__f
; }
t__huge_v�f_t
;
43 #i�
__BYTE_ORDER
=�
__BIG_ENDIAN
44
#__HUGE_VALF_by�s
{ 0x7f, 0x80, 0, 0 }
)
46 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
47
#__HUGE_VALF_by�s
{ 0, 0, 0x80, 0x7�}
)
50
__huge_v�f_t
g__huge_v�f
= {
__HUGE_VALF_by�s
};
51
#HUGE_VALF
(
__huge_v�f
.
__f
)
)
@/usr/include/bits/huge_vall.h
21 #i�de�
_MATH_H
25 #i�
__GNUC_PREREQ
(3,3)
26
#HUGE_VALL
(
`__bu�t�_huge_v�l
())
)
28
#HUGE_VALL
((�
HUGE_VAL
)
)
@/usr/include/bits/inf.h
20 #i�de�
_MATH_H
26 #i�
__GNUC_PREREQ
(3,3)
27
#INFINITY
(
`__bu�t�_�ff
())
)
29
#INFINITY
HUGE_VALF
)
@/usr/include/bits/mathcalls.h
46 #i�de�
_MATH_H
53
_Mdoub�_BEGIN_NAMESPACE
55
__MATHCALL
(
acos
,, (
_Mdoub�_
__x
));
57
__MATHCALL
(
as�
,, (
_Mdoub�_
__x
));
59
__MATHCALL
(
��
,, (
_Mdoub�_
__x
));
61
__MATHCALL
(
��2
,, (
_Mdoub�_
__y
, _Mdoub�_
__x
));
64
__MATHCALL
(
cos
,, (
_Mdoub�_
__x
));
66
__MATHCALL
(
s�
,, (
_Mdoub�_
__x
));
68
__MATHCALL
(
�n
,, (
_Mdoub�_
__x
));
73
__MATHCALL
(
cosh
,, (
_Mdoub�_
__x
));
75
__MATHCALL
(
s�h
,, (
_Mdoub�_
__x
));
77
__MATHCALL
(
�nh
,, (
_Mdoub�_
__x
));
78
g_Mdoub�_END_NAMESPACE
80 #ifde�
__USE_GNU
82
__MATHDECL
(,
s�cos
,,
83 (
_Mdoub�_
__x
, _Mdoub�_ *
__s�x
, _Mdoub�_ *
__cosx
));
86 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
|| def�ed
__USE_ISOC99
87
__BEGIN_NAMESPACE_C99
89
__MATHCALL
(
acosh
,, (
_Mdoub�_
__x
));
91
__MATHCALL
(
as�h
,, (
_Mdoub�_
__x
));
93
__MATHCALL
(
��h
,, (
_Mdoub�_
__x
));
94
g__END_NAMESPACE_C99
99
_Mdoub�_BEGIN_NAMESPACE
101
__MATHCALL
(
exp
,, (
_Mdoub�_
__x
));
104
__MATHCALL
(
�exp
,, (
_Mdoub�_
__x
, *
__expڒt
));
107
__MATHCALL
(
ldexp
,, (
_Mdoub�_
__x
,
__expڒt
));
110
__MATHCALL
(
log
,, (
_Mdoub�_
__x
));
113
__MATHCALL
(
log10
,, (
_Mdoub�_
__x
));
116
__MATHCALL
(
modf
,, (
_Mdoub�_
__x
, _Mdoub�_ *
__��
));
117
g_Mdoub�_END_NAMESPACE
119 #ifde�
__USE_GNU
121
__MATHCALL
(
exp10
,, (
_Mdoub�_
__x
));
123
__MATHCALL
(
pow10
,, (
_Mdoub�_
__x
));
126 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
|| def�ed
__USE_ISOC99
127
__BEGIN_NAMESPACE_C99
129
__MATHCALL
(
expm1
,, (
_Mdoub�_
__x
));
132
__MATHCALL
(
log1p
,, (
_Mdoub�_
__x
));
135
__MATHCALL
(
logb
,, (
_Mdoub�_
__x
));
136
g__END_NAMESPACE_C99
139 #ifde�
__USE_ISOC99
140
__BEGIN_NAMESPACE_C99
142
__MATHCALL
(
exp2
,, (
_Mdoub�_
__x
));
145
__MATHCALL
(
log2
,, (
_Mdoub�_
__x
));
146
g__END_NAMESPACE_C99
152
_Mdoub�_BEGIN_NAMESPACE
154
__MATHCALL
(
pow
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
157
__MATHCALL
(
sq�
,, (
_Mdoub�_
__x
));
158
g_Mdoub�_END_NAMESPACE
160 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
|| def�ed
__USE_ISOC99
161
__BEGIN_NAMESPACE_C99
163
__MATHCALL
(
hyp�
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
164
g__END_NAMESPACE_C99
167 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
|| def�ed
__USE_ISOC99
168
__BEGIN_NAMESPACE_C99
170
__MATHCALL
(
cb�
,, (
_Mdoub�_
__x
));
171
g__END_NAMESPACE_C99
177
_Mdoub�_BEGIN_NAMESPACE
179
__MATHCALLX
(
��
,, (
_Mdoub�_
__x
), (
__cڡ__
));
182
__MATHCALLX
(
�bs
,, (
_Mdoub�_
__x
), (
__cڡ__
));
185
__MATHCALLX
(
�o�
,, (
_Mdoub�_
__x
), (
__cڡ__
));
188
__MATHCALL
(
fmod
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
193
__MATHDECL_1
(,
__is�f
,, (
_Mdoub�_
__v�ue
)�
__��ibu�__
((
__cڡ__
));
196
__MATHDECL_1
(,
__f��e
,, (
_Mdoub�_
__v�ue
)�
__��ibu�__
((
__cڡ__
));
197
g_Mdoub�_END_NAMESPACE
199 #ifde�
__USE_MISC
202
__MATHDECL_1
(,
is�f
,, (
_Mdoub�_
__v�ue
)�
__��ibu�__
((
__cڡ__
));
205
__MATHDECL_1
(,
f��e
,, (
_Mdoub�_
__v�ue
)�
__��ibu�__
((
__cڡ__
));
208
__MATHCALL
(
d�m
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
212
__MATHCALL
(
signifi�nd
,, (
_Mdoub�_
__x
));
215 #i�
def�ed
__USE_MISC
|| def�ed
__USE_ISOC99
216
__BEGIN_NAMESPACE_C99
218
__MATHCALLX
(
c�ysign
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
), (
__cڡ__
));
219
g__END_NAMESPACE_C99
222 #ifde�
__USE_ISOC99
223
__BEGIN_NAMESPACE_C99
225
__MATHCALLX
(
�n
,, (
__cڡ
*
__�gb
), (
__cڡ__
));
226
g__END_NAMESPACE_C99
231
__MATHDECL_1
(,
__i��
,, (
_Mdoub�_
__v�ue
)�
__��ibu�__
((
__cڡ__
));
233 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
235
__MATHDECL_1
(,
i��
,, (
_Mdoub�_
__v�ue
)�
__��ibu�__
((
__cڡ__
));
238
__MATHCALL
(
j0
,, (
_Mdoub�_
));
239
__MATHCALL
(
j1
,, (
_Mdoub�_
));
240
__MATHCALL
(
jn
,, (,
_Mdoub�_
));
241
__MATHCALL
(
y0
,, (
_Mdoub�_
));
242
__MATHCALL
(
y1
,, (
_Mdoub�_
));
243
__MATHCALL
(
yn
,, (,
_Mdoub�_
));
247 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
|| def�ed
__USE_ISOC99
248
__BEGIN_NAMESPACE_C99
250
__MATHCALL
(
�f
,, (
_Mdoub�_
));
251
__MATHCALL
(
�fc
,, (
_Mdoub�_
));
252
__MATHCALL
(
lgamma
,, (
_Mdoub�_
));
253
g__END_NAMESPACE_C99
256 #ifde�
__USE_ISOC99
257
__BEGIN_NAMESPACE_C99
259
__MATHCALL
(
tgamma
,, (
_Mdoub�_
));
260
g__END_NAMESPACE_C99
263 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
265
__MATHCALL
(
gamma
,, (
_Mdoub�_
));
268 #ifde�
__USE_MISC
272
__MATHCALL
(
lgamma
,
_r
, (
_Mdoub�_
, *
__signgamp
));
276 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
|| def�ed
__USE_ISOC99
277
__BEGIN_NAMESPACE_C99
280
__MATHCALL
(
r�t
,, (
_Mdoub�_
__x
));
283
__MATHCALLX
(
�x��
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
), (
__cڡ__
));
284 #i�
def�ed
__USE_ISOC99
&& !def�ed
__LDBL_COMPAT
285
__MATHCALLX
(
�x�ow�d
,, (
_Mdoub�_
__x
,
__y
), (
__cڡ__
));
289
__MATHCALL
(
�ma�d�
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
291 #i�
def�ed
__USE_MISC
|| def�ed
__USE_ISOC99
293
__MATHCALL
(
s�lbn
,, (
_Mdoub�_
__x
,
__n
));
297
__MATHDECL
(,
�ogb
,, (
_Mdoub�_
__x
));
300 #ifde�
__USE_ISOC99
302
__MATHCALL
(
s�lb�
,, (
_Mdoub�_
__x
,
__n
));
306
__MATHCALL
(
ìby�t
,, (
_Mdoub�_
__x
));
310
__MATHCALLX
(
round
,, (
_Mdoub�_
__x
), (
__cڡ__
));
314
__MATHCALLX
(
�unc
,, (
_Mdoub�_
__x
), (
__cڡ__
));
319
__MATHCALL
(
�mquo
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
, *
__quo
));
326
__MATHDECL
(,
̚t
,, (
_Mdoub�_
__x
));
327
__MATHDECL
(,
�r�t
,, (
_Mdoub�_
__x
));
331
__MATHDECL
(,
�ound
,, (
_Mdoub�_
__x
));
332
__MATHDECL
(,
�round
,, (
_Mdoub�_
__x
));
336
__MATHCALL
(
fdim
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
339
__MATHCALL
(
fmax
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
342
__MATHCALL
(
fm�
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
));
346
__MATHDECL_1
(,
__��assify
,, (
_Mdoub�_
__v�ue
))
347
__��ibu�__
((
__cڡ__
));
350
__MATHDECL_1
(,
__signb�
,, (
_Mdoub�_
__v�ue
))
351
__��ibu�__
((
__cڡ__
));
355
__MATHCALL
(
fma
,, (
_Mdoub�_
__x
, _Mdoub�_
__y
, _Mdoub�_
__z
));
358 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
|| def�ed
__USE_ISOC99
359
g__END_NAMESPACE_C99
362 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
364
__MATHCALL
(
s�lb
,, (
_Mdoub�_
__x
, _Mdoub�_
__n
));
@/usr/include/bits/mathdef.h
19 #i�!
def�ed
_MATH_H
&& !def�ed
_COMPLEX_H
23 #i�
def�ed
__USE_ISOC99
&& def�ed
_MATH_H
&& !def�ed
_MATH_H_MATHDEF
24
#_MATH_H_MATHDEF
1
)
26
~<b�s/w�dsize.h
>
28 #i�
__WORDSIZE
=�64 || (
def�ed
__FLT_EVAL_METHOD__
&& __FLT_EVAL_METHOD__ == 0)
31
t��t_t
;
32
tdoub�_t
;
38
t��t_t
;
40
tdoub�_t
;
45
#FP_ILOGB0
(-2147483647 - 1)
)
46
#FP_ILOGBNAN
(-2147483647 - 1)
)
@/usr/include/bits/mathinline.h
21 #i�de�
_MATH_H
25
~<b�s/w�dsize.h
>
27 #i�de�
__ex��_�l�e
28
#__MATH_INLINE
__�l�e
)
30
#__MATH_INLINE
__ex��_�l�e
)
34 #i�
def�ed
__USE_ISOC99
&& def�ed
__GNUC__
&& __GNUC__ >= 2
37
__MATH_INLINE
38
__NTH
(
$__signb�f
(
__x
))
40 #i�
__WORDSIZE
== 32
41
__ex�nsi�__
uni� {
__f
;
__i
; }
__u
= { __f:
__x
};
42
__u
.
__i
< 0;
44
__m
;
45
`__asm
("pmovmskb %1, %0" : "�" (
__m
�: "x" (
__x
));
46
__m
& 0x8;
48
}
}
49
__MATH_INLINE
50
__NTH
(
$__signb�
(
__x
))
52 #i�
__WORDSIZE
== 32
53
__ex�nsi�__
uni� {
__d
;
__i
[2]; }
__u
= { __d:
__x
};
54
__u
.
__i
[1] < 0;
56
__m
;
57
`__asm
("pmovmskb %1, %0" : "�" (
__m
�: "x" (
__x
));
58
__m
& 0x80;
60
}
}
61
__MATH_INLINE
62
__NTH
(
$__signb�l
(
__x
))
64
__ex�nsi�__
uni� {
__l
;
__i
[3]; }
__u
= { __l:
__x
};
65 (
__u
.
__i
[2] & 0x8000) != 0;
66
}
}
@/usr/include/bits/nan.h
20 #i�de�
_MATH_H
27 #i�
__GNUC_PREREQ
(3,3)
29
#NAN
(
`__bu�t�_�nf
(""))
)
31 #�i�
def�ed
__GNUC__
33
#NAN
\
34 (
__ex�nsi�__
\
35 ((uni� {
__l
`__��ibu�__
((
`__mode__
(
__SI__
)));
__d
; }) \
36 {
__l
: 0x7fc00000UL }).
__d
)
)
40
~<�d�n.h
>
42 #i�
__BYTE_ORDER
=�
__BIG_ENDIAN
43
#__�n_by�s
{ 0x7f, 0xc0, 0, 0 }
)
45 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
46
#__�n_by�s
{ 0, 0, 0xc0, 0x7�}
)
49 uni� {
m__c
[4];
m__d
; }
__�n_uni�
50
g__��ibu�_u�d__
= {
__�n_by�s
};
51
#NAN
(
__�n_uni�
.
__d
)
)
@/usr/include/bits/stdio-ldbl.h
20 #i�de�
_STDIO_H
24
__BEGIN_NAMESPACE_STD
25
$__LDBL_REDIR_DECL
(
�r�tf
)
26
$__LDBL_REDIR_DECL
(
��tf
)
27
$__LDBL_REDIR_DECL
(
�r�tf
)
28
$__LDBL_REDIR_DECL
(
v�r�tf
)
29
$__LDBL_REDIR_DECL
(
v��tf
)
30
$__LDBL_REDIR_DECL
(
v�r�tf
)
31 #i�
def�ed
__USE_ISOC99
&& !def�ed
__USE_GNU
\
32 && !
def�ed
__REDIRECT
\
33 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
34
$__LDBL_REDIR1_DECL
(
fs�nf
,
__�dbl___isoc99_fs�nf
)
35
$__LDBL_REDIR1_DECL
(
s�nf
,
__�dbl___isoc99_s�nf
)
36
$__LDBL_REDIR1_DECL
(
ss�nf
,
__�dbl___isoc99_ss�nf
)
38
$__LDBL_REDIR_DECL
(
fs�nf
)
39
$__LDBL_REDIR_DECL
(
s�nf
)
40
$__LDBL_REDIR_DECL
(
ss�nf
)
42
__END_NAMESPACE_STD
44 #i�
def�ed
__USE_BSD
|| def�ed
__USE_ISOC99
|| def�ed
__USE_UNIX98
45
__BEGIN_NAMESPACE_C99
46
$__LDBL_REDIR_DECL
(
���tf
)
47
$__LDBL_REDIR_DECL
(
v���tf
)
48
__END_NAMESPACE_C99
51 #ifdef
__USE_ISOC99
52
__BEGIN_NAMESPACE_C99
53 #i�!
def�ed
__USE_GNU
&& !def�ed
__REDIRECT
\
54 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
55
$__LDBL_REDIR1_DECL
(
vfs�nf
,
__�dbl___isoc99_vfs�nf
)
56
$__LDBL_REDIR1_DECL
(
vs�nf
,
__�dbl___isoc99_vs�nf
)
57
$__LDBL_REDIR1_DECL
(
vss�nf
,
__�dbl___isoc99_vss�nf
)
59
$__LDBL_REDIR_DECL
(
vfs�nf
)
60
$__LDBL_REDIR_DECL
(
vss�nf
)
61
$__LDBL_REDIR_DECL
(
vs�nf
)
63
__END_NAMESPACE_C99
66 #ifde�
__USE_GNU
67
$__LDBL_REDIR_DECL
(
vd��tf
)
68
$__LDBL_REDIR_DECL
(
d��tf
)
69
$__LDBL_REDIR_DECL
(
va�r�tf
)
70
$__LDBL_REDIR_DECL
(
__a�r�tf
)
71
$__LDBL_REDIR_DECL
(
a�r�tf
)
72
$__LDBL_REDIR_DECL
(
ob�ack_��tf
)
73
$__LDBL_REDIR_DECL
(
ob�ack_v��tf
)
76 #i�
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
77
$__LDBL_REDIR_DECL
(
__�r�tf_chk
)
78
$__LDBL_REDIR_DECL
(
__v�r�tf_chk
)
79 #i�
def�ed
__USE_BSD
|| def�ed
__USE_ISOC99
|| def�ed
__USE_UNIX98
80
$__LDBL_REDIR_DECL
(
__���tf_chk
)
81
$__LDBL_REDIR_DECL
(
__v���tf_chk
)
83 #i�
__USE_FORTIFY_LEVEL
> 1
84
$__LDBL_REDIR_DECL
(
__�r�tf_chk
)
85
$__LDBL_REDIR_DECL
(
__��tf_chk
)
86
$__LDBL_REDIR_DECL
(
__v�r�tf_chk
)
87
$__LDBL_REDIR_DECL
(
__v��tf_chk
)
88 #ifde�
__USE_GNU
89
$__LDBL_REDIR_DECL
(
__a�r�tf_chk
)
90
$__LDBL_REDIR_DECL
(
__va�r�tf_chk
)
91
$__LDBL_REDIR_DECL
(
__d��tf_chk
)
92
$__LDBL_REDIR_DECL
(
__vd��tf_chk
)
93
$__LDBL_REDIR_DECL
(
__ob�ack_��tf_chk
)
94
$__LDBL_REDIR_DECL
(
__ob�ack_v��tf_chk
)
@/usr/include/bits/stdio.h
20 #i�de�
_STDIO_H
24 #i�de�
__ex��_�l�e
25
#__STDIO_INLINE
�l�e
)
27
#__STDIO_INLINE
__ex��_�l�e
)
31 #ifde�
__USE_EXTERN_INLINES
34 #i�!(
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
)
36
__STDIO_INLINE
37
$v��tf
(
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�g
)
39
`v�r�tf
(
�dout
,
__fmt
,
__�g
);
40
}
}
44
__STDIO_INLINE
45
$g�ch�
()
47
`_IO_g�c
(
�d�
);
48
}
}
51 #ifde�
__USE_MISC
53
__STDIO_INLINE
54
$fg�c_u�ocked
(
FILE
*
__�
)
56
`_IO_g�c_u�ocked
(
__�
);
57
}
}
61 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
63
__STDIO_INLINE
64
$g�c_u�ocked
(
FILE
*
__�
)
66
`_IO_g�c_u�ocked
(
__�
);
67
}
}
70
__STDIO_INLINE
71
$g�ch�_u�ocked
()
73
`_IO_g�c_u�ocked
(
�d�
);
74
}
}
79
__STDIO_INLINE
80
$putch�
(
__c
)
82
`_IO_putc
(
__c
,
�dout
);
83
}
}
86 #ifde�
__USE_MISC
88
__STDIO_INLINE
89
$�utc_u�ocked
(
__c
,
FILE
*
__��am
)
91
`_IO_putc_u�ocked
(
__c
,
__��am
);
92
}
}
96 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
98
__STDIO_INLINE
99
$putc_u�ocked
(
__c
,
FILE
*
__��am
)
101
`_IO_putc_u�ocked
(
__c
,
__��am
);
102
}
}
105
__STDIO_INLINE
106
$putch�_u�ocked
(
__c
)
108
`_IO_putc_u�ocked
(
__c
,
�dout
);
109
}
}
113 #ifdef
__USE_GNU
115
__STDIO_INLINE
_IO_ssize_t
116
$g�l�e
(**
__l���
,
size_t
*
__n
,
FILE
*
__��am
)
118
`__g�d�im
(
__l���
,
__n
, '\n',
__��am
);
119
}
}
123 #ifde�
__USE_MISC
125
__STDIO_INLINE
126
__NTH
(
$�of_u�ocked
(
FILE
*
__��am
))
128
`_IO_�of_u�ocked
(
__��am
);
129
}
}
132
__STDIO_INLINE
133
__NTH
(
$��_u�ocked
(
FILE
*
__��am
))
135
`_IO_��_u�ocked
(
__��am
);
136
}
}
142 #i�
def�ed
__USE_MISC
&& def�ed
__GNUC__
&& def�ed
__OPTIMIZE__
\
143 && !
def�ed
g__�lu�lus
145
#�d_u�ocked
(
�r
,
size
,
n
,
��am
) \
146 (
`__ex�nsi�__
((
`__bu�t�_cڡ�t_p
(
size
�&& __bu�t�_cڡ�t_�(
n
) \
147 && (
size_t
�(
size
�* (size_t�(
n
) <= 8 \
148 && (
size_t
�(
size
) != 0) \
149 ? ({ *
__�r
= (*�(
�r
); \
150
FILE
*
__��am
= (
��am
); \
151
size_t
__�t
; \
152
__�t
= (
size_t
�(
size
�* (size_t�(
n
); \
153
__�t
> 0; --__cnt) \
155
__c
=
`_IO_g�c_u�ocked
(
__��am
); \
156 i�(
__c
=�
EOF
) \
158 *
__�r
++ =
__c
; \
160 ((
size_t
�(
size
�* (size_t�(
n
�-
__�t
) \
161 / (
size_t
�(
size
); }) \
162 : (((
`__bu�t�_cڡ�t_p
(
size
�&& (
size_t
) (size) == 0) \
163 || (
`__bu�t�_cڡ�t_p
(
n
�&& (
size_t
) (n) == 0)) \
165 ? ((�(
�r
), (�(
��am
), (�(
size
), \
166 (�(
n
), (
size_t
) 0) \
167 :
`�d_u�ocked
(
�r
,
size
,
n
,
��am
))))
)
169
#fwr�e_u�ocked
(
�r
,
size
,
n
,
��am
) \
170 (
`__ex�nsi�__
((
`__bu�t�_cڡ�t_p
(
size
�&& __bu�t�_cڡ�t_�(
n
) \
171 && (
size_t
�(
size
�* (size_t�(
n
) <= 8 \
172 && (
size_t
�(
size
) != 0) \
173 ? ({ cڡ *
__�r
= (cڡ *�(
�r
); \
174
FILE
*
__��am
= (
��am
); \
175
size_t
__�t
; \
176
__�t
= (
size_t
�(
size
�* (size_t�(
n
); \
177
__�t
> 0; --__cnt) \
178 i�(
`_IO_putc_u�ocked
(*
__�r
++,
__��am
�=�
EOF
) \
180 ((
size_t
�(
size
�* (size_t�(
n
�-
__�t
) \
181 / (
size_t
�(
size
); }) \
182 : (((
`__bu�t�_cڡ�t_p
(
size
�&& (
size_t
) (size) == 0) \
183 || (
`__bu�t�_cڡ�t_p
(
n
�&& (
size_t
) (n) == 0)) \
185 ? ((�(
�r
), (�(
��am
), (�(
size
), \
186 (�(
n
), (
size_t
) 0) \
187 :
`fwr�e_u�ocked
(
�r
,
size
,
n
,
��am
))))
)
191 #unde�
__STDIO_INLINE
@/usr/include/bits/stdio2.h
20 #i�de�
_STDIO_H
24
$__�r�tf_chk
(*
__��ri�
__s
,
__�ag
,
size_t
__��
,
25
__cڡ
*
__��ri�
__f�m�
, ...�
__THROW
;
26
$__v�r�tf_chk
(*
__��ri�
__s
,
__�ag
,
size_t
__��
,
27
__cڡ
*
__��ri�
__f�m�
,
28
_G_va_li�
__�
�
__THROW
;
30 #ifde�
__va_�g_�ck
31
__ex��_�ways_�l�e
32
`__NTH
(
$�r�tf
(*
__��ri�
__s
,
__cڡ
*__��ri�
__fmt
, ...))
34
`__bu�t�___�r�tf_chk
(
__s
,
__USE_FORTIFY_LEVEL
- 1,
35
`__bos
(
__s
),
__fmt
,
`__va_�g_�ck
());
36
}
}
37 #�i�!
def�ed
__�lu�lus
38
#�r�tf
(
�r
, ...) \
39
`__bu�t�___�r�tf_chk
(
�r
,
__USE_FORTIFY_LEVEL
- 1,
`__bos
(str), \
40
__VA_ARGS__
)
)
43
__ex��_�ways_�l�e
44
__NTH
(
$v�r�tf
(*
__��ri�
__s
,
__cڡ
*__��ri�
__fmt
,
45
_G_va_li�
__�
))
47
`__bu�t�___v�r�tf_chk
(
__s
,
__USE_FORTIFY_LEVEL
- 1,
48
`__bos
(
__s
),
__fmt
,
__�
);
49
}
}
51 #i�
def�ed
__USE_BSD
|| def�ed
__USE_ISOC99
|| def�ed
__USE_UNIX98
53
$__���tf_chk
(*
__��ri�
__s
,
size_t
__n
,
__�ag
,
54
size_t
__��
,
__cڡ
*
__��ri�
__f�m�
,
55 ...�
__THROW
;
56
$__v���tf_chk
(*
__��ri�
__s
,
size_t
__n
,
__�ag
,
57
size_t
__��
,
__cڡ
*
__��ri�
__f�m�
,
58
_G_va_li�
__�
�
__THROW
;
60 #ifde�
__va_�g_�ck
61
__ex��_�ways_�l�e
62
`__NTH
(
$���tf
(*
__��ri�
__s
,
size_t
__n
,
63
__cڡ
*
__��ri�
__fmt
, ...))
65
`__bu�t�___���tf_chk
(
__s
,
__n
,
__USE_FORTIFY_LEVEL
- 1,
66
`__bos
(
__s
),
__fmt
,
`__va_�g_�ck
());
67
}
}
68 #�i�!
def�ed
__�lu�lus
69
#���tf
(
�r
,
�n
, ...) \
70
`__bu�t�___���tf_chk
(
�r
,
�n
,
__USE_FORTIFY_LEVEL
- 1,
`__bos
(str), \
71
__VA_ARGS__
)
)
74
__ex��_�ways_�l�e
75
__NTH
(
$v���tf
(*
__��ri�
__s
,
size_t
__n
,
76
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�
))
78
`__bu�t�___v���tf_chk
(
__s
,
__n
,
__USE_FORTIFY_LEVEL
- 1,
79
`__bos
(
__s
),
__fmt
,
__�
);
80
}
}
84 #i�
__USE_FORTIFY_LEVEL
> 1
86
__�r�tf_chk
(
FILE
*
__��ri�
__��am
,
__�ag
,
87
__cڡ
*
__��ri�
__f�m�
, ...);
88
__��tf_chk
(
__�ag
,
__cڡ
*
__��ri�
__f�m�
, ...);
89
__v�r�tf_chk
(
FILE
*
__��ri�
__��am
,
__�ag
,
90
__cڡ
*
__��ri�
__f�m�
,
_G_va_li�
__�
);
91
__v��tf_chk
(
__�ag
,
__cڡ
*
__��ri�
__f�m�
,
92
_G_va_li�
__�
);
94 #ifde�
__va_�g_�ck
95
__ex��_�ways_�l�e
96
$�r�tf
(
FILE
*
__��ri�
__��am
,
__cڡ
*__��ri�
__fmt
, ...)
98
`__�r�tf_chk
(
__��am
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
99
`__va_�g_�ck
());
100
}
}
102
__ex��_�ways_�l�e
103
$��tf
(
__cڡ
*
__��ri�
__fmt
, ...)
105
`__��tf_chk
(
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
`__va_�g_�ck
());
106
}
}
107 #�i�!
def�ed
__�lu�lus
108
#��tf
(...) \
109
`__��tf_chk
(
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
110
#�r�tf
(
��am
, ...) \
111
`__�r�tf_chk
(
��am
,
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
114
__ex��_�ways_�l�e
115
$v��tf
(
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�
)
117 #ifde�
__USE_EXTERN_INLINES
118
`__v�r�tf_chk
(
�dout
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
120
`__v��tf_chk
(
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
122
}
}
124
__ex��_�ways_�l�e
125
$v�r�tf
(
FILE
*
__��ri�
__��am
,
126
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�
)
128
`__v�r�tf_chk
(
__��am
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
129
}
}
131 #ifde�
__USE_GNU
133
$__a�r�tf_chk
(**
__��ri�
__�r
,
__�ag
,
134
__cڡ
*
__��ri�
__fmt
, ...)
135
__THROW
`__��ibu�__
((
$__f�m�__
(
__��tf__
, 3, 4))�
__wur
;
136
$__va�r�tf_chk
(**
__��ri�
__�r
,
__�ag
,
137
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�g
)
138
__THROW
`__��ibu�__
((
$__f�m�__
(
__��tf__
, 3, 0))�
__wur
;
139
$__d��tf_chk
(
__fd
,
__�ag
,
__cڡ
*
__��ri�
__fmt
,
140 ...�
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 3, 4)));
141
$__vd��tf_chk
(
__fd
,
__�ag
,
142
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�g
)
143
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 3, 0)));
144
$__ob�ack_��tf_chk
(
ob�ack
*
__��ri�
__ob�ack
,
145
__�ag
,
__cڡ
*
__��ri�
__f�m�
,
147
__THROW
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 3, 4)));
148
$__ob�ack_v��tf_chk
(
ob�ack
*
__��ri�
__ob�ack
,
149
__�ag
,
150
__cڡ
*
__��ri�
__f�m�
,
151
_G_va_li�
__�gs
)
152
__THROW
`__��ibu�__
((
`__f�m�__
(
__��tf__
, 3, 0)));
154 #ifde�
__va_�g_�ck
155
__ex��_�ways_�l�e
156
`__NTH
(
$a�r�tf
(**
__��ri�
__�r
,
__cڡ
*__��ri�
__fmt
, ...))
158
`__a�r�tf_chk
(
__�r
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
159
`__va_�g_�ck
());
160
}
}
162
__ex��_�ways_�l�e
163
__NTH
(
$__a�r�tf
(**
__��ri�
__�r
,
__cڡ
*__��ri�
__fmt
,
166
`__a�r�tf_chk
(
__�r
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
167
`__va_�g_�ck
());
168
}
}
170
__ex��_�ways_�l�e
171
$d��tf
(
__fd
,
__cڡ
*
__��ri�
__fmt
, ...)
173
`__d��tf_chk
(
__fd
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
174
`__va_�g_�ck
());
175
}
}
177
__ex��_�ways_�l�e
178
__NTH
(
$ob�ack_��tf
(
ob�ack
*
__��ri�
__ob�ack
,
179
__cڡ
*
__��ri�
__fmt
, ...))
181
`__ob�ack_��tf_chk
(
__ob�ack
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
182
`__va_�g_�ck
());
183
}
}
184 #�i�!
def�ed
__�lu�lus
185
#a�r�tf
(
�r
, ...) \
186
`__a�r�tf_chk
(
�r
,
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
187
#__a�r�tf
(
�r
, ...) \
188
`__a�r�tf_chk
(
�r
,
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
189
#d��tf
(
fd
, ...) \
190
`__d��tf_chk
(
fd
,
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
191
#ob�ack_��tf
(
ob�ack
, ...) \
192
`__ob�ack_��tf_chk
(
ob�ack
,
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
195
__ex��_�ways_�l�e
196
__NTH
(
$va�r�tf
(**
__��ri�
__�r
,
__cڡ
*__��ri�
__fmt
,
197
_G_va_li�
__�
))
199
`__va�r�tf_chk
(
__�r
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
200
}
}
202
__ex��_�ways_�l�e
203
$vd��tf
(
__fd
,
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�
)
205
`__vd��tf_chk
(
__fd
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
206
}
}
208
__ex��_�ways_�l�e
209
__NTH
(
$ob�ack_v��tf
(
ob�ack
*
__��ri�
__ob�ack
,
210
__cڡ
*
__��ri�
__fmt
,
_G_va_li�
__�
))
212
`__ob�ack_v��tf_chk
(
__ob�ack
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
213
__�
);
214
}
}
220
*
$__g�s_chk
(*
__�r
,
size_t
�
__wur
;
221
*
`__REDIRECT
(
__g�s_w�n
, (*
__�r
),
g�s
)
222
__wur
`__w�ljr
("please use fgets or getline instead, gets can't "
225
__ex��_�ways_�l�e
__wur
*
226
$g�s
(*
__�r
)
228 i�(
`__bos
(
__�r
�!�(
size_t
) -1)
229
`__g�s_chk
(
__�r
,
`__bos
(__str));
230
`__g�s_w�n
(
__�r
);
231
}
}
233
*
$__fg�s_chk
(*
__��ri�
__s
,
size_t
__size
,
__n
,
234
FILE
*
__��ri�
__��am
�
__wur
;
235
*
`__REDIRECT
(
__fg�s_��s
,
236 (*
__��ri�
__s
,
__n
,
237
FILE
*
__��ri�
__��am
),
fg�s
�
__wur
;
238
*
`__REDIRECT
(
__fg�s_chk_w�n
,
239 (*
__��ri�
__s
,
size_t
__size
,
__n
,
240
FILE
*
__��ri�
__��am
),
__fg�s_chk
)
241
__wur
`__w�ljr
("fgets called with bigger size�han�ength "
244
__ex��_�ways_�l�e
__wur
*
245
$fg�s
(*
__��ri�
__s
,
__n
,
FILE
*__��ri�
__��am
)
247 i�(
`__bos
(
__s
�!�(
size_t
) -1)
249 i�(!
`__bu�t�_cڡ�t_p
(
__n
) || __n <= 0)
250
`__fg�s_chk
(
__s
,
`__bos
(__s),
__n
,
__��am
);
252 i�((
size_t
�
__n
>
`__bos
(
__s
))
253
`__fg�s_chk_w�n
(
__s
,
`__bos
(__s),
__n
,
__��am
);
255
`__fg�s_��s
(
__s
,
__n
,
__��am
);
256
}
}
258
size_t
$__�d_chk
(*
__��ri�
__�r
,
size_t
__���
,
259
size_t
__size
, size_�
__n
,
260
FILE
*
__��ri�
__��am
�
__wur
;
261
size_t
`__REDIRECT
(
__�d_��s
,
262 (*
__��ri�
__�r
,
size_t
__size
,
263
size_t
__n
,
FILE
*
__��ri�
__��am
),
264
�d
�
__wur
;
265
size_t
`__REDIRECT
(
__�d_chk_w�n
,
266 (*
__��ri�
__�r
,
size_t
__���
,
267
size_t
__size
, size_�
__n
,
268
FILE
*
__��ri�
__��am
),
269
__�d_chk
)
270
__wur
`__w�ljr
("fread called with bigger size *�memb�han�ength "
273
__ex��_�ways_�l�e
__wur
size_t
274
$�d
(*
__��ri�
__�r
,
size_t
__size
, size_�
__n
,
275
FILE
*
__��ri�
__��am
)
277 i�(
`__bos0
(
__�r
�!�(
size_t
) -1)
279 i�(!
`__bu�t�_cڡ�t_p
(
__size
)
280 || !
`__bu�t�_cڡ�t_p
(
__n
)
281 || (
__size
|
__n
�>�(((
size_t
) 1) << (8 * (size_t) / 2)))
282
`__�d_chk
(
__�r
,
`__bos0
(__�r),
__size
,
__n
,
__��am
);
284 i�(
__size
*
__n
>
`__bos0
(
__�r
))
285
`__�d_chk_w�n
(
__�r
,
`__bos0
(__�r),
__size
,
__n
,
__��am
);
287
`__�d_��s
(
__�r
,
__size
,
__n
,
__��am
);
288
}
}
290 #ifde�
__USE_GNU
291
*
$__fg�s_u�ocked_chk
(*
__��ri�
__s
,
size_t
__size
,
292
__n
,
FILE
*
__��ri�
__��am
�
__wur
;
293
*
`__REDIRECT
(
__fg�s_u�ocked_��s
,
294 (*
__��ri�
__s
,
__n
,
295
FILE
*
__��ri�
__��am
),
fg�s_u�ocked
�
__wur
;
296
*
`__REDIRECT
(
__fg�s_u�ocked_chk_w�n
,
297 (*
__��ri�
__s
,
size_t
__size
,
__n
,
298
FILE
*
__��ri�
__��am
),
__fg�s_u�ocked_chk
)
299
__wur
`__w�ljr
("fgets_unlocked called with bigger size�han�ength "
302
__ex��_�ways_�l�e
__wur
*
303
$fg�s_u�ocked
(*
__��ri�
__s
,
__n
,
FILE
*__��ri�
__��am
)
305 i�(
`__bos
(
__s
�!�(
size_t
) -1)
307 i�(!
`__bu�t�_cڡ�t_p
(
__n
) || __n <= 0)
308
`__fg�s_u�ocked_chk
(
__s
,
`__bos
(__s),
__n
,
__��am
);
310 i�((
size_t
�
__n
>
`__bos
(
__s
))
311
`__fg�s_u�ocked_chk_w�n
(
__s
,
`__bos
(__s),
__n
,
__��am
);
313
`__fg�s_u�ocked_��s
(
__s
,
__n
,
__��am
);
314
}
}
317 #ifde�
__USE_MISC
318 #unde�
�d_u�ocked
319
size_t
$__�d_u�ocked_chk
(*
__��ri�
__�r
,
size_t
__���
,
320
size_t
__size
, size_�
__n
,
321
FILE
*
__��ri�
__��am
�
__wur
;
322
size_t
`__REDIRECT
(
__�d_u�ocked_��s
,
323 (*
__��ri�
__�r
,
size_t
__size
,
324
size_t
__n
,
FILE
*
__��ri�
__��am
),
325
�d_u�ocked
�
__wur
;
326
size_t
`__REDIRECT
(
__�d_u�ocked_chk_w�n
,
327 (*
__��ri�
__�r
,
size_t
__���
,
328
size_t
__size
, size_�
__n
,
329
FILE
*
__��ri�
__��am
),
330
__�d_u�ocked_chk
)
331
__wur
`__w�ljr
("fread_unlocked called with bigger size *�memb�han "
334
__ex��_�ways_�l�e
__wur
size_t
335
$�d_u�ocked
(*
__��ri�
__�r
,
size_t
__size
, size_�
__n
,
336
FILE
*
__��ri�
__��am
)
338 i�(
`__bos0
(
__�r
�!�(
size_t
) -1)
340 i�(!
`__bu�t�_cڡ�t_p
(
__size
)
341 || !
`__bu�t�_cڡ�t_p
(
__n
)
342 || (
__size
|
__n
�>�(((
size_t
) 1) << (8 * (size_t) / 2)))
343
`__�d_u�ocked_chk
(
__�r
,
`__bos0
(__�r),
__size
,
__n
,
344
__��am
);
346 i�(
__size
*
__n
>
`__bos0
(
__�r
))
347
`__�d_u�ocked_chk_w�n
(
__�r
,
`__bos0
(__�r),
__size
,
__n
,
348
__��am
);
351 #ifde�
__USE_EXTERN_INLINES
352 i�(
`__bu�t�_cڡ�t_p
(
__size
)
353 &&
`__bu�t�_cڡ�t_p
(
__n
)
354 && (
__size
|
__n
�< (((
size_t
) 1) << (8 * (size_t) / 2))
355 &&
__size
*
__n
<= 8)
357
size_t
__�t
=
__size
*
__n
;
358 *
__��
= (*�
__�r
;
359 i�(
__�t
== 0)
362 ;
__�t
> 0; --__cnt)
364
__c
=
`_IO_g�c_u�ocked
(
__��am
);
365 i�(
__c
=�
EOF
)
367 *
__��
++ =
__c
;
369 (
__��
- (*�
__�r
�/
__size
;
372
`__�d_u�ocked_��s
(
__�r
,
__size
,
__n
,
__��am
);
373
}
}
@/usr/include/bits/stdio_lim.h
19 #i�!
def�ed
_STDIO_H
&& !def�ed
__�ed_FOPEN_MAX
&& !def�ed
__�ed_IOV_MAX
23 #ifde�
_STDIO_H
24
#L_tm�am
20
)
25
#TMP_MAX
238328
)
26
#FILENAME_MAX
4096
)
28 #ifde�
__USE_POSIX
29
#L_��mid
9
)
30 #i�!
def�ed
__USE_XOPEN2K
|| def�ed
__USE_GNU
31
#L_cu�rid
9
)
36 #i�
def�ed
__�ed_FOPEN_MAX
|| def�ed
_STDIO_H
37 #unde�
FOPEN_MAX
38
#FOPEN_MAX
16
)
41 #i�
def�ed
__�ed_IOV_MAX
&& !def�ed
IOV_MAX
42
#IOV_MAX
1024
)
@/usr/include/bits/string.h
20 #i�de�
_STRING_H
26
#_STRING_ARCH_u�lig�d
1
)
@/usr/include/bits/string2.h
21 #i�de�
_STRING_H
25 #i�!
def�ed
__NO_STRING_INLINES
&& !def�ed
__BOUNDED_POINTERS__
42 #i�de�
__STRING_INLINE
43 #ifde�
__�lu�lus
44
#__STRING_INLINE
�l�e
)
46
#__STRING_INLINE
__ex��_�l�e
)
50 #i�
_STRING_ARCH_u�lig�d
52
~<�d�n.h
>
53
~<b�s/ty�s.h
>
55 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
56
#__STRING2_SMALL_GET16
(
�c
,
idx
) \
57 (((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 1] << 8 \
58 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
])
)
59
#__STRING2_SMALL_GET32
(
�c
,
idx
) \
60 (((((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 3] << 8 \
61 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 2]) << 8 \
62 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 1]) << 8 \
63 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
])
)
65
#__STRING2_SMALL_GET16
(
�c
,
idx
) \
66 (((
__cڡ
*�(__cڡ *�(
�c
))[
idx
] << 8 \
67 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 1])
)
68
#__STRING2_SMALL_GET32
(
�c
,
idx
) \
69 (((((
__cڡ
*�(__cڡ *�(
�c
))[
idx
] << 8 \
70 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 1]) << 8 \
71 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 2]) << 8 \
72 | ((
__cڡ
*�(__cڡ *�(
�c
))[
idx
+ 3])
)
77
#__STRING2_COPY_TYPE
(
N
) \
78 �ru� {
__�r
[
N
]; } \
79
t__��ibu�__
((
t__�cked__
)�
t__STRING2_COPY_ARR
##
tN
)
80
t__STRING2_COPY_TYPE
(2);
81
__STRING2_COPY_TYPE
(3);
82
__STRING2_COPY_TYPE
(4);
83
__STRING2_COPY_TYPE
(5);
84
__STRING2_COPY_TYPE
(6);
85
__STRING2_COPY_TYPE
(7);
86
__STRING2_COPY_TYPE
(8);
87 #unde�
__STRING2_COPY_TYPE
93
#__�r�g2_1b�r_p
(
__x
) \
94 ((
size_t
)(cڡ *)((
__x
�+ 1�- (size_t)(cڡ *)(__x�=�1)
)
97 #i�!
def�ed
_HAVE_STRING_ARCH_mem�t
98 #i�!
__GNUC_PREREQ
(3, 0)
99 #i�
_STRING_ARCH_u�lig�d
100
#mem�t
(
s
,
c
,
n
) \
101 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
n
) && (n) <= 16 \
102 ? ((
n
) == 1 \
103 ?
`__mem�t_1
(
s
,
c
) \
104 :
`__mem�t_gc
(
s
,
c
,
n
)) \
105 : (
`__bu�t�_cڡ�t_p
(
c
) && (c) == '\0' \
106 ? ({ *
__s
= (
s
);
`__bz�o
(__s,
n
); __s; }) \
107 :
`mem�t
(
s
,
c
,
n
))))
)
109
#__mem�t_1
(
s
,
c
�({ *
__s
= (s); \
110 *((
__u�t8_t
*�
__s
��(__u�t8_t�
c
; __s; })
)
112
#__mem�t_gc
(
s
,
c
,
n
) \
113 ({ *
__s
= (
s
); \
115
__ui
; \
116
__usi
; \
117
__uc
; \
118 } *
__u
=
__s
; \
119
__u�t8_t
__c
= (__u�t8_t�(
c
); \
122 (�(
n
)) \
125
__u
->
__ui
=
__c
* 0x01010101; \
126
__u
=
`__ex�nsi�__
((*) __u + 4); \
128
__u
->
__ui
=
__c
* 0x01010101; \
129
__u
=
`__ex�nsi�__
((*) __u + 4); \
131
__u
->
__ui
=
__c
* 0x01010101; \
132
__u
=
`__ex�nsi�__
((*) __u + 4); \
134
__u
->
__usi
= (�
__c
* 0x0101; \
135
__u
=
`__ex�nsi�__
((*) __u + 2); \
136
__u
->
__uc
= (�
__c
; \
140
__u
->
__ui
=
__c
* 0x01010101; \
141
__u
=
`__ex�nsi�__
((*) __u + 4); \
143
__u
->
__ui
=
__c
* 0x01010101; \
144
__u
=
`__ex�nsi�__
((*) __u + 4); \
146
__u
->
__ui
=
__c
* 0x01010101; \
147
__u
=
`__ex�nsi�__
((*) __u + 4); \
149
__u
->
__usi
= (�
__c
* 0x0101; \
153
__u
->
__ui
=
__c
* 0x01010101; \
154
__u
=
`__ex�nsi�__
((*) __u + 4); \
156
__u
->
__ui
=
__c
* 0x01010101; \
157
__u
=
`__ex�nsi�__
((*) __u + 4); \
159
__u
->
__ui
=
__c
* 0x01010101; \
160
__u
=
`__ex�nsi�__
((*) __u + 4); \
162
__u
->
__uc
= (�
__c
; \
166
__u
->
__ui
=
__c
* 0x01010101; \
167
__u
=
`__ex�nsi�__
((*) __u + 4); \
169
__u
->
__ui
=
__c
* 0x01010101; \
170
__u
=
`__ex�nsi�__
((*) __u + 4); \
172
__u
->
__ui
=
__c
* 0x01010101; \
173
__u
=
`__ex�nsi�__
((*) __u + 4); \
175
__u
->
__ui
=
__c
* 0x01010101; \
180
__s
; })
)
182
#mem�t
(
s
,
c
,
n
) \
183 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
c
) && (c) == '\0' \
184 ? ({ *
__s
= (
s
);
`__bz�o
(__s,
n
); __s; }) \
185 :
`mem�t
(
s
,
c
,
n
)))
)
194 #i�
__GNUC_PREREQ
(2, 91)
195
#__bz�o
(
s
,
n
�
`__bu�t�_mem�t
(s, '\0',�)
)
203 #ifde�
__USE_GNU
204 #i�!
def�ed
_HAVE_STRING_ARCH_memp�y
|| def�ed
_FORCE_INLINES
205 #i�de�
_HAVE_STRING_ARCH_memp�y
206 #i�
__GNUC_PREREQ
(3, 4)
207
#__memp�y
(
de�
,
�c
,
n
�
`__bu�t�_memp�y
(de�, src,�)
)
208 #�i�
__GNUC_PREREQ
(3, 0)
209
#__memp�y
(
de�
,
�c
,
n
) \
210 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
�&& __bu�t�_cڡ�t_�(
n
) \
211 &&
`__�r�g2_1b�r_p
(
�c
�&&
n
<= 8 \
212 ?
`__bu�t�_mem�y
(
de�
,
�c
,
n
) + (n) \
213 :
`__memp�y
(
de�
,
�c
,
n
)))
)
215
#__memp�y
(
de�
,
�c
,
n
) \
216 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
�&& __bu�t�_cڡ�t_�(
n
) \
217 &&
`__�r�g2_1b�r_p
(
�c
�&&
n
<= 8 \
218 ?
`__memp�y_sm�l
(
de�
,
`__memp�y_�gs
(
�c
),
n
) \
219 :
`__memp�y
(
de�
,
�c
,
n
)))
)
223
#memp�y
(
de�
,
�c
,
n
�
`__memp�y
(de�, src,�)
)
226 #i�!
__GNUC_PREREQ
(3, 0�||
def�ed
_FORCE_INLINES
227 #i�
_STRING_ARCH_u�lig�d
228 #i�de�
_FORCE_INLINES
229
#__memp�y_�gs
(
�c
) \
230 ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[2], \
231 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[6], \
232
__ex�nsi�__
`__STRING2_SMALL_GET16
(
�c
, 0), \
233
__ex�nsi�__
`__STRING2_SMALL_GET16
(
�c
, 4), \
234
__ex�nsi�__
`__STRING2_SMALL_GET32
(
�c
, 0), \
235
__ex�nsi�__
`__STRING2_SMALL_GET32
(
�c
, 4)
)
237
__STRING_INLINE
*
__memp�y_sm�l
(*, , , , ,
238
__u�t16_t
, __u�t16_t,
__u�t32_t
,
239
__u�t32_t
,
size_t
);
240
__STRING_INLINE
*
241
$__memp�y_sm�l
(*
__de�1
,
242
__�c0_1
,
__�c2_1
,
__�c4_1
,
__�c6_1
,
243
__u�t16_t
__�c0_2
, __u�t16_�
__�c4_2
,
244
__u�t32_t
__�c0_4
, __u�t32_�
__�c4_4
,
245
size_t
__���
)
248
__u�t32_t
__ui
;
249
__u�t16_t
__usi
;
250
__uc
;
251
__c
;
252 } *
__u
=
__de�1
;
253 (�
__���
)
256
__u
->
__c
=
__�c0_1
;
257
__u
=
`__ex�nsi�__
((*) __u + 1);
260
__u
->
__usi
=
__�c0_2
;
261
__u
=
`__ex�nsi�__
((*) __u + 2);
264
__u
->
__usi
=
__�c0_2
;
265
__u
=
`__ex�nsi�__
((*) __u + 2);
266
__u
->
__c
=
__�c2_1
;
267
__u
=
`__ex�nsi�__
((*) __u + 1);
270
__u
->
__ui
=
__�c0_4
;
271
__u
=
`__ex�nsi�__
((*) __u + 4);
274
__u
->
__ui
=
__�c0_4
;
275
__u
=
`__ex�nsi�__
((*) __u + 4);
276
__u
->
__c
=
__�c4_1
;
277
__u
=
`__ex�nsi�__
((*) __u + 1);
280
__u
->
__ui
=
__�c0_4
;
281
__u
=
`__ex�nsi�__
((*) __u + 4);
282
__u
->
__usi
=
__�c4_2
;
283
__u
=
`__ex�nsi�__
((*) __u + 2);
286
__u
->
__ui
=
__�c0_4
;
287
__u
=
`__ex�nsi�__
((*) __u + 4);
288
__u
->
__usi
=
__�c4_2
;
289
__u
=
`__ex�nsi�__
((*) __u + 2);
290
__u
->
__c
=
__�c6_1
;
291
__u
=
`__ex�nsi�__
((*) __u + 1);
294
__u
->
__ui
=
__�c0_4
;
295
__u
=
`__ex�nsi�__
((*) __u + 4);
296
__u
->
__ui
=
__�c4_4
;
297
__u
=
`__ex�nsi�__
((*) __u + 4);
300 (*�
__u
;
301
}
}
303 #i�de�
_FORCE_INLINES
304
#__memp�y_�gs
(
�c
) \
305 ((
__cڡ
*�(
�c
))[0], \
306
`__ex�nsi�__
((
__STRING2_COPY_ARR2
) \
307 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1] } }), \
308
`__ex�nsi�__
((
__STRING2_COPY_ARR3
) \
309 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
310 ((
__cڡ
*�(
�c
))[2] } }), \
311
`__ex�nsi�__
((
__STRING2_COPY_ARR4
) \
312 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
313 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3] } }), \
314
`__ex�nsi�__
((
__STRING2_COPY_ARR5
) \
315 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
316 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
317 ((
__cڡ
*�(
�c
))[4] } }), \
318
`__ex�nsi�__
((
__STRING2_COPY_ARR6
) \
319 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
320 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
321 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5] } }), \
322
`__ex�nsi�__
((
__STRING2_COPY_ARR7
) \
323 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
324 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
325 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5], \
326 ((
__cڡ
*�(
�c
))[6] } }), \
327
`__ex�nsi�__
((
__STRING2_COPY_ARR8
) \
328 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
329 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
330 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5], \
331 ((
__cڡ
*�(
�c
))[6], ((__cڡ *�(�c))[7] } })
)
333
__STRING_INLINE
*
__memp�y_sm�l
(*, ,
__STRING2_COPY_ARR2
,
334
__STRING2_COPY_ARR3
,
335
__STRING2_COPY_ARR4
,
336
__STRING2_COPY_ARR5
,
337
__STRING2_COPY_ARR6
,
338
__STRING2_COPY_ARR7
,
339
__STRING2_COPY_ARR8
,
size_t
);
340
__STRING_INLINE
*
341
$__memp�y_sm�l
(*
__de�
,
__�c1
,
342
__STRING2_COPY_ARR2
__�c2
,
__STRING2_COPY_ARR3
__�c3
,
343
__STRING2_COPY_ARR4
__�c4
,
__STRING2_COPY_ARR5
__�c5
,
344
__STRING2_COPY_ARR6
__�c6
,
__STRING2_COPY_ARR7
__�c7
,
345
__STRING2_COPY_ARR8
__�c8
,
size_t
__���
)
348
__c
;
349
__STRING2_COPY_ARR2
__s�2
;
350
__STRING2_COPY_ARR3
__s�3
;
351
__STRING2_COPY_ARR4
__s�4
;
352
__STRING2_COPY_ARR5
__s�5
;
353
__STRING2_COPY_ARR6
__s�6
;
354
__STRING2_COPY_ARR7
__s�7
;
355
__STRING2_COPY_ARR8
__s�8
;
356 } *
__u
=
__de�
;
357 (�
__���
)
360
__u
->
__c
=
__�c1
;
363
__ex�nsi�__
__u
->
__s�2
=
__�c2
;
366
__ex�nsi�__
__u
->
__s�3
=
__�c3
;
369
__ex�nsi�__
__u
->
__s�4
=
__�c4
;
372
__ex�nsi�__
__u
->
__s�5
=
__�c5
;
375
__ex�nsi�__
__u
->
__s�6
=
__�c6
;
378
__ex�nsi�__
__u
->
__s�7
=
__�c7
;
381
__ex�nsi�__
__u
->
__s�8
=
__�c8
;
384
`__ex�nsi�__
((*�
__u
+
__���
);
385
}
}
393 #i�de�
_HAVE_STRING_ARCH_�rchr
394
*
__�wmemchr
(cڡ *
__s
,
__c
);
395 #i�
__GNUC_PREREQ
(3, 2)
396
#�rchr
(
s
,
c
) \
397 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
c
�&& !__bu�t�_cڡ�t_�(
s
) \
398 && (
c
) == '\0' \
399 ? (*�
`__�wmemchr
(
s
,
c
) \
400 :
`__bu�t�_�rchr
(
s
,
c
)))
)
402
#�rchr
(
s
,
c
) \
403 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
c
) && (c) == '\0' \
404 ? (*�
`__�wmemchr
(
s
,
c
) \
405 :
`�rchr
(
s
,
c
)))
)
411 #i�(!
def�ed
_HAVE_STRING_ARCH_�r�y
&& !
__GNUC_PREREQ
(3, 0)) \
412 ||
def�ed
g_FORCE_INLINES
413 #i�!
def�ed
_HAVE_STRING_ARCH_�r�y
&& !
__GNUC_PREREQ
(3, 0)
414
#�r�y
(
de�
,
�c
) \
415 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
) \
416 ? (
`__�r�g2_1b�r_p
(
�c
�&&
`���
(src) + 1 <= 8 \
417 ?
`__�r�y_sm�l
(
de�
,
`__�r�y_�gs
(
�c
), \
418
`���
(
�c
) + 1) \
419 : (*�
`mem�y
(
de�
,
�c
,
`���
(src) + 1)) \
420 :
`�r�y
(
de�
,
�c
)))
)
423 #i�
_STRING_ARCH_u�lig�d
424 #i�de�
_FORCE_INLINES
425
#__�r�y_�gs
(
�c
) \
426
__ex�nsi�__
`__STRING2_SMALL_GET16
(
�c
, 0), \
427
__ex�nsi�__
`__STRING2_SMALL_GET16
(
�c
, 4), \
428
__ex�nsi�__
`__STRING2_SMALL_GET32
(
�c
, 0), \
429
__ex�nsi�__
`__STRING2_SMALL_GET32
(
�c
, 4)
)
431
__STRING_INLINE
*
__�r�y_sm�l
(*,
__u�t16_t
, __uint16_t,
432
__u�t32_t
, __u�t32_t,
size_t
);
433
__STRING_INLINE
*
434
$__�r�y_sm�l
(*
__de�
,
435
__u�t16_t
__�c0_2
, __u�t16_�
__�c4_2
,
436
__u�t32_t
__�c0_4
, __u�t32_�
__�c4_4
,
437
size_t
__���
)
440
__u�t32_t
__ui
;
441
__u�t16_t
__usi
;
442
__uc
;
443 } *
__u
= (*�
__de�
;
444 (�
__���
)
447
__u
->
__uc
= '\0';
450
__u
->
__usi
=
__�c0_2
;
453
__u
->
__usi
=
__�c0_2
;
454
__u
=
`__ex�nsi�__
((*) __u + 2);
455
__u
->
__uc
= '\0';
458
__u
->
__ui
=
__�c0_4
;
461
__u
->
__ui
=
__�c0_4
;
462
__u
=
`__ex�nsi�__
((*) __u + 4);
463
__u
->
__uc
= '\0';
466
__u
->
__ui
=
__�c0_4
;
467
__u
=
`__ex�nsi�__
((*) __u + 4);
468
__u
->
__usi
=
__�c4_2
;
471
__u
->
__ui
=
__�c0_4
;
472
__u
=
`__ex�nsi�__
((*) __u + 4);
473
__u
->
__usi
=
__�c4_2
;
474
__u
=
`__ex�nsi�__
((*) __u + 2);
475
__u
->
__uc
= '\0';
478
__u
->
__ui
=
__�c0_4
;
479
__u
=
`__ex�nsi�__
((*) __u + 4);
480
__u
->
__ui
=
__�c4_4
;
483
__de�
;
484
}
}
486 #i�de�
_FORCE_INLINES
487
#__�r�y_�gs
(
�c
) \
488
`__ex�nsi�__
((
__STRING2_COPY_ARR2
) \
489 { { ((
__cڡ
*�(
�c
))[0], '\0' } }), \
490
`__ex�nsi�__
((
__STRING2_COPY_ARR3
) \
491 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
493
`__ex�nsi�__
((
__STRING2_COPY_ARR4
) \
494 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
495 ((
__cڡ
*�(
�c
))[2], '\0' } }), \
496
`__ex�nsi�__
((
__STRING2_COPY_ARR5
) \
497 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
498 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
500
`__ex�nsi�__
((
__STRING2_COPY_ARR6
) \
501 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
502 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
503 ((
__cڡ
*�(
�c
))[4], '\0' } }), \
504
`__ex�nsi�__
((
__STRING2_COPY_ARR7
) \
505 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
506 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
507 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5], \
509
`__ex�nsi�__
((
__STRING2_COPY_ARR8
) \
510 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
511 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
512 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5], \
513 ((
__cڡ
*�(
�c
))[6], '\0' } })
)
515
__STRING_INLINE
*
__�r�y_sm�l
(*,
__STRING2_COPY_ARR2
,
516
__STRING2_COPY_ARR3
,
517
__STRING2_COPY_ARR4
,
518
__STRING2_COPY_ARR5
,
519
__STRING2_COPY_ARR6
,
520
__STRING2_COPY_ARR7
,
521
__STRING2_COPY_ARR8
,
size_t
);
522
__STRING_INLINE
*
523
$__�r�y_sm�l
(*
__de�
,
524
__STRING2_COPY_ARR2
__�c2
,
__STRING2_COPY_ARR3
__�c3
,
525
__STRING2_COPY_ARR4
__�c4
,
__STRING2_COPY_ARR5
__�c5
,
526
__STRING2_COPY_ARR6
__�c6
,
__STRING2_COPY_ARR7
__�c7
,
527
__STRING2_COPY_ARR8
__�c8
,
size_t
__���
)
530
__c
;
531
__STRING2_COPY_ARR2
__s�2
;
532
__STRING2_COPY_ARR3
__s�3
;
533
__STRING2_COPY_ARR4
__s�4
;
534
__STRING2_COPY_ARR5
__s�5
;
535
__STRING2_COPY_ARR6
__s�6
;
536
__STRING2_COPY_ARR7
__s�7
;
537
__STRING2_COPY_ARR8
__s�8
;
538 } *
__u
= (*�
__de�
;
539 (�
__���
)
542
__u
->
__c
= '\0';
545
__ex�nsi�__
__u
->
__s�2
=
__�c2
;
548
__ex�nsi�__
__u
->
__s�3
=
__�c3
;
551
__ex�nsi�__
__u
->
__s�4
=
__�c4
;
554
__ex�nsi�__
__u
->
__s�5
=
__�c5
;
557
__ex�nsi�__
__u
->
__s�6
=
__�c6
;
560
__ex�nsi�__
__u
->
__s�7
=
__�c7
;
563
__ex�nsi�__
__u
->
__s�8
=
__�c8
;
566
__de�
;
567
}
}
573 #ifde�
__USE_GNU
574 #i�!
def�ed
_HAVE_STRING_ARCH_�p�y
|| def�ed
_FORCE_INLINES
575 #i�de�
_HAVE_STRING_ARCH_�p�y
576 #i�
__GNUC_PREREQ
(3, 4)
577
#__�p�y
(
de�
,
�c
�
`__bu�t�_�p�y
(de�, src)
)
578 #�i�
__GNUC_PREREQ
(3, 0)
579
#__�p�y
(
de�
,
�c
) \
580 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
) \
581 ? (
`__�r�g2_1b�r_p
(
�c
�&&
`���
(src) + 1 <= 8 \
582 ?
`__bu�t�_�r�y
(
de�
,
�c
�+
`���
(src) \
583 : ((*�(
__memp�y
�(
de�
,
�c
,
`���
(src) + 1) \
585 :
`__�p�y
(
de�
,
�c
)))
)
587
#__�p�y
(
de�
,
�c
) \
588 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
) \
589 ? (
`__�r�g2_1b�r_p
(
�c
�&&
`���
(src) + 1 <= 8 \
590 ?
`__�p�y_sm�l
(
de�
,
`__�p�y_�gs
(
�c
), \
591
`���
(
�c
) + 1) \
592 : ((*�(
__memp�y
�(
de�
,
�c
,
`���
(src) + 1) \
594 :
`__�p�y
(
de�
,
�c
)))
)
598
#�p�y
(
de�
,
�c
�
`__�p�y
(de�, src)
)
601 #i�!
__GNUC_PREREQ
(3, 0�||
def�ed
_FORCE_INLINES
602 #i�
_STRING_ARCH_u�lig�d
603 #i�de�
_FORCE_INLINES
604
#__�p�y_�gs
(
�c
) \
605
__ex�nsi�__
`__STRING2_SMALL_GET16
(
�c
, 0), \
606
__ex�nsi�__
`__STRING2_SMALL_GET16
(
�c
, 4), \
607
__ex�nsi�__
`__STRING2_SMALL_GET32
(
�c
, 0), \
608
__ex�nsi�__
`__STRING2_SMALL_GET32
(
�c
, 4)
)
610
__STRING_INLINE
*
__�p�y_sm�l
(*,
__u�t16_t
, __uint16_t,
611
__u�t32_t
, __u�t32_t,
size_t
);
612
__STRING_INLINE
*
613
$__�p�y_sm�l
(*
__de�
,
614
__u�t16_t
__�c0_2
, __u�t16_�
__�c4_2
,
615
__u�t32_t
__�c0_4
, __u�t32_�
__�c4_4
,
616
size_t
__���
)
619
__ui
;
620
__usi
;
621
__uc
;
622
__c
;
623 } *
__u
= (*�
__de�
;
624 (�
__���
)
627
__u
->
__uc
= '\0';
630
__u
->
__usi
=
__�c0_2
;
631
__u
=
`__ex�nsi�__
((*) __u + 1);
634
__u
->
__usi
=
__�c0_2
;
635
__u
=
`__ex�nsi�__
((*) __u + 2);
636
__u
->
__uc
= '\0';
639
__u
->
__ui
=
__�c0_4
;
640
__u
=
`__ex�nsi�__
((*) __u + 3);
643
__u
->
__ui
=
__�c0_4
;
644
__u
=
`__ex�nsi�__
((*) __u + 4);
645
__u
->
__uc
= '\0';
648
__u
->
__ui
=
__�c0_4
;
649
__u
=
`__ex�nsi�__
((*) __u + 4);
650
__u
->
__usi
=
__�c4_2
;
651
__u
=
`__ex�nsi�__
((*) __u + 1);
654
__u
->
__ui
=
__�c0_4
;
655
__u
=
`__ex�nsi�__
((*) __u + 4);
656
__u
->
__usi
=
__�c4_2
;
657
__u
=
`__ex�nsi�__
((*) __u + 2);
658
__u
->
__uc
= '\0';
661
__u
->
__ui
=
__�c0_4
;
662
__u
=
`__ex�nsi�__
((*) __u + 4);
663
__u
->
__ui
=
__�c4_4
;
664
__u
=
`__ex�nsi�__
((*) __u + 3);
667 &
__u
->
__c
;
668
}
}
670 #i�de�
_FORCE_INLINES
671
#__�p�y_�gs
(
�c
) \
672
`__ex�nsi�__
((
__STRING2_COPY_ARR2
) \
673 { { ((
__cڡ
*�(
�c
))[0], '\0' } }), \
674
`__ex�nsi�__
((
__STRING2_COPY_ARR3
) \
675 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
677
`__ex�nsi�__
((
__STRING2_COPY_ARR4
) \
678 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
679 ((
__cڡ
*�(
�c
))[2], '\0' } }), \
680
`__ex�nsi�__
((
__STRING2_COPY_ARR5
) \
681 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
682 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
684
`__ex�nsi�__
((
__STRING2_COPY_ARR6
) \
685 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
686 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
687 ((
__cڡ
*�(
�c
))[4], '\0' } }), \
688
`__ex�nsi�__
((
__STRING2_COPY_ARR7
) \
689 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
690 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
691 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5], \
693
`__ex�nsi�__
((
__STRING2_COPY_ARR8
) \
694 { { ((
__cڡ
*�(
�c
))[0], ((__const *) (src))[1], \
695 ((
__cڡ
*�(
�c
))[2], ((__const *) (src))[3], \
696 ((
__cڡ
*�(
�c
))[4], ((__const *) (src))[5], \
697 ((
__cڡ
*�(
�c
))[6], '\0' } })
)
699
__STRING_INLINE
*
__�p�y_sm�l
(*,
__STRING2_COPY_ARR2
,
700
__STRING2_COPY_ARR3
,
701
__STRING2_COPY_ARR4
,
702
__STRING2_COPY_ARR5
,
703
__STRING2_COPY_ARR6
,
704
__STRING2_COPY_ARR7
,
705
__STRING2_COPY_ARR8
,
size_t
);
706
__STRING_INLINE
*
707
$__�p�y_sm�l
(*
__de�
,
708
__STRING2_COPY_ARR2
__�c2
,
__STRING2_COPY_ARR3
__�c3
,
709
__STRING2_COPY_ARR4
__�c4
,
__STRING2_COPY_ARR5
__�c5
,
710
__STRING2_COPY_ARR6
__�c6
,
__STRING2_COPY_ARR7
__�c7
,
711
__STRING2_COPY_ARR8
__�c8
,
size_t
__���
)
714
__c
;
715
__STRING2_COPY_ARR2
__s�2
;
716
__STRING2_COPY_ARR3
__s�3
;
717
__STRING2_COPY_ARR4
__s�4
;
718
__STRING2_COPY_ARR5
__s�5
;
719
__STRING2_COPY_ARR6
__s�6
;
720
__STRING2_COPY_ARR7
__s�7
;
721
__STRING2_COPY_ARR8
__s�8
;
722 } *
__u
= (*�
__de�
;
723 (�
__���
)
726
__u
->
__c
= '\0';
729
__ex�nsi�__
__u
->
__s�2
=
__�c2
;
732
__ex�nsi�__
__u
->
__s�3
=
__�c3
;
735
__ex�nsi�__
__u
->
__s�4
=
__�c4
;
738
__ex�nsi�__
__u
->
__s�5
=
__�c5
;
741
__ex�nsi�__
__u
->
__s�6
=
__�c6
;
744
__ex�nsi�__
__u
->
__s�7
=
__�c7
;
747
__ex�nsi�__
__u
->
__s�8
=
__�c8
;
750
__de�
+
__���
- 1;
751
}
}
759 #i�de�
_HAVE_STRING_ARCH_���y
760 #i�
__GNUC_PREREQ
(3, 2)
761
#���y
(
de�
,
�c
,
n
�
`__bu�t�_���y
(de�, src,�)
)
763
#���y
(
de�
,
�c
,
n
) \
764 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
�&& __bu�t�_cڡ�t_�(
n
) \
765 ? (
`���
(
�c
�+ 1 >�((
size_t
�(
n
)) \
766 ? (*�
`mem�y
(
de�
,
�c
,
n
) \
767 :
`���y
(
de�
,
�c
,
n
)) \
768 :
`���y
(
de�
,
�c
,
n
)))
)
774 #i�de�
_HAVE_STRING_ARCH_���t
775 #ifde�
_USE_STRING_ARCH_�rchr
776
#���t
(
de�
,
�c
,
n
) \
777 (
`__ex�nsi�__
({ *
__de�
= (
de�
); \
778
`__bu�t�_cڡ�t_p
(
�c
�&& __bu�t�_cڡ�t_�(
n
) \
779 ? (
`���
(
�c
�< ((
size_t
�(
n
)) \
780 ?
`�r�t
(
__de�
,
�c
) \
781 : (*((*�
`__memp�y
(
`�rchr
(
__de�
, '\0'), \
782
�c
,
n
)��'\0',
__de�
)) \
783 :
`���t
(
de�
,
�c
,
n
); }))
)
784 #�i�
__GNUC_PREREQ
(3, 2)
785
#���t
(
de�
,
�c
,
n
�
`__bu�t�_���t
(de�, src,�)
)
787
#���t
(
de�
,
�c
,
n
) \
788 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�c
�&& __bu�t�_cڡ�t_�(
n
) \
789 ? (
`���
(
�c
�< ((
size_t
�(
n
)) \
790 ?
`�r�t
(
de�
,
�c
) \
791 :
`���t
(
de�
,
�c
,
n
)) \
792 :
`���t
(
de�
,
�c
,
n
)))
)
798 #i�de�
_HAVE_STRING_ARCH_�rcmp
799 #i�
__GNUC_PREREQ
(3, 2)
800
#�rcmp
(
s1
,
s2
) \
801
__ex�nsi�__
\
802 ({
size_t
__s1_�n
,
__s2_�n
; \
803 (
`__bu�t�_cڡ�t_p
(
s1
�&& __bu�t�_cڡ�t_�(
s2
) \
804 && (
__s1_�n
=
`���
(
s1
),
__s2_�n
= s���(
s2
), \
805 (!
`__�r�g2_1b�r_p
(
s1
�||
__s1_�n
>= 4) \
806 && (!
`__�r�g2_1b�r_p
(
s2
�||
__s2_�n
>= 4)) \
807 ?
`__bu�t�_�rcmp
(
s1
,
s2
) \
808 : (
`__bu�t�_cڡ�t_p
(
s1
�&&
`__�r�g2_1b�r_p
(s1) \
809 && (
__s1_�n
=
`���
(
s1
), __s1_len < 4) \
810 ? (
`__bu�t�_cڡ�t_p
(
s2
�&&
`__�r�g2_1b�r_p
(s2) \
811 ?
`__bu�t�_�rcmp
(
s1
,
s2
) \
812 :
`__�rcmp_cg
(
s1
,
s2
,
__s1_�n
)) \
813 : (
`__bu�t�_cڡ�t_p
(
s2
�&&
`__�r�g2_1b�r_p
(s2) \
814 && (
__s2_�n
=
`���
(
s2
), __s2_len < 4) \
815 ? (
`__bu�t�_cڡ�t_p
(
s1
�&&
`__�r�g2_1b�r_p
(s1) \
816 ?
`__bu�t�_�rcmp
(
s1
,
s2
) \
817 :
`__�rcmp_gc
(
s1
,
s2
,
__s2_�n
)) \
818 :
`__bu�t�_�rcmp
(
s1
,
s2
)))); })
)
820
#�rcmp
(
s1
,
s2
) \
821
__ex�nsi�__
\
822 ({
size_t
__s1_�n
,
__s2_�n
; \
823 (
`__bu�t�_cڡ�t_p
(
s1
�&& __bu�t�_cڡ�t_�(
s2
) \
824 && (
__s1_�n
=
`���
(
s1
),
__s2_�n
= s���(
s2
), \
825 (!
`__�r�g2_1b�r_p
(
s1
�||
__s1_�n
>= 4) \
826 && (!
`__�r�g2_1b�r_p
(
s2
�||
__s2_�n
>= 4)) \
827 ?
`memcmp
((
__cڡ
*�(
s1
), (__cڡ *�(
s2
), \
828 (
__s1_�n
<
__s2_�n
? __s1_len : __s2_len) + 1) \
829 : (
`__bu�t�_cڡ�t_p
(
s1
�&&
`__�r�g2_1b�r_p
(s1) \
830 && (
__s1_�n
=
`���
(
s1
), __s1_len < 4) \
831 ? (
`__bu�t�_cڡ�t_p
(
s2
�&&
`__�r�g2_1b�r_p
(s2) \
832 ?
`__�rcmp_cc
(
s1
,
s2
,
__s1_�n
) \
833 :
`__�rcmp_cg
(
s1
,
s2
,
__s1_�n
)) \
834 : (
`__bu�t�_cڡ�t_p
(
s2
�&&
`__�r�g2_1b�r_p
(s2) \
835 && (
__s2_�n
=
`���
(
s2
), __s2_len < 4) \
836 ? (
`__bu�t�_cڡ�t_p
(
s1
�&&
`__�r�g2_1b�r_p
(s1) \
837 ?
`__�rcmp_cc
(
s1
,
s2
,
__s2_�n
) \
838 :
`__�rcmp_gc
(
s1
,
s2
,
__s2_�n
)) \
839 :
`�rcmp
(
s1
,
s2
)))); })
)
842
#__�rcmp_cc
(
s1
,
s2
,
l
) \
843 (
`__ex�nsi�__
({
__�su�
= \
844 (((
__cڡ
*�(__cڡ *�(
s1
))[0] \
845 - ((
__cڡ
*�(__cڡ *)(
s2
))[0]);\
846 i�(
l
> 0 &&
__�su�
== 0) \
848
__�su�
= (((
__cڡ
*) \
849 (
__cڡ
*�(
s1
))[1] \
850 - ((
__cڡ
*) \
851 (
__cڡ
*�(
s2
))[1]); \
852 i�(
l
> 1 &&
__�su�
== 0) \
854
__�su�
= \
855 (((
__cڡ
*) \
856 (
__cڡ
*�(
s1
))[2] \
857 - ((
__cڡ
*) \
858 (
__cڡ
*�(
s2
))[2]); \
859 i�(
l
> 2 &&
__�su�
== 0) \
860
__�su�
= \
861 (((
__cڡ
*) \
862 (
__cڡ
*�(
s1
))[3] \
863 - ((
__cڡ
*) \
864 (
__cڡ
*�(
s2
))[3]); \
867
__�su�
; }))
)
869
#__�rcmp_cg
(
s1
,
s2
,
l1
) \
870 (
`__ex�nsi�__
({
__cڡ
*
__s2
= \
871 (
__cڡ
*�(__cڡ *�(
s2
); \
872
__�su�
= \
873 (((
__cڡ
*�(__cڡ *�(
s1
))[0] \
874 -
__s2
[0]); \
875 i�(
l1
> 0 &&
__�su�
== 0) \
877
__�su�
= (((
__cڡ
*) \
878 (
__cڡ
*�(
s1
))[1] -
__s2
[1]); \
879 i�(
l1
> 1 &&
__�su�
== 0) \
881
__�su�
= (((
__cڡ
*) \
882 (
__cڡ
*�(
s1
))[2] -
__s2
[2]);\
883 i�(
l1
> 2 &&
__�su�
== 0) \
884
__�su�
= (((
__cڡ
*) \
885 (
__cڡ
*�(
s1
))[3] \
886 -
__s2
[3]); \
889
__�su�
; }))
)
891
#__�rcmp_gc
(
s1
,
s2
,
l2
) \
892 (
`__ex�nsi�__
({
__cڡ
*
__s1
= \
893 (
__cڡ
*�(__cڡ *�(
s1
); \
894
__�su�
= \
895
__s1
[0] - ((
__cڡ
*) \
896 (
__cڡ
*�(
s2
))[0]; \
897 i�(
l2
> 0 &&
__�su�
== 0) \
899
__�su�
= (
__s1
[1] \
900 - ((
__cڡ
*) \
901 (
__cڡ
*�(
s2
))[1]); \
902 i�(
l2
> 1 &&
__�su�
== 0) \
904
__�su�
= \
905 (
__s1
[2] - ((
__cڡ
*) \
906 (
__cڡ
*�(
s2
))[2]); \
907 i�(
l2
> 2 &&
__�su�
== 0) \
908
__�su�
= \
909 (
__s1
[3] \
910 - ((
__cڡ
*) \
911 (
__cڡ
*�(
s2
))[3]); \
914
__�su�
; }))
)
919 #i�de�
_HAVE_STRING_ARCH_��cmp
920
#��cmp
(
s1
,
s2
,
n
) \
921 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
n
) \
922 && ((
`__bu�t�_cڡ�t_p
(
s1
) \
923 &&
`���
(
s1
�< ((
size_t
�(
n
))) \
924 || (
`__bu�t�_cڡ�t_p
(
s2
) \
925 &&
`���
(
s2
�< ((
size_t
�(
n
)))) \
926 ?
`�rcmp
(
s1
,
s2
�:
`��cmp
(s1, s2,
n
)))
)
932 #i�!
def�ed
_HAVE_STRING_ARCH_�rc�n
|| def�ed
_FORCE_INLINES
933 #i�de�
_HAVE_STRING_ARCH_�rc�n
934 #i�
__GNUC_PREREQ
(3, 2)
935
#�rc�n
(
s
,
�je�
) \
936
__ex�nsi�__
\
937 ({
__r0
,
__r1
,
__r2
; \
938 (
`__bu�t�_cڡ�t_p
(
�je�
�&&
`__�r�g2_1b�r_p
(reject) \
939 ? ((
`__bu�t�_cڡ�t_p
(
s
�&&
`__�r�g2_1b�r_p
(s)) \
940 ?
`__bu�t�_�rc�n
(
s
,
�je�
) \
941 : ((
__r0
= ((
__cڡ
*�(
�je�
))[0], __r0 == '\0') \
942 ?
`���
(
s
) \
943 : ((
__r1
= ((
__cڡ
*�(
�je�
))[1], __r1 == '\0') \
944 ?
`__�rc�n_c1
(
s
,
__r0
) \
945 : ((
__r2
= ((
__cڡ
*�(
�je�
))[2], __r2 == '\0') \
946 ?
`__�rc�n_c2
(
s
,
__r0
,
__r1
) \
947 : (((
__cڡ
*�(
�je�
))[3] == '\0' \
948 ?
`__�rc�n_c3
(
s
,
__r0
,
__r1
,
__r2
) \
949 :
`__bu�t�_�rc�n
(
s
,
�je�
)))))) \
950 :
`__bu�t�_�rc�n
(
s
,
�je�
)); })
)
952
#�rc�n
(
s
,
�je�
) \
953
__ex�nsi�__
\
954 ({
__r0
,
__r1
,
__r2
; \
955 (
`__bu�t�_cڡ�t_p
(
�je�
�&&
`__�r�g2_1b�r_p
(reject) \
956 ? ((
__r0
= ((
__cڡ
*�(
�je�
))[0], __r0 == '\0') \
957 ?
`���
(
s
) \
958 : ((
__r1
= ((
__cڡ
*�(
�je�
))[1], __r1 == '\0') \
959 ?
`__�rc�n_c1
(
s
,
__r0
) \
960 : ((
__r2
= ((
__cڡ
*�(
�je�
))[2], __r2 == '\0') \
961 ?
`__�rc�n_c2
(
s
,
__r0
,
__r1
) \
962 : (((
__cڡ
*�(
�je�
))[3] == '\0' \
963 ?
`__�rc�n_c3
(
s
,
__r0
,
__r1
,
__r2
) \
964 :
`�rc�n
(
s
,
�je�
))))) \
965 :
`�rc�n
(
s
,
�je�
)); })
)
969
__STRING_INLINE
size_t
__�rc�n_c1
(
__cڡ
*
__s
,
__�je�
);
970
__STRING_INLINE
size_t
971
$__�rc�n_c1
(
__cڡ
*
__s
,
__�je�
)
973
size_t
__�su�
= 0;
974
__s
[
__�su�
] !�'\0' && __s[__�su�] !�
__�je�
)
975 ++
__�su�
;
976
__�su�
;
977
}
}
979
__STRING_INLINE
size_t
__�rc�n_c2
(
__cڡ
*
__s
,
__�je�1
,
980
__�je�2
);
981
__STRING_INLINE
size_t
982
$__�rc�n_c2
(
__cڡ
*
__s
,
__�je�1
,
__�je�2
)
984
size_t
__�su�
= 0;
985
__s
[
__�su�
] !�'\0' && __s[__�su�] !�
__�je�1
986 &&
__s
[
__�su�
] !�
__�je�2
)
987 ++
__�su�
;
988
__�su�
;
989
}
}
991
__STRING_INLINE
size_t
__�rc�n_c3
(
__cڡ
*
__s
,
__�je�1
,
992
__�je�2
,
__�je�3
);
993
__STRING_INLINE
size_t
994
$__�rc�n_c3
(
__cڡ
*
__s
,
__�je�1
,
__�je�2
,
995
__�je�3
)
997
size_t
__�su�
= 0;
998
__s
[
__�su�
] !�'\0' && __s[__�su�] !�
__�je�1
999 &&
__s
[
__�su�
] !�
__�je�2
&& __s[__�su�] !�
__�je�3
)
1000 ++
__�su�
;
1001
__�su�
;
1002
}
}
1008 #i�!
def�ed
_HAVE_STRING_ARCH_�r�n
|| def�ed
_FORCE_INLINES
1009 #i�de�
_HAVE_STRING_ARCH_�r�n
1010 #i�
__GNUC_PREREQ
(3, 2)
1011
#�r�n
(
s
,
ac��
) \
1012
__ex�nsi�__
\
1013 ({
__a0
,
__a1
,
__a2
; \
1014 (
`__bu�t�_cڡ�t_p
(
ac��
�&&
`__�r�g2_1b�r_p
(accept) \
1015 ? ((
`__bu�t�_cڡ�t_p
(
s
�&&
`__�r�g2_1b�r_p
(s)) \
1016 ?
`__bu�t�_�r�n
(
s
,
ac��
) \
1017 : ((
__a0
= ((
__cڡ
*�(
ac��
))[0], __a0 == '\0') \
1018 ? ((�(
s
), 0) \
1019 : ((
__a1
= ((
__cڡ
*�(
ac��
))[1], __a1 == '\0') \
1020 ?
`__�r�n_c1
(
s
,
__a0
) \
1021 : ((
__a2
= ((
__cڡ
*�(
ac��
))[2], __a2 == '\0') \
1022 ?
`__�r�n_c2
(
s
,
__a0
,
__a1
) \
1023 : (((
__cڡ
*�(
ac��
))[3] == '\0' \
1024 ?
`__�r�n_c3
(
s
,
__a0
,
__a1
,
__a2
) \
1025 :
`__bu�t�_�r�n
(
s
,
ac��
)))))) \
1026 :
`__bu�t�_�r�n
(
s
,
ac��
)); })
)
1028
#�r�n
(
s
,
ac��
) \
1029
__ex�nsi�__
\
1030 ({
__a0
,
__a1
,
__a2
; \
1031 (
`__bu�t�_cڡ�t_p
(
ac��
�&&
`__�r�g2_1b�r_p
(accept) \
1032 ? ((
__a0
= ((
__cڡ
*�(
ac��
))[0], __a0 == '\0') \
1033 ? ((�(
s
), 0) \
1034 : ((
__a1
= ((
__cڡ
*�(
ac��
))[1], __a1 == '\0') \
1035 ?
`__�r�n_c1
(
s
,
__a0
) \
1036 : ((
__a2
= ((
__cڡ
*�(
ac��
))[2], __a2 == '\0') \
1037 ?
`__�r�n_c2
(
s
,
__a0
,
__a1
) \
1038 : (((
__cڡ
*�(
ac��
))[3] == '\0' \
1039 ?
`__�r�n_c3
(
s
,
__a0
,
__a1
,
__a2
) \
1040 :
`�r�n
(
s
,
ac��
))))) \
1041 :
`�r�n
(
s
,
ac��
)); })
)
1045
__STRING_INLINE
size_t
__�r�n_c1
(
__cڡ
*
__s
,
__ac��
);
1046
__STRING_INLINE
size_t
1047
$__�r�n_c1
(
__cڡ
*
__s
,
__ac��
)
1049
size_t
__�su�
= 0;
1051
__s
[
__�su�
] =�
__ac��
)
1052 ++
__�su�
;
1053
__�su�
;
1054
}
}
1056
__STRING_INLINE
size_t
__�r�n_c2
(
__cڡ
*
__s
,
__ac��1
,
1057
__ac��2
);
1058
__STRING_INLINE
size_t
1059
$__�r�n_c2
(
__cڡ
*
__s
,
__ac��1
,
__ac��2
)
1061
size_t
__�su�
= 0;
1063
__s
[
__�su�
] =�
__ac��1
|| __s[__�su�] =�
__ac��2
)
1064 ++
__�su�
;
1065
__�su�
;
1066
}
}
1068
__STRING_INLINE
size_t
__�r�n_c3
(
__cڡ
*
__s
,
__ac��1
,
1069
__ac��2
,
__ac��3
);
1070
__STRING_INLINE
size_t
1071
$__�r�n_c3
(
__cڡ
*
__s
,
__ac��1
,
__ac��2
,
__ac��3
)
1073
size_t
__�su�
= 0;
1075
__s
[
__�su�
] =�
__ac��1
|| __s[__�su�] =�
__ac��2
1076 ||
__s
[
__�su�
] =�
__ac��3
)
1077 ++
__�su�
;
1078
__�su�
;
1079
}
}
1084 #i�!
def�ed
_HAVE_STRING_ARCH_��brk
|| def�ed
_FORCE_INLINES
1085 #i�de�
_HAVE_STRING_ARCH_��brk
1086 #i�
__GNUC_PREREQ
(3, 2)
1087
#��brk
(
s
,
ac��
) \
1088
__ex�nsi�__
\
1089 ({
__a0
,
__a1
,
__a2
; \
1090 (
`__bu�t�_cڡ�t_p
(
ac��
�&&
`__�r�g2_1b�r_p
(accept) \
1091 ? ((
`__bu�t�_cڡ�t_p
(
s
�&&
`__�r�g2_1b�r_p
(s)) \
1092 ?
`__bu�t�_��brk
(
s
,
ac��
) \
1093 : ((
__a0
= ((
__cڡ
*�(
ac��
))[0], __a0 == '\0') \
1094 ? ((�(
s
), (*�
NULL
) \
1095 : ((
__a1
= ((
__cڡ
*�(
ac��
))[1], __a1 == '\0') \
1096 ?
`__bu�t�_�rchr
(
s
,
__a0
) \
1097 : ((
__a2
= ((
__cڡ
*�(
ac��
))[2], __a2 == '\0') \
1098 ?
`__��brk_c2
(
s
,
__a0
,
__a1
) \
1099 : (((
__cڡ
*�(
ac��
))[3] == '\0' \
1100 ?
`__��brk_c3
(
s
,
__a0
,
__a1
,
__a2
) \
1101 :
`__bu�t�_��brk
(
s
,
ac��
)))))) \
1102 :
`__bu�t�_��brk
(
s
,
ac��
)); })
)
1104
#��brk
(
s
,
ac��
) \
1105
__ex�nsi�__
\
1106 ({
__a0
,
__a1
,
__a2
; \
1107 (
`__bu�t�_cڡ�t_p
(
ac��
�&&
`__�r�g2_1b�r_p
(accept) \
1108 ? ((
__a0
= ((
__cڡ
*�(
ac��
))[0], __a0 == '\0') \
1109 ? ((�(
s
), (*�
NULL
) \
1110 : ((
__a1
= ((
__cڡ
*�(
ac��
))[1], __a1 == '\0') \
1111 ?
`�rchr
(
s
,
__a0
) \
1112 : ((
__a2
= ((
__cڡ
*�(
ac��
))[2], __a2 == '\0') \
1113 ?
`__��brk_c2
(
s
,
__a0
,
__a1
) \
1114 : (((
__cڡ
*�(
ac��
))[3] == '\0' \
1115 ?
`__��brk_c3
(
s
,
__a0
,
__a1
,
__a2
) \
1116 :
`��brk
(
s
,
ac��
))))) \
1117 :
`��brk
(
s
,
ac��
)); })
)
1121
__STRING_INLINE
*
__��brk_c2
(
__cڡ
*
__s
,
__ac��1
,
1122
__ac��2
);
1123
__STRING_INLINE
*
1124
$__��brk_c2
(
__cڡ
*
__s
,
__ac��1
,
__ac��2
)
1127 *
__s
!�'\0' && *__�!�
__ac��1
&& *__�!�
__ac��2
)
1128 ++
__s
;
1129 *
__s
=�'\0' ?
NULL
: (*�(
size_t
) __s;
1130
}
}
1132
__STRING_INLINE
*
__��brk_c3
(
__cڡ
*
__s
,
__ac��1
,
1133
__ac��2
,
__ac��3
);
1134
__STRING_INLINE
*
1135
$__��brk_c3
(
__cڡ
*
__s
,
__ac��1
,
__ac��2
,
1136
__ac��3
)
1139 *
__s
!�'\0' && *__�!�
__ac��1
&& *__�!�
__ac��2
1140 && *
__s
!�
__ac��3
)
1141 ++
__s
;
1142 *
__s
=�'\0' ?
NULL
: (*�(
size_t
) __s;
1143
}
}
1149 #i�!
def�ed
_HAVE_STRING_ARCH_�r�r
&& !
__GNUC_PREREQ
(2, 97)
1150
#�r�r
(
hay�ack
,
�ed�
) \
1151 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�ed�
�&&
`__�r�g2_1b�r_p
(needle) \
1152 ? (((
__cڡ
*�(
�ed�
))[0] == '\0' \
1153 ? (*�(
size_t
�(
hay�ack
) \
1154 : (((
__cڡ
*�(
�ed�
))[1] == '\0' \
1155 ?
`�rchr
(
hay�ack
, \
1156 ((
__cڡ
*�(
�ed�
))[0]) \
1157 :
`�r�r
(
hay�ack
,
�ed�
))) \
1158 :
`�r�r
(
hay�ack
,
�ed�
)))
)
1162 #i�!
def�ed
_HAVE_STRING_ARCH_��ok_r
|| def�ed
_FORCE_INLINES
1163 #i�de�
_HAVE_STRING_ARCH_��ok_r
1164
#__��ok_r
(
s
,
�p
,
�x�
) \
1165 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
�p
�&&
`__�r�g2_1b�r_p
(sep) \
1166 && ((
__cڡ
*�(
�p
))[0] != '\0' \
1167 && ((
__cڡ
*�(
�p
))[1] == '\0' \
1168 ?
`__��ok_r_1c
(
s
, ((
__cڡ
*�(
�p
))[0],
�x�
) \
1169 :
`__��ok_r
(
s
,
�p
,
�x�
)))
)
1172
__STRING_INLINE
*
__��ok_r_1c
(*
__s
,
__�p
, **
__�x�
);
1173
__STRING_INLINE
*
1174
$__��ok_r_1c
(*
__s
,
__�p
, **
__�x�
)
1176 *
__�su�
;
1177 i�(
__s
=�
NULL
)
1178
__s
= *
__�x�
;
1179 *
__s
=�
__�p
)
1180 ++
__s
;
1181
__�su�
=
NULL
;
1182 i�(*
__s
!= '\0')
1184
__�su�
=
__s
++;
1185 *
__s
!= '\0')
1186 i�(*
__s
++ =�
__�p
)
1188
__s
[-1] = '\0';
1192 *
__�x�
=
__s
;
1193
__�su�
;
1194
}
}
1195 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
1196
#��ok_r
(
s
,
�p
,
�x�
�
`__��ok_r
(s, s�,�ex�)
)
1201 #i�!
def�ed
_HAVE_STRING_ARCH_�r�p
|| def�ed
_FORCE_INLINES
1202 #i�de�
_HAVE_STRING_ARCH_�r�p
1204
*
__�r�p_g
(**
__�r�gp
,
__cڡ
*
__d�im
);
1205
#__�r�p
(
s
,
�je�
) \
1206
__ex�nsi�__
\
1207 ({
__r0
,
__r1
,
__r2
; \
1208 (
`__bu�t�_cڡ�t_p
(
�je�
�&&
`__�r�g2_1b�r_p
(reject) \
1209 && (
__r0
= ((
__cڡ
*�(
�je�
))[0], \
1210 ((
__cڡ
*�(
�je�
))[0] != '\0') \
1211 ? ((
__r1
= ((
__cڡ
*�(
�je�
))[1], \
1212 ((
__cڡ
*�(
�je�
))[1] == '\0') \
1213 ?
`__�r�p_1c
(
s
,
__r0
) \
1214 : ((
__r2
= ((
__cڡ
*�(
�je�
))[2], __r2 == '\0') \
1215 ?
`__�r�p_2c
(
s
,
__r0
,
__r1
) \
1216 : (((
__cڡ
*�(
�je�
))[3] == '\0' \
1217 ?
`__�r�p_3c
(
s
,
__r0
,
__r1
,
__r2
) \
1218 :
`__�r�p_g
(
s
,
�je�
)))) \
1219 :
`__�r�p_g
(
s
,
�je�
)); })
)
1222
__STRING_INLINE
*
__�r�p_1c
(**
__s
,
__�je�
);
1223
__STRING_INLINE
*
1224
$__�r�p_1c
(**
__s
,
__�je�
)
1226 *
__�tv�
= *
__s
;
1227 i�(
__�tv�
!�
NULL
&& (*
__s
=
`�rchr
(__�tv�,
__�je�
)) != NULL)
1228 *(*
__s
)++ = '\0';
1229
__�tv�
;
1230
}
}
1232
__STRING_INLINE
*
__�r�p_2c
(**
__s
,
__�je�1
,
__�je�2
);
1233
__STRING_INLINE
*
1234
$__�r�p_2c
(**
__s
,
__�je�1
,
__�je�2
)
1236 *
__�tv�
= *
__s
;
1237 i�(
__�tv�
!�
NULL
)
1239 *
__�
=
__�tv�
;
1242 i�(*
__�
== '\0')
1244
__�
=
NULL
;
1247 i�(*
__�
=�
__�je�1
|| *__� =�
__�je�2
)
1249 *
__�
++ = '\0';
1252 ++
__�
;
1254 *
__s
=
__�
;
1256
__�tv�
;
1257
}
}
1259
__STRING_INLINE
*
__�r�p_3c
(**
__s
,
__�je�1
,
__�je�2
,
1260
__�je�3
);
1261
__STRING_INLINE
*
1262
$__�r�p_3c
(**
__s
,
__�je�1
,
__�je�2
,
__�je�3
)
1264 *
__�tv�
= *
__s
;
1265 i�(
__�tv�
!�
NULL
)
1267 *
__�
=
__�tv�
;
1270 i�(*
__�
== '\0')
1272
__�
=
NULL
;
1275 i�(*
__�
=�
__�je�1
|| *__� =�
__�je�2
|| *__� =�
__�je�3
)
1277 *
__�
++ = '\0';
1280 ++
__�
;
1282 *
__s
=
__�
;
1284
__�tv�
;
1285
}
}
1286 #ifde�
__USE_BSD
1287
#�r�p
(
s
,
�je�
�
`__�r�p
(s,�eje�)
)
1294 #ifde�
__USE_MISC
1296 #i�!
def�ed
_HAVE_STRING_ARCH_�rdup
|| !def�ed
_HAVE_STRING_ARCH_��dup
1297
#__�ed_m�loc_�d_��oc
)
1298
~<�dlib.h
>
1301 #i�de�
_HAVE_STRING_ARCH_�rdup
1303
*
$__�rdup
(
__cڡ
*
__�r�g
�
__THROW
__��ibu�_m�loc__
;
1304
#__�rdup
(
s
) \
1305 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
s
�&&
`__�r�g2_1b�r_p
(s) \
1306 ? (((
__cڡ
*�(
s
))[0] == '\0' \
1307 ? (*�
`��oc
((
size_t
) 1, (size_t) 1) \
1308 : ({
size_t
__�n
=
`���
(
s
) + 1; \
1309 *
__�tv�
= (*�
`m�loc
(
__�n
); \
1310 i�(
__�tv�
!�
NULL
) \
1311
__�tv�
= (*�
`mem�y
(__�tv�,
s
,
__�n
); \
1312
__�tv�
;
}
})) \
1313 :
`__�rdup
(
s
)))
)
1315 #i�
def�ed
__USE_SVID
|| def�ed
__USE_BSD
|| def�ed
__USE_XOPEN_EXTENDED
1316
#�rdup
(
s
�
`__�rdup
(s)
)
1320 #i�de�
_HAVE_STRING_ARCH_��dup
1322
*
$__��dup
(
__cڡ
*
__�r�g
,
size_t
__n
)
1323
__THROW
__��ibu�_m�loc__
;
1324
#__��dup
(
s
,
n
) \
1325 (
`__ex�nsi�__
(
`__bu�t�_cڡ�t_p
(
s
�&&
`__�r�g2_1b�r_p
(s) \
1326 ? (((
__cڡ
*�(
s
))[0] == '\0' \
1327 ? (*�
`��oc
((
size_t
) 1, (size_t) 1) \
1328 : ({
size_t
__�n
=
`���
(
s
) + 1; \
1329
size_t
__n
= (
n
); \
1330 *
__�tv�
; \
1331 i�(
__n
<
__�n
) \
1332
__�n
=
__n
+ 1; \
1333
__�tv�
= (*�
`m�loc
(
__�n
); \
1334 i�(
__�tv�
!�
NULL
) \
1336
__�tv�
[
__�n
- 1] = '\0'; \
1337
__�tv�
= (*�
`mem�y
(__�tv�,
s
, \
1338
__�n
- 1); \
1340
__�tv�
;
}
})) \
1341 :
`__��dup
(
s
,
n
)))
)
1343 #ifde�
__USE_GNU
1344
#��dup
(
s
,
n
�
`__��dup
(s,�)
)
1350 #i�de�
_FORCE_INLINES
1351 #unde�
__STRING_INLINE
@/usr/include/bits/string3.h
19 #i�de�
_STRING_H
23
__w�nde�
(
__w�n_mem�t_z�o_�n
,
26 #i�de�
__�lu�lus
30 #unde�
mem�y
31 #unde�
memmove
32 #unde�
mem�t
33 #unde�
�r�t
34 #unde�
�r�y
35 #unde�
���t
36 #unde�
���y
37 #ifde�
__USE_GNU
38 #unde�
memp�y
39 #unde�
�p�y
41 #ifde�
__USE_BSD
42 #unde�
bc�y
43 #unde�
bz�o
48
__ex��_�ways_�l�e
*
49
__NTH
(
$mem�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
50
size_t
__�n
))
52
`__bu�t�___mem�y_chk
(
__de�
,
__�c
,
__�n
,
`__bos0
(__dest));
53
}
}
55
__ex��_�ways_�l�e
*
56
__NTH
(
$memmove
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
57
size_t
__�n
))
59
`__bu�t�___memmove_chk
(
__de�
,
__�c
,
__�n
,
`__bos0
(__dest));
60
}
}
62 #ifde�
__USE_GNU
63
__ex��_�ways_�l�e
*
64
__NTH
(
$memp�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
65
size_t
__�n
))
67
`__bu�t�___memp�y_chk
(
__de�
,
__�c
,
__�n
,
`__bos0
(__dest));
68
}
}
77
__ex��_�ways_�l�e
*
78
__NTH
(
$mem�t
(*
__de�
,
__ch
,
size_t
__�n
))
80 i�(
`__bu�t�_cڡ�t_p
(
__�n
) && __len == 0
81 && (!
`__bu�t�_cڡ�t_p
(
__ch
) || __ch != 0))
83
`__w�n_mem�t_z�o_�n
();
84
__de�
;
86
`__bu�t�___mem�t_chk
(
__de�
,
__ch
,
__�n
,
`__bos0
(__dest));
87
}
}
89 #ifde�
__USE_BSD
90
__ex��_�ways_�l�e
91
__NTH
(
$bc�y
(
__cڡ
*
__��ri�
__�c
, *__��ri�
__de�
,
92
size_t
__�n
))
94 (�
`__bu�t�___memmove_chk
(
__de�
,
__�c
,
__�n
,
`__bos0
(__dest));
95
}
}
97
__ex��_�ways_�l�e
98
__NTH
(
$bz�o
(*
__de�
,
size_t
__�n
))
100 (�
`__bu�t�___mem�t_chk
(
__de�
, '\0',
__�n
,
`__bos0
(__dest));
101
}
}
104
__ex��_�ways_�l�e
*
105
__NTH
(
$�r�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
))
107
`__bu�t�___�r�y_chk
(
__de�
,
__�c
,
`__bos
(__dest));
108
}
}
110 #ifde�
__USE_GNU
111
__ex��_�ways_�l�e
*
112
__NTH
(
$�p�y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
))
114
`__bu�t�___�p�y_chk
(
__de�
,
__�c
,
`__bos
(__dest));
115
}
}
119
__ex��_�ways_�l�e
*
120
__NTH
(
$���y
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
121
size_t
__�n
))
123
`__bu�t�___���y_chk
(
__de�
,
__�c
,
__�n
,
`__bos
(__dest));
124
}
}
127
*
$__���y_chk
(*
__de�
,
__cڡ
*
__�c
,
size_t
__n
,
128
size_t
__de��n
�
__THROW
;
129
*
`__REDIRECT_NTH
(
__���y_��s
, (*
__de�
,
130
__cڡ
*
__�c
,
131
size_t
__n
),
���y
);
133
__ex��_�ways_�l�e
*
134
`__NTH
(
$���y
(*
__de�
,
__cڡ
*
__�c
,
size_t
__n
))
136 i�(
`__bos
(
__de�
�!�(
size_t
) -1
137 && (!
`__bu�t�_cڡ�t_p
(
__n
�|| __�<�
`__bos
(
__de�
)))
138
`__���y_chk
(
__de�
,
__�c
,
__n
,
`__bos
(__dest));
139
`__���y_��s
(
__de�
,
__�c
,
__n
);
140
}
}
143
__ex��_�ways_�l�e
*
144
__NTH
(
$�r�t
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
))
146
`__bu�t�___�r�t_chk
(
__de�
,
__�c
,
`__bos
(__dest));
147
}
}
150
__ex��_�ways_�l�e
*
151
__NTH
(
$���t
(*
__��ri�
__de�
,
__cڡ
*__��ri�
__�c
,
152
size_t
__�n
))
154
`__bu�t�___���t_chk
(
__de�
,
__�c
,
__�n
,
`__bos
(__dest));
155
}
}
@/usr/include/bits/sys_errlist.h
20 #i�de�
_STDIO_H
26 #ifde�
__USE_BSD
27
sys_ü
;
28
__cڡ
*__cڡ
sys_��i�
[];
30 #ifde�
__USE_GNU
31
_sys_ü
;
32
__cڡ
*__cڡ
_sys_��i�
[];
@/usr/include/bits/types.h
24 #i�def
_BITS_TYPES_H
25
#_BITS_TYPES_H
1
)
27
~<�u�s.h
>
28
~<b�s/w�dsize.h
>
31
t__u_ch�
;
32
t__u_sh�t
;
33
t__u_�t
;
34
t__u_l�g
;
37 sig�d
t__�t8_t
;
38
t__u�t8_t
;
39 sig�d
t__�t16_t
;
40
t__u�t16_t
;
41 sig�d
t__�t32_t
;
42
t__u�t32_t
;
43 #i�
__WORDSIZE
== 64
44 sig�d
t__�t64_t
;
45
t__u�t64_t
;
46 #�i�
def�ed
__GLIBC_HAVE_LONG_LONG
47
__ex�nsi�__
sig�d
t__�t64_t
;
48
__ex�nsi�__
t__u�t64_t
;
52 #i�
__WORDSIZE
== 64
53
t__quad_t
;
54
t__u_quad_t
;
55 #�i�
def�ed
__GLIBC_HAVE_LONG_LONG
56
__ex�nsi�__
t__quad_t
;
57
__ex�nsi�__
t__u_quad_t
;
61
m__v�
[2];
62 }
t__quad_t
;
65
__u_l�g
m__v�
[2];
66 }
t__u_quad_t
;
99
#__S16_TYPE
)
100
#__U16_TYPE
)
101
#__S32_TYPE
)
102
#__U32_TYPE
)
103
#__SLONGWORD_TYPE
)
104
#__ULONGWORD_TYPE
)
105 #i�
__WORDSIZE
== 32
106
#__SQUAD_TYPE
__quad_t
)
107
#__UQUAD_TYPE
__u_quad_t
)
108
#__SWORD_TYPE
)
109
#__UWORD_TYPE
)
110
#__SLONG32_TYPE
)
111
#__ULONG32_TYPE
)
112
#__S64_TYPE
__quad_t
)
113
#__U64_TYPE
__u_quad_t
)
116
#__STD_TYPE
__ex�nsi�__
)
117 #�i�
__WORDSIZE
== 64
118
t__SQUAD_TYPE
)
119
t__UQUAD_TYPE
)
120
t__SWORD_TYPE
)
121
t__UWORD_TYPE
)
122
t__SLONG32_TYPE
)
123
t__ULONG32_TYPE
)
124
t__S64_TYPE
)
125
t__U64_TYPE
)
127
t__STD_TYPE
)
131
~<b�s/ty�sizes.h
>
134
__STD_TYPE
t__DEV_T_TYPE
t__dev_t
;
135
__STD_TYPE
__UID_T_TYPE
g__uid_t
;
136
__STD_TYPE
__GID_T_TYPE
g__gid_t
;
137
__STD_TYPE
__INO_T_TYPE
g__�o_t
;
138
__STD_TYPE
__INO64_T_TYPE
g__�o64_t
;
139
__STD_TYPE
__MODE_T_TYPE
g__mode_t
;
140
__STD_TYPE
__NLINK_T_TYPE
g__ƚk_t
;
141
__STD_TYPE
__OFF_T_TYPE
g__off_t
;
142
__STD_TYPE
__OFF64_T_TYPE
g__off64_t
;
143
__STD_TYPE
__PID_T_TYPE
g__pid_t
;
144
__STD_TYPE
__FSID_T_TYPE
g__fsid_t
;
145
__STD_TYPE
__CLOCK_T_TYPE
g__�ock_t
;
146
__STD_TYPE
__RLIM_T_TYPE
g__�im_t
;
147
__STD_TYPE
__RLIM64_T_TYPE
g__�im64_t
;
148
__STD_TYPE
__ID_T_TYPE
g__id_t
;
149
__STD_TYPE
__TIME_T_TYPE
g__time_t
;
150
__STD_TYPE
__USECONDS_T_TYPE
g__u�c�ds_t
;
151
__STD_TYPE
__SUSECONDS_T_TYPE
g__su�c�ds_t
;
153
__STD_TYPE
__DADDR_T_TYPE
g__daddr_t
;
154
__STD_TYPE
__SWBLK_T_TYPE
g__swblk_t
;
155
__STD_TYPE
__KEY_T_TYPE
g__key_t
;
158
__STD_TYPE
__CLOCKID_T_TYPE
g__�ockid_t
;
161
__STD_TYPE
__TIMER_T_TYPE
g__tim�_t
;
164
__STD_TYPE
__BLKSIZE_T_TYPE
g__blksize_t
;
169
__STD_TYPE
__BLKCNT_T_TYPE
g__blk�t_t
;
170
__STD_TYPE
__BLKCNT64_T_TYPE
g__blk�t64_t
;
173
__STD_TYPE
__FSBLKCNT_T_TYPE
g__fsblk�t_t
;
174
__STD_TYPE
__FSBLKCNT64_T_TYPE
g__fsblk�t64_t
;
177
__STD_TYPE
__FSFILCNT_T_TYPE
g__fsf��t_t
;
178
__STD_TYPE
__FSFILCNT64_T_TYPE
g__fsf��t64_t
;
180
__STD_TYPE
__SSIZE_T_TYPE
g__ssize_t
;
184
__off64_t
t__loff_t
;
185
__quad_t
*
t__qaddr_t
;
186 *
t__�ddr_t
;
189
__STD_TYPE
__SWORD_TYPE
g__���_t
;
192
__STD_TYPE
__U32_TYPE
g__sock�n_t
;
195 #unde�
__STD_TYPE
@/usr/include/features.h
19 #i�def
_FEATURES_H
20
#_FEATURES_H
1
)
95 #unde�
__USE_ISOC99
96 #unde�
__USE_ISOC95
97 #unde�
__USE_POSIX
98 #unde�
__USE_POSIX2
99 #unde�
__USE_POSIX199309
100 #unde�
__USE_POSIX199506
101 #unde�
__USE_XOPEN
102 #unde�
__USE_XOPEN_EXTENDED
103 #unde�
__USE_UNIX98
104 #unde�
__USE_XOPEN2K
105 #unde�
__USE_XOPEN2K8
106 #unde�
__USE_LARGEFILE
107 #unde�
__USE_LARGEFILE64
108 #unde�
__USE_FILE_OFFSET64
109 #unde�
__USE_BSD
110 #unde�
__USE_SVID
111 #unde�
__USE_MISC
112 #unde�
__USE_ATFILE
113 #unde�
__USE_GNU
114 #unde�
__USE_REENTRANT
115 #unde�
__USE_FORTIFY_LEVEL
116 #unde�
__FAVOR_BSD
117 #unde�
__KERNEL_STRICT_NAMES
121 #i�de�
_LOOSE_KERNEL_NAMES
122
#__KERNEL_STRICT_NAMES
)
126
#__USE_ANSI
1
)
135 #i�
def�ed
__GNUC__
&& def�ed
__GNUC_MINOR__
136
#__GNUC_PREREQ
(
maj
,
m�
) \
137 ((
__GNUC__
<< 16�+
__GNUC_MINOR__
>�((
maj
�<< 16�+ (
m�
))
)
139
#__GNUC_PREREQ
(
maj
,
m�
�0
)
144 #i�
def�ed
_BSD_SOURCE
&& \
145 !(
def�ed
g_POSIX_SOURCE
|| def�ed
g_POSIX_C_SOURCE
|| \
146
def�ed
g_XOPEN_SOURCE
|| def�ed
g_XOPEN_SOURCE_EXTENDED
|| \
147
def�ed
g_GNU_SOURCE
|| def�ed
g_SVID_SOURCE
)
148
#__FAVOR_BSD
1
)
152 #ifde�
_GNU_SOURCE
153 #unde�
_ISOC99_SOURCE
154
#_ISOC99_SOURCE
1
)
155 #unde�
_POSIX_SOURCE
156
#_POSIX_SOURCE
1
)
157 #unde�
_POSIX_C_SOURCE
158
#_POSIX_C_SOURCE
200809L
)
159 #unde�
_XOPEN_SOURCE
160
#_XOPEN_SOURCE
700
)
161 #unde�
_XOPEN_SOURCE_EXTENDED
162
#_XOPEN_SOURCE_EXTENDED
1
)
163 #unde�
_LARGEFILE64_SOURCE
164
#_LARGEFILE64_SOURCE
1
)
165 #unde�
_BSD_SOURCE
166
#_BSD_SOURCE
1
)
167 #unde�
_SVID_SOURCE
168
#_SVID_SOURCE
1
)
169 #unde�
_ATFILE_SOURCE
170
#_ATFILE_SOURCE
1
)
175 #i�(!
def�ed
__STRICT_ANSI__
&& !def�ed
_ISOC99_SOURCE
&& \
176 !
def�ed
g_POSIX_SOURCE
&& !def�ed
g_POSIX_C_SOURCE
&& \
177 !
def�ed
g_XOPEN_SOURCE
&& !def�ed
g_XOPEN_SOURCE_EXTENDED
&& \
178 !
def�ed
g_BSD_SOURCE
&& !def�ed
g_SVID_SOURCE
)
179
#_BSD_SOURCE
1
)
180
#_SVID_SOURCE
1
)
187 #i�(
def�ed
_ISOC99_SOURCE
|| def�ed
_ISOC9X_SOURCE
\
188 || (
def�ed
g__STDC_VERSION__
&& __STDC_VERSION__ >= 199901L))
189
#__USE_ISOC99
1
)
193 #i�(
def�ed
_ISOC99_SOURCE
|| def�ed
_ISOC9X_SOURCE
\
194 || (
def�ed
__STDC_VERSION__
&& __STDC_VERSION__ >= 199409L))
195
#__USE_ISOC95
1
)
200 #i�((!
def�ed
__STRICT_ANSI__
|| (
_XOPEN_SOURCE
- 0) >= 500) && \
201 !
def�ed
_POSIX_SOURCE
&& !def�ed
_POSIX_C_SOURCE
)
202
#_POSIX_SOURCE
1
)
203 #i�
def�ed
_XOPEN_SOURCE
&& (_XOPEN_SOURCE - 0) < 500
204
#_POSIX_C_SOURCE
2
)
205 #�i�
def�ed
_XOPEN_SOURCE
&& (_XOPEN_SOURCE - 0) < 600
206
#_POSIX_C_SOURCE
199506L
)
207 #�i�
def�ed
_XOPEN_SOURCE
&& (_XOPEN_SOURCE - 0) < 700
208
#_POSIX_C_SOURCE
200112L
)
210
#_POSIX_C_SOURCE
200809L
)
212
#__USE_POSIX_IMPLICITLY
1
)
215 #i�
def�ed
_POSIX_SOURCE
||
_POSIX_C_SOURCE
>�1 || def�ed
_XOPEN_SOURCE
216
#__USE_POSIX
1
)
219 #i�
def�ed
_POSIX_C_SOURCE
&& _POSIX_C_SOURCE >�2 || def�ed
_XOPEN_SOURCE
220
#__USE_POSIX2
1
)
223 #i�(
_POSIX_C_SOURCE
- 0) >= 199309L
224
#__USE_POSIX199309
1
)
227 #i�(
_POSIX_C_SOURCE
- 0) >= 199506L
228
#__USE_POSIX199506
1
)
231 #i�(
_POSIX_C_SOURCE
- 0) >= 200112L
232
#__USE_XOPEN2K
1
)
233 #unde�
__USE_ISOC99
234
#__USE_ISOC99
1
)
237 #i�(
_POSIX_C_SOURCE
- 0) >= 200809L
238
#__USE_XOPEN2K8
1
)
239 #unde�
_ATFILE_SOURCE
240
#_ATFILE_SOURCE
1
)
243 #ifdef
_XOPEN_SOURCE
244
#__USE_XOPEN
1
)
245 #i�(
_XOPEN_SOURCE
- 0) >= 500
246
#__USE_XOPEN_EXTENDED
1
)
247
#__USE_UNIX98
1
)
248 #unde�
_LARGEFILE_SOURCE
249
#_LARGEFILE_SOURCE
1
)
250 #i�(
_XOPEN_SOURCE
- 0) >= 600
251 #i�(
_XOPEN_SOURCE
- 0) >= 700
252
#__USE_XOPEN2K8
1
)
254
#__USE_XOPEN2K
1
)
255 #unde�
__USE_ISOC99
256
#__USE_ISOC99
1
)
259 #ifde�
_XOPEN_SOURCE_EXTENDED
260
#__USE_XOPEN_EXTENDED
1
)
265 #ifde�
_LARGEFILE_SOURCE
266
#__USE_LARGEFILE
1
)
269 #ifde�
_LARGEFILE64_SOURCE
270
#__USE_LARGEFILE64
1
)
273 #i�
def�ed
_FILE_OFFSET_BITS
&& _FILE_OFFSET_BITS == 64
274
#__USE_FILE_OFFSET64
1
)
277 #i�
def�ed
_BSD_SOURCE
|| def�ed
_SVID_SOURCE
278
#__USE_MISC
1
)
281 #ifdef
_BSD_SOURCE
282
#__USE_BSD
1
)
285 #ifdef
_SVID_SOURCE
286
#__USE_SVID
1
)
289 #ifdef
_ATFILE_SOURCE
290
#__USE_ATFILE
1
)
293 #ifdef
_GNU_SOURCE
294
#__USE_GNU
1
)
297 #i�
def�ed
_REENTRANT
|| def�ed
_THREAD_SAFE
298
#__USE_REENTRANT
1
)
301 #i�
def�ed
_FORTIFY_SOURCE
&& _FORTIFY_SOURCE > 0 \
302 &&
__GNUC_PREREQ
(4, 1�&&
def�ed
g__OPTIMIZE__
&& __OPTIMIZE__ > 0
303 #i�
_FORTIFY_SOURCE
> 1
304
#__USE_FORTIFY_LEVEL
2
)
306
#__USE_FORTIFY_LEVEL
1
)
309
#__USE_FORTIFY_LEVEL
0
)
313
~<b�s/�edefs.h
>
316
#__STDC_ISO_10646__
200009L
)
324 #unde�
__GNU_LIBRARY__
325
#__GNU_LIBRARY__
6
)
329
#__GLIBC__
2
)
330
#__GLIBC_MINOR__
11
)
332
#__GLIBC_PREREQ
(
maj
,
m�
) \
333 ((
__GLIBC__
<< 16�+
__GLIBC_MINOR__
>�((
maj
�<< 16�+ (
m�
))
)
336 #i�
def�ed
__GNUC__
\
337 || (
def�ed
g__PGI
&& def�ed
g__i386__
) \
338 || (
def�ed
g__INTEL_COMPILER
&& (def�ed
g__i386__
|| def�ed
g__�64__
)) \
339 || (
def�ed
g__STDC_VERSION__
&& __STDC_VERSION__ >= 199901L)
340
#__GLIBC_HAVE_LONG_LONG
1
)
344 #i�de�
__ASSEMBLER__
345 #i�de�
_SYS_CDEFS_H
346
~<sys/cdefs.h
>
351 #i�
def�ed
__USE_FILE_OFFSET64
&& !def�ed
__REDIRECT
352
#__USE_LARGEFILE
1
)
353
#__USE_LARGEFILE64
1
)
359 #i�
__GNUC_PREREQ
(2, 7�&&
def�ed
__OPTIMIZE__
\
360 && !
def�ed
g__OPTIMIZE_SIZE__
&& !def�ed
g__NO_INLINE__
\
361 &&
def�ed
g__ex��_�l�e
362
#__USE_EXTERN_INLINES
1
)
367 #i�
__GNUC_PREREQ
(2, 7�&&
def�ed
__OPTIMIZE__
\
368 && (
def�ed
g_LIBC
|| !def�ed
g__OPTIMIZE_SIZE__
�&& !def�ed
g__NO_INLINE__
\
369 &&
def�ed
g__ex��_�l�e
370
#__USE_EXTERN_INLINES_IN_LIBC
1
)
378
~<gnu/�ubs.h
>
@/usr/include/getopt.h
21 #i�de�
_GETOPT_H
23 #i�de�
__�ed_g��t
24
#_GETOPT_H
1
)
34 #i�!
def�ed
__GNU_LIBRARY__
35
~<�y�.h
>
38 #i�de�
__THROW
39 #i�de�
__GNUC_PREREQ
40
#__GNUC_PREREQ
(
maj
,
m�
�(0)
)
42 #i�
def�ed
__�lu�lus
&&
__GNUC_PREREQ
(2,8)
43
#__THROW
`throw
()
)
45
#__THROW
)
49 #ifdef
__�lu�lus
59
*
ݏrg
;
73
�t�d
;
78
�
;
82
�t�t
;
84 #i�de�
__�ed_g��t
106
s�ti�
108 cڡ *
g�me
;
111
ghas_�g
;
112 *
g�ag
;
113
gv�
;
118
#no_�gum�t
0
)
119
#�qu�ed_�gum�t
1
)
120
#�tiڮ_�gum�t
2
)
148 #ifde�
__GNU_LIBRARY__
152
g��t
(
___�gc
, *cڡ *
___�gv
, cڡ *
__sh�t�ts
)
153
__THROW
;
155 #i�
def�ed
__�ed_g��t
&& def�ed
__USE_POSIX2
\
156 && !
def�ed
g__USE_POSIX_IMPLICITLY
&& !def�ed
g__USE_GNU
160 #ifde�
__REDIRECT
161
__REDIRECT
(
g��t
, (
___�gc
, *cڡ *
___�gv
,
162 cڡ *
__sh�t�ts
),
163
__posix_g��t
�
__THROW
;
165
__posix_g��t
(
___�gc
, *cڡ *
___�gv
,
166 cڡ *
__sh�t�ts
�
__THROW
;
167
#g��t
__posix_g��t
)
171
g��t
();
174 #i�de�
__�ed_g��t
175
g��t_l�g
(
___�gc
, *cڡ *
___�gv
,
176 cڡ *
__sh�t�ts
,
177 cڡ
�ti�
*
__l�g�ts
, *
__l�g�d
)
178
__THROW
;
179
g��t_l�g_�ly
(
___�gc
, *cڡ *
___�gv
,
180 cڡ *
__sh�t�ts
,
181 cڡ
�ti�
*
__l�g�ts
, *
__l�g�d
)
182
__THROW
;
186 #ifdef
__�lu�lus
191 #unde�
__�ed_g��t
@/usr/include/libio.h
29 #i�de�
_IO_STDIO_H
30
#_IO_STDIO_H
)
32
~<_G_c�fig.h
>
34
#_IO_pos_t
_G_�os_t
)
35
#_IO_�os_t
_G_�os_t
)
36
#_IO_�os64_t
_G_�os64_t
)
37
#_IO_size_t
_G_size_t
)
38
#_IO_ssize_t
_G_ssize_t
)
39
#_IO_off_t
_G_off_t
)
40
#_IO_off64_t
_G_off64_t
)
41
#_IO_pid_t
_G_pid_t
)
42
#_IO_uid_t
_G_uid_t
)
43
#_IO_ic�v_t
_G_ic�v_t
)
44
#_IO_HAVE_SYS_WAIT
_G_HAVE_SYS_WAIT
)
45
#_IO_HAVE_ST_BLKSIZE
_G_HAVE_ST_BLKSIZE
)
46
#_IO_BUFSIZ
_G_BUFSIZ
)
47
#_IO_va_li�
_G_va_li�
)
48
#_IO_w�t_t
_G_w�t_t
)
50 #ifde�
_G_NEED_STDARG_H
52
#__�ed___va_li�
)
53
~<�d�g.h
>
54 #ifde�
__GNUC_VA_LIST
55 #unde�
_IO_va_li�
56
#_IO_va_li�
__gnuc_va_li�
)
60 #i�de�
__P
61 #i�
_G_HAVE_SYS_CDEFS
62
~<sys/cdefs.h
>
64 #ifde�
__STDC__
65
#__P
(
p
�
)
p
66
#__PMT
(
p
�
)
p
68
#__P
(
p
�()
)
69
#__PMT
(
p
�()
)
75 #i�de�
_PARAMS
76
#_PARAMS
(
��os
�
`__P
�r�os)
)
79 #i�de�
__STDC__
81 cڡ
)
84
#_IO_UNIFIED_JUMPTABLES
1
)
85 #i�de�
_G_HAVE_PRINTF_FP
86
#_IO_USE_DTOA
1
)
89 #i�de�
EOF
90
#EOF
(-1)
)
92 #i�de�
NULL
93 #i�
def�ed
__GNUG__
&& \
94 (
g__GNUC__
> 2 || (__GNUC__ =�2 &&
__GNUC_MINOR__
>= 8))
95
#NULL
(
__nu�
)
)
97 #i�!
def�ed
(
__�lu�lus
)
98
#NULL
((*)0)
)
100
#NULL
(0)
)
105
#_IOS_INPUT
1
)
106
#_IOS_OUTPUT
2
)
107
#_IOS_ATEND
4
)
108
#_IOS_APPEND
8
)
109
#_IOS_TRUNC
16
)
110
#_IOS_NOCREATE
32
)
111
#_IOS_NOREPLACE
64
)
112
#_IOS_BIN
128
)
120
#_IO_MAGIC
0xFBAD0000
)
121
#_OLD_STDIO_MAGIC
0xFABC0000
)
122
#_IO_MAGIC_MASK
0xFFFF0000
)
123
#_IO_USER_BUF
1
)
124
#_IO_UNBUFFERED
2
)
125
#_IO_NO_READS
4
)
126
#_IO_NO_WRITES
8
)
127
#_IO_EOF_SEEN
0x10
)
128
#_IO_ERR_SEEN
0x20
)
129
#_IO_DELETE_DONT_CLOSE
0x40
)
130
#_IO_LINKED
0x80
)
131
#_IO_IN_BACKUP
0x100
)
132
#_IO_LINE_BUF
0x200
)
133
#_IO_TIED_PUT_GET
0x400
)
134
#_IO_CURRENTLY_PUTTING
0x800
)
135
#_IO_IS_APPENDING
0x1000
)
136
#_IO_IS_FILEBUF
0x2000
)
137
#_IO_BAD_SEEN
0x4000
)
138
#_IO_USER_LOCK
0x8000
)
140
#_IO_FLAGS2_MMAP
1
)
141
#_IO_FLAGS2_NOTCANCEL
2
)
142 #ifde�
_LIBC
143
#_IO_FLAGS2_FORTIFY
4
)
145
#_IO_FLAGS2_USER_WBUF
8
)
146 #ifde�
_LIBC
147
#_IO_FLAGS2_SCANF_STD
16
)
151
#_IO_SKIPWS
01
)
152
#_IO_LEFT
02
)
153
#_IO_RIGHT
04
)
154
#_IO_INTERNAL
010
)
155
#_IO_DEC
020
)
156
#_IO_OCT
040
)
157
#_IO_HEX
0100
)
158
#_IO_SHOWBASE
0200
)
159
#_IO_SHOWPOINT
0400
)
160
#_IO_UPPERCASE
01000
)
161
#_IO_SHOWPOS
02000
)
162
#_IO_SCIENTIFIC
04000
)
163
#_IO_FIXED
010000
)
164
#_IO_UNITBUF
020000
)
165
#_IO_STDIO
040000
)
166
#_IO_DONT_CLOSE
0100000
)
167
#_IO_BOOLALPHA
0200000
)
170
_IO_jump_t
;
g_IO_FILE
;
173 #ifde�
_IO_MTSAFE_IO
174 #i�
def�ed
__GLIBC__
&& __GLIBC__ >= 2
175
~<b�s/�dio-lock.h
>
180
t_IO_lock_t
;
186
s_IO_m�k�
{
187
_IO_m�k�
*
m_�xt
;
188
_IO_FILE
*
m_sbuf
;
192
m_pos
;
194
�t_��ampos
(
��ampos
�
�{
m_�os
= sp; }
195
�t_off�t
(
off�t
�{
m_pos
= off�t;
m_�os
= (
��ampos
)(-2); }
196
mpublic
:
197
��amm�k�
(
��ambuf
*
sb
);
198 ~
��amm�k�
();
199
�v�g
(�{
m_�os
== -2; }
200
d��
(
��amm�k�
&);
201
d��
();
206
e__codecvt_�su�
208
m__codecvt_ok
,
209
m__codecvt_���l
,
210
m__codecvt_�r�
,
211
m__codecvt_noc�v
214 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
217
s_IO_codecvt
219 (*
m__codecvt_de�r
�(
m_IO_codecvt
*);
220
__codecvt_�su�
(*
__codecvt_do_out
�(
m_IO_codecvt
*,
221
m__mb��e_t
*,
222 cڡ
mwch�_t
*,
223 cڡ
mwch�_t
*,
224 cڡ
mwch�_t
**, *,
226
__codecvt_�su�
(*
__codecvt_do_unshi�
�(
m_IO_codecvt
*,
227
m__mb��e_t
*, *,
229
__codecvt_�su�
(*
__codecvt_do_�
�(
m_IO_codecvt
*,
230
m__mb��e_t
*,
232 cڡ **,
mwch�_t
*,
233
mwch�_t
*, wchar_t **);
234 (*
m__codecvt_do_�cod�g
�(
m_IO_codecvt
*);
235 (*
m__codecvt_do_�ways_noc�v
�(
m_IO_codecvt
*);
236 (*
m__codecvt_do_�ngth
�(
m_IO_codecvt
*,
m__mb��e_t
*,
237 cڡ *, cڡ *,
m_IO_size_t
);
238 (*
m__codecvt_do_max_�ngth
�(
m_IO_codecvt
*);
240
_IO_ic�v_t
m__cd_�
;
241
_IO_ic�v_t
m__cd_out
;
245
s_IO_wide_d�a
247
wch�_t
*
m_IO_�ad_�r
;
248
wch�_t
*
m_IO_�ad_�d
;
249
wch�_t
*
m_IO_�ad_ba�
;
250
wch�_t
*
m_IO_wr�e_ba�
;
251
wch�_t
*
m_IO_wr�e_�r
;
252
wch�_t
*
m_IO_wr�e_�d
;
253
wch�_t
*
m_IO_buf_ba�
;
254
wch�_t
*
m_IO_buf_�d
;
256
wch�_t
*
m_IO_�ve_ba�
;
257
wch�_t
*
m_IO_backup_ba�
;
259
wch�_t
*
m_IO_�ve_�d
;
261
__mb��e_t
m_IO_��e
;
262
__mb��e_t
m_IO_ϡ_��e
;
263
_IO_codecvt
m_codecvt
;
265
wch�_t
m_sh�tbuf
[1];
267 cڡ
_IO_jump_t
*
m_wide_v�b�
;
271
s_IO_FILE
{
272
m_�ags
;
273
#_IO_f�e_�ags
_�ags
)
277 *
m_IO_�ad_�r
;
278 *
m_IO_�ad_�d
;
279 *
m_IO_�ad_ba�
;
280 *
m_IO_wr�e_ba�
;
281 *
m_IO_wr�e_�r
;
282 *
m_IO_wr�e_�d
;
283 *
m_IO_buf_ba�
;
284 *
m_IO_buf_�d
;
286 *
m_IO_�ve_ba�
;
287 *
m_IO_backup_ba�
;
288 *
m_IO_�ve_�d
;
290
_IO_m�k�
*
m_m�k�s
;
292
_IO_FILE
*
m_cha�
;
294
m_f��o
;
296
m_blksize
;
298
m_�ags2
;
300
_IO_off_t
m_�d_off�t
;
302
#__HAVE_COLUMN
)
304
m_cur_c�umn
;
305 sig�d
m_v�b�_off�t
;
306
m_sh�tbuf
[1];
310
_IO_lock_t
*
m_lock
;
311 #ifde�
_IO_USE_OLD_IO_FILE
314
s_IO_FILE_com��e
316
_IO_FILE
m_f�e
;
318 #i�
def�ed
_G_IO_IO_FILE_VERSION
&& _G_IO_IO_FILE_VERSION == 0x20001
319
_IO_off64_t
m_off�t
;
320 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
322
_IO_codecvt
*
m_codecvt
;
323
_IO_wide_d�a
*
m_wide_d�a
;
324
_IO_FILE
*
m_䓻s_li�
;
325 *
m_䓻s_buf
;
326
size_t
m_䓻s_size
;
328 *
m__�d1
;
329 *
m__�d2
;
330 *
m__�d3
;
331 *
m__�d4
;
332
size_t
m__�d5
;
334
m_mode
;
336
m_unu�d2
[15 * (�- 4 * (*�- (
size_t
)];
340 #i�de�
__�lu�lus
341
_IO_FILE
t_IO_FILE
;
344
g_IO_FILE_�us
;
346
_IO_FILE_�us
_IO_2_1_�d�_
;
347
_IO_FILE_�us
_IO_2_1_�dout_
;
348
_IO_FILE_�us
_IO_2_1_�d�r_
;
349 #i�de�
_LIBC
350
#_IO_�d�
((
_IO_FILE
*)(&
_IO_2_1_�d�_
))
)
351
#_IO_�dout
((
_IO_FILE
*)(&
_IO_2_1_�dout_
))
)
352
#_IO_�d�r
((
_IO_FILE
*)(&
_IO_2_1_�d�r_
))
)
354
_IO_FILE
*
_IO_�d�
��ibu�_hidd�
;
355
_IO_FILE
*
_IO_�dout
��ibu�_hidd�
;
356
_IO_FILE
*
_IO_�d�r
��ibu�_hidd�
;
364
__ssize_t
t__io_�ad_�
(*
t__cook�
, *
t__buf
,
tsize_t
t__nby�s
);
372
__ssize_t
t__io_wr�e_�
(*
t__cook�
,
t__cڡ
*
t__buf
,
373
tsize_t
t__n
);
381
t__io_�ek_�
(*
t__cook�
,
t_IO_off64_t
*
t__pos
,
t__w
);
384
t__io_�o�_�
(*
t__cook�
);
387 #ifde�
_GNU_SOURCE
389
__io_�ad_�
tcook�_�ad_fun�i�_t
;
390
__io_wr�e_�
tcook�_wr�e_fun�i�_t
;
391
__io_�ek_�
tcook�_�ek_fun�i�_t
;
392
__io_�o�_�
tcook�_�o�_fun�i�_t
;
397
__io_�ad_�
*
m�ad
;
398
__io_wr�e_�
*
mwr�e
;
399
__io_�ek_�
*
m�ek
;
400
__io_�o�_�
*
m�o�
;
401 }
t_IO_cook�_io_fun�i�s_t
;
402
_IO_cook�_io_fun�i�s_t
tcook�_io_fun�i�s_t
;
404
g_IO_cook�_f�e
;
407
_IO_cook�_��
(
_IO_cook�_f�e
*
__cf�e
,
__�ad_wr�e
,
408 *
__cook�
,
_IO_cook�_io_fun�i�s_t
__�s
);
412 #ifde�
__�lu�lus
416
__und��ow
(
_IO_FILE
*);
417
__u�ow
(
_IO_FILE
*);
418
__ov��ow
(
_IO_FILE
*, );
419 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
420
_IO_w�t_t
__wund��ow
(
_IO_FILE
*);
421
_IO_w�t_t
__wu�ow
(
_IO_FILE
*);
422
_IO_w�t_t
__wov��ow
(
_IO_FILE
*, _IO_wint_t);
425 #i�
__GNUC__
>= 3
426
#_IO_BE
(
ex�
,
�s
�
`__bu�t�_ex��
(�x�),�es)
)
428
#_IO_BE
(
ex�
,
�s
��x�)
)
431
#_IO_g�c_u�ocked
(
_�
) \
432 (
`_IO_BE
((
_�
)->
_IO_�ad_�r
>�(_�)->
_IO_�ad_�d
, 0) \
433 ?
`__u�ow
(
_�
�: *(*�(_�)->
_IO_�ad_�r
++)
)
434
#_IO_�ekc_u�ocked
(
_�
) \
435 (
`_IO_BE
((
_�
)->
_IO_�ad_�r
>�(_�)->
_IO_�ad_�d
, 0) \
436 &&
`__und��ow
(
_�
�=�
EOF
? EOF \
437 : *(*�(
_�
)->
_IO_�ad_�r
)
)
438
#_IO_putc_u�ocked
(
_ch
,
_�
) \
439 (
`_IO_BE
((
_�
)->
_IO_wr�e_�r
>�(_�)->
_IO_wr�e_�d
, 0) \
440 ?
`__ov��ow
(
_�
, (�(
_ch
)) \
441 : (�(*(
_�
)->
_IO_wr�e_�r
++ = (
_ch
)))
)
443 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
444
#_IO_g�wc_u�ocked
(
_�
) \
445 (
`_IO_BE
((
_�
)->
_wide_d�a
=�
NULL
\
446 || ((
_�
)->
_wide_d�a
->
_IO_�ad_�r
\
447 >�(
_�
)->
_wide_d�a
->
_IO_�ad_�d
), 0) \
448 ?
`__wu�ow
(
_�
�: (
_IO_w�t_t
�*(_�)->
_wide_d�a
->
_IO_�ad_�r
++)
)
449
#_IO_putwc_u�ocked
(
_wch
,
_�
) \
450 (
`_IO_BE
((
_�
)->
_wide_d�a
=�
NULL
\
451 || ((
_�
)->
_wide_d�a
->
_IO_wr�e_�r
\
452 >�(
_�
)->
_wide_d�a
->
_IO_wr�e_�d
), 0) \
453 ?
`__wov��ow
(
_�
,
_wch
) \
454 : (
_IO_w�t_t
�(*(
_�
)->
_wide_d�a
->
_IO_wr�e_�r
++ = (
_wch
)))
)
457
#_IO_�of_u�ocked
(
__�
�(((__�)->
_�ags
&
_IO_EOF_SEEN
�!�0)
)
458
#_IO_��_u�ocked
(
__�
�(((__�)->
_�ags
&
_IO_ERR_SEEN
�!�0)
)
460
_IO_g�c
(
_IO_FILE
*
__�
);
461
_IO_putc
(
__c
,
_IO_FILE
*
__�
);
462
_IO_�of
(
_IO_FILE
*
__�
�
__THROW
;
463
_IO_��
(
_IO_FILE
*
__�
�
__THROW
;
465
_IO_�ekc_locked
(
_IO_FILE
*
__�
);
468
#_IO_PENDING_OUTPUT_COUNT
(
_�
) \
469 ((
_�
)->
_IO_wr�e_�r
- (_�)->
_IO_wr�e_ba�
)
)
471
_IO_�ockf�e
(
_IO_FILE
*�
__THROW
;
472
_IO_fu�ockf�e
(
_IO_FILE
*�
__THROW
;
473
_IO_�rylockf�e
(
_IO_FILE
*�
__THROW
;
475 #ifde�
_IO_MTSAFE_IO
476
#_IO_�ekc
(
_�
�
`_IO_�ekc_locked
(_�)
)
477
#_IO_�ockf�e
(
_�
) \
478 i�(((
_�
)->
_�ags
&
_IO_USER_LOCK
�=�0�
`_IO_�ockf�e
(_�)
)
479
#_IO_fu�ockf�e
(
_�
) \
480 i�(((
_�
)->
_�ags
&
_IO_USER_LOCK
�=�0�
`_IO_fu�ockf�e
(_�)
)
482
#_IO_�ekc
(
_�
�
`_IO_�ekc_u�ocked
(_�)
)
483
#_IO_�ockf�e
(
_�
�
)
484
#_IO_fu�ockf�e
(
_�
�
)
485
#_IO_�rylockf�e
(
_�
�
)
486
#_IO_��nup_�gi�_��t
(
_f�
,
_�
�
)
487
#_IO_��nup_�gi�_�d
(
_Do�
�
)
490
_IO_vfs�nf
(
_IO_FILE
*
__��ri�
, const * __restrict,
491
_IO_va_li�
, *
__��ri�
);
492
_IO_v�r�tf
(
_IO_FILE
*
__��ri�
, const *__restrict,
493
_IO_va_li�
);
494
_IO_ssize_t
_IO_�dn
(
_IO_FILE
*, , _IO_ssize_t);
495
_IO_size_t
_IO_sg�n
(
_IO_FILE
*, *, _IO_size_t);
497
_IO_off64_t
_IO_�ekoff
(
_IO_FILE
*, _IO_off64_t, , );
498
_IO_off64_t
_IO_�ekpos
(
_IO_FILE
*, _IO_off64_t, );
500
_IO_�_backup_��
(
_IO_FILE
*�
__THROW
;
502 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
503
_IO_w�t_t
_IO_g�wc
(
_IO_FILE
*
__�
);
504
_IO_w�t_t
_IO_putwc
(
wch�_t
__wc
,
_IO_FILE
*
__�
);
505
_IO_fwide
(
_IO_FILE
*
__�
,
__mode
�
__THROW
;
506 #i�
__GNUC__
>= 2
509 #i�
def�ed
_LIBC
&& def�ed
SHARED
510
~<shlib-com�t.h
>
511 #i�
SHLIB_COMPAT
(
libc
,
GLIBC_2_0
,
GLIBC_2_1
)
512
#_IO_fwide_maybe_�com�tib�
\
513 (
`__bu�t�_ex��
(&
_IO_�d�_u�d
=�
NULL
, 0))
)
514
cڡ
_IO_�d�_u�d
;
515
w�k_ex��
(
_IO_�d�_u�d
);
518 #i�de�
_IO_fwide_maybe_�com�tib�
519
#_IO_fwide_maybe_�com�tib�
(0)
)
523
#_IO_fwide
(
__�
,
__mode
) \
524 ({
__�su�
= (
__mode
); \
525 i�(
__�su�
< 0 && !
_IO_fwide_maybe_�com�tib�
) \
527 i�((
__�
)->
_mode
== 0) \
529 (
__�
)->
_mode
= -1; \
530
__�su�
= (
__�
)->
_mode
; \
532 i�(
`__bu�t�_cڡ�t_p
(
__mode
) && (__mode) == 0) \
533
__�su�
=
_IO_fwide_maybe_�com�tib�
? -1 : (
__�
)->
_mode
; \
535
__�su�
=
`_IO_fwide
(
__�
, __result); \
536
__�su�
; })
)
539
_IO_vfws�nf
(
_IO_FILE
*
__��ri�
, cڡ
wch�_t
* __restrict,
540
_IO_va_li�
, *
__��ri�
);
541
_IO_vfw��tf
(
_IO_FILE
*
__��ri�
, cڡ
wch�_t
*__restrict,
542
_IO_va_li�
);
543
_IO_ssize_t
_IO_w�dn
(
_IO_FILE
*,
w�t_t
, _IO_ssize_t);
544
_IO_�_wbackup_��
(
_IO_FILE
*�
__THROW
;
547 #ifde�
__LDBL_COMPAT
548
~<b�s/libio-ldbl.h
>
551 #ifde�
__�lu�lus
@/usr/include/xlocale.h
21 #i�de�
_XLOCALE_H
22
#_XLOCALE_H
1
)
28
s__lo��_�ru�
31
lo��_d�a
*
m__lo��s
[13];
34 cڡ *
m__�y�_b
;
35 cڡ *
m__�y�_t�ow�
;
36 cڡ *
m__�y�_tou��
;
39 cڡ *
m__�mes
[13];
40 } *
t__lo��_t
;
43
__lo��_t
tlo��_t
;
@/usr/include/_G_config.h
4 #i�de�
_G_c�fig_h
5
#_G_c�fig_h
1
)
9
~<b�s/ty�s.h
>
10
#__�ed_size_t
)
11 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
12
#__�ed_wch�_t
)
14
#__�ed_NULL
)
15
~<�ddef.h
>
16
#__�ed_mb��e_t
)
17 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
18
#__�ed_w�t_t
)
20
~<wch�.h
>
21
#_G_size_t
size_t
)
24
__off_t
m__pos
;
25
__mb��e_t
m__��e
;
26 }
t_G_�os_t
;
29
__off64_t
m__pos
;
30
__mb��e_t
m__��e
;
31 }
t_G_�os64_t
;
32
#_G_ssize_t
__ssize_t
)
33
#_G_off_t
__off_t
)
34
#_G_off64_t
__off64_t
)
35
#_G_pid_t
__pid_t
)
36
#_G_uid_t
__uid_t
)
37
#_G_wch�_t
wch�_t
)
38
#_G_w�t_t
w�t_t
)
39
#_G_��64
��64
)
40 #i�
def�ed
_LIBC
|| def�ed
_GLIBCPP_USE_WCHAR_T
41
~<gc�v.h
>
44
__gc�v_�fo
m__cd
;
47
__gc�v_�fo
m__cd
;
48
__gc�v_��_d�a
m__d�a
;
49 }
m__comb�ed
;
50 }
t_G_ic�v_t
;
53
t_G_�t16_t
t__��ibu�__
((
t__mode__
(
t__HI__
)));
54
t_G_�t32_t
t__��ibu�__
((
t__mode__
(
t__SI__
)));
55
t_G_u�t16_t
t__��ibu�__
((
t__mode__
(
t__HI__
)));
56
t_G_u�t32_t
t__��ibu�__
((
t__mode__
(
t__SI__
)));
58
#_G_HAVE_BOOL
1
)
62
#_G_HAVE_ATEXIT
1
)
63
#_G_HAVE_SYS_CDEFS
1
)
64
#_G_HAVE_SYS_WAIT
1
)
65
#_G_NEED_STDARG_H
1
)
66
#_G_va_li�
__gnuc_va_li�
)
68
#_G_HAVE_PRINTF_FP
1
)
69
#_G_HAVE_MMAP
1
)
70
#_G_HAVE_MREMAP
1
)
71
#_G_HAVE_LONG_DOUBLE_IO
1
)
72
#_G_HAVE_IO_FILE_OPEN
1
)
73
#_G_HAVE_IO_GETLINE_INFO
1
)
75
#_G_IO_IO_FILE_VERSION
0x20001
)
77
#_G_OPEN64
__ݒ64
)
78
#_G_LSEEK64
__l�ek64
)
79
#_G_MMAP64
__mm�64
)
80
#_G_FSTAT64
(
fd
,
buf
�
`__fx��64
(
_STAT_VER
, fd, buf)
)
83
#_G_HAVE_ST_BLKSIZE
`def�ed
(
_STATBUF_ST_BLKSIZE
)
)
85
#_G_BUFSIZ
8192
)
88
#_G_NAMES_HAVE_UNDERSCORE
0
)
89
#_G_VTABLE_LABEL_HAS_LENGTH
1
)
90
#_G_USING_THUNKS
1
)
91
#_G_VTABLE_LABEL_PREFIX
"__vt_"
)
92
#_G_VTABLE_LABEL_PREFIX_ID
__vt_
)
95 #i�
def�ed
__�lu�lus
|| def�ed
__STDC__
96
#_G_ARGS
(
ARGLIST
�
)
ARGLIST
98
#_G_ARGS
(
ARGLIST
�()
)
@/usr/include/bits/libio-ldbl.h
20 #i�de�
_IO_STDIO_H
24
$__LDBL_REDIR_DECL
(
_IO_vfs�nf
)
25
`__LDBL_REDIR_DECL
(
_IO_v�r�tf
)
@/usr/include/bits/predefs.h
19 #i�de�
_FEATURES_H
23 #i�de�
_PREDEFS_H
24
#_PREDEFS_H
)
27
#__STDC_IEC_559__
1
)
28
#__STDC_IEC_559_COMPLEX__
1
)
@/usr/include/bits/stdio-lock.h
20 #i�de�
_BITS_STDIO_LOCK_H
21
#_BITS_STDIO_LOCK_H
1
)
23
~<b�s/libc-lock.h
>
24
~<low�v�lock.h
>
28
#_IO_lock_�ex�nsive
1
)
30 �ru� {
mlock
;
m�t
; *
mow�r
; }
t_IO_lock_t
;
32
#_IO_lock_���liz�
{
LLL_LOCK_INITIALIZER
, 0,
NULL
}
)
34
#_IO_lock_��
(
_�me
) \
35 ((
_�me
��(
_IO_lock_t
�
_IO_lock_���liz�
, 0)
)
37
#_IO_lock_f�i
(
_�me
) \
38 ((�0)
)
40
#_IO_lock_lock
(
_�me
) \
42 *
__�lf
=
THREAD_SELF
; \
43 i�((
_�me
).
ow�r
!�
__�lf
) \
45
`�l_lock
((
_�me
).
lock
,
LLL_PRIVATE
); \
46 (
_�me
).
ow�r
=
__�lf
; \
48 ++(
_�me
).
�t
; \
49 } 0)
)
51
#_IO_lock_�ylock
(
_�me
) \
53
__�su�
= 0; \
54 *
__�lf
=
THREAD_SELF
; \
55 i�((
_�me
).
ow�r
!�
__�lf
) \
57 i�(
`�l_�ylock
((
_�me
).
lock
) == 0) \
59 (
_�me
).
ow�r
=
__�lf
; \
60 (
_�me
).
�t
= 1; \
63
__�su�
=
EBUSY
; \
66 ++(
_�me
).
�t
; \
67
__�su�
; \
68 })
)
70
#_IO_lock_u�ock
(
_�me
) \
72 i�(--(
_�me
).
�t
== 0) \
74 (
_�me
).
ow�r
=
NULL
; \
75
`�l_u�ock
((
_�me
).
lock
,
LLL_PRIVATE
); \
77 } 0)
)
81
#_IO_��nup_�gi�_��t
(
_f�
,
_�
) \
82
`__libc_��nup_�gi�_��t
(((
_�
)->
_�ags
&
_IO_USER_LOCK
�=�0,
_f�
, _�)
)
83
#_IO_��nup_�gi�_��t_n�rg
(
_f�
) \
84
`__libc_��nup_�gi�_��t
(1,
_f�
,
NULL
)
)
85
#_IO_��nup_�gi�_�d
(
_do�
) \
86
`__libc_��nup_�gi�_�d
(
_do�
)
)
88 #i�
def�ed
_LIBC
&& !def�ed
NOT_IN_libc
90 #ifde�
__EXCEPTIONS
91
#_IO_acqu�e_lock
(
_�
) \
93
_IO_FILE
*
_IO_acqu�e_lock_f�e
\
94
`__��ibu�__
((
`��nup
(
_IO_acqu�e_lock_f�
))) \
95 �(
_�
); \
96
`_IO_�ockf�e
(
_IO_acqu�e_lock_f�e
);
)
97
#_IO_acqu�e_lock_��r_�ags2
(
_�
) \
99
_IO_FILE
*
_IO_acqu�e_lock_f�e
\
100
`__��ibu�__
((
`��nup
(
_IO_acqu�e_lock_��r_�ags2_f�
))) \
101 �(
_�
); \
102
`_IO_�ockf�e
(
_IO_acqu�e_lock_f�e
);
)
104
#_IO_acqu�e_lock
(
_�
�
_IO_acqu�e_lock_�eds_ex��i�s_�ab�d
)
105
#_IO_acqu�e_lock_��r_�ags2
(
_�
�
`_IO_acqu�e_lock
(_�)
)
107
#_IO_��a�_lock
(
_�
�; } 0)
)
@/usr/include/bits/typesizes.h
20 #i�de�
_BITS_TYPES_H
24 #i�def
_BITS_TYPESIZES_H
25
#_BITS_TYPESIZES_H
1
)
30
#__DEV_T_TYPE
__UQUAD_TYPE
)
31
#__UID_T_TYPE
__U32_TYPE
)
32
#__GID_T_TYPE
__U32_TYPE
)
33
#__INO_T_TYPE
__ULONGWORD_TYPE
)
34
#__INO64_T_TYPE
__UQUAD_TYPE
)
35
#__MODE_T_TYPE
__U32_TYPE
)
36
#__NLINK_T_TYPE
__UWORD_TYPE
)
37
#__OFF_T_TYPE
__SLONGWORD_TYPE
)
38
#__OFF64_T_TYPE
__SQUAD_TYPE
)
39
#__PID_T_TYPE
__S32_TYPE
)
40
#__RLIM_T_TYPE
__ULONGWORD_TYPE
)
41
#__RLIM64_T_TYPE
__UQUAD_TYPE
)
42
#__BLKCNT_T_TYPE
__SLONGWORD_TYPE
)
43
#__BLKCNT64_T_TYPE
__SQUAD_TYPE
)
44
#__FSBLKCNT_T_TYPE
__ULONGWORD_TYPE
)
45
#__FSBLKCNT64_T_TYPE
__UQUAD_TYPE
)
46
#__FSFILCNT_T_TYPE
__ULONGWORD_TYPE
)
47
#__FSFILCNT64_T_TYPE
__UQUAD_TYPE
)
48
#__ID_T_TYPE
__U32_TYPE
)
49
#__CLOCK_T_TYPE
__SLONGWORD_TYPE
)
50
#__TIME_T_TYPE
__SLONGWORD_TYPE
)
51
#__USECONDS_T_TYPE
__U32_TYPE
)
52
#__SUSECONDS_T_TYPE
__SLONGWORD_TYPE
)
53
#__DADDR_T_TYPE
__S32_TYPE
)
54
#__SWBLK_T_TYPE
__SLONGWORD_TYPE
)
55
#__KEY_T_TYPE
__S32_TYPE
)
56
#__CLOCKID_T_TYPE
__S32_TYPE
)
57
#__TIMER_T_TYPE
*
)
58
#__BLKSIZE_T_TYPE
__SLONGWORD_TYPE
)
59
#__FSID_T_TYPE
s�u� {
__v�
[2]; }
)
60
#__SSIZE_T_TYPE
__SWORD_TYPE
)
63
#__FD_SETSIZE
1024
)
@/usr/include/bits/wordsize.h
3 #i�
def�ed
__x86_64__
4
#__WORDSIZE
64
)
5
#__WORDSIZE_COMPAT32
1
)
7
#__WORDSIZE
32
)
@/usr/include/ctype.h
24 #i�def
_CTYPE_H
25
#_CTYPE_H
1
)
27
~<�u�s.h
>
28
~<b�s/ty�s.h
>
30
g__BEGIN_DECLS
32 #i�de�
_ISb�
41
~<�d�n.h
>
42 #i�
__BYTE_ORDER
=�
__BIG_ENDIAN
43
#_ISb�
(
b�
�(1 << (b�))
)
45
#_ISb�
(
b�
�((b��< 8 ? ((1 << (b�)�<< 8�: ((1 << (b�)�>> 8))
)
50
m_ISu��
=
_ISb�
(0),
51
m_ISlow�
=
_ISb�
(1),
52
m_IS�pha
=
_ISb�
(2),
53
m_ISdig�
=
_ISb�
(3),
54
m_ISxdig�
=
_ISb�
(4),
55
m_IS�a�
=
_ISb�
(5),
56
m_IS��t
=
_ISb�
(6),
57
m_ISg�ph
=
_ISb�
(7),
58
m_ISb�nk
=
_ISb�
(8),
59
m_IS��l
=
_ISb�
(9),
60
m_ISpun�
=
_ISb�
(10),
61
m_IS�num
=
_ISb�
(11)
81
__cڡ
**
$__�y�_b_loc
()
82
__THROW
`__��ibu�__
((
__cڡ
));
83
__cڡ
__�t32_t
**
$__�y�_t�ow�_loc
()
84
__THROW
`__��ibu�__
((
__cڡ
));
85
__cڡ
__�t32_t
**
$__�y�_tou��_loc
()
86
__THROW
`__��ibu�__
((
__cڡ
));
88
#__is�y�
(
c
,
ty�
) \
89 ((*
`__�y�_b_loc
())[(�(
c
)] & (�
ty�
)
)
91
#__i�scii
(
c
�(((c�& ~0x7f�=�0�
)
92
#__t�scii
(
c
�((c�& 0x7f�
)
94
#__ex�y�
(
�me
�
`�me
(�
__THROW
)
96
__BEGIN_NAMESPACE_STD
102
`__ex�y�
(
i��um
);
103
`__ex�y�
(
i��ha
);
104
`__ex�y�
(
is��l
);
105
`__ex�y�
(
isdig�
);
106
`__ex�y�
(
i�ow�
);
107
`__ex�y�
(
isg�ph
);
108
`__ex�y�
(
i�r�t
);
109
`__ex�y�
(
i�un�
);
110
`__ex�y�
(
is�a�
);
111
`__ex�y�
(
isu��
);
112
`__ex�y�
(
isxdig�
);
116
$t�ow�
(
__c
�
__THROW
;
119
$tou��
(
__c
�
__THROW
;
121
__END_NAMESPACE_STD
125 #ifdef
__USE_ISOC99
126
__BEGIN_NAMESPACE_C99
128
`__ex�y�
(
isb�nk
);
130
__END_NAMESPACE_C99
133 #ifde�
__USE_GNU
135
$is�y�
(
__c
,
__mask
�
__THROW
;
138 #i�
def�ed
__USE_SVID
|| def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
142
$i�scii
(
__c
�
__THROW
;
146
$t�scii
(
__c
�
__THROW
;
150
`__ex�y�
(
_tou��
);
151
`__ex�y�
(
_t�ow�
);
155
#__tobody
(
c
,
f
,
a
,
�gs
) \
156 (
__ex�nsi�__
\
157 ({
__�s
; \
158 i�( (
c
) > 1) \
160 i�(
`__bu�t�_cڡ�t_p
(
c
)) \
162
__c
= (
c
); \
163
__�s
=
__c
< -128 || __�> 255 ? __�: (
a
)[__c]; \
166
__�s
=
f
�gs
; \
169
__�s
= (
a
)[(�(
c
)]; \
170
__�s
;
}
}))
)
172 #i�!
def�ed
__NO_CTYPE
&& !def�ed
__�lu�lus
173
#i��um
(
c
�
`__is�y�
((c),
_IS�num
)
)
174
#i��ha
(
c
�
`__is�y�
((c),
_IS�pha
)
)
175
#is��l
(
c
�
`__is�y�
((c),
_IS��l
)
)
176
#isdig�
(
c
�
`__is�y�
((c),
_ISdig�
)
)
177
#i�ow�
(
c
�
`__is�y�
((c),
_ISlow�
)
)
178
#isg�ph
(
c
�
`__is�y�
((c),
_ISg�ph
)
)
179
#i�r�t
(
c
�
`__is�y�
((c),
_IS��t
)
)
180
#i�un�
(
c
�
`__is�y�
((c),
_ISpun�
)
)
181
#is�a�
(
c
�
`__is�y�
((c),
_IS�a�
)
)
182
#isu��
(
c
�
`__is�y�
((c),
_ISu��
)
)
183
#isxdig�
(
c
�
`__is�y�
((c),
_ISxdig�
)
)
185 #ifde�
__USE_ISOC99
186
#isb�nk
(
c
�
`__is�y�
((c),
_ISb�nk
)
)
189 #ifde�
__USE_EXTERN_INLINES
190
__ex��_�l�e
191
__NTH
(
$t�ow�
(
__c
))
193
__c
>�-128 && __�< 256 ? (*
`__�y�_t�ow�_loc
())[__c] : __c;
194
}
}
196
__ex��_�l�e
197
__NTH
(
$tou��
(
__c
))
199
__c
>�-128 && __�< 256 ? (*
`__�y�_tou��_loc
())[__c] : __c;
200
}
}
203 #i�
__GNUC__
>�2 &&
def�ed
__OPTIMIZE__
&& !def�ed
__�lu�lus
204
#t�ow�
(
c
�
`__tobody
(c,
t�ow�
, *
`__�y�_t�ow�_loc
(), (c))
)
205
#tou��
(
c
�
`__tobody
(c,
tou��
, *
`__�y�_tou��_loc
(), (c))
)
208 #i�
def�ed
__USE_SVID
|| def�ed
__USE_MISC
|| def�ed
__USE_XOPEN
209
#i�scii
(
c
�
`__i�scii
(c)
)
210
#t�scii
(
c
�
`__t�scii
(c)
)
212
#_t�ow�
(
c
�((�(*
`__�y�_t�ow�_loc
())[(�(c)])
)
213
#_tou��
(
c
�((�(*
`__�y�_tou��_loc
())[(�(c)])
)
219 #ifde�
__USE_XOPEN2K8
233
~<xlo��.h
>
237
#__is�y�_l
(
c
,
ty�
,
lo��
) \
238 ((
lo��
)->
__�y�_b
[(�(
c
)] & (�
ty�
)
)
240
#__ex�y�_l
(
�me
) \
241
`�me
(,
__lo��_t
�
__THROW
)
247
__ex�y�_l
(
i��um_l
);
248
__ex�y�_l
(
i��ha_l
);
249
__ex�y�_l
(
is��l_l
);
250
__ex�y�_l
(
isdig�_l
);
251
__ex�y�_l
(
i�ow�_l
);
252
__ex�y�_l
(
isg�ph_l
);
253
__ex�y�_l
(
i�r�t_l
);
254
__ex�y�_l
(
i�un�_l
);
255
__ex�y�_l
(
is�a�_l
);
256
__ex�y�_l
(
isu��_l
);
257
__ex�y�_l
(
isxdig�_l
);
259
__ex�y�_l
(
isb�nk_l
);
263
$__t�ow�_l
(
__c
,
__lo��_t
__l
�
__THROW
;
264
$t�ow�_l
(
__c
,
__lo��_t
__l
�
__THROW
;
267
$__tou��_l
(
__c
,
__lo��_t
__l
�
__THROW
;
268
$tou��_l
(
__c
,
__lo��_t
__l
�
__THROW
;
270 #i�
__GNUC__
>�2 &&
def�ed
__OPTIMIZE__
&& !def�ed
__�lu�lus
271
#__t�ow�_l
(
c
,
lo��
) \
272
`__tobody
(
c
,
__t�ow�_l
, (
lo��
)->
__�y�_t�ow�
, (c,�o��))
)
273
#__tou��_l
(
c
,
lo��
) \
274
`__tobody
(
c
,
__tou��_l
, (
lo��
)->
__�y�_tou��
, (c,�o��))
)
275
#t�ow�_l
(
c
,
lo��
�
`__t�ow�_l
((c), (lo��))
)
276
#tou��_l
(
c
,
lo��
�
`__tou��_l
((c), (lo��))
)
280 #i�de�
__NO_CTYPE
281
#__i��um_l
(
c
,
l
�
`__is�y�_l
((c),
_IS�num
, (l))
)
282
#__i��ha_l
(
c
,
l
�
`__is�y�_l
((c),
_IS�pha
, (l))
)
283
#__is��l_l
(
c
,
l
�
`__is�y�_l
((c),
_IS��l
, (l))
)
284
#__isdig�_l
(
c
,
l
�
`__is�y�_l
((c),
_ISdig�
, (l))
)
285
#__i�ow�_l
(
c
,
l
�
`__is�y�_l
((c),
_ISlow�
, (l))
)
286
#__isg�ph_l
(
c
,
l
�
`__is�y�_l
((c),
_ISg�ph
, (l))
)
287
#__i�r�t_l
(
c
,
l
�
`__is�y�_l
((c),
_IS��t
, (l))
)
288
#__i�un�_l
(
c
,
l
�
`__is�y�_l
((c),
_ISpun�
, (l))
)
289
#__is�a�_l
(
c
,
l
�
`__is�y�_l
((c),
_IS�a�
, (l))
)
290
#__isu��_l
(
c
,
l
�
`__is�y�_l
((c),
_ISu��
, (l))
)
291
#__isxdig�_l
(
c
,
l
�
`__is�y�_l
((c),
_ISxdig�
, (l))
)
293
#__isb�nk_l
(
c
,
l
�
`__is�y�_l
((c),
_ISb�nk
, (l))
)
295 #i�
def�ed
__USE_SVID
|| def�ed
__USE_MISC
296
#__i�scii_l
(
c
,
l
�(�),
`__i�scii
(c))
)
297
#__t�scii_l
(
c
,
l
�(�),
`__t�scii
(c))
)
300
#i��um_l
(
c
,
l
�
`__i��um_l
((c), (l))
)
301
#i��ha_l
(
c
,
l
�
`__i��ha_l
((c), (l))
)
302
#is��l_l
(
c
,
l
�
`__is��l_l
((c), (l))
)
303
#isdig�_l
(
c
,
l
�
`__isdig�_l
((c), (l))
)
304
#i�ow�_l
(
c
,
l
�
`__i�ow�_l
((c), (l))
)
305
#isg�ph_l
(
c
,
l
�
`__isg�ph_l
((c), (l))
)
306
#i�r�t_l
(
c
,
l
�
`__i�r�t_l
((c), (l))
)
307
#i�un�_l
(
c
,
l
�
`__i�un�_l
((c), (l))
)
308
#is�a�_l
(
c
,
l
�
`__is�a�_l
((c), (l))
)
309
#isu��_l
(
c
,
l
�
`__isu��_l
((c), (l))
)
310
#isxdig�_l
(
c
,
l
�
`__isxdig�_l
((c), (l))
)
312
#isb�nk_l
(
c
,
l
�
`__isb�nk_l
((c), (l))
)
314 #i�
def�ed
__USE_SVID
|| def�ed
__USE_MISC
315
#i�scii_l
(
c
,
l
�
`__i�scii_l
((c), (l))
)
316
#t�scii_l
(
c
,
l
�
`__t�scii_l
((c), (l))
)
323
__END_DECLS
@/usr/include/endian.h
19 #i�def
_ENDIAN_H
20
#_ENDIAN_H
1
)
22
~<�u�s.h
>
32
#__LITTLE_ENDIAN
1234
)
33
#__BIG_ENDIAN
4321
)
34
#__PDP_ENDIAN
3412
)
37
~<b�s/�d�n.h
>
41 #i�de�
__FLOAT_WORD_ORDER
42
#__FLOAT_WORD_ORDER
__BYTE_ORDER
)
45 #ifdef
__USE_BSD
46
#LITTLE_ENDIAN
__LITTLE_ENDIAN
)
47
#BIG_ENDIAN
__BIG_ENDIAN
)
48
#PDP_ENDIAN
__PDP_ENDIAN
)
49
#BYTE_ORDER
__BYTE_ORDER
)
52 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
53
#__LONG_LONG_PAIR
(
HI
,
LO
�LO,
)
HI
54 #�i�
__BYTE_ORDER
=�
__BIG_ENDIAN
55
#__LONG_LONG_PAIR
(
HI
,
LO
�HI,
)
LO
59 #ifde�
__USE_BSD
61
~<b�s/by�sw�.h
>
63 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
64
#htobe16
(
x
�
`__bsw�_16
(x)
)
65
#ht�e16
(
x
�(x)
)
66
#be16toh
(
x
�
`__bsw�_16
(x)
)
67
#�16toh
(
x
�(x)
)
69
#htobe32
(
x
�
`__bsw�_32
(x)
)
70
#ht�e32
(
x
�(x)
)
71
#be32toh
(
x
�
`__bsw�_32
(x)
)
72
#�32toh
(
x
�(x)
)
74
#htobe64
(
x
�
`__bsw�_64
(x)
)
75
#ht�e64
(
x
�(x)
)
76
#be64toh
(
x
�
`__bsw�_64
(x)
)
77
#�64toh
(
x
�(x)
)
79
#htobe16
(
x
�(x)
)
80
#ht�e16
(
x
�
`__bsw�_16
(x)
)
81
#be16toh
(
x
�(x)
)
82
#�16toh
(
x
�
`__bsw�_16
(x)
)
84
#htobe32
(
x
�(x)
)
85
#ht�e32
(
x
�
`__bsw�_32
(x)
)
86
#be32toh
(
x
�(x)
)
87
#�32toh
(
x
�
`__bsw�_32
(x)
)
89
#htobe64
(
x
�(x)
)
90
#ht�e64
(
x
�
`__bsw�_64
(x)
)
91
#be64toh
(
x
�(x)
)
92
#�64toh
(
x
�
`__bsw�_64
(x)
)
@/usr/include/gnu/stubs.h
4
~<b�s/w�dsize.h
>
6 #i�
__WORDSIZE
== 32
7
~<gnu/�ubs-32.h
>
8 #�i�
__WORDSIZE
== 64
9
~<gnu/�ubs-64.h
>
@/usr/include/stdlib.h
23 #i�def
_STDLIB_H
25
~<�u�s.h
>
28
#__�ed_size_t
)
29 #i�de�
__�ed_m�loc_�d_��oc
30
#__�ed_wch�_t
)
31
#__�ed_NULL
)
33
~<�ddef.h
>
35
g__BEGIN_DECLS
37 #i�de�
__�ed_m�loc_�d_��oc
38
#_STDLIB_H
1
)
40 #i�
def�ed
__USE_XOPEN
&& !def�ed
_SYS_WAIT_H
42
~<b�s/wa��ags.h
>
43
~<b�s/wa���us.h
>
45 #ifde�
__USE_BSD
50 #i�
def�ed
__GNUC__
&& !def�ed
__�lu�lus
51
#__WAIT_INT
(
��us
) \
52 (
`__ex�nsi�__
(((uni� {
`__ty�of
(
��us
�
__�
;
__i
; }) \
53 { .
__�
= (
��us
�}).
__i
))
)
55
#__WAIT_INT
(
��us
�(*(*�&(��us))
)
63 #i�!
def�ed
__GNUC__
|| __GNUC__ < 2 || def�ed
__�lu�lus
64
#__WAIT_STATUS
*
)
65
#__WAIT_STATUS_DEFN
*
)
70
wa�
*
m__u�r
;
71 *
m__��
;
72 }
t__WAIT_STATUS
t__��ibu�__
((
t__�����t_uni�__
));
73
#__WAIT_STATUS_DEFN
*
)
78
#__WAIT_INT
(
��us
�(��us)
)
79
#__WAIT_STATUS
*
)
80
#__WAIT_STATUS_DEFN
*
)
85
#WEXITSTATUS
(
��us
�
`__WEXITSTATUS
(
`__WAIT_INT
(��us))
)
86
#WTERMSIG
(
��us
�
`__WTERMSIG
(
`__WAIT_INT
(��us))
)
87
#WSTOPSIG
(
��us
�
`__WSTOPSIG
(
`__WAIT_INT
(��us))
)
88
#WIFEXITED
(
��us
�
`__WIFEXITED
(
`__WAIT_INT
(��us))
)
89
#WIFSIGNALED
(
��us
�
`__WIFSIGNALED
(
`__WAIT_INT
(��us))
)
90
#WIFSTOPPED
(
��us
�
`__WIFSTOPPED
(
`__WAIT_INT
(��us))
)
91 #ifde�
__WIFCONTINUED
92
#WIFCONTINUED
(
��us
�
`__WIFCONTINUED
(
`__WAIT_INT
(��us))
)
96
__BEGIN_NAMESPACE_STD
100
mqu�
;
101
m�m
;
102 }
tdiv_t
;
105 #i�de�
__ldiv_t_def�ed
108
mqu�
;
109
m�m
;
110 }
tldiv_t
;
111
#__ldiv_t_def�ed
1
)
113
g__END_NAMESPACE_STD
115 #i�
def�ed
__USE_ISOC99
&& !def�ed
__�div_t_def�ed
116
__BEGIN_NAMESPACE_C99
118
__ex�nsi�__
struct
120
mqu�
;
121
m�m
;
122 }
t�div_t
;
123
#__�div_t_def�ed
1
)
124
g__END_NAMESPACE_C99
129
#RAND_MAX
2147483647
)
134
#EXIT_FAILURE
1
)
135
#EXIT_SUCCESS
0
)
139
#MB_CUR_MAX
(
`__�y�_g�_mb_cur_max
())
)
140
size_t
$__�y�_g�_mb_cur_max
(�
__THROW
__wur
;
143
__BEGIN_NAMESPACE_STD
145
$�of
(
__cڡ
*
__Ō
)
146
__THROW
__��ibu�_pu�__
`__n�nu�
((1)�
__wur
;
148
$�oi
(
__cڡ
*
__Ō
)
149
__THROW
__��ibu�_pu�__
`__n�nu�
((1)�
__wur
;
151
$��
(
__cڡ
*
__Ō
)
152
__THROW
__��ibu�_pu�__
`__n�nu�
((1)�
__wur
;
153
__END_NAMESPACE_STD
155 #i�
def�ed
__USE_ISOC99
|| (def�ed
__GLIBC_HAVE_LONG_LONG
&& def�ed
__USE_MISC
)
156
__BEGIN_NAMESPACE_C99
158
__ex�nsi�__
$��l
(
__cڡ
*
__Ō
)
159
__THROW
__��ibu�_pu�__
`__n�nu�
((1)�
__wur
;
160
__END_NAMESPACE_C99
163
__BEGIN_NAMESPACE_STD
165
$��od
(
__cڡ
*
__��ri�
__Ō
,
166 **
__��ri�
__�d�r
)
167
__THROW
`__n�nu�
((1)�
__wur
;
168
__END_NAMESPACE_STD
170 #ifdef
__USE_ISOC99
171
__BEGIN_NAMESPACE_C99
173
$��of
(
__cڡ
*
__��ri�
__Ō
,
174 **
__��ri�
__�d�r
�
__THROW
`__n�nu�
((1)�
__wur
;
176
$���d
(
__cڡ
*
__��ri�
__Ō
,
177 **
__��ri�
__�d�r
)
178
__THROW
`__n�nu�
((1)�
__wur
;
179
__END_NAMESPACE_C99
182
__BEGIN_NAMESPACE_STD
184
$���
(
__cڡ
*
__��ri�
__Ō
,
185 **
__��ri�
__�d�r
,
__ba�
)
186
__THROW
`__n�nu�
((1)�
__wur
;
188
$��oul
(
__cڡ
*
__��ri�
__Ō
,
189 **
__��ri�
__�d�r
,
__ba�
)
190
__THROW
`__n�nu�
((1)�
__wur
;
191
__END_NAMESPACE_STD
193 #i�
def�ed
__GLIBC_HAVE_LONG_LONG
&& def�ed
__USE_BSD
195
__ex�nsi�__
196
$��oq
(
__cڡ
*
__��ri�
__Ō
,
197 **
__��ri�
__�d�r
,
__ba�
)
198
__THROW
`__n�nu�
((1)�
__wur
;
200
__ex�nsi�__
201
$��ouq
(
__cڡ
*
__��ri�
__Ō
,
202 **
__��ri�
__�d�r
,
__ba�
)
203
__THROW
`__n�nu�
((1)�
__wur
;
206 #i�
def�ed
__USE_ISOC99
|| (def�ed
__GLIBC_HAVE_LONG_LONG
&& def�ed
__USE_MISC
)
207
__BEGIN_NAMESPACE_C99
209
__ex�nsi�__
210
$���l
(
__cڡ
*
__��ri�
__Ō
,
211 **
__��ri�
__�d�r
,
__ba�
)
212
__THROW
`__n�nu�
((1)�
__wur
;
214
__ex�nsi�__
215
$��ou�
(
__cڡ
*
__��ri�
__Ō
,
216 **
__��ri�
__�d�r
,
__ba�
)
217
__THROW
`__n�nu�
((1)�
__wur
;
218
__END_NAMESPACE_C99
222 #ifde�
__USE_GNU
236
~<xlo��.h
>
240
$���_l
(
__cڡ
*
__��ri�
__Ō
,
241 **
__��ri�
__�d�r
,
__ba�
,
242
__lo��_t
__loc
�
__THROW
`__n�nu�
((1, 4)�
__wur
;
244
$��oul_l
(
__cڡ
*
__��ri�
__Ō
,
245 **
__��ri�
__�d�r
,
246
__ba�
,
__lo��_t
__loc
)
247
__THROW
`__n�nu�
((1, 4)�
__wur
;
249
__ex�nsi�__
250
$���l_l
(
__cڡ
*
__��ri�
__Ō
,
251 **
__��ri�
__�d�r
,
__ba�
,
252
__lo��_t
__loc
)
253
__THROW
`__n�nu�
((1, 4)�
__wur
;
255
__ex�nsi�__
256
$��ou�_l
(
__cڡ
*
__��ri�
__Ō
,
257 **
__��ri�
__�d�r
,
258
__ba�
,
__lo��_t
__loc
)
259
__THROW
`__n�nu�
((1, 4)�
__wur
;
261
$��od_l
(
__cڡ
*
__��ri�
__Ō
,
262 **
__��ri�
__�d�r
,
__lo��_t
__loc
)
263
__THROW
`__n�nu�
((1, 3)�
__wur
;
265
$��of_l
(
__cڡ
*
__��ri�
__Ō
,
266 **
__��ri�
__�d�r
,
__lo��_t
__loc
)
267
__THROW
`__n�nu�
((1, 3)�
__wur
;
269
$���d_l
(
__cڡ
*
__��ri�
__Ō
,
270 **
__��ri�
__�d�r
,
271
__lo��_t
__loc
)
272
__THROW
`__n�nu�
((1, 3)�
__wur
;
276 #ifde�
__USE_EXTERN_INLINES
277
__BEGIN_NAMESPACE_STD
278
__ex��_�l�e
279
`__NTH
(
$�of
(
__cڡ
*
__Ō
))
281
`��od
(
__Ō
, (**�
NULL
);
282
}
}
283
__ex��_�l�e
284
__NTH
(
$�oi
(
__cڡ
*
__Ō
))
286 (�
`���
(
__Ō
, (**�
NULL
, 10);
287
}
}
288
__ex��_�l�e
289
__NTH
(
$��
(
__cڡ
*
__Ō
))
291
`���
(
__Ō
, (**�
NULL
, 10);
292
}
}
293
g__END_NAMESPACE_STD
295 #i�
def�ed
__USE_MISC
|| def�ed
__USE_ISOC99
296
__BEGIN_NAMESPACE_C99
297
__ex�nsi�__
__ex��_�l�e
298
__NTH
(
$��l
(
__cڡ
*
__Ō
))
300
`���l
(
__Ō
, (**�
NULL
, 10);
301
}
}
302
g__END_NAMESPACE_C99
307 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN_EXTENDED
311
*
$l64a
(
__n
�
__THROW
__wur
;
314
$a64l
(
__cڡ
*
__s
)
315
__THROW
__��ibu�_pu�__
`__n�nu�
((1)�
__wur
;
319 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN_EXTENDED
|| def�ed
__USE_BSD
320
~<sys/ty�s.h
>
327
$�ndom
(�
__THROW
;
330
$��dom
(
__�ed
�
__THROW
;
336
*
$����e
(
__�ed
, *
__��ebuf
,
337
size_t
__����
�
__THROW
`__n�nu�
((2));
341
*
$�t��e
(*
__��ebuf
�
__THROW
`__n�nu�
((1));
344 #ifde�
__USE_MISC
349
s�ndom_d�a
351
�t32_t
*
�
;
352
�t32_t
*
��
;
353
�t32_t
*
��e
;
354
�nd_ty�
;
355
�nd_deg
;
356
�nd_�p
;
357
�t32_t
*
�d_�r
;
360
$�ndom_r
(
�ndom_d�a
*
__��ri�
__buf
,
361
�t32_t
*
__��ri�
__�su�
�
__THROW
`__n�nu�
((1, 2));
363
$��dom_r
(
__�ed
,
�ndom_d�a
*
__buf
)
364
__THROW
`__n�nu�
((2));
366
$����e_r
(
__�ed
, *
__��ri�
__��ebuf
,
367
size_t
__����
,
368
�ndom_d�a
*
__��ri�
__buf
)
369
__THROW
`__n�nu�
((2, 4));
371
$�t��e_r
(*
__��ri�
__��ebuf
,
372
�ndom_d�a
*
__��ri�
__buf
)
373
__THROW
`__n�nu�
((1, 2));
378
__BEGIN_NAMESPACE_STD
380
$�nd
(�
__THROW
;
382
$��d
(
__�ed
�
__THROW
;
383
__END_NAMESPACE_STD
385 #ifde�
__USE_POSIX
387
$�nd_r
(*
__�ed
�
__THROW
;
391 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
395
$d�nd48
(�
__THROW
;
396
$��d48
(
__xsubi
[3]�
__THROW
`__n�nu�
((1));
399
$̪d48
(�
__THROW
;
400
$Īd48
(
__xsubi
[3])
401
__THROW
`__n�nu�
((1));
404
$m�nd48
(�
__THROW
;
405
$j�nd48
(
__xsubi
[3])
406
__THROW
`__n�nu�
((1));
409
$��d48
(
__�edv�
�
__THROW
;
410
*
$�ed48
(
__�ed16v
[3])
411
__THROW
`__n�nu�
((1));
412
$lc�g48
(
__��m
[7]�
__THROW
`__n�nu�
((1));
414 #ifde�
__USE_MISC
418
sd�nd48_d�a
420
__x
[3];
421
__�d_x
[3];
422
__c
;
423
__��
;
424
__a
;
428
$d�nd48_r
(
d�nd48_d�a
*
__��ri�
__buf�r
,
429 *
__��ri�
__�su�
�
__THROW
`__n�nu�
((1, 2));
430
$��d48_r
(
__xsubi
[3],
431
d�nd48_d�a
*
__��ri�
__buf�r
,
432 *
__��ri�
__�su�
�
__THROW
`__n�nu�
((1, 2));
435
$̪d48_r
(
d�nd48_d�a
*
__��ri�
__buf�r
,
436 *
__��ri�
__�su�
)
437
__THROW
`__n�nu�
((1, 2));
438
$Īd48_r
(
__xsubi
[3],
439
d�nd48_d�a
*
__��ri�
__buf�r
,
440 *
__��ri�
__�su�
)
441
__THROW
`__n�nu�
((1, 2));
444
$m�nd48_r
(
d�nd48_d�a
*
__��ri�
__buf�r
,
445 *
__��ri�
__�su�
)
446
__THROW
`__n�nu�
((1, 2));
447
$j�nd48_r
(
__xsubi
[3],
448
d�nd48_d�a
*
__��ri�
__buf�r
,
449 *
__��ri�
__�su�
)
450
__THROW
`__n�nu�
((1, 2));
453
$��d48_r
(
__�edv�
,
d�nd48_d�a
*
__buf�r
)
454
__THROW
`__n�nu�
((2));
456
$�ed48_r
(
__�ed16v
[3],
457
d�nd48_d�a
*
__buf�r
�
__THROW
`__n�nu�
((1, 2));
459
$lc�g48_r
(
__��m
[7],
460
d�nd48_d�a
*
__buf�r
)
461
__THROW
`__n�nu�
((1, 2));
467 #i�de�
__m�loc_�d_��oc_def�ed
468
#__m�loc_�d_��oc_def�ed
)
469
__BEGIN_NAMESPACE_STD
471
*
$m�loc
(
size_t
__size
�
__THROW
__��ibu�_m�loc__
__wur
;
473
*
$��oc
(
size_t
__nmemb
, size_�
__size
)
474
__THROW
__��ibu�_m�loc__
__wur
;
475
__END_NAMESPACE_STD
478 #i�de�
__�ed_m�loc_�d_��oc
479
__BEGIN_NAMESPACE_STD
485
*
$��loc
(*
__�r
,
size_t
__size
)
486
__THROW
__��ibu�_w�n_unu�d_�su�__
;
488
$�
(*
__�r
�
__THROW
;
489
__END_NAMESPACE_STD
491 #ifdef
__USE_MISC
493
$c�
(*
__�r
�
__THROW
;
496 #i�
def�ed
__USE_GNU
|| def�ed
__USE_BSD
|| def�ed
__USE_MISC
497
~<�lo�.h
>
500 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN_EXTENDED
502
*
$v�loc
(
size_t
__size
�
__THROW
__��ibu�_m�loc__
__wur
;
505 #ifde�
__USE_XOPEN2K
507
$posix_mem�ign
(**
__mem�r
,
size_t
__�ignm�t
, size_�
__size
)
508
__THROW
`__n�nu�
((1)�
__wur
;
511
__BEGIN_NAMESPACE_STD
513
$ab�t
(�
__THROW
`__��ibu�__
((
__nܑu�__
));
517
`�ex�
((*
__func
�()�
__THROW
`__n�nu�
((1));
519 #ifde�
__USE_GNU
523 #ifde�
__�lu�lus
524
"C++"
`�_quick_ex�
((*
__func
) ())
525
__THROW
`__asm
("�_quick_ex�"�
`__n�nu�
((1));
527
`�_quick_ex�
((*
__func
�()�
__THROW
`__n�nu�
((1));
530
__END_NAMESPACE_STD
532 #ifdef
__USE_MISC
535
`�_ex�
((*
__func
�(
__��us
, *
__�g
), *__arg)
536
__THROW
`__n�nu�
((1));
539
__BEGIN_NAMESPACE_STD
543
$ex�
(
__��us
�
__THROW
`__��ibu�__
((
__nܑu�__
));
545 #ifde�
__USE_GNU
551
$quick_ex�
(
__��us
�
__THROW
`__��ibu�__
((
__nܑu�__
));
553
__END_NAMESPACE_STD
555 #ifde�
__USE_ISOC99
556
__BEGIN_NAMESPACE_C99
559
$_Ex�
(
__��us
�
__THROW
`__��ibu�__
((
__nܑu�__
));
560
__END_NAMESPACE_C99
564
__BEGIN_NAMESPACE_STD
566
*
$g��v
(
__cڡ
*
__�me
�
__THROW
`__n�nu�
((1)�
__wur
;
567
__END_NAMESPACE_STD
571
*
$__�cu�_g��v
(
__cڡ
*
__�me
)
572
__THROW
`__n�nu�
((1)�
__wur
;
574 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
578
$pu�nv
(*
__�r�g
�
__THROW
`__n�nu�
((1));
581 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN2K
584
$��nv
(
__cڡ
*
__�me
, __cڡ *
__v�ue
,
__��a�
)
585
__THROW
`__n�nu�
((2));
588
$un��nv
(
__cڡ
*
__�me
�
__THROW
;
591 #ifdef
__USE_MISC
595
$���nv
(�
__THROW
;
599 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN_EXTENDED
604
*
$mk�mp
(*
__�m��e
�
__THROW
`__n�nu�
((1)�
__wur
;
614 #i�de�
__USE_FILE_OFFSET64
615
$mk�emp
(*
__�m��e
�
`__n�nu�
((1)�
__wur
;
617 #ifde�
__REDIRECT
618
`__REDIRECT
(
mk�emp
, (*
__�m��e
),
mk�emp64
)
619
`__n�nu�
((1)�
__wur
;
621
#mk�emp
mk�emp64
)
624 #ifde�
__USE_LARGEFILE64
625
$mk�emp64
(*
__�m��e
�
`__n�nu�
((1)�
__wur
;
629 #ifde�
__USE_MISC
636 #i�de�
__USE_FILE_OFFSET64
637
$mk�emps
(*
__�m��e
,
__suffix�n
�
`__n�nu�
((1)�
__wur
;
639 #ifde�
__REDIRECT
640
`__REDIRECT
(
mk�emps
, (*
__�m��e
,
__suffix�n
),
641
mk�emps64
�
`__n�nu�
((1)�
__wur
;
643
#mk�emps
mk�emps64
)
646 #ifde�
__USE_LARGEFILE64
647
$mk�emps64
(*
__�m��e
,
__suffix�n
)
648
`__n�nu�
((1)�
__wur
;
652 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN2K8
658
*
$mkd�mp
(*
__�m��e
�
__THROW
`__n�nu�
((1)�
__wur
;
661 #ifde�
__USE_GNU
668 #i�de�
__USE_FILE_OFFSET64
669
$mko�emp
(*
__�m��e
,
__�ags
�
`__n�nu�
((1)�
__wur
;
671 #ifde�
__REDIRECT
672
`__REDIRECT
(
mko�emp
, (*
__�m��e
,
__�ags
),
mko�emp64
)
673
`__n�nu�
((1)�
__wur
;
675
#mko�emp
mko�emp64
)
678 #ifde�
__USE_LARGEFILE64
679
$mko�emp64
(*
__�m��e
,
__�ags
�
`__n�nu�
((1)�
__wur
;
688 #i�de�
__USE_FILE_OFFSET64
689
$mko�emps
(*
__�m��e
,
__suffix�n
,
__�ags
)
690
`__n�nu�
((1)�
__wur
;
692 #ifde�
__REDIRECT
693
`__REDIRECT
(
mko�emps
, (*
__�m��e
,
__suffix�n
,
694
__�ags
),
mko�emps64
)
695
`__n�nu�
((1)�
__wur
;
697
#mko�emps
mko�emps64
)
700 #ifde�
__USE_LARGEFILE64
701
$mko�emps64
(*
__�m��e
,
__suffix�n
,
__�ags
)
702
`__n�nu�
((1)�
__wur
;
707
__BEGIN_NAMESPACE_STD
712
$sy�em
(
__cڡ
*
__comm�d
�
__wur
;
713
__END_NAMESPACE_STD
716 #ifdef
__USE_GNU
719
*
$�n�i�lize_f�e_�me
(
__cڡ
*
__�me
)
720
__THROW
`__n�nu�
((1)�
__wur
;
723 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN_EXTENDED
729
*
$���th
(
__cڡ
*
__��ri�
__�me
,
730 *
__��ri�
__�s�ved
�
__THROW
__wur
;
735 #i�de�
__COMPAR_FN_T
736
#__COMPAR_FN_T
)
737 (*
t__com�r_�_t
�(
t__cڡ
*, __const *);
739 #ifdef
__USE_GNU
740
__com�r_�_t
tcom�ris�_�_t
;
743 #ifde�
__USE_GNU
744 (*
t__com�r_d_�_t
�(
t__cڡ
*, __const *, *);
747
__BEGIN_NAMESPACE_STD
750
*
$b��ch
(
__cڡ
*
__key
, __cڡ *
__ba�
,
751
size_t
__nmemb
, size_�
__size
,
__com�r_�_t
__com�r
)
752
`__n�nu�
((1, 2, 5)�
__wur
;
756
$qs�t
(*
__ba�
,
size_t
__nmemb
, size_�
__size
,
757
__com�r_�_t
__com�r
�
`__n�nu�
((1, 4));
758 #ifde�
__USE_GNU
759
$qs�t_r
(*
__ba�
,
size_t
__nmemb
, size_�
__size
,
760
__com�r_d_�_t
__com�r
, *
__�g
)
761
`__n�nu�
((1, 4));
766
$abs
(
__x
�
__THROW
`__��ibu�__
((
__cڡ__
)�
__wur
;
767
$�bs
(
__x
�
__THROW
`__��ibu�__
((
__cڡ__
)�
__wur
;
768
__END_NAMESPACE_STD
770 #ifde�
__USE_ISOC99
771
__ex�nsi�__
$�abs
(
__x
)
772
__THROW
`__��ibu�__
((
__cڡ__
)�
__wur
;
776
__BEGIN_NAMESPACE_STD
780
div_t
$div
(
__num�
,
__d�om
)
781
__THROW
`__��ibu�__
((
__cڡ__
)�
__wur
;
782
ldiv_t
$ldiv
(
__num�
,
__d�om
)
783
__THROW
`__��ibu�__
((
__cڡ__
)�
__wur
;
784
__END_NAMESPACE_STD
786 #ifde�
__USE_ISOC99
787
__BEGIN_NAMESPACE_C99
788
__ex�nsi�__
�div_t
$�div
(
__num�
,
789
__d�om
)
790
__THROW
`__��ibu�__
((
__cڡ__
)�
__wur
;
791
__END_NAMESPACE_C99
795 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN_EXTENDED
802
*
$ecvt
(
__v�ue
,
__ndig�
, *
__��ri�
__de�t
,
803 *
__��ri�
__sign
�
__THROW
`__n�nu�
((3, 4)�
__wur
;
808
*
$fcvt
(
__v�ue
,
__ndig�
, *
__��ri�
__de�t
,
809 *
__��ri�
__sign
�
__THROW
`__n�nu�
((3, 4)�
__wur
;
814
*
$gcvt
(
__v�ue
,
__ndig�
, *
__buf
)
815
__THROW
`__n�nu�
((3)�
__wur
;
818 #ifde�
__USE_MISC
820
*
$qecvt
(
__v�ue
,
__ndig�
,
821 *
__��ri�
__de�t
, *__��ri�
__sign
)
822
__THROW
`__n�nu�
((3, 4)�
__wur
;
823
*
$qfcvt
(
__v�ue
,
__ndig�
,
824 *
__��ri�
__de�t
, *__��ri�
__sign
)
825
__THROW
`__n�nu�
((3, 4)�
__wur
;
826
*
$qgcvt
(
__v�ue
,
__ndig�
, *
__buf
)
827
__THROW
`__n�nu�
((3)�
__wur
;
832
$ecvt_r
(
__v�ue
,
__ndig�
, *
__��ri�
__de�t
,
833 *
__��ri�
__sign
, *__��ri�
__buf
,
834
size_t
__�n
�
__THROW
`__n�nu�
((3, 4, 5));
835
$fcvt_r
(
__v�ue
,
__ndig�
, *
__��ri�
__de�t
,
836 *
__��ri�
__sign
, *__��ri�
__buf
,
837
size_t
__�n
�
__THROW
`__n�nu�
((3, 4, 5));
839
$qecvt_r
(
__v�ue
,
__ndig�
,
840 *
__��ri�
__de�t
, *__��ri�
__sign
,
841 *
__��ri�
__buf
,
size_t
__�n
)
842
__THROW
`__n�nu�
((3, 4, 5));
843
$qfcvt_r
(
__v�ue
,
__ndig�
,
844 *
__��ri�
__de�t
, *__��ri�
__sign
,
845 *
__��ri�
__buf
,
size_t
__�n
)
846
__THROW
`__n�nu�
((3, 4, 5));
851
__BEGIN_NAMESPACE_STD
854
$mb�n
(
__cڡ
*
__s
,
size_t
__n
�
__THROW
__wur
;
857
$mbtowc
(
wch�_t
*
__��ri�
__pwc
,
858
__cڡ
*
__��ri�
__s
,
size_t
__n
�
__THROW
__wur
;
861
$w�omb
(*
__s
,
wch�_t
__wch�
�
__THROW
__wur
;
865
size_t
$mb�owcs
(
wch�_t
*
__��ri�
__pwcs
,
866
__cڡ
*
__��ri�
__s
,
size_t
__n
�
__THROW
;
868
size_t
$wc�ombs
(*
__��ri�
__s
,
869
__cڡ
wch�_t
*
__��ri�
__pwcs
,
size_t
__n
)
870
__THROW
;
871
__END_NAMESPACE_STD
874 #ifde�
__USE_SVID
879
$�m�ch
(
__cڡ
*
__��ڣ
�
__THROW
`__n�nu�
((1)�
__wur
;
883 #ifde�
__USE_XOPEN_EXTENDED
890
$g�sub�t
(**
__��ri�
__�ti�p
,
891 *
__cڡ
*
__��ri�
__tok�s
,
892 **
__��ri�
__v�u�
)
893
__THROW
`__n�nu�
((1, 2, 3)�
__wur
;
897 #ifde�
__USE_XOPEN
899
$�tkey
(
__cڡ
*
__key
�
__THROW
`__n�nu�
((1));
905 #ifde�
__USE_XOPEN2K
907
$posix_ݒ�
(
__o�ag
�
__wur
;
910 #ifde�
__USE_XOPEN
915
$g���
(
__fd
�
__THROW
;
919
$u�ock�
(
__fd
�
__THROW
;
924
*
$��ame
(
__fd
�
__THROW
__wur
;
927 #ifde�
__USE_GNU
931
$��ame_r
(
__fd
, *
__buf
,
size_t
__bu�
)
932
__THROW
`__n�nu�
((2));
935
`g��
();
938 #ifde�
__USE_BSD
942
$g�l�davg
(
__l�davg
[],
__��m
)
943
__THROW
`__n�nu�
((1));
948 #i�
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
949
~<b�s/�dlib.h
>
951 #ifde�
__LDBL_COMPAT
952
~<b�s/�dlib-ldbl.h
>
956 #unde�
__�ed_m�loc_�d_��oc
958
__END_DECLS
@/usr/include/sys/cdefs.h
20 #i�def
_SYS_CDEFS_H
21
#_SYS_CDEFS_H
1
)
24 #i�de�
_FEATURES_H
25
~<�u�s.h
>
31 #i�
def�ed
__GNUC__
&& !def�ed
__STDC__
36 #unde�
__P
37 #unde�
__PMT
39 #ifde�
__GNUC__
46 #i�!
def�ed
__�lu�lus
&&
__GNUC_PREREQ
(3, 3)
47
#__THROW
`__��ibu�__
((
__n�hrow__
))
)
48
#__NTH
(
f�
�
`__��ibu�__
((
__n�hrow__
)�
)
fct
50 #i�
def�ed
__�lu�lus
&&
__GNUC_PREREQ
(2,8)
51
#__THROW
`throw
()
)
52
#__NTH
(
f�
�f�
`throw
()
)
54
#__THROW
)
55
#__NTH
(
f�
�
)
fct
61
#__�l�e
)
63
#__THROW
)
64
#__NTH
(
f�
�
)
fct
66
#__cڡ
cڡ
)
67
#__sig�d
sig�d
)
68
#__vީ�e
vީ�e
)
74
#__P
(
�gs
�
)
args
75
#__PMT
(
�gs
�
)
args
80
#__CONCAT
(
x
,
y
�x ##
)
y
81
#__STRING
(
x
�#x
)
84
#__�r_t
*
)
85
#__l�g_doub�_t
)
89 #ifdef
__�lu�lus
90
#__BEGIN_DECLS
"C" {
)
91
#__END_DECLS
}
)
93
#__BEGIN_DECLS
)
94
#__END_DECLS
)
103 #i�
def�ed
__�lu�lus
&& def�ed
_GLIBCPP_USE_NAMESPACES
104
#__BEGIN_NAMESPACE_STD
�me�a�
�d
{
)
105
#__END_NAMESPACE_STD
}
)
106
#__USING_NAMESPACE_STD
(
�me
�
us�g
�d
::�me;
)
107
#__BEGIN_NAMESPACE_C99
�me�a�
__c99
{
)
108
#__END_NAMESPACE_C99
}
)
109
#__USING_NAMESPACE_C99
(
�me
�
us�g
__c99
::�me;
)
114
#__BEGIN_NAMESPACE_STD
)
115
#__END_NAMESPACE_STD
)
116
#__USING_NAMESPACE_STD
(
�me
)
)
117
#__BEGIN_NAMESPACE_C99
)
118
#__END_NAMESPACE_C99
)
119
#__USING_NAMESPACE_C99
(
�me
)
)
124 #i�de�
__BOUNDED_POINTERS__
125
#__bounded
)
126
#__unbounded
)
127
#__�rv�ue
)
132
#__bos
(
�r
�
`__bu�t�_obje�_size
(�r,
__USE_FORTIFY_LEVEL
> 1)
)
133
#__bos0
(
�r
�
`__bu�t�_obje�_size
(�r, 0)
)
135 #i�
__GNUC_PREREQ
(4,3)
136
#__w�nde�
(
�me
,
msg
) \
137
`�me
(�
`__��ibu�__
((
`__w�n�g__
(
msg
)))
)
138
#__w�ljr
(
msg
�
`__��ibu�__
((
`__w�n�g__
(msg)))
)
139
#__�r�de�
(
�me
,
msg
) \
140
`�me
(�
`__��ibu�__
((
`__�r�__
(
msg
)))
)
142
#__w�nde�
(
�me
,
msg
�
`�me
()
)
143
#__w�ljr
(
msg
)
)
144
#__�r�de�
(
�me
,
msg
�
`�me
()
)
148 #i�
__GNUC_PREREQ
(2,97)
150
#__�ex�r
[]
)
152 #ifde�
__GNUC__
153
#__�ex�r
[0]
)
155 #i�
def�ed
__STDC_VERSION__
&& __STDC_VERSION__ >= 199901L
156
#__�ex�r
[]
)
159
#__�ex�r
[1]
)
175 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
177
#__REDIRECT
(
�me
,
��o
,
��s
��m����
`__asm__
(
`__ASMNAME
(#��s))
)
178 #ifde�
__�lu�lus
179
#__REDIRECT_NTH
(
�me
,
��o
,
��s
) \
180
�me
��o
__THROW
`__asm__
(
`__ASMNAME
(#��s))
)
182
#__REDIRECT_NTH
(
�me
,
��o
,
��s
) \
183
�me
��o
`__asm__
(
`__ASMNAME
(#��s)�
__THROW
)
185
#__ASMNAME
(
�ame
�
`__ASMNAME2
(
__USER_LABEL_PREFIX__
, c�me)
)
186
#__ASMNAME2
(
�efix
,
�ame
�
`__STRING
(�efix�
)
cname
199 #i�!
def�ed
__GNUC__
|| __GNUC__ < 2
200
#__��ibu�__
(
xyz
�
)
206 #i�
__GNUC_PREREQ
(2,96)
207
#__��ibu�_m�loc__
`__��ibu�__
((
__m�loc__
))
)
209
#__��ibu�_m�loc__
)
215 #i�
__GNUC_PREREQ
(2,96)
216
#__��ibu�_pu�__
`__��ibu�__
((
__pu�__
))
)
218
#__��ibu�_pu�__
)
224 #i�
__GNUC_PREREQ
(3,1)
225
#__��ibu�_u�d__
`__��ibu�__
((
__u�d__
))
)
226
#__��ibu�_no�l�e__
`__��ibu�__
((
__no�l�e__
))
)
228
#__��ibu�_u�d__
`__��ibu�__
((
__unu�d__
))
)
229
#__��ibu�_no�l�e__
)
233 #i�
__GNUC_PREREQ
(3,2)
234
#__��ibu�_d����d__
`__��ibu�__
((
__d����d__
))
)
236
#__��ibu�_d����d__
)
245 #i�
__GNUC_PREREQ
(2,8)
246
#__��ibu�_f�m�_�g__
(
x
�
`__��ibu�__
((
`__f�m�_�g__
(x)))
)
248
#__��ibu�_f�m�_�g__
(
x
�
)
255 #i�
__GNUC_PREREQ
(2,97)
256
#__��ibu�_f�m�_�rfm�__
(
a
,
b
) \
257
`__��ibu�__
((
`__f�m�__
(
__�rfm�__
,
a
,
b
)))
)
259
#__��ibu�_f�m�_�rfm�__
(
a
,
b
�
)
264 #i�
__GNUC_PREREQ
(3,3)
265
#__n�nu�
(
��ms
�
`__��ibu�__
((
__n�nu�__
��ams))
)
267
#__n�nu�
(
��ms
)
)
272 #i�
__GNUC_PREREQ
(3,4)
273
#__��ibu�_w�n_unu�d_�su�__
\
274
`__��ibu�__
((
__w�n_unu�d_�su�__
))
)
275 #i�
__USE_FORTIFY_LEVEL
> 0
276
#__wur
__��ibu�_w�n_unu�d_�su�__
)
279
#__��ibu�_w�n_unu�d_�su�__
)
281 #i�de�
__wur
282
#__wur
)
286 #i�
__GNUC_PREREQ
(3,2)
287
#__�ways_�l�e
__�l�e
`__��ibu�__
((
__�ways_�l�e__
))
)
289
#__�ways_�l�e
__�l�e
)
294 #i�!
def�ed
__�lu�lus
||
__GNUC_PREREQ
(4,3)
295 #i�
def�ed
__GNUC_STDC_INLINE__
|| def�ed
__�lu�lus
296
#__ex��_�l�e
__�l�e
`__��ibu�__
((
__gnu_�l�e__
))
)
297 #i�
__GNUC_PREREQ
(4,3)
298
#__ex��_�ways_�l�e
\
299
__�ways_�l�e
`__��ibu�__
((
__gnu_�l�e__
,
__�tific�l__
))
)
301
#__ex��_�ways_�l�e
\
302
__�ways_�l�e
`__��ibu�__
((
__gnu_�l�e__
))
)
305
#__ex��_�l�e
__�l�e
)
306 #i�
__GNUC_PREREQ
(4,3)
307
#__ex��_�ways_�l�e
\
308
__�ways_�l�e
`__��ibu�__
((
__�tific�l__
))
)
310
#__ex��_�ways_�l�e
__�ways_�l�e
)
317 #i�
__GNUC_PREREQ
(4,3)
318
#__va_�g_�ck
(�
`__bu�t�_va_�g_�ck
()
)
319
#__va_�g_�ck_�n
(�
`__bu�t�_va_�g_�ck_�n
()
)
326 #i�!
__GNUC_PREREQ
(2,8)
327
#__ex�nsi�__
)
331 #i�!
__GNUC_PREREQ
(2,92)
332
#__��ri�
)
338 #i�
__GNUC_PREREQ
(3,1�&& !
def�ed
__GNUG__
339
#__��ri�_�r
__��ri�
)
341 #ifde�
__GNUC__
342
#__��ri�_�r
)
344 #i�
def�ed
__STDC_VERSION__
&& __STDC_VERSION__ >= 199901L
345
#__��ri�_�r
��ri�
)
348
#__��ri�_�r
)
353
~<b�s/w�dsize.h
>
355 #i�
def�ed
__LONG_DOUBLE_MATH_OPTIONAL
&& def�ed
__NO_LONG_DOUBLE_MATH
356
#__LDBL_COMPAT
1
)
357 #ifde�
__REDIRECT
358
#__LDBL_REDIR1
(
�me
,
��o
,
��s
�
`__REDIRECT
(�me,�r�o,�l�s)
)
359
#__LDBL_REDIR
(
�me
,
��o
) \
360
`__LDBL_REDIR1
(
�me
,
��o
,
__�dbl_
##�me)
)
361
#__LDBL_REDIR1_NTH
(
�me
,
��o
,
��s
�
`__REDIRECT_NTH
(�me,�r�o,�l�s)
)
362
#__LDBL_REDIR_NTH
(
�me
,
��o
) \
363
`__LDBL_REDIR1_NTH
(
�me
,
��o
,
__�dbl_
##�me)
)
364
#__LDBL_REDIR1_DECL
(
�me
,
��s
) \
365
`__ty�of
(
�me
��m�
`__asm
(
`__ASMNAME
(#��s));
)
366
#__LDBL_REDIR_DECL
(
�me
) \
367
`__ty�of
(
�me
��m�
`__asm
(
`__ASMNAME
("__�dbl_" #�me));
)
368
#__REDIRECT_LDBL
(
�me
,
��o
,
��s
) \
369
`__LDBL_REDIR1
(
�me
,
��o
,
__�dbl_
##
��s
)
)
370
#__REDIRECT_NTH_LDBL
(
�me
,
��o
,
��s
) \
371
`__LDBL_REDIR1_NTH
(
�me
,
��o
,
__�dbl_
##
��s
)
)
374 #i�!
def�ed
__LDBL_COMPAT
|| !def�ed
__REDIRECT
375
#__LDBL_REDIR1
(
�me
,
��o
,
��s
��m�
)
proto
376
#__LDBL_REDIR
(
�me
,
��o
��m�
)
proto
377
#__LDBL_REDIR1_NTH
(
�me
,
��o
,
��s
��m����
__THROW
)
378
#__LDBL_REDIR_NTH
(
�me
,
��o
��m����
__THROW
)
379
#__LDBL_REDIR_DECL
(
�me
)
)
380 #ifde�
__REDIRECT
381
#__REDIRECT_LDBL
(
�me
,
��o
,
��s
�
`__REDIRECT
(�me,�r�o,�l�s)
)
382
#__REDIRECT_NTH_LDBL
(
�me
,
��o
,
��s
) \
383
`__REDIRECT_NTH
(
�me
,
��o
,
��s
)
)
@/usr/include/alloca.h
19 #i�def
_ALLOCA_H
20
#_ALLOCA_H
1
)
22
~<�u�s.h
>
24
#__�ed_size_t
)
25
~<�ddef.h
>
27
g__BEGIN_DECLS
30 #unde�
�lo�
33
*
$�lo�
(
size_t
__size
�
__THROW
;
35 #ifdef
__GNUC__
36
#�lo�
(
size
�
`__bu�t�_�lo�
(size)
)
39
__END_DECLS
@/usr/include/bits/byteswap.h
21 #i�!
def�ed
_BYTESWAP_H
&& !def�ed
_NETINET_IN_H
&& !def�ed
_ENDIAN_H
25 #i�de�
_BITS_BYTESWAP_H
26
#_BITS_BYTESWAP_H
1
)
28
~<b�s/w�dsize.h
>
31
#__bsw�_cڡ�t_16
(
x
) \
32 ((((
x
�>> 8�& 0xff�| (((x�& 0xff�<< 8))
)
34 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
35
#__bsw�_16
(
x
) \
36 (
__ex�nsi�__
\
37 ({
__v
,
__x
= (
x
); \
38 i�(
`__bu�t�_cڡ�t_p
(
__x
)) \
39
__v
=
`__bsw�_cڡ�t_16
(
__x
); \
41
`__asm__
("rorw $8, %w0" \
42 : "�" (
__v
) \
43 : "0" (
__x
) \
45
__v
; }))
)
48
#__bsw�_16
(
x
) \
49 (
__ex�nsi�__
\
50 ({
__x
= (
x
);
`__bsw�_cڡ�t_16
(__x); }))
)
55
#__bsw�_cڡ�t_32
(
x
) \
56 ((((
x
) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) | \
57 (((
x
�& 0x0000ff00�<< 8�| (((x�& 0x000000ff�<< 24))
)
59 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
60 #i�
__WORDSIZE
=�64 || (
def�ed
__i486__
|| def�ed
__��ium__
\
61 ||
def�ed
g__��ium�o__
|| def�ed
g__��ium4__
\
62 ||
def�ed
g__k8__
|| def�ed
g__�hl�__
\
63 ||
def�ed
g__k6__
|| def�ed
g__noc�a__
\
64 ||
def�ed
g__c�e2__
|| def�ed
g__geode__
\
65 ||
def�ed
g__amd�m10__
)
68
#__bsw�_32
(
x
) \
69 (
__ex�nsi�__
\
70 ({
__v
,
__x
= (
x
); \
71 i�(
`__bu�t�_cڡ�t_p
(
__x
)) \
72
__v
=
`__bsw�_cڡ�t_32
(
__x
); \
74
`__asm__
("bsw� %0" : "�" (
__v
�: "0" (
__x
)); \
75
__v
; }))
)
77
#__bsw�_32
(
x
) \
78 (
__ex�nsi�__
\
79 ({
__v
,
__x
= (
x
); \
80 i�(
`__bu�t�_cڡ�t_p
(
__x
)) \
81
__v
=
`__bsw�_cڡ�t_32
(
__x
); \
83
`__asm__
("rorw $8, %w0;" \
86 : "�" (
__v
) \
87 : "0" (
__x
) \
89
__v
; }))
)
92
#__bsw�_32
(
x
) \
93 (
__ex�nsi�__
\
94 ({
__x
= (
x
);
`__bsw�_cڡ�t_32
(__x); }))
)
98 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
100
#__bsw�_cڡ�t_64
(
x
) \
101 ((((
x
) & 0xff00000000000000ull) >> 56) \
102 | (((
x
) & 0x00ff000000000000ull) >> 40) \
103 | (((
x
) & 0x0000ff0000000000ull) >> 24) \
104 | (((
x
) & 0x000000ff00000000ull) >> 8) \
105 | (((
x
) & 0x00000000ff000000ull) << 8) \
106 | (((
x
) & 0x0000000000ff0000ull) << 24) \
107 | (((
x
) & 0x000000000000ff00ull) << 40) \
108 | (((
x
�& 0x00000000000000ffu��<< 56))
)
110 #i�
__WORDSIZE
== 64
111
#__bsw�_64
(
x
) \
112 (
__ex�nsi�__
\
113 ({
__v
,
__x
= (
x
); \
114 i�(
`__bu�t�_cڡ�t_p
(
__x
)) \
115
__v
=
`__bsw�_cڡ�t_64
(
__x
); \
117
`__asm__
("bsw� %q0" : "�" (
__v
�: "0" (
__x
)); \
118
__v
; }))
)
120
#__bsw�_64
(
x
) \
121 (
__ex�nsi�__
\
122 ({ uni� {
__ex�nsi�__
__�
; \
123
__l
[2]; }
__w
,
__r
; \
124 i�(
`__bu�t�_cڡ�t_p
(
x
)) \
125
__r
.
__�
=
`__bsw�_cڡ�t_64
(
x
); \
128
__w
.
__�
= (
x
); \
129
__r
.
__l
[0] =
`__bsw�_32
(
__w
.__l[1]); \
130
__r
.
__l
[1] =
`__bsw�_32
(
__w
.__l[0]); \
132
__r
.
__�
; }))
)
@/usr/include/bits/endian.h
3 #i�de�
_ENDIAN_H
7
#__BYTE_ORDER
__LITTLE_ENDIAN
)
@/usr/include/bits/libc-lock.h
20 #i�de�
_BITS_LIBC_LOCK_H
21
#_BITS_LIBC_LOCK_H
1
)
23
~<�h�ad.h
>
24
#__�ed_NULL
)
25
~<�ddef.h
>
34 #ifde�
_LIBC
35
~<low�v�lock.h
>
36
~<�s.h
>
37
~<�h�ad-fun�i�s.h
>
38
~<��o.h
>
39
~<gnu/�ti�-groups.h
>
43 #i�
def�ed
_LIBC
|| def�ed
_IO_MTSAFE_IO
44 #i�(
def�ed
NOT_IN_libc
&& !def�ed
IS_IN_lib�h�ad
�|| !def�ed
_LIBC
45
�h�ad_mu�x_t
t__libc_lock_t
;
46 �ru� {
�h�ad_mu�x_t
mmu�x
; }
t__libc_lock_�cursive_t
;
48
t__libc_lock_t
;
49 �ru� {
mlock
;
m�t
; *
mow�r
; }
t__libc_lock_�cursive_t
;
51 �ru� {
�h�ad_mu�x_t
mmu�x
; }
t__�ld_lock_�cursive_t
;
52 #ifde�
__USE_UNIX98
53
�h�ad_rwlock_t
t__libc_rwlock_t
;
55
__libc_rwlock_�aque__
t__libc_rwlock_t
;
58
__libc_lock_�aque__
t__libc_lock_t
;
59
__libc_lock_�cursive_�aque__
t__libc_lock_�cursive_t
;
60
__libc_rwlock_�aque__
t__libc_rwlock_t
;
64
�h�ad_key_t
t__libc_key_t
;
73
#__libc_lock_def�e
(
CLASS
,
NAME
) \
74
CLASS
__libc_lock_t
NAME
;
)
75
#__libc_rwlock_def�e
(
CLASS
,
NAME
) \
76
CLASS
__libc_rwlock_t
NAME
;
)
77
#__libc_lock_def�e_�cursive
(
CLASS
,
NAME
) \
78
CLASS
__libc_lock_�cursive_t
NAME
;
)
79
#__�ld_lock_def�e_�cursive
(
CLASS
,
NAME
) \
80
CLASS
__�ld_lock_�cursive_t
NAME
;
)
91 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
92 #i�
LLL_LOCK_INITIALIZER
== 0
93
#__libc_lock_def�e_���lized
(
CLASS
,
NAME
) \
94
CLASS
__libc_lock_t
NAME
;
)
96
#__libc_lock_def�e_���lized
(
CLASS
,
NAME
) \
97
CLASS
__libc_lock_t
NAME
=
LLL_LOCK_INITIALIZER
;
)
100 #i�
__LT_SPINLOCK_INIT
== 0
101
#__libc_lock_def�e_���lized
(
CLASS
,
NAME
) \
102
CLASS
__libc_lock_t
NAME
;
)
104
#__libc_lock_def�e_���lized
(
CLASS
,
NAME
) \
105
CLASS
__libc_lock_t
NAME
=
PTHREAD_MUTEX_INITIALIZER
;
)
109
#__libc_rwlock_def�e_���lized
(
CLASS
,
NAME
) \
110
CLASS
__libc_rwlock_t
NAME
=
PTHREAD_RWLOCK_INITIALIZER
;
)
114 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
115 #i�
LLL_LOCK_INITIALIZER
== 0
116
#__libc_lock_def�e_���lized_�cursive
(
CLASS
,
NAME
) \
117
CLASS
__libc_lock_�cursive_t
NAME
;
)
119
#__libc_lock_def�e_���lized_�cursive
(
CLASS
,
NAME
) \
120
CLASS
__libc_lock_�cursive_t
NAME
=
_LIBC_LOCK_RECURSIVE_INITIALIZER
;
)
122
#_LIBC_LOCK_RECURSIVE_INITIALIZER
\
123 {
LLL_LOCK_INITIALIZER
, 0,
NULL
}
)
125
#__libc_lock_def�e_���lized_�cursive
(
CLASS
,
NAME
) \
126
CLASS
__libc_lock_�cursive_t
NAME
=
_LIBC_LOCK_RECURSIVE_INITIALIZER
;
)
127
#_LIBC_LOCK_RECURSIVE_INITIALIZER
\
128 {
PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
}
)
131
#__�ld_lock_def�e_���lized_�cursive
(
CLASS
,
NAME
) \
132
CLASS
__�ld_lock_�cursive_t
NAME
=
_RTLD_LOCK_RECURSIVE_INITIALIZER
;
)
133
#_RTLD_LOCK_RECURSIVE_INITIALIZER
\
134 {
PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
}
)
136
#__�ld_lock_���lize
(
NAME
) \
137 (�((
NAME
��(
__�ld_lock_�cursive_t
�
_RTLD_LOCK_RECURSIVE_INITIALIZER
)
)
144 #ifde�
__PIC__
145
#__libc_maybe_��
(
FUNC
,
ARGS
,
ELSE
) \
146 (
`__ex�nsi�__
({
`__ty�of
(
FUNC
�*
_�
= (FUNC); \
147
_�
!�
NULL
? (*_��
ARGS
:
ELSE
; }))
)
149
#__libc_maybe_��
(
FUNC
,
ARGS
,
ELSE
) \
150 (
FUNC
!�
NULL
? FUNC
ARGS
:
ELSE
)
)
154 #i�
def�ed
SHARED
&& !def�ed
NOT_IN_libc
155
#PTFAVAIL
(
NAME
�
__libc_�h�ad_fun�i�s_��
)
156
#__libc_�f_��
(
FUNC
,
ARGS
,
ELSE
) \
157 (
__libc_�h�ad_fun�i�s_��
?
`PTHFCT_CALL
(
�r_
##
FUNC
,
ARGS
�:
ELSE
)
)
158
#__libc_�f_��_�ways
(
FUNC
,
ARGS
) \
159
`PTHFCT_CALL
(
�r_
##
FUNC
,
ARGS
)
)
161
#PTFAVAIL
(
NAME
�(NAME !�
NULL
)
)
162
#__libc_�f_��
(
FUNC
,
ARGS
,
ELSE
) \
163
`__libc_maybe_��
(
FUNC
,
ARGS
,
ELSE
)
)
164
#__libc_�f_��_�ways
(
FUNC
,
ARGS
) \
165
FUNC
ARGS
)
171 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
172
#__libc_lock_��
(
NAME
�((NAME��
LLL_LOCK_INITIALIZER
, 0)
)
174
#__libc_lock_��
(
NAME
) \
175
`__libc_maybe_��
(
__�h�ad_mu�x_��
, (&(
NAME
),
NULL
), 0)
)
177 #i�
def�ed
SHARED
&& !def�ed
NOT_IN_libc
180
#__libc_rwlock_��
(
NAME
) \
181 (
`__bu�t�_mem�t
(&(
NAME
), '\0', (NAME)), 0)
)
183
#__libc_rwlock_��
(
NAME
) \
184
`__libc_maybe_��
(
__�h�ad_rwlock_��
, (&(
NAME
),
NULL
), 0)
)
188 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
189
#__libc_lock_��_�cursive
(
NAME
) \
190 ((
NAME
��(
__libc_lock_�cursive_t
�
_LIBC_LOCK_RECURSIVE_INITIALIZER
, 0)
)
192
#__libc_lock_��_�cursive
(
NAME
) \
194 i�(
__�h�ad_mu�x_��
!�
NULL
) \
196
�h�ad_mu�x��_t
__��
; \
197
`__�h�ad_mu�x��_��
(&
__��
); \
198
`__�h�ad_mu�x��_��y�
(&
__��
,
PTHREAD_MUTEX_RECURSIVE_NP
); \
199
`__�h�ad_mu�x_��
(&(
NAME
).
mu�x
, &
__��
); \
200
`__�h�ad_mu�x��_de�roy
(&
__��
); \
202 } 0)
)
205
#__�ld_lock_��_�cursive
(
NAME
) \
207 i�(
__�h�ad_mu�x_��
!�
NULL
) \
209
�h�ad_mu�x��_t
__��
; \
210
`__�h�ad_mu�x��_��
(&
__��
); \
211
`__�h�ad_mu�x��_��y�
(&
__��
,
PTHREAD_MUTEX_RECURSIVE_NP
); \
212
`__�h�ad_mu�x_��
(&(
NAME
).
mu�x
, &
__��
); \
213
`__�h�ad_mu�x��_de�roy
(&
__��
); \
215 } 0)
)
220 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
221
#__libc_lock_f�i
(
NAME
�((�0)
)
223
#__libc_lock_f�i
(
NAME
) \
224
`__libc_maybe_��
(
__�h�ad_mu�x_de�roy
, (&(
NAME
)), 0)
)
226 #i�
def�ed
SHARED
&& !def�ed
NOT_IN_libc
227
#__libc_rwlock_f�i
(
NAME
�((�0)
)
229
#__libc_rwlock_f�i
(
NAME
) \
230
`__libc_maybe_��
(
__�h�ad_rwlock_de�roy
, (&(
NAME
)), 0)
)
234 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
235
#__libc_lock_f�i_�cursive
(
NAME
�((�0)
)
237
#__libc_lock_f�i_�cursive
(
NAME
) \
238
`__libc_maybe_��
(
__�h�ad_mu�x_de�roy
, (&(
NAME
)), 0)
)
242 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
243 #i�
__OPTION_EGLIBC_BIG_MACROS
!= 1
247
__libc_lock_lock_�
(
__libc_lock_t
*);
248
libc_hidd�_��o
(
__libc_lock_lock_�
);
250 #i�
__OPTION_EGLIBC_BIG_MACROS
251
#__libc_lock_lock
(
NAME
) \
252 ({
`�l_lock
(
NAME
,
LLL_PRIVATE
); 0; })
)
254
#__libc_lock_lock
(
NAME
) \
255
`__libc_lock_lock_�
(&(
NAME
))
)
258
#__libc_lock_lock
(
NAME
) \
259
`__libc_maybe_��
(
__�h�ad_mu�x_lock
, (&(
NAME
)), 0)
)
261
#__libc_rwlock_rdlock
(
NAME
) \
262
`__libc_�f_��
(
__�h�ad_rwlock_rdlock
, (&(
NAME
)), 0)
)
263
#__libc_rwlock_w�ock
(
NAME
) \
264
`__libc_�f_��
(
__�h�ad_rwlock_w�ock
, (&(
NAME
)), 0)
)
267 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
268 #i�
__OPTION_EGLIBC_BIG_MACROS
!= 1
272
__libc_lock_lock_�cursive_�
(
__libc_lock_�cursive_t
*);
273
libc_hidd�_��o
(
__libc_lock_lock_�cursive_�
);
275 #i�
__OPTION_EGLIBC_BIG_MACROS
276
#__libc_lock_lock_�cursive
(
NAME
) \
278 *
�lf
=
THREAD_SELF
; \
279 i�((
NAME
).
ow�r
!�
�lf
) \
281
`�l_lock
((
NAME
).
lock
,
LLL_PRIVATE
); \
282 (
NAME
).
ow�r
=
�lf
; \
284 ++(
NAME
).
�t
; \
285 } 0)
)
287
#__libc_lock_lock_�cursive
(
NAME
) \
288
`__libc_lock_lock_�cursive_�
(&(
NAME
))
)
291
#__libc_lock_lock_�cursive
(
NAME
) \
292
`__libc_maybe_��
(
__�h�ad_mu�x_lock
, (&(
NAME
).
mu�x
), 0)
)
296 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
297 #i�
__OPTION_EGLIBC_BIG_MACROS
!= 1
301
__libc_lock_�ylock_�
(
__libc_lock_t
*);
302
libc_hidd�_��o
(
__libc_lock_�ylock_�
);
304 #i�
__OPTION_EGLIBC_BIG_MACROS
305
#__libc_lock_�ylock
(
NAME
) \
306
`�l_�ylock
(
NAME
)
)
308
#__libc_lock_�ylock
(
NAME
) \
309
`__libc_lock_�ylock_�
(&(
NAME
))
)
312
#__libc_lock_�ylock
(
NAME
) \
313
`__libc_maybe_��
(
__�h�ad_mu�x_�ylock
, (&(
NAME
)), 0)
)
315
#__libc_rwlock_�yrdlock
(
NAME
) \
316
`__libc_maybe_��
(
__�h�ad_rwlock_�yrdlock
, (&(
NAME
)), 0)
)
317
#__libc_rwlock_�yw�ock
(
NAME
) \
318
`__libc_maybe_��
(
__�h�ad_rwlock_�yw�ock
, (&(
NAME
)), 0)
)
321 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
322 #i�
__OPTION_EGLIBC_BIG_MACROS
!= 1
326
__libc_lock_�ylock_�cursive_�
(
__libc_lock_�cursive_t
*);
327
libc_hidd�_��o
(
__libc_lock_�ylock_�cursive_�
);
329 #i�
__OPTION_EGLIBC_BIG_MACROS
330
#__libc_lock_�ylock_�cursive
(
NAME
) \
332
�su�
= 0; \
333 *
�lf
=
THREAD_SELF
; \
334 i�((
NAME
).
ow�r
!�
�lf
) \
336 i�(
`�l_�ylock
((
NAME
).
lock
) == 0) \
338 (
NAME
).
ow�r
=
�lf
; \
339 (
NAME
).
�t
= 1; \
342
�su�
=
EBUSY
; \
345 ++(
NAME
).
�t
; \
346
�su�
; \
347 })
)
349
#__libc_lock_�ylock_�cursive
(
NAME
) \
350
`__libc_lock_�ylock_�cursive_�
(&(
NAME
))
)
353
#__libc_lock_�ylock_�cursive
(
NAME
) \
354
`__libc_maybe_��
(
__�h�ad_mu�x_�ylock
, (&(
NAME
)), 0)
)
357
#__�ld_lock_�ylock_�cursive
(
NAME
) \
358
`__libc_maybe_��
(
__�h�ad_mu�x_�ylock
, (&(
NAME
).
mu�x
), 0)
)
361 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
362 #i�
__OPTION_EGLIBC_BIG_MACROS
!= 1
366
__libc_lock_u�ock_�
(
__libc_lock_t
*);
367
libc_hidd�_��o
(
__libc_lock_u�ock_�
);
369 #i�
__OPTION_EGLIBC_BIG_MACROS
370
#__libc_lock_u�ock
(
NAME
) \
371
`�l_u�ock
(
NAME
,
LLL_PRIVATE
)
)
373
#__libc_lock_u�ock
(
NAME
) \
374
`__libc_lock_u�ock_�
(&(
NAME
))
)
377
#__libc_lock_u�ock
(
NAME
) \
378
`__libc_maybe_��
(
__�h�ad_mu�x_u�ock
, (&(
NAME
)), 0)
)
380
#__libc_rwlock_u�ock
(
NAME
) \
381
`__libc_�f_��
(
__�h�ad_rwlock_u�ock
, (&(
NAME
)), 0)
)
384 #i�
def�ed
_LIBC
&& (!def�ed
NOT_IN_libc
|| def�ed
IS_IN_lib�h�ad
)
385 #i�
__OPTION_EGLIBC_BIG_MACROS
!= 1
389
__libc_lock_u�ock_�cursive_�
(
__libc_lock_�cursive_t
*);
390
libc_hidd�_��o
(
__libc_lock_u�ock_�cursive_�
);
392 #i�
__OPTION_EGLIBC_BIG_MACROS
394
#__libc_lock_u�ock_�cursive
(
NAME
) \
396 i�(--(
NAME
).
�t
== 0) \
398 (
NAME
).
ow�r
=
NULL
; \
399
`�l_u�ock
((
NAME
).
lock
,
LLL_PRIVATE
); \
401 } 0)
)
403
#__libc_lock_u�ock_�cursive
(
NAME
) \
404
`__libc_lock_u�ock_�cursive_�
(&(
NAME
))
)
407
#__libc_lock_u�ock_�cursive
(
NAME
) \
408
`__libc_maybe_��
(
__�h�ad_mu�x_u�ock
, (&(
NAME
)), 0)
)
411 #i�
def�ed
_LIBC
&& def�ed
SHARED
412
#__�ld_lock_de�u�_lock_�cursive
(
lock
) \
413 ++((
�h�ad_mu�x_t
*)(
lock
))->
__d�a
.
__cou�
;
)
415
#__�ld_lock_de�u�_u�ock_�cursive
(
lock
) \
416 --((
�h�ad_mu�x_t
*)(
lock
))->
__d�a
.
__cou�
;
)
418
#__�ld_lock_lock_�cursive
(
NAME
) \
419
`GL
(
dl_�ld_lock_�cursive
�(&(
NAME
).
mu�x
)
)
421
#__�ld_lock_u�ock_�cursive
(
NAME
) \
422
`GL
(
dl_�ld_u�ock_�cursive
�(&(
NAME
).
mu�x
)
)
424
#__�ld_lock_lock_�cursive
(
NAME
) \
425
`__libc_maybe_��
(
__�h�ad_mu�x_lock
, (&(
NAME
).
mu�x
), 0)
)
427
#__�ld_lock_u�ock_�cursive
(
NAME
) \
428
`__libc_maybe_��
(
__�h�ad_mu�x_u�ock
, (&(
NAME
).
mu�x
), 0)
)
432 #i�
PTHREAD_ONCE_INIT
== 0
435
#__libc_��_def�e
(
CLASS
,
NAME
) \
436
CLASS
�h�ad_��_t
NAME
)
438
#__libc_��_def�e
(
CLASS
,
NAME
) \
439
CLASS
�h�ad_��_t
NAME
=
PTHREAD_ONCE_INIT
)
443
#__libc_��
(
ONCE_CONTROL
,
INIT_FUNCTION
) \
445 i�(
`PTFAVAIL
(
__�h�ad_��
)) \
446
`__libc_�f_��_�ways
(
__�h�ad_��
, (&(
ONCE_CONTROL
), \
447
INIT_FUNCTION
)); \
448 i�((
ONCE_CONTROL
�=�
PTHREAD_ONCE_INIT
) { \
449
`INIT_FUNCTION
(); \
450 (
ONCE_CONTROL
) |= 2; \
452 } 0)
)
459
_�h�ad_��nup_push
(
_�h�ad_��nup_buf�r
*
buf�r
,
460 (*
rout�e
�(*), *
�g
);
461
`_�h�ad_��nup_p�
(
_�h�ad_��nup_buf�r
*
buf�r
,
462
execu�
);
463
`_�h�ad_��nup_push_de�r
(
_�h�ad_��nup_buf�r
*
buf�r
,
464 (*
rout�e
�(*), *
�g
);
465
`_�h�ad_��nup_p�_���e
(
_�h�ad_��nup_buf�r
*
buf�r
,
466
execu�
);
469
#__libc_��nup_�gi�_��t
(
DOIT
,
FCT
,
ARG
) \
470 {
_�h�ad_��nup_buf�r
_buf�r
; \
471
_ava�
; \
472 i�(
DOIT
) { \
473
_ava�
=
`PTFAVAIL
(
_�h�ad_��nup_push_de�r
); \
474 i�(
_ava�
) { \
475
`__libc_�f_��_�ways
(
_�h�ad_��nup_push_de�r
, (&
_buf�r
,
FCT
, \
476
ARG
)); \
478
_buf�r
.
__rout�e
= (
FCT
); \
479
_buf�r
.
__�g
= (
ARG
); \
482
_ava�
= 0; \
483 }
)
486
#__libc_��nup_�gi�_�d
(
DOIT
) \
487 i�(
_ava�
) { \
488
`__libc_�f_��_�ways
(
_�h�ad_��nup_p�_���e
, (&
_buf�r
,
DOIT
));\
489 } i�(
DOIT
) \
490
_buf�r
.
`__rout�e
(_buf�r.
__�g
); \
491
}
)
}
494
#__libc_��nup_�d
(
DOIT
) \
495 i�(
_ava�
) { \
496
`__libc_�f_��_�ways
(
_�h�ad_��nup_p�_���e
, (&
_buf�r
,
DOIT
));\
497 } i�(
DOIT
) \
498
_buf�r
.
`__rout�e
(_buf�r.
__�g
)
)
502
__ex��_�l�e
503
$__libc_��nup_rout�e
(
__�h�ad_��nup_�ame
*
f
)
505 i�(
f
->
__do_�
)
506
f
->
`__�n�l_rout�e
(f->
__�n�l_�g
);
507
}
}
509
#__libc_��nup_push
(
f�
,
�g
) \
511
__�h�ad_��nup_�ame
__��ame
\
512
`__��ibu�__
((
`__��nup__
(
__libc_��nup_rout�e
))) \
513 �{ .
__�n�l_rout�e
= (
f�
), .
__�n�l_�g
= (
�g
), \
514 .
__do_�
= 1 };
)
516
#__libc_��nup_p�
(
execu�
) \
517
__��ame
.
__do_�
= (
execu�
); \
518 } 0)
)
522
#__libc_key_���
(
KEY
,
DESTRUCTOR
) \
523
`__libc_�f_��
(
__�h�ad_key_���
, (
KEY
,
DESTRUCTOR
), 1)
)
526
#__libc_g��ecific
(
KEY
) \
527
`__libc_�f_��
(
__�h�ad_g��ecific
, (
KEY
),
NULL
)
)
530
#__libc_�t�ecific
(
KEY
,
VALUE
) \
531
`__libc_�f_��
(
__�h�ad_�t�ecific
, (
KEY
,
VALUE
), 0)
)
537
#__libc_�f�k
(
PREPARE
,
PARENT
,
CHILD
) \
538
`__�gi��_�f�k
(
PREPARE
,
PARENT
,
CHILD
,
NULL
)
)
539
__�gi��_�f�k
((*
__���e
) (),
540 (*
__���
) (),
541 (*
__ch�d
) (),
542 *
__dso_h�d�
);
547
`__�h�ad_mu�x_��
(
�h�ad_mu�x_t
*
__mu�x
,
548
__cڡ
�h�ad_mu�x��_t
*
__mu�x_��
);
550
`__�h�ad_mu�x_de�roy
(
�h�ad_mu�x_t
*
__mu�x
);
552
`__�h�ad_mu�x_�ylock
(
�h�ad_mu�x_t
*
__mu�x
);
554
`__�h�ad_mu�x_lock
(
�h�ad_mu�x_t
*
__mu�x
);
556
`__�h�ad_mu�x_u�ock
(
�h�ad_mu�x_t
*
__mu�x
);
558
`__�h�ad_mu�x��_��
(
�h�ad_mu�x��_t
*
__��
);
560
`__�h�ad_mu�x��_de�roy
(
�h�ad_mu�x��_t
*
__��
);
562
`__�h�ad_mu�x��_��y�
(
�h�ad_mu�x��_t
*
__��
,
563
__k�d
);
565 #ifde�
__USE_UNIX98
566
`__�h�ad_rwlock_��
(
�h�ad_rwlock_t
*
__rwlock
,
567
__cڡ
�h�ad_rwlock��_t
*
__��
);
569
`__�h�ad_rwlock_de�roy
(
�h�ad_rwlock_t
*
__rwlock
);
571
`__�h�ad_rwlock_rdlock
(
�h�ad_rwlock_t
*
__rwlock
);
573
`__�h�ad_rwlock_�yrdlock
(
�h�ad_rwlock_t
*
__rwlock
);
575
`__�h�ad_rwlock_w�ock
(
�h�ad_rwlock_t
*
__rwlock
);
577
`__�h�ad_rwlock_�yw�ock
(
�h�ad_rwlock_t
*
__rwlock
);
579
`__�h�ad_rwlock_u�ock
(
�h�ad_rwlock_t
*
__rwlock
);
582
`__�h�ad_key_���
(
�h�ad_key_t
*
__key
,
583 (*
__de�r_fun�i�
) (*));
585
`__�h�ad_�t�ecific
(
�h�ad_key_t
__key
,
586
__cڡ
*
__po��r
);
588
*
`__�h�ad_g��ecific
(
�h�ad_key_t
__key
);
590
`__�h�ad_��
(
�h�ad_��_t
*
__��_cڌ�
,
591 (*
__��_rout�e
) ());
593
`__�h�ad_�f�k
((*
__���e
) (),
594 (*
__���
) (),
595 (*
__ch�d
) ());
601 #i�de�
__NO_WEAK_PTHREAD_ALIASES
602 #ifde�
w�k_ex��
603 #i�
_LIBC
604
~<bp-sym.h
>
606
#BP_SYM
(
sym
�
)
sym
608
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x_��
))
609
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x_de�roy
))
610
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x_lock
))
611
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x_�ylock
))
612
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x_u�ock
))
613
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x��_��
))
614
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x��_de�roy
))
615
`w�k_ex��
(
$BP_SYM
(
__�h�ad_mu�x��_��y�
))
616
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_��
))
617
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_de�roy
))
618
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_rdlock
))
619
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_�yrdlock
))
620
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_w�ock
))
621
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_�yw�ock
))
622
`w�k_ex��
(
$BP_SYM
(
__�h�ad_rwlock_u�ock
))
623
`w�k_ex��
(
$BP_SYM
(
__�h�ad_key_���
))
624
`w�k_ex��
(
$BP_SYM
(
__�h�ad_�t�ecific
))
625
`w�k_ex��
(
$BP_SYM
(
__�h�ad_g��ecific
))
626
`w�k_ex��
(
$BP_SYM
(
__�h�ad_��
))
627
$w�k_ex��
(
__�h�ad_���lize
)
628
$w�k_ex��
(
__�h�ad_�f�k
)
629
`w�k_ex��
(
$BP_SYM
(
_�h�ad_��nup_push_de�r
))
630
`w�k_ex��
(
$BP_SYM
(
_�h�ad_��nup_p�_���e
))
631
`w�k_ex��
(
$BP_SYM
(
�h�ad_�t�n�l��e
))
633 #�agm�
w�k
__�h�ad_mu�x_��
634 #�agm�
w�k
__�h�ad_mu�x_de�roy
635 #�agm�
w�k
__�h�ad_mu�x_lock
636 #�agm�
w�k
__�h�ad_mu�x_�ylock
637 #�agm�
w�k
__�h�ad_mu�x_u�ock
638 #�agm�
w�k
__�h�ad_mu�x��_��
639 #�agm�
w�k
__�h�ad_mu�x��_de�roy
640 #�agm�
w�k
__�h�ad_mu�x��_��y�
641 #�agm�
w�k
__�h�ad_rwlock_de�roy
642 #�agm�
w�k
__�h�ad_rwlock_rdlock
643 #�agm�
w�k
__�h�ad_rwlock_�yrdlock
644 #�agm�
w�k
__�h�ad_rwlock_w�ock
645 #�agm�
w�k
__�h�ad_rwlock_�yw�ock
646 #�agm�
w�k
__�h�ad_rwlock_u�ock
647 #�agm�
w�k
__�h�ad_key_���
648 #�agm�
w�k
__�h�ad_�t�ecific
649 #�agm�
w�k
__�h�ad_g��ecific
650 #�agm�
w�k
__�h�ad_��
651 #�agm�
w�k
__�h�ad_���lize
652 #�agm�
w�k
__�h�ad_�f�k
653 #�agm�
w�k
_�h�ad_��nup_push_de�r
654 #�agm�
w�k
_�h�ad_��nup_p�_���e
655 #�agm�
w�k
�h�ad_�t�n�l��e
@/usr/include/bits/stdlib-ldbl.h
20 #i�de�
_STDLIB_H
24 #ifdef
__USE_ISOC99
25
__BEGIN_NAMESPACE_C99
26
$__LDBL_REDIR1_DECL
(
���d
,
��od
)
27
__END_NAMESPACE_C99
30 #ifde�
__USE_GNU
31
$__LDBL_REDIR1_DECL
(
���d_l
,
��od_l
)
34 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN_EXTENDED
35 #ifde�
__USE_MISC
36
$__LDBL_REDIR1_DECL
(
qecvt
,
ecvt
)
37
$__LDBL_REDIR1_DECL
(
qfcvt
,
fcvt
)
38
$__LDBL_REDIR1_DECL
(
qgcvt
,
gcvt
)
39
$__LDBL_REDIR1_DECL
(
qecvt_r
,
ecvt_r
)
40
$__LDBL_REDIR1_DECL
(
qfcvt_r
,
fcvt_r
)
@/usr/include/bits/stdlib.h
20 #i�de�
_STDLIB_H
24
*
$__���th_chk
(
__cڡ
*
__��ri�
__�me
,
25 *
__��ri�
__�s�ved
,
26
size_t
__�s�ved�n
�
__THROW
__wur
;
27
*
`__REDIRECT_NTH
(
__���th_��s
,
28 (
__cڡ
*
__��ri�
__�me
,
29 *
__��ri�
__�s�ved
),
���th
�
__wur
;
30
*
`__REDIRECT_NTH
(
__���th_chk_w�n
,
31 (
__cڡ
*
__��ri�
__�me
,
32 *
__��ri�
__�s�ved
,
33
size_t
__�s�ved�n
),
__���th_chk
�
__wur
34
`__w�ljr
("second�rgument of�ealpath must be�ither NULL or�t "
37
__ex��_�ways_�l�e
__wur
*
38
`__NTH
(
$���th
(
__cڡ
*
__��ri�
__�me
, *__��ri�
__�s�ved
))
40 i�(
`__bos
(
__�s�ved
�!�(
size_t
) -1)
42 #i�
def�ed
_LIBC_LIMITS_H_
&& def�ed
PATH_MAX
43 i�(
`__bos
(
__�s�ved
�<
PATH_MAX
)
44
`__���th_chk_w�n
(
__�me
,
__�s�ved
,
`__bos
(__resolved));
46
`__���th_chk
(
__�me
,
__�s�ved
,
`__bos
(__resolved));
49
`__���th_��s
(
__�me
,
__�s�ved
);
50
}
}
53
$__��ame_r_chk
(
__fd
, *
__buf
,
size_t
__bu�
,
54
size_t
__ėl
�
__THROW
`__n�nu�
((2));
55
`__REDIRECT_NTH
(
__��ame_r_��s
, (
__fd
, *
__buf
,
56
size_t
__bu�
),
��ame_r
)
57
`__n�nu�
((2));
58
`__REDIRECT_NTH
(
__��ame_r_chk_w�n
,
59 (
__fd
, *
__buf
,
size_t
__bu�
,
60
size_t
__ėl
),
__��ame_r_chk
)
61
`__n�nu�
((2)�
`__w�ljr
("ptsname_r called with buflen bigger�han "
64
__ex��_�ways_�l�e
65
`__NTH
(
$��ame_r
(
__fd
, *
__buf
,
size_t
__bu�
))
67 i�(
`__bos
(
__buf
�!�(
size_t
) -1)
69 i�(!
`__bu�t�_cڡ�t_p
(
__bu�
))
70
`__��ame_r_chk
(
__fd
,
__buf
,
__bu�
,
`__bos
(__buf));
71 i�(
__bu�
>
`__bos
(
__buf
))
72
`__��ame_r_chk_w�n
(
__fd
,
__buf
,
__bu�
,
`__bos
(__buf));
74
`__��ame_r_��s
(
__fd
,
__buf
,
__bu�
);
75
}
}
78
$__w�omb_chk
(*
__s
,
wch�_t
__wch�
,
size_t
__bu�
)
79
__THROW
__wur
;
80
`__REDIRECT_NTH
(
__w�omb_��s
, (*
__s
,
wch�_t
__wch�
),
81
w�omb
�
__wur
;
83
__ex��_�ways_�l�e
__wur
84
`__NTH
(
$w�omb
(*
__s
,
wch�_t
__wch�
))
89
#__STDLIB_MB_LEN_MAX
16
)
90 #i�
def�ed
MB_LEN_MAX
&& MB_LEN_MAX !�
__STDLIB_MB_LEN_MAX
93 i�(
`__bos
(
__s
�!�(
size_t
�-1 &&
__STDLIB_MB_LEN_MAX
> __bos (__s))
94
`__w�omb_chk
(
__s
,
__wch�
,
`__bos
(__s));
95
`__w�omb_��s
(
__s
,
__wch�
);
96
}
}
99
size_t
$__mb�owcs_chk
(
wch�_t
*
__��ri�
__d�
,
100
__cڡ
*
__��ri�
__�c
,
101
size_t
__�n
, size_�
__d��n
�
__THROW
;
102
size_t
`__REDIRECT_NTH
(
__mb�owcs_��s
,
103 (
wch�_t
*
__��ri�
__d�
,
104
__cڡ
*
__��ri�
__�c
,
105
size_t
__�n
),
mb�owcs
);
106
size_t
`__REDIRECT_NTH
(
__mb�owcs_chk_w�n
,
107 (
wch�_t
*
__��ri�
__d�
,
108
__cڡ
*
__��ri�
__�c
,
109
size_t
__�n
, size_�
__d��n
),
__mb�owcs_chk
)
110
`__w�ljr
("mbstowcs called with dst buffer smaller�han�en "
113
__ex��_�ways_�l�e
size_t
114
`__NTH
(
$mb�owcs
(
wch�_t
*
__��ri�
__d�
,
__cڡ
*__��ri�
__�c
,
115
size_t
__�n
))
117 i�(
`__bos
(
__d�
�!�(
size_t
) -1)
119 i�(!
`__bu�t�_cڡ�t_p
(
__�n
))
120
`__mb�owcs_chk
(
__d�
,
__�c
,
__�n
,
121
`__bos
(
__d�
�/ (
wch�_t
));
123 i�(
__�n
>
`__bos
(
__d�
�/ (
wch�_t
))
124
`__mb�owcs_chk_w�n
(
__d�
,
__�c
,
__�n
,
125
`__bos
(
__d�
�/ (
wch�_t
));
127
`__mb�owcs_��s
(
__d�
,
__�c
,
__�n
);
128
}
}
131
size_t
$__wc�ombs_chk
(*
__��ri�
__d�
,
132
__cڡ
wch�_t
*
__��ri�
__�c
,
133
size_t
__�n
, size_�
__d��n
�
__THROW
;
134
size_t
`__REDIRECT_NTH
(
__wc�ombs_��s
,
135 (*
__��ri�
__d�
,
136
__cڡ
wch�_t
*
__��ri�
__�c
,
137
size_t
__�n
),
wc�ombs
);
138
size_t
`__REDIRECT_NTH
(
__wc�ombs_chk_w�n
,
139 (*
__��ri�
__d�
,
140
__cڡ
wch�_t
*
__��ri�
__�c
,
141
size_t
__�n
, size_�
__d��n
),
__wc�ombs_chk
)
142
`__w�ljr
("wcstombs called with dst buffer smaller�han�en");
144
__ex��_�ways_�l�e
size_t
145
`__NTH
(
$wc�ombs
(*
__��ri�
__d�
,
__cڡ
wch�_t
*__��ri�
__�c
,
146
size_t
__�n
))
148 i�(
`__bos
(
__d�
�!�(
size_t
) -1)
150 i�(!
`__bu�t�_cڡ�t_p
(
__�n
))
151
`__wc�ombs_chk
(
__d�
,
__�c
,
__�n
,
`__bos
(__dst));
152 i�(
__�n
>
`__bos
(
__d�
))
153
`__wc�ombs_chk_w�n
(
__d�
,
__�c
,
__�n
,
`__bos
(__dst));
155
`__wc�ombs_��s
(
__d�
,
__�c
,
__�n
);
156
}
}
@/usr/include/bits/waitflags.h
20 #i�!
def�ed
_SYS_WAIT_H
&& !def�ed
_STDLIB_H
26
#WNOHANG
1
)
27
#WUNTRACED
2
)
30
#WSTOPPED
2
)
31
#WEXITED
4
)
32
#WCONTINUED
8
)
33
#WNOWAIT
0x01000000
)
35
#__WNOTHREAD
0x20000000
)
37
#__WALL
0x40000000
)
38
#__WCLONE
0x80000000
)
@/usr/include/bits/waitstatus.h
20 #i�!
def�ed
_SYS_WAIT_H
&& !def�ed
_STDLIB_H
29
#__WEXITSTATUS
(
��us
�(((��us�& 0xff00�>> 8)
)
32
#__WTERMSIG
(
��us
�((��us�& 0x7f)
)
35
#__WSTOPSIG
(
��us
�
`__WEXITSTATUS
(��us)
)
38
#__WIFEXITED
(
��us
�(
`__WTERMSIG
(��us�=�0)
)
41
#__WIFSIGNALED
(
��us
) \
42 (((sig�d �(((
��us
�& 0x7f�+ 1�>> 1�> 0)
)
45
#__WIFSTOPPED
(
��us
�(((��us�& 0xff�=�0x7f)
)
49 #ifde�
WCONTINUED
50
#__WIFCONTINUED
(
��us
�((��us�=�
__W_CONTINUED
)
)
54
#__WCOREDUMP
(
��us
�((��us�&
__WCOREFLAG
)
)
57
#__W_EXITCODE
(
�t
,
sig
�(ԑ�<< 8 | (sig))
)
58
#__W_STOPCODE
(
sig
�((sig�<< 8 | 0x7f)
)
59
#__W_CONTINUED
0xffff
)
60
#__WCOREFLAG
0x80
)
63 #ifdef
__USE_BSD
65
~<�d�n.h
>
67
uwa�
69
mw_��us
;
72 #if
__BYTE_ORDER
=�
__LITTLE_ENDIAN
73
m__w_�rmsig
:7;
74
m__w_c�edump
:1;
75
m__w_�tcode
:8;
78 #if
__BYTE_ORDER
=�
__BIG_ENDIAN
80
m__w_�tcode
:8;
81
m__w_c�edump
:1;
82
m__w_�rmsig
:7;
84 }
m__wa�_�rm��ed
;
87 #if
__BYTE_ORDER
=�
__LITTLE_ENDIAN
88
m__w_��v�
:8;
89
m__w_��sig
:8;
92 #if
__BYTE_ORDER
=�
__BIG_ENDIAN
94
m__w_��sig
:8;
95
m__w_��v�
:8;
97 }
m__wa�_�ݳd
;
100
#w_�rmsig
__wa�_�rm��ed
.
__w_�rmsig
)
101
#w_c�edump
__wa�_�rm��ed
.
__w_c�edump
)
102
#w_�tcode
__wa�_�rm��ed
.
__w_�tcode
)
103
#w_��sig
__wa�_�ݳd
.
__w_��sig
)
104
#w_��v�
__wa�_�ݳd
.
__w_��v�
)
@/usr/include/gconv.h
23 #i�de�
_GCONV_H
24
#_GCONV_H
1
)
26
~<�u�s.h
>
27
#__�ed_mb��e_t
)
28
#__�ed_w�t_t
)
29
~<wch�.h
>
30
#__�ed_size_t
)
31
#__�ed_wch�_t
)
32
~<�ddef.h
>
35
#__UNKNOWN_10646_CHAR
((
wch�_t
�0xfffd)
)
40
m__GCONV_OK
= 0,
41
m__GCONV_NOCONV
,
42
m__GCONV_NODB
,
43
m__GCONV_NOMEM
,
45
m__GCONV_EMPTY_INPUT
,
46
m__GCONV_FULL_OUTPUT
,
47
m__GCONV_ILLEGAL_INPUT
,
48
m__GCONV_INCOMPLETE_INPUT
,
50
m__GCONV_ILLEGAL_DESCRIPTOR
,
51
m__GCONV_INTERNAL_ERROR
58
m__GCONV_IS_LAST
= 0x0001,
59
m__GCONV_IGNORE_ERRORS
= 0x0002
64
g__gc�v_��
;
65
g__gc�v_��_d�a
;
66
g__gc�v_l�ded_obje�
;
67
g__gc�v_��s_d�a
;
71 (*
t__gc�v_f�
�(
t__gc�v_��
*,
t__gc�v_��_d�a
*,
72
t__cڡ
**, __const *,
73 **,
tsize_t
*, , );
76
$w�t_t
(*
t__gc�v_btowc_f�
�(
t__gc�v_��
*, );
79 (*
t__gc�v_��_f�
�(
t__gc�v_��
*);
80 (*
t__gc�v_�d_f�
�(
t__gc�v_��
*);
84 (*
t__gc�v_��s_f�
�(
t__gc�v_��
*,
85
t__gc�v_��_d�a
*, *,
86
t__cڡ
*,
87
t__cڡ
**,
88
t__cڡ
*, **,
89
tsize_t
*);
92 (*
t__gc�v_��s_cڋxt_f�
�(*,
t__cڡ
*,
93
t__cڡ
*,
97 (*
t__gc�v_��s_qu�y_f�
�(
t__cڡ
*, __const ***,
98
tsize_t
*);
101 (*
t__gc�v_��s_��_f�
) (**, const *);
102 (*
t__gc�v_��s_�d_f�
) (*);
104
s__gc�v_��s_d�a
107
__gc�v_��s_f�
__��s_f�
;
108
__gc�v_��s_cڋxt_f�
__��s_cڋxt_f�
;
109
__gc�v_��s_�d_f�
__��s_�d_f�
;
110 *
__d�a
;
111
__gc�v_��s_d�a
*
__�xt
;
116
s__gc�v_��
118
__gc�v_l�ded_obje�
*
__shlib_h�d�
;
119
__cڡ
*
__mod�me
;
121
__cou��
;
123 *
__�om_�me
;
124 *
__to_�me
;
126
__gc�v_f�
__f�
;
127
__gc�v_btowc_f�
__btowc_f�
;
128
__gc�v_��_f�
__��_f�
;
129
__gc�v_�d_f�
__�d_f�
;
133
__m�_�eded_�om
;
134
__max_�eded_�om
;
135
__m�_�eded_to
;
136
__max_�eded_to
;
139
__��eful
;
141 *
__d�a
;
146
s__gc�v_��_d�a
148 *
__outbuf
;
149 *
__outbu�nd
;
153
__�ags
;
157
__�vo�ti�_cou��
;
161
__����_u�
;
163
__mb��e_t
*
__���
;
164
__mb��e_t
__��e
;
168
__gc�v_��s_d�a
*
__��s
;
173
s__gc�v_�fo
175
size_t
__n��s
;
176
__gc�v_��
*
__��s
;
177
__ex�nsi�__
__gc�v_��_d�a
__d�a
__�ex�r
;
178 } *
t__gc�v_t
;
@/usr/include/gnu/stubs-32.h
6 #ifde�
_LIBC
7 #�r�
A�li�ti�s
may
n�
def�e
the
ma�o
_LIBC
10
#__�ub___k��l_co�
)
11
#__�ub___k��l_s�l
)
12
#__�ub___k��l_��
)
13
#__�ub_ch�ags
)
14
#__�ub_�ach
)
15
#__�ub_fch�ags
)
16
#__�ub_fd�ach
)
17
#__�ub_g�y
)
18
#__�ub_lchmod
)
19
#__�ub_�voke
)
20
#__�ub_��og�
)
21
#__�ub_sig�tu�
)
22
#__�ub_s�k
)
23
#__�ub_�ty
)
@/usr/include/gnu/stubs-64.h
6 #ifde�
_LIBC
7 #�r�
A�li�ti�s
may
n�
def�e
the
ma�o
_LIBC
10
#__�ub_bd�ush
)
11
#__�ub_ch�ags
)
12
#__�ub_�ach
)
13
#__�ub_fch�ags
)
14
#__�ub_fd�ach
)
15
#__�ub_g�msg
)
16
#__�ub_g�y
)
17
#__�ub_lchmod
)
18
#__�ub_putmsg
)
19
#__�ub_�voke
)
20
#__�ub_��og�
)
21
#__�ub_sig�tu�
)
22
#__�ub_s�k
)
23
#__�ub_�ty
)
@/usr/include/sys/types.h
24 #i�def
_SYS_TYPES_H
25
#_SYS_TYPES_H
1
)
27
~<�u�s.h
>
29
g__BEGIN_DECLS
31
~<b�s/ty�s.h
>
33 #ifdef
__USE_BSD
34 #i�de�
__u_ch�_def�ed
35
__u_ch�
tu_ch�
;
36
__u_sh�t
tu_sh�t
;
37
__u_�t
tu_�t
;
38
__u_l�g
tu_l�g
;
39
__quad_t
tquad_t
;
40
__u_quad_t
tu_quad_t
;
41
__fsid_t
tfsid_t
;
42
#__u_ch�_def�ed
)
46
__loff_t
tloff_t
;
48 #i�de�
__�o_t_def�ed
49 #i�de�
__USE_FILE_OFFSET64
50
__�o_t
t�o_t
;
52
__�o64_t
t�o_t
;
54
#__�o_t_def�ed
)
56 #i�
def�ed
__USE_LARGEFILE64
&& !def�ed
__�o64_t_def�ed
57
__�o64_t
t�o64_t
;
58
#__�o64_t_def�ed
)
61 #i�de�
__dev_t_def�ed
62
__dev_t
tdev_t
;
63
#__dev_t_def�ed
)
66 #i�de�
__gid_t_def�ed
67
__gid_t
tgid_t
;
68
#__gid_t_def�ed
)
71 #i�de�
__mode_t_def�ed
72
__mode_t
tmode_t
;
73
#__mode_t_def�ed
)
76 #i�de�
__ƚk_t_def�ed
77
__ƚk_t
tƚk_t
;
78
#__ƚk_t_def�ed
)
81 #i�de�
__uid_t_def�ed
82
__uid_t
tuid_t
;
83
#__uid_t_def�ed
)
86 #i�de�
__off_t_def�ed
87 #i�de�
__USE_FILE_OFFSET64
88
__off_t
toff_t
;
90
__off64_t
toff_t
;
92
#__off_t_def�ed
)
94 #i�
def�ed
__USE_LARGEFILE64
&& !def�ed
__off64_t_def�ed
95
__off64_t
toff64_t
;
96
#__off64_t_def�ed
)
99 #i�de�
__pid_t_def�ed
100
__pid_t
tpid_t
;
101
#__pid_t_def�ed
)
104 #i�(
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
�&& !def�ed
__id_t_def�ed
105
__id_t
tid_t
;
106
#__id_t_def�ed
)
109 #i�de�
__ssize_t_def�ed
110
__ssize_t
tssize_t
;
111
#__ssize_t_def�ed
)
114 #ifdef
__USE_BSD
115 #i�de�
__daddr_t_def�ed
116
__daddr_t
tdaddr_t
;
117
__�ddr_t
t�ddr_t
;
118
#__daddr_t_def�ed
)
122 #i�(
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
�&& !def�ed
__key_t_def�ed
123
__key_t
tkey_t
;
124
#__key_t_def�ed
)
127 #ifde�
__USE_XOPEN
128
#__�ed_�ock_t
)
130
#__�ed_time_t
)
131
#__�ed_tim�_t
)
132
#__�ed_�ockid_t
)
133
~<time.h
>
135 #ifde�
__USE_XOPEN
136 #i�de�
__u�c�ds_t_def�ed
137
__u�c�ds_t
tu�c�ds_t
;
138
#__u�c�ds_t_def�ed
)
140 #i�de�
__su�c�ds_t_def�ed
141
__su�c�ds_t
tsu�c�ds_t
;
142
#__su�c�ds_t_def�ed
)
146
#__�ed_size_t
)
147
~<�ddef.h
>
149 #ifde�
__USE_MISC
151
tul�g
;
152
tush�t
;
153
tu�t
;
158 #i�!
__GNUC_PREREQ
(2, 7)
161 #i�de�
__�t8_t_def�ed
162
#__�t8_t_def�ed
)
163
t�t8_t
;
164
t�t16_t
;
165
t�t32_t
;
166 #i�
__WORDSIZE
== 64
167
t�t64_t
;
168 #�i�
__GLIBC_HAVE_LONG_LONG
169
__ex�nsi�__
t�t64_t
;
174
tu_�t8_t
;
175
tu_�t16_t
;
176
tu_�t32_t
;
177 #i�
__WORDSIZE
== 64
178
tu_�t64_t
;
179 #�i�
__GLIBC_HAVE_LONG_LONG
180
__ex�nsi�__
tu_�t64_t
;
183
t�gi��_t
;
188
#__�tN_t
(
N
,
MODE
) \
189 ##
tN
##
t_t
t__��ibu�__
((
t__mode__
(
tMODE
)))
)
190
t__u_�tN_t
(
tN
,
tMODE
) \
191
tu_�t
##
tN
##
t_t
t__��ibu�__
((
t__mode__
(
tMODE
)))
)
193 #i�de�
t__�t8_t_def�ed
194
t__�t8_t_def�ed
)
195
t__�tN_t
(8,
t__QI__
);
196
__�tN_t
(16,
__HI__
);
197
__�tN_t
(32,
__SI__
);
198
__�tN_t
(64,
__DI__
);
201
__u_�tN_t
(8,
__QI__
);
202
__u_�tN_t
(16,
__HI__
);
203
__u_�tN_t
(32,
__SI__
);
204
__u_�tN_t
(64,
__DI__
);
206
t�gi��_t
t__��ibu�__
((
t__mode__
(
t__w�d__
)));
212
#__BIT_TYPES_DEFINED__
1
)
215 #ifdef
__USE_BSD
217
~<�d�n.h
>
220
~<sys/���.h
>
223
~<sys/sysma�os.h
>
227 #i�
def�ed
__USE_UNIX98
&& !def�ed
__blksize_t_def�ed
228
__blksize_t
tblksize_t
;
229
#__blksize_t_def�ed
)
233 #i�de�
__USE_FILE_OFFSET64
234 #i�de�
__blk�t_t_def�ed
235
__blk�t_t
tblk�t_t
;
236
#__blk�t_t_def�ed
)
238 #i�de�
__fsblk�t_t_def�ed
239
__fsblk�t_t
tfsblk�t_t
;
240
#__fsblk�t_t_def�ed
)
242 #i�de�
__fsf��t_t_def�ed
243
__fsf��t_t
tfsf��t_t
;
244
#__fsf��t_t_def�ed
)
247 #i�de�
__blk�t_t_def�ed
248
__blk�t64_t
tblk�t_t
;
249
#__blk�t_t_def�ed
)
251 #i�de�
__fsblk�t_t_def�ed
252
__fsblk�t64_t
tfsblk�t_t
;
253
#__fsblk�t_t_def�ed
)
255 #i�de�
__fsf��t_t_def�ed
256
__fsf��t64_t
tfsf��t_t
;
257
#__fsf��t_t_def�ed
)
261 #ifde�
__USE_LARGEFILE64
262
__blk�t64_t
tblk�t64_t
;
263
__fsblk�t64_t
tfsblk�t64_t
;
264
__fsf��t64_t
tfsf��t64_t
;
269 #i�
def�ed
__USE_POSIX199506
|| def�ed
__USE_UNIX98
270
~<b�s/�h�adty�s.h
>
273
g__END_DECLS
@/usr/include/wchar.h
24 #i�de�
_WCHAR_H
26 #i�!
def�ed
__�ed_mb��e_t
&& !def�ed
__�ed_w�t_t
27
#_WCHAR_H
1
)
28
~<�u�s.h
>
31 #ifde�
_WCHAR_H
33
#__�ed___FILE
)
34 #i�
def�ed
__USE_UNIX98
|| def�ed
__USE_XOPEN2K
35
#__�ed_FILE
)
37
~<�dio.h
>
39
#__�ed___va_li�
)
40
~<�d�g.h
>
42
~<b�s/wch�.h
>
45
#__�ed_size_t
)
46
#__�ed_wch�_t
)
47
#__�ed_NULL
)
49 #i�
def�ed
_WCHAR_H
|| def�ed
__�ed_w�t_t
|| !def�ed
__WINT_TYPE__
50 #unde�
__�ed_w�t_t
51
#__�ed_w�t_t
)
52
~<�ddef.h
>
55 #i�
def�ed
__�lu�lus
&&
__GNUC_PREREQ
(4, 4)
56
#__CORRECT_ISO_CPP_WCHAR_H_PROTO
)
61 #i�de�
_WINT_T
66
#_WINT_T
)
67
tw�t_t
;
71 #i�
def�ed
__�lu�lus
&& def�ed
_GLIBCPP_USE_NAMESPACES
\
72 &&
def�ed
__WINT_TYPE__
73
__BEGIN_NAMESPACE_STD
74
__WINT_TYPE__
tw�t_t
;
75
g__END_NAMESPACE_STD
80 #i�(
def�ed
_WCHAR_H
|| def�ed
__�ed_mb��e_t
�&& !def�ed
__mb��e_t_def�ed
81
#__mb��e_t_def�ed
1
)
85
m__cou�
;
88 #ifde�
__WINT_TYPE__
89
__WINT_TYPE__
m__wch
;
91
w�t_t
m__wch
;
93
m__wchb
[4];
94 }
m__v�ue
;
95 }
t__mb��e_t
;
97 #unde�
__�ed_mb��e_t
102 #ifde�
_WCHAR_H
104
__BEGIN_NAMESPACE_C99
106
__mb��e_t
tmb��e_t
;
107
g__END_NAMESPACE_C99
108 #ifde�
__USE_GNU
109
$__USING_NAMESPACE_C99
(
mb��e_t
)
112 #i�de�
WCHAR_MIN
114
#WCHAR_MIN
__WCHAR_MIN
)
115
#WCHAR_MAX
__WCHAR_MAX
)
118 #i�de�
WEOF
119
#WEOF
(0xffffffffu)
)
124 #i�
def�ed
__USE_XOPEN
&& !def�ed
__USE_UNIX98
125
~<w�y�.h
>
129
__BEGIN_DECLS
131
__BEGIN_NAMESPACE_STD
134
tm
;
135
__END_NAMESPACE_STD
139
$__USING_NAMESPACE_STD
(
tm
)
142
__BEGIN_NAMESPACE_STD
144
wch�_t
*
$wcs�y
(
wch�_t
*
__��ri�
__de�
,
145
__cڡ
wch�_t
*
__��ri�
__�c
�
__THROW
;
147
wch�_t
*
$wc��y
(
wch�_t
*
__��ri�
__de�
,
148
__cڡ
wch�_t
*
__��ri�
__�c
,
size_t
__n
)
149
__THROW
;
152
wch�_t
*
$wcs�t
(
wch�_t
*
__��ri�
__de�
,
153
__cڡ
wch�_t
*
__��ri�
__�c
�
__THROW
;
155
wch�_t
*
$wc��t
(
wch�_t
*
__��ri�
__de�
,
156
__cڡ
wch�_t
*
__��ri�
__�c
,
size_t
__n
)
157
__THROW
;
160
$wcscmp
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
)
161
__THROW
__��ibu�_pu�__
;
163
$wc�cmp
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
,
size_t
__n
)
164
__THROW
__��ibu�_pu�__
;
165
__END_NAMESPACE_STD
167 #ifde�
__USE_XOPEN2K8
169
$wcs��cmp
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
�
__THROW
;
172
$wc���cmp
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
,
173
size_t
__n
�
__THROW
;
177
~<xlo��.h
>
179
$wcs��cmp_l
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
,
180
__lo��_t
__loc
�
__THROW
;
182
$wc���cmp_l
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
,
183
size_t
__n
,
__lo��_t
__loc
�
__THROW
;
186
__BEGIN_NAMESPACE_STD
189
$wcsc�l
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
�
__THROW
;
193
size_t
$wcsx�m
(
wch�_t
*
__��ri�
__s1
,
194
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
�
__THROW
;
195
__END_NAMESPACE_STD
197 #ifde�
__USE_XOPEN2K8
203
$wcsc�l_l
(
__cڡ
wch�_t
*
__s1
, __cڡ wch�_�*
__s2
,
204
__lo��_t
__loc
�
__THROW
;
209
size_t
$wcsx�m_l
(
wch�_t
*
__s1
,
__cڡ
wch�_�*
__s2
,
210
size_t
__n
,
__lo��_t
__loc
�
__THROW
;
213
wch�_t
*
$wcsdup
(
__cڡ
wch�_t
*
__s
�
__THROW
__��ibu�_m�loc__
;
216
__BEGIN_NAMESPACE_STD
218 #ifde�
__CORRECT_ISO_CPP_WCHAR_H_PROTO
219
"C++"
wch�_t
*
$wcschr
(
wch�_t
*
__wcs
, wch�_�
__wc
)
220
__THROW
`__asm
("wcschr"�
__��ibu�_pu�__
;
221
"C++"
__cڡ
wch�_t
*
$wcschr
(
__cڡ
wch�_t
*
__wcs
, wch�_�
__wc
)
222
__THROW
`__asm
("wcschr"�
__��ibu�_pu�__
;
224
wch�_t
*
$wcschr
(
__cڡ
wch�_t
*
__wcs
, wch�_�
__wc
)
225
__THROW
__��ibu�_pu�__
;
228 #ifde�
__CORRECT_ISO_CPP_WCHAR_H_PROTO
229
"C++"
wch�_t
*
$wc�chr
(
wch�_t
*
__wcs
, wch�_�
__wc
)
230
__THROW
`__asm
("wc�chr"�
__��ibu�_pu�__
;
231
"C++"
__cڡ
wch�_t
*
$wc�chr
(
__cڡ
wch�_t
*
__wcs
, wch�_�
__wc
)
232
__THROW
`__asm
("wc�chr"�
__��ibu�_pu�__
;
234
wch�_t
*
$wc�chr
(
__cڡ
wch�_t
*
__wcs
, wch�_�
__wc
)
235
__THROW
__��ibu�_pu�__
;
237
__END_NAMESPACE_STD
239 #ifde�
__USE_GNU
242
wch�_t
*
$wcsch�ul
(
__cڡ
wch�_t
*
__s
, wch�_�
__wc
)
243
__THROW
__��ibu�_pu�__
;
246
__BEGIN_NAMESPACE_STD
249
size_t
$wcsc�n
(
__cڡ
wch�_t
*
__wcs
, __cڡ wch�_�*
__�je�
)
250
__THROW
__��ibu�_pu�__
;
253
size_t
$wcs�n
(
__cڡ
wch�_t
*
__wcs
, __cڡ wch�_�*
__ac��
)
254
__THROW
__��ibu�_pu�__
;
256 #ifde�
__CORRECT_ISO_CPP_WCHAR_H_PROTO
257
"C++"
wch�_t
*
$wc�brk
(
wch�_t
*
__wcs
,
__cڡ
wch�_�*
__ac��
)
258
__THROW
`__asm
("wc�brk"�
__��ibu�_pu�__
;
259
"C++"
__cڡ
wch�_t
*
$wc�brk
(
__cڡ
wch�_t
*
__wcs
,
260
__cڡ
wch�_t
*
__ac��
)
261
__THROW
`__asm
("wc�brk"�
__��ibu�_pu�__
;
263
wch�_t
*
$wc�brk
(
__cڡ
wch�_t
*
__wcs
, __cڡ wch�_�*
__ac��
)
264
__THROW
__��ibu�_pu�__
;
267 #ifde�
__CORRECT_ISO_CPP_WCHAR_H_PROTO
268
"C++"
wch�_t
*
$wcs�r
(
wch�_t
*
__hay�ack
,
__cڡ
wch�_�*
__�ed�
)
269
__THROW
`__asm
("wcs�r"�
__��ibu�_pu�__
;
270
"C++"
__cڡ
wch�_t
*
$wcs�r
(
__cڡ
wch�_t
*
__hay�ack
,
271
__cڡ
wch�_t
*
__�ed�
)
272
__THROW
`__asm
("wcs�r"�
__��ibu�_pu�__
;
274
wch�_t
*
$wcs�r
(
__cڡ
wch�_t
*
__hay�ack
, __cڡ wch�_�*
__�ed�
)
275
__THROW
__��ibu�_pu�__
;
279
wch�_t
*
$wc�ok
(
wch�_t
*
__��ri�
__s
,
280
__cڡ
wch�_t
*
__��ri�
__d�im
,
281
wch�_t
**
__��ri�
__�r
�
__THROW
;
284
size_t
$wc��
(
__cڡ
wch�_t
*
__s
�
__THROW
__��ibu�_pu�__
;
285
__END_NAMESPACE_STD
287 #ifde�
__USE_XOPEN
289 #ifde�
__CORRECT_ISO_CPP_WCHAR_H_PROTO
290
"C++"
wch�_t
*
$wcswcs
(
wch�_t
*
__hay�ack
,
__cڡ
wch�_�*
__�ed�
)
291
__THROW
`__asm
("wcswcs"�
__��ibu�_pu�__
;
292
"C++"
__cڡ
wch�_t
*
$wcswcs
(
__cڡ
wch�_t
*
__hay�ack
,
293
__cڡ
wch�_t
*
__�ed�
)
294
__THROW
`__asm
("wcswcs"�
__��ibu�_pu�__
;
296
wch�_t
*
$wcswcs
(
__cڡ
wch�_t
*
__hay�ack
, __cڡ wch�_�*
__�ed�
)
297
__THROW
__��ibu�_pu�__
;
301 #ifde�
__USE_XOPEN2K8
303
size_t
$wc��n
(
__cڡ
wch�_t
*
__s
,
size_t
__max�n
)
304
__THROW
__��ibu�_pu�__
;
308
__BEGIN_NAMESPACE_STD
310 #ifde�
__CORRECT_ISO_CPP_WCHAR_H_PROTO
311
"C++"
wch�_t
*
$wmemchr
(
wch�_t
*
__s
, wch�_�
__c
,
size_t
__n
)
312
__THROW
`__asm
("wmemchr"�
__��ibu�_pu�__
;
313
"C++"
__cڡ
wch�_t
*
$wmemchr
(
__cڡ
wch�_t
*
__s
, wch�_�
__c
,
314
size_t
__n
)
315
__THROW
`__asm
("wmemchr"�
__��ibu�_pu�__
;
317
wch�_t
*
$wmemchr
(
__cڡ
wch�_t
*
__s
, wch�_�
__c
,
size_t
__n
)
318
__THROW
__��ibu�_pu�__
;
322
$wmemcmp
(
__cڡ
wch�_t
*
__��ri�
__s1
,
323
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
)
324
__THROW
__��ibu�_pu�__
;
327
wch�_t
*
$wmem�y
(
wch�_t
*
__��ri�
__s1
,
328
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
�
__THROW
;
332
wch�_t
*
$wmemmove
(
wch�_t
*
__s1
,
__cڡ
wch�_�*
__s2
,
size_t
__n
)
333
__THROW
;
336
wch�_t
*
$wmem�t
(
wch�_t
*
__s
, wch�_�
__c
,
size_t
__n
�
__THROW
;
337
__END_NAMESPACE_STD
339 #ifde�
__USE_GNU
342
wch�_t
*
$wmemp�y
(
wch�_t
*
__��ri�
__s1
,
343
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
)
344
__THROW
;
348
__BEGIN_NAMESPACE_STD
351
w�t_t
$btowc
(
__c
�
__THROW
;
355
$w�ob
(
w�t_t
__c
�
__THROW
;
359
$mbs��
(
__cڡ
mb��e_t
*
__ps
�
__THROW
__��ibu�_pu�__
;
363
size_t
$mb�owc
(
wch�_t
*
__��ri�
__pwc
,
364
__cڡ
*
__��ri�
__s
,
size_t
__n
,
365
mb��e_t
*
__p
�
__THROW
;
368
size_t
$w�tomb
(*
__��ri�
__s
,
wch�_t
__wc
,
369
mb��e_t
*
__��ri�
__ps
�
__THROW
;
372
size_t
$__mb��
(
__cڡ
*
__��ri�
__s
,
size_t
__n
,
373
mb��e_t
*
__��ri�
__ps
�
__THROW
;
374
size_t
$mb��
(
__cڡ
*
__��ri�
__s
,
size_t
__n
,
375
mb��e_t
*
__��ri�
__ps
�
__THROW
;
376
__END_NAMESPACE_STD
378 #ifde�
__USE_EXTERN_INLINES
384
w�t_t
$__btowc_��s
(
__c
�
`__asm
("btowc");
385
__ex��_�l�e
w�t_t
386
`__NTH
(
$btowc
(
__c
))
387 { (
`__bu�t�_cڡ�t_p
(
__c
) && __c >= '\0' && __c <= '\x7f'
388 ? (
w�t_t
�
__c
:
`__btowc_��s
(__c));
}
}
390
$__w�ob_��s
(
w�t_t
__c
�
`__asm
("wctob");
391
__ex��_�l�e
392
`__NTH
(
$w�ob
(
w�t_t
__wc
))
393 { (
`__bu�t�_cڡ�t_p
(
__wc
�&& __w�>�
L
'\0' && __wc <= L'\x7f'
394 ? (�
__wc
:
`__w�ob_��s
(__wc));
}
}
396
__ex��_�l�e
size_t
397
__NTH
(
$mb��
(
__cڡ
*
__��ri�
__s
,
size_t
__n
,
398
mb��e_t
*
__��ri�
__ps
))
399 { (
__ps
!�
NULL
400 ?
`mb�owc
(
NULL
,
__s
,
__n
,
__ps
�:
`__mb��
(__s, __n, NULL));
}
}
403
__BEGIN_NAMESPACE_STD
406
size_t
$mb�towcs
(
wch�_t
*
__��ri�
__d�
,
407
__cڡ
**
__��ri�
__�c
,
size_t
__�n
,
408
mb��e_t
*
__��ri�
__ps
�
__THROW
;
412
size_t
$wc�tombs
(*
__��ri�
__d�
,
413
__cڡ
wch�_t
**
__��ri�
__�c
,
size_t
__�n
,
414
mb��e_t
*
__��ri�
__ps
�
__THROW
;
415
__END_NAMESPACE_STD
418 #ifdef
__USE_XOPEN2K8
421
size_t
$mb��owcs
(
wch�_t
*
__��ri�
__d�
,
422
__cڡ
**
__��ri�
__�c
,
size_t
__nmc
,
423
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
�
__THROW
;
427
size_t
$wc��ombs
(*
__��ri�
__d�
,
428
__cڡ
wch�_t
**
__��ri�
__�c
,
429
size_t
__nwc
, size_�
__�n
,
430
mb��e_t
*
__��ri�
__ps
�
__THROW
;
435 #ifde�
__USE_XOPEN
437
$wcwidth
(
wch�_t
__c
�
__THROW
;
441
$wcswidth
(
__cڡ
wch�_t
*
__s
,
size_t
__n
�
__THROW
;
445
__BEGIN_NAMESPACE_STD
448
$wc�od
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
449
wch�_t
**
__��ri�
__�d�r
�
__THROW
;
450
__END_NAMESPACE_STD
452 #ifde�
__USE_ISOC99
453
__BEGIN_NAMESPACE_C99
455
$wc�of
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
456
wch�_t
**
__��ri�
__�d�r
�
__THROW
;
457
$wc��d
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
458
wch�_t
**
__��ri�
__�d�r
�
__THROW
;
459
__END_NAMESPACE_C99
463
__BEGIN_NAMESPACE_STD
466
$wc��
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
467
wch�_t
**
__��ri�
__�d�r
,
__ba�
�
__THROW
;
471
$wc�oul
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
472
wch�_t
**
__��ri�
__�d�r
,
__ba�
)
473
__THROW
;
474
__END_NAMESPACE_STD
476 #i�
def�ed
__USE_ISOC99
|| (def�ed
__GNUC__
&& def�ed
__USE_GNU
)
477
__BEGIN_NAMESPACE_C99
480
__ex�nsi�__
481
$wc��l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
482
wch�_t
**
__��ri�
__�d�r
,
__ba�
)
483
__THROW
;
487
__ex�nsi�__
488
$wc�ou�
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
489
wch�_t
**
__��ri�
__�d�r
,
490
__ba�
�
__THROW
;
491
__END_NAMESPACE_C99
494 #i�
def�ed
__GNUC__
&& def�ed
__USE_GNU
497
__ex�nsi�__
498
$wc�oq
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
499
wch�_t
**
__��ri�
__�d�r
,
__ba�
)
500
__THROW
;
504
__ex�nsi�__
505
$wc�ouq
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
506
wch�_t
**
__��ri�
__�d�r
,
507
__ba�
�
__THROW
;
510 #ifde�
__USE_GNU
524
~<xlo��.h
>
528
$wc��_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
529
wch�_t
**
__��ri�
__�d�r
,
__ba�
,
530
__lo��_t
__loc
�
__THROW
;
532
$wc�oul_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
533
wch�_t
**
__��ri�
__�d�r
,
534
__ba�
,
__lo��_t
__loc
�
__THROW
;
536
__ex�nsi�__
537
$wc��l_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
538
wch�_t
**
__��ri�
__�d�r
,
539
__ba�
,
__lo��_t
__loc
�
__THROW
;
541
__ex�nsi�__
542
$wc�ou�_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
543
wch�_t
**
__��ri�
__�d�r
,
544
__ba�
,
__lo��_t
__loc
)
545
__THROW
;
547
$wc�od_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
548
wch�_t
**
__��ri�
__�d�r
,
__lo��_t
__loc
)
549
__THROW
;
551
$wc�of_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
552
wch�_t
**
__��ri�
__�d�r
,
__lo��_t
__loc
)
553
__THROW
;
555
$wc��d_l
(
__cڡ
wch�_t
*
__��ri�
__Ō
,
556
wch�_t
**
__��ri�
__�d�r
,
557
__lo��_t
__loc
�
__THROW
;
561 #ifdef
__USE_XOPEN2K8
564
wch�_t
*
$w��y
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
�
__THROW
;
568
wch�_t
*
$w�n�y
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
,
size_t
__n
)
569
__THROW
;
575 #ifdef
__USE_XOPEN2K8
578
__FILE
*
$ݒ_wmem��am
(
wch�_t
**
__bu�oc
,
size_t
*
__siz�oc
�
__THROW
;
581 #i�
def�ed
__USE_ISOC95
|| def�ed
__USE_UNIX98
582
__BEGIN_NAMESPACE_STD
585
$fwide
(
__FILE
*
__�
,
__mode
�
__THROW
;
592
`fw��tf
(
__FILE
*
__��ri�
__��am
,
593
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
599
`w��tf
(
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
602
$sw��tf
(
wch�_t
*
__��ri�
__s
,
size_t
__n
,
603
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
604
__THROW
;
610
`vfw��tf
(
__FILE
*
__��ri�
__s
,
611
__cڡ
wch�_t
*
__��ri�
__f�m�
,
612
__gnuc_va_li�
__�g
)
618
`vw��tf
(
__cڡ
wch�_t
*
__��ri�
__f�m�
,
619
__gnuc_va_li�
__�g
)
623
$vsw��tf
(
wch�_t
*
__��ri�
__s
,
size_t
__n
,
624
__cڡ
wch�_t
*
__��ri�
__f�m�
,
625
__gnuc_va_li�
__�g
)
626
__THROW
;
633
`fws�nf
(
__FILE
*
__��ri�
__��am
,
634
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
640
`ws�nf
(
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
643
$sws�nf
(
__cڡ
wch�_t
*
__��ri�
__s
,
644
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
645
__THROW
;
647 #i�
def�ed
__USE_ISOC99
&& !def�ed
__USE_GNU
\
648 && (!
def�ed
__LDBL_COMPAT
|| !def�ed
__REDIRECT
) \
649 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
650 #ifde�
__REDIRECT
654
`__REDIRECT
(
fws�nf
, (
__FILE
*
__��ri�
__��am
,
655
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...),
656
__isoc99_fws�nf
)
658
`__REDIRECT
(
ws�nf
, (
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...),
659
__isoc99_ws�nf
)
661
`__REDIRECT
(
sws�nf
, (
__cڡ
wch�_t
*
__��ri�
__s
,
662
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...),
663
__isoc99_sws�nf
)
664
__THROW
;
666
`__isoc99_fws�nf
(
__FILE
*
__��ri�
__��am
,
667
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...);
668
`__isoc99_ws�nf
(
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...);
669
$__isoc99_sws�nf
(
__cڡ
wch�_t
*
__��ri�
__s
,
670
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
671
__THROW
;
672
#fws�nf
__isoc99_fws�nf
)
673
#ws�nf
__isoc99_ws�nf
)
674
#sws�nf
__isoc99_sws�nf
)
678
__END_NAMESPACE_STD
681 #ifde�
__USE_ISOC99
682
__BEGIN_NAMESPACE_C99
687
`vfws�nf
(
__FILE
*
__��ri�
__s
,
688
__cڡ
wch�_t
*
__��ri�
__f�m�
,
689
__gnuc_va_li�
__�g
)
695
`vws�nf
(
__cڡ
wch�_t
*
__��ri�
__f�m�
,
696
__gnuc_va_li�
__�g
)
699
$vsws�nf
(
__cڡ
wch�_t
*
__��ri�
__s
,
700
__cڡ
wch�_t
*
__��ri�
__f�m�
,
701
__gnuc_va_li�
__�g
)
702
__THROW
;
704 #i�!
def�ed
__USE_GNU
\
705 && (!
def�ed
__LDBL_COMPAT
|| !def�ed
__REDIRECT
) \
706 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
707 #ifde�
__REDIRECT
708
`__REDIRECT
(
vfws�nf
, (
__FILE
*
__��ri�
__s
,
709
__cڡ
wch�_t
*
__��ri�
__f�m�
,
710
__gnuc_va_li�
__�g
),
__isoc99_vfws�nf
)
712
`__REDIRECT
(
vws�nf
, (
__cڡ
wch�_t
*
__��ri�
__f�m�
,
713
__gnuc_va_li�
__�g
),
__isoc99_vws�nf
)
715
`__REDIRECT
(
vsws�nf
, (
__cڡ
wch�_t
*
__��ri�
__s
,
716
__cڡ
wch�_t
*
__��ri�
__f�m�
,
717
__gnuc_va_li�
__�g
),
__isoc99_vsws�nf
)
718
__THROW
;
720
`__isoc99_vfws�nf
(
__FILE
*
__��ri�
__s
,
721
__cڡ
wch�_t
*
__��ri�
__f�m�
,
722
__gnuc_va_li�
__�g
);
723
`__isoc99_vws�nf
(
__cڡ
wch�_t
*
__��ri�
__f�m�
,
724
__gnuc_va_li�
__�g
);
725
$__isoc99_vsws�nf
(
__cڡ
wch�_t
*
__��ri�
__s
,
726
__cڡ
wch�_t
*
__��ri�
__f�m�
,
727
__gnuc_va_li�
__�g
�
__THROW
;
728
#vfws�nf
__isoc99_vfws�nf
)
729
#vws�nf
__isoc99_vws�nf
)
730
#vsws�nf
__isoc99_vsws�nf
)
734
__END_NAMESPACE_C99
738
__BEGIN_NAMESPACE_STD
743
w�t_t
`fg�wc
(
__FILE
*
__��am
);
744
w�t_t
`g�wc
(
__FILE
*
__��am
);
750
w�t_t
`g�wch�
();
757
w�t_t
`�utwc
(
wch�_t
__wc
,
__FILE
*
__��am
);
758
w�t_t
`putwc
(
wch�_t
__wc
,
__FILE
*
__��am
);
764
w�t_t
`putwch�
(
wch�_t
__wc
);
772
wch�_t
*
`fg�ws
(wch�_�*
__��ri�
__ws
,
__n
,
773
__FILE
*
__��ri�
__��am
);
779
`�utws
(
__cڡ
wch�_t
*
__��ri�
__ws
,
780
__FILE
*
__��ri�
__��am
);
787
w�t_t
`ung�wc
(w�t_�
__wc
,
__FILE
*
__��am
);
788
__END_NAMESPACE_STD
791 #ifde�
__USE_GNU
799
w�t_t
`g�wc_u�ocked
(
__FILE
*
__��am
);
800
w�t_t
`g�wch�_u�ocked
();
808
w�t_t
`fg�wc_u�ocked
(
__FILE
*
__��am
);
816
w�t_t
`�utwc_u�ocked
(
wch�_t
__wc
,
__FILE
*
__��am
);
825
w�t_t
`putwc_u�ocked
(
wch�_t
__wc
,
__FILE
*
__��am
);
826
w�t_t
`putwch�_u�ocked
(
wch�_t
__wc
);
835
wch�_t
*
`fg�ws_u�ocked
(wch�_�*
__��ri�
__ws
,
__n
,
836
__FILE
*
__��ri�
__��am
);
844
`�utws_u�ocked
(
__cڡ
wch�_t
*
__��ri�
__ws
,
845
__FILE
*
__��ri�
__��am
);
849
__BEGIN_NAMESPACE_C99
853
size_t
$wcs�ime
(
wch�_t
*
__��ri�
__s
,
size_t
__maxsize
,
854
__cڡ
wch�_t
*
__��ri�
__f�m�
,
855
__cڡ
tm
*
__��ri�
__�
�
__THROW
;
856
__END_NAMESPACE_C99
858 #ifde�
__USE_GNU
859
~<xlo��.h
>
863
size_t
$wcs�ime_l
(
wch�_t
*
__��ri�
__s
,
size_t
__maxsize
,
864
__cڡ
wch�_t
*
__��ri�
__f�m�
,
865
__cڡ
tm
*
__��ri�
__�
,
866
__lo��_t
__loc
�
__THROW
;
875 #i�
def�ed
__USE_UNIX98
&& !def�ed
__USE_GNU
876
#__�ed_iswxxx
)
877
~<w�y�.h
>
881 #i�
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
882
~<b�s/wch�2.h
>
885 #ifde�
__LDBL_COMPAT
886
~<b�s/wch�-ldbl.h
>
889
__END_DECLS
897 #unde�
__�ed_mb��e_t
898 #unde�
__�ed_w�t_t
@/usr/include/bits/pthreadtypes.h
20 #i�de�
_BITS_PTHREADTYPES_H
21
#_BITS_PTHREADTYPES_H
1
)
23
~<b�s/w�dsize.h
>
25 #i�
__WORDSIZE
== 64
26
#__SIZEOF_PTHREAD_ATTR_T
56
)
27
#__SIZEOF_PTHREAD_MUTEX_T
40
)
28
#__SIZEOF_PTHREAD_MUTEXATTR_T
4
)
29
#__SIZEOF_PTHREAD_COND_T
48
)
30
#__SIZEOF_PTHREAD_CONDATTR_T
4
)
31
#__SIZEOF_PTHREAD_RWLOCK_T
56
)
32
#__SIZEOF_PTHREAD_RWLOCKATTR_T
8
)
33
#__SIZEOF_PTHREAD_BARRIER_T
32
)
34
#__SIZEOF_PTHREAD_BARRIERATTR_T
4
)
36
#__SIZEOF_PTHREAD_ATTR_T
36
)
37
#__SIZEOF_PTHREAD_MUTEX_T
24
)
38
#__SIZEOF_PTHREAD_MUTEXATTR_T
4
)
39
#__SIZEOF_PTHREAD_COND_T
48
)
40
#__SIZEOF_PTHREAD_CONDATTR_T
4
)
41
#__SIZEOF_PTHREAD_RWLOCK_T
32
)
42
#__SIZEOF_PTHREAD_RWLOCKATTR_T
8
)
43
#__SIZEOF_PTHREAD_BARRIER_T
20
)
44
#__SIZEOF_PTHREAD_BARRIERATTR_T
4
)
50
t�h�ad_t
;
55
m__size
[
__SIZEOF_PTHREAD_ATTR_T
];
56
m__�ign
;
57 }
t�h�ad_��_t
;
60 #i�
__WORDSIZE
== 64
61
s__�h�ad_����_li�
63
__�h�ad_����_li�
*
m__�ev
;
64
__�h�ad_����_li�
*
m__�xt
;
65 }
t__�h�ad_li�_t
;
67
s__�h�ad_����_�i�
69
__�h�ad_����_�i�
*
m__�xt
;
70 }
t__�h�ad_�i�_t
;
78
s__�h�ad_mu�x_s
80
m__lock
;
81
m__cou�
;
82
m__ow�r
;
83 #i�
__WORDSIZE
== 64
84
m__nu�rs
;
88
m__k�d
;
89 #i�
__WORDSIZE
== 64
90
m__��s
;
91
__�h�ad_li�_t
m__li�
;
92
#__PTHREAD_MUTEX_HAVE_PREV
1
)
94
m__nu�rs
;
95
__ex�nsi�__
union
97
m__��s
;
98
__�h�ad_�i�_t
m__li�
;
101 }
m__d�a
;
102
m__size
[
__SIZEOF_PTHREAD_MUTEX_T
];
103
m__�ign
;
104 }
t�h�ad_mu�x_t
;
108
m__size
[
__SIZEOF_PTHREAD_MUTEXATTR_T
];
109
m__�ign
;
110 }
t�h�ad_mu�x��_t
;
119
m__lock
;
120
m__fu�x
;
121
__ex�nsi�__
m__tٮ_�q
;
122
__ex�nsi�__
m__wakeup_�q
;
123
__ex�nsi�__
m__wok�_�q
;
124 *
m__mu�x
;
125
m__nwa��s
;
126
m__br�d��_�q
;
127 }
m__d�a
;
128
m__size
[
__SIZEOF_PTHREAD_COND_T
];
129
__ex�nsi�__
m__�ign
;
130 }
t�h�ad_c�d_t
;
134
m__size
[
__SIZEOF_PTHREAD_CONDATTR_T
];
135
m__�ign
;
136 }
t�h�ad_c�d��_t
;
140
t�h�ad_key_t
;
144
t�h�ad_��_t
;
147 #i�
def�ed
__USE_UNIX98
|| def�ed
__USE_XOPEN2K
152 #i�
__WORDSIZE
== 64
155
m__lock
;
156
m__�_�ad�s
;
157
m__�ad�s_wakeup
;
158
m__wr��_wakeup
;
159
m__�_�ad�s_queued
;
160
m__�_wr��s_queued
;
161
m__wr��
;
162
m__sh�ed
;
163
m__�d1
;
164
m__�d2
;
167
m__�ags
;
168 }
m__d�a
;
172
m__lock
;
173
m__�_�ad�s
;
174
m__�ad�s_wakeup
;
175
m__wr��_wakeup
;
176
m__�_�ad�s_queued
;
177
m__�_wr��s_queued
;
180
m__�ags
;
181
m__sh�ed
;
182
m__�d1
;
183
m__�d2
;
184
m__wr��
;
185 }
m__d�a
;
187
m__size
[
__SIZEOF_PTHREAD_RWLOCK_T
];
188
m__�ign
;
189 }
t�h�ad_rwlock_t
;
193
m__size
[
__SIZEOF_PTHREAD_RWLOCKATTR_T
];
194
m__�ign
;
195 }
t�h�ad_rwlock��_t
;
199 #ifde�
__USE_XOPEN2K
201 vީ��
t�h�ad_��lock_t
;
208
m__size
[
__SIZEOF_PTHREAD_BARRIER_T
];
209
m__�ign
;
210 }
t�h�ad_b�r�r_t
;
214
m__size
[
__SIZEOF_PTHREAD_BARRIERATTR_T
];
215
m__�ign
;
216 }
t�h�ad_b�r���r_t
;
220 #i�
__WORDSIZE
== 32
222
#__��nup_f�_��ibu�
`__��ibu�__
((
`__�g�rm__
(1)))
)
@/usr/include/bits/wchar-ldbl.h
20 #i�de�
_WCHAR_H
24 #i�
def�ed
__USE_ISOC95
|| def�ed
__USE_UNIX98
25
__BEGIN_NAMESPACE_C99
26
__LDBL_REDIR_DECL
(
fw��tf
);
27
__LDBL_REDIR_DECL
(
w��tf
);
28
__LDBL_REDIR_DECL
(
sw��tf
);
29
__LDBL_REDIR_DECL
(
vfw��tf
);
30
__LDBL_REDIR_DECL
(
vw��tf
);
31
__LDBL_REDIR_DECL
(
vsw��tf
);
32 #i�
def�ed
__USE_ISOC99
&& !def�ed
__USE_GNU
\
33 && !
def�ed
g__REDIRECT
\
34 && (
def�ed
g__STRICT_ANSI__
|| def�ed
g__USE_XOPEN2K
)
35
$__LDBL_REDIR1_DECL
(
fws�nf
,
__�dbl___isoc99_fws�nf
)
36
$__LDBL_REDIR1_DECL
(
ws�nf
,
__�dbl___isoc99_ws�nf
)
37
$__LDBL_REDIR1_DECL
(
sws�nf
,
__�dbl___isoc99_sws�nf
)
39
`__LDBL_REDIR_DECL
(
fws�nf
);
40
`__LDBL_REDIR_DECL
(
ws�nf
);
41
`__LDBL_REDIR_DECL
(
sws�nf
);
43
__END_NAMESPACE_C99
46 #ifde�
__USE_ISOC99
47
__BEGIN_NAMESPACE_C99
48
`__LDBL_REDIR1_DECL
(
wc��d
,
wc�od
);
49 #i�!
def�ed
__USE_GNU
&& !def�ed
__REDIRECT
\
50 && (
def�ed
__STRICT_ANSI__
|| def�ed
__USE_XOPEN2K
)
51
$__LDBL_REDIR1_DECL
(
vfws�nf
,
__�dbl___isoc99_vfws�nf
)
52
$__LDBL_REDIR1_DECL
(
vws�nf
,
__�dbl___isoc99_vws�nf
)
53
$__LDBL_REDIR1_DECL
(
vsws�nf
,
__�dbl___isoc99_vsws�nf
)
55
`__LDBL_REDIR_DECL
(
vfws�nf
);
56
`__LDBL_REDIR_DECL
(
vws�nf
);
57
`__LDBL_REDIR_DECL
(
vsws�nf
);
59
__END_NAMESPACE_C99
62 #ifde�
__USE_GNU
63
`__LDBL_REDIR1_DECL
(
wc��d_l
,
wc�od_l
);
66 #i�
__USE_FORTIFY_LEVEL
> 0 &&
def�ed
__ex��_�ways_�l�e
67
$__LDBL_REDIR_DECL
(
__sw��tf_chk
)
68
$__LDBL_REDIR_DECL
(
__vsw��tf_chk
)
69 #i�
__USE_FORTIFY_LEVEL
> 1
70
$__LDBL_REDIR_DECL
(
__fw��tf_chk
)
71
$__LDBL_REDIR_DECL
(
__w��tf_chk
)
72
$__LDBL_REDIR_DECL
(
__vfw��tf_chk
)
73
$__LDBL_REDIR_DECL
(
__vw��tf_chk
)
@/usr/include/bits/wchar.h
20 #i�de�
_BITS_WCHAR_H
21
#_BITS_WCHAR_H
1
)
24 #ifde�
__WCHAR_MAX__
25
#__WCHAR_MAX
__WCHAR_MAX__
)
27
#__WCHAR_MAX
(2147483647)
)
32 #ifde�
__WCHAR_UNSIGNED__
33
#__WCHAR_MIN
L
'\0'
)
37 #�i�
L
'\0' - 1 > 0
38
#__WCHAR_MIN
L
'\0'
)
40
#__WCHAR_MIN
(-
__WCHAR_MAX
- 1)
)
@/usr/include/bits/wchar2.h
20 #i�de�
_WCHAR_H
25
wch�_t
*
$__wmem�y_chk
(
wch�_t
*
__��ri�
__s1
,
26
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
,
27
size_t
__ns1
�
__THROW
;
28
wch�_t
*
`__REDIRECT_NTH
(
__wmem�y_��s
,
29 (
wch�_t
*
__��ri�
__s1
,
30
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
),
31
wmem�y
);
32
wch�_t
*
`__REDIRECT_NTH
(
__wmem�y_chk_w�n
,
33 (
wch�_t
*
__��ri�
__s1
,
34
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
,
35
size_t
__ns1
),
__wmem�y_chk
)
36
`__w�ljr
("wmemcpy called with�ength bigger�han size of destination "
39
__ex��_�ways_�l�e
wch�_t
*
40
`__NTH
(
$wmem�y
(
wch�_t
*
__��ri�
__s1
,
__cڡ
wch�_�*__��ri�
__s2
,
41
size_t
__n
))
43 i�(
`__bos0
(
__s1
�!�(
size_t
) -1)
45 i�(!
`__bu�t�_cڡ�t_p
(
__n
))
46
`__wmem�y_chk
(
__s1
,
__s2
,
__n
,
47
`__bos0
(
__s1
�/ (
wch�_t
));
49 i�(
__n
>
`__bos0
(
__s1
�/ (
wch�_t
))
50
`__wmem�y_chk_w�n
(
__s1
,
__s2
,
__n
,
51
`__bos0
(
__s1
�/ (
wch�_t
));
53
`__wmem�y_��s
(
__s1
,
__s2
,
__n
);
54
}
}
57
wch�_t
*
$__wmemmove_chk
(
wch�_t
*
__s1
,
__cڡ
wch�_�*
__s2
,
58
size_t
__n
, size_�
__ns1
�
__THROW
;
59
wch�_t
*
`__REDIRECT_NTH
(
__wmemmove_��s
, (wch�_�*
__s1
,
60
__cڡ
wch�_t
*
__s2
,
61
size_t
__n
),
wmemmove
);
62
wch�_t
*
`__REDIRECT_NTH
(
__wmemmove_chk_w�n
,
63 (
wch�_t
*
__��ri�
__s1
,
64
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
,
65
size_t
__ns1
),
__wmemmove_chk
)
66
`__w�ljr
("wmemmove called with�ength bigger�han size of destination "
69
__ex��_�ways_�l�e
wch�_t
*
70
`__NTH
(
$wmemmove
(
wch�_t
*
__��ri�
__s1
,
__cڡ
wch�_�*__��ri�
__s2
,
71
size_t
__n
))
73 i�(
`__bos0
(
__s1
�!�(
size_t
) -1)
75 i�(!
`__bu�t�_cڡ�t_p
(
__n
))
76
`__wmemmove_chk
(
__s1
,
__s2
,
__n
,
77
`__bos0
(
__s1
�/ (
wch�_t
));
79 i�(
__n
>
`__bos0
(
__s1
�/ (
wch�_t
))
80
`__wmemmove_chk_w�n
(
__s1
,
__s2
,
__n
,
81
`__bos0
(
__s1
�/ (
wch�_t
));
83
`__wmemmove_��s
(
__s1
,
__s2
,
__n
);
84
}
}
87 #ifde�
__USE_GNU
88
wch�_t
*
$__wmemp�y_chk
(
wch�_t
*
__��ri�
__s1
,
89
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
,
90
size_t
__ns1
�
__THROW
;
91
wch�_t
*
`__REDIRECT_NTH
(
__wmemp�y_��s
,
92 (
wch�_t
*
__��ri�
__s1
,
93
__cڡ
wch�_t
*
__��ri�
__s2
,
94
size_t
__n
),
wmemp�y
);
95
wch�_t
*
`__REDIRECT_NTH
(
__wmemp�y_chk_w�n
,
96 (
wch�_t
*
__��ri�
__s1
,
97
__cڡ
wch�_t
*
__��ri�
__s2
,
size_t
__n
,
98
size_t
__ns1
),
__wmemp�y_chk
)
99
`__w�ljr
("wmempcpy called with�ength bigger�han size of destination "
102
__ex��_�ways_�l�e
wch�_t
*
103
`__NTH
(
$wmemp�y
(
wch�_t
*
__��ri�
__s1
,
__cڡ
wch�_�*__��ri�
__s2
,
104
size_t
__n
))
106 i�(
`__bos0
(
__s1
�!�(
size_t
) -1)
108 i�(!
`__bu�t�_cڡ�t_p
(
__n
))
109
`__wmemp�y_chk
(
__s1
,
__s2
,
__n
,
110
`__bos0
(
__s1
�/ (
wch�_t
));
112 i�(
__n
>
`__bos0
(
__s1
�/ (
wch�_t
))
113
`__wmemp�y_chk_w�n
(
__s1
,
__s2
,
__n
,
114
`__bos0
(
__s1
�/ (
wch�_t
));
116
`__wmemp�y_��s
(
__s1
,
__s2
,
__n
);
117
}
}
121
wch�_t
*
$__wmem�t_chk
(
wch�_t
*
__s
, wch�_�
__c
,
size_t
__n
,
122
size_t
__ns
�
__THROW
;
123
wch�_t
*
`__REDIRECT_NTH
(
__wmem�t_��s
, (wch�_�*
__s
, wch�_�
__c
,
124
size_t
__n
),
wmem�t
);
125
wch�_t
*
`__REDIRECT_NTH
(
__wmem�t_chk_w�n
,
126 (
wch�_t
*
__s
, wch�_�
__c
,
size_t
__n
,
127
size_t
__ns
),
__wmem�t_chk
)
128
`__w�ljr
("wmemset called with�ength bigger�han size of destination "
131
__ex��_�ways_�l�e
wch�_t
*
132
`__NTH
(
$wmem�t
(
wch�_t
*
__��ri�
__s
, wch�_�
__c
,
size_t
__n
))
134 i�(
`__bos0
(
__s
�!�(
size_t
) -1)
136 i�(!
`__bu�t�_cڡ�t_p
(
__n
))
137
`__wmem�t_chk
(
__s
,
__c
,
__n
,
`__bos0
(__s�/ (
wch�_t
));
139 i�(
__n
>
`__bos0
(
__s
�/ (
wch�_t
))
140
`__wmem�t_chk_w�n
(
__s
,
__c
,
__n
,
141
`__bos0
(
__s
�/ (
wch�_t
));
143
`__wmem�t_��s
(
__s
,
__c
,
__n
);
144
}
}
147
wch�_t
*
$__wcs�y_chk
(
wch�_t
*
__��ri�
__de�
,
148
__cڡ
wch�_t
*
__��ri�
__�c
,
149
size_t
__n
�
__THROW
;
150
wch�_t
*
`__REDIRECT_NTH
(
__wcs�y_��s
,
151 (
wch�_t
*
__��ri�
__de�
,
152
__cڡ
wch�_t
*
__��ri�
__�c
),
wcs�y
);
154
__ex��_�ways_�l�e
wch�_t
*
155
`__NTH
(
$wcs�y
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
))
157 i�(
`__bos
(
__de�
�!�(
size_t
) -1)
158
`__wcs�y_chk
(
__de�
,
__�c
,
`__bos
(__de��/ (
wch�_t
));
159
`__wcs�y_��s
(
__de�
,
__�c
);
160
}
}
163
wch�_t
*
$__w��y_chk
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
,
164
size_t
__de��n
�
__THROW
;
165
wch�_t
*
`__REDIRECT_NTH
(
__w��y_��s
, (wch�_�*
__de�
,
166
__cڡ
wch�_t
*
__�c
),
167
w��y
);
169
__ex��_�ways_�l�e
wch�_t
*
170
`__NTH
(
$w��y
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
))
172 i�(
`__bos
(
__de�
�!�(
size_t
) -1)
173
`__w��y_chk
(
__de�
,
__�c
,
`__bos
(__de��/ (
wch�_t
));
174
`__w��y_��s
(
__de�
,
__�c
);
175
}
}
178
wch�_t
*
$__wc��y_chk
(
wch�_t
*
__��ri�
__de�
,
179
__cڡ
wch�_t
*
__��ri�
__�c
,
size_t
__n
,
180
size_t
__de��n
�
__THROW
;
181
wch�_t
*
`__REDIRECT_NTH
(
__wc��y_��s
,
182 (
wch�_t
*
__��ri�
__de�
,
183
__cڡ
wch�_t
*
__��ri�
__�c
,
184
size_t
__n
),
wc��y
);
185
wch�_t
*
`__REDIRECT_NTH
(
__wc��y_chk_w�n
,
186 (
wch�_t
*
__��ri�
__de�
,
187
__cڡ
wch�_t
*
__��ri�
__�c
,
188
size_t
__n
, size_�
__de��n
),
__wc��y_chk
)
189
`__w�ljr
("wcsncpy called with�ength bigger�han size of destination "
192
__ex��_�ways_�l�e
wch�_t
*
193
`__NTH
(
$wc��y
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
,
size_t
__n
))
195 i�(
`__bos
(
__de�
�!�(
size_t
) -1)
197 i�(!
`__bu�t�_cڡ�t_p
(
__n
))
198
`__wc��y_chk
(
__de�
,
__�c
,
__n
,
199
`__bos
(
__de�
�/ (
wch�_t
));
200 i�(
__n
>
`__bos
(
__de�
�/ (
wch�_t
))
201
`__wc��y_chk_w�n
(
__de�
,
__�c
,
__n
,
202
`__bos
(
__de�
�/ (
wch�_t
));
204
`__wc��y_��s
(
__de�
,
__�c
,
__n
);
205
}
}
208
wch�_t
*
$__w�n�y_chk
(
wch�_t
*
__��ri�
__de�
,
209
__cڡ
wch�_t
*
__��ri�
__�c
,
size_t
__n
,
210
size_t
__de��n
�
__THROW
;
211
wch�_t
*
`__REDIRECT_NTH
(
__w�n�y_��s
,
212 (
wch�_t
*
__��ri�
__de�
,
213
__cڡ
wch�_t
*
__��ri�
__�c
,
214
size_t
__n
),
w�n�y
);
215
wch�_t
*
`__REDIRECT_NTH
(
__w�n�y_chk_w�n
,
216 (
wch�_t
*
__��ri�
__de�
,
217
__cڡ
wch�_t
*
__��ri�
__�c
,
218
size_t
__n
, size_�
__de��n
),
__w�n�y_chk
)
219
`__w�ljr
("wcpncpy called with�ength bigger�han size of destination "
222
__ex��_�ways_�l�e
wch�_t
*
223
`__NTH
(
$w�n�y
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
,
size_t
__n
))
225 i�(
`__bos
(
__de�
�!�(
size_t
) -1)
227 i�(!
`__bu�t�_cڡ�t_p
(
__n
))
228
`__w�n�y_chk
(
__de�
,
__�c
,
__n
,
229
`__bos
(
__de�
�/ (
wch�_t
));
230 i�(
__n
>
`__bos
(
__de�
�/ (
wch�_t
))
231
`__w�n�y_chk_w�n
(
__de�
,
__�c
,
__n
,
232
`__bos
(
__de�
�/ (
wch�_t
));
234
`__w�n�y_��s
(
__de�
,
__�c
,
__n
);
235
}
}
238
wch�_t
*
$__wcs�t_chk
(
wch�_t
*
__��ri�
__de�
,
239
__cڡ
wch�_t
*
__��ri�
__�c
,
240
size_t
__de��n
�
__THROW
;
241
wch�_t
*
`__REDIRECT_NTH
(
__wcs�t_��s
,
242 (
wch�_t
*
__��ri�
__de�
,
243
__cڡ
wch�_t
*
__��ri�
__�c
),
wcs�t
);
245
__ex��_�ways_�l�e
wch�_t
*
246
`__NTH
(
$wcs�t
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
))
248 i�(
`__bos
(
__de�
�!�(
size_t
) -1)
249
`__wcs�t_chk
(
__de�
,
__�c
,
`__bos
(__de��/ (
wch�_t
));
250
`__wcs�t_��s
(
__de�
,
__�c
);
251
}
}
254
wch�_t
*
$__wc��t_chk
(
wch�_t
*
__��ri�
__de�
,
255
__cڡ
wch�_t
*
__��ri�
__�c
,
256
size_t
__n
, size_�
__de��n
�
__THROW
;
257
wch�_t
*
`__REDIRECT_NTH
(
__wc��t_��s
,
258 (
wch�_t
*
__��ri�
__de�
,
259
__cڡ
wch�_t
*
__��ri�
__�c
,
260
size_t
__n
),
wc��t
);
262
__ex��_�ways_�l�e
wch�_t
*
263
`__NTH
(
$wc��t
(
wch�_t
*
__de�
,
__cڡ
wch�_�*
__�c
,
size_t
__n
))
265 i�(
`__bos
(
__de�
�!�(
size_t
) -1)
266
`__wc��t_chk
(
__de�
,
__�c
,
__n
,
267
`__bos
(
__de�
�/ (
wch�_t
));
268
`__wc��t_��s
(
__de�
,
__�c
,
__n
);
269
}
}
272
$__sw��tf_chk
(
wch�_t
*
__��ri�
__s
,
size_t
__n
,
273
__�ag
,
size_t
__s_�n
,
274
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...)
275
__THROW
;
277
`__REDIRECT_NTH_LDBL
(
__sw��tf_��s
,
278 (
wch�_t
*
__��ri�
__s
,
size_t
__n
,
279
__cڡ
wch�_t
*
__��ri�
__fmt
, ...),
280
sw��tf
);
282 #ifde�
__va_�g_�ck
283
__ex��_�ways_�l�e
284
`__NTH
(
$sw��tf
(
wch�_t
*
__��ri�
__s
,
size_t
__n
,
285
__cڡ
wch�_t
*
__��ri�
__fmt
, ...))
287 i�(
`__bos
(
__s
�!�(
size_t
�-1 ||
__USE_FORTIFY_LEVEL
> 1)
288
`__sw��tf_chk
(
__s
,
__n
,
__USE_FORTIFY_LEVEL
- 1,
289
`__bos
(
__s
�/ (
wch�_t
),
290
__fmt
,
`__va_�g_�ck
());
291
`__sw��tf_��s
(
__s
,
__n
,
__fmt
,
`__va_�g_�ck
());
292
}
}
293 #�i�!
def�ed
__�lu�lus
295
#sw��tf
(
s
,
n
, ...) \
296 (
`__bos
(
s
�!�(
size_t
�-1 ||
__USE_FORTIFY_LEVEL
> 1 \
297 ?
`__sw��tf_chk
(
s
,
n
,
__USE_FORTIFY_LEVEL
- 1, \
298
`__bos
(
s
�/ (
wch�_t
),
__VA_ARGS__
) \
299 :
`sw��tf
(
s
,
n
,
__VA_ARGS__
))
)
302
$__vsw��tf_chk
(
wch�_t
*
__��ri�
__s
,
size_t
__n
,
303
__�ag
,
size_t
__s_�n
,
304
__cڡ
wch�_t
*
__��ri�
__f�m�
,
305
__gnuc_va_li�
__�g
)
306
__THROW
;
308
`__REDIRECT_NTH_LDBL
(
__vsw��tf_��s
,
309 (
wch�_t
*
__��ri�
__s
,
size_t
__n
,
310
__cڡ
wch�_t
*
__��ri�
__fmt
,
311
__gnuc_va_li�
__�
),
vsw��tf
);
313
__ex��_�ways_�l�e
314
`__NTH
(
$vsw��tf
(
wch�_t
*
__��ri�
__s
,
size_t
__n
,
315
__cڡ
wch�_t
*
__��ri�
__fmt
,
__gnuc_va_li�
__�
))
317 i�(
`__bos
(
__s
�!�(
size_t
�-1 ||
__USE_FORTIFY_LEVEL
> 1)
318
`__vsw��tf_chk
(
__s
,
__n
,
__USE_FORTIFY_LEVEL
- 1,
319
`__bos
(
__s
�/ (
wch�_t
),
__fmt
,
__�
);
320
`__vsw��tf_��s
(
__s
,
__n
,
__fmt
,
__�
);
321
}
}
324 #i�
__USE_FORTIFY_LEVEL
> 1
326
__fw��tf_chk
(
__FILE
*
__��ri�
__��am
,
__�ag
,
327
__cڡ
wch�_t
*
__��ri�
__f�m�
, ...);
328
__w��tf_chk
(
__�ag
,
__cڡ
wch�_t
*
__��ri�
__f�m�
,
330
__vfw��tf_chk
(
__FILE
*
__��ri�
__��am
,
__�ag
,
331
__cڡ
wch�_t
*
__��ri�
__f�m�
,
332
__gnuc_va_li�
__�
);
333
__vw��tf_chk
(
__�ag
,
__cڡ
wch�_t
*
__��ri�
__f�m�
,
334
__gnuc_va_li�
__�
);
336 #ifde�
__va_�g_�ck
337
__ex��_�ways_�l�e
338
$w��tf
(
__cڡ
wch�_t
*
__��ri�
__fmt
, ...)
340
`__w��tf_chk
(
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
`__va_�g_�ck
());
341
}
}
343
__ex��_�ways_�l�e
344
$fw��tf
(
__FILE
*
__��ri�
__��am
,
__cڡ
wch�_t
*__��ri�
__fmt
, ...)
346
`__fw��tf_chk
(
__��am
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
347
`__va_�g_�ck
());
348
}
}
349 #�i�!
def�ed
__�lu�lus
350
#w��tf
(...) \
351
`__w��tf_chk
(
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
352
#fw��tf
(
��am
, ...) \
353
`__fw��tf_chk
(
��am
,
__USE_FORTIFY_LEVEL
- 1,
__VA_ARGS__
)
)
356
__ex��_�ways_�l�e
357
$vw��tf
(
__cڡ
wch�_t
*
__��ri�
__fmt
,
__gnuc_va_li�
__�
)
359
`__vw��tf_chk
(
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
360
}
}
362
__ex��_�ways_�l�e
363
$vfw��tf
(
__FILE
*
__��ri�
__��am
,
364
__cڡ
wch�_t
*
__��ri�
__fmt
,
__gnuc_va_li�
__�
)
366
`__vfw��tf_chk
(
__��am
,
__USE_FORTIFY_LEVEL
- 1,
__fmt
,
__�
);
367
}
}
371
wch�_t
*
$__fg�ws_chk
(
wch�_t
*
__��ri�
__s
,
size_t
__size
,
__n
,
372
__FILE
*
__��ri�
__��am
�
__wur
;
373
wch�_t
*
`__REDIRECT
(
__fg�ws_��s
,
374 (
wch�_t
*
__��ri�
__s
,
__n
,
375
__FILE
*
__��ri�
__��am
),
fg�ws
�
__wur
;
376
wch�_t
*
`__REDIRECT
(
__fg�ws_chk_w�n
,
377 (
wch�_t
*
__��ri�
__s
,
size_t
__size
,
__n
,
378
__FILE
*
__��ri�
__��am
),
__fg�ws_chk
)
379
__wur
`__w�ljr
("fgetws called with bigger size�han�ength "
382
__ex��_�ways_�l�e
__wur
wch�_t
*
383
$fg�ws
(
wch�_t
*
__��ri�
__s
,
__n
,
__FILE
*__��ri�
__��am
)
385 i�(
`__bos
(
__s
�!�(
size_t
) -1)
387 i�(!
`__bu�t�_cڡ�t_p
(
__n
) || __n <= 0)
388
`__fg�ws_chk
(
__s
,
`__bos
(__s�/ (
wch�_t
),
389
__n
,
__��am
);
391 i�((
size_t
�
__n
>
`__bos
(
__s
�/ (
wch�_t
))
392
`__fg�ws_chk_w�n
(
__s
,
`__bos
(__s�/ (
wch�_t
),
393
__n
,
__��am
);
395
`__fg�ws_��s
(
__s
,
__n
,
__��am
);
396
}
}
398 #ifde�
__USE_GNU
399
wch�_t
*
$__fg�ws_u�ocked_chk
(
wch�_t
*
__��ri�
__s
,
size_t
__size
,
400
__n
,
__FILE
*
__��ri�
__��am
)
401
__wur
;
402
wch�_t
*
`__REDIRECT
(
__fg�ws_u�ocked_��s
,
403 (
wch�_t
*
__��ri�
__s
,
__n
,
404
__FILE
*
__��ri�
__��am
),
fg�ws_u�ocked
)
405
__wur
;
406
wch�_t
*
`__REDIRECT
(
__fg�ws_u�ocked_chk_w�n
,
407 (
wch�_t
*
__��ri�
__s
,
size_t
__size
,
__n
,
408
__FILE
*
__��ri�
__��am
),
409
__fg�ws_u�ocked_chk
)
410
__wur
`__w�ljr
("fgetws_unlocked called with bigger size�han�ength "
413
__ex��_�ways_�l�e
__wur
wch�_t
*
414
$fg�ws_u�ocked
(
wch�_t
*
__��ri�
__s
,
__n
,
__FILE
*__��ri�
__��am
)
416 i�(
`__bos
(
__s
�!�(
size_t
) -1)
418 i�(!
`__bu�t�_cڡ�t_p
(
__n
) || __n <= 0)
419
`__fg�ws_u�ocked_chk
(
__s
,
`__bos
(__s�/ (
wch�_t
),
420
__n
,
__��am
);
422 i�((
size_t
�
__n
>
`__bos
(
__s
�/ (
wch�_t
))
423
`__fg�ws_u�ocked_chk_w�n
(
__s
,
`__bos
(__s�/ (
wch�_t
),
424
__n
,
__��am
);
426
`__fg�ws_u�ocked_��s
(
__s
,
__n
,
__��am
);
427
}
}
431
size_t
$__w�tomb_chk
(*
__s
,
wch�_t
__wch�
,
mb��e_t
*
__p
,
432
size_t
__bu�
�
__THROW
__wur
;
433
size_t
`__REDIRECT_NTH
(
__w�tomb_��s
,
434 (*
__��ri�
__s
,
wch�_t
__wch�
,
435
mb��e_t
*
__��ri�
__ps
),
w�tomb
�
__wur
;
437
__ex��_�ways_�l�e
__wur
size_t
438
`__NTH
(
$w�tomb
(*
__s
,
wch�_t
__wch�
,
mb��e_t
*
__ps
))
443
#__WCHAR_MB_LEN_MAX
16
)
444 #i�
def�ed
MB_LEN_MAX
&& MB_LEN_MAX !�
__WCHAR_MB_LEN_MAX
447 i�(
`__bos
(
__s
�!�(
size_t
�-1 &&
__WCHAR_MB_LEN_MAX
> __bos (__s))
448
`__w�tomb_chk
(
__s
,
__wch�
,
__ps
,
`__bos
(__s));
449
`__w�tomb_��s
(
__s
,
__wch�
,
__ps
);
450
}
}
453
size_t
$__mb�towcs_chk
(
wch�_t
*
__��ri�
__d�
,
454
__cڡ
**
__��ri�
__�c
,
455
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
,
456
size_t
__d��n
�
__THROW
;
457
size_t
`__REDIRECT_NTH
(
__mb�towcs_��s
,
458 (
wch�_t
*
__��ri�
__d�
,
459
__cڡ
**
__��ri�
__�c
,
460
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
),
461
mb�towcs
);
462
size_t
`__REDIRECT_NTH
(
__mb�towcs_chk_w�n
,
463 (
wch�_t
*
__��ri�
__d�
,
464
__cڡ
**
__��ri�
__�c
,
465
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
,
466
size_t
__d��n
),
__mb�towcs_chk
)
467
`__w�ljr
("mbsrtowcs called with dst buffer smaller�han�en "
470
__ex��_�ways_�l�e
size_t
471
`__NTH
(
$mb�towcs
(
wch�_t
*
__��ri�
__d�
,
__cڡ
**__��ri�
__�c
,
472
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
))
474 i�(
`__bos
(
__d�
�!�(
size_t
) -1)
476 i�(!
`__bu�t�_cڡ�t_p
(
__�n
))
477
`__mb�towcs_chk
(
__d�
,
__�c
,
__�n
,
__ps
,
478
`__bos
(
__d�
�/ (
wch�_t
));
480 i�(
__�n
>
`__bos
(
__d�
�/ (
wch�_t
))
481
`__mb�towcs_chk_w�n
(
__d�
,
__�c
,
__�n
,
__ps
,
482
`__bos
(
__d�
�/ (
wch�_t
));
484
`__mb�towcs_��s
(
__d�
,
__�c
,
__�n
,
__ps
);
485
}
}
488
size_t
$__wc�tombs_chk
(*
__��ri�
__d�
,
489
__cڡ
wch�_t
**
__��ri�
__�c
,
490
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
,
491
size_t
__d��n
�
__THROW
;
492
size_t
`__REDIRECT_NTH
(
__wc�tombs_��s
,
493 (*
__��ri�
__d�
,
494
__cڡ
wch�_t
**
__��ri�
__�c
,
495
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
),
496
wc�tombs
);
497
size_t
`__REDIRECT_NTH
(
__wc�tombs_chk_w�n
,
498 (*
__��ri�
__d�
,
499
__cڡ
wch�_t
**
__��ri�
__�c
,
500
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
,
501
size_t
__d��n
),
__wc�tombs_chk
)
502
`__w�ljr
("wcsrtombs called with dst buffer smaller�han�en");
504
__ex��_�ways_�l�e
size_t
505
`__NTH
(
$wc�tombs
(*
__��ri�
__d�
,
__cڡ
wch�_t
**__��ri�
__�c
,
506
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
))
508 i�(
`__bos
(
__d�
�!�(
size_t
) -1)
510 i�(!
`__bu�t�_cڡ�t_p
(
__�n
))
511
`__wc�tombs_chk
(
__d�
,
__�c
,
__�n
,
__ps
,
`__bos
(__dst));
513 i�(
__�n
>
`__bos
(
__d�
))
514
`__wc�tombs_chk_w�n
(
__d�
,
__�c
,
__�n
,
__ps
,
`__bos
(__dst));
516
`__wc�tombs_��s
(
__d�
,
__�c
,
__�n
,
__ps
);
517
}
}
520 #ifde�
__USE_GNU
521
size_t
$__mb��owcs_chk
(
wch�_t
*
__��ri�
__d�
,
522
__cڡ
**
__��ri�
__�c
,
size_t
__nmc
,
523
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
,
524
size_t
__d��n
�
__THROW
;
525
size_t
`__REDIRECT_NTH
(
__mb��owcs_��s
,
526 (
wch�_t
*
__��ri�
__d�
,
527
__cڡ
**
__��ri�
__�c
,
size_t
__nmc
,
528
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
),
529
mb��owcs
);
530
size_t
`__REDIRECT_NTH
(
__mb��owcs_chk_w�n
,
531 (
wch�_t
*
__��ri�
__d�
,
532
__cڡ
**
__��ri�
__�c
,
size_t
__nmc
,
533
size_t
__�n
,
mb��e_t
*
__��ri�
__ps
,
534
size_t
__d��n
),
__mb��owcs_chk
)
535
`__w�ljr
("mbsnrtowcs called with dst buffer smaller�han�en "
538
__ex��_�ways_�l�e
size_t
539
`__NTH
(
$mb��owcs
(
wch�_t
*
__��ri�
__d�
,
__cڡ
**__��ri�
__�c
,
540
size_t
__nmc
, size_�
__�n
,
mb��e_t
*
__��ri�
__ps
))
542 i�(
`__bos
(
__d�
�!�(
size_t
) -1)
544 i�(!
`__bu�t�_cڡ�t_p
(
__�n
))
545
`__mb��owcs_chk
(
__d�
,
__�c
,
__nmc
,
__�n
,
__ps
,
546
`__bos
(
__d�
�/ (
wch�_t
));
548 i�(
__�n
>
`__bos
(
__d�
�/ (
wch�_t
))
549
`__mb��owcs_chk_w�n
(
__d�
,
__�c
,
__nmc
,
__�n
,
__ps
,
550
`__bos
(
__d�
�/ (
wch�_t
));
552
`__mb��owcs_��s
(
__d�
,
__�c
,
__nmc
,
__�n
,
__ps
);
553
}
}
556
size_t
$__wc��ombs_chk
(*
__��ri�
__d�
,
557
__cڡ
wch�_t
**
__��ri�
__�c
,
558
size_t
__nwc
, size_�
__�n
,
559
mb��e_t
*
__��ri�
__ps
,
size_t
__d��n
)
560
__THROW
;
561
size_t
`__REDIRECT_NTH
(
__wc��ombs_��s
,
562 (*
__��ri�
__d�
,
563
__cڡ
wch�_t
**
__��ri�
__�c
,
564
size_t
__nwc
, size_�
__�n
,
565
mb��e_t
*
__��ri�
__ps
),
wc��ombs
);
566
size_t
`__REDIRECT_NTH
(
__wc��ombs_chk_w�n
,
567 (*
__��ri�
__d�
,
568
__cڡ
wch�_t
**
__��ri�
__�c
,
569
size_t
__nwc
, size_�
__�n
,
570
mb��e_t
*
__��ri�
__ps
,
571
size_t
__d��n
),
__wc��ombs_chk
)
572
`__w�ljr
("wcsnrtombs called with dst buffer smaller�han�en");
574
__ex��_�ways_�l�e
size_t
575
`__NTH
(
$wc��ombs
(*
__��ri�
__d�
,
__cڡ
wch�_t
**__��ri�
__�c
,
576
size_t
__nwc
, size_�
__�n
,
mb��e_t
*
__��ri�
__ps
))
578 i�(
`__bos
(
__d�
�!�(
size_t
) -1)
580 i�(!
`__bu�t�_cڡ�t_p
(
__�n
))
581
`__wc��ombs_chk
(
__d�
,
__�c
,
__nwc
,
__�n
,
__ps
,
582
`__bos
(
__d�
));
584 i�(
__�n
>
`__bos
(
__d�
))
585
`__wc��ombs_chk_w�n
(
__d�
,
__�c
,
__nwc
,
__�n
,
__ps
,
586
`__bos
(
__d�
));
588
`__wc��ombs_��s
(
__d�
,
__�c
,
__nwc
,
__�n
,
__ps
);
589
}
}
@/usr/include/errno.h
23 #i�def
_ERRNO_H
27 #i�def
__�ed_Em�h
28
#_ERRNO_H
1
)
29
~<�u�s.h
>
32
g__BEGIN_DECLS
36
~<b�s/��o.h
>
37 #unde�
__�ed_Em�h
39 #ifdef
_ERRNO_H
46 #i�def
��o
47
��o
;
50 #ifde�
__USE_GNU
55
*
�og�m_�vo�ti�_�me
, *
�og�m_�vo�ti�_sh�t_�me
;
59
g__END_DECLS
67 #i�
def�ed
__USE_GNU
|| def�ed
__�ed_�r�_t
68 #i�de�
__�r�_t_def�ed
69
t�r�_t
;
70
#__�r�_t_def�ed
1
)
72 #unde�
__�ed_�r�_t
@/usr/include/gnu/option-groups.h
10 #i�de�
__GNU_OPTION_GROUPS_H
11
#__GNU_OPTION_GROUPS_H
)
13
#__OPTION_EGLIBC_ADVANCED_INET6
1
)
14
#__OPTION_EGLIBC_BACKTRACE
1
)
15
#__OPTION_EGLIBC_BIG_MACROS
1
)
16
#__OPTION_EGLIBC_BSD
1
)
17
#__OPTION_EGLIBC_CATGETS
1
)
18
#__OPTION_EGLIBC_CHARSETS
1
)
19
#__OPTION_EGLIBC_CXX_TESTS
1
)
20
#__OPTION_EGLIBC_DB_ALIASES
1
)
21
#__OPTION_EGLIBC_ENVZ
1
)
22
#__OPTION_EGLIBC_FCVT
1
)
23
#__OPTION_EGLIBC_FMTMSG
1
)
24
#__OPTION_EGLIBC_FSTAB
1
)
25
#__OPTION_EGLIBC_FTRAVERSE
1
)
26
#__OPTION_EGLIBC_GETLOGIN
1
)
27
#__OPTION_EGLIBC_INET
1
)
28
#__OPTION_EGLIBC_LIBM
1
)
29
#__OPTION_EGLIBC_LOCALES
1
)
30
#__OPTION_EGLIBC_LOCALE_CODE
1
)
31
#__OPTION_EGLIBC_MEMUSAGE
1
)
32
#__OPTION_EGLIBC_NIS
1
)
33
#__OPTION_EGLIBC_NSSWITCH
1
)
34
#__OPTION_EGLIBC_RCMD
1
)
35
#__OPTION_EGLIBC_SPAWN
1
)
36
#__OPTION_EGLIBC_STREAMS
1
)
37
#__OPTION_EGLIBC_SUNRPC
1
)
38
#__OPTION_EGLIBC_UTMP
1
)
39
#__OPTION_EGLIBC_UTMPX
1
)
40
#__OPTION_EGLIBC_WORDEXP
1
)
41
#__OPTION_POSIX_C_LANG_WIDE_CHAR
1
)
42
#__OPTION_POSIX_REGEXP
1
)
43
#__OPTION_POSIX_REGEXP_GLIBC
1
)
44
#__OPTION_POSIX_WIDE_CHAR_DEVICE_IO
1
)
@/usr/include/pthread.h
20 #i�de�
_PTHREAD_H
21
#_PTHREAD_H
1
)
23
~<�u�s.h
>
24
~<�d�n.h
>
25
~<sched.h
>
26
~<time.h
>
28
#__�ed_sig�t_t
)
29
~<sig�l.h
>
30
~<b�s/�h�adty�s.h
>
31
~<b�s/�tjmp.h
>
32
~<b�s/w�dsize.h
>
38
mPTHREAD_CREATE_JOINABLE
,
39
#PTHREAD_CREATE_JOINABLE
PTHREAD_CREATE_JOINABLE
)
40
mPTHREAD_CREATE_DETACHED
41
#PTHREAD_CREATE_DETACHED
PTHREAD_CREATE_DETACHED
)
48
mPTHREAD_MUTEX_TIMED_NP
,
49
mPTHREAD_MUTEX_RECURSIVE_NP
,
50
mPTHREAD_MUTEX_ERRORCHECK_NP
,
51
mPTHREAD_MUTEX_ADAPTIVE_NP
52 #ifde�
__USE_UNIX98
54
mPTHREAD_MUTEX_NORMAL
=
PTHREAD_MUTEX_TIMED_NP
,
55
mPTHREAD_MUTEX_RECURSIVE
=
PTHREAD_MUTEX_RECURSIVE_NP
,
56
mPTHREAD_MUTEX_ERRORCHECK
=
PTHREAD_MUTEX_ERRORCHECK_NP
,
57
mPTHREAD_MUTEX_DEFAULT
=
PTHREAD_MUTEX_NORMAL
59 #ifde�
__USE_GNU
61 ,
mPTHREAD_MUTEX_FAST_NP
=
PTHREAD_MUTEX_TIMED_NP
66 #ifde�
__USE_XOPEN2K
70
mPTHREAD_MUTEX_STALLED
,
71
mPTHREAD_MUTEX_STALLED_NP
=
PTHREAD_MUTEX_STALLED
,
72
mPTHREAD_MUTEX_ROBUST
,
73
mPTHREAD_MUTEX_ROBUST_NP
=
PTHREAD_MUTEX_ROBUST
78 #ifde�
__USE_UNIX98
82
mPTHREAD_PRIO_NONE
,
83
mPTHREAD_PRIO_INHERIT
,
84
mPTHREAD_PRIO_PROTECT
90 #i�
__WORDSIZE
== 64
91
#PTHREAD_MUTEX_INITIALIZER
\
92 { { 0, 0, 0, 0, 0, 0, { 0, 0 } } }
)
93 #ifde�
__USE_GNU
94
#PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
\
95 { { 0, 0, 0, 0,
PTHREAD_MUTEX_RECURSIVE_NP
, 0, { 0, 0 } } }
)
96
#PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
\
97 { { 0, 0, 0, 0,
PTHREAD_MUTEX_ERRORCHECK_NP
, 0, { 0, 0 } } }
)
98
#PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
\
99 { { 0, 0, 0, 0,
PTHREAD_MUTEX_ADAPTIVE_NP
, 0, { 0, 0 } } }
)
102
#PTHREAD_MUTEX_INITIALIZER
\
103 { { 0, 0, 0, 0, 0, { 0 } } }
)
104 #ifde�
__USE_GNU
105
#PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
\
106 { { 0, 0, 0,
PTHREAD_MUTEX_RECURSIVE_NP
, 0, { 0 } } }
)
107
#PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
\
108 { { 0, 0, 0,
PTHREAD_MUTEX_ERRORCHECK_NP
, 0, { 0 } } }
)
109
#PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
\
110 { { 0, 0, 0,
PTHREAD_MUTEX_ADAPTIVE_NP
, 0, { 0 } } }
)
116 #i�
def�ed
__USE_UNIX98
|| def�ed
__USE_XOPEN2K
119
mPTHREAD_RWLOCK_PREFER_READER_NP
,
120
mPTHREAD_RWLOCK_PREFER_WRITER_NP
,
121
mPTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP
,
122
mPTHREAD_RWLOCK_DEFAULT_NP
=
PTHREAD_RWLOCK_PREFER_READER_NP
126
#PTHREAD_RWLOCK_INITIALIZER
\
127 { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
)
128 #ifde�
__USE_GNU
129 #i�
__WORDSIZE
== 64
130
#PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP
\
132
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP
} }
)
134 #i�
__BYTE_ORDER
=�
__LITTLE_ENDIAN
135
#PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP
\
136 { { 0, 0, 0, 0, 0, 0,
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP
, \
137 0, 0, 0, 0 } }
)
139
#PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP
\
140 { { 0, 0, 0, 0, 0, 0, 0, 0, 0,
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP
,\
141 0 } }
)
151
mPTHREAD_INHERIT_SCHED
,
152
#PTHREAD_INHERIT_SCHED
PTHREAD_INHERIT_SCHED
)
153
mPTHREAD_EXPLICIT_SCHED
154
#PTHREAD_EXPLICIT_SCHED
PTHREAD_EXPLICIT_SCHED
)
161
mPTHREAD_SCOPE_SYSTEM
,
162
#PTHREAD_SCOPE_SYSTEM
PTHREAD_SCOPE_SYSTEM
)
163
mPTHREAD_SCOPE_PROCESS
164
#PTHREAD_SCOPE_PROCESS
PTHREAD_SCOPE_PROCESS
)
171
mPTHREAD_PROCESS_PRIVATE
,
172
#PTHREAD_PROCESS_PRIVATE
PTHREAD_PROCESS_PRIVATE
)
173
mPTHREAD_PROCESS_SHARED
174
#PTHREAD_PROCESS_SHARED
PTHREAD_PROCESS_SHARED
)
180
#PTHREAD_COND_INITIALIZER
{ { 0, 0, 0, 0, 0, (*�0, 0, 0 } }
)
184
s_�h�ad_��nup_buf�r
186 (*
m__rout�e
) (*);
187 *
m__�g
;
188
m__�n��y�
;
189
_�h�ad_��nup_buf�r
*
m__�ev
;
195
mPTHREAD_CANCEL_ENABLE
,
196
#PTHREAD_CANCEL_ENABLE
PTHREAD_CANCEL_ENABLE
)
197
mPTHREAD_CANCEL_DISABLE
198
#PTHREAD_CANCEL_DISABLE
PTHREAD_CANCEL_DISABLE
)
202
mPTHREAD_CANCEL_DEFERRED
,
203
#PTHREAD_CANCEL_DEFERRED
PTHREAD_CANCEL_DEFERRED
)
204
mPTHREAD_CANCEL_ASYNCHRONOUS
205
#PTHREAD_CANCEL_ASYNCHRONOUS
PTHREAD_CANCEL_ASYNCHRONOUS
)
207
#PTHREAD_CANCELED
((*�-1)
)
211
#PTHREAD_ONCE_INIT
0
)
214 #ifde�
__USE_XOPEN2K
218
#PTHREAD_BARRIER_SERIAL_THREAD
-1
)
222
__BEGIN_DECLS
227
�h�ad_���
(
�h�ad_t
*
__��ri�
__�wth�ad
,
228
__cڡ
�h�ad_��_t
*
__��ri�
__��
,
229 *(*
__��t_rout�e
) (*),
230 *
__��ri�
__�g
�
__THROW
__n�nu�
((1, 3));
236
$�h�ad_ex�
(*
__�tv�
�
`__��ibu�__
((
__nܑu�__
));
244
`�h�ad_jo�
(
�h�ad_t
__th
, **
__th�ad_�tu�
);
246 #ifde�
__USE_GNU
249
$�h�ad_�yjo�_�
(
�h�ad_t
__th
, **
__th�ad_�tu�
�
__THROW
;
257
`�h�ad_timedjo�_�
(
�h�ad_t
__th
, **
__th�ad_�tu�
,
258
__cڡ
time�ec
*
__ab�ime
);
265
$�h�ad_d�ach
(
�h�ad_t
__th
�
__THROW
;
269
�h�ad_t
$�h�ad_�lf
(�
__THROW
`__��ibu�__
((
__cڡ__
));
272
$�h�ad_equ�
(
�h�ad_t
__th�ad1
,�th�ad_�
__th�ad2
�
__THROW
;
280
$�h�ad_��_��
(
�h�ad_��_t
*
__��
�
__THROW
`__n�nu�
((1));
283
$�h�ad_��_de�roy
(
�h�ad_��_t
*
__��
)
284
__THROW
`__n�nu�
((1));
287
$�h�ad_��_g�d�ach��e
(
__cڡ
�h�ad_��_t
*
__��
,
288 *
__d�ach��e
)
289
__THROW
`__n�nu�
((1, 2));
292
$�h�ad_��_�td�ach��e
(
�h�ad_��_t
*
__��
,
293
__d�ach��e
)
294
__THROW
`__n�nu�
((1));
298
$�h�ad_��_g�gu�dsize
(
__cڡ
�h�ad_��_t
*
__��
,
299
size_t
*
__gu�dsize
)
300
__THROW
`__n�nu�
((1, 2));
303
$�h�ad_��_�tgu�dsize
(
�h�ad_��_t
*
__��
,
304
size_t
__gu�dsize
)
305
__THROW
`__n�nu�
((1));
309
$�h�ad_��_g�sched��m
(
__cڡ
�h�ad_��_t
*
__��ri�
310
__��
,
311
sched_��m
*
__��ri�
__��m
)
312
__THROW
`__n�nu�
((1, 2));
315
$�h�ad_��_�tsched��m
(
�h�ad_��_t
*
__��ri�
__��
,
316
__cڡ
sched_��m
*
__��ri�
317
__��m
�
__THROW
`__n�nu�
((1, 2));
320
$�h�ad_��_g�schedp�icy
(
__cڡ
�h�ad_��_t
*
__��ri�
321
__��
, *
__��ri�
__p�icy
)
322
__THROW
`__n�nu�
((1, 2));
325
$�h�ad_��_�tschedp�icy
(
�h�ad_��_t
*
__��
,
__p�icy
)
326
__THROW
`__n�nu�
((1));
329
$�h�ad_��_g��h��sched
(
__cڡ
�h�ad_��_t
*
__��ri�
330
__��
, *
__��ri�
__�h��
)
331
__THROW
`__n�nu�
((1, 2));
334
$�h�ad_��_�t�h��sched
(
�h�ad_��_t
*
__��
,
335
__�h��
)
336
__THROW
`__n�nu�
((1));
340
$�h�ad_��_g�sc�e
(
__cڡ
�h�ad_��_t
*
__��ri�
__��
,
341 *
__��ri�
__sc�e
)
342
__THROW
`__n�nu�
((1, 2));
345
$�h�ad_��_�tsc�e
(
�h�ad_��_t
*
__��
,
__sc�e
)
346
__THROW
`__n�nu�
((1));
349
$�h�ad_��_g��ackaddr
(
__cڡ
�h�ad_��_t
*
__��ri�
350
__��
, **
__��ri�
__�ackaddr
)
351
__THROW
`__n�nu�
((1, 2)�
__��ibu�_d����d__
;
357
$�h�ad_��_�t�ackaddr
(
�h�ad_��_t
*
__��
,
358 *
__�ackaddr
)
359
__THROW
`__n�nu�
((1)�
__��ibu�_d����d__
;
362
$�h�ad_��_g��acksize
(
__cڡ
�h�ad_��_t
*
__��ri�
363
__��
,
size_t
*
__��ri�
__�acksize
)
364
__THROW
`__n�nu�
((1, 2));
369
$�h�ad_��_�t�acksize
(
�h�ad_��_t
*
__��
,
370
size_t
__�acksize
)
371
__THROW
`__n�nu�
((1));
373 #ifde�
__USE_XOPEN2K
375
$�h�ad_��_g��ack
(
__cڡ
�h�ad_��_t
*
__��ri�
__��
,
376 **
__��ri�
__�ackaddr
,
377
size_t
*
__��ri�
__�acksize
)
378
__THROW
`__n�nu�
((1, 2, 3));
383
$�h�ad_��_�t�ack
(
�h�ad_��_t
*
__��
, *
__�ackaddr
,
384
size_t
__�acksize
�
__THROW
`__n�nu�
((1));
387 #ifde�
__USE_GNU
390
$�h�ad_��_��ff��y_�
(
�h�ad_��_t
*
__��
,
391
size_t
__�u�tsize
,
392
__cڡ
�u_�t_t
*
__�u�t
)
393
__THROW
`__n�nu�
((1, 3));
397
$�h�ad_��_g�aff��y_�
(
__cڡ
�h�ad_��_t
*
__��
,
398
size_t
__�u�tsize
,
399
�u_�t_t
*
__�u�t
)
400
__THROW
`__n�nu�
((1, 3));
406
$�h�ad_g���_�
(
�h�ad_t
__th
,
�h�ad_��_t
*
__��
)
407
__THROW
`__n�nu�
((2));
415
$�h�ad_�tsched��m
(
�h�ad_t
__�rg�_th�ad
,
__p�icy
,
416
__cڡ
sched_��m
*
__��m
)
417
__THROW
`__n�nu�
((3));
420
$�h�ad_g�sched��m
(
�h�ad_t
__�rg�_th�ad
,
421 *
__��ri�
__p�icy
,
422
sched_��m
*
__��ri�
__��m
)
423
__THROW
`__n�nu�
((2, 3));
426
$�h�ad_�tsched�io
(
�h�ad_t
__�rg�_th�ad
,
__�io
)
427
__THROW
;
430 #ifde�
__USE_UNIX98
432
$�h�ad_g�c�cu��cy
(�
__THROW
;
435
$�h�ad_�tc�cu��cy
(
__�v�
�
__THROW
;
438 #ifde�
__USE_GNU
443
$�h�ad_y�ld
(�
__THROW
;
448
$�h�ad_��ff��y_�
(
�h�ad_t
__th
,
size_t
__�u�tsize
,
449
__cڡ
�u_�t_t
*
__�u�t
)
450
__THROW
`__n�nu�
((3));
453
$�h�ad_g�aff��y_�
(
�h�ad_t
__th
,
size_t
__�u�tsize
,
454
�u_�t_t
*
__�u�t
)
455
__THROW
`__n�nu�
((3));
468
`�h�ad_��
(
�h�ad_��_t
*
__��_cڌ�
,
469 (*
__��_rout�e
�()�
`__n�nu�
((1, 2));
480
`�h�ad_�t�n�l��e
(
__��e
, *
__�d��e
);
484
`�h�ad_�t�n��y�
(
__ty�
, *
__�dty�
);
487
`�h�ad_�n�l
(
�h�ad_t
__th
);
492
`�h�ad_���n�l
();
501
__jmp_buf
__�n�l_jmp_buf
;
502
__mask_was_�ved
;
503 }
__�n�l_jmp_buf
[1];
504 *
__�d
[4];
505 }
t__�h�ad_unw�d_buf_t
t__��ibu�__
((
t__�ig�d__
));
508 #i�de�
__��nup_f�_��ibu�
509
#__��nup_f�_��ibu�
)
514
s__�h�ad_��nup_�ame
516 (*
__�n�l_rout�e
) (*);
517 *
__�n�l_�g
;
518
__do_�
;
519
__�n�l_ty�
;
522 #i�
def�ed
__GNUC__
&& def�ed
__EXCEPTIONS
523 #ifde�
__�lu�lus
525 �as�
c__�h�ad_��nup_�ass
527 (*
__�n�l_rout�e
) (*);
528 *
__�n�l_�g
;
529
__do_�
;
530
__�n�l_ty�
;
532
public
:
533
`__�h�ad_��nup_�ass
((*
__f�
�(*), *
__�g
)
534 :
`__�n�l_rout�e
(
__f�
),
`__�n�l_�g
(
__�g
),
$__do_�
(1) { }
535 ~
$__�h�ad_��nup_�ass
(�{ i�(
__do_�
�
`__�n�l_rout�e
(
__�n�l_�g
);
}
}
536
$__�tdo�
(
__�wv�
�{
__do_�
= __�wv�;
}
}
537
$__de�r
(�{
`�h�ad_�t�n��y�
(
PTHREAD_CANCEL_DEFERRED
,
538 &
__�n�l_ty�
);
}
}
539
$__���e
(�cڡ {
`�h�ad_�t�n��y�
(
__�n�l_ty�
, 0);
}
}
549
#�h�ad_��nup_push
(
rout�e
,
�g
) \
551
__�h�ad_��nup_�ass
`__��ame
(
rout�e
,
�g
)
)
555
#�h�ad_��nup_p�
(
execu�
) \
556
__��ame
.
`__�tdo�
(
execu�
); \
557 } 0)
)
559 #ifde�
__USE_GNU
563
#�h�ad_��nup_push_de�r_�
(
rout�e
,
�g
) \
565
__�h�ad_��nup_�ass
`__��ame
(
rout�e
,
�g
); \
566
__��ame
.
`__de�r
()
)
571
#�h�ad_��nup_p�_���e_�
(
execu�
) \
572
__��ame
.
`__���e
(); \
573
__��ame
.
`__�tdo�
(
execu�
); \
574 } 0)
)
581
__ex��_�l�e
582
$__�h�ad_��nup_rout�e
(
__�h�ad_��nup_�ame
*
__�ame
)
584 i�(
__�ame
->
__do_�
)
585
__�ame
->
`__�n�l_rout�e
(__�ame->
__�n�l_�g
);
586
}
}
595
#�h�ad_��nup_push
(
rout�e
,
�g
) \
597
__�h�ad_��nup_�ame
__��ame
\
598
`__��ibu�__
((
`__��nup__
(
__�h�ad_��nup_rout�e
))) \
599 �{ .
__�n�l_rout�e
= (
rout�e
), .
__�n�l_�g
= (
�g
), \
600 .
__do_�
= 1 };
)
604
#�h�ad_��nup_p�
(
execu�
) \
605
__��ame
.
__do_�
= (
execu�
); \
606 } 0)
)
608 #ifde�
__USE_GNU
612
#�h�ad_��nup_push_de�r_�
(
rout�e
,
�g
) \
614
__�h�ad_��nup_�ame
__��ame
\
615
`__��ibu�__
((
`__��nup__
(
__�h�ad_��nup_rout�e
))) \
616 �{ .
__�n�l_rout�e
= (
rout�e
), .
__�n�l_�g
= (
�g
), \
617 .
__do_�
= 1 }; \
618 (�
`�h�ad_�t�n��y�
(
PTHREAD_CANCEL_DEFERRED
, \
619 &
__��ame
.
__�n�l_ty�
)
)
624
#�h�ad_��nup_p�_���e_�
(
execu�
) \
625 (�
`�h�ad_�t�n��y�
(
__��ame
.
__�n�l_ty�
,
NULL
); \
626
__��ame
.
__do_�
= (
execu�
); \
627 } 0)
)
638
#�h�ad_��nup_push
(
rout�e
,
�g
) \
640
__�h�ad_unw�d_buf_t
__�n�l_buf
; \
641 (*
__�n�l_rout�e
�(*��(
rout�e
); \
642 *
__�n�l_�g
= (
�g
); \
643
n�_f��_��
=
`__sig�tjmp
((
__jmp_buf_�g
*) (*) \
644
__�n�l_buf
.
__�n�l_jmp_buf
, 0); \
645 i�(
`__bu�t�_ex��
(
n�_f��_��
, 0)) \
647
`__�n�l_rout�e
(
__�n�l_�g
); \
648
`__�h�ad_unw�d_�xt
(&
__�n�l_buf
); \
652
`__�h�ad_�gi��_�n�l
(&
__�n�l_buf
); \
653 d�{
)
654
__�h�ad_�gi��_�n�l
(
__�h�ad_unw�d_buf_t
*
__buf
)
655
__��nup_f�_��ibu�
;
659
#�h�ad_��nup_p�
(
execu�
) \
662
`__�h�ad_u�egi��_�n�l
(&
__�n�l_buf
); \
663 i�(
execu�
) \
664
`__�n�l_rout�e
(
__�n�l_�g
); \
665 } 0)
)
666
$__�h�ad_u�egi��_�n�l
(
__�h�ad_unw�d_buf_t
*
__buf
)
667
__��nup_f�_��ibu�
;
669 #ifde�
__USE_GNU
673
#�h�ad_��nup_push_de�r_�
(
rout�e
,
�g
) \
675
__�h�ad_unw�d_buf_t
__�n�l_buf
; \
676 (*
__�n�l_rout�e
�(*��(
rout�e
); \
677 *
__�n�l_�g
= (
�g
); \
678
n�_f��_��
=
`__sig�tjmp
((
__jmp_buf_�g
*) (*) \
679
__�n�l_buf
.
__�n�l_jmp_buf
, 0); \
680 i�(
`__bu�t�_ex��
(
n�_f��_��
, 0)) \
682
`__�n�l_rout�e
(
__�n�l_�g
); \
683
`__�h�ad_unw�d_�xt
(&
__�n�l_buf
); \
687
`__�h�ad_�gi��_�n�l_de�r
(&
__�n�l_buf
); \
688 d�{
)
689
`__�h�ad_�gi��_�n�l_de�r
(
__�h�ad_unw�d_buf_t
*
__buf
)
690
__��nup_f�_��ibu�
;
695
#�h�ad_��nup_p�_���e_�
(
execu�
) \
698
`__�h�ad_u�egi��_�n�l_���e
(&
__�n�l_buf
); \
699 i�(
execu�
) \
700
`__�n�l_rout�e
(
__�n�l_�g
); \
701
}
} 0)
)
702
$__�h�ad_u�egi��_�n�l_���e
(
__�h�ad_unw�d_buf_t
*
__buf
)
703
__��nup_f�_��ibu�
;
707
$__�h�ad_unw�d_�xt
(
__�h�ad_unw�d_buf_t
*
__buf
)
708
__��nup_f�_��ibu�
`__��ibu�__
((
__nܑu�__
))
709 #i�de�
SHARED
710
`__��ibu�__
((
__w�k__
))
716
__jmp_buf_�g
;
717
$__sig�tjmp
(
__jmp_buf_�g
*
__�v
,
__�vemask
�
__THROW
;
723
$�h�ad_mu�x_��
(
�h�ad_mu�x_t
*
__mu�x
,
724
__cڡ
�h�ad_mu�x��_t
*
__mu�x��
)
725
__THROW
`__n�nu�
((1));
728
$�h�ad_mu�x_de�roy
(
�h�ad_mu�x_t
*
__mu�x
)
729
__THROW
`__n�nu�
((1));
732
$�h�ad_mu�x_�ylock
(
�h�ad_mu�x_t
*
__mu�x
)
733
__THROW
`__n�nu�
((1));
736
$�h�ad_mu�x_lock
(
�h�ad_mu�x_t
*
__mu�x
)
737
__THROW
`__n�nu�
((1));
739 #ifde�
__USE_XOPEN2K
741
$�h�ad_mu�x_timedlock
(
�h�ad_mu�x_t
*
__��ri�
__mu�x
,
742
__cڡ
time�ec
*
__��ri�
743
__ab�ime
�
__THROW
`__n�nu�
((1, 2));
747
$�h�ad_mu�x_u�ock
(
�h�ad_mu�x_t
*
__mu�x
)
748
__THROW
`__n�nu�
((1));
751 #ifde�
__USE_UNIX98
753
$�h�ad_mu�x_g��io���g
(
__cڡ
�h�ad_mu�x_t
*
754
__��ri�
__mu�x
,
755 *
__��ri�
__�io���g
)
756
__THROW
`__n�nu�
((1, 2));
760
$�h�ad_mu�x_��rio���g
(
�h�ad_mu�x_t
*
__��ri�
__mu�x
,
761
__�io���g
,
762 *
__��ri�
__�d_���g
)
763
__THROW
`__n�nu�
((1, 3));
767 #ifde�
__USE_XOPEN2K8
769
$�h�ad_mu�x_c�si��t_�
(
�h�ad_mu�x_t
*
__mu�x
)
770
__THROW
`__n�nu�
((1));
771 #ifde�
__USE_GNU
772
$�h�ad_mu�x_c�si��t_�
(
�h�ad_mu�x_t
*
__mu�x
)
773
__THROW
`__n�nu�
((1));
782
$�h�ad_mu�x��_��
(
�h�ad_mu�x��_t
*
__��
)
783
__THROW
`__n�nu�
((1));
786
$�h�ad_mu�x��_de�roy
(
�h�ad_mu�x��_t
*
__��
)
787
__THROW
`__n�nu�
((1));
790
$�h�ad_mu�x��_g�psh�ed
(
__cڡ
�h�ad_mu�x��_t
*
791
__��ri�
__��
,
792 *
__��ri�
__psh�ed
)
793
__THROW
`__n�nu�
((1, 2));
796
$�h�ad_mu�x��_��sh�ed
(
�h�ad_mu�x��_t
*
__��
,
797
__psh�ed
)
798
__THROW
`__n�nu�
((1));
800 #ifde�
__USE_UNIX98
802
$�h�ad_mu�x��_g�ty�
(
__cڡ
�h�ad_mu�x��_t
*
__��ri�
803
__��
, *
__��ri�
__k�d
)
804
__THROW
`__n�nu�
((1, 2));
809
$�h�ad_mu�x��_��y�
(
�h�ad_mu�x��_t
*
__��
,
__k�d
)
810
__THROW
`__n�nu�
((1));
813
$�h�ad_mu�x��_g���oc�
(
__cڡ
�h�ad_mu�x��_t
*
814
__��ri�
__��
,
815 *
__��ri�
__��oc�
)
816
__THROW
`__n�nu�
((1, 2));
820
$�h�ad_mu�x��_��r�oc�
(
�h�ad_mu�x��_t
*
__��
,
821
__��oc�
)
822
__THROW
`__n�nu�
((1));
825
$�h�ad_mu�x��_g��io���g
(
__cڡ
�h�ad_mu�x��_t
*
826
__��ri�
__��
,
827 *
__��ri�
__�io���g
)
828
__THROW
`__n�nu�
((1, 2));
831
$�h�ad_mu�x��_��rio���g
(
�h�ad_mu�x��_t
*
__��
,
832
__�io���g
)
833
__THROW
`__n�nu�
((1));
836 #ifde�
__USE_XOPEN2K
838
$�h�ad_mu�x��_g�robu�
(
__cڡ
�h�ad_mu�x��_t
*
__��
,
839 *
__robu��ss
)
840
__THROW
`__n�nu�
((1, 2));
841 #ifde�
__USE_GNU
842
$�h�ad_mu�x��_g�robu�_�
(
__cڡ
�h�ad_mu�x��_t
*
__��
,
843 *
__robu��ss
)
844
__THROW
`__n�nu�
((1, 2));
848
$�h�ad_mu�x��_��obu�
(
�h�ad_mu�x��_t
*
__��
,
849
__robu��ss
)
850
__THROW
`__n�nu�
((1));
851 #ifde�
__USE_GNU
852
$�h�ad_mu�x��_��obu�_�
(
�h�ad_mu�x��_t
*
__��
,
853
__robu��ss
)
854
__THROW
`__n�nu�
((1));
859 #i�
def�ed
__USE_UNIX98
|| def�ed
__USE_XOPEN2K
864
$�h�ad_rwlock_��
(
�h�ad_rwlock_t
*
__��ri�
__rwlock
,
865
__cڡ
�h�ad_rwlock��_t
*
__��ri�
866
__��
�
__THROW
`__n�nu�
((1));
869
$�h�ad_rwlock_de�roy
(
�h�ad_rwlock_t
*
__rwlock
)
870
__THROW
`__n�nu�
((1));
873
$�h�ad_rwlock_rdlock
(
�h�ad_rwlock_t
*
__rwlock
)
874
__THROW
`__n�nu�
((1));
877
$�h�ad_rwlock_�yrdlock
(
�h�ad_rwlock_t
*
__rwlock
)
878
__THROW
`__n�nu�
((1));
880 #ifde�
__USE_XOPEN2K
882
$�h�ad_rwlock_timedrdlock
(
�h�ad_rwlock_t
*
__��ri�
__rwlock
,
883
__cڡ
time�ec
*
__��ri�
884
__ab�ime
�
__THROW
`__n�nu�
((1, 2));
888
$�h�ad_rwlock_w�ock
(
�h�ad_rwlock_t
*
__rwlock
)
889
__THROW
`__n�nu�
((1));
892
$�h�ad_rwlock_�yw�ock
(
�h�ad_rwlock_t
*
__rwlock
)
893
__THROW
`__n�nu�
((1));
895 #ifde�
__USE_XOPEN2K
897
$�h�ad_rwlock_timedw�ock
(
�h�ad_rwlock_t
*
__��ri�
__rwlock
,
898
__cڡ
time�ec
*
__��ri�
899
__ab�ime
�
__THROW
`__n�nu�
((1, 2));
903
$�h�ad_rwlock_u�ock
(
�h�ad_rwlock_t
*
__rwlock
)
904
__THROW
`__n�nu�
((1));
910
$�h�ad_rwlock��_��
(
�h�ad_rwlock��_t
*
__��
)
911
__THROW
`__n�nu�
((1));
914
$�h�ad_rwlock��_de�roy
(
�h�ad_rwlock��_t
*
__��
)
915
__THROW
`__n�nu�
((1));
918
$�h�ad_rwlock��_g�psh�ed
(
__cڡ
�h�ad_rwlock��_t
*
919
__��ri�
__��
,
920 *
__��ri�
__psh�ed
)
921
__THROW
`__n�nu�
((1, 2));
924
$�h�ad_rwlock��_��sh�ed
(
�h�ad_rwlock��_t
*
__��
,
925
__psh�ed
)
926
__THROW
`__n�nu�
((1));
929
$�h�ad_rwlock��_g�k�d_�
(
__cڡ
�h�ad_rwlock��_t
*
930
__��ri�
__��
,
931 *
__��ri�
__�ef
)
932
__THROW
`__n�nu�
((1, 2));
935
$�h�ad_rwlock��_�tk�d_�
(
�h�ad_rwlock��_t
*
__��
,
936
__�ef
�
__THROW
`__n�nu�
((1));
944
$�h�ad_c�d_��
(
�h�ad_c�d_t
*
__��ri�
__c�d
,
945
__cڡ
�h�ad_c�d��_t
*
__��ri�
946
__c�d_��
�
__THROW
`__n�nu�
((1));
949
$�h�ad_c�d_de�roy
(
�h�ad_c�d_t
*
__c�d
)
950
__THROW
`__n�nu�
((1));
953
$�h�ad_c�d_sig�l
(
�h�ad_c�d_t
*
__c�d
)
954
__THROW
`__n�nu�
((1));
957
$�h�ad_c�d_br�d��
(
�h�ad_c�d_t
*
__c�d
)
958
__THROW
`__n�nu�
((1));
965
$�h�ad_c�d_wa�
(
�h�ad_c�d_t
*
__��ri�
__c�d
,
966
�h�ad_mu�x_t
*
__��ri�
__mu�x
)
967
`__n�nu�
((1, 2));
976
$�h�ad_c�d_timedwa�
(
�h�ad_c�d_t
*
__��ri�
__c�d
,
977
�h�ad_mu�x_t
*
__��ri�
__mu�x
,
978
__cڡ
time�ec
*
__��ri�
979
__ab�ime
�
`__n�nu�
((1, 2, 3));
984
$�h�ad_c�d��_��
(
�h�ad_c�d��_t
*
__��
)
985
__THROW
`__n�nu�
((1));
988
$�h�ad_c�d��_de�roy
(
�h�ad_c�d��_t
*
__��
)
989
__THROW
`__n�nu�
((1));
992
$�h�ad_c�d��_g�psh�ed
(
__cڡ
�h�ad_c�d��_t
*
993
__��ri�
__��
,
994 *
__��ri�
__psh�ed
)
995
__THROW
`__n�nu�
((1, 2));
998
$�h�ad_c�d��_��sh�ed
(
�h�ad_c�d��_t
*
__��
,
999
__psh�ed
�
__THROW
`__n�nu�
((1));
1001 #ifde�
__USE_XOPEN2K
1003
$�h�ad_c�d��_g��ock
(
__cڡ
�h�ad_c�d��_t
*
1004
__��ri�
__��
,
1005
__�ockid_t
*
__��ri�
__�ock_id
)
1006
__THROW
`__n�nu�
((1, 2));
1009
$�h�ad_c�d��_�t�ock
(
�h�ad_c�d��_t
*
__��
,
1010
__�ockid_t
__�ock_id
)
1011
__THROW
`__n�nu�
((1));
1015 #ifde�
__USE_XOPEN2K
1020
$�h�ad_��_��
(
�h�ad_��lock_t
*
__lock
,
__psh�ed
)
1021
__THROW
`__n�nu�
((1));
1024
$�h�ad_��_de�roy
(
�h�ad_��lock_t
*
__lock
)
1025
__THROW
`__n�nu�
((1));
1028
$�h�ad_��_lock
(
�h�ad_��lock_t
*
__lock
)
1029
__THROW
`__n�nu�
((1));
1032
$�h�ad_��_�ylock
(
�h�ad_��lock_t
*
__lock
)
1033
__THROW
`__n�nu�
((1));
1036
$�h�ad_��_u�ock
(
�h�ad_��lock_t
*
__lock
)
1037
__THROW
`__n�nu�
((1));
1044
$�h�ad_b�r�r_��
(
�h�ad_b�r�r_t
*
__��ri�
__b�r�r
,
1045
__cڡ
�h�ad_b�r���r_t
*
__��ri�
1046
__��
,
__cou�
)
1047
__THROW
`__n�nu�
((1));
1050
$�h�ad_b�r�r_de�roy
(
�h�ad_b�r�r_t
*
__b�r�r
)
1051
__THROW
`__n�nu�
((1));
1054
$�h�ad_b�r�r_wa�
(
�h�ad_b�r�r_t
*
__b�r�r
)
1055
__THROW
`__n�nu�
((1));
1059
$�h�ad_b�r���r_��
(
�h�ad_b�r���r_t
*
__��
)
1060
__THROW
`__n�nu�
((1));
1063
$�h�ad_b�r���r_de�roy
(
�h�ad_b�r���r_t
*
__��
)
1064
__THROW
`__n�nu�
((1));
1067
$�h�ad_b�r���r_g�psh�ed
(
__cڡ
�h�ad_b�r���r_t
*
1068
__��ri�
__��
,
1069 *
__��ri�
__psh�ed
)
1070
__THROW
`__n�nu�
((1, 2));
1073
$�h�ad_b�r���r_��sh�ed
(
�h�ad_b�r���r_t
*
__��
,
1074
__psh�ed
)
1075
__THROW
`__n�nu�
((1));
1087
`�h�ad_key_���
(
�h�ad_key_t
*
__key
,
1088 (*
__de�r_fun�i�
) (*))
1089
__THROW
`__n�nu�
((1));
1092
$�h�ad_key_d��e
(
�h�ad_key_t
__key
�
__THROW
;
1095
*
$�h�ad_g��ecific
(
�h�ad_key_t
__key
�
__THROW
;
1098
$�h�ad_�t�ecific
(
�h�ad_key_t
__key
,
1099
__cڡ
*
__po��r
�
__THROW
;
1102 #ifde�
__USE_XOPEN2K
1104
$�h�ad_g��u�ockid
(
�h�ad_t
__th�ad_id
,
1105
__�ockid_t
*
__�ock_id
)
1106
__THROW
`__n�nu�
((2));
1121
`�h�ad_�f�k
((*
__���e
) (),
1122 (*
__���
) (),
1123 (*
__ch�d
�()�
__THROW
;
1126 #ifde�
__USE_EXTERN_INLINES
1128
__ex��_�l�e
1129
`__NTH
(
$�h�ad_equ�
(
�h�ad_t
__th�ad1
,�th�ad_�
__th�ad2
))
1131
__th�ad1
=�
__th�ad2
;
1132
}
}
1135
g__END_DECLS
@/usr/include/sys/select.h
22 #i�de�
_SYS_SELECT_H
23
#_SYS_SELECT_H
1
)
25
~<�u�s.h
>
28
~<b�s/ty�s.h
>
31
~<b�s/���.h
>
34
~<b�s/sig�t.h
>
36 #i�de�
__sig�t_t_def�ed
37
#__sig�t_t_def�ed
)
38
__sig�t_t
tsig�t_t
;
42
#__�ed_time_t
)
43
#__�ed_time�ec
)
44
~<time.h
>
45
#__�ed_timev�
)
46
~<b�s/time.h
>
48 #i�de�
__su�c�ds_t_def�ed
49
__su�c�ds_t
tsu�c�ds_t
;
50
#__su�c�ds_t_def�ed
)
55
t__fd_mask
;
58 #unde�
__NFDBITS
59 #unde�
__FDELT
60 #unde�
__FDMASK
62
#__NFDBITS
(8 * (� (
__fd_mask
))
)
63
#__FDELT
(
d
�((d�/
__NFDBITS
)
)
64
#__FDMASK
(
d
�((
__fd_mask
�1 << ((d�%
__NFDBITS
))
)
71 #ifde�
__USE_XOPEN
72
__fd_mask
mfds_b�s
[
__FD_SETSIZE
/
__NFDBITS
];
73
#__FDS_BITS
(
�t
�((�t)->
fds_b�s
)
)
75
__fd_mask
m__fds_b�s
[
__FD_SETSIZE
/
__NFDBITS
];
76
#__FDS_BITS
(
�t
�((�t)->
__fds_b�s
)
)
78 }
tfd_�t
;
81
#FD_SETSIZE
__FD_SETSIZE
)
83 #ifde�
__USE_MISC
85
__fd_mask
tfd_mask
;
88
#NFDBITS
__NFDBITS
)
93
#FD_SET
(
fd
,
fd��
�
`__FD_SET
(fd, fd��)
)
94
#FD_CLR
(
fd
,
fd��
�
`__FD_CLR
(fd, fd��)
)
95
#FD_ISSET
(
fd
,
fd��
�
`__FD_ISSET
(fd, fd��)
)
96
#FD_ZERO
(
fd��
�
`__FD_ZERO
(fd��)
)
99
__BEGIN_DECLS
109
���
(
__nfds
,
fd_�t
*
__��ri�
__�adfds
,
110
fd_�t
*
__��ri�
__wr�efds
,
111
fd_�t
*
__��ri�
__ex��fds
,
112
timev�
*
__��ri�
__timeout
);
114 #ifde�
__USE_XOPEN2K
121
p���
(
__nfds
,
fd_�t
*
__��ri�
__�adfds
,
122
fd_�t
*
__��ri�
__wr�efds
,
123
fd_�t
*
__��ri�
__ex��fds
,
124 cڡ
time�ec
*
__��ri�
__timeout
,
125 cڡ
__sig�t_t
*
__��ri�
__sigmask
);
128
g__END_DECLS
@/usr/include/sys/sysmacros.h
21 #i�de�
_SYS_SYSMACROS_H
22
#_SYS_SYSMACROS_H
1
)
24
~<�u�s.h
>
29 #ifde�
__GLIBC_HAVE_LONG_LONG
30
__ex�nsi�__
31
$gnu_dev_maj�
(
__dev
)
32
__THROW
;
33
__ex�nsi�__
34
$gnu_dev_m��
(
__dev
)
35
__THROW
;
36
__ex�nsi�__
37
$gnu_dev_makedev
(
__maj�
,
38
__m��
)
39
__THROW
;
41 #i�
def�ed
__GNUC__
&& __GNUC__ >�2 && def�ed
__USE_EXTERN_INLINES
42
__ex�nsi�__
__ex��_�l�e
43
`__NTH
(
$gnu_dev_maj�
(
__dev
))
45 ((
__dev
>> 8) & 0xfff) | (() (__dev >> 32) & ~0xfff);
46
}
}
48
__ex�nsi�__
__ex��_�l�e
49
__NTH
(
$gnu_dev_m��
(
__dev
))
51 (
__dev
& 0xff) | (() (__dev >> 12) & ~0xff);
52
}
}
54
__ex�nsi�__
__ex��_�l�e
55
__NTH
(
$gnu_dev_makedev
(
__maj�
,
__m��
))
57 ((
__m��
& 0xff�| ((
__maj�
& 0xfff) << 8)
58 | (((�(
__m��
& ~0xff)) << 12)
59 | (((�(
__maj�
& ~0xfff)) << 32));
60
}
}
65
#maj�
(
dev
�
`gnu_dev_maj�
(dev)
)
66
#m��
(
dev
�
`gnu_dev_m��
(dev)
)
67
#makedev
(
maj
,
m�
�
`gnu_dev_makedev
(maj, m�)
)
@/usr/include/time.h
23 #i�def
_TIME_H
25 #i�(!
def�ed
__�ed_time_t
&& !def�ed
__�ed_�ock_t
&& \
26 !
def�ed
g__�ed_time�ec
)
27
#_TIME_H
1
)
28
~<�u�s.h
>
30
g__BEGIN_DECLS
34 #ifdef
_TIME_H
36
#__�ed_size_t
)
37
#__�ed_NULL
)
38
~<�ddef.h
>
42
~<b�s/time.h
>
45 #i�!
def�ed
__STRICT_ANSI__
&& !def�ed
__USE_XOPEN2K
46 #i�de�
CLK_TCK
47
#CLK_TCK
CLOCKS_PER_SEC
)
53 #i�!
def�ed
__�ock_t_def�ed
&& (def�ed
_TIME_H
|| def�ed
__�ed_�ock_t
)
54
#__�ock_t_def�ed
1
)
56
~<b�s/ty�s.h
>
58
__BEGIN_NAMESPACE_STD
60
__�ock_t
t�ock_t
;
61
g__END_NAMESPACE_STD
62 #i�
def�ed
__USE_XOPEN
|| def�ed
__USE_POSIX
|| def�ed
__USE_MISC
63
$__USING_NAMESPACE_STD
(
�ock_t
)
67 #unde�
__�ed_�ock_t
69 #i�!
def�ed
__time_t_def�ed
&& (def�ed
_TIME_H
|| def�ed
__�ed_time_t
)
70
#__time_t_def�ed
1
)
72
~<b�s/ty�s.h
>
74
__BEGIN_NAMESPACE_STD
76
__time_t
ttime_t
;
77
__END_NAMESPACE_STD
78 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
|| def�ed
__USE_SVID
79
$__USING_NAMESPACE_STD
(
time_t
)
83 #unde�
__�ed_time_t
85 #i�!
def�ed
__�ockid_t_def�ed
&& \
86 ((
def�ed
_TIME_H
&& def�ed
__USE_POSIX199309
�|| def�ed
__�ed_�ockid_t
)
87
#__�ockid_t_def�ed
1
)
89
~<b�s/ty�s.h
>
92
__�ockid_t
t�ockid_t
;
95 #unde�
__�ockid_time_t
97 #i�!
def�ed
__tim�_t_def�ed
&& \
98 ((
def�ed
_TIME_H
&& def�ed
__USE_POSIX199309
�|| def�ed
__�ed_tim�_t
)
99
#__tim�_t_def�ed
1
)
101
~<b�s/ty�s.h
>
104
__tim�_t
ttim�_t
;
107 #unde�
__�ed_tim�_t
110 #i�!
def�ed
__time�ec_def�ed
&& \
111 ((
def�ed
_TIME_H
&& \
112 (
def�ed
__USE_POSIX199309
|| def�ed
__USE_MISC
)) || \
113
def�ed
__�ed_time�ec
)
114
#__time�ec_def�ed
1
)
116
~<b�s/ty�s.h
>
120
stime�ec
122
__time_t
tv_�c
;
123
tv_n�c
;
127 #unde�
__�ed_time�ec
130 #ifdef
_TIME_H
131
__BEGIN_NAMESPACE_STD
133
stm
135
tm_�c
;
136
tm_m�
;
137
tm_hour
;
138
tm_mday
;
139
tm_m�
;
140
tm_y�r
;
141
tm_wday
;
142
tm_yday
;
143
tm_isd�
;
145 #ifdef
__USE_BSD
146
tm_gmtoff
;
147
__cڡ
*
tm_z�e
;
149
__tm_gmtoff
;
150
__cڡ
*
__tm_z�e
;
153
__END_NAMESPACE_STD
154 #i�
def�ed
__USE_XOPEN
|| def�ed
__USE_POSIX
|| def�ed
__USE_MISC
155
$__USING_NAMESPACE_STD
(
tm
)
159 #ifde�
__USE_POSIX199309
161
s�im��ec
163
time�ec
�_��rv�
;
164
time�ec
�_v�ue
;
168
sigev�t
;
172 #ifde�
__USE_XOPEN2K
173 #i�de�
__pid_t_def�ed
174
__pid_t
tpid_t
;
175
#__pid_t_def�ed
)
180
__BEGIN_NAMESPACE_STD
183
�ock_t
$�ock
(�
__THROW
;
186
time_t
$time
(
time_t
*
__tim�
�
__THROW
;
189
$dif�ime
(
time_t
__time1
,�ime_�
__time0
)
190
__THROW
`__��ibu�__
((
__cڡ__
));
193
time_t
$mktime
(
tm
*
__�
�
__THROW
;
199
size_t
$�r�ime
(*
__��ri�
__s
,
size_t
__maxsize
,
200
__cڡ
*
__��ri�
__f�m�
,
201
__cڡ
tm
*
__��ri�
__�
�
__THROW
;
202
__END_NAMESPACE_STD
204 #ifde�
__USE_XOPEN
207
*
$��time
(
__cڡ
*
__��ri�
__s
,
208
__cڡ
*
__��ri�
__fmt
,
tm
*
__�
)
209
__THROW
;
212 #ifde�
__USE_XOPEN2K8
215
~<xlo��.h
>
217
size_t
$�r�ime_l
(*
__��ri�
__s
,
size_t
__maxsize
,
218
__cڡ
*
__��ri�
__f�m�
,
219
__cڡ
tm
*
__��ri�
__�
,
220
__lo��_t
__loc
�
__THROW
;
223 #ifde�
__USE_GNU
224
*
$��time_l
(
__cڡ
*
__��ri�
__s
,
225
__cڡ
*
__��ri�
__fmt
,
tm
*
__�
,
226
__lo��_t
__loc
�
__THROW
;
230
__BEGIN_NAMESPACE_STD
233
tm
*
$gmtime
(
__cڡ
time_t
*
__tim�
�
__THROW
;
237
tm
*
$lo��ime
(
__cڡ
time_t
*
__tim�
�
__THROW
;
238
__END_NAMESPACE_STD
240 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
243
tm
*
$gmtime_r
(
__cڡ
time_t
*
__��ri�
__tim�
,
244
tm
*
__��ri�
__�
�
__THROW
;
248
tm
*
$lo��ime_r
(
__cڡ
time_t
*
__��ri�
__tim�
,
249
tm
*
__��ri�
__�
�
__THROW
;
252
__BEGIN_NAMESPACE_STD
255
*
$as�ime
(
__cڡ
tm
*
__�
�
__THROW
;
258
*
$�ime
(
__cڡ
time_t
*
__tim�
�
__THROW
;
259
__END_NAMESPACE_STD
261 #i�
def�ed
__USE_POSIX
|| def�ed
__USE_MISC
266
*
$as�ime_r
(
__cڡ
tm
*
__��ri�
__�
,
267 *
__��ri�
__buf
�
__THROW
;
270
*
$�ime_r
(
__cڡ
time_t
*
__��ri�
__tim�
,
271 *
__��ri�
__buf
�
__THROW
;
276
*
__tz�me
[2];
277
__daylight
;
278
__timez�e
;
281 #ifdef
__USE_POSIX
283
*
tz�me
[2];
287
$tz�t
(�
__THROW
;
290 #i�
def�ed
__USE_SVID
|| def�ed
__USE_XOPEN
291
daylight
;
292
timez�e
;
295 #ifde�
__USE_SVID
298
$�ime
(
__cڡ
time_t
*
__wh�
�
__THROW
;
304
#__i��p
(
y�r
) \
305 ((
y�r
�% 4 =�0 && ((y�r�% 100 !�0 || (y�r�% 400 =�0))
)
308 #ifde�
__USE_MISC
313
time_t
$timegm
(
tm
*
__�
�
__THROW
;
316
time_t
$tim�o�l
(
tm
*
__�
�
__THROW
;
319
$dysize
(
__y�r
�
__THROW
`__��ibu�__
((
__cڡ__
));
323 #ifde�
__USE_POSIX199309
328
`�no��p
(
__cڡ
time�ec
*
__�que�ed_time
,
329
time�ec
*
__�ma��g
);
333
$�ock_g��s
(
�ockid_t
__�ock_id
,
time�ec
*
__�s
�
__THROW
;
336
$�ock_g�time
(
�ockid_t
__�ock_id
,
time�ec
*
__�
�
__THROW
;
339
$�ock_��ime
(
�ockid_t
__�ock_id
,
__cڡ
time�ec
*
__�
)
340
__THROW
;
342 #ifde�
__USE_XOPEN2K
347
`�ock_�no��p
(
�ockid_t
__�ock_id
,
__�ags
,
348
__cڡ
time�ec
*
__�q
,
349
time�ec
*
__�m
);
352
$�ock_g��u�ockid
(
pid_t
__pid
,
�ockid_t
*
__�ock_id
�
__THROW
;
357
$tim�_���
(
�ockid_t
__�ock_id
,
358
sigev�t
*
__��ri�
__evp
,
359
tim�_t
*
__��ri�
__tim�id
�
__THROW
;
362
$tim�_d��e
(
tim�_t
__tim�id
�
__THROW
;
365
$tim�_��ime
(
tim�_t
__tim�id
,
__�ags
,
366
__cڡ
�im��ec
*
__��ri�
__v�ue
,
367
�im��ec
*
__��ri�
__ov�ue
�
__THROW
;
370
$tim�_g�time
(
tim�_t
__tim�id
,
�im��ec
*
__v�ue
)
371
__THROW
;
374
$tim�_g�ov�run
(
tim�_t
__tim�id
�
__THROW
;
378 #ifde�
__USE_XOPEN_EXTENDED
390
g�d�e_�r
;
399
tm
*
`g�d�e
(
__cڡ
*
__�r�g
);
402 #ifde�
__USE_GNU
413
`g�d�e_r
(
__cڡ
*
__��ri�
__�r�g
,
414
tm
*
__��ri�
__�sbu�
);
417
__END_DECLS
@/usr/include/wctype.h
24 #i�de�
_WCTYPE_H
26
~<�u�s.h
>
27
~<b�s/ty�s.h
>
29 #i�de�
__�ed_iswxxx
30
#_WCTYPE_H
1
)
33
#__�ed_w�t_t
)
34
~<�ddef.h
>
38 #i�de�
WEOF
39
#WEOF
(0xffffffffu)
)
42 #unde�
__�ed_iswxxx
47 #i�de�
__iswxxx_def�ed
48
#__iswxxx_def�ed
1
)
50
__BEGIN_NAMESPACE_C99
53
tw�y�_t
;
54
g__END_NAMESPACE_C99
56 #i�de�
_ISwb�
61
~<�d�n.h
>
62 #i�
__BYTE_ORDER
=�
__BIG_ENDIAN
63
#_ISwb�
(
b�
�(1 << (b�))
)
65
#_ISwb�
(
b�
) \
66 ((
b�
) < 8 ? () ((1UL << (bit)) << 24) \
67 : ((
b�
) < 16 ? () ((1UL << (bit)) << 8) \
68 : ((
b�
) < 24 ? () ((1UL << (bit)) >> 8) \
69 : (�((1UL << (
b�
)�>> 24))))
)
74
m__ISwu��
= 0,
75
m__ISwlow�
= 1,
76
m__ISw�pha
= 2,
77
m__ISwdig�
= 3,
78
m__ISwxdig�
= 4,
79
m__ISw�a�
= 5,
80
m__ISw��t
= 6,
81
m__ISwg�ph
= 7,
82
m__ISwb�nk
= 8,
83
m__ISw��l
= 9,
84
m__ISwpun�
= 10,
85
m__ISw�num
= 11,
87
m_ISwu��
=
_ISwb�
(
__ISwu��
),
88
m_ISwlow�
=
_ISwb�
(
__ISwlow�
),
89
m_ISw�pha
=
_ISwb�
(
__ISw�pha
),
90
m_ISwdig�
=
_ISwb�
(
__ISwdig�
),
91
m_ISwxdig�
=
_ISwb�
(
__ISwxdig�
),
92
m_ISw�a�
=
_ISwb�
(
__ISw�a�
),
93
m_ISw��t
=
_ISwb�
(
__ISw��t
),
94
m_ISwg�ph
=
_ISwb�
(
__ISwg�ph
),
95
m_ISwb�nk
=
_ISwb�
(
__ISwb�nk
),
96
m_ISw��l
=
_ISwb�
(
__ISw��l
),
97
m_ISwpun�
=
_ISwb�
(
__ISwpun�
),
98
m_ISw�num
=
_ISwb�
(
__ISw�num
)
103
__BEGIN_DECLS
105
__BEGIN_NAMESPACE_C99
112
$isw�num
(
w�t_t
__wc
�
__THROW
;
118
$isw�pha
(
w�t_t
__wc
�
__THROW
;
121
$isw��l
(
w�t_t
__wc
�
__THROW
;
125
$iswdig�
(
w�t_t
__wc
�
__THROW
;
129
$iswg�ph
(
w�t_t
__wc
�
__THROW
;
134
$iswlow�
(
w�t_t
__wc
�
__THROW
;
137
$isw��t
(
w�t_t
__wc
�
__THROW
;
142
$iswpun�
(
w�t_t
__wc
�
__THROW
;
147
$isw�a�
(
w�t_t
__wc
�
__THROW
;
152
$iswu��
(
w�t_t
__wc
�
__THROW
;
157
$iswxdig�
(
w�t_t
__wc
�
__THROW
;
162 #ifde�
__USE_ISOC99
163
$iswb�nk
(
w�t_t
__wc
�
__THROW
;
172
w�y�_t
$w�y�
(
__cڡ
*
__�ݔty
�
__THROW
;
176
$isw�y�
(
w�t_t
__wc
,
w�y�_t
__desc
�
__THROW
;
177
__END_NAMESPACE_C99
184
__BEGIN_NAMESPACE_C99
187
__cڡ
t__�t32_t
*
tw��ns_t
;
188
__END_NAMESPACE_C99
189 #ifde�
__USE_GNU
190
$__USING_NAMESPACE_C99
(
w��ns_t
)
193
__BEGIN_NAMESPACE_C99
195
w�t_t
$towlow�
(
w�t_t
__wc
�
__THROW
;
198
w�t_t
$towu��
(
w�t_t
__wc
�
__THROW
;
199
__END_NAMESPACE_C99
201
__END_DECLS
208 #ifde�
_WCTYPE_H
214
__BEGIN_DECLS
216
__BEGIN_NAMESPACE_C99
219
w��ns_t
$w��ns
(
__cڡ
*
__�ݔty
�
__THROW
;
222
w�t_t
$tow��ns
(
w�t_t
__wc
,
w��ns_t
__desc
�
__THROW
;
223
__END_NAMESPACE_C99
225 #ifde�
__USE_XOPEN2K8
227
~<xlo��.h
>
231
$isw�num_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
237
$isw�pha_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
240
$isw��l_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
244
$iswdig�_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
248
$iswg�ph_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
253
$iswlow�_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
256
$isw��t_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
261
$iswpun�_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
266
$isw�a�_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
271
$iswu��_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
276
$iswxdig�_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
281
$iswb�nk_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
285
w�y�_t
$w�y�_l
(
__cڡ
*
__�ݔty
,
__lo��_t
__lo��
)
286
__THROW
;
290
$isw�y�_l
(
w�t_t
__wc
,
w�y�_t
__desc
,
__lo��_t
__lo��
)
291
__THROW
;
299
w�t_t
$towlow�_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
302
w�t_t
$towu��_l
(
w�t_t
__wc
,
__lo��_t
__lo��
�
__THROW
;
306
w��ns_t
$w��ns_l
(
__cڡ
*
__�ݔty
,
__lo��_t
__lo��
)
307
__THROW
;
310
w�t_t
$tow��ns_l
(
w�t_t
__wc
,
w��ns_t
__desc
,
311
__lo��_t
__lo��
�
__THROW
;
315
__END_DECLS
@/usr/include/bits/errno.h
20 #ifde�
_ERRNO_H
22 #unde�
EDOM
23 #unde�
EILSEQ
24 #unde�
ERANGE
25
~<l�ux/��o.h
>
28
#ENOTSUP
EOPNOTSUPP
)
31 #i�de�
ECANCELED
32
#ECANCELED
125
)
36 #i�de�
EOWNERDEAD
37
#EOWNERDEAD
130
)
38
#ENOTRECOVERABLE
131
)
41 #i�de�
__ASSEMBLER__
43
*
$__��o_lo�ti�
(�
__THROW
`__��ibu�__
((
__cڡ__
));
45 #i�!
def�ed
_LIBC
|| def�ed
_LIBC_REENTRANT
47
#��o
(*
`__��o_lo�ti�
())
)
52 #i�!
def�ed
_ERRNO_H
&& def�ed
__�ed_Em�h
56
#EDOM
33
)
57
#EILSEQ
84
)
58
#ERANGE
34
)
@/usr/include/bits/select.h
19 #i�de�
_SYS_SELECT_H
23
~<b�s/w�dsize.h
>
26 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
28 #i�
__WORDSIZE
== 64
29
#__FD_ZERO_STOS
"�osq"
)
31
#__FD_ZERO_STOS
"�o�"
)
34
#__FD_ZERO
(
fd�
) \
36
__d0
,
__d1
; \
37
__asm__
`__vީ�e__
("�d;��; "
__FD_ZERO_STOS
\
38 : "=c" (
__d0
), "=D" (
__d1
) \
39 : "a" (0), "0" ( (
fd_�t
) \
40 / (
__fd_mask
)), \
41 "1" (&
`__FDS_BITS
(
fd�
)[0]) \
43 } 0)
)
49
#__FD_ZERO
(
�t
) \
51
__i
; \
52
fd_�t
*
__�r
= (
�t
); \
53
__i
= 0; __�< (
fd_�t
�/ (
__fd_mask
); ++__i) \
54
`__FDS_BITS
(
__�r
)[
__i
] = 0; \
55 } 0)
)
59
#__FD_SET
(
d
,
�t
�(
`__FDS_BITS
(�t)[
`__FDELT
(d)] |�
`__FDMASK
(d))
)
60
#__FD_CLR
(
d
,
�t
�(
`__FDS_BITS
(�t)[
`__FDELT
(d)] &�~
`__FDMASK
(d))
)
61
#__FD_ISSET
(
d
,
�t
) \
62 ((
`__FDS_BITS
(
�t
)[
`__FDELT
(
d
)] &
`__FDMASK
(d)�!�0)
)
@/usr/include/bits/setjmp.h
20 #i�de�
_BITS_SETJMP_H
21
#_BITS_SETJMP_H
1
)
23 #i�!
def�ed
_SETJMP_H
&& !def�ed
_PTHREAD_H
27
~<b�s/w�dsize.h
>
29 #i�de�
_ASM
31 #i�
__WORDSIZE
== 64
32
t__jmp_buf
[8];
34
t__jmp_buf
[6];
@/usr/include/bits/sigset.h
21 #i�def
_SIGSET_H_ty�s
22
#_SIGSET_H_ty�s
1
)
24
t__sig_�omic_t
;
28
#_SIGSET_NWORDS
(1024 / (8 * ()))
)
31
m__v�
[
_SIGSET_NWORDS
];
32 }
t__sig�t_t
;
43 #i�!
def�ed
_SIGSET_H_�s
&& def�ed
_SIGNAL_H
44
#_SIGSET_H_�s
1
)
46 #i�de�
_EXTERN_INLINE
47
#_EXTERN_INLINE
__ex��_�l�e
)
51
#__sigmask
(
sig
) \
52 (((�1�<< (((
sig
�- 1�% (8 * ())))
)
55
#__sigw�d
(
sig
�(((sig�- 1�/ (8 * ()))
)
57 #i�
def�ed
__GNUC__
&& __GNUC__ >= 2
58
#__sigem�y�t
(
�t
) \
59 (
`__ex�nsi�__
({
__�t
=
_SIGSET_NWORDS
; \
60
sig�t_t
*
__�t
= (
�t
); \
61 --
__�t
>�0�
__�t
->
__v�
[__cnt] = 0; \
62 0; }))
)
63
#__sigf�l�t
(
�t
) \
64 (
`__ex�nsi�__
({
__�t
=
_SIGSET_NWORDS
; \
65
sig�t_t
*
__�t
= (
�t
); \
66 --
__�t
>�0�
__�t
->
__v�
[__cnt] = ~0UL; \
67 0; }))
)
69 #ifde�
__USE_GNU
73
#__sigi�m�y�t
(
�t
) \
74 (
`__ex�nsi�__
({
__�t
=
_SIGSET_NWORDS
; \
75 cڡ
sig�t_t
*
__�t
= (
�t
); \
76
__�t
=
__�t
->
__v�
[--
__�t
]; \
77 !
__�t
&& --
__�t
>= 0) \
78
__�t
=
__�t
->
__v�
[
__�t
]; \
79
__�t
=�0; }))
)
80
#__sig�d�t
(
de�
,
��
,
right
) \
81 (
`__ex�nsi�__
({
__�t
=
_SIGSET_NWORDS
; \
82
sig�t_t
*
__de�
= (
de�
); \
83 cڡ
sig�t_t
*
__��
= (
��
); \
84 cڡ
sig�t_t
*
__right
= (
right
); \
85 --
__�t
>= 0) \
86
__de�
->
__v�
[
__�t
] = (
__��
->__val[__cnt] \
87 &
__right
->
__v�
[
__�t
]); \
88 0; }))
)
89
#__sigܣt
(
de�
,
��
,
right
) \
90 (
`__ex�nsi�__
({
__�t
=
_SIGSET_NWORDS
; \
91
sig�t_t
*
__de�
= (
de�
); \
92 cڡ
sig�t_t
*
__��
= (
��
); \
93 cڡ
sig�t_t
*
__right
= (
right
); \
94 --
__�t
>= 0) \
95
__de�
->
__v�
[
__�t
] = (
__��
->__val[__cnt] \
96 |
__right
->
__v�
[
__�t
]); \
97 0; }))
)
104
__sigismemb�
(
__cڡ
__sig�t_t
*, );
105
__sigadd�t
(
__sig�t_t
*, );
106
__sigd��t
(
__sig�t_t
*, );
108 #ifde�
__USE_EXTERN_INLINES
109
#__SIGSETFN
(
NAME
,
BODY
,
CONST
) \
110
_EXTERN_INLINE
\
111
`NAME
(
CONST
__sig�t_t
*
__�t
,
__sig
) \
113
__mask
=
`__sigmask
(
__sig
); \
114
__w�d
=
`__sigw�d
(
__sig
); \
115
BODY
; \
116 }
)
118
__SIGSETFN
(
__sigismemb�
, (
__�t
->
__v�
[
__w�d
] &
__mask
�? 1 : 0,
__cڡ
)
119
__SIGSETFN
(
__sigadd�t
, ((
__�t
->
__v�
[
__w�d
] |�
__mask
), 0), )
120
__SIGSETFN
(
__sigd��t
, ((
__�t
->
__v�
[
__w�d
] &�~
__mask
), 0), )
122 #unde�
__SIGSETFN
@/usr/include/bits/time.h
24 #i�de�
__�ed_timev�
25 #i�de�
_BITS_TIME_H
26
#_BITS_TIME_H
1
)
34
#CLOCKS_PER_SEC
1000000l
)
36 #i�!
def�ed
__STRICT_ANSI__
&& !def�ed
__USE_XOPEN2K
39
~<b�s/ty�s.h
>
40
__sysc�f
();
41
#CLK_TCK
((
__�ock_t
�
`__sysc�f
(2)�
)
44 #ifde�
__USE_POSIX199309
46
#CLOCK_REALTIME
0
)
48
#CLOCK_MONOTONIC
1
)
50
#CLOCK_PROCESS_CPUTIME_ID
2
)
52
#CLOCK_THREAD_CPUTIME_ID
3
)
55
#TIMER_ABSTIME
1
)
61 #ifde�
__�ed_timev�
62 #unde�
__�ed_timev�
63 #i�de�
_STRUCT_TIMEVAL
64
#_STRUCT_TIMEVAL
1
)
65
~<b�s/ty�s.h
>
69
stimev�
71
__time_t
mtv_�c
;
72
__su�c�ds_t
mtv_u�c
;
@/usr/include/sched.h
20 #i�def
_SCHED_H
21
#_SCHED_H
1
)
23
~<�u�s.h
>
26
~<b�s/ty�s.h
>
28
#__�ed_size_t
)
29
~<�ddef.h
>
31
#__�ed_time�ec
)
32
~<time.h
>
35
~<b�s/sched.h
>
37
#sched_�iܙy
__sched_�iܙy
)
40
__BEGIN_DECLS
43
$sched_���am
(
__pid_t
__pid
,
__cڡ
sched_��m
*
__��m
)
44
__THROW
;
47
$sched_g���m
(
__pid_t
__pid
,
sched_��m
*
__��m
�
__THROW
;
50
$sched_�tschedu�r
(
__pid_t
__pid
,
__p�icy
,
51
__cڡ
sched_��m
*
__��m
�
__THROW
;
54
$sched_g�schedu�r
(
__pid_t
__pid
�
__THROW
;
57
$sched_y�ld
(�
__THROW
;
60
$sched_g�_�iܙy_max
(
__�gܙhm
�
__THROW
;
63
$sched_g�_�iܙy_m�
(
__�gܙhm
�
__THROW
;
66
$sched_�_g�_��rv�
(
__pid_t
__pid
,
time�ec
*
__t
�
__THROW
;
69 #ifde�
__USE_GNU
71
#CPU_SETSIZE
__CPU_SETSIZE
)
72
#CPU_SET
(
�u
,
�u��
�
`__CPU_SET_S
(�u, (
�u_�t_t
), cpu��)
)
73
#CPU_CLR
(
�u
,
�u��
�
`__CPU_CLR_S
(�u, (
�u_�t_t
), cpu��)
)
74
#CPU_ISSET
(
�u
,
�u��
�
`__CPU_ISSET_S
(�u, (
�u_�t_t
), \
75
�u��
)
)
76
#CPU_ZERO
(
�u��
�
`__CPU_ZERO_S
( (
�u_�t_t
), cpu��)
)
77
#CPU_COUNT
(
�u��
�
`__CPU_COUNT_S
( (
�u_�t_t
), cpu��)
)
79
#CPU_SET_S
(
�u
,
�tsize
,
�u��
�
`__CPU_SET_S
(�u, s�size, cpu��)
)
80
#CPU_CLR_S
(
�u
,
�tsize
,
�u��
�
`__CPU_CLR_S
(�u, s�size, cpu��)
)
81
#CPU_ISSET_S
(
�u
,
�tsize
,
�u��
�
`__CPU_ISSET_S
(cpu, setsize, \
82
�u��
)
)
83
#CPU_ZERO_S
(
�tsize
,
�u��
�
`__CPU_ZERO_S
(�tsize, cpu��)
)
84
#CPU_COUNT_S
(
�tsize
,
�u��
�
`__CPU_COUNT_S
(�tsize, cpu��)
)
86
#CPU_EQUAL
(
�u��1
,
�u��2
) \
87
`__CPU_EQUAL_S
( (
�u_�t_t
),
�u��1
,
�u��2
)
)
88
#CPU_EQUAL_S
(
�tsize
,
�u��1
,
�u��2
) \
89
`__CPU_EQUAL_S
(
�tsize
,
�u��1
,
�u��2
)
)
91
#CPU_AND
(
de��t
,
�c�t1
,
�c�t2
) \
92
`__CPU_OP_S
( (
�u_�t_t
),
de��t
,
�c�t1
,
�c�t2
, &)
)
93
#CPU_OR
(
de��t
,
�c�t1
,
�c�t2
) \
94
`__CPU_OP_S
( (
�u_�t_t
),
de��t
,
�c�t1
,
�c�t2
, |)
)
95
#CPU_XOR
(
de��t
,
�c�t1
,
�c�t2
) \
96
`__CPU_OP_S
( (
�u_�t_t
),
de��t
,
�c�t1
,
�c�t2
, ^)
)
97
#CPU_AND_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
) \
98
`__CPU_OP_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
, &)
)
99
#CPU_OR_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
) \
100
`__CPU_OP_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
, |)
)
101
#CPU_XOR_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
) \
102
`__CPU_OP_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
, ^)
)
104
#CPU_ALLOC_SIZE
(
cou�
�
`__CPU_ALLOC_SIZE
(cou�)
)
105
#CPU_ALLOC
(
cou�
�
`__CPU_ALLOC
(cou�)
)
106
#CPU_FREE
(
�u�t
�
`__CPU_FREE
(�u�t)
)
110
$sched_��ff��y
(
__pid_t
__pid
,
size_t
__�u�tsize
,
111
__cڡ
�u_�t_t
*
__�u�t
�
__THROW
;
114
$sched_g�aff��y
(
__pid_t
__pid
,
size_t
__�u�tsize
,
115
�u_�t_t
*
__�u�t
�
__THROW
;
118
__END_DECLS
@/usr/include/signal.h
23 #i�def
_SIGNAL_H
25 #i�!
def�ed
__�ed_sig_�omic_t
&& !def�ed
__�ed_sig�t_t
26
#_SIGNAL_H
)
29
~<�u�s.h
>
31
g__BEGIN_DECLS
33
~<b�s/sig�t.h
>
37 #i�
def�ed
__�ed_sig_�omic_t
|| def�ed
_SIGNAL_H
38 #i�de�
__sig_�omic_t_def�ed
39
#__sig_�omic_t_def�ed
)
40
__BEGIN_NAMESPACE_STD
41
__sig_�omic_t
tsig_�omic_t
;
42
g__END_NAMESPACE_STD
44 #unde�
__�ed_sig_�omic_t
47 #i�
def�ed
__�ed_sig�t_t
|| (def�ed
_SIGNAL_H
&& def�ed
__USE_POSIX
)
48 #i�de�
__sig�t_t_def�ed
49
#__sig�t_t_def�ed
)
50
__sig�t_t
tsig�t_t
;
52 #unde�
__�ed_sig�t_t
55 #ifde�
_SIGNAL_H
57
~<b�s/ty�s.h
>
58
~<b�s/signum.h
>
60 #i�
def�ed
__USE_XOPEN
|| def�ed
__USE_XOPEN2K
61 #i�de�
__pid_t_def�ed
62
__pid_t
tpid_t
;
63
#__pid_t_def�ed
)
65 #ifde�
__USE_XOPEN
67 #i�de�
__uid_t_def�ed
68
__uid_t
tuid_t
;
69
#__uid_t_def�ed
)
73 #ifde�
__USE_POSIX199309
75
#__�ed_time�ec
)
76
~<time.h
>
79
~<b�s/sig�fo.h
>
84 (*
t__sigh�d�r_t
) ();
89
__sigh�d�r_t
$__sysv_sig�l
(
__sig
,
__sigh�d�r_t
__h�d�r
)
90
__THROW
;
91 #ifde�
__USE_GNU
92
__sigh�d�r_t
$sysv_sig�l
(
__sig
,
__sigh�d�r_t
__h�d�r
)
93
__THROW
;
99
__BEGIN_NAMESPACE_STD
100 #ifde�
__USE_BSD
101
__sigh�d�r_t
$sig�l
(
__sig
,
__sigh�d�r_t
__h�d�r
)
102
__THROW
;
105 #ifde�
__REDIRECT_NTH
106
__sigh�d�r_t
`__REDIRECT_NTH
(
sig�l
,
107 (
__sig
,
__sigh�d�r_t
__h�d�r
),
108
__sysv_sig�l
);
110
#sig�l
__sysv_sig�l
)
113
__END_NAMESPACE_STD
115 #ifde�
__USE_XOPEN
118
__sigh�d�r_t
$bsd_sig�l
(
__sig
,
__sigh�d�r_t
__h�d�r
)
119
__THROW
;
125 #ifde�
__USE_POSIX
126
$k�l
(
__pid_t
__pid
,
__sig
�
__THROW
;
129 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN_EXTENDED
133
$k��g
(
__pid_t
__pg�
,
__sig
�
__THROW
;
136
__BEGIN_NAMESPACE_STD
138
$�i�
(
__sig
�
__THROW
;
139
__END_NAMESPACE_STD
141 #ifde�
__USE_SVID
143
__sigh�d�r_t
$ssig�l
(
__sig
,
__sigh�d�r_t
__h�d�r
)
144
__THROW
;
145
$gsig�l
(
__sig
�
__THROW
;
148 #i�
def�ed
__USE_MISC
|| def�ed
__USE_XOPEN2K
150
`psig�l
(
__sig
,
__cڡ
*
__s
);
153 #ifde�
__USE_XOPEN2K
155
`psig�fo
(
__cڡ
sig�fo_t
*
__p�fo
, __cڡ *
__s
);
168
`__sig�u�
(
__sig_�_mask
,
__is_sig
);
170 #ifde�
__FAVOR_BSD
173
$sig�u�
(
__mask
�
__THROW
__��ibu�_d����d__
;
175 #ifde�
__USE_XOPEN
176 #ifde�
__GNUC__
177
$sig�u�
(
__sig
�
`__asm__
("__xpg_sigpause");
180
#sig�u�
(
sig
�
`__sig�u�
((sig), 1)
)
186 #ifde�
__USE_BSD
193
#sigmask
(
sig
�
`__sigmask
(sig)
)
196
$sigblock
(
__mask
�
__THROW
__��ibu�_d����d__
;
199
$sig�tmask
(
__mask
�
__THROW
__��ibu�_d����d__
;
202
$sigg�mask
(�
__THROW
__��ibu�_d����d__
;
206 #ifde�
__USE_MISC
207
#NSIG
_NSIG
)
210 #ifde�
__USE_GNU
211
__sigh�d�r_t
tsigh�d�r_t
;
215 #ifde�
__USE_BSD
216
__sigh�d�r_t
tsig_t
;
219 #ifde�
__USE_POSIX
222
$sigem�y�t
(
sig�t_t
*
__�t
�
__THROW
`__n�nu�
((1));
225
$sigf�l�t
(
sig�t_t
*
__�t
�
__THROW
`__n�nu�
((1));
228
$sigadd�t
(
sig�t_t
*
__�t
,
__signo
�
__THROW
`__n�nu�
((1));
231
$sigd��t
(
sig�t_t
*
__�t
,
__signo
�
__THROW
`__n�nu�
((1));
234
$sigismemb�
(
__cڡ
sig�t_t
*
__�t
,
__signo
)
235
__THROW
`__n�nu�
((1));
237 #ifde�
__USE_GNU
239
$sigi�m�y�t
(
__cڡ
sig�t_t
*
__�t
�
__THROW
`__n�nu�
((1));
242
$sig�d�t
(
sig�t_t
*
__�t
,
__cڡ
sig�t_�*
__��
,
243
__cڡ
sig�t_t
*
__right
�
__THROW
`__n�nu�
((1, 2, 3));
246
$sigܣt
(
sig�t_t
*
__�t
,
__cڡ
sig�t_�*
__��
,
247
__cڡ
sig�t_t
*
__right
�
__THROW
`__n�nu�
((1, 2, 3));
252
~<b�s/siga�i�.h
>
255
$sig�ocmask
(
__how
,
__cڡ
sig�t_t
*
__��ri�
__�t
,
256
sig�t_t
*
__��ri�
__o�t
�
__THROW
;
263
$sigsu��d
(
__cڡ
sig�t_t
*
__�t
�
`__n�nu�
((1));
266
$siga�i�
(
__sig
,
__cڡ
siga�i�
*
__��ri�
__a�
,
267
siga�i�
*
__��ri�
__��
�
__THROW
;
270
$sig�nd�g
(
sig�t_t
*
__�t
�
__THROW
`__n�nu�
((1));
277
$sigwa�
(
__cڡ
sig�t_t
*
__��ri�
__�t
, *__��ri�
__sig
)
278
`__n�nu�
((1, 2));
280 #ifde�
__USE_POSIX199309
285
$sigwa��fo
(
__cڡ
sig�t_t
*
__��ri�
__�t
,
286
sig�fo_t
*
__��ri�
__�fo
�
`__n�nu�
((1));
293
$sigtimedwa�
(
__cڡ
sig�t_t
*
__��ri�
__�t
,
294
sig�fo_t
*
__��ri�
__�fo
,
295
__cڡ
time�ec
*
__��ri�
__timeout
)
296
`__n�nu�
((1));
300
$sigqueue
(
__pid_t
__pid
,
__sig
,
__cڡ
sigv�
__v�
)
301
__THROW
;
306 #ifde�
__USE_BSD
310
__cڡ
*__cڡ
_sys_sigli�
[
_NSIG
];
311
__cڡ
*__cڡ
sys_sigli�
[
_NSIG
];
314
ssigvec
316
__sigh�d�r_t
sv_h�d�r
;
317
sv_mask
;
319
sv_�ags
;
320
#sv_ڡack
sv_�ags
)
324
#SV_ONSTACK
(1 << 0)
)
325
#SV_INTERRUPT
(1 << 1)
)
326
#SV_RESETHAND
(1 << 2)
)
334
$sigvec
(
__sig
,
__cڡ
sigvec
*
__vec
,
335
sigvec
*
__ovec
�
__THROW
;
339
~<b�s/sigcڋxt.h
>
342
$sig�tu�
(
sigcڋxt
*
__s�
�
__THROW
;
347 #i�
def�ed
__USE_BSD
|| def�ed
__USE_XOPEN_EXTENDED
348
#__�ed_size_t
)
349
~<�ddef.h
>
354
$sig���u�
(
__sig
,
__���u�
�
__THROW
;
356
~<b�s/sig�ack.h
>
357 #ifde�
__USE_XOPEN
359
~<sys/ucڋxt.h
>
365
$sig�ack
(
sig�ack
*
__ss
, sig�ack *
__oss
)
366
__THROW
__��ibu�_d����d__
;
370
$sig�t�ack
(
__cڡ
sig�t�ack
*
__��ri�
__ss
,
371
sig�t�ack
*
__��ri�
__oss
�
__THROW
;
375 #ifde�
__USE_XOPEN_EXTENDED
379
$sigh�d
(
__sig
�
__THROW
;
382
$sig�l�
(
__sig
�
__THROW
;
385
$sigign�e
(
__sig
�
__THROW
;
388
__sigh�d�r_t
$sig�t
(
__sig
,
__sigh�d�r_t
__di�
�
__THROW
;
391 #i�
def�ed
__USE_POSIX199506
|| def�ed
__USE_UNIX98
394
~<b�s/�h�adty�s.h
>
395
~<b�s/sigth�ad.h
>
402
$__libc_cu��t_sig�m�
(�
__THROW
;
404
$__libc_cu��t_sig�max
(�
__THROW
;
408
__END_DECLS
@/usr/include/bits/sched.h
22 #i�de�
__�ed_sched��m
24 #i�de�
_SCHED_H
30
#SCHED_OTHER
0
)
31
#SCHED_FIFO
1
)
32
#SCHED_RR
2
)
33 #ifde�
__USE_GNU
34
#SCHED_BATCH
3
)
37 #ifde�
__USE_MISC
39
#CSIGNAL
0x000000f�
)
40
#CLONE_VM
0x00000100
)
41
#CLONE_FS
0x00000200
)
42
#CLONE_FILES
0x00000400
)
43
#CLONE_SIGHAND
0x00000800
)
44
#CLONE_PTRACE
0x00002000
)
45
#CLONE_VFORK
0x00004000
)
47
#CLONE_PARENT
0x00008000
)
49
#CLONE_THREAD
0x00010000
)
50
#CLONE_NEWNS
0x00020000
)
51
#CLONE_SYSVSEM
0x00040000
)
52
#CLONE_SETTLS
0x00080000
)
53
#CLONE_PARENT_SETTID
0x00100000
)
55
#CLONE_CHILD_CLEARTID
0x00200000
)
57
#CLONE_DETACHED
0x00400000
)
58
#CLONE_UNTRACED
0x00800000
)
60
#CLONE_CHILD_SETTID
0x01000000
)
62
#CLONE_NEWUTS
0x04000000
)
63
#CLONE_NEWIPC
0x08000000
)
64
#CLONE_NEWUSER
0x10000000
)
65
#CLONE_NEWPID
0x20000000
)
66
#CLONE_NEWNET
0x40000000
)
67
#CLONE_IO
0x80000000
)
71
ssched_��m
73
m__sched_�iܙy
;
76
g__BEGIN_DECLS
78 #ifde�
__USE_MISC
80
��e
((*
__�
�(*
__�g
), *
__ch�d_�ack
,
81
__�ags
, *
__�g
, ...�
__THROW
;
84
$unsh�e
(
__�ags
�
__THROW
;
87
$sched_g��u
(�
__THROW
;
90
__END_DECLS
94 #i�!
def�ed
__def�ed_sched��m
\
95 && (
def�ed
__�ed_sched��m
|| def�ed
_SCHED_H
)
96
#__def�ed_sched��m
1
)
98
s__sched_��m
100
__sched_�iܙy
;
102 #unde�
__�ed_sched��m
106 #i�
def�ed
_SCHED_H
&& !def�ed
__�u_�t_t_def�ed
107
#__�u_�t_t_def�ed
)
109
#__CPU_SETSIZE
1024
)
110
#__NCPUBITS
(8 * (
__�u_mask
))
)
113
t__�u_mask
;
116
#__CPUELT
(
�u
�((�u�/
__NCPUBITS
)
)
117
#__CPUMASK
(
�u
�((
__�u_mask
�1 << ((�u�%
__NCPUBITS
))
)
122
__�u_mask
__b�s
[
__CPU_SETSIZE
/
__NCPUBITS
];
123 }
t�u_�t_t
;
126 #i�
`__GNUC_PREREQ
(2, 91)
127
#__CPU_ZERO_S
(
�tsize
,
�u��
) \
128 d�
`__bu�t�_mem�t
(
�u��
, '\0',
�tsize
); 0)
)
130
#__CPU_ZERO_S
(
�tsize
,
�u��
) \
132
size_t
__i
; \
133
size_t
__imax
= (
�tsize
�/ (
__�u_mask
); \
134
__�u_mask
*
__b�s
= (
�u��
)->__bits; \
135
__i
= 0; __�<
__imax
; ++__i) \
136
__b�s
[
__i
] = 0; \
137
}
} 0)
)
139
#__CPU_SET_S
(
�u
,
�tsize
,
�u��
) \
140 (
__ex�nsi�__
\
141 ({
size_t
__�u
= (
�u
); \
142
__�u
< 8 * (
�tsize
) \
143 ? (((
__�u_mask
*�((
�u��
)->
__b�s
))[
`__CPUELT
(
__�u
)] \
144 |�
`__CPUMASK
(
__�u
)) \
145 : 0; }))
)
146
#__CPU_CLR_S
(
�u
,
�tsize
,
�u��
) \
147 (
__ex�nsi�__
\
148 ({
size_t
__�u
= (
�u
); \
149
__�u
< 8 * (
�tsize
) \
150 ? (((
__�u_mask
*�((
�u��
)->
__b�s
))[
`__CPUELT
(
__�u
)] \
151 &�~
`__CPUMASK
(
__�u
)) \
152 : 0; }))
)
153
#__CPU_ISSET_S
(
�u
,
�tsize
,
�u��
) \
154 (
__ex�nsi�__
\
155 ({
size_t
__�u
= (
�u
); \
156
__�u
< 8 * (
�tsize
) \
157 ? ((((
__cڡ
__�u_mask
*�((
�u��
)->
__b�s
))[
`__CPUELT
(
__�u
)] \
158 &
`__CPUMASK
(
__�u
))) != 0 \
159 : 0; }))
)
161
#__CPU_COUNT_S
(
�tsize
,
�u��
) \
162
`__sched_�ucou�
(
�tsize
,
�u��
)
)
164 #i�
__GNUC_PREREQ
(2, 91)
165
#__CPU_EQUAL_S
(
�tsize
,
�u��1
,
�u��2
) \
166 (
`__bu�t�_memcmp
(
�u��1
,
�u��2
,
�tsize
�=�0)
)
168
#__CPU_EQUAL_S
(
�tsize
,
�u��1
,
�u��2
) \
169 (
__ex�nsi�__
\
170 ({
__cڡ
__�u_mask
*
__�r1
= (
�u��1
)->
__b�s
; \
171
__cڡ
__�u_mask
*
__�r2
= (
�u��2
)->
__b�s
; \
172
size_t
__imax
= (
�tsize
�/ (
__�u_mask
); \
173
size_t
__i
; \
174
__i
= 0; __�<
__imax
; ++__i) \
175 i�(
__b�s
[
__i
] != __bits[__i]) \
177
__i
=�
__imax
; }))
)
180
#__CPU_OP_S
(
�tsize
,
de��t
,
�c�t1
,
�c�t2
,
�
) \
181 (
__ex�nsi�__
\
182 ({
�u_�t_t
*
__de�
= (
de��t
); \
183
__cڡ
__�u_mask
*
__�r1
= (
�c�t1
)->
__b�s
; \
184
__cڡ
__�u_mask
*
__�r2
= (
�c�t2
)->
__b�s
; \
185
size_t
__imax
= (
�tsize
�/ (
__�u_mask
); \
186
size_t
__i
; \
187
__i
= 0; __�<
__imax
; ++__i) \
188 ((
__�u_mask
*�
__de�
->
__b�s
)[
__i
] =
__�r1
[__i]
�
__�r2
[__i]; \
189
__de�
; }))
)
191
#__CPU_ALLOC_SIZE
(
cou�
) \
192 ((((
cou�
�+
__NCPUBITS
- 1�/ __NCPUBITS�* (
__�u_mask
))
)
193
#__CPU_ALLOC
(
cou�
�
`__sched_�u�loc
(cou�)
)
194
#__CPU_FREE
(
�u�t
�
`__sched_�u�
(�u�t)
)
196
__BEGIN_DECLS
198
$__sched_�ucou�
(
size_t
__�tsize
, cڡ
�u_�t_t
*
__��
)
199
__THROW
;
200
�u_�t_t
*
$__sched_�u�loc
(
size_t
__cou�
�
__THROW
__wur
;
201
$__sched_�u�
(
�u_�t_t
*
__�t
�
__THROW
;
203
__END_DECLS
@/usr/include/bits/sigaction.h
20 #i�de�
_SIGNAL_H
25
ssiga�i�
28 #ifde�
__USE_POSIX199309
32
__sigh�d�r_t
m�_h�d�r
;
34 (*
m�_siga�i�
�(,
msig�fo_t
*, *);
36
m__siga�i�_h�d�r
;
37
#�_h�d�r
__siga�i�_h�d�r
.
�_h�d�r
)
38
#�_siga�i�
__siga�i�_h�d�r
.
�_siga�i�
)
40
__sigh�d�r_t
m�_h�d�r
;
44
__sig�t_t
m�_mask
;
47
m�_�ags
;
50 (*
m�_��ܔ
) ();
54
#SA_NOCLDSTOP
1
)
55
#SA_NOCLDWAIT
2
)
56
#SA_SIGINFO
4
)
58 #i�
def�ed
__USE_UNIX98
|| def�ed
__USE_MISC
59
#SA_ONSTACK
0x08000000
)
60
#SA_RESTART
0x10000000
)
61
#SA_NODEFER
0x40000000
)
63
#SA_RESETHAND
0x80000000
)
65 #ifde�
__USE_MISC
66
#SA_INTERRUPT
0x20000000
)
69
#SA_NOMASK
SA_NODEFER
)
70
#SA_ONESHOT
SA_RESETHAND
)
71
#SA_STACK
SA_ONSTACK
)
75
#SIG_BLOCK
0
)
76
#SIG_UNBLOCK
1
)
77
#SIG_SETMASK
2
)
@/usr/include/bits/sigcontext.h
19 #i�de�
_BITS_SIGCONTEXT_H
20
#_BITS_SIGCONTEXT_H
1
)
22 #i�!
def�ed
_SIGNAL_H
&& !def�ed
_SYS_UCONTEXT_H
26
~<b�s/w�dsize.h
>
28
s_�g
30
msignifi�nd
[4];
31
mexpڒt
;
34
s_�x�g
36
msignifi�nd
[4];
37
mexpڒt
;
38
m�dd�g
[3];
41
s_xmm�g
43
__u�t32_t
m�em�t
[4];
48 #i�
__WORDSIZE
== 32
50
s_塩e
53
__u�t32_t
mcw
;
54
__u�t32_t
msw
;
55
__u�t32_t
m�g
;
56
__u�t32_t
m�off
;
57
__u�t32_t
mcs�l
;
58
__u�t32_t
md�aoff
;
59
__u�t32_t
md�a�l
;
60
_�g
m_�
[8];
61
m��us
;
62
mmagic
;
65
__u�t32_t
m_fx�_�v
[6];
66
__u�t32_t
mmxc�
;
67
__u�t32_t
m��rved
;
68
_�x�g
m_fx�_�
[8];
69
_xmm�g
m_xmm
[8];
70
__u�t32_t
m�dd�g
[56];
73 #i�de�
sigcڋxt_�ru�
78
#sigcڋxt_�ru�
sigcڋxt
)
81
ssigcڋxt
83
mgs
,
m__gsh
;
84
mfs
,
m__fsh
;
85
mes
,
m__esh
;
86
mds
,
m__dsh
;
87
medi
;
88
mesi
;
89
mebp
;
90
me�
;
91
mebx
;
92
medx
;
93
mecx
;
94
m�x
;
95
m��no
;
96
m�r
;
97
me�
;
98
mcs
,
m__csh
;
99
me�ags
;
100
me�_�_sig�l
;
101
mss
,
m__ssh
;
102
_塩e
*
m塩e
;
103
m�dmask
;
104
m�2
;
109
s_塩e
112
__u�t16_t
mcwd
;
113
__u�t16_t
mswd
;
114
__u�t16_t
m�w
;
115
__u�t16_t
mf�
;
116
__u�t64_t
mr�
;
117
__u�t64_t
mrdp
;
118
__u�t32_t
mmxc�
;
119
__u�t32_t
mmx�_mask
;
120
_�x�g
m_�
[8];
121
_xmm�g
m_xmm
[16];
122
__u�t32_t
m�dd�g
[24];
125
ssigcڋxt
127
mr8
;
128
mr9
;
129
mr10
;
130
mr11
;
131
mr12
;
132
mr13
;
133
mr14
;
134
mr15
;
135
mrdi
;
136
mrsi
;
137
mrbp
;
138
mrbx
;
139
mrdx
;
140
m�x
;
141
mrcx
;
142
mr�
;
143
mr�
;
144
me�ags
;
145
mcs
;
146
mgs
;
147
mfs
;
148
m__�d0
;
149
m�r
;
150
m��no
;
151
m�dmask
;
152
m�2
;
153
_塩e
*
m塩e
;
154
m__��rved1
[8];
@/usr/include/bits/siginfo.h
20 #i�!
def�ed
_SIGNAL_H
&& !def�ed
__�ed_sig�fo_t
\
21 && !
def�ed
g__�ed_sigev�t_t
25
~<b�s/w�dsize.h
>
27 #i�(!
def�ed
__have_sigv�_t
\
28 && (
def�ed
g_SIGNAL_H
|| def�ed
g__�ed_sig�fo_t
\
29 ||
def�ed
g__�ed_sigev�t_t
))
30
#__have_sigv�_t
1
)
33
usigv�
35
msiv�_�t
;
36 *
msiv�_�r
;
37 }
tsigv�_t
;
40 #i�(!
def�ed
__have_sig�fo_t
\
41 && (
def�ed
g_SIGNAL_H
|| def�ed
g__�ed_sig�fo_t
))
42
#__have_sig�fo_t
1
)
44
#__SI_MAX_SIZE
128
)
45 #i�
__WORDSIZE
== 64
46
#__SI_PAD_SIZE
((
__SI_MAX_SIZE
/ ()�- 4)
)
48
#__SI_PAD_SIZE
((
__SI_MAX_SIZE
/ ()�- 3)
)
51
ssig�fo
53
msi_signo
;
54
msi_��o
;
56
msi_code
;
60
m_�d
[
__SI_PAD_SIZE
];
65
__pid_t
msi_pid
;
66
__uid_t
msi_uid
;
67 }
m_k�l
;
72
msi_tid
;
73
msi_ov�run
;
74
sigv�_t
msi_sigv�
;
75 }
m_tim�
;
80
__pid_t
msi_pid
;
81
__uid_t
msi_uid
;
82
sigv�_t
msi_sigv�
;
83 }
m_�
;
88
__pid_t
msi_pid
;
89
__uid_t
msi_uid
;
90
msi_��us
;
91
__�ock_t
msi_utime
;
92
__�ock_t
msi_�ime
;
93 }
m_sigchld
;
98 *
msi_addr
;
99 }
m_sig�u�
;
104
msi_b�d
;
105
msi_fd
;
106 }
m_sigp�l
;
107 }
m_sif�lds
;
108 }
tsig�fo_t
;
112
#si_pid
_sif�lds
.
_k�l
.
si_pid
)
113
#si_uid
_sif�lds
.
_k�l
.
si_uid
)
114
#si_tim�id
_sif�lds
.
_tim�
.
si_tid
)
115
#si_ov�run
_sif�lds
.
_tim�
.
si_ov�run
)
116
#si_��us
_sif�lds
.
_sigchld
.
si_��us
)
117
#si_utime
_sif�lds
.
_sigchld
.
si_utime
)
118
#si_�ime
_sif�lds
.
_sigchld
.
si_�ime
)
119
#si_v�ue
_sif�lds
.
_�
.
si_sigv�
)
120
#si_�t
_sif�lds
.
_�
.
si_sigv�
.
siv�_�t
)
121
#si_�r
_sif�lds
.
_�
.
si_sigv�
.
siv�_�r
)
122
#si_addr
_sif�lds
.
_sig�u�
.
si_addr
)
123
#si_b�d
_sif�lds
.
_sigp�l
.
si_b�d
)
124
#si_fd
_sif�lds
.
_sigp�l
.
si_fd
)
131
mSI_ASYNCNL
= -60,
132
#SI_ASYNCNL
SI_ASYNCNL
)
133
mSI_TKILL
= -6,
134
#SI_TKILL
SI_TKILL
)
135
mSI_SIGIO
,
136
#SI_SIGIO
SI_SIGIO
)
137
mSI_ASYNCIO
,
138
#SI_ASYNCIO
SI_ASYNCIO
)
139
mSI_MESGQ
,
140
#SI_MESGQ
SI_MESGQ
)
141
mSI_TIMER
,
142
#SI_TIMER
SI_TIMER
)
143
mSI_QUEUE
,
144
#SI_QUEUE
SI_QUEUE
)
145
mSI_USER
,
146
#SI_USER
SI_USER
)
147
mSI_KERNEL
= 0x80
148
#SI_KERNEL
SI_KERNEL
)
155
mILL_ILLOPC
= 1,
156
#ILL_ILLOPC
ILL_ILLOPC
)
157
mILL_ILLOPN
,
158
#ILL_ILLOPN
ILL_ILLOPN
)
159
mILL_ILLADR
,
160
#ILL_ILLADR
ILL_ILLADR
)
161
mILL_ILLTRP
,
162
#ILL_ILLTRP
ILL_ILLTRP
)
163
mILL_PRVOPC
,
164
#ILL_PRVOPC
ILL_PRVOPC
)
165
mILL_PRVREG
,
166
#ILL_PRVREG
ILL_PRVREG
)
167
mILL_COPROC
,
168
#ILL_COPROC
ILL_COPROC
)
169
mILL_BADSTK
170
#ILL_BADSTK
ILL_BADSTK
)
176
mFPE_INTDIV
= 1,
177
#FPE_INTDIV
FPE_INTDIV
)
178
mFPE_INTOVF
,
179
#FPE_INTOVF
FPE_INTOVF
)
180
mFPE_FLTDIV
,
181
#FPE_FLTDIV
FPE_FLTDIV
)
182
mFPE_FLTOVF
,
183
#FPE_FLTOVF
FPE_FLTOVF
)
184
mFPE_FLTUND
,
185
#FPE_FLTUND
FPE_FLTUND
)
186
mFPE_FLTRES
,
187
#FPE_FLTRES
FPE_FLTRES
)
188
mFPE_FLTINV
,
189
#FPE_FLTINV
FPE_FLTINV
)
190
mFPE_FLTSUB
191
#FPE_FLTSUB
FPE_FLTSUB
)
197
mSEGV_MAPERR
= 1,
198
#SEGV_MAPERR
SEGV_MAPERR
)
199
mSEGV_ACCERR
200
#SEGV_ACCERR
SEGV_ACCERR
)
206
mBUS_ADRALN
= 1,
207
#BUS_ADRALN
BUS_ADRALN
)
208
mBUS_ADRERR
,
209
#BUS_ADRERR
BUS_ADRERR
)
210
mBUS_OBJERR
211
#BUS_OBJERR
BUS_OBJERR
)
217
mTRAP_BRKPT
= 1,
218
#TRAP_BRKPT
TRAP_BRKPT
)
219
mTRAP_TRACE
220
#TRAP_TRACE
TRAP_TRACE
)
226
mCLD_EXITED
= 1,
227
#CLD_EXITED
CLD_EXITED
)
228
mCLD_KILLED
,
229
#CLD_KILLED
CLD_KILLED
)
230
mCLD_DUMPED
,
231
#CLD_DUMPED
CLD_DUMPED
)
232
mCLD_TRAPPED
,
233
#CLD_TRAPPED
CLD_TRAPPED
)
234
mCLD_STOPPED
,
235
#CLD_STOPPED
CLD_STOPPED
)
236
mCLD_CONTINUED
237
#CLD_CONTINUED
CLD_CONTINUED
)
243
mPOLL_IN
= 1,
244
#POLL_IN
POLL_IN
)
245
mPOLL_OUT
,
246
#POLL_OUT
POLL_OUT
)
247
mPOLL_MSG
,
248
#POLL_MSG
POLL_MSG
)
249
mPOLL_ERR
,
250
#POLL_ERR
POLL_ERR
)
251
mPOLL_PRI
,
252
#POLL_PRI
POLL_PRI
)
253
mPOLL_HUP
254
#POLL_HUP
POLL_HUP
)
257 #unde�
__�ed_sig�fo_t
261 #i�(
def�ed
_SIGNAL_H
|| def�ed
__�ed_sigev�t_t
) \
262 && !
def�ed
g__have_sigev�t_t
263
#__have_sigev�t_t
1
)
266
#__SIGEV_MAX_SIZE
64
)
267 #i�
__WORDSIZE
== 64
268
#__SIGEV_PAD_SIZE
((
__SIGEV_MAX_SIZE
/ ()�- 4)
)
270
#__SIGEV_PAD_SIZE
((
__SIGEV_MAX_SIZE
/ ()�- 3)
)
273
ssigev�t
275
sigv�_t
msigev_v�ue
;
276
msigev_signo
;
277
msigev_n�ify
;
281
m_�d
[
__SIGEV_PAD_SIZE
];
285
__pid_t
m_tid
;
289 (*
m_fun�i�
�(
msigv�_t
);
290 *
m_��ibu�
;
291 }
m_sigev_th�ad
;
292 }
m_sigev_un
;
293 }
tsigev�t_t
;
296
#sigev_n�ify_fun�i�
_sigev_un
.
_sigev_th�ad
.
_fun�i�
)
297
#sigev_n�ify_��ibu�s
_sigev_un
.
_sigev_th�ad
.
_��ibu�
)
302
mSIGEV_SIGNAL
= 0,
303
#SIGEV_SIGNAL
SIGEV_SIGNAL
)
304
mSIGEV_NONE
,
305
#SIGEV_NONE
SIGEV_NONE
)
306
mSIGEV_THREAD
,
307
#SIGEV_THREAD
SIGEV_THREAD
)
309
mSIGEV_THREAD_ID
= 4
310
#SIGEV_THREAD_ID
SIGEV_THREAD_ID
)
@/usr/include/bits/signum.h
20 #ifdef
_SIGNAL_H
23
#SIG_ERR
((
__sigh�d�r_t
�-1�
)
24
#SIG_DFL
((
__sigh�d�r_t
�0�
)
25
#SIG_IGN
((
__sigh�d�r_t
�1�
)
27 #ifde�
__USE_UNIX98
28
#SIG_HOLD
((
__sigh�d�r_t
�2�
)
33
#SIGHUP
1
)
34
#SIGINT
2
)
35
#SIGQUIT
3
)
36
#SIGILL
4
)
37
#SIGTRAP
5
)
38
#SIGABRT
6
)
39
#SIGIOT
6
)
40
#SIGBUS
7
)
41
#SIGFPE
8
)
42
#SIGKILL
9
)
43
#SIGUSR1
10
)
44
#SIGSEGV
11
)
45
#SIGUSR2
12
)
46
#SIGPIPE
13
)
47
#SIGALRM
14
)
48
#SIGTERM
15
)
49
#SIGSTKFLT
16
)
50
#SIGCLD
SIGCHLD
)
51
#SIGCHLD
17
)
52
#SIGCONT
18
)
53
#SIGSTOP
19
)
54
#SIGTSTP
20
)
55
#SIGTTIN
21
)
56
#SIGTTOU
22
)
57
#SIGURG
23
)
58
#SIGXCPU
24
)
59
#SIGXFSZ
25
)
60
#SIGVTALRM
26
)
61
#SIGPROF
27
)
62
#SIGWINCH
28
)
63
#SIGPOLL
SIGIO
)
64
#SIGIO
29
)
65
#SIGPWR
30
)
66
#SIGSYS
31
)
67
#SIGUNUSED
31
)
69
#_NSIG
65
)
72
#SIGRTMIN
(
`__libc_cu��t_sig�m�
())
)
73
#SIGRTMAX
(
`__libc_cu��t_sig�max
())
)
77
#__SIGRTMIN
32
)
78
#__SIGRTMAX
(
_NSIG
- 1)
)
@/usr/include/bits/sigstack.h
20 #i�de�
_SIGNAL_H
26
ssig�ack
28 *
mss_�
;
29
mss_ڡack
;
36
mSS_ONSTACK
= 1,
37
#SS_ONSTACK
SS_ONSTACK
)
38
mSS_DISABLE
39
#SS_DISABLE
SS_DISABLE
)
43
#MINSIGSTKSZ
2048
)
46
#SIGSTKSZ
8192
)
50
ssig�t�ack
52 *
mss_�
;
53
mss_�ags
;
54
size_t
mss_size
;
55 }
t�ack_t
;
@/usr/include/bits/sigthread.h
20 #i�de�
_BITS_SIGTHREAD_H
21
#_BITS_SIGTHREAD_H
1
)
23 #i�!
def�ed
_SIGNAL_H
&& !def�ed
_PTHREAD_H
31
$�h�ad_sigmask
(
__how
,
32
__cڡ
__sig�t_t
*
__��ri�
__�wmask
,
33
__sig�t_t
*
__��ri�
__�dmask
)
__THROW
;
36
$�h�ad_k�l
(
�h�ad_t
__th�adid
,
__signo
�
__THROW
;
38 #ifde�
__USE_GNU
40
$�h�ad_sigqueue
(
�h�ad_t
__th�adid
,
__signo
,
41 cڡ
sigv�
__v�ue
�
__THROW
;
@/usr/include/linux/errno.h
1 #i�de�
_LINUX_ERRNO_H
2
#_LINUX_ERRNO_H
)
4
~<asm/��o.h
>
@/usr/include/sys/ucontext.h
19 #i�de�
_SYS_UCONTEXT_H
20
#_SYS_UCONTEXT_H
1
)
22
~<�u�s.h
>
23
~<sig�l.h
>
24
~<b�s/w�dsize.h
>
28
~<b�s/sigcڋxt.h
>
30 #i�
__WORDSIZE
== 64
33
tg�g_t
;
36
#NGREG
23
)
39
g�g_t
tg�g�t_t
[
NGREG
];
41 #ifde�
__USE_GNU
45
mREG_R8
= 0,
46
#REG_R8
REG_R8
)
47
mREG_R9
,
48
#REG_R9
REG_R9
)
49
mREG_R10
,
50
#REG_R10
REG_R10
)
51
mREG_R11
,
52
#REG_R11
REG_R11
)
53
mREG_R12
,
54
#REG_R12
REG_R12
)
55
mREG_R13
,
56
#REG_R13
REG_R13
)
57
mREG_R14
,
58
#REG_R14
REG_R14
)
59
mREG_R15
,
60
#REG_R15
REG_R15
)
61
mREG_RDI
,
62
#REG_RDI
REG_RDI
)
63
mREG_RSI
,
64
#REG_RSI
REG_RSI
)
65
mREG_RBP
,
66
#REG_RBP
REG_RBP
)
67
mREG_RBX
,
68
#REG_RBX
REG_RBX
)
69
mREG_RDX
,
70
#REG_RDX
REG_RDX
)
71
mREG_RAX
,
72
#REG_RAX
REG_RAX
)
73
mREG_RCX
,
74
#REG_RCX
REG_RCX
)
75
mREG_RSP
,
76
#REG_RSP
REG_RSP
)
77
mREG_RIP
,
78
#REG_RIP
REG_RIP
)
79
mREG_EFL
,
80
#REG_EFL
REG_EFL
)
81
mREG_CSGSFS
,
82
#REG_CSGSFS
REG_CSGSFS
)
83
mREG_ERR
,
84
#REG_ERR
REG_ERR
)
85
mREG_TRAPNO
,
86
#REG_TRAPNO
REG_TRAPNO
)
87
mREG_OLDMASK
,
88
#REG_OLDMASK
REG_OLDMASK
)
89
mREG_CR2
90
#REG_CR2
REG_CR2
)
94
s_libc_�x�g
96
msignifi�nd
[4];
97
mexpڒt
;
98
m�dd�g
[3];
101
s_libc_xmm�g
103
__u�t32_t
m�em�t
[4];
106
s_libc_塩e
109
__u�t16_t
mcwd
;
110
__u�t16_t
mswd
;
111
__u�t16_t
m�w
;
112
__u�t16_t
mf�
;
113
__u�t64_t
mr�
;
114
__u�t64_t
mrdp
;
115
__u�t32_t
mmxc�
;
116
__u�t32_t
mmx�_mask
;
117
_libc_�x�g
m_�
[8];
118
_libc_xmm�g
m_xmm
[16];
119
__u�t32_t
m�dd�g
[24];
123
_libc_塩e
*
t�g�t_t
;
128
g�g�t_t
mg�gs
;
130
�g�t_t
m�gs
;
131
m__��rved1
[8];
132 }
tmcڋxt_t
;
135
sucڋxt
137
muc_�ags
;
138
ucڋxt
*
muc_l�k
;
139
�ack_t
muc_�ack
;
140
mcڋxt_t
muc_mcڋxt
;
141
__sig�t_t
muc_sigmask
;
142
_libc_塩e
m__�gs_mem
;
143 }
tucڋxt_t
;
148
tg�g_t
;
151
#NGREG
19
)
154
g�g_t
tg�g�t_t
[
NGREG
];
156 #ifde�
__USE_GNU
160
mREG_GS
= 0,
161
#REG_GS
REG_GS
)
162
mREG_FS
,
163
#REG_FS
REG_FS
)
164
mREG_ES
,
165
#REG_ES
REG_ES
)
166
mREG_DS
,
167
#REG_DS
REG_DS
)
168
mREG_EDI
,
169
#REG_EDI
REG_EDI
)
170
mREG_ESI
,
171
#REG_ESI
REG_ESI
)
172
mREG_EBP
,
173
#REG_EBP
REG_EBP
)
174
mREG_ESP
,
175
#REG_ESP
REG_ESP
)
176
mREG_EBX
,
177
#REG_EBX
REG_EBX
)
178
mREG_EDX
,
179
#REG_EDX
REG_EDX
)
180
mREG_ECX
,
181
#REG_ECX
REG_ECX
)
182
mREG_EAX
,
183
#REG_EAX
REG_EAX
)
184
mREG_TRAPNO
,
185
#REG_TRAPNO
REG_TRAPNO
)
186
mREG_ERR
,
187
#REG_ERR
REG_ERR
)
188
mREG_EIP
,
189
#REG_EIP
REG_EIP
)
190
mREG_CS
,
191
#REG_CS
REG_CS
)
192
mREG_EFL
,
193
#REG_EFL
REG_EFL
)
194
mREG_UESP
,
195
#REG_UESP
REG_UESP
)
196
mREG_SS
197
#REG_SS
REG_SS
)
202
s_libc_�g
204
msignifi�nd
[4];
205
mexpڒt
;
208
s_libc_塩e
210
mcw
;
211
msw
;
212
m�g
;
213
m�off
;
214
mcs�l
;
215
md�aoff
;
216
md�a�l
;
217
_libc_�g
m_�
[8];
218
m��us
;
222
_libc_塩e
*
t�g�t_t
;
227
g�g�t_t
mg�gs
;
230
�g�t_t
m�gs
;
231
m�dmask
;
232
m�2
;
233 }
tmcڋxt_t
;
236
sucڋxt
238
muc_�ags
;
239
ucڋxt
*
muc_l�k
;
240
�ack_t
muc_�ack
;
241
mcڋxt_t
muc_mcڋxt
;
242
__sig�t_t
muc_sigmask
;
243
_libc_塩e
m__�gs_mem
;
244 }
tucڋxt_t
;
@/usr/include/asm/errno.h
1
~<asm-g��ic/��o.h
>
@/usr/include/asm-generic/errno.h
1 #i�de�
_ASM_GENERIC_ERRNO_H
2
#_ASM_GENERIC_ERRNO_H
)
4
~<asm-g��ic/��o-ba�.h
>
6
#EDEADLK
35
)
7
#ENAMETOOLONG
36
)
8
#ENOLCK
37
)
9
#ENOSYS
38
)
10
#ENOTEMPTY
39
)
11
#ELOOP
40
)
12
#EWOULDBLOCK
EAGAIN
)
13
#ENOMSG
42
)
14
#EIDRM
43
)
15
#ECHRNG
44
)
16
#EL2NSYNC
45
)
17
#EL3HLT
46
)
18
#EL3RST
47
)
19
#ELNRNG
48
)
20
#EUNATCH
49
)
21
#ENOCSI
50
)
22
#EL2HLT
51
)
23
#EBADE
52
)
24
#EBADR
53
)
25
#EXFULL
54
)
26
#ENOANO
55
)
27
#EBADRQC
56
)
28
#EBADSLT
57
)
30
#EDEADLOCK
EDEADLK
)
32
#EBFONT
59
)
33
#ENOSTR
60
)
34
#ENODATA
61
)
35
#ETIME
62
)
36
#ENOSR
63
)
37
#ENONET
64
)
38
#ENOPKG
65
)
39
#EREMOTE
66
)
40
#ENOLINK
67
)
41
#EADV
68
)
42
#ESRMNT
69
)
43
#ECOMM
70
)
44
#EPROTO
71
)
45
#EMULTIHOP
72
)
46
#EDOTDOT
73
)
47
#EBADMSG
74
)
48
#EOVERFLOW
75
)
49
#ENOTUNIQ
76
)
50
#EBADFD
77
)
51
#EREMCHG
78
)
52
#ELIBACC
79
)
53
#ELIBBAD
80
)
54
#ELIBSCN
81
)
55
#ELIBMAX
82
)
56
#ELIBEXEC
83
)
57
#EILSEQ
84
)
58
#ERESTART
85
)
59
#ESTRPIPE
86
)
60
#EUSERS
87
)
61
#ENOTSOCK
88
)
62
#EDESTADDRREQ
89
)
63
#EMSGSIZE
90
)
64
#EPROTOTYPE
91
)
65
#ENOPROTOOPT
92
)
66
#EPROTONOSUPPORT
93
)
67
#ESOCKTNOSUPPORT
94
)
68
#EOPNOTSUPP
95
)
69
#EPFNOSUPPORT
96
)
70
#EAFNOSUPPORT
97
)
71
#EADDRINUSE
98
)
72
#EADDRNOTAVAIL
99
)
73
#ENETDOWN
100
)
74
#ENETUNREACH
101
)
75
#ENETRESET
102
)
76
#ECONNABORTED
103
)
77
#ECONNRESET
104
)
78
#ENOBUFS
105
)
79
#EISCONN
106
)
80
#ENOTCONN
107
)
81
#ESHUTDOWN
108
)
82
#ETOOMANYREFS
109
)
83
#ETIMEDOUT
110
)
84
#ECONNREFUSED
111
)
85
#EHOSTDOWN
112
)
86
#EHOSTUNREACH
113
)
87
#EALREADY
114
)
88
#EINPROGRESS
115
)
89
#ESTALE
116
)
90
#EUCLEAN
117
)
91
#ENOTNAM
118
)
92
#ENAVAIL
119
)
93
#EISNAM
120
)
94
#EREMOTEIO
121
)
95
#EDQUOT
122
)
97
#ENOMEDIUM
123
)
98
#EMEDIUMTYPE
124
)
99
#ECANCELED
125
)
100
#ENOKEY
126
)
101
#EKEYEXPIRED
127
)
102
#EKEYREVOKED
128
)
103
#EKEYREJECTED
129
)
106
#EOWNERDEAD
130
)
107
#ENOTRECOVERABLE
131
)
109
#ERFKILL
132
)
@/usr/include/asm-generic/errno-base.h
1 #i�de�
_ASM_GENERIC_ERRNO_BASE_H
2
#_ASM_GENERIC_ERRNO_BASE_H
)
4
#EPERM
1
)
5
#ENOENT
2
)
6
#ESRCH
3
)
7
#EINTR
4
)
8
#EIO
5
)
9
#ENXIO
6
)
10
#E2BIG
7
)
11
#ENOEXEC
8
)
12
#EBADF
9
)
13
#ECHILD
10
)
14
#EAGAIN
11
)
15
#ENOMEM
12
)
16
#EACCES
13
)
17
#EFAULT
14
)
18
#ENOTBLK
15
)
19
#EBUSY
16
)
20
#EEXIST
17
)
21
#EXDEV
18
)
22
#ENODEV
19
)
23
#ENOTDIR
20
)
24
#EISDIR
21
)
25
#EINVAL
22
)
26
#ENFILE
23
)
27
#EMFILE
24
)
28
#ENOTTY
25
)
29
#ETXTBSY
26
)
30
#EFBIG
27
)
31
#ENOSPC
28
)
32
#ESPIPE
29
)
33
#EROFS
30
)
34
#EMLINK
31
)
35
#EPIPE
32
)
36
#EDOM
33
)
37
#ERANGE
34
)
@
1
.
1
/usr/include
87
2228
CG.cc
CG_roseBuilder.cc
CG_roseRepr.cc
CG_stringBuilder.cc
CG_stringRepr.cc
CG_suifBuilder.cc
CG_suifRepr.cc
code_gen.cc
output_repr.cc
/usr/include/math.h
/usr/include/stdio.h
/usr/include/string.h
/usr/include/bits/huge_val.h
/usr/include/bits/huge_valf.h
/usr/include/bits/huge_vall.h
/usr/include/bits/inf.h
/usr/include/bits/mathcalls.h
/usr/include/bits/mathdef.h
/usr/include/bits/mathinline.h
/usr/include/bits/nan.h
/usr/include/bits/stdio-ldbl.h
/usr/include/bits/stdio.h
/usr/include/bits/stdio2.h
/usr/include/bits/stdio_lim.h
/usr/include/bits/string.h
/usr/include/bits/string2.h
/usr/include/bits/string3.h
/usr/include/bits/sys_errlist.h
/usr/include/bits/types.h
/usr/include/features.h
/usr/include/getopt.h
/usr/include/libio.h
/usr/include/xlocale.h
/usr/include/_G_config.h
/usr/include/bits/libio-ldbl.h
/usr/include/bits/predefs.h
/usr/include/bits/stdio-lock.h
/usr/include/bits/typesizes.h
/usr/include/bits/wordsize.h
/usr/include/ctype.h
/usr/include/endian.h
/usr/include/gnu/stubs.h
/usr/include/stdlib.h
/usr/include/sys/cdefs.h
/usr/include/alloca.h
/usr/include/bits/byteswap.h
/usr/include/bits/endian.h
/usr/include/bits/libc-lock.h
/usr/include/bits/stdlib-ldbl.h
/usr/include/bits/stdlib.h
/usr/include/bits/waitflags.h
/usr/include/bits/waitstatus.h
/usr/include/gconv.h
/usr/include/gnu/stubs-32.h
/usr/include/gnu/stubs-64.h
/usr/include/sys/types.h
/usr/include/wchar.h
/usr/include/bits/pthreadtypes.h
/usr/include/bits/wchar-ldbl.h
/usr/include/bits/wchar.h
/usr/include/bits/wchar2.h
/usr/include/errno.h
/usr/include/gnu/option-groups.h
/usr/include/pthread.h
/usr/include/sys/select.h
/usr/include/sys/sysmacros.h
/usr/include/time.h
/usr/include/wctype.h
/usr/include/bits/errno.h
/usr/include/bits/select.h
/usr/include/bits/setjmp.h
/usr/include/bits/sigset.h
/usr/include/bits/time.h
/usr/include/sched.h
/usr/include/signal.h
/usr/include/bits/sched.h
/usr/include/bits/sigaction.h
/usr/include/bits/sigcontext.h
/usr/include/bits/siginfo.h
/usr/include/bits/signum.h
/usr/include/bits/sigstack.h
/usr/include/bits/sigthread.h
/usr/include/linux/errno.h
/usr/include/sys/ucontext.h
/usr/include/asm/errno.h
/usr/include/asm-generic/errno.h
/usr/include/asm-generic/errno-base.h
|