1 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
4 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
5 # 20 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
6 # 1 "/usr/include/math.h" 1 3 4
7 # 28 "/usr/include/math.h" 3 4
8 # 1 "/usr/include/features.h" 1 3 4
9 # 358 "/usr/include/features.h" 3 4
10 # 1 "/usr/include/sys/cdefs.h" 1 3 4
11 # 378 "/usr/include/sys/cdefs.h" 3 4
12 # 1 "/usr/include/bits/wordsize.h" 1 3 4
13 # 379 "/usr/include/sys/cdefs.h" 2 3 4
14 # 359 "/usr/include/features.h" 2 3 4
15 # 382 "/usr/include/features.h" 3 4
16 # 1 "/usr/include/gnu/stubs.h" 1 3 4
20 # 1 "/usr/include/bits/wordsize.h" 1 3 4
21 # 5 "/usr/include/gnu/stubs.h" 2 3 4
24 # 1 "/usr/include/gnu/stubs-32.h" 1 3 4
25 # 8 "/usr/include/gnu/stubs.h" 2 3 4
26 # 383 "/usr/include/features.h" 2 3 4
27 # 29 "/usr/include/math.h" 2 3 4
33 # 1 "/usr/include/bits/huge_val.h" 1 3 4
34 # 35 "/usr/include/math.h" 2 3 4
36 # 1 "/usr/include/bits/huge_valf.h" 1 3 4
37 # 37 "/usr/include/math.h" 2 3 4
38 # 1 "/usr/include/bits/huge_vall.h" 1 3 4
39 # 38 "/usr/include/math.h" 2 3 4
42 # 1 "/usr/include/bits/inf.h" 1 3 4
43 # 41 "/usr/include/math.h" 2 3 4
46 # 1 "/usr/include/bits/nan.h" 1 3 4
47 # 44 "/usr/include/math.h" 2 3 4
51 # 1 "/usr/include/bits/mathdef.h" 1 3 4
52 # 36 "/usr/include/bits/mathdef.h" 3 4
53 typedef long double float_t;
55 typedef long double double_t;
56 # 48 "/usr/include/math.h" 2 3 4
57 # 71 "/usr/include/math.h" 3 4
58 # 1 "/usr/include/bits/mathcalls.h" 1 3 4
59 # 53 "/usr/include/bits/mathcalls.h" 3 4
62 extern double acos (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __acos (double __x) __attribute__ ((__nothrow__ , __leaf__));
64 extern double asin (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __asin (double __x) __attribute__ ((__nothrow__ , __leaf__));
66 extern double atan (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __atan (double __x) __attribute__ ((__nothrow__ , __leaf__));
68 extern double atan2 (double __y, double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __atan2 (double __y, double __x) __attribute__ ((__nothrow__ , __leaf__));
71 extern double cos (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __cos (double __x) __attribute__ ((__nothrow__ , __leaf__));
73 extern double sin (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __sin (double __x) __attribute__ ((__nothrow__ , __leaf__));
75 extern double tan (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __tan (double __x) __attribute__ ((__nothrow__ , __leaf__));
80 extern double cosh (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __cosh (double __x) __attribute__ ((__nothrow__ , __leaf__));
82 extern double sinh (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __sinh (double __x) __attribute__ ((__nothrow__ , __leaf__));
84 extern double tanh (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __tanh (double __x) __attribute__ ((__nothrow__ , __leaf__));
89 extern void sincos (double __x, double *__sinx, double *__cosx) __attribute__ ((__nothrow__ , __leaf__)); extern void __sincos (double __x, double *__sinx, double *__cosx) __attribute__ ((__nothrow__ , __leaf__))
96 extern double acosh (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __acosh (double __x) __attribute__ ((__nothrow__ , __leaf__));
98 extern double asinh (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __asinh (double __x) __attribute__ ((__nothrow__ , __leaf__));
100 extern double atanh (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __atanh (double __x) __attribute__ ((__nothrow__ , __leaf__));
108 extern double exp (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __exp (double __x) __attribute__ ((__nothrow__ , __leaf__));
111 extern double frexp (double __x, int *__exponent) __attribute__ ((__nothrow__ , __leaf__)); extern double __frexp (double __x, int *__exponent) __attribute__ ((__nothrow__ , __leaf__));
114 extern double ldexp (double __x, int __exponent) __attribute__ ((__nothrow__ , __leaf__)); extern double __ldexp (double __x, int __exponent) __attribute__ ((__nothrow__ , __leaf__));
117 extern double log (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __log (double __x) __attribute__ ((__nothrow__ , __leaf__));
120 extern double log10 (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __log10 (double __x) __attribute__ ((__nothrow__ , __leaf__));
123 extern double modf (double __x, double *__iptr) __attribute__ ((__nothrow__ , __leaf__)); extern double __modf (double __x, double *__iptr) __attribute__ ((__nothrow__ , __leaf__))
124 __attribute__ ((__nonnull__ (2)));
129 extern double exp10 (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __exp10 (double __x) __attribute__ ((__nothrow__ , __leaf__));
131 extern double pow10 (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __pow10 (double __x) __attribute__ ((__nothrow__ , __leaf__));
137 extern double expm1 (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __expm1 (double __x) __attribute__ ((__nothrow__ , __leaf__));
140 extern double log1p (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __log1p (double __x) __attribute__ ((__nothrow__ , __leaf__));
143 extern double logb (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __logb (double __x) __attribute__ ((__nothrow__ , __leaf__));
150 extern double exp2 (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __exp2 (double __x) __attribute__ ((__nothrow__ , __leaf__));
153 extern double log2 (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __log2 (double __x) __attribute__ ((__nothrow__ , __leaf__));
162 extern double pow (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __pow (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
165 extern double sqrt (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __sqrt (double __x) __attribute__ ((__nothrow__ , __leaf__));
171 extern double hypot (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __hypot (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
178 extern double cbrt (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __cbrt (double __x) __attribute__ ((__nothrow__ , __leaf__));
187 extern double ceil (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __ceil (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
190 extern double fabs (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __fabs (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
193 extern double floor (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __floor (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
196 extern double fmod (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __fmod (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
201 extern int __isinf (double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
204 extern int __finite (double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
210 extern int isinf (double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
213 extern int finite (double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
216 extern double drem (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __drem (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
220 extern double significand (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __significand (double __x) __attribute__ ((__nothrow__ , __leaf__));
226 extern double copysign (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __copysign (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
233 extern double nan (__const char *__tagb) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __nan (__const char *__tagb) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
239 extern int __isnan (double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
243 extern int isnan (double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
246 extern double j0 (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __j0 (double) __attribute__ ((__nothrow__ , __leaf__));
247 extern double j1 (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __j1 (double) __attribute__ ((__nothrow__ , __leaf__));
248 extern double jn (int, double) __attribute__ ((__nothrow__ , __leaf__)); extern double __jn (int, double) __attribute__ ((__nothrow__ , __leaf__));
249 extern double y0 (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __y0 (double) __attribute__ ((__nothrow__ , __leaf__));
250 extern double y1 (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __y1 (double) __attribute__ ((__nothrow__ , __leaf__));
251 extern double yn (int, double) __attribute__ ((__nothrow__ , __leaf__)); extern double __yn (int, double) __attribute__ ((__nothrow__ , __leaf__));
258 extern double erf (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __erf (double) __attribute__ ((__nothrow__ , __leaf__));
259 extern double erfc (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __erfc (double) __attribute__ ((__nothrow__ , __leaf__));
260 extern double lgamma (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __lgamma (double) __attribute__ ((__nothrow__ , __leaf__));
267 extern double tgamma (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __tgamma (double) __attribute__ ((__nothrow__ , __leaf__));
273 extern double gamma (double) __attribute__ ((__nothrow__ , __leaf__)); extern double __gamma (double) __attribute__ ((__nothrow__ , __leaf__));
280 extern double lgamma_r (double, int *__signgamp) __attribute__ ((__nothrow__ , __leaf__)); extern double __lgamma_r (double, int *__signgamp) __attribute__ ((__nothrow__ , __leaf__));
288 extern double rint (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __rint (double __x) __attribute__ ((__nothrow__ , __leaf__));
291 extern double nextafter (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __nextafter (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
293 extern double nexttoward (double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __nexttoward (double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
297 extern double remainder (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __remainder (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
301 extern double scalbn (double __x, int __n) __attribute__ ((__nothrow__ , __leaf__)); extern double __scalbn (double __x, int __n) __attribute__ ((__nothrow__ , __leaf__));
305 extern int ilogb (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern int __ilogb (double __x) __attribute__ ((__nothrow__ , __leaf__));
310 extern double scalbln (double __x, long int __n) __attribute__ ((__nothrow__ , __leaf__)); extern double __scalbln (double __x, long int __n) __attribute__ ((__nothrow__ , __leaf__));
314 extern double nearbyint (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern double __nearbyint (double __x) __attribute__ ((__nothrow__ , __leaf__));
318 extern double round (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __round (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
322 extern double trunc (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern double __trunc (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
327 extern double remquo (double __x, double __y, int *__quo) __attribute__ ((__nothrow__ , __leaf__)); extern double __remquo (double __x, double __y, int *__quo) __attribute__ ((__nothrow__ , __leaf__));
334 extern long int lrint (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long int __lrint (double __x) __attribute__ ((__nothrow__ , __leaf__));
335 extern long long int llrint (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long long int __llrint (double __x) __attribute__ ((__nothrow__ , __leaf__));
339 extern long int lround (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long int __lround (double __x) __attribute__ ((__nothrow__ , __leaf__));
340 extern long long int llround (double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long long int __llround (double __x) __attribute__ ((__nothrow__ , __leaf__));
344 extern double fdim (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __fdim (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
347 extern double fmax (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __fmax (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
350 extern double fmin (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__)); extern double __fmin (double __x, double __y) __attribute__ ((__nothrow__ , __leaf__));
354 extern int __fpclassify (double __value) __attribute__ ((__nothrow__ , __leaf__))
355 __attribute__ ((__const__));
358 extern int __signbit (double __value) __attribute__ ((__nothrow__ , __leaf__))
359 __attribute__ ((__const__));
363 extern double fma (double __x, double __y, double __z) __attribute__ ((__nothrow__ , __leaf__)); extern double __fma (double __x, double __y, double __z) __attribute__ ((__nothrow__ , __leaf__));
372 extern double scalb (double __x, double __n) __attribute__ ((__nothrow__ , __leaf__)); extern double __scalb (double __x, double __n) __attribute__ ((__nothrow__ , __leaf__));
373 # 72 "/usr/include/math.h" 2 3 4
374 # 94 "/usr/include/math.h" 3 4
375 # 1 "/usr/include/bits/mathcalls.h" 1 3 4
376 # 53 "/usr/include/bits/mathcalls.h" 3 4
379 extern float acosf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __acosf (float __x) __attribute__ ((__nothrow__ , __leaf__));
381 extern float asinf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __asinf (float __x) __attribute__ ((__nothrow__ , __leaf__));
383 extern float atanf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __atanf (float __x) __attribute__ ((__nothrow__ , __leaf__));
385 extern float atan2f (float __y, float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __atan2f (float __y, float __x) __attribute__ ((__nothrow__ , __leaf__));
388 extern float cosf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __cosf (float __x) __attribute__ ((__nothrow__ , __leaf__));
390 extern float sinf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __sinf (float __x) __attribute__ ((__nothrow__ , __leaf__));
392 extern float tanf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __tanf (float __x) __attribute__ ((__nothrow__ , __leaf__));
397 extern float coshf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __coshf (float __x) __attribute__ ((__nothrow__ , __leaf__));
399 extern float sinhf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __sinhf (float __x) __attribute__ ((__nothrow__ , __leaf__));
401 extern float tanhf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __tanhf (float __x) __attribute__ ((__nothrow__ , __leaf__));
408 # 82 "/usr/include/bits/mathcalls.h" 3 4
409 (float __x, float *__sinx, float *__cosx) __attribute__ ((__nothrow__ , __leaf__)); extern void
411 # 82 "/usr/include/bits/mathcalls.h" 3 4
412 (float __x, float *__sinx, float *__cosx) __attribute__ ((__nothrow__ , __leaf__))
419 extern float acoshf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __acoshf (float __x) __attribute__ ((__nothrow__ , __leaf__));
421 extern float asinhf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __asinhf (float __x) __attribute__ ((__nothrow__ , __leaf__));
423 extern float atanhf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __atanhf (float __x) __attribute__ ((__nothrow__ , __leaf__));
431 extern float expf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __expf (float __x) __attribute__ ((__nothrow__ , __leaf__));
434 extern float frexpf (float __x, int *__exponent) __attribute__ ((__nothrow__ , __leaf__)); extern float __frexpf (float __x, int *__exponent) __attribute__ ((__nothrow__ , __leaf__));
437 extern float ldexpf (float __x, int __exponent) __attribute__ ((__nothrow__ , __leaf__)); extern float __ldexpf (float __x, int __exponent) __attribute__ ((__nothrow__ , __leaf__));
440 extern float logf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __logf (float __x) __attribute__ ((__nothrow__ , __leaf__));
443 extern float log10f (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __log10f (float __x) __attribute__ ((__nothrow__ , __leaf__));
446 extern float modff (float __x, float *__iptr) __attribute__ ((__nothrow__ , __leaf__)); extern float __modff (float __x, float *__iptr) __attribute__ ((__nothrow__ , __leaf__))
447 __attribute__ ((__nonnull__ (2)));
452 extern float exp10f (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __exp10f (float __x) __attribute__ ((__nothrow__ , __leaf__));
454 extern float pow10f (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __pow10f (float __x) __attribute__ ((__nothrow__ , __leaf__));
460 extern float expm1f (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __expm1f (float __x) __attribute__ ((__nothrow__ , __leaf__));
463 extern float log1pf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __log1pf (float __x) __attribute__ ((__nothrow__ , __leaf__));
466 extern float logbf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __logbf (float __x) __attribute__ ((__nothrow__ , __leaf__));
473 extern float exp2f (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __exp2f (float __x) __attribute__ ((__nothrow__ , __leaf__));
476 extern float log2f (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __log2f (float __x) __attribute__ ((__nothrow__ , __leaf__));
485 extern float powf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __powf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
488 extern float sqrtf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __sqrtf (float __x) __attribute__ ((__nothrow__ , __leaf__));
494 extern float hypotf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __hypotf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
501 extern float cbrtf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __cbrtf (float __x) __attribute__ ((__nothrow__ , __leaf__));
510 extern float ceilf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __ceilf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
513 extern float fabsf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __fabsf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
516 extern float floorf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __floorf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
519 extern float fmodf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __fmodf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
524 extern int __isinff (float __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
527 extern int __finitef (float __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
533 extern int isinff (float __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
536 extern int finitef (float __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
539 extern float dremf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __dremf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
543 extern float significandf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __significandf (float __x) __attribute__ ((__nothrow__ , __leaf__));
549 extern float copysignf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __copysignf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
556 extern float nanf (__const char *__tagb) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __nanf (__const char *__tagb) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
562 extern int __isnanf (float __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
566 extern int isnanf (float __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
569 extern float j0f (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __j0f (float) __attribute__ ((__nothrow__ , __leaf__));
570 extern float j1f (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __j1f (float) __attribute__ ((__nothrow__ , __leaf__));
571 extern float jnf (int, float) __attribute__ ((__nothrow__ , __leaf__)); extern float __jnf (int, float) __attribute__ ((__nothrow__ , __leaf__));
572 extern float y0f (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __y0f (float) __attribute__ ((__nothrow__ , __leaf__));
573 extern float y1f (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __y1f (float) __attribute__ ((__nothrow__ , __leaf__));
574 extern float ynf (int, float) __attribute__ ((__nothrow__ , __leaf__)); extern float __ynf (int, float) __attribute__ ((__nothrow__ , __leaf__));
581 extern float erff (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __erff (float) __attribute__ ((__nothrow__ , __leaf__));
582 extern float erfcf (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __erfcf (float) __attribute__ ((__nothrow__ , __leaf__));
583 extern float lgammaf (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __lgammaf (float) __attribute__ ((__nothrow__ , __leaf__));
590 extern float tgammaf (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __tgammaf (float) __attribute__ ((__nothrow__ , __leaf__));
596 extern float gammaf (float) __attribute__ ((__nothrow__ , __leaf__)); extern float __gammaf (float) __attribute__ ((__nothrow__ , __leaf__));
603 extern float lgammaf_r (float, int *__signgamp) __attribute__ ((__nothrow__ , __leaf__)); extern float __lgammaf_r (float, int *__signgamp) __attribute__ ((__nothrow__ , __leaf__));
611 extern float rintf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __rintf (float __x) __attribute__ ((__nothrow__ , __leaf__));
614 extern float nextafterf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __nextafterf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
616 extern float nexttowardf (float __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __nexttowardf (float __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
620 extern float remainderf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __remainderf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
624 extern float scalbnf (float __x, int __n) __attribute__ ((__nothrow__ , __leaf__)); extern float __scalbnf (float __x, int __n) __attribute__ ((__nothrow__ , __leaf__));
628 extern int ilogbf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern int __ilogbf (float __x) __attribute__ ((__nothrow__ , __leaf__));
633 extern float scalblnf (float __x, long int __n) __attribute__ ((__nothrow__ , __leaf__)); extern float __scalblnf (float __x, long int __n) __attribute__ ((__nothrow__ , __leaf__));
637 extern float nearbyintf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern float __nearbyintf (float __x) __attribute__ ((__nothrow__ , __leaf__));
641 extern float roundf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __roundf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
645 extern float truncf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern float __truncf (float __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
650 extern float remquof (float __x, float __y, int *__quo) __attribute__ ((__nothrow__ , __leaf__)); extern float __remquof (float __x, float __y, int *__quo) __attribute__ ((__nothrow__ , __leaf__));
657 extern long int lrintf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern long int __lrintf (float __x) __attribute__ ((__nothrow__ , __leaf__));
658 extern long long int llrintf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern long long int __llrintf (float __x) __attribute__ ((__nothrow__ , __leaf__));
662 extern long int lroundf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern long int __lroundf (float __x) __attribute__ ((__nothrow__ , __leaf__));
663 extern long long int llroundf (float __x) __attribute__ ((__nothrow__ , __leaf__)); extern long long int __llroundf (float __x) __attribute__ ((__nothrow__ , __leaf__));
667 extern float fdimf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __fdimf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
670 extern float fmaxf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __fmaxf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
673 extern float fminf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__)); extern float __fminf (float __x, float __y) __attribute__ ((__nothrow__ , __leaf__));
677 extern int __fpclassifyf (float __value) __attribute__ ((__nothrow__ , __leaf__))
678 __attribute__ ((__const__));
681 extern int __signbitf (float __value) __attribute__ ((__nothrow__ , __leaf__))
682 __attribute__ ((__const__));
686 extern float fmaf (float __x, float __y, float __z) __attribute__ ((__nothrow__ , __leaf__)); extern float __fmaf (float __x, float __y, float __z) __attribute__ ((__nothrow__ , __leaf__));
695 extern float scalbf (float __x, float __n) __attribute__ ((__nothrow__ , __leaf__)); extern float __scalbf (float __x, float __n) __attribute__ ((__nothrow__ , __leaf__));
696 # 95 "/usr/include/math.h" 2 3 4
697 # 143 "/usr/include/math.h" 3 4
698 # 1 "/usr/include/bits/mathcalls.h" 1 3 4
699 # 53 "/usr/include/bits/mathcalls.h" 3 4
702 extern long double acosl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __acosl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
704 extern long double asinl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __asinl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
706 extern long double atanl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __atanl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
708 extern long double atan2l (long double __y, long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __atan2l (long double __y, long double __x) __attribute__ ((__nothrow__ , __leaf__));
711 extern long double cosl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __cosl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
713 extern long double sinl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __sinl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
715 extern long double tanl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __tanl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
720 extern long double coshl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __coshl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
722 extern long double sinhl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __sinhl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
724 extern long double tanhl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __tanhl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
731 # 82 "/usr/include/bits/mathcalls.h" 3 4
732 (long double __x, long double *__sinx, long double *__cosx) __attribute__ ((__nothrow__ , __leaf__)); extern void
734 # 82 "/usr/include/bits/mathcalls.h" 3 4
735 (long double __x, long double *__sinx, long double *__cosx) __attribute__ ((__nothrow__ , __leaf__))
742 extern long double acoshl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __acoshl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
744 extern long double asinhl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __asinhl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
746 extern long double atanhl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __atanhl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
754 extern long double expl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __expl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
757 extern long double frexpl (long double __x, int *__exponent) __attribute__ ((__nothrow__ , __leaf__)); extern long double __frexpl (long double __x, int *__exponent) __attribute__ ((__nothrow__ , __leaf__));
760 extern long double ldexpl (long double __x, int __exponent) __attribute__ ((__nothrow__ , __leaf__)); extern long double __ldexpl (long double __x, int __exponent) __attribute__ ((__nothrow__ , __leaf__));
763 extern long double logl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __logl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
766 extern long double log10l (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __log10l (long double __x) __attribute__ ((__nothrow__ , __leaf__));
769 extern long double modfl (long double __x, long double *__iptr) __attribute__ ((__nothrow__ , __leaf__)); extern long double __modfl (long double __x, long double *__iptr) __attribute__ ((__nothrow__ , __leaf__))
770 __attribute__ ((__nonnull__ (2)));
775 extern long double exp10l (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __exp10l (long double __x) __attribute__ ((__nothrow__ , __leaf__));
777 extern long double pow10l (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __pow10l (long double __x) __attribute__ ((__nothrow__ , __leaf__));
783 extern long double expm1l (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __expm1l (long double __x) __attribute__ ((__nothrow__ , __leaf__));
786 extern long double log1pl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __log1pl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
789 extern long double logbl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __logbl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
796 extern long double exp2l (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __exp2l (long double __x) __attribute__ ((__nothrow__ , __leaf__));
799 extern long double log2l (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __log2l (long double __x) __attribute__ ((__nothrow__ , __leaf__));
808 extern long double powl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __powl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
811 extern long double sqrtl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __sqrtl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
817 extern long double hypotl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __hypotl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
824 extern long double cbrtl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __cbrtl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
833 extern long double ceill (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __ceill (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
836 extern long double fabsl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __fabsl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
839 extern long double floorl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __floorl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
842 extern long double fmodl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __fmodl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
847 extern int __isinfl (long double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
850 extern int __finitel (long double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
856 extern int isinfl (long double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
859 extern int finitel (long double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
862 extern long double dreml (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __dreml (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
866 extern long double significandl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __significandl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
872 extern long double copysignl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __copysignl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
879 extern long double nanl (__const char *__tagb) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __nanl (__const char *__tagb) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
885 extern int __isnanl (long double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
889 extern int isnanl (long double __value) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
892 extern long double j0l (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __j0l (long double) __attribute__ ((__nothrow__ , __leaf__));
893 extern long double j1l (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __j1l (long double) __attribute__ ((__nothrow__ , __leaf__));
894 extern long double jnl (int, long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __jnl (int, long double) __attribute__ ((__nothrow__ , __leaf__));
895 extern long double y0l (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __y0l (long double) __attribute__ ((__nothrow__ , __leaf__));
896 extern long double y1l (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __y1l (long double) __attribute__ ((__nothrow__ , __leaf__));
897 extern long double ynl (int, long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __ynl (int, long double) __attribute__ ((__nothrow__ , __leaf__));
904 extern long double erfl (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __erfl (long double) __attribute__ ((__nothrow__ , __leaf__));
905 extern long double erfcl (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __erfcl (long double) __attribute__ ((__nothrow__ , __leaf__));
906 extern long double lgammal (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __lgammal (long double) __attribute__ ((__nothrow__ , __leaf__));
913 extern long double tgammal (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __tgammal (long double) __attribute__ ((__nothrow__ , __leaf__));
919 extern long double gammal (long double) __attribute__ ((__nothrow__ , __leaf__)); extern long double __gammal (long double) __attribute__ ((__nothrow__ , __leaf__));
926 extern long double lgammal_r (long double, int *__signgamp) __attribute__ ((__nothrow__ , __leaf__)); extern long double __lgammal_r (long double, int *__signgamp) __attribute__ ((__nothrow__ , __leaf__));
934 extern long double rintl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __rintl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
937 extern long double nextafterl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __nextafterl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
939 extern long double nexttowardl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __nexttowardl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
943 extern long double remainderl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __remainderl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
947 extern long double scalbnl (long double __x, int __n) __attribute__ ((__nothrow__ , __leaf__)); extern long double __scalbnl (long double __x, int __n) __attribute__ ((__nothrow__ , __leaf__));
951 extern int ilogbl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern int __ilogbl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
956 extern long double scalblnl (long double __x, long int __n) __attribute__ ((__nothrow__ , __leaf__)); extern long double __scalblnl (long double __x, long int __n) __attribute__ ((__nothrow__ , __leaf__));
960 extern long double nearbyintl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long double __nearbyintl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
964 extern long double roundl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __roundl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
968 extern long double truncl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)); extern long double __truncl (long double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
973 extern long double remquol (long double __x, long double __y, int *__quo) __attribute__ ((__nothrow__ , __leaf__)); extern long double __remquol (long double __x, long double __y, int *__quo) __attribute__ ((__nothrow__ , __leaf__));
980 extern long int lrintl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long int __lrintl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
981 extern long long int llrintl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long long int __llrintl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
985 extern long int lroundl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long int __lroundl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
986 extern long long int llroundl (long double __x) __attribute__ ((__nothrow__ , __leaf__)); extern long long int __llroundl (long double __x) __attribute__ ((__nothrow__ , __leaf__));
990 extern long double fdiml (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __fdiml (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
993 extern long double fmaxl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __fmaxl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
996 extern long double fminl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__)); extern long double __fminl (long double __x, long double __y) __attribute__ ((__nothrow__ , __leaf__));
1000 extern int __fpclassifyl (long double __value) __attribute__ ((__nothrow__ , __leaf__))
1001 __attribute__ ((__const__));
1004 extern int __signbitl (long double __value) __attribute__ ((__nothrow__ , __leaf__))
1005 __attribute__ ((__const__));
1009 extern long double fmal (long double __x, long double __y, long double __z) __attribute__ ((__nothrow__ , __leaf__)); extern long double __fmal (long double __x, long double __y, long double __z) __attribute__ ((__nothrow__ , __leaf__));
1018 extern long double scalbl (long double __x, long double __n) __attribute__ ((__nothrow__ , __leaf__)); extern long double __scalbl (long double __x, long double __n) __attribute__ ((__nothrow__ , __leaf__));
1019 # 144 "/usr/include/math.h" 2 3 4
1020 # 159 "/usr/include/math.h" 3 4
1022 # 200 "/usr/include/math.h" 3 4
1036 # 293 "/usr/include/math.h" 3 4
1044 } _LIB_VERSION_TYPE;
1049 extern _LIB_VERSION_TYPE _LIB_VERSION;
1050 # 318 "/usr/include/math.h" 3 4
1064 extern int matherr (struct exception *__exc);
1065 # 418 "/usr/include/math.h" 3 4
1066 # 1 "/usr/include/bits/mathinline.h" 1 3 4
1067 # 127 "/usr/include/bits/mathinline.h" 3 4
1069 __attribute__ ((__nothrow__ , __leaf__)) __signbitf (float __x)
1071 __extension__ union { float __f; int __i; } __u = { __f: __x };
1075 __attribute__ ((__nothrow__ , __leaf__)) __signbit (double __x)
1077 __extension__ union { double __d; int __i[2]; } __u = { __d: __x };
1078 return __u.__i[1] < 0;
1081 __attribute__ ((__nothrow__ , __leaf__)) __signbitl (long double __x)
1083 __extension__ union { long double __l; int __i[3]; } __u = { __l: __x };
1084 return (__u.__i[2] & 0x8000) != 0;
1086 # 295 "/usr/include/bits/mathinline.h" 3 4
1087 extern __inline double __sgn (double) __attribute__ ((__nothrow__ , __leaf__)); extern __inline double __attribute__ ((__nothrow__ , __leaf__)) __sgn (double __x) { return __x == 0.0 ? 0.0 : (__x > 0.0 ? 1.0 : -1.0); } extern __inline float __sgnf (float) __attribute__ ((__nothrow__ , __leaf__)); extern __inline float __attribute__ ((__nothrow__ , __leaf__)) __sgnf (float __x) { return __x == 0.0 ? 0.0 : (__x > 0.0 ? 1.0 : -1.0); } extern __inline long double __sgnl (long double) __attribute__ ((__nothrow__ , __leaf__)); extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) __sgnl (long double __x) { return __x == 0.0 ? 0.0 : (__x > 0.0 ? 1.0 : -1.0); }
1088 # 437 "/usr/include/bits/mathinline.h" 3 4
1089 extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) __atan2l (long double __y, long double __x) { return __builtin_atan2l (__y, __x); }
1090 # 477 "/usr/include/bits/mathinline.h" 3 4
1091 extern __inline double __attribute__ ((__nothrow__ , __leaf__)) fabs (double __x) { return __builtin_fabs (__x); }
1093 extern __inline float __attribute__ ((__nothrow__ , __leaf__)) fabsf (float __x) { return __builtin_fabsf (__x); }
1094 extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) fabsl (long double __x) { return __builtin_fabsl (__x); }
1096 extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) __fabsl (long double __x) { return __builtin_fabsl (__x); }
1097 # 510 "/usr/include/bits/mathinline.h" 3 4
1098 extern __inline long double __sgn1l (long double) __attribute__ ((__nothrow__ , __leaf__)); extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) __sgn1l (long double __x) { __extension__ union { long double __xld; unsigned int __xi[3]; } __n = { __xld: __x }; __n.__xi[2] = (__n.__xi[2] & 0x8000) | 0x3fff; __n.__xi[1] = 0x80000000; __n.__xi[0] = 0; return __n.__xld; }
1099 # 534 "/usr/include/bits/mathinline.h" 3 4
1100 extern __inline double __attribute__ ((__nothrow__ , __leaf__)) floor (double __x) { register long double __value; register int __ignore; unsigned short int __cw; unsigned short int __cwtmp; __asm __volatile ("fnstcw %3\n\t" "movzwl %3, %1\n\t" "andl $0xf3ff, %1\n\t" "orl $0x0400, %1\n\t" "movw %w1, %2\n\t" "fldcw %2\n\t" "frndint\n\t" "fldcw %3" : "=t" (__value), "=&q" (__ignore), "=m" (__cwtmp), "=m" (__cw) : "0" (__x)); return __value; } extern __inline float __attribute__ ((__nothrow__ , __leaf__)) floorf (float __x) { register long double __value; register int __ignore; unsigned short int __cw; unsigned short int __cwtmp; __asm __volatile ("fnstcw %3\n\t" "movzwl %3, %1\n\t" "andl $0xf3ff, %1\n\t" "orl $0x0400, %1\n\t" "movw %w1, %2\n\t" "fldcw %2\n\t" "frndint\n\t" "fldcw %3" : "=t" (__value), "=&q" (__ignore), "=m" (__cwtmp), "=m" (__cw) : "0" (__x)); return __value; } extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) floorl (long double __x) { register long double __value; register int __ignore; unsigned short int __cw; unsigned short int __cwtmp; __asm __volatile ("fnstcw %3\n\t" "movzwl %3, %1\n\t" "andl $0xf3ff, %1\n\t" "orl $0x0400, %1\n\t" "movw %w1, %2\n\t" "fldcw %2\n\t" "frndint\n\t" "fldcw %3" : "=t" (__value), "=&q" (__ignore), "=m" (__cwtmp), "=m" (__cw) : "0" (__x)); return __value; }
1101 # 552 "/usr/include/bits/mathinline.h" 3 4
1102 extern __inline double __attribute__ ((__nothrow__ , __leaf__)) ceil (double __x) { register long double __value; register int __ignore; unsigned short int __cw; unsigned short int __cwtmp; __asm __volatile ("fnstcw %3\n\t" "movzwl %3, %1\n\t" "andl $0xf3ff, %1\n\t" "orl $0x0800, %1\n\t" "movw %w1, %2\n\t" "fldcw %2\n\t" "frndint\n\t" "fldcw %3" : "=t" (__value), "=&q" (__ignore), "=m" (__cwtmp), "=m" (__cw) : "0" (__x)); return __value; } extern __inline float __attribute__ ((__nothrow__ , __leaf__)) ceilf (float __x) { register long double __value; register int __ignore; unsigned short int __cw; unsigned short int __cwtmp; __asm __volatile ("fnstcw %3\n\t" "movzwl %3, %1\n\t" "andl $0xf3ff, %1\n\t" "orl $0x0800, %1\n\t" "movw %w1, %2\n\t" "fldcw %2\n\t" "frndint\n\t" "fldcw %3" : "=t" (__value), "=&q" (__ignore), "=m" (__cwtmp), "=m" (__cw) : "0" (__x)); return __value; } extern __inline long double __attribute__ ((__nothrow__ , __leaf__)) ceill (long double __x) { register long double __value; register int __ignore; unsigned short int __cw; unsigned short int __cwtmp; __asm __volatile ("fnstcw %3\n\t" "movzwl %3, %1\n\t" "andl $0xf3ff, %1\n\t" "orl $0x0800, %1\n\t" "movw %w1, %2\n\t" "fldcw %2\n\t" "frndint\n\t" "fldcw %3" : "=t" (__value), "=&q" (__ignore), "=m" (__cwtmp), "=m" (__cw) : "0" (__x)); return __value; }
1103 # 669 "/usr/include/bits/mathinline.h" 3 4
1104 extern __inline long int
1105 __attribute__ ((__nothrow__ , __leaf__)) lrintf (float __x)
1107 long int __lrintres; __asm__ __volatile__ ("fistpl %0" : "=m" (__lrintres) : "t" (__x) : "st"); return __lrintres;
1109 extern __inline long int
1110 __attribute__ ((__nothrow__ , __leaf__)) lrint (double __x)
1112 long int __lrintres; __asm__ __volatile__ ("fistpl %0" : "=m" (__lrintres) : "t" (__x) : "st"); return __lrintres;
1114 extern __inline long int
1115 __attribute__ ((__nothrow__ , __leaf__)) lrintl (long double __x)
1117 long int __lrintres; __asm__ __volatile__ ("fistpl %0" : "=m" (__lrintres) : "t" (__x) : "st"); return __lrintres;
1119 # 692 "/usr/include/bits/mathinline.h" 3 4
1120 extern __inline long long int
1121 __attribute__ ((__nothrow__ , __leaf__)) llrintf (float __x)
1123 long long int __llrintres; __asm__ __volatile__ ("fistpll %0" : "=m" (__llrintres) : "t" (__x) : "st"); return __llrintres;
1125 extern __inline long long int
1126 __attribute__ ((__nothrow__ , __leaf__)) llrint (double __x)
1128 long long int __llrintres; __asm__ __volatile__ ("fistpll %0" : "=m" (__llrintres) : "t" (__x) : "st"); return __llrintres;
1130 extern __inline long long int
1131 __attribute__ ((__nothrow__ , __leaf__)) llrintl (long double __x)
1133 long long int __llrintres; __asm__ __volatile__ ("fistpll %0" : "=m" (__llrintres) : "t" (__x) : "st"); return __llrintres;
1135 # 729 "/usr/include/bits/mathinline.h" 3 4
1137 __attribute__ ((__nothrow__ , __leaf__)) __finite (double __x)
1139 return (__extension__
1140 (((((union { double __d; int __i[2]; }) {__d: __x}).__i[1]
1141 | 0x800fffffu) + 1) >> 31));
1143 # 419 "/usr/include/math.h" 2 3 4
1144 # 480 "/usr/include/math.h" 3 4
1146 # 21 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
1147 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 1
1148 # 22 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
1149 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config.h" 1
1150 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config-host.h" 1
1151 # 2 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config.h" 2
1152 # 1 "./config-target.h" 1
1153 # 2 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config.h" 2
1154 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
1155 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 1
1160 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/compiler.h" 1
1166 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config-host.h" 1
1167 # 7 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/compiler.h" 2
1168 # 6 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
1169 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config-host.h" 1
1170 # 7 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
1178 typedef struct QEMUTimer QEMUTimer;
1179 typedef struct QEMUFile QEMUFile;
1180 typedef struct DeviceState DeviceState;
1183 typedef struct Monitor Monitor;
1186 # 1 "/usr/include/stdlib.h" 1 3 4
1187 # 33 "/usr/include/stdlib.h" 3 4
1188 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
1189 # 212 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 3 4
1190 typedef unsigned int size_t;
1191 # 324 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 3 4
1192 typedef int wchar_t;
1193 # 34 "/usr/include/stdlib.h" 2 3 4
1202 # 1 "/usr/include/bits/waitflags.h" 1 3 4
1203 # 43 "/usr/include/stdlib.h" 2 3 4
1204 # 1 "/usr/include/bits/waitstatus.h" 1 3 4
1205 # 65 "/usr/include/bits/waitstatus.h" 3 4
1206 # 1 "/usr/include/endian.h" 1 3 4
1207 # 37 "/usr/include/endian.h" 3 4
1208 # 1 "/usr/include/bits/endian.h" 1 3 4
1209 # 38 "/usr/include/endian.h" 2 3 4
1210 # 61 "/usr/include/endian.h" 3 4
1211 # 1 "/usr/include/bits/byteswap.h" 1 3 4
1212 # 62 "/usr/include/endian.h" 2 3 4
1213 # 66 "/usr/include/bits/waitstatus.h" 2 3 4
1221 unsigned int __w_termsig:7;
1222 unsigned int __w_coredump:1;
1223 unsigned int __w_retcode:8;
1232 } __wait_terminated;
1236 unsigned int __w_stopval:8;
1237 unsigned int __w_stopsig:8;
1247 # 44 "/usr/include/stdlib.h" 2 3 4
1248 # 68 "/usr/include/stdlib.h" 3 4
1253 } __WAIT_STATUS __attribute__ ((__transparent_union__));
1254 # 96 "/usr/include/stdlib.h" 3 4
1277 __extension__ typedef struct
1284 # 140 "/usr/include/stdlib.h" 3 4
1285 extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
1290 extern double atof (__const char *__nptr)
1291 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1293 extern int atoi (__const char *__nptr)
1294 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1296 extern long int atol (__const char *__nptr)
1297 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1303 __extension__ extern long long int atoll (__const char *__nptr)
1304 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1310 extern double strtod (__const char *__restrict __nptr,
1311 char **__restrict __endptr)
1312 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1318 extern float strtof (__const char *__restrict __nptr,
1319 char **__restrict __endptr) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1321 extern long double strtold (__const char *__restrict __nptr,
1322 char **__restrict __endptr)
1323 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1329 extern long int strtol (__const char *__restrict __nptr,
1330 char **__restrict __endptr, int __base)
1331 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1333 extern unsigned long int strtoul (__const char *__restrict __nptr,
1334 char **__restrict __endptr, int __base)
1335 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1341 extern long long int strtoq (__const char *__restrict __nptr,
1342 char **__restrict __endptr, int __base)
1343 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1346 extern unsigned long long int strtouq (__const char *__restrict __nptr,
1347 char **__restrict __endptr, int __base)
1348 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1355 extern long long int strtoll (__const char *__restrict __nptr,
1356 char **__restrict __endptr, int __base)
1357 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1360 extern unsigned long long int strtoull (__const char *__restrict __nptr,
1361 char **__restrict __endptr, int __base)
1362 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1364 # 236 "/usr/include/stdlib.h" 3 4
1365 # 1 "/usr/include/xlocale.h" 1 3 4
1366 # 28 "/usr/include/xlocale.h" 3 4
1367 typedef struct __locale_struct
1370 struct __locale_data *__locales[13];
1373 const unsigned short int *__ctype_b;
1374 const int *__ctype_tolower;
1375 const int *__ctype_toupper;
1378 const char *__names[13];
1382 typedef __locale_t locale_t;
1383 # 237 "/usr/include/stdlib.h" 2 3 4
1387 extern long int strtol_l (__const char *__restrict __nptr,
1388 char **__restrict __endptr, int __base,
1389 __locale_t __loc) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
1391 extern unsigned long int strtoul_l (__const char *__restrict __nptr,
1392 char **__restrict __endptr,
1393 int __base, __locale_t __loc)
1394 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
1397 extern long long int strtoll_l (__const char *__restrict __nptr,
1398 char **__restrict __endptr, int __base,
1400 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
1403 extern unsigned long long int strtoull_l (__const char *__restrict __nptr,
1404 char **__restrict __endptr,
1405 int __base, __locale_t __loc)
1406 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
1408 extern double strtod_l (__const char *__restrict __nptr,
1409 char **__restrict __endptr, __locale_t __loc)
1410 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
1412 extern float strtof_l (__const char *__restrict __nptr,
1413 char **__restrict __endptr, __locale_t __loc)
1414 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
1416 extern long double strtold_l (__const char *__restrict __nptr,
1417 char **__restrict __endptr,
1419 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
1425 extern __inline double
1426 __attribute__ ((__nothrow__ , __leaf__)) atof (__const char *__nptr)
1428 return strtod (__nptr, (char **) ((void *)0));
1431 __attribute__ ((__nothrow__ , __leaf__)) atoi (__const char *__nptr)
1433 return (int) strtol (__nptr, (char **) ((void *)0), 10);
1435 extern __inline long int
1436 __attribute__ ((__nothrow__ , __leaf__)) atol (__const char *__nptr)
1438 return strtol (__nptr, (char **) ((void *)0), 10);
1444 __extension__ extern __inline long long int
1445 __attribute__ ((__nothrow__ , __leaf__)) atoll (__const char *__nptr)
1447 return strtoll (__nptr, (char **) ((void *)0), 10);
1450 # 311 "/usr/include/stdlib.h" 3 4
1451 extern char *l64a (long int __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
1454 extern long int a64l (__const char *__s)
1455 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1460 # 1 "/usr/include/sys/types.h" 1 3 4
1461 # 28 "/usr/include/sys/types.h" 3 4
1464 # 1 "/usr/include/bits/types.h" 1 3 4
1465 # 28 "/usr/include/bits/types.h" 3 4
1466 # 1 "/usr/include/bits/wordsize.h" 1 3 4
1467 # 29 "/usr/include/bits/types.h" 2 3 4
1470 typedef unsigned char __u_char;
1471 typedef unsigned short int __u_short;
1472 typedef unsigned int __u_int;
1473 typedef unsigned long int __u_long;
1476 typedef signed char __int8_t;
1477 typedef unsigned char __uint8_t;
1478 typedef signed short int __int16_t;
1479 typedef unsigned short int __uint16_t;
1480 typedef signed int __int32_t;
1481 typedef unsigned int __uint32_t;
1486 __extension__ typedef signed long long int __int64_t;
1487 __extension__ typedef unsigned long long int __uint64_t;
1495 __extension__ typedef long long int __quad_t;
1496 __extension__ typedef unsigned long long int __u_quad_t;
1497 # 131 "/usr/include/bits/types.h" 3 4
1498 # 1 "/usr/include/bits/typesizes.h" 1 3 4
1499 # 132 "/usr/include/bits/types.h" 2 3 4
1502 __extension__ typedef __u_quad_t __dev_t;
1503 __extension__ typedef unsigned int __uid_t;
1504 __extension__ typedef unsigned int __gid_t;
1505 __extension__ typedef unsigned long int __ino_t;
1506 __extension__ typedef __u_quad_t __ino64_t;
1507 __extension__ typedef unsigned int __mode_t;
1508 __extension__ typedef unsigned int __nlink_t;
1509 __extension__ typedef long int __off_t;
1510 __extension__ typedef __quad_t __off64_t;
1511 __extension__ typedef int __pid_t;
1512 __extension__ typedef struct { int __val[2]; } __fsid_t;
1513 __extension__ typedef long int __clock_t;
1514 __extension__ typedef unsigned long int __rlim_t;
1515 __extension__ typedef __u_quad_t __rlim64_t;
1516 __extension__ typedef unsigned int __id_t;
1517 __extension__ typedef long int __time_t;
1518 __extension__ typedef unsigned int __useconds_t;
1519 __extension__ typedef long int __suseconds_t;
1521 __extension__ typedef int __daddr_t;
1522 __extension__ typedef long int __swblk_t;
1523 __extension__ typedef int __key_t;
1526 __extension__ typedef int __clockid_t;
1529 __extension__ typedef void * __timer_t;
1532 __extension__ typedef long int __blksize_t;
1537 __extension__ typedef long int __blkcnt_t;
1538 __extension__ typedef __quad_t __blkcnt64_t;
1541 __extension__ typedef unsigned long int __fsblkcnt_t;
1542 __extension__ typedef __u_quad_t __fsblkcnt64_t;
1545 __extension__ typedef unsigned long int __fsfilcnt_t;
1546 __extension__ typedef __u_quad_t __fsfilcnt64_t;
1548 __extension__ typedef int __ssize_t;
1552 typedef __off64_t __loff_t;
1553 typedef __quad_t *__qaddr_t;
1554 typedef char *__caddr_t;
1557 __extension__ typedef int __intptr_t;
1560 __extension__ typedef unsigned int __socklen_t;
1561 # 31 "/usr/include/sys/types.h" 2 3 4
1565 typedef __u_char u_char;
1566 typedef __u_short u_short;
1567 typedef __u_int u_int;
1568 typedef __u_long u_long;
1569 typedef __quad_t quad_t;
1570 typedef __u_quad_t u_quad_t;
1571 typedef __fsid_t fsid_t;
1576 typedef __loff_t loff_t;
1582 typedef __ino64_t ino_t;
1587 typedef __ino64_t ino64_t;
1592 typedef __dev_t dev_t;
1597 typedef __gid_t gid_t;
1602 typedef __mode_t mode_t;
1607 typedef __nlink_t nlink_t;
1612 typedef __uid_t uid_t;
1620 typedef __off64_t off_t;
1625 typedef __off64_t off64_t;
1630 typedef __pid_t pid_t;
1636 typedef __id_t id_t;
1641 typedef __ssize_t ssize_t;
1647 typedef __daddr_t daddr_t;
1648 typedef __caddr_t caddr_t;
1654 typedef __key_t key_t;
1655 # 133 "/usr/include/sys/types.h" 3 4
1656 # 1 "/usr/include/time.h" 1 3 4
1657 # 58 "/usr/include/time.h" 3 4
1660 typedef __clock_t clock_t;
1664 # 74 "/usr/include/time.h" 3 4
1667 typedef __time_t time_t;
1671 # 92 "/usr/include/time.h" 3 4
1672 typedef __clockid_t clockid_t;
1673 # 104 "/usr/include/time.h" 3 4
1674 typedef __timer_t timer_t;
1675 # 134 "/usr/include/sys/types.h" 2 3 4
1679 typedef __useconds_t useconds_t;
1683 typedef __suseconds_t suseconds_t;
1689 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
1690 # 148 "/usr/include/sys/types.h" 2 3 4
1694 typedef unsigned long int ulong;
1695 typedef unsigned short int ushort;
1696 typedef unsigned int uint;
1697 # 195 "/usr/include/sys/types.h" 3 4
1698 typedef int int8_t __attribute__ ((__mode__ (__QI__)));
1699 typedef int int16_t __attribute__ ((__mode__ (__HI__)));
1700 typedef int int32_t __attribute__ ((__mode__ (__SI__)));
1701 typedef int int64_t __attribute__ ((__mode__ (__DI__)));
1704 typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
1705 typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
1706 typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
1707 typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
1709 typedef int register_t __attribute__ ((__mode__ (__word__)));
1710 # 220 "/usr/include/sys/types.h" 3 4
1711 # 1 "/usr/include/sys/select.h" 1 3 4
1712 # 31 "/usr/include/sys/select.h" 3 4
1713 # 1 "/usr/include/bits/select.h" 1 3 4
1714 # 32 "/usr/include/sys/select.h" 2 3 4
1717 # 1 "/usr/include/bits/sigset.h" 1 3 4
1718 # 24 "/usr/include/bits/sigset.h" 3 4
1719 typedef int __sig_atomic_t;
1726 unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
1728 # 35 "/usr/include/sys/select.h" 2 3 4
1732 typedef __sigset_t sigset_t;
1738 # 1 "/usr/include/time.h" 1 3 4
1739 # 120 "/usr/include/time.h" 3 4
1745 # 45 "/usr/include/sys/select.h" 2 3 4
1747 # 1 "/usr/include/bits/time.h" 1 3 4
1748 # 31 "/usr/include/bits/time.h" 3 4
1752 __suseconds_t tv_usec;
1754 # 47 "/usr/include/sys/select.h" 2 3 4
1755 # 55 "/usr/include/sys/select.h" 3 4
1756 typedef long int __fd_mask;
1757 # 65 "/usr/include/sys/select.h" 3 4
1763 __fd_mask fds_bits[1024 / (8 * (int) sizeof (__fd_mask))];
1776 typedef __fd_mask fd_mask;
1777 # 97 "/usr/include/sys/select.h" 3 4
1779 # 107 "/usr/include/sys/select.h" 3 4
1780 extern int select (int __nfds, fd_set *__restrict __readfds,
1781 fd_set *__restrict __writefds,
1782 fd_set *__restrict __exceptfds,
1783 struct timeval *__restrict __timeout);
1784 # 119 "/usr/include/sys/select.h" 3 4
1785 extern int pselect (int __nfds, fd_set *__restrict __readfds,
1786 fd_set *__restrict __writefds,
1787 fd_set *__restrict __exceptfds,
1788 const struct timespec *__restrict __timeout,
1789 const __sigset_t *__restrict __sigmask);
1795 # 1 "/usr/include/bits/select2.h" 1 3 4
1796 # 25 "/usr/include/bits/select2.h" 3 4
1797 extern long int __fdelt_chk (long int __d);
1798 extern long int __fdelt_warn (long int __d)
1799 __attribute__((__warning__ ("bit outside of fd_set selected")));
1800 # 130 "/usr/include/sys/select.h" 2 3 4
1804 # 221 "/usr/include/sys/types.h" 2 3 4
1807 # 1 "/usr/include/sys/sysmacros.h" 1 3 4
1808 # 30 "/usr/include/sys/sysmacros.h" 3 4
1812 extern unsigned int gnu_dev_major (unsigned long long int __dev)
1813 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
1815 extern unsigned int gnu_dev_minor (unsigned long long int __dev)
1816 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
1818 extern unsigned long long int gnu_dev_makedev (unsigned int __major,
1819 unsigned int __minor)
1820 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
1823 __extension__ extern __inline __attribute__ ((__const__)) unsigned int
1824 __attribute__ ((__nothrow__ , __leaf__)) gnu_dev_major (unsigned long long int __dev)
1826 return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);
1829 __extension__ extern __inline __attribute__ ((__const__)) unsigned int
1830 __attribute__ ((__nothrow__ , __leaf__)) gnu_dev_minor (unsigned long long int __dev)
1832 return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);
1835 __extension__ extern __inline __attribute__ ((__const__)) unsigned long long int
1836 __attribute__ ((__nothrow__ , __leaf__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor)
1838 return ((__minor & 0xff) | ((__major & 0xfff) << 8)
1839 | (((unsigned long long int) (__minor & ~0xff)) << 12)
1840 | (((unsigned long long int) (__major & ~0xfff)) << 32));
1844 # 224 "/usr/include/sys/types.h" 2 3 4
1850 typedef __blksize_t blksize_t;
1851 # 249 "/usr/include/sys/types.h" 3 4
1852 typedef __blkcnt64_t blkcnt_t;
1856 typedef __fsblkcnt64_t fsblkcnt_t;
1860 typedef __fsfilcnt64_t fsfilcnt_t;
1866 typedef __blkcnt64_t blkcnt64_t;
1867 typedef __fsblkcnt64_t fsblkcnt64_t;
1868 typedef __fsfilcnt64_t fsfilcnt64_t;
1874 # 1 "/usr/include/bits/pthreadtypes.h" 1 3 4
1875 # 36 "/usr/include/bits/pthreadtypes.h" 3 4
1876 typedef unsigned long int pthread_t;
1886 typedef struct __pthread_internal_slist
1888 struct __pthread_internal_slist *__next;
1889 } __pthread_slist_t;
1896 struct __pthread_mutex_s
1899 unsigned int __count;
1904 unsigned int __nusers;
1908 __pthread_slist_t __list;
1919 } pthread_mutexattr_t;
1929 unsigned int __futex;
1930 __extension__ unsigned long long int __total_seq;
1931 __extension__ unsigned long long int __wakeup_seq;
1932 __extension__ unsigned long long int __woken_seq;
1934 unsigned int __nwaiters;
1935 unsigned int __broadcast_seq;
1938 __extension__ long long int __align;
1945 } pthread_condattr_t;
1949 typedef unsigned int pthread_key_t;
1953 typedef int pthread_once_t;
1964 unsigned int __nr_readers;
1965 unsigned int __readers_wakeup;
1966 unsigned int __writer_wakeup;
1967 unsigned int __nr_readers_queued;
1968 unsigned int __nr_writers_queued;
1971 unsigned char __flags;
1972 unsigned char __shared;
1973 unsigned char __pad1;
1974 unsigned char __pad2;
1985 } pthread_rwlockattr_t;
1991 typedef volatile int pthread_spinlock_t;
2000 } pthread_barrier_t;
2006 } pthread_barrierattr_t;
2007 # 272 "/usr/include/sys/types.h" 2 3 4
2011 # 321 "/usr/include/stdlib.h" 2 3 4
2018 extern long int random (void) __attribute__ ((__nothrow__ , __leaf__));
2021 extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__ , __leaf__));
2027 extern char *initstate (unsigned int __seed, char *__statebuf,
2028 size_t __statelen) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
2032 extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2051 extern int random_r (struct random_data *__restrict __buf,
2052 int32_t *__restrict __result) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2054 extern int srandom_r (unsigned int __seed, struct random_data *__buf)
2055 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
2057 extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
2059 struct random_data *__restrict __buf)
2060 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 4)));
2062 extern int setstate_r (char *__restrict __statebuf,
2063 struct random_data *__restrict __buf)
2064 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2071 extern int rand (void) __attribute__ ((__nothrow__ , __leaf__));
2073 extern void srand (unsigned int __seed) __attribute__ ((__nothrow__ , __leaf__));
2078 extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__ , __leaf__));
2086 extern double drand48 (void) __attribute__ ((__nothrow__ , __leaf__));
2087 extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2090 extern long int lrand48 (void) __attribute__ ((__nothrow__ , __leaf__));
2091 extern long int nrand48 (unsigned short int __xsubi[3])
2092 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2095 extern long int mrand48 (void) __attribute__ ((__nothrow__ , __leaf__));
2096 extern long int jrand48 (unsigned short int __xsubi[3])
2097 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2100 extern void srand48 (long int __seedval) __attribute__ ((__nothrow__ , __leaf__));
2101 extern unsigned short int *seed48 (unsigned short int __seed16v[3])
2102 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2103 extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2111 unsigned short int __x[3];
2112 unsigned short int __old_x[3];
2113 unsigned short int __c;
2114 unsigned short int __init;
2115 unsigned long long int __a;
2119 extern int drand48_r (struct drand48_data *__restrict __buffer,
2120 double *__restrict __result) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2121 extern int erand48_r (unsigned short int __xsubi[3],
2122 struct drand48_data *__restrict __buffer,
2123 double *__restrict __result) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2126 extern int lrand48_r (struct drand48_data *__restrict __buffer,
2127 long int *__restrict __result)
2128 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2129 extern int nrand48_r (unsigned short int __xsubi[3],
2130 struct drand48_data *__restrict __buffer,
2131 long int *__restrict __result)
2132 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2135 extern int mrand48_r (struct drand48_data *__restrict __buffer,
2136 long int *__restrict __result)
2137 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2138 extern int jrand48_r (unsigned short int __xsubi[3],
2139 struct drand48_data *__restrict __buffer,
2140 long int *__restrict __result)
2141 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2144 extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
2145 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
2147 extern int seed48_r (unsigned short int __seed16v[3],
2148 struct drand48_data *__buffer) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2150 extern int lcong48_r (unsigned short int __param[7],
2151 struct drand48_data *__buffer)
2152 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
2162 extern void *malloc (size_t __size) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
2164 extern void *calloc (size_t __nmemb, size_t __size)
2165 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
2176 extern void *realloc (void *__ptr, size_t __size)
2177 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2179 extern void free (void *__ptr) __attribute__ ((__nothrow__ , __leaf__));
2184 extern void cfree (void *__ptr) __attribute__ ((__nothrow__ , __leaf__));
2188 # 1 "/usr/include/alloca.h" 1 3 4
2189 # 25 "/usr/include/alloca.h" 3 4
2190 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
2191 # 26 "/usr/include/alloca.h" 2 3 4
2199 extern void *alloca (size_t __size) __attribute__ ((__nothrow__ , __leaf__));
2206 # 498 "/usr/include/stdlib.h" 2 3 4
2212 extern void *valloc (size_t __size) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
2217 extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
2218 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2223 extern void abort (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
2227 extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2228 # 528 "/usr/include/stdlib.h" 3 4
2229 extern int at_quick_exit (void (*__func) (void)) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2237 extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
2238 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2245 extern void exit (int __status) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
2253 extern void quick_exit (int __status) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
2261 extern void _Exit (int __status) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
2268 extern char *getenv (__const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2273 extern char *__secure_getenv (__const char *__name)
2274 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2280 extern int putenv (char *__string) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2286 extern int setenv (__const char *__name, __const char *__value, int __replace)
2287 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
2290 extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2297 extern int clearenv (void) __attribute__ ((__nothrow__ , __leaf__));
2298 # 606 "/usr/include/stdlib.h" 3 4
2299 extern char *mktemp (char *__template) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2300 # 623 "/usr/include/stdlib.h" 3 4
2301 extern int mkstemp (char *__template) __asm__ ("" "mkstemp64")
2302 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2308 extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2309 # 645 "/usr/include/stdlib.h" 3 4
2310 extern int mkstemps (char *__template, int __suffixlen) __asm__ ("" "mkstemps64")
2311 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2317 extern int mkstemps64 (char *__template, int __suffixlen)
2318 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2319 # 663 "/usr/include/stdlib.h" 3 4
2320 extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2321 # 677 "/usr/include/stdlib.h" 3 4
2322 extern int mkostemp (char *__template, int __flags) __asm__ ("" "mkostemp64")
2323 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2329 extern int mkostemp64 (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2330 # 698 "/usr/include/stdlib.h" 3 4
2331 extern int mkostemps (char *__template, int __suffixlen, int __flags) __asm__ ("" "mkostemps64")
2333 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2339 extern int mkostemps64 (char *__template, int __suffixlen, int __flags)
2340 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2350 extern int system (__const char *__command) __attribute__ ((__warn_unused_result__));
2357 extern char *canonicalize_file_name (__const char *__name)
2358 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2359 # 734 "/usr/include/stdlib.h" 3 4
2360 extern char *realpath (__const char *__restrict __name,
2361 char *__restrict __resolved) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2368 typedef int (*__compar_fn_t) (__const void *, __const void *);
2371 typedef __compar_fn_t comparison_fn_t;
2375 typedef int (*__compar_d_fn_t) (__const void *, __const void *, void *);
2381 extern void *bsearch (__const void *__key, __const void *__base,
2382 size_t __nmemb, size_t __size, __compar_fn_t __compar)
2383 __attribute__ ((__nonnull__ (1, 2, 5))) __attribute__ ((__warn_unused_result__));
2387 extern void qsort (void *__base, size_t __nmemb, size_t __size,
2388 __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
2390 extern void qsort_r (void *__base, size_t __nmemb, size_t __size,
2391 __compar_d_fn_t __compar, void *__arg)
2392 __attribute__ ((__nonnull__ (1, 4)));
2397 extern int abs (int __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
2398 extern long int labs (long int __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
2402 __extension__ extern long long int llabs (long long int __x)
2403 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
2411 extern div_t div (int __numer, int __denom)
2412 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
2413 extern ldiv_t ldiv (long int __numer, long int __denom)
2414 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
2419 __extension__ extern lldiv_t lldiv (long long int __numer,
2420 long long int __denom)
2421 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
2423 # 808 "/usr/include/stdlib.h" 3 4
2424 extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
2425 int *__restrict __sign) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
2430 extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
2431 int *__restrict __sign) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
2436 extern char *gcvt (double __value, int __ndigit, char *__buf)
2437 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
2442 extern char *qecvt (long double __value, int __ndigit,
2443 int *__restrict __decpt, int *__restrict __sign)
2444 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
2445 extern char *qfcvt (long double __value, int __ndigit,
2446 int *__restrict __decpt, int *__restrict __sign)
2447 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
2448 extern char *qgcvt (long double __value, int __ndigit, char *__buf)
2449 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
2454 extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
2455 int *__restrict __sign, char *__restrict __buf,
2456 size_t __len) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
2457 extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
2458 int *__restrict __sign, char *__restrict __buf,
2459 size_t __len) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
2461 extern int qecvt_r (long double __value, int __ndigit,
2462 int *__restrict __decpt, int *__restrict __sign,
2463 char *__restrict __buf, size_t __len)
2464 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
2465 extern int qfcvt_r (long double __value, int __ndigit,
2466 int *__restrict __decpt, int *__restrict __sign,
2467 char *__restrict __buf, size_t __len)
2468 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
2476 extern int mblen (__const char *__s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2479 extern int mbtowc (wchar_t *__restrict __pwc,
2480 __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2483 extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2487 extern size_t mbstowcs (wchar_t *__restrict __pwcs,
2488 __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
2490 extern size_t wcstombs (char *__restrict __s,
2491 __const wchar_t *__restrict __pwcs, size_t __n)
2492 __attribute__ ((__nothrow__ , __leaf__));
2501 extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
2502 # 896 "/usr/include/stdlib.h" 3 4
2503 extern int getsubopt (char **__restrict __optionp,
2504 char *__const *__restrict __tokens,
2505 char **__restrict __valuep)
2506 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2, 3))) __attribute__ ((__warn_unused_result__));
2512 extern void setkey (__const char *__key) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2520 extern int posix_openpt (int __oflag) __attribute__ ((__warn_unused_result__));
2528 extern int grantpt (int __fd) __attribute__ ((__nothrow__ , __leaf__));
2532 extern int unlockpt (int __fd) __attribute__ ((__nothrow__ , __leaf__));
2537 extern char *ptsname (int __fd) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2544 extern int ptsname_r (int __fd, char *__buf, size_t __buflen)
2545 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
2548 extern int getpt (void);
2555 extern int getloadavg (double __loadavg[], int __nelem)
2556 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
2562 # 1 "/usr/include/bits/stdlib.h" 1 3 4
2563 # 24 "/usr/include/bits/stdlib.h" 3 4
2564 extern char *__realpath_chk (__const char *__restrict __name,
2565 char *__restrict __resolved,
2566 size_t __resolvedlen) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2567 extern char *__realpath_alias (__const char *__restrict __name, char *__restrict __resolved) __asm__ ("" "realpath") __attribute__ ((__nothrow__ , __leaf__))
2569 __attribute__ ((__warn_unused_result__));
2570 extern char *__realpath_chk_warn (__const char *__restrict __name, char *__restrict __resolved, size_t __resolvedlen) __asm__ ("" "__realpath_chk") __attribute__ ((__nothrow__ , __leaf__))
2573 __attribute__ ((__warn_unused_result__))
2574 __attribute__((__warning__ ("second argument of realpath must be either NULL or at " "least PATH_MAX bytes long buffer")))
2577 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
2578 __attribute__ ((__nothrow__ , __leaf__)) realpath (__const char *__restrict __name, char *__restrict __resolved)
2580 if (__builtin_object_size (__resolved, 2 > 1) != (size_t) -1)
2586 return __realpath_chk (__name, __resolved, __builtin_object_size (__resolved, 2 > 1));
2589 return __realpath_alias (__name, __resolved);
2593 extern int __ptsname_r_chk (int __fd, char *__buf, size_t __buflen,
2594 size_t __nreal) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
2595 extern int __ptsname_r_alias (int __fd, char *__buf, size_t __buflen) __asm__ ("" "ptsname_r") __attribute__ ((__nothrow__ , __leaf__))
2597 __attribute__ ((__nonnull__ (2)));
2598 extern int __ptsname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__ptsname_r_chk") __attribute__ ((__nothrow__ , __leaf__))
2601 __attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ptsname_r called with buflen bigger than " "size of buf")))
2604 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
2605 __attribute__ ((__nothrow__ , __leaf__)) ptsname_r (int __fd, char *__buf, size_t __buflen)
2607 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
2609 if (!__builtin_constant_p (__buflen))
2610 return __ptsname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
2611 if (__buflen > __builtin_object_size (__buf, 2 > 1))
2612 return __ptsname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
2614 return __ptsname_r_alias (__fd, __buf, __buflen);
2618 extern int __wctomb_chk (char *__s, wchar_t __wchar, size_t __buflen)
2619 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
2620 extern int __wctomb_alias (char *__s, wchar_t __wchar) __asm__ ("" "wctomb") __attribute__ ((__nothrow__ , __leaf__))
2621 __attribute__ ((__warn_unused_result__));
2623 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) int
2624 __attribute__ ((__nothrow__ , __leaf__)) wctomb (char *__s, wchar_t __wchar)
2633 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 && 16 > __builtin_object_size (__s, 2 > 1))
2634 return __wctomb_chk (__s, __wchar, __builtin_object_size (__s, 2 > 1));
2635 return __wctomb_alias (__s, __wchar);
2639 extern size_t __mbstowcs_chk (wchar_t *__restrict __dst,
2640 __const char *__restrict __src,
2641 size_t __len, size_t __dstlen) __attribute__ ((__nothrow__ , __leaf__));
2642 extern size_t __mbstowcs_alias (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len) __asm__ ("" "mbstowcs") __attribute__ ((__nothrow__ , __leaf__))
2646 extern size_t __mbstowcs_chk_warn (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__mbstowcs_chk") __attribute__ ((__nothrow__ , __leaf__))
2650 __attribute__((__warning__ ("mbstowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
2653 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
2654 __attribute__ ((__nothrow__ , __leaf__)) mbstowcs (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len)
2657 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
2659 if (!__builtin_constant_p (__len))
2660 return __mbstowcs_chk (__dst, __src, __len,
2661 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
2663 if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
2664 return __mbstowcs_chk_warn (__dst, __src, __len,
2665 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
2667 return __mbstowcs_alias (__dst, __src, __len);
2671 extern size_t __wcstombs_chk (char *__restrict __dst,
2672 __const wchar_t *__restrict __src,
2673 size_t __len, size_t __dstlen) __attribute__ ((__nothrow__ , __leaf__));
2674 extern size_t __wcstombs_alias (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len) __asm__ ("" "wcstombs") __attribute__ ((__nothrow__ , __leaf__))
2678 extern size_t __wcstombs_chk_warn (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__wcstombs_chk") __attribute__ ((__nothrow__ , __leaf__))
2682 __attribute__((__warning__ ("wcstombs called with dst buffer smaller than len")));
2684 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
2685 __attribute__ ((__nothrow__ , __leaf__)) wcstombs (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len)
2688 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
2690 if (!__builtin_constant_p (__len))
2691 return __wcstombs_chk (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
2692 if (__len > __builtin_object_size (__dst, 2 > 1))
2693 return __wcstombs_chk_warn (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
2695 return __wcstombs_alias (__dst, __src, __len);
2697 # 956 "/usr/include/stdlib.h" 2 3 4
2698 # 964 "/usr/include/stdlib.h" 3 4
2700 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
2701 # 1 "/usr/include/stdio.h" 1 3 4
2702 # 30 "/usr/include/stdio.h" 3 4
2707 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
2708 # 35 "/usr/include/stdio.h" 2 3 4
2709 # 45 "/usr/include/stdio.h" 3 4
2714 typedef struct _IO_FILE FILE;
2720 # 65 "/usr/include/stdio.h" 3 4
2721 typedef struct _IO_FILE __FILE;
2722 # 75 "/usr/include/stdio.h" 3 4
2723 # 1 "/usr/include/libio.h" 1 3 4
2724 # 32 "/usr/include/libio.h" 3 4
2725 # 1 "/usr/include/_G_config.h" 1 3 4
2726 # 15 "/usr/include/_G_config.h" 3 4
2727 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
2728 # 16 "/usr/include/_G_config.h" 2 3 4
2733 # 1 "/usr/include/wchar.h" 1 3 4
2734 # 83 "/usr/include/wchar.h" 3 4
2748 # 21 "/usr/include/_G_config.h" 2 3 4
2753 __mbstate_t __state;
2758 __mbstate_t __state;
2760 # 53 "/usr/include/_G_config.h" 3 4
2761 typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
2762 typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
2763 typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
2764 typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
2765 # 33 "/usr/include/libio.h" 2 3 4
2766 # 53 "/usr/include/libio.h" 3 4
2767 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stdarg.h" 1 3 4
2768 # 40 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stdarg.h" 3 4
2769 typedef __builtin_va_list __gnuc_va_list;
2770 # 54 "/usr/include/libio.h" 2 3 4
2771 # 172 "/usr/include/libio.h" 3 4
2772 struct _IO_jump_t; struct _IO_FILE;
2773 # 182 "/usr/include/libio.h" 3 4
2774 typedef void _IO_lock_t;
2781 struct _IO_marker *_next;
2782 struct _IO_FILE *_sbuf;
2787 # 205 "/usr/include/libio.h" 3 4
2791 enum __codecvt_result
2798 # 273 "/usr/include/libio.h" 3 4
2807 char* _IO_read_base;
2808 char* _IO_write_base;
2809 char* _IO_write_ptr;
2810 char* _IO_write_end;
2814 char *_IO_save_base;
2815 char *_IO_backup_base;
2818 struct _IO_marker *_markers;
2820 struct _IO_FILE *_chain;
2828 __off_t _old_offset;
2832 unsigned short _cur_column;
2833 signed char _vtable_offset;
2839 # 321 "/usr/include/libio.h" 3 4
2841 # 330 "/usr/include/libio.h" 3 4
2850 char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
2855 typedef struct _IO_FILE _IO_FILE;
2858 struct _IO_FILE_plus;
2860 extern struct _IO_FILE_plus _IO_2_1_stdin_;
2861 extern struct _IO_FILE_plus _IO_2_1_stdout_;
2862 extern struct _IO_FILE_plus _IO_2_1_stderr_;
2863 # 366 "/usr/include/libio.h" 3 4
2864 typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
2872 typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
2881 typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
2884 typedef int __io_close_fn (void *__cookie);
2889 typedef __io_read_fn cookie_read_function_t;
2890 typedef __io_write_fn cookie_write_function_t;
2891 typedef __io_seek_fn cookie_seek_function_t;
2892 typedef __io_close_fn cookie_close_function_t;
2898 __io_write_fn *write;
2900 __io_close_fn *close;
2901 } _IO_cookie_io_functions_t;
2902 typedef _IO_cookie_io_functions_t cookie_io_functions_t;
2904 struct _IO_cookie_file;
2907 extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write,
2908 void *__cookie, _IO_cookie_io_functions_t __fns);
2916 extern int __underflow (_IO_FILE *);
2917 extern int __uflow (_IO_FILE *);
2918 extern int __overflow (_IO_FILE *, int);
2919 # 462 "/usr/include/libio.h" 3 4
2920 extern int _IO_getc (_IO_FILE *__fp);
2921 extern int _IO_putc (int __c, _IO_FILE *__fp);
2922 extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__ , __leaf__));
2923 extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__ , __leaf__));
2925 extern int _IO_peekc_locked (_IO_FILE *__fp);
2931 extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
2932 extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
2933 extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
2934 # 492 "/usr/include/libio.h" 3 4
2935 extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
2936 __gnuc_va_list, int *__restrict);
2937 extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
2939 extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
2940 extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
2942 extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
2943 extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
2945 extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
2946 # 76 "/usr/include/stdio.h" 2 3 4
2951 typedef __gnuc_va_list va_list;
2952 # 109 "/usr/include/stdio.h" 3 4
2957 typedef _G_fpos64_t fpos_t;
2961 typedef _G_fpos64_t fpos64_t;
2962 # 165 "/usr/include/stdio.h" 3 4
2963 # 1 "/usr/include/bits/stdio_lim.h" 1 3 4
2964 # 166 "/usr/include/stdio.h" 2 3 4
2968 extern struct _IO_FILE *stdin;
2969 extern struct _IO_FILE *stdout;
2970 extern struct _IO_FILE *stderr;
2978 extern int remove (__const char *__filename) __attribute__ ((__nothrow__ , __leaf__));
2980 extern int rename (__const char *__old, __const char *__new) __attribute__ ((__nothrow__ , __leaf__));
2985 extern int renameat (int __oldfd, __const char *__old, int __newfd,
2986 __const char *__new) __attribute__ ((__nothrow__ , __leaf__));
2990 # 199 "/usr/include/stdio.h" 3 4
2991 extern FILE *tmpfile (void) __asm__ ("" "tmpfile64") __attribute__ ((__warn_unused_result__));
2998 extern FILE *tmpfile64 (void) __attribute__ ((__warn_unused_result__));
3002 extern char *tmpnam (char *__s) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3008 extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3009 # 228 "/usr/include/stdio.h" 3 4
3010 extern char *tempnam (__const char *__dir, __const char *__pfx)
3011 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
3020 extern int fclose (FILE *__stream);
3025 extern int fflush (FILE *__stream);
3027 # 253 "/usr/include/stdio.h" 3 4
3028 extern int fflush_unlocked (FILE *__stream);
3029 # 263 "/usr/include/stdio.h" 3 4
3030 extern int fcloseall (void);
3035 # 284 "/usr/include/stdio.h" 3 4
3036 extern FILE *fopen (__const char *__restrict __filename, __const char *__restrict __modes) __asm__ ("" "fopen64")
3038 __attribute__ ((__warn_unused_result__));
3039 extern FILE *freopen (__const char *__restrict __filename, __const char *__restrict __modes, FILE *__restrict __stream) __asm__ ("" "freopen64")
3042 __attribute__ ((__warn_unused_result__));
3050 extern FILE *fopen64 (__const char *__restrict __filename,
3051 __const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
3052 extern FILE *freopen64 (__const char *__restrict __filename,
3053 __const char *__restrict __modes,
3054 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3059 extern FILE *fdopen (int __fd, __const char *__modes) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3065 extern FILE *fopencookie (void *__restrict __magic_cookie,
3066 __const char *__restrict __modes,
3067 _IO_cookie_io_functions_t __io_funcs) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3072 extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
3073 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3078 extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3085 extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__));
3089 extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
3090 int __modes, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
3096 extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
3097 size_t __size) __attribute__ ((__nothrow__ , __leaf__));
3100 extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
3109 extern int fprintf (FILE *__restrict __stream,
3110 __const char *__restrict __format, ...);
3115 extern int printf (__const char *__restrict __format, ...);
3117 extern int sprintf (char *__restrict __s,
3118 __const char *__restrict __format, ...) __attribute__ ((__nothrow__));
3124 extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
3125 __gnuc_va_list __arg);
3130 extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
3132 extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
3133 __gnuc_va_list __arg) __attribute__ ((__nothrow__));
3139 extern int snprintf (char *__restrict __s, size_t __maxlen,
3140 __const char *__restrict __format, ...)
3141 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));
3143 extern int vsnprintf (char *__restrict __s, size_t __maxlen,
3144 __const char *__restrict __format, __gnuc_va_list __arg)
3145 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));
3152 extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f,
3153 __gnuc_va_list __arg)
3154 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0))) __attribute__ ((__warn_unused_result__));
3155 extern int __asprintf (char **__restrict __ptr,
3156 __const char *__restrict __fmt, ...)
3157 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))) __attribute__ ((__warn_unused_result__));
3158 extern int asprintf (char **__restrict __ptr,
3159 __const char *__restrict __fmt, ...)
3160 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))) __attribute__ ((__warn_unused_result__));
3161 # 418 "/usr/include/stdio.h" 3 4
3162 extern int vdprintf (int __fd, __const char *__restrict __fmt,
3163 __gnuc_va_list __arg)
3164 __attribute__ ((__format__ (__printf__, 2, 0)));
3165 extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
3166 __attribute__ ((__format__ (__printf__, 2, 3)));
3175 extern int fscanf (FILE *__restrict __stream,
3176 __const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
3181 extern int scanf (__const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
3183 extern int sscanf (__const char *__restrict __s,
3184 __const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__));
3185 # 469 "/usr/include/stdio.h" 3 4
3194 extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
3195 __gnuc_va_list __arg)
3196 __attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
3202 extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
3203 __attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
3206 extern int vsscanf (__const char *__restrict __s,
3207 __const char *__restrict __format, __gnuc_va_list __arg)
3208 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__scanf__, 2, 0)));
3209 # 528 "/usr/include/stdio.h" 3 4
3219 extern int fgetc (FILE *__stream);
3220 extern int getc (FILE *__stream);
3226 extern int getchar (void);
3228 # 556 "/usr/include/stdio.h" 3 4
3229 extern int getc_unlocked (FILE *__stream);
3230 extern int getchar_unlocked (void);
3231 # 567 "/usr/include/stdio.h" 3 4
3232 extern int fgetc_unlocked (FILE *__stream);
3244 extern int fputc (int __c, FILE *__stream);
3245 extern int putc (int __c, FILE *__stream);
3251 extern int putchar (int __c);
3253 # 600 "/usr/include/stdio.h" 3 4
3254 extern int fputc_unlocked (int __c, FILE *__stream);
3262 extern int putc_unlocked (int __c, FILE *__stream);
3263 extern int putchar_unlocked (int __c);
3270 extern int getw (FILE *__stream);
3273 extern int putw (int __w, FILE *__stream);
3282 extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
3283 __attribute__ ((__warn_unused_result__));
3290 extern char *gets (char *__s) __attribute__ ((__warn_unused_result__));
3292 # 646 "/usr/include/stdio.h" 3 4
3293 extern char *fgets_unlocked (char *__restrict __s, int __n,
3294 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3295 # 662 "/usr/include/stdio.h" 3 4
3296 extern __ssize_t __getdelim (char **__restrict __lineptr,
3297 size_t *__restrict __n, int __delimiter,
3298 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3299 extern __ssize_t getdelim (char **__restrict __lineptr,
3300 size_t *__restrict __n, int __delimiter,
3301 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3309 extern __ssize_t getline (char **__restrict __lineptr,
3310 size_t *__restrict __n,
3311 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3320 extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
3326 extern int puts (__const char *__s);
3333 extern int ungetc (int __c, FILE *__stream);
3340 extern size_t fread (void *__restrict __ptr, size_t __size,
3341 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3346 extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
3347 size_t __n, FILE *__restrict __s) __attribute__ ((__warn_unused_result__));
3349 # 723 "/usr/include/stdio.h" 3 4
3350 extern int fputs_unlocked (__const char *__restrict __s,
3351 FILE *__restrict __stream);
3352 # 734 "/usr/include/stdio.h" 3 4
3353 extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
3354 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3355 extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
3356 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3365 extern int fseek (FILE *__stream, long int __off, int __whence);
3370 extern long int ftell (FILE *__stream) __attribute__ ((__warn_unused_result__));
3375 extern void rewind (FILE *__stream);
3377 # 778 "/usr/include/stdio.h" 3 4
3378 extern int fseeko (FILE *__stream, __off64_t __off, int __whence) __asm__ ("" "fseeko64")
3381 extern __off64_t ftello (FILE *__stream) __asm__ ("" "ftello64");
3390 # 803 "/usr/include/stdio.h" 3 4
3391 extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos) __asm__ ("" "fgetpos64")
3393 extern int fsetpos (FILE *__stream, __const fpos_t *__pos) __asm__ ("" "fsetpos64")
3403 extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence);
3404 extern __off64_t ftello64 (FILE *__stream) __attribute__ ((__warn_unused_result__));
3405 extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos);
3406 extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos);
3411 extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
3413 extern int feof (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3415 extern int ferror (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3420 extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
3421 extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3422 extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3431 extern void perror (__const char *__s);
3438 # 1 "/usr/include/bits/sys_errlist.h" 1 3 4
3439 # 27 "/usr/include/bits/sys_errlist.h" 3 4
3440 extern int sys_nerr;
3441 extern __const char *__const sys_errlist[];
3444 extern int _sys_nerr;
3445 extern __const char *__const _sys_errlist[];
3446 # 851 "/usr/include/stdio.h" 2 3 4
3451 extern int fileno (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3456 extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3457 # 870 "/usr/include/stdio.h" 3 4
3458 extern FILE *popen (__const char *__command, __const char *__modes) __attribute__ ((__warn_unused_result__));
3464 extern int pclose (FILE *__stream);
3470 extern char *ctermid (char *__s) __attribute__ ((__nothrow__ , __leaf__));
3476 extern char *cuserid (char *__s);
3484 extern int obstack_printf (struct obstack *__restrict __obstack,
3485 __const char *__restrict __format, ...)
3486 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3)));
3487 extern int obstack_vprintf (struct obstack *__restrict __obstack,
3488 __const char *__restrict __format,
3489 __gnuc_va_list __args)
3490 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0)));
3498 extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
3502 extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
3505 extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
3506 # 931 "/usr/include/stdio.h" 3 4
3507 # 1 "/usr/include/bits/stdio.h" 1 3 4
3508 # 44 "/usr/include/bits/stdio.h" 3 4
3512 return _IO_getc (stdin);
3519 fgetc_unlocked (FILE *__fp)
3521 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
3529 getc_unlocked (FILE *__fp)
3531 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
3536 getchar_unlocked (void)
3538 return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++);
3547 return _IO_putc (__c, stdout);
3554 fputc_unlocked (int __c, FILE *__stream)
3556 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
3564 putc_unlocked (int __c, FILE *__stream)
3566 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
3571 putchar_unlocked (int __c)
3573 return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));
3580 extern __inline __ssize_t
3581 getline (char **__lineptr, size_t *__n, FILE *__stream)
3583 return __getdelim (__lineptr, __n, '\n', __stream);
3591 __attribute__ ((__nothrow__ , __leaf__)) feof_unlocked (FILE *__stream)
3593 return (((__stream)->_flags & 0x10) != 0);
3598 __attribute__ ((__nothrow__ , __leaf__)) ferror_unlocked (FILE *__stream)
3600 return (((__stream)->_flags & 0x20) != 0);
3602 # 932 "/usr/include/stdio.h" 2 3 4
3605 # 1 "/usr/include/bits/stdio2.h" 1 3 4
3606 # 24 "/usr/include/bits/stdio2.h" 3 4
3607 extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen,
3608 __const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__));
3609 extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen,
3610 __const char *__restrict __format,
3611 __gnuc_va_list __ap) __attribute__ ((__nothrow__ , __leaf__));
3614 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3615 __attribute__ ((__nothrow__ , __leaf__)) sprintf (char *__restrict __s, __const char *__restrict __fmt, ...)
3617 return __builtin___sprintf_chk (__s, 2 - 1,
3618 __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
3626 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3627 __attribute__ ((__nothrow__ , __leaf__)) vsprintf (char *__restrict __s, __const char *__restrict __fmt, __gnuc_va_list __ap)
3630 return __builtin___vsprintf_chk (__s, 2 - 1,
3631 __builtin_object_size (__s, 2 > 1), __fmt, __ap);
3636 extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
3637 size_t __slen, __const char *__restrict __format,
3638 ...) __attribute__ ((__nothrow__ , __leaf__));
3639 extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
3640 size_t __slen, __const char *__restrict __format,
3641 __gnuc_va_list __ap) __attribute__ ((__nothrow__ , __leaf__));
3644 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3645 __attribute__ ((__nothrow__ , __leaf__)) snprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, ...)
3648 return __builtin___snprintf_chk (__s, __n, 2 - 1,
3649 __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
3657 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3658 __attribute__ ((__nothrow__ , __leaf__)) vsnprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, __gnuc_va_list __ap)
3661 return __builtin___vsnprintf_chk (__s, __n, 2 - 1,
3662 __builtin_object_size (__s, 2 > 1), __fmt, __ap);
3669 extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
3670 __const char *__restrict __format, ...);
3671 extern int __printf_chk (int __flag, __const char *__restrict __format, ...);
3672 extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
3673 __const char *__restrict __format, __gnuc_va_list __ap);
3674 extern int __vprintf_chk (int __flag, __const char *__restrict __format,
3675 __gnuc_va_list __ap);
3678 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3679 fprintf (FILE *__restrict __stream, __const char *__restrict __fmt, ...)
3681 return __fprintf_chk (__stream, 2 - 1, __fmt,
3682 __builtin_va_arg_pack ());
3685 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3686 printf (__const char *__restrict __fmt, ...)
3688 return __printf_chk (2 - 1, __fmt, __builtin_va_arg_pack ());
3697 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3698 vprintf (__const char *__restrict __fmt, __gnuc_va_list __ap)
3701 return __vfprintf_chk (stdout, 2 - 1, __fmt, __ap);
3707 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3708 vfprintf (FILE *__restrict __stream,
3709 __const char *__restrict __fmt, __gnuc_va_list __ap)
3711 return __vfprintf_chk (__stream, 2 - 1, __fmt, __ap);
3716 extern int __asprintf_chk (char **__restrict __ptr, int __flag,
3717 __const char *__restrict __fmt, ...)
3718 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__printf__, 3, 4))) __attribute__ ((__warn_unused_result__));
3719 extern int __vasprintf_chk (char **__restrict __ptr, int __flag,
3720 __const char *__restrict __fmt, __gnuc_va_list __arg)
3721 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__printf__, 3, 0))) __attribute__ ((__warn_unused_result__));
3722 extern int __dprintf_chk (int __fd, int __flag, __const char *__restrict __fmt,
3723 ...) __attribute__ ((__format__ (__printf__, 3, 4)));
3724 extern int __vdprintf_chk (int __fd, int __flag,
3725 __const char *__restrict __fmt, __gnuc_va_list __arg)
3726 __attribute__ ((__format__ (__printf__, 3, 0)));
3727 extern int __obstack_printf_chk (struct obstack *__restrict __obstack,
3728 int __flag, __const char *__restrict __format,
3730 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__printf__, 3, 4)));
3731 extern int __obstack_vprintf_chk (struct obstack *__restrict __obstack,
3733 __const char *__restrict __format,
3734 __gnuc_va_list __args)
3735 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__printf__, 3, 0)));
3738 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3739 __attribute__ ((__nothrow__ , __leaf__)) asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...)
3741 return __asprintf_chk (__ptr, 2 - 1, __fmt,
3742 __builtin_va_arg_pack ());
3745 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3746 __attribute__ ((__nothrow__ , __leaf__)) __asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...)
3749 return __asprintf_chk (__ptr, 2 - 1, __fmt,
3750 __builtin_va_arg_pack ());
3753 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3754 dprintf (int __fd, __const char *__restrict __fmt, ...)
3756 return __dprintf_chk (__fd, 2 - 1, __fmt,
3757 __builtin_va_arg_pack ());
3760 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3761 __attribute__ ((__nothrow__ , __leaf__)) obstack_printf (struct obstack *__restrict __obstack, __const char *__restrict __fmt, ...)
3764 return __obstack_printf_chk (__obstack, 2 - 1, __fmt,
3765 __builtin_va_arg_pack ());
3767 # 195 "/usr/include/bits/stdio2.h" 3 4
3768 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3769 __attribute__ ((__nothrow__ , __leaf__)) vasprintf (char **__restrict __ptr, __const char *__restrict __fmt, __gnuc_va_list __ap)
3772 return __vasprintf_chk (__ptr, 2 - 1, __fmt, __ap);
3775 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3776 vdprintf (int __fd, __const char *__restrict __fmt, __gnuc_va_list __ap)
3778 return __vdprintf_chk (__fd, 2 - 1, __fmt, __ap);
3781 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
3782 __attribute__ ((__nothrow__ , __leaf__)) obstack_vprintf (struct obstack *__restrict __obstack, __const char *__restrict __fmt, __gnuc_va_list __ap)
3785 return __obstack_vprintf_chk (__obstack, 2 - 1, __fmt,
3793 extern char *__gets_chk (char *__str, size_t) __attribute__ ((__warn_unused_result__));
3794 extern char *__gets_warn (char *__str) __asm__ ("" "gets")
3795 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use fgets or getline instead, gets can't " "specify buffer size")))
3798 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
3801 if (__builtin_object_size (__str, 2 > 1) != (size_t) -1)
3802 return __gets_chk (__str, __builtin_object_size (__str, 2 > 1));
3803 return __gets_warn (__str);
3806 extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n,
3807 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3808 extern char *__fgets_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets")
3810 __attribute__ ((__warn_unused_result__));
3811 extern char *__fgets_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_chk")
3814 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets called with bigger size than length " "of destination buffer")))
3817 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
3818 fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
3820 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
3822 if (!__builtin_constant_p (__n) || __n <= 0)
3823 return __fgets_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
3825 if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
3826 return __fgets_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
3828 return __fgets_alias (__s, __n, __stream);
3831 extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen,
3832 size_t __size, size_t __n,
3833 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3834 extern size_t __fread_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread")
3837 __attribute__ ((__warn_unused_result__));
3838 extern size_t __fread_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_chk")
3843 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread called with bigger size * nmemb than length " "of destination buffer")))
3846 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) size_t
3847 fread (void *__restrict __ptr, size_t __size, size_t __n,
3848 FILE *__restrict __stream)
3850 if (__builtin_object_size (__ptr, 0) != (size_t) -1)
3852 if (!__builtin_constant_p (__size)
3853 || !__builtin_constant_p (__n)
3854 || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
3855 return __fread_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
3857 if (__size * __n > __builtin_object_size (__ptr, 0))
3858 return __fread_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
3860 return __fread_alias (__ptr, __size, __n, __stream);
3864 extern char *__fgets_unlocked_chk (char *__restrict __s, size_t __size,
3865 int __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3866 extern char *__fgets_unlocked_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets_unlocked")
3868 __attribute__ ((__warn_unused_result__));
3869 extern char *__fgets_unlocked_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_unlocked_chk")
3872 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets_unlocked called with bigger size than length " "of destination buffer")))
3875 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
3876 fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream)
3878 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
3880 if (!__builtin_constant_p (__n) || __n <= 0)
3881 return __fgets_unlocked_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
3883 if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
3884 return __fgets_unlocked_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
3886 return __fgets_unlocked_alias (__s, __n, __stream);
3892 extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen,
3893 size_t __size, size_t __n,
3894 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
3895 extern size_t __fread_unlocked_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread_unlocked")
3898 __attribute__ ((__warn_unused_result__));
3899 extern size_t __fread_unlocked_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_unlocked_chk")
3904 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread_unlocked called with bigger size * nmemb than " "length of destination buffer")))
3907 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) size_t
3908 fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n,
3909 FILE *__restrict __stream)
3911 if (__builtin_object_size (__ptr, 0) != (size_t) -1)
3913 if (!__builtin_constant_p (__size)
3914 || !__builtin_constant_p (__n)
3915 || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
3916 return __fread_unlocked_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
3919 if (__size * __n > __builtin_object_size (__ptr, 0))
3920 return __fread_unlocked_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
3925 if (__builtin_constant_p (__size)
3926 && __builtin_constant_p (__n)
3927 && (__size | __n) < (((size_t) 1) << (8 * sizeof (size_t) / 2))
3928 && __size * __n <= 8)
3930 size_t __cnt = __size * __n;
3931 char *__cptr = (char *) __ptr;
3935 for (; __cnt > 0; --__cnt)
3937 int __c = (__builtin_expect (((__stream)->_IO_read_ptr >= (__stream)->_IO_read_end), 0) ? __uflow (__stream) : *(unsigned char *) (__stream)->_IO_read_ptr++);
3942 return (__cptr - (char *) __ptr) / __size;
3945 return __fread_unlocked_alias (__ptr, __size, __n, __stream);
3947 # 935 "/usr/include/stdio.h" 2 3 4
3954 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
3955 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stdarg.h" 1 3 4
3956 # 25 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
3957 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stdbool.h" 1 3 4
3958 # 26 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
3959 # 1 "/usr/include/string.h" 1 3 4
3960 # 29 "/usr/include/string.h" 3 4
3966 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
3967 # 35 "/usr/include/string.h" 2 3 4
3977 extern void *memcpy (void *__restrict __dest,
3978 __const void *__restrict __src, size_t __n)
3979 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
3982 extern void *memmove (void *__dest, __const void *__src, size_t __n)
3983 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
3990 extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
3991 int __c, size_t __n)
3992 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
3998 extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
4001 extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
4002 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4003 # 95 "/usr/include/string.h" 3 4
4004 extern void *memchr (__const void *__s, int __c, size_t __n)
4005 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4008 # 109 "/usr/include/string.h" 3 4
4009 extern void *rawmemchr (__const void *__s, int __c)
4010 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4011 # 120 "/usr/include/string.h" 3 4
4012 extern void *memrchr (__const void *__s, int __c, size_t __n)
4013 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4020 extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
4021 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4023 extern char *strncpy (char *__restrict __dest,
4024 __const char *__restrict __src, size_t __n)
4025 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4028 extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
4029 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4031 extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
4032 size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4035 extern int strcmp (__const char *__s1, __const char *__s2)
4036 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4038 extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
4039 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4042 extern int strcoll (__const char *__s1, __const char *__s2)
4043 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4045 extern size_t strxfrm (char *__restrict __dest,
4046 __const char *__restrict __src, size_t __n)
4047 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
4049 # 165 "/usr/include/string.h" 3 4
4050 extern int strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l)
4051 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
4053 extern size_t strxfrm_l (char *__dest, __const char *__src, size_t __n,
4054 __locale_t __l) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 4)));
4060 extern char *strdup (__const char *__s)
4061 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
4068 extern char *strndup (__const char *__string, size_t __n)
4069 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
4070 # 210 "/usr/include/string.h" 3 4
4072 # 235 "/usr/include/string.h" 3 4
4073 extern char *strchr (__const char *__s, int __c)
4074 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4075 # 262 "/usr/include/string.h" 3 4
4076 extern char *strrchr (__const char *__s, int __c)
4077 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4080 # 276 "/usr/include/string.h" 3 4
4081 extern char *strchrnul (__const char *__s, int __c)
4082 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4089 extern size_t strcspn (__const char *__s, __const char *__reject)
4090 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4093 extern size_t strspn (__const char *__s, __const char *__accept)
4094 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4095 # 314 "/usr/include/string.h" 3 4
4096 extern char *strpbrk (__const char *__s, __const char *__accept)
4097 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4098 # 342 "/usr/include/string.h" 3 4
4099 extern char *strstr (__const char *__haystack, __const char *__needle)
4100 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4105 extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
4106 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
4111 extern char *__strtok_r (char *__restrict __s,
4112 __const char *__restrict __delim,
4113 char **__restrict __save_ptr)
4114 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
4116 extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
4117 char **__restrict __save_ptr)
4118 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
4119 # 373 "/usr/include/string.h" 3 4
4120 extern char *strcasestr (__const char *__haystack, __const char *__needle)
4121 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4129 extern void *memmem (__const void *__haystack, size_t __haystacklen,
4130 __const void *__needle, size_t __needlelen)
4131 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 3)));
4135 extern void *__mempcpy (void *__restrict __dest,
4136 __const void *__restrict __src, size_t __n)
4137 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4138 extern void *mempcpy (void *__restrict __dest,
4139 __const void *__restrict __src, size_t __n)
4140 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4146 extern size_t strlen (__const char *__s)
4147 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4153 extern size_t strnlen (__const char *__string, size_t __maxlen)
4154 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4160 extern char *strerror (int __errnum) __attribute__ ((__nothrow__ , __leaf__));
4162 # 438 "/usr/include/string.h" 3 4
4163 extern char *strerror_r (int __errnum, char *__buf, size_t __buflen)
4164 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
4170 extern char *strerror_l (int __errnum, __locale_t __l) __attribute__ ((__nothrow__ , __leaf__));
4176 extern void __bzero (void *__s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
4180 extern void bcopy (__const void *__src, void *__dest, size_t __n)
4181 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4184 extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
4187 extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
4188 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4189 # 489 "/usr/include/string.h" 3 4
4190 extern char *index (__const char *__s, int __c)
4191 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4192 # 517 "/usr/include/string.h" 3 4
4193 extern char *rindex (__const char *__s, int __c)
4194 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
4199 extern int ffs (int __i) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
4204 extern int ffsl (long int __l) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
4206 __extension__ extern int ffsll (long long int __ll)
4207 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
4212 extern int strcasecmp (__const char *__s1, __const char *__s2)
4213 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4216 extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
4217 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4223 extern int strcasecmp_l (__const char *__s1, __const char *__s2,
4225 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
4227 extern int strncasecmp_l (__const char *__s1, __const char *__s2,
4228 size_t __n, __locale_t __loc)
4229 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 4)));
4235 extern char *strsep (char **__restrict __stringp,
4236 __const char *__restrict __delim)
4237 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4242 extern char *strsignal (int __sig) __attribute__ ((__nothrow__ , __leaf__));
4245 extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)
4246 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4247 extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)
4248 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4252 extern char *__stpncpy (char *__restrict __dest,
4253 __const char *__restrict __src, size_t __n)
4254 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4255 extern char *stpncpy (char *__restrict __dest,
4256 __const char *__restrict __src, size_t __n)
4257 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
4262 extern int strverscmp (__const char *__s1, __const char *__s2)
4263 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
4266 extern char *strfry (char *__string) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
4269 extern void *memfrob (void *__s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
4270 # 606 "/usr/include/string.h" 3 4
4271 extern char *basename (__const char *__filename) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
4272 # 634 "/usr/include/string.h" 3 4
4273 # 1 "/usr/include/bits/string.h" 1 3 4
4274 # 635 "/usr/include/string.h" 2 3 4
4277 # 1 "/usr/include/bits/string2.h" 1 3 4
4278 # 394 "/usr/include/bits/string2.h" 3 4
4279 extern void *__rawmemchr (const void *__s, int __c);
4280 # 969 "/usr/include/bits/string2.h" 3 4
4281 extern __inline size_t __strcspn_c1 (__const char *__s, int __reject);
4282 extern __inline size_t
4283 __strcspn_c1 (__const char *__s, int __reject)
4285 register size_t __result = 0;
4286 while (__s[__result] != '\0' && __s[__result] != __reject)
4291 extern __inline size_t __strcspn_c2 (__const char *__s, int __reject1,
4293 extern __inline size_t
4294 __strcspn_c2 (__const char *__s, int __reject1, int __reject2)
4296 register size_t __result = 0;
4297 while (__s[__result] != '\0' && __s[__result] != __reject1
4298 && __s[__result] != __reject2)
4303 extern __inline size_t __strcspn_c3 (__const char *__s, int __reject1,
4304 int __reject2, int __reject3);
4305 extern __inline size_t
4306 __strcspn_c3 (__const char *__s, int __reject1, int __reject2,
4309 register size_t __result = 0;
4310 while (__s[__result] != '\0' && __s[__result] != __reject1
4311 && __s[__result] != __reject2 && __s[__result] != __reject3)
4315 # 1045 "/usr/include/bits/string2.h" 3 4
4316 extern __inline size_t __strspn_c1 (__const char *__s, int __accept);
4317 extern __inline size_t
4318 __strspn_c1 (__const char *__s, int __accept)
4320 register size_t __result = 0;
4322 while (__s[__result] == __accept)
4327 extern __inline size_t __strspn_c2 (__const char *__s, int __accept1,
4329 extern __inline size_t
4330 __strspn_c2 (__const char *__s, int __accept1, int __accept2)
4332 register size_t __result = 0;
4334 while (__s[__result] == __accept1 || __s[__result] == __accept2)
4339 extern __inline size_t __strspn_c3 (__const char *__s, int __accept1,
4340 int __accept2, int __accept3);
4341 extern __inline size_t
4342 __strspn_c3 (__const char *__s, int __accept1, int __accept2, int __accept3)
4344 register size_t __result = 0;
4346 while (__s[__result] == __accept1 || __s[__result] == __accept2
4347 || __s[__result] == __accept3)
4351 # 1121 "/usr/include/bits/string2.h" 3 4
4352 extern __inline char *__strpbrk_c2 (__const char *__s, int __accept1,
4354 extern __inline char *
4355 __strpbrk_c2 (__const char *__s, int __accept1, int __accept2)
4358 while (*__s != '\0' && *__s != __accept1 && *__s != __accept2)
4360 return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;
4363 extern __inline char *__strpbrk_c3 (__const char *__s, int __accept1,
4364 int __accept2, int __accept3);
4365 extern __inline char *
4366 __strpbrk_c3 (__const char *__s, int __accept1, int __accept2,
4370 while (*__s != '\0' && *__s != __accept1 && *__s != __accept2
4371 && *__s != __accept3)
4373 return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;
4375 # 1172 "/usr/include/bits/string2.h" 3 4
4376 extern __inline char *__strtok_r_1c (char *__s, char __sep, char **__nextp);
4377 extern __inline char *
4378 __strtok_r_1c (char *__s, char __sep, char **__nextp)
4381 if (__s == ((void *)0))
4383 while (*__s == __sep)
4385 __result = ((void *)0);
4389 while (*__s != '\0')
4390 if (*__s++ == __sep)
4399 # 1204 "/usr/include/bits/string2.h" 3 4
4400 extern char *__strsep_g (char **__stringp, __const char *__delim);
4401 # 1222 "/usr/include/bits/string2.h" 3 4
4402 extern __inline char *__strsep_1c (char **__s, char __reject);
4403 extern __inline char *
4404 __strsep_1c (char **__s, char __reject)
4406 register char *__retval = *__s;
4407 if (__retval != ((void *)0) && (*__s = (__extension__ (__builtin_constant_p (__reject) && !__builtin_constant_p (__retval) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : __builtin_strchr (__retval, __reject)))) != ((void *)0))
4412 extern __inline char *__strsep_2c (char **__s, char __reject1, char __reject2);
4413 extern __inline char *
4414 __strsep_2c (char **__s, char __reject1, char __reject2)
4416 register char *__retval = *__s;
4417 if (__retval != ((void *)0))
4419 register char *__cp = __retval;
4427 if (*__cp == __reject1 || *__cp == __reject2)
4439 extern __inline char *__strsep_3c (char **__s, char __reject1, char __reject2,
4441 extern __inline char *
4442 __strsep_3c (char **__s, char __reject1, char __reject2, char __reject3)
4444 register char *__retval = *__s;
4445 if (__retval != ((void *)0))
4447 register char *__cp = __retval;
4455 if (*__cp == __reject1 || *__cp == __reject2 || *__cp == __reject3)
4466 # 1303 "/usr/include/bits/string2.h" 3 4
4467 extern char *__strdup (__const char *__string) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__));
4468 # 1322 "/usr/include/bits/string2.h" 3 4
4469 extern char *__strndup (__const char *__string, size_t __n)
4470 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__));
4471 # 638 "/usr/include/string.h" 2 3 4
4476 # 1 "/usr/include/bits/string3.h" 1 3 4
4477 # 23 "/usr/include/bits/string3.h" 3 4
4478 extern void __warn_memset_zero_len (void) __attribute__((__warning__ ("memset used with constant zero length parameter; this could be due to transposed parameters")))
4480 # 48 "/usr/include/bits/string3.h" 3 4
4481 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
4482 __attribute__ ((__nothrow__ , __leaf__)) memcpy (void *__restrict __dest, __const void *__restrict __src, size_t __len)
4485 return __builtin___memcpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
4488 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
4489 __attribute__ ((__nothrow__ , __leaf__)) memmove (void *__dest, __const void *__src, size_t __len)
4491 return __builtin___memmove_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
4495 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
4496 __attribute__ ((__nothrow__ , __leaf__)) mempcpy (void *__restrict __dest, __const void *__restrict __src, size_t __len)
4499 return __builtin___mempcpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
4501 # 76 "/usr/include/bits/string3.h" 3 4
4502 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void *
4503 __attribute__ ((__nothrow__ , __leaf__)) memset (void *__dest, int __ch, size_t __len)
4505 if (__builtin_constant_p (__len) && __len == 0
4506 && (!__builtin_constant_p (__ch) || __ch != 0))
4508 __warn_memset_zero_len ();
4511 return __builtin___memset_chk (__dest, __ch, __len, __builtin_object_size (__dest, 0));
4515 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void
4516 __attribute__ ((__nothrow__ , __leaf__)) bcopy (__const void *__src, void *__dest, size_t __len)
4518 (void) __builtin___memmove_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
4521 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) void
4522 __attribute__ ((__nothrow__ , __leaf__)) bzero (void *__dest, size_t __len)
4524 (void) __builtin___memset_chk (__dest, '\0', __len, __builtin_object_size (__dest, 0));
4528 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
4529 __attribute__ ((__nothrow__ , __leaf__)) strcpy (char *__restrict __dest, __const char *__restrict __src)
4531 return __builtin___strcpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
4535 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
4536 __attribute__ ((__nothrow__ , __leaf__)) stpcpy (char *__restrict __dest, __const char *__restrict __src)
4538 return __builtin___stpcpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
4543 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
4544 __attribute__ ((__nothrow__ , __leaf__)) strncpy (char *__restrict __dest, __const char *__restrict __src, size_t __len)
4547 return __builtin___strncpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 2 > 1));
4551 extern char *__stpncpy_chk (char *__dest, __const char *__src, size_t __n,
4552 size_t __destlen) __attribute__ ((__nothrow__ , __leaf__));
4553 extern char *__stpncpy_alias (char *__dest, __const char *__src, size_t __n) __asm__ ("" "stpncpy") __attribute__ ((__nothrow__ , __leaf__))
4557 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
4558 __attribute__ ((__nothrow__ , __leaf__)) stpncpy (char *__dest, __const char *__src, size_t __n)
4560 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1
4561 && (!__builtin_constant_p (__n) || __n <= __builtin_object_size (__dest, 2 > 1)))
4562 return __stpncpy_chk (__dest, __src, __n, __builtin_object_size (__dest, 2 > 1));
4563 return __stpncpy_alias (__dest, __src, __n);
4567 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
4568 __attribute__ ((__nothrow__ , __leaf__)) strcat (char *__restrict __dest, __const char *__restrict __src)
4570 return __builtin___strcat_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
4574 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) char *
4575 __attribute__ ((__nothrow__ , __leaf__)) strncat (char *__restrict __dest, __const char *__restrict __src, size_t __len)
4578 return __builtin___strncat_chk (__dest, __src, __len, __builtin_object_size (__dest, 2 > 1));
4580 # 643 "/usr/include/string.h" 2 3 4
4585 # 27 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
4586 # 1 "/usr/include/strings.h" 1 3 4
4587 # 28 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
4588 # 1 "/usr/include/inttypes.h" 1 3 4
4589 # 28 "/usr/include/inttypes.h" 3 4
4590 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stdint.h" 1 3 4
4593 # 1 "/usr/include/stdint.h" 1 3 4
4594 # 27 "/usr/include/stdint.h" 3 4
4595 # 1 "/usr/include/bits/wchar.h" 1 3 4
4596 # 28 "/usr/include/stdint.h" 2 3 4
4597 # 1 "/usr/include/bits/wordsize.h" 1 3 4
4598 # 29 "/usr/include/stdint.h" 2 3 4
4599 # 49 "/usr/include/stdint.h" 3 4
4600 typedef unsigned char uint8_t;
4601 typedef unsigned short int uint16_t;
4603 typedef unsigned int uint32_t;
4610 typedef unsigned long long int uint64_t;
4617 typedef signed char int_least8_t;
4618 typedef short int int_least16_t;
4619 typedef int int_least32_t;
4624 typedef long long int int_least64_t;
4628 typedef unsigned char uint_least8_t;
4629 typedef unsigned short int uint_least16_t;
4630 typedef unsigned int uint_least32_t;
4635 typedef unsigned long long int uint_least64_t;
4642 typedef signed char int_fast8_t;
4648 typedef int int_fast16_t;
4649 typedef int int_fast32_t;
4651 typedef long long int int_fast64_t;
4655 typedef unsigned char uint_fast8_t;
4661 typedef unsigned int uint_fast16_t;
4662 typedef unsigned int uint_fast32_t;
4664 typedef unsigned long long int uint_fast64_t;
4665 # 126 "/usr/include/stdint.h" 3 4
4666 typedef int intptr_t;
4669 typedef unsigned int uintptr_t;
4670 # 138 "/usr/include/stdint.h" 3 4
4672 typedef long long int intmax_t;
4674 typedef unsigned long long int uintmax_t;
4675 # 4 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stdint.h" 2 3 4
4676 # 29 "/usr/include/inttypes.h" 2 3 4
4683 typedef int __gwchar_t;
4684 # 274 "/usr/include/inttypes.h" 3 4
4686 # 288 "/usr/include/inttypes.h" 3 4
4697 extern intmax_t imaxabs (intmax_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
4700 extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom)
4701 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
4704 extern intmax_t strtoimax (__const char *__restrict __nptr,
4705 char **__restrict __endptr, int __base) __attribute__ ((__nothrow__ , __leaf__));
4708 extern uintmax_t strtoumax (__const char *__restrict __nptr,
4709 char ** __restrict __endptr, int __base) __attribute__ ((__nothrow__ , __leaf__));
4712 extern intmax_t wcstoimax (__const __gwchar_t *__restrict __nptr,
4713 __gwchar_t **__restrict __endptr, int __base)
4714 __attribute__ ((__nothrow__ , __leaf__));
4717 extern uintmax_t wcstoumax (__const __gwchar_t *__restrict __nptr,
4718 __gwchar_t ** __restrict __endptr, int __base)
4719 __attribute__ ((__nothrow__ , __leaf__));
4720 # 379 "/usr/include/inttypes.h" 3 4
4722 extern long long int __strtoll_internal (__const char *__restrict __nptr,
4723 char **__restrict __endptr,
4724 int __base, int __group)
4725 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
4727 extern __inline intmax_t
4728 __attribute__ ((__nothrow__ , __leaf__)) strtoimax (__const char *__restrict nptr, char **__restrict endptr, int base)
4731 return __strtoll_internal (nptr, endptr, base, 0);
4735 extern unsigned long long int __strtoull_internal (__const char *
4738 __restrict __endptr,
4741 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
4743 extern __inline uintmax_t
4744 __attribute__ ((__nothrow__ , __leaf__)) strtoumax (__const char *__restrict nptr, char **__restrict endptr, int base)
4747 return __strtoull_internal (nptr, endptr, base, 0);
4751 extern long long int __wcstoll_internal (__const __gwchar_t *
4753 __gwchar_t **__restrict __endptr,
4754 int __base, int __group)
4755 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
4757 extern __inline intmax_t
4758 __attribute__ ((__nothrow__ , __leaf__)) wcstoimax (__const __gwchar_t *__restrict nptr, __gwchar_t **__restrict endptr, int base)
4761 return __wcstoll_internal (nptr, endptr, base, 0);
4766 extern unsigned long long int __wcstoull_internal (__const __gwchar_t *
4769 __restrict __endptr,
4772 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
4774 extern __inline uintmax_t
4775 __attribute__ ((__nothrow__ , __leaf__)) wcstoumax (__const __gwchar_t *__restrict nptr, __gwchar_t **__restrict endptr, int base)
4778 return __wcstoull_internal (nptr, endptr, base, 0);
4785 # 29 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
4786 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 1 3 4
4787 # 34 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 3 4
4788 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/syslimits.h" 1 3 4
4795 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 1 3 4
4796 # 169 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 3 4
4797 # 1 "/usr/include/limits.h" 1 3 4
4798 # 145 "/usr/include/limits.h" 3 4
4799 # 1 "/usr/include/bits/posix1_lim.h" 1 3 4
4800 # 157 "/usr/include/bits/posix1_lim.h" 3 4
4801 # 1 "/usr/include/bits/local_lim.h" 1 3 4
4802 # 39 "/usr/include/bits/local_lim.h" 3 4
4803 # 1 "/usr/include/linux/limits.h" 1 3 4
4804 # 40 "/usr/include/bits/local_lim.h" 2 3 4
4805 # 158 "/usr/include/bits/posix1_lim.h" 2 3 4
4806 # 146 "/usr/include/limits.h" 2 3 4
4810 # 1 "/usr/include/bits/posix2_lim.h" 1 3 4
4811 # 150 "/usr/include/limits.h" 2 3 4
4815 # 1 "/usr/include/bits/xopen_lim.h" 1 3 4
4816 # 34 "/usr/include/bits/xopen_lim.h" 3 4
4817 # 1 "/usr/include/bits/stdio_lim.h" 1 3 4
4818 # 35 "/usr/include/bits/xopen_lim.h" 2 3 4
4819 # 154 "/usr/include/limits.h" 2 3 4
4820 # 170 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 2 3 4
4821 # 8 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/syslimits.h" 2 3 4
4822 # 35 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 2 3 4
4823 # 30 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
4824 # 1 "/usr/include/time.h" 1 3 4
4825 # 30 "/usr/include/time.h" 3 4
4834 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
4835 # 39 "/usr/include/time.h" 2 3 4
4839 # 1 "/usr/include/bits/time.h" 1 3 4
4840 # 86 "/usr/include/bits/time.h" 3 4
4841 # 1 "/usr/include/bits/timex.h" 1 3 4
4842 # 24 "/usr/include/bits/timex.h" 3 4
4854 struct timeval time;
4869 int :32; int :32; int :32; int :32;
4870 int :32; int :32; int :32; int :32;
4871 int :32; int :32; int :32;
4873 # 87 "/usr/include/bits/time.h" 2 3 4
4878 extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) __attribute__ ((__nothrow__ , __leaf__));
4881 # 43 "/usr/include/time.h" 2 3 4
4882 # 131 "/usr/include/time.h" 3 4
4899 __const char *tm_zone;
4915 struct timespec it_interval;
4916 struct timespec it_value;
4921 # 180 "/usr/include/time.h" 3 4
4925 extern clock_t clock (void) __attribute__ ((__nothrow__ , __leaf__));
4928 extern time_t time (time_t *__timer) __attribute__ ((__nothrow__ , __leaf__));
4931 extern double difftime (time_t __time1, time_t __time0)
4932 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
4935 extern time_t mktime (struct tm *__tp) __attribute__ ((__nothrow__ , __leaf__));
4941 extern size_t strftime (char *__restrict __s, size_t __maxsize,
4942 __const char *__restrict __format,
4943 __const struct tm *__restrict __tp) __attribute__ ((__nothrow__ , __leaf__));
4949 extern char *strptime (__const char *__restrict __s,
4950 __const char *__restrict __fmt, struct tm *__tp)
4951 __attribute__ ((__nothrow__ , __leaf__));
4959 extern size_t strftime_l (char *__restrict __s, size_t __maxsize,
4960 __const char *__restrict __format,
4961 __const struct tm *__restrict __tp,
4962 __locale_t __loc) __attribute__ ((__nothrow__ , __leaf__));
4966 extern char *strptime_l (__const char *__restrict __s,
4967 __const char *__restrict __fmt, struct tm *__tp,
4968 __locale_t __loc) __attribute__ ((__nothrow__ , __leaf__));
4975 extern struct tm *gmtime (__const time_t *__timer) __attribute__ ((__nothrow__ , __leaf__));
4979 extern struct tm *localtime (__const time_t *__timer) __attribute__ ((__nothrow__ , __leaf__));
4985 extern struct tm *gmtime_r (__const time_t *__restrict __timer,
4986 struct tm *__restrict __tp) __attribute__ ((__nothrow__ , __leaf__));
4990 extern struct tm *localtime_r (__const time_t *__restrict __timer,
4991 struct tm *__restrict __tp) __attribute__ ((__nothrow__ , __leaf__));
4997 extern char *asctime (__const struct tm *__tp) __attribute__ ((__nothrow__ , __leaf__));
5000 extern char *ctime (__const time_t *__timer) __attribute__ ((__nothrow__ , __leaf__));
5008 extern char *asctime_r (__const struct tm *__restrict __tp,
5009 char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__));
5012 extern char *ctime_r (__const time_t *__restrict __timer,
5013 char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__));
5018 extern char *__tzname[2];
5019 extern int __daylight;
5020 extern long int __timezone;
5025 extern char *tzname[2];
5029 extern void tzset (void) __attribute__ ((__nothrow__ , __leaf__));
5033 extern int daylight;
5034 extern long int timezone;
5040 extern int stime (__const time_t *__when) __attribute__ ((__nothrow__ , __leaf__));
5041 # 313 "/usr/include/time.h" 3 4
5042 extern time_t timegm (struct tm *__tp) __attribute__ ((__nothrow__ , __leaf__));
5045 extern time_t timelocal (struct tm *__tp) __attribute__ ((__nothrow__ , __leaf__));
5048 extern int dysize (int __year) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
5049 # 328 "/usr/include/time.h" 3 4
5050 extern int nanosleep (__const struct timespec *__requested_time,
5051 struct timespec *__remaining);
5055 extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __attribute__ ((__nothrow__ , __leaf__));
5058 extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) __attribute__ ((__nothrow__ , __leaf__));
5061 extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)
5062 __attribute__ ((__nothrow__ , __leaf__));
5069 extern int clock_nanosleep (clockid_t __clock_id, int __flags,
5070 __const struct timespec *__req,
5071 struct timespec *__rem);
5074 extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __attribute__ ((__nothrow__ , __leaf__));
5079 extern int timer_create (clockid_t __clock_id,
5080 struct sigevent *__restrict __evp,
5081 timer_t *__restrict __timerid) __attribute__ ((__nothrow__ , __leaf__));
5084 extern int timer_delete (timer_t __timerid) __attribute__ ((__nothrow__ , __leaf__));
5087 extern int timer_settime (timer_t __timerid, int __flags,
5088 __const struct itimerspec *__restrict __value,
5089 struct itimerspec *__restrict __ovalue) __attribute__ ((__nothrow__ , __leaf__));
5092 extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)
5093 __attribute__ ((__nothrow__ , __leaf__));
5096 extern int timer_getoverrun (timer_t __timerid) __attribute__ ((__nothrow__ , __leaf__));
5097 # 390 "/usr/include/time.h" 3 4
5098 extern int getdate_err;
5099 # 399 "/usr/include/time.h" 3 4
5100 extern struct tm *getdate (__const char *__string);
5101 # 413 "/usr/include/time.h" 3 4
5102 extern int getdate_r (__const char *__restrict __string,
5103 struct tm *__restrict __resbufp);
5107 # 31 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
5108 # 1 "/usr/include/ctype.h" 1 3 4
5109 # 30 "/usr/include/ctype.h" 3 4
5111 # 48 "/usr/include/ctype.h" 3 4
5114 _ISupper = ((0) < 8 ? ((1 << (0)) << 8) : ((1 << (0)) >> 8)),
5115 _ISlower = ((1) < 8 ? ((1 << (1)) << 8) : ((1 << (1)) >> 8)),
5116 _ISalpha = ((2) < 8 ? ((1 << (2)) << 8) : ((1 << (2)) >> 8)),
5117 _ISdigit = ((3) < 8 ? ((1 << (3)) << 8) : ((1 << (3)) >> 8)),
5118 _ISxdigit = ((4) < 8 ? ((1 << (4)) << 8) : ((1 << (4)) >> 8)),
5119 _ISspace = ((5) < 8 ? ((1 << (5)) << 8) : ((1 << (5)) >> 8)),
5120 _ISprint = ((6) < 8 ? ((1 << (6)) << 8) : ((1 << (6)) >> 8)),
5121 _ISgraph = ((7) < 8 ? ((1 << (7)) << 8) : ((1 << (7)) >> 8)),
5122 _ISblank = ((8) < 8 ? ((1 << (8)) << 8) : ((1 << (8)) >> 8)),
5123 _IScntrl = ((9) < 8 ? ((1 << (9)) << 8) : ((1 << (9)) >> 8)),
5124 _ISpunct = ((10) < 8 ? ((1 << (10)) << 8) : ((1 << (10)) >> 8)),
5125 _ISalnum = ((11) < 8 ? ((1 << (11)) << 8) : ((1 << (11)) >> 8))
5127 # 81 "/usr/include/ctype.h" 3 4
5128 extern __const unsigned short int **__ctype_b_loc (void)
5129 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const));
5130 extern __const __int32_t **__ctype_tolower_loc (void)
5131 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const));
5132 extern __const __int32_t **__ctype_toupper_loc (void)
5133 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const));
5134 # 106 "/usr/include/ctype.h" 3 4
5141 extern int isalnum (int) __attribute__ ((__nothrow__ , __leaf__));
5142 extern int isalpha (int) __attribute__ ((__nothrow__ , __leaf__));
5143 extern int iscntrl (int) __attribute__ ((__nothrow__ , __leaf__));
5144 extern int isdigit (int) __attribute__ ((__nothrow__ , __leaf__));
5145 extern int islower (int) __attribute__ ((__nothrow__ , __leaf__));
5146 extern int isgraph (int) __attribute__ ((__nothrow__ , __leaf__));
5147 extern int isprint (int) __attribute__ ((__nothrow__ , __leaf__));
5148 extern int ispunct (int) __attribute__ ((__nothrow__ , __leaf__));
5149 extern int isspace (int) __attribute__ ((__nothrow__ , __leaf__));
5150 extern int isupper (int) __attribute__ ((__nothrow__ , __leaf__));
5151 extern int isxdigit (int) __attribute__ ((__nothrow__ , __leaf__));
5155 extern int tolower (int __c) __attribute__ ((__nothrow__ , __leaf__));
5158 extern int toupper (int __c) __attribute__ ((__nothrow__ , __leaf__));
5167 extern int isblank (int) __attribute__ ((__nothrow__ , __leaf__));
5174 extern int isctype (int __c, int __mask) __attribute__ ((__nothrow__ , __leaf__));
5181 extern int isascii (int __c) __attribute__ ((__nothrow__ , __leaf__));
5185 extern int toascii (int __c) __attribute__ ((__nothrow__ , __leaf__));
5189 extern int _toupper (int) __attribute__ ((__nothrow__ , __leaf__));
5190 extern int _tolower (int) __attribute__ ((__nothrow__ , __leaf__));
5191 # 216 "/usr/include/ctype.h" 3 4
5193 __attribute__ ((__nothrow__ , __leaf__)) tolower (int __c)
5195 return __c >= -128 && __c < 256 ? (*__ctype_tolower_loc ())[__c] : __c;
5199 __attribute__ ((__nothrow__ , __leaf__)) toupper (int __c)
5201 return __c >= -128 && __c < 256 ? (*__ctype_toupper_loc ())[__c] : __c;
5203 # 273 "/usr/include/ctype.h" 3 4
5204 extern int isalnum_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5205 extern int isalpha_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5206 extern int iscntrl_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5207 extern int isdigit_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5208 extern int islower_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5209 extern int isgraph_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5210 extern int isprint_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5211 extern int ispunct_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5212 extern int isspace_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5213 extern int isupper_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5214 extern int isxdigit_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5216 extern int isblank_l (int, __locale_t) __attribute__ ((__nothrow__ , __leaf__));
5220 extern int __tolower_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ , __leaf__));
5221 extern int tolower_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ , __leaf__));
5224 extern int __toupper_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ , __leaf__));
5225 extern int toupper_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ , __leaf__));
5226 # 349 "/usr/include/ctype.h" 3 4
5228 # 32 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
5229 # 1 "/usr/include/errno.h" 1 3 4
5230 # 32 "/usr/include/errno.h" 3 4
5235 # 1 "/usr/include/bits/errno.h" 1 3 4
5236 # 25 "/usr/include/bits/errno.h" 3 4
5237 # 1 "/usr/include/linux/errno.h" 1 3 4
5241 # 1 "/usr/include/asm/errno.h" 1 3 4
5242 # 1 "/usr/include/asm-generic/errno.h" 1 3 4
5246 # 1 "/usr/include/asm-generic/errno-base.h" 1 3 4
5247 # 5 "/usr/include/asm-generic/errno.h" 2 3 4
5248 # 1 "/usr/include/asm/errno.h" 2 3 4
5249 # 5 "/usr/include/linux/errno.h" 2 3 4
5250 # 26 "/usr/include/bits/errno.h" 2 3 4
5251 # 47 "/usr/include/bits/errno.h" 3 4
5252 extern int *__errno_location (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
5253 # 37 "/usr/include/errno.h" 2 3 4
5254 # 55 "/usr/include/errno.h" 3 4
5255 extern char *program_invocation_name, *program_invocation_short_name;
5260 # 69 "/usr/include/errno.h" 3 4
5261 typedef int error_t;
5262 # 33 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
5263 # 1 "/usr/include/unistd.h" 1 3 4
5264 # 28 "/usr/include/unistd.h" 3 4
5266 # 203 "/usr/include/unistd.h" 3 4
5267 # 1 "/usr/include/bits/posix_opt.h" 1 3 4
5268 # 204 "/usr/include/unistd.h" 2 3 4
5272 # 1 "/usr/include/bits/environments.h" 1 3 4
5273 # 208 "/usr/include/unistd.h" 2 3 4
5274 # 227 "/usr/include/unistd.h" 3 4
5275 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
5276 # 228 "/usr/include/unistd.h" 2 3 4
5277 # 275 "/usr/include/unistd.h" 3 4
5278 typedef __socklen_t socklen_t;
5279 # 288 "/usr/include/unistd.h" 3 4
5280 extern int access (__const char *__name, int __type) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
5285 extern int euidaccess (__const char *__name, int __type)
5286 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
5289 extern int eaccess (__const char *__name, int __type)
5290 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
5297 extern int faccessat (int __fd, __const char *__file, int __type, int __flag)
5298 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
5299 # 338 "/usr/include/unistd.h" 3 4
5300 extern __off64_t lseek (int __fd, __off64_t __offset, int __whence) __asm__ ("" "lseek64") __attribute__ ((__nothrow__ , __leaf__))
5308 extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence)
5309 __attribute__ ((__nothrow__ , __leaf__));
5316 extern int close (int __fd);
5323 extern ssize_t read (int __fd, void *__buf, size_t __nbytes) __attribute__ ((__warn_unused_result__));
5329 extern ssize_t write (int __fd, __const void *__buf, size_t __n) __attribute__ ((__warn_unused_result__));
5330 # 389 "/usr/include/unistd.h" 3 4
5331 extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pread64")
5333 __attribute__ ((__warn_unused_result__));
5334 extern ssize_t pwrite (int __fd, __const void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pwrite64")
5336 __attribute__ ((__warn_unused_result__));
5337 # 405 "/usr/include/unistd.h" 3 4
5338 extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes,
5339 __off64_t __offset) __attribute__ ((__warn_unused_result__));
5342 extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n,
5343 __off64_t __offset) __attribute__ ((__warn_unused_result__));
5351 extern int pipe (int __pipedes[2]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5356 extern int pipe2 (int __pipedes[2], int __flags) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5357 # 433 "/usr/include/unistd.h" 3 4
5358 extern unsigned int alarm (unsigned int __seconds) __attribute__ ((__nothrow__ , __leaf__));
5359 # 445 "/usr/include/unistd.h" 3 4
5360 extern unsigned int sleep (unsigned int __seconds);
5368 extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)
5369 __attribute__ ((__nothrow__ , __leaf__));
5376 extern int usleep (__useconds_t __useconds);
5377 # 470 "/usr/include/unistd.h" 3 4
5378 extern int pause (void);
5382 extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
5383 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
5387 extern int fchown (int __fd, __uid_t __owner, __gid_t __group) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5392 extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group)
5393 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
5400 extern int fchownat (int __fd, __const char *__file, __uid_t __owner,
5401 __gid_t __group, int __flag)
5402 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
5406 extern int chdir (__const char *__path) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
5410 extern int fchdir (int __fd) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5411 # 512 "/usr/include/unistd.h" 3 4
5412 extern char *getcwd (char *__buf, size_t __size) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5418 extern char *get_current_dir_name (void) __attribute__ ((__nothrow__ , __leaf__));
5426 extern char *getwd (char *__buf)
5427 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) __attribute__ ((__warn_unused_result__));
5432 extern int dup (int __fd) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5435 extern int dup2 (int __fd, int __fd2) __attribute__ ((__nothrow__ , __leaf__));
5440 extern int dup3 (int __fd, int __fd2, int __flags) __attribute__ ((__nothrow__ , __leaf__));
5444 extern char **__environ;
5446 extern char **environ;
5452 extern int execve (__const char *__path, char *__const __argv[],
5453 char *__const __envp[]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5458 extern int fexecve (int __fd, char *__const __argv[], char *__const __envp[])
5459 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
5464 extern int execv (__const char *__path, char *__const __argv[])
5465 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5469 extern int execle (__const char *__path, __const char *__arg, ...)
5470 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5474 extern int execl (__const char *__path, __const char *__arg, ...)
5475 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5479 extern int execvp (__const char *__file, char *__const __argv[])
5480 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5485 extern int execlp (__const char *__file, __const char *__arg, ...)
5486 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5491 extern int execvpe (__const char *__file, char *__const __argv[],
5492 char *__const __envp[])
5493 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
5499 extern int nice (int __inc) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
5504 extern void _exit (int __status) __attribute__ ((__noreturn__));
5510 # 1 "/usr/include/bits/confname.h" 1 3 4
5511 # 26 "/usr/include/bits/confname.h" 3 4
5526 _PC_CHOWN_RESTRICTED,
5542 _PC_REC_INCR_XFER_SIZE,
5544 _PC_REC_MAX_XFER_SIZE,
5546 _PC_REC_MIN_XFER_SIZE,
5579 _SC_REALTIME_SIGNALS,
5581 _SC_PRIORITY_SCHEDULING,
5585 _SC_ASYNCHRONOUS_IO,
5589 _SC_SYNCHRONIZED_IO,
5599 _SC_MEMORY_PROTECTION,
5601 _SC_MESSAGE_PASSING,
5605 _SC_SHARED_MEMORY_OBJECTS,
5611 _SC_AIO_PRIO_DELTA_MAX,
5645 _SC_COLL_WEIGHTS_MAX,
5647 _SC_EQUIV_CLASS_MAX,
5655 _SC_CHARCLASS_NAME_MAX,
5689 _SC_IOV_MAX = _SC_UIO_MAXIOV,
5691 _SC_PII_INTERNET_STREAM,
5693 _SC_PII_INTERNET_DGRAM,
5707 _SC_THREAD_SAFE_FUNCTIONS,
5709 _SC_GETGR_R_SIZE_MAX,
5711 _SC_GETPW_R_SIZE_MAX,
5717 _SC_THREAD_DESTRUCTOR_ITERATIONS,
5719 _SC_THREAD_KEYS_MAX,
5721 _SC_THREAD_STACK_MIN,
5723 _SC_THREAD_THREADS_MAX,
5725 _SC_THREAD_ATTR_STACKADDR,
5727 _SC_THREAD_ATTR_STACKSIZE,
5729 _SC_THREAD_PRIORITY_SCHEDULING,
5731 _SC_THREAD_PRIO_INHERIT,
5733 _SC_THREAD_PRIO_PROTECT,
5735 _SC_THREAD_PROCESS_SHARED,
5738 _SC_NPROCESSORS_CONF,
5740 _SC_NPROCESSORS_ONLN,
5753 _SC_XOPEN_XCU_VERSION,
5828 _SC_XBS5_ILP32_OFF32,
5830 _SC_XBS5_ILP32_OFFBIG,
5832 _SC_XBS5_LP64_OFF64,
5834 _SC_XBS5_LPBIG_OFFBIG,
5841 _SC_XOPEN_REALTIME_THREADS,
5852 _SC_C_LANG_SUPPORT_R,
5854 _SC_CLOCK_SELECTION,
5862 _SC_DEVICE_SPECIFIC,
5864 _SC_DEVICE_SPECIFIC_R,
5872 _SC_FILE_ATTRIBUTES,
5878 _SC_MONOTONIC_CLOCK,
5886 _SC_READER_WRITER_LOCKS,
5900 _SC_SPORADIC_SERVER,
5902 _SC_THREAD_SPORADIC_SERVER,
5904 _SC_SYSTEM_DATABASE,
5906 _SC_SYSTEM_DATABASE_R,
5910 _SC_TYPED_MEMORY_OBJECTS,
5918 _SC_2_PBS_ACCOUNTING,
5930 _SC_2_PBS_CHECKPOINT,
5935 _SC_V6_ILP32_OFFBIG,
5939 _SC_V6_LPBIG_OFFBIG,
5946 _SC_TRACE_EVENT_FILTER,
5953 _SC_LEVEL1_ICACHE_SIZE,
5955 _SC_LEVEL1_ICACHE_ASSOC,
5957 _SC_LEVEL1_ICACHE_LINESIZE,
5959 _SC_LEVEL1_DCACHE_SIZE,
5961 _SC_LEVEL1_DCACHE_ASSOC,
5963 _SC_LEVEL1_DCACHE_LINESIZE,
5965 _SC_LEVEL2_CACHE_SIZE,
5967 _SC_LEVEL2_CACHE_ASSOC,
5969 _SC_LEVEL2_CACHE_LINESIZE,
5971 _SC_LEVEL3_CACHE_SIZE,
5973 _SC_LEVEL3_CACHE_ASSOC,
5975 _SC_LEVEL3_CACHE_LINESIZE,
5977 _SC_LEVEL4_CACHE_SIZE,
5979 _SC_LEVEL4_CACHE_ASSOC,
5981 _SC_LEVEL4_CACHE_LINESIZE,
5985 _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50,
5992 _SC_V7_ILP32_OFFBIG,
5996 _SC_V7_LPBIG_OFFBIG,
6002 _SC_TRACE_EVENT_NAME_MAX,
6008 _SC_TRACE_USER_EVENT_MAX,
6014 _SC_THREAD_ROBUST_PRIO_INHERIT,
6016 _SC_THREAD_ROBUST_PRIO_PROTECT
6026 _CS_V6_WIDTH_RESTRICTED_ENVS,
6030 _CS_GNU_LIBC_VERSION,
6032 _CS_GNU_LIBPTHREAD_VERSION,
6035 _CS_V5_WIDTH_RESTRICTED_ENVS,
6039 _CS_V7_WIDTH_RESTRICTED_ENVS,
6043 _CS_LFS_CFLAGS = 1000,
6057 _CS_LFS64_LINTFLAGS,
6060 _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
6062 _CS_XBS5_ILP32_OFF32_LDFLAGS,
6064 _CS_XBS5_ILP32_OFF32_LIBS,
6066 _CS_XBS5_ILP32_OFF32_LINTFLAGS,
6068 _CS_XBS5_ILP32_OFFBIG_CFLAGS,
6070 _CS_XBS5_ILP32_OFFBIG_LDFLAGS,
6072 _CS_XBS5_ILP32_OFFBIG_LIBS,
6074 _CS_XBS5_ILP32_OFFBIG_LINTFLAGS,
6076 _CS_XBS5_LP64_OFF64_CFLAGS,
6078 _CS_XBS5_LP64_OFF64_LDFLAGS,
6080 _CS_XBS5_LP64_OFF64_LIBS,
6082 _CS_XBS5_LP64_OFF64_LINTFLAGS,
6084 _CS_XBS5_LPBIG_OFFBIG_CFLAGS,
6086 _CS_XBS5_LPBIG_OFFBIG_LDFLAGS,
6088 _CS_XBS5_LPBIG_OFFBIG_LIBS,
6090 _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,
6093 _CS_POSIX_V6_ILP32_OFF32_CFLAGS,
6095 _CS_POSIX_V6_ILP32_OFF32_LDFLAGS,
6097 _CS_POSIX_V6_ILP32_OFF32_LIBS,
6099 _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,
6101 _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,
6103 _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,
6105 _CS_POSIX_V6_ILP32_OFFBIG_LIBS,
6107 _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,
6109 _CS_POSIX_V6_LP64_OFF64_CFLAGS,
6111 _CS_POSIX_V6_LP64_OFF64_LDFLAGS,
6113 _CS_POSIX_V6_LP64_OFF64_LIBS,
6115 _CS_POSIX_V6_LP64_OFF64_LINTFLAGS,
6117 _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,
6119 _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,
6121 _CS_POSIX_V6_LPBIG_OFFBIG_LIBS,
6123 _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS,
6126 _CS_POSIX_V7_ILP32_OFF32_CFLAGS,
6128 _CS_POSIX_V7_ILP32_OFF32_LDFLAGS,
6130 _CS_POSIX_V7_ILP32_OFF32_LIBS,
6132 _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS,
6134 _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS,
6136 _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS,
6138 _CS_POSIX_V7_ILP32_OFFBIG_LIBS,
6140 _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS,
6142 _CS_POSIX_V7_LP64_OFF64_CFLAGS,
6144 _CS_POSIX_V7_LP64_OFF64_LDFLAGS,
6146 _CS_POSIX_V7_LP64_OFF64_LIBS,
6148 _CS_POSIX_V7_LP64_OFF64_LINTFLAGS,
6150 _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS,
6152 _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS,
6154 _CS_POSIX_V7_LPBIG_OFFBIG_LIBS,
6156 _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS,
6164 # 611 "/usr/include/unistd.h" 2 3 4
6167 extern long int pathconf (__const char *__path, int __name)
6168 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6171 extern long int fpathconf (int __fd, int __name) __attribute__ ((__nothrow__ , __leaf__));
6174 extern long int sysconf (int __name) __attribute__ ((__nothrow__ , __leaf__));
6178 extern size_t confstr (int __name, char *__buf, size_t __len) __attribute__ ((__nothrow__ , __leaf__));
6183 extern __pid_t getpid (void) __attribute__ ((__nothrow__ , __leaf__));
6186 extern __pid_t getppid (void) __attribute__ ((__nothrow__ , __leaf__));
6191 extern __pid_t getpgrp (void) __attribute__ ((__nothrow__ , __leaf__));
6192 # 647 "/usr/include/unistd.h" 3 4
6193 extern __pid_t __getpgid (__pid_t __pid) __attribute__ ((__nothrow__ , __leaf__));
6195 extern __pid_t getpgid (__pid_t __pid) __attribute__ ((__nothrow__ , __leaf__));
6202 extern int setpgid (__pid_t __pid, __pid_t __pgid) __attribute__ ((__nothrow__ , __leaf__));
6203 # 673 "/usr/include/unistd.h" 3 4
6204 extern int setpgrp (void) __attribute__ ((__nothrow__ , __leaf__));
6205 # 690 "/usr/include/unistd.h" 3 4
6206 extern __pid_t setsid (void) __attribute__ ((__nothrow__ , __leaf__));
6210 extern __pid_t getsid (__pid_t __pid) __attribute__ ((__nothrow__ , __leaf__));
6214 extern __uid_t getuid (void) __attribute__ ((__nothrow__ , __leaf__));
6217 extern __uid_t geteuid (void) __attribute__ ((__nothrow__ , __leaf__));
6220 extern __gid_t getgid (void) __attribute__ ((__nothrow__ , __leaf__));
6223 extern __gid_t getegid (void) __attribute__ ((__nothrow__ , __leaf__));
6228 extern int getgroups (int __size, __gid_t __list[]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6232 extern int group_member (__gid_t __gid) __attribute__ ((__nothrow__ , __leaf__));
6239 extern int setuid (__uid_t __uid) __attribute__ ((__nothrow__ , __leaf__));
6244 extern int setreuid (__uid_t __ruid, __uid_t __euid) __attribute__ ((__nothrow__ , __leaf__));
6249 extern int seteuid (__uid_t __uid) __attribute__ ((__nothrow__ , __leaf__));
6256 extern int setgid (__gid_t __gid) __attribute__ ((__nothrow__ , __leaf__));
6261 extern int setregid (__gid_t __rgid, __gid_t __egid) __attribute__ ((__nothrow__ , __leaf__));
6266 extern int setegid (__gid_t __gid) __attribute__ ((__nothrow__ , __leaf__));
6272 extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid)
6273 __attribute__ ((__nothrow__ , __leaf__));
6277 extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid)
6278 __attribute__ ((__nothrow__ , __leaf__));
6282 extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid)
6283 __attribute__ ((__nothrow__ , __leaf__));
6287 extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid)
6288 __attribute__ ((__nothrow__ , __leaf__));
6295 extern __pid_t fork (void) __attribute__ ((__nothrow__));
6303 extern __pid_t vfork (void) __attribute__ ((__nothrow__ , __leaf__));
6309 extern char *ttyname (int __fd) __attribute__ ((__nothrow__ , __leaf__));
6313 extern int ttyname_r (int __fd, char *__buf, size_t __buflen)
6314 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
6318 extern int isatty (int __fd) __attribute__ ((__nothrow__ , __leaf__));
6324 extern int ttyslot (void) __attribute__ ((__nothrow__ , __leaf__));
6329 extern int link (__const char *__from, __const char *__to)
6330 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
6335 extern int linkat (int __fromfd, __const char *__from, int __tofd,
6336 __const char *__to, int __flags)
6337 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 4))) __attribute__ ((__warn_unused_result__));
6342 extern int symlink (__const char *__from, __const char *__to)
6343 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
6348 extern ssize_t readlink (__const char *__restrict __path,
6349 char *__restrict __buf, size_t __len)
6350 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
6355 extern int symlinkat (__const char *__from, int __tofd,
6356 __const char *__to) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
6359 extern ssize_t readlinkat (int __fd, __const char *__restrict __path,
6360 char *__restrict __buf, size_t __len)
6361 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
6365 extern int unlink (__const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6369 extern int unlinkat (int __fd, __const char *__name, int __flag)
6370 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
6374 extern int rmdir (__const char *__path) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6378 extern __pid_t tcgetpgrp (int __fd) __attribute__ ((__nothrow__ , __leaf__));
6381 extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __attribute__ ((__nothrow__ , __leaf__));
6388 extern char *getlogin (void);
6396 extern int getlogin_r (char *__name, size_t __name_len) __attribute__ ((__nonnull__ (1)));
6401 extern int setlogin (__const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6402 # 894 "/usr/include/unistd.h" 3 4
6403 # 1 "/usr/include/getopt.h" 1 3 4
6404 # 59 "/usr/include/getopt.h" 3 4
6405 extern char *optarg;
6406 # 73 "/usr/include/getopt.h" 3 4
6417 # 152 "/usr/include/getopt.h" 3 4
6418 extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
6419 __attribute__ ((__nothrow__ , __leaf__));
6420 # 895 "/usr/include/unistd.h" 2 3 4
6428 extern int gethostname (char *__name, size_t __len) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6435 extern int sethostname (__const char *__name, size_t __len)
6436 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6440 extern int sethostid (long int __id) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6446 extern int getdomainname (char *__name, size_t __len)
6447 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6448 extern int setdomainname (__const char *__name, size_t __len)
6449 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6455 extern int vhangup (void) __attribute__ ((__nothrow__ , __leaf__));
6458 extern int revoke (__const char *__file) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6466 extern int profil (unsigned short int *__sample_buffer, size_t __size,
6467 size_t __offset, unsigned int __scale)
6468 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6474 extern int acct (__const char *__name) __attribute__ ((__nothrow__ , __leaf__));
6478 extern char *getusershell (void) __attribute__ ((__nothrow__ , __leaf__));
6479 extern void endusershell (void) __attribute__ ((__nothrow__ , __leaf__));
6480 extern void setusershell (void) __attribute__ ((__nothrow__ , __leaf__));
6486 extern int daemon (int __nochdir, int __noclose) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6493 extern int chroot (__const char *__path) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6497 extern char *getpass (__const char *__prompt) __attribute__ ((__nonnull__ (1)));
6498 # 980 "/usr/include/unistd.h" 3 4
6499 extern int fsync (int __fd);
6506 extern int syncfs (int __fd) __attribute__ ((__nothrow__ , __leaf__));
6513 extern long int gethostid (void);
6516 extern void sync (void) __attribute__ ((__nothrow__ , __leaf__));
6522 extern int getpagesize (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
6527 extern int getdtablesize (void) __attribute__ ((__nothrow__ , __leaf__));
6528 # 1022 "/usr/include/unistd.h" 3 4
6529 extern int truncate (__const char *__file, __off64_t __length) __asm__ ("" "truncate64") __attribute__ ((__nothrow__ , __leaf__))
6531 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6537 extern int truncate64 (__const char *__file, __off64_t __length)
6538 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6539 # 1043 "/usr/include/unistd.h" 3 4
6540 extern int ftruncate (int __fd, __off64_t __length) __asm__ ("" "ftruncate64") __attribute__ ((__nothrow__ , __leaf__))
6541 __attribute__ ((__warn_unused_result__));
6547 extern int ftruncate64 (int __fd, __off64_t __length) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6548 # 1061 "/usr/include/unistd.h" 3 4
6549 extern int brk (void *__addr) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6555 extern void *sbrk (intptr_t __delta) __attribute__ ((__nothrow__ , __leaf__));
6556 # 1082 "/usr/include/unistd.h" 3 4
6557 extern long int syscall (long int __sysno, ...) __attribute__ ((__nothrow__ , __leaf__));
6558 # 1108 "/usr/include/unistd.h" 3 4
6559 extern int lockf (int __fd, int __cmd, __off64_t __len) __asm__ ("" "lockf64")
6560 __attribute__ ((__warn_unused_result__));
6566 extern int lockf64 (int __fd, int __cmd, __off64_t __len) __attribute__ ((__warn_unused_result__));
6567 # 1136 "/usr/include/unistd.h" 3 4
6568 extern int fdatasync (int __fildes);
6576 extern char *crypt (__const char *__key, __const char *__salt)
6577 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
6581 extern void encrypt (char *__block, int __edflag) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6588 extern void swab (__const void *__restrict __from, void *__restrict __to,
6589 ssize_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
6597 extern char *ctermid (char *__s) __attribute__ ((__nothrow__ , __leaf__));
6603 # 1 "/usr/include/bits/unistd.h" 1 3 4
6604 # 24 "/usr/include/bits/unistd.h" 3 4
6605 extern ssize_t __read_chk (int __fd, void *__buf, size_t __nbytes,
6606 size_t __buflen) __attribute__ ((__warn_unused_result__));
6607 extern ssize_t __read_alias (int __fd, void *__buf, size_t __nbytes) __asm__ ("" "read")
6608 __attribute__ ((__warn_unused_result__));
6609 extern ssize_t __read_chk_warn (int __fd, void *__buf, size_t __nbytes, size_t __buflen) __asm__ ("" "__read_chk")
6612 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("read called with bigger length than size of " "the destination buffer")))
6615 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
6616 read (int __fd, void *__buf, size_t __nbytes)
6618 if (__builtin_object_size (__buf, 0) != (size_t) -1)
6620 if (!__builtin_constant_p (__nbytes))
6621 return __read_chk (__fd, __buf, __nbytes, __builtin_object_size (__buf, 0));
6623 if (__nbytes > __builtin_object_size (__buf, 0))
6624 return __read_chk_warn (__fd, __buf, __nbytes, __builtin_object_size (__buf, 0));
6626 return __read_alias (__fd, __buf, __nbytes);
6630 extern ssize_t __pread_chk (int __fd, void *__buf, size_t __nbytes,
6631 __off_t __offset, size_t __bufsize) __attribute__ ((__warn_unused_result__));
6632 extern ssize_t __pread64_chk (int __fd, void *__buf, size_t __nbytes,
6633 __off64_t __offset, size_t __bufsize) __attribute__ ((__warn_unused_result__));
6634 extern ssize_t __pread_alias (int __fd, void *__buf, size_t __nbytes, __off_t __offset) __asm__ ("" "pread")
6636 __attribute__ ((__warn_unused_result__));
6637 extern ssize_t __pread64_alias (int __fd, void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pread64")
6639 __attribute__ ((__warn_unused_result__));
6640 extern ssize_t __pread_chk_warn (int __fd, void *__buf, size_t __nbytes, __off_t __offset, size_t __bufsize) __asm__ ("" "__pread_chk")
6643 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("pread called with bigger length than size of " "the destination buffer")))
6645 extern ssize_t __pread64_chk_warn (int __fd, void *__buf, size_t __nbytes, __off64_t __offset, size_t __bufsize) __asm__ ("" "__pread64_chk")
6649 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("pread64 called with bigger length than size of " "the destination buffer")))
6651 # 87 "/usr/include/bits/unistd.h" 3 4
6652 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
6653 pread (int __fd, void *__buf, size_t __nbytes, __off64_t __offset)
6655 if (__builtin_object_size (__buf, 0) != (size_t) -1)
6657 if (!__builtin_constant_p (__nbytes))
6658 return __pread64_chk (__fd, __buf, __nbytes, __offset, __builtin_object_size (__buf, 0));
6660 if ( __nbytes > __builtin_object_size (__buf, 0))
6661 return __pread64_chk_warn (__fd, __buf, __nbytes, __offset,
6662 __builtin_object_size (__buf, 0));
6665 return __pread64_alias (__fd, __buf, __nbytes, __offset);
6670 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
6671 pread64 (int __fd, void *__buf, size_t __nbytes, __off64_t __offset)
6673 if (__builtin_object_size (__buf, 0) != (size_t) -1)
6675 if (!__builtin_constant_p (__nbytes))
6676 return __pread64_chk (__fd, __buf, __nbytes, __offset, __builtin_object_size (__buf, 0));
6678 if ( __nbytes > __builtin_object_size (__buf, 0))
6679 return __pread64_chk_warn (__fd, __buf, __nbytes, __offset,
6680 __builtin_object_size (__buf, 0));
6683 return __pread64_alias (__fd, __buf, __nbytes, __offset);
6689 extern ssize_t __readlink_chk (__const char *__restrict __path,
6690 char *__restrict __buf, size_t __len,
6692 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
6693 extern ssize_t __readlink_alias (__const char *__restrict __path, char *__restrict __buf, size_t __len) __asm__ ("" "readlink") __attribute__ ((__nothrow__ , __leaf__))
6696 __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
6697 extern ssize_t __readlink_chk_warn (__const char *__restrict __path, char *__restrict __buf, size_t __len, size_t __buflen) __asm__ ("" "__readlink_chk") __attribute__ ((__nothrow__ , __leaf__))
6701 __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("readlink called with bigger length " "than size of destination buffer")))
6704 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__)) ssize_t
6705 __attribute__ ((__nothrow__ , __leaf__)) readlink (__const char *__restrict __path, char *__restrict __buf, size_t __len)
6708 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6710 if (!__builtin_constant_p (__len))
6711 return __readlink_chk (__path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
6713 if ( __len > __builtin_object_size (__buf, 2 > 1))
6714 return __readlink_chk_warn (__path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
6716 return __readlink_alias (__path, __buf, __len);
6721 extern ssize_t __readlinkat_chk (int __fd, __const char *__restrict __path,
6722 char *__restrict __buf, size_t __len,
6724 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
6725 extern ssize_t __readlinkat_alias (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len) __asm__ ("" "readlinkat") __attribute__ ((__nothrow__ , __leaf__))
6729 __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
6730 extern ssize_t __readlinkat_chk_warn (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len, size_t __buflen) __asm__ ("" "__readlinkat_chk") __attribute__ ((__nothrow__ , __leaf__))
6734 __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("readlinkat called with bigger " "length than size of destination " "buffer")))
6738 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__)) ssize_t
6739 __attribute__ ((__nothrow__ , __leaf__)) readlinkat (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len)
6742 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6744 if (!__builtin_constant_p (__len))
6745 return __readlinkat_chk (__fd, __path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
6747 if (__len > __builtin_object_size (__buf, 2 > 1))
6748 return __readlinkat_chk_warn (__fd, __path, __buf, __len,
6749 __builtin_object_size (__buf, 2 > 1));
6751 return __readlinkat_alias (__fd, __path, __buf, __len);
6755 extern char *__getcwd_chk (char *__buf, size_t __size, size_t __buflen)
6756 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6757 extern char *__getcwd_alias (char *__buf, size_t __size) __asm__ ("" "getcwd") __attribute__ ((__nothrow__ , __leaf__))
6758 __attribute__ ((__warn_unused_result__));
6759 extern char *__getcwd_chk_warn (char *__buf, size_t __size, size_t __buflen) __asm__ ("" "__getcwd_chk") __attribute__ ((__nothrow__ , __leaf__))
6762 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getcwd caller with bigger length than size of " "destination buffer")))
6765 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
6766 __attribute__ ((__nothrow__ , __leaf__)) getcwd (char *__buf, size_t __size)
6768 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6770 if (!__builtin_constant_p (__size))
6771 return __getcwd_chk (__buf, __size, __builtin_object_size (__buf, 2 > 1));
6773 if (__size > __builtin_object_size (__buf, 2 > 1))
6774 return __getcwd_chk_warn (__buf, __size, __builtin_object_size (__buf, 2 > 1));
6776 return __getcwd_alias (__buf, __size);
6780 extern char *__getwd_chk (char *__buf, size_t buflen)
6781 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6782 extern char *__getwd_warn (char *__buf) __asm__ ("" "getwd") __attribute__ ((__nothrow__ , __leaf__))
6783 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use getcwd instead, as getwd " "doesn't specify buffer size")))
6786 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) __attribute__ ((__warn_unused_result__)) char *
6787 __attribute__ ((__nothrow__ , __leaf__)) getwd (char *__buf)
6789 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6790 return __getwd_chk (__buf, __builtin_object_size (__buf, 2 > 1));
6791 return __getwd_warn (__buf);
6795 extern size_t __confstr_chk (int __name, char *__buf, size_t __len,
6796 size_t __buflen) __attribute__ ((__nothrow__ , __leaf__));
6797 extern size_t __confstr_alias (int __name, char *__buf, size_t __len) __asm__ ("" "confstr") __attribute__ ((__nothrow__ , __leaf__))
6799 extern size_t __confstr_chk_warn (int __name, char *__buf, size_t __len, size_t __buflen) __asm__ ("" "__confstr_chk") __attribute__ ((__nothrow__ , __leaf__))
6802 __attribute__((__warning__ ("confstr called with bigger length than size of destination " "buffer")))
6805 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
6806 __attribute__ ((__nothrow__ , __leaf__)) confstr (int __name, char *__buf, size_t __len)
6808 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6810 if (!__builtin_constant_p (__len))
6811 return __confstr_chk (__name, __buf, __len, __builtin_object_size (__buf, 2 > 1));
6813 if (__builtin_object_size (__buf, 2 > 1) < __len)
6814 return __confstr_chk_warn (__name, __buf, __len, __builtin_object_size (__buf, 2 > 1));
6816 return __confstr_alias (__name, __buf, __len);
6820 extern int __getgroups_chk (int __size, __gid_t __list[], size_t __listlen)
6821 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
6822 extern int __getgroups_alias (int __size, __gid_t __list[]) __asm__ ("" "getgroups") __attribute__ ((__nothrow__ , __leaf__))
6823 __attribute__ ((__warn_unused_result__));
6824 extern int __getgroups_chk_warn (int __size, __gid_t __list[], size_t __listlen) __asm__ ("" "__getgroups_chk") __attribute__ ((__nothrow__ , __leaf__))
6827 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getgroups called with bigger group count than what " "can fit into destination buffer")))
6830 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
6831 __attribute__ ((__nothrow__ , __leaf__)) getgroups (int __size, __gid_t __list[])
6833 if (__builtin_object_size (__list, 2 > 1) != (size_t) -1)
6835 if (!__builtin_constant_p (__size) || __size < 0)
6836 return __getgroups_chk (__size, __list, __builtin_object_size (__list, 2 > 1));
6838 if (__size * sizeof (__gid_t) > __builtin_object_size (__list, 2 > 1))
6839 return __getgroups_chk_warn (__size, __list, __builtin_object_size (__list, 2 > 1));
6841 return __getgroups_alias (__size, __list);
6845 extern int __ttyname_r_chk (int __fd, char *__buf, size_t __buflen,
6846 size_t __nreal) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
6847 extern int __ttyname_r_alias (int __fd, char *__buf, size_t __buflen) __asm__ ("" "ttyname_r") __attribute__ ((__nothrow__ , __leaf__))
6849 __attribute__ ((__nonnull__ (2)));
6850 extern int __ttyname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__ttyname_r_chk") __attribute__ ((__nothrow__ , __leaf__))
6853 __attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ttyname_r called with bigger buflen than " "size of destination buffer")))
6856 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
6857 __attribute__ ((__nothrow__ , __leaf__)) ttyname_r (int __fd, char *__buf, size_t __buflen)
6859 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6861 if (!__builtin_constant_p (__buflen))
6862 return __ttyname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6864 if (__buflen > __builtin_object_size (__buf, 2 > 1))
6865 return __ttyname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6867 return __ttyname_r_alias (__fd, __buf, __buflen);
6872 extern int __getlogin_r_chk (char *__buf, size_t __buflen, size_t __nreal)
6873 __attribute__ ((__nonnull__ (1)));
6874 extern int __getlogin_r_alias (char *__buf, size_t __buflen) __asm__ ("" "getlogin_r")
6875 __attribute__ ((__nonnull__ (1)));
6876 extern int __getlogin_r_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__getlogin_r_chk")
6879 __attribute__ ((__nonnull__ (1))) __attribute__((__warning__ ("getlogin_r called with bigger buflen than " "size of destination buffer")))
6882 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
6883 getlogin_r (char *__buf, size_t __buflen)
6885 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6887 if (!__builtin_constant_p (__buflen))
6888 return __getlogin_r_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6890 if (__buflen > __builtin_object_size (__buf, 2 > 1))
6891 return __getlogin_r_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6893 return __getlogin_r_alias (__buf, __buflen);
6899 extern int __gethostname_chk (char *__buf, size_t __buflen, size_t __nreal)
6900 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
6901 extern int __gethostname_alias (char *__buf, size_t __buflen) __asm__ ("" "gethostname") __attribute__ ((__nothrow__ , __leaf__))
6902 __attribute__ ((__nonnull__ (1)));
6903 extern int __gethostname_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__gethostname_chk") __attribute__ ((__nothrow__ , __leaf__))
6906 __attribute__ ((__nonnull__ (1))) __attribute__((__warning__ ("gethostname called with bigger buflen than " "size of destination buffer")))
6909 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
6910 __attribute__ ((__nothrow__ , __leaf__)) gethostname (char *__buf, size_t __buflen)
6912 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6914 if (!__builtin_constant_p (__buflen))
6915 return __gethostname_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6917 if (__buflen > __builtin_object_size (__buf, 2 > 1))
6918 return __gethostname_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6920 return __gethostname_alias (__buf, __buflen);
6926 extern int __getdomainname_chk (char *__buf, size_t __buflen, size_t __nreal)
6927 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6928 extern int __getdomainname_alias (char *__buf, size_t __buflen) __asm__ ("" "getdomainname") __attribute__ ((__nothrow__ , __leaf__))
6930 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
6931 extern int __getdomainname_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__getdomainname_chk") __attribute__ ((__nothrow__ , __leaf__))
6934 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getdomainname called with bigger " "buflen than size of destination " "buffer")))
6938 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
6939 __attribute__ ((__nothrow__ , __leaf__)) getdomainname (char *__buf, size_t __buflen)
6941 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
6943 if (!__builtin_constant_p (__buflen))
6944 return __getdomainname_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6946 if (__buflen > __builtin_object_size (__buf, 2 > 1))
6947 return __getdomainname_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
6949 return __getdomainname_alias (__buf, __buflen);
6951 # 1172 "/usr/include/unistd.h" 2 3 4
6955 # 34 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
6956 # 1 "/usr/include/fcntl.h" 1 3 4
6957 # 30 "/usr/include/fcntl.h" 3 4
6962 # 1 "/usr/include/bits/fcntl.h" 1 3 4
6963 # 27 "/usr/include/bits/fcntl.h" 3 4
6964 # 1 "/usr/include/bits/uio.h" 1 3 4
6965 # 44 "/usr/include/bits/uio.h" 3 4
6971 # 28 "/usr/include/bits/fcntl.h" 2 3 4
6972 # 153 "/usr/include/bits/fcntl.h" 3 4
7005 F_OWNER_GID = F_OWNER_PGRP
7011 enum __pid_type type;
7014 # 239 "/usr/include/bits/fcntl.h" 3 4
7017 unsigned int handle_bytes;
7020 unsigned char f_handle[0];
7032 extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
7033 __attribute__ ((__nothrow__ , __leaf__));
7037 extern int sync_file_range (int __fd, __off64_t __offset, __off64_t __count,
7038 unsigned int __flags);
7045 extern ssize_t vmsplice (int __fdout, const struct iovec *__iov,
7046 size_t __count, unsigned int __flags);
7052 extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout,
7053 __off64_t *__offout, size_t __len,
7054 unsigned int __flags);
7060 extern ssize_t tee (int __fdin, int __fdout, size_t __len,
7061 unsigned int __flags);
7062 # 295 "/usr/include/bits/fcntl.h" 3 4
7063 extern int fallocate (int __fd, int __mode, __off64_t __offset, __off64_t __len) __asm__ ("" "fallocate64")
7071 extern int fallocate64 (int __fd, int __mode, __off64_t __offset,
7077 extern int name_to_handle_at (int __dfd, const char *__name,
7078 struct file_handle *__handle, int *__mnt_id,
7079 int __flags) __attribute__ ((__nothrow__ , __leaf__));
7085 extern int open_by_handle_at (int __mountdirfd, struct file_handle *__handle,
7091 # 35 "/usr/include/fcntl.h" 2 3 4
7098 # 1 "/usr/include/bits/stat.h" 1 3 4
7099 # 39 "/usr/include/bits/stat.h" 3 4
7103 unsigned short int __pad1;
7114 unsigned short int __pad2;
7120 __blksize_t st_blksize;
7125 __blkcnt64_t st_blocks;
7126 # 73 "/usr/include/bits/stat.h" 3 4
7127 struct timespec st_atim;
7128 struct timespec st_mtim;
7129 struct timespec st_ctim;
7130 # 91 "/usr/include/bits/stat.h" 3 4
7139 unsigned int __pad1;
7147 unsigned int __pad2;
7149 __blksize_t st_blksize;
7151 __blkcnt64_t st_blocks;
7159 struct timespec st_atim;
7160 struct timespec st_mtim;
7161 struct timespec st_ctim;
7162 # 130 "/usr/include/bits/stat.h" 3 4
7165 # 42 "/usr/include/fcntl.h" 2 3 4
7166 # 125 "/usr/include/fcntl.h" 3 4
7167 extern int fcntl (int __fd, int __cmd, ...);
7168 # 137 "/usr/include/fcntl.h" 3 4
7169 extern int open (__const char *__file, int __oflag, ...) __asm__ ("" "open64")
7170 __attribute__ ((__nonnull__ (1)));
7176 extern int open64 (__const char *__file, int __oflag, ...) __attribute__ ((__nonnull__ (1)));
7177 # 162 "/usr/include/fcntl.h" 3 4
7178 extern int openat (int __fd, __const char *__file, int __oflag, ...) __asm__ ("" "openat64")
7179 __attribute__ ((__nonnull__ (2)));
7185 extern int openat64 (int __fd, __const char *__file, int __oflag, ...)
7186 __attribute__ ((__nonnull__ (2)));
7187 # 183 "/usr/include/fcntl.h" 3 4
7188 extern int creat (__const char *__file, __mode_t __mode) __asm__ ("" "creat64")
7189 __attribute__ ((__nonnull__ (1)));
7195 extern int creat64 (__const char *__file, __mode_t __mode) __attribute__ ((__nonnull__ (1)));
7196 # 230 "/usr/include/fcntl.h" 3 4
7197 extern int posix_fadvise (int __fd, __off64_t __offset, __off64_t __len, int __advise) __asm__ ("" "posix_fadvise64") __attribute__ ((__nothrow__ , __leaf__))
7205 extern int posix_fadvise64 (int __fd, __off64_t __offset, __off64_t __len,
7206 int __advise) __attribute__ ((__nothrow__ , __leaf__));
7207 # 251 "/usr/include/fcntl.h" 3 4
7208 extern int posix_fallocate (int __fd, __off64_t __offset, __off64_t __len) __asm__ ("" "posix_fallocate64")
7216 extern int posix_fallocate64 (int __fd, __off64_t __offset, __off64_t __len);
7224 # 1 "/usr/include/bits/fcntl2.h" 1 3 4
7225 # 31 "/usr/include/bits/fcntl2.h" 3 4
7226 extern int __open_2 (__const char *__path, int __oflag) __asm__ ("" "__open64_2")
7227 __attribute__ ((__nonnull__ (1)));
7228 extern int __open_alias (__const char *__path, int __oflag, ...) __asm__ ("" "open64")
7229 __attribute__ ((__nonnull__ (1)));
7231 extern void __open_too_many_args (void) __attribute__((__error__ ("open can be called either with 2 or 3 arguments, not more")))
7233 extern void __open_missing_mode (void) __attribute__((__error__ ("open with O_CREAT in second argument needs 3 arguments")))
7236 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
7237 open (__const char *__path, int __oflag, ...)
7239 if (__builtin_va_arg_pack_len () > 1)
7240 __open_too_many_args ();
7242 if (__builtin_constant_p (__oflag))
7244 if ((__oflag & 0100) != 0 && __builtin_va_arg_pack_len () < 1)
7246 __open_missing_mode ();
7247 return __open_2 (__path, __oflag);
7249 return __open_alias (__path, __oflag, __builtin_va_arg_pack ());
7252 if (__builtin_va_arg_pack_len () < 1)
7253 return __open_2 (__path, __oflag);
7255 return __open_alias (__path, __oflag, __builtin_va_arg_pack ());
7260 extern int __open64_2 (__const char *__path, int __oflag) __attribute__ ((__nonnull__ (1)));
7261 extern int __open64_alias (__const char *__path, int __oflag, ...) __asm__ ("" "open64")
7262 __attribute__ ((__nonnull__ (1)));
7263 extern void __open64_too_many_args (void) __attribute__((__error__ ("open64 can be called either with 2 or 3 arguments, not more")))
7265 extern void __open64_missing_mode (void) __attribute__((__error__ ("open64 with O_CREAT in second argument needs 3 arguments")))
7268 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
7269 open64 (__const char *__path, int __oflag, ...)
7271 if (__builtin_va_arg_pack_len () > 1)
7272 __open64_too_many_args ();
7274 if (__builtin_constant_p (__oflag))
7276 if ((__oflag & 0100) != 0 && __builtin_va_arg_pack_len () < 1)
7278 __open64_missing_mode ();
7279 return __open64_2 (__path, __oflag);
7281 return __open64_alias (__path, __oflag, __builtin_va_arg_pack ());
7284 if (__builtin_va_arg_pack_len () < 1)
7285 return __open64_2 (__path, __oflag);
7287 return __open64_alias (__path, __oflag, __builtin_va_arg_pack ());
7289 # 105 "/usr/include/bits/fcntl2.h" 3 4
7290 extern int __openat_2 (int __fd, __const char *__path, int __oflag) __asm__ ("" "__openat64_2")
7292 __attribute__ ((__nonnull__ (2)));
7293 extern int __openat_alias (int __fd, __const char *__path, int __oflag, ...) __asm__ ("" "openat64")
7295 __attribute__ ((__nonnull__ (2)));
7297 extern void __openat_too_many_args (void) __attribute__((__error__ ("openat can be called either with 3 or 4 arguments, not more")))
7299 extern void __openat_missing_mode (void) __attribute__((__error__ ("openat with O_CREAT in third argument needs 4 arguments")))
7302 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
7303 openat (int __fd, __const char *__path, int __oflag, ...)
7305 if (__builtin_va_arg_pack_len () > 1)
7306 __openat_too_many_args ();
7308 if (__builtin_constant_p (__oflag))
7310 if ((__oflag & 0100) != 0 && __builtin_va_arg_pack_len () < 1)
7312 __openat_missing_mode ();
7313 return __openat_2 (__fd, __path, __oflag);
7315 return __openat_alias (__fd, __path, __oflag, __builtin_va_arg_pack ());
7318 if (__builtin_va_arg_pack_len () < 1)
7319 return __openat_2 (__fd, __path, __oflag);
7321 return __openat_alias (__fd, __path, __oflag, __builtin_va_arg_pack ());
7326 extern int __openat64_2 (int __fd, __const char *__path, int __oflag)
7327 __attribute__ ((__nonnull__ (2)));
7328 extern int __openat64_alias (int __fd, __const char *__path, int __oflag, ...) __asm__ ("" "openat64")
7330 __attribute__ ((__nonnull__ (2)));
7331 extern void __openat64_too_many_args (void) __attribute__((__error__ ("openat64 can be called either with 3 or 4 arguments, not more")))
7333 extern void __openat64_missing_mode (void) __attribute__((__error__ ("openat64 with O_CREAT in third argument needs 4 arguments")))
7336 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
7337 openat64 (int __fd, __const char *__path, int __oflag, ...)
7339 if (__builtin_va_arg_pack_len () > 1)
7340 __openat64_too_many_args ();
7342 if (__builtin_constant_p (__oflag))
7344 if ((__oflag & 0100) != 0 && __builtin_va_arg_pack_len () < 1)
7346 __openat64_missing_mode ();
7347 return __openat64_2 (__fd, __path, __oflag);
7349 return __openat64_alias (__fd, __path, __oflag, __builtin_va_arg_pack ());
7352 if (__builtin_va_arg_pack_len () < 1)
7353 return __openat64_2 (__fd, __path, __oflag);
7355 return __openat64_alias (__fd, __path, __oflag, __builtin_va_arg_pack ());
7357 # 268 "/usr/include/fcntl.h" 2 3 4
7361 # 35 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
7362 # 1 "/usr/include/sys/stat.h" 1 3 4
7363 # 105 "/usr/include/sys/stat.h" 3 4
7366 # 1 "/usr/include/bits/stat.h" 1 3 4
7367 # 108 "/usr/include/sys/stat.h" 2 3 4
7368 # 219 "/usr/include/sys/stat.h" 3 4
7369 extern int stat (__const char *__restrict __file, struct stat *__restrict __buf) __asm__ ("" "stat64") __attribute__ ((__nothrow__ , __leaf__))
7371 __attribute__ ((__nonnull__ (1, 2)));
7372 extern int fstat (int __fd, struct stat *__buf) __asm__ ("" "fstat64") __attribute__ ((__nothrow__ , __leaf__))
7373 __attribute__ ((__nonnull__ (2)));
7380 extern int stat64 (__const char *__restrict __file,
7381 struct stat64 *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
7382 extern int fstat64 (int __fd, struct stat64 *__buf) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
7383 # 245 "/usr/include/sys/stat.h" 3 4
7384 extern int fstatat (int __fd, __const char *__restrict __file, struct stat *__restrict __buf, int __flag) __asm__ ("" "fstatat64") __attribute__ ((__nothrow__ , __leaf__))
7387 __attribute__ ((__nonnull__ (2, 3)));
7394 extern int fstatat64 (int __fd, __const char *__restrict __file,
7395 struct stat64 *__restrict __buf, int __flag)
7396 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
7397 # 269 "/usr/include/sys/stat.h" 3 4
7398 extern int lstat (__const char *__restrict __file, struct stat *__restrict __buf) __asm__ ("" "lstat64") __attribute__ ((__nothrow__ , __leaf__))
7401 __attribute__ ((__nonnull__ (1, 2)));
7407 extern int lstat64 (__const char *__restrict __file,
7408 struct stat64 *__restrict __buf)
7409 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
7415 extern int chmod (__const char *__file, __mode_t __mode)
7416 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7422 extern int lchmod (__const char *__file, __mode_t __mode)
7423 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7428 extern int fchmod (int __fd, __mode_t __mode) __attribute__ ((__nothrow__ , __leaf__));
7434 extern int fchmodat (int __fd, __const char *__file, __mode_t __mode,
7436 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
7443 extern __mode_t umask (__mode_t __mask) __attribute__ ((__nothrow__ , __leaf__));
7448 extern __mode_t getumask (void) __attribute__ ((__nothrow__ , __leaf__));
7452 extern int mkdir (__const char *__path, __mode_t __mode)
7453 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7459 extern int mkdirat (int __fd, __const char *__path, __mode_t __mode)
7460 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
7467 extern int mknod (__const char *__path, __mode_t __mode, __dev_t __dev)
7468 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7474 extern int mknodat (int __fd, __const char *__path, __mode_t __mode,
7475 __dev_t __dev) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
7481 extern int mkfifo (__const char *__path, __mode_t __mode)
7482 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7488 extern int mkfifoat (int __fd, __const char *__path, __mode_t __mode)
7489 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
7495 extern int utimensat (int __fd, __const char *__path,
7496 __const struct timespec __times[2],
7498 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
7503 extern int futimens (int __fd, __const struct timespec __times[2]) __attribute__ ((__nothrow__ , __leaf__));
7504 # 412 "/usr/include/sys/stat.h" 3 4
7505 extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf) __asm__ ("" "__fxstat64") __attribute__ ((__nothrow__ , __leaf__))
7507 __attribute__ ((__nonnull__ (3)));
7508 extern int __xstat (int __ver, __const char *__filename, struct stat *__stat_buf) __asm__ ("" "__xstat64") __attribute__ ((__nothrow__ , __leaf__))
7510 __attribute__ ((__nonnull__ (2, 3)));
7511 extern int __lxstat (int __ver, __const char *__filename, struct stat *__stat_buf) __asm__ ("" "__lxstat64") __attribute__ ((__nothrow__ , __leaf__))
7513 __attribute__ ((__nonnull__ (2, 3)));
7514 extern int __fxstatat (int __ver, int __fildes, __const char *__filename, struct stat *__stat_buf, int __flag) __asm__ ("" "__fxstatat64") __attribute__ ((__nothrow__ , __leaf__))
7517 __attribute__ ((__nonnull__ (3, 4)));
7518 # 434 "/usr/include/sys/stat.h" 3 4
7519 extern int __fxstat64 (int __ver, int __fildes, struct stat64 *__stat_buf)
7520 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3)));
7521 extern int __xstat64 (int __ver, __const char *__filename,
7522 struct stat64 *__stat_buf) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
7523 extern int __lxstat64 (int __ver, __const char *__filename,
7524 struct stat64 *__stat_buf) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
7525 extern int __fxstatat64 (int __ver, int __fildes, __const char *__filename,
7526 struct stat64 *__stat_buf, int __flag)
7527 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4)));
7529 extern int __xmknod (int __ver, __const char *__path, __mode_t __mode,
7530 __dev_t *__dev) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 4)));
7532 extern int __xmknodat (int __ver, int __fd, __const char *__path,
7533 __mode_t __mode, __dev_t *__dev)
7534 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 5)));
7540 __attribute__ ((__nothrow__ , __leaf__)) stat (__const char *__path, struct stat *__statbuf)
7542 return __xstat (3, __path, __statbuf);
7547 __attribute__ ((__nothrow__ , __leaf__)) lstat (__const char *__path, struct stat *__statbuf)
7549 return __lxstat (3, __path, __statbuf);
7554 __attribute__ ((__nothrow__ , __leaf__)) fstat (int __fd, struct stat *__statbuf)
7556 return __fxstat (3, __fd, __statbuf);
7561 __attribute__ ((__nothrow__ , __leaf__)) fstatat (int __fd, __const char *__filename, struct stat *__statbuf, int __flag)
7564 return __fxstatat (3, __fd, __filename, __statbuf, __flag);
7570 __attribute__ ((__nothrow__ , __leaf__)) mknod (__const char *__path, __mode_t __mode, __dev_t __dev)
7572 return __xmknod (1, __path, __mode, &__dev);
7578 __attribute__ ((__nothrow__ , __leaf__)) mknodat (int __fd, __const char *__path, __mode_t __mode, __dev_t __dev)
7581 return __xmknodat (1, __fd, __path, __mode, &__dev);
7589 __attribute__ ((__nothrow__ , __leaf__)) stat64 (__const char *__path, struct stat64 *__statbuf)
7591 return __xstat64 (3, __path, __statbuf);
7596 __attribute__ ((__nothrow__ , __leaf__)) lstat64 (__const char *__path, struct stat64 *__statbuf)
7598 return __lxstat64 (3, __path, __statbuf);
7603 __attribute__ ((__nothrow__ , __leaf__)) fstat64 (int __fd, struct stat64 *__statbuf)
7605 return __fxstat64 (3, __fd, __statbuf);
7610 __attribute__ ((__nothrow__ , __leaf__)) fstatat64 (int __fd, __const char *__filename, struct stat64 *__statbuf, int __flag)
7613 return __fxstatat64 (3, __fd, __filename, __statbuf, __flag);
7622 # 36 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
7623 # 1 "/usr/include/sys/time.h" 1 3 4
7624 # 29 "/usr/include/sys/time.h" 3 4
7625 # 1 "/usr/include/bits/time.h" 1 3 4
7626 # 30 "/usr/include/sys/time.h" 2 3 4
7627 # 39 "/usr/include/sys/time.h" 3 4
7629 # 57 "/usr/include/sys/time.h" 3 4
7636 typedef struct timezone *__restrict __timezone_ptr_t;
7637 # 73 "/usr/include/sys/time.h" 3 4
7638 extern int gettimeofday (struct timeval *__restrict __tv,
7639 __timezone_ptr_t __tz) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7644 extern int settimeofday (__const struct timeval *__tv,
7645 __const struct timezone *__tz)
7646 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7652 extern int adjtime (__const struct timeval *__delta,
7653 struct timeval *__olddelta) __attribute__ ((__nothrow__ , __leaf__));
7677 struct timeval it_interval;
7679 struct timeval it_value;
7685 typedef enum __itimer_which __itimer_which_t;
7692 extern int getitimer (__itimer_which_t __which,
7693 struct itimerval *__value) __attribute__ ((__nothrow__ , __leaf__));
7698 extern int setitimer (__itimer_which_t __which,
7699 __const struct itimerval *__restrict __new,
7700 struct itimerval *__restrict __old) __attribute__ ((__nothrow__ , __leaf__));
7705 extern int utimes (__const char *__file, __const struct timeval __tvp[2])
7706 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7710 extern int lutimes (__const char *__file, __const struct timeval __tvp[2])
7711 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
7714 extern int futimes (int __fd, __const struct timeval __tvp[2]) __attribute__ ((__nothrow__ , __leaf__));
7721 extern int futimesat (int __fd, __const char *__file,
7722 __const struct timeval __tvp[2]) __attribute__ ((__nothrow__ , __leaf__));
7723 # 191 "/usr/include/sys/time.h" 3 4
7725 # 37 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
7726 # 1 "/usr/include/assert.h" 1 3 4
7727 # 66 "/usr/include/assert.h" 3 4
7731 extern void __assert_fail (__const char *__assertion, __const char *__file,
7732 unsigned int __line, __const char *__function)
7733 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
7736 extern void __assert_perror_fail (int __errnum, __const char *__file,
7737 unsigned int __line,
7738 __const char *__function)
7739 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
7744 extern void __assert (const char *__assertion, const char *__file, int __line)
7745 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
7749 # 38 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
7750 # 1 "/usr/include/signal.h" 1 3 4
7751 # 31 "/usr/include/signal.h" 3 4
7754 # 1 "/usr/include/bits/sigset.h" 1 3 4
7755 # 104 "/usr/include/bits/sigset.h" 3 4
7756 extern int __sigismember (__const __sigset_t *, int);
7757 extern int __sigaddset (__sigset_t *, int);
7758 extern int __sigdelset (__sigset_t *, int);
7759 # 118 "/usr/include/bits/sigset.h" 3 4
7760 extern __inline int __sigismember (__const __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return (__set->__val[__word] & __mask) ? 1 : 0; }
7761 extern __inline int __sigaddset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] |= __mask), 0); }
7762 extern __inline int __sigdelset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] &= ~__mask), 0); }
7763 # 34 "/usr/include/signal.h" 2 3 4
7771 typedef __sig_atomic_t sig_atomic_t;
7773 # 58 "/usr/include/signal.h" 3 4
7774 # 1 "/usr/include/bits/signum.h" 1 3 4
7775 # 59 "/usr/include/signal.h" 2 3 4
7776 # 79 "/usr/include/signal.h" 3 4
7777 # 1 "/usr/include/bits/siginfo.h" 1 3 4
7778 # 25 "/usr/include/bits/siginfo.h" 3 4
7779 # 1 "/usr/include/bits/wordsize.h" 1 3 4
7780 # 26 "/usr/include/bits/siginfo.h" 2 3 4
7788 typedef union sigval
7793 # 51 "/usr/include/bits/siginfo.h" 3 4
7794 typedef struct siginfo
7803 int _pad[((128 / sizeof (int)) - 3)];
7852 # 129 "/usr/include/bits/siginfo.h" 3 4
7980 # 273 "/usr/include/bits/siginfo.h" 3 4
7981 typedef struct sigevent
7983 sigval_t sigev_value;
7989 int _pad[((64 / sizeof (int)) - 3)];
7997 void (*_function) (sigval_t);
8020 # 80 "/usr/include/signal.h" 2 3 4
8025 typedef void (*__sighandler_t) (int);
8030 extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler)
8031 __attribute__ ((__nothrow__ , __leaf__));
8033 extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler)
8034 __attribute__ ((__nothrow__ , __leaf__));
8042 extern __sighandler_t signal (int __sig, __sighandler_t __handler)
8043 __attribute__ ((__nothrow__ , __leaf__));
8044 # 113 "/usr/include/signal.h" 3 4
8050 extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler)
8051 __attribute__ ((__nothrow__ , __leaf__));
8058 extern int kill (__pid_t __pid, int __sig) __attribute__ ((__nothrow__ , __leaf__));
8065 extern int killpg (__pid_t __pgrp, int __sig) __attribute__ ((__nothrow__ , __leaf__));
8070 extern int raise (int __sig) __attribute__ ((__nothrow__ , __leaf__));
8075 extern __sighandler_t ssignal (int __sig, __sighandler_t __handler)
8076 __attribute__ ((__nothrow__ , __leaf__));
8077 extern int gsignal (int __sig) __attribute__ ((__nothrow__ , __leaf__));
8082 extern void psignal (int __sig, __const char *__s);
8087 extern void psiginfo (__const siginfo_t *__pinfo, __const char *__s);
8088 # 168 "/usr/include/signal.h" 3 4
8089 extern int __sigpause (int __sig_or_mask, int __is_sig);
8090 # 177 "/usr/include/signal.h" 3 4
8091 extern int sigpause (int __sig) __asm__ ("__xpg_sigpause");
8092 # 196 "/usr/include/signal.h" 3 4
8093 extern int sigblock (int __mask) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__deprecated__));
8096 extern int sigsetmask (int __mask) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__deprecated__));
8099 extern int siggetmask (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__deprecated__));
8100 # 211 "/usr/include/signal.h" 3 4
8101 typedef __sighandler_t sighandler_t;
8106 typedef __sighandler_t sig_t;
8112 extern int sigemptyset (sigset_t *__set) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8115 extern int sigfillset (sigset_t *__set) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8118 extern int sigaddset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8121 extern int sigdelset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8124 extern int sigismember (__const sigset_t *__set, int __signo)
8125 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8129 extern int sigisemptyset (__const sigset_t *__set) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8132 extern int sigandset (sigset_t *__set, __const sigset_t *__left,
8133 __const sigset_t *__right) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2, 3)));
8136 extern int sigorset (sigset_t *__set, __const sigset_t *__left,
8137 __const sigset_t *__right) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2, 3)));
8142 # 1 "/usr/include/bits/sigaction.h" 1 3 4
8143 # 25 "/usr/include/bits/sigaction.h" 3 4
8151 __sighandler_t sa_handler;
8153 void (*sa_sigaction) (int, siginfo_t *, void *);
8155 __sigaction_handler;
8169 void (*sa_restorer) (void);
8171 # 253 "/usr/include/signal.h" 2 3 4
8174 extern int sigprocmask (int __how, __const sigset_t *__restrict __set,
8175 sigset_t *__restrict __oset) __attribute__ ((__nothrow__ , __leaf__));
8182 extern int sigsuspend (__const sigset_t *__set) __attribute__ ((__nonnull__ (1)));
8185 extern int sigaction (int __sig, __const struct sigaction *__restrict __act,
8186 struct sigaction *__restrict __oact) __attribute__ ((__nothrow__ , __leaf__));
8189 extern int sigpending (sigset_t *__set) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
8196 extern int sigwait (__const sigset_t *__restrict __set, int *__restrict __sig)
8197 __attribute__ ((__nonnull__ (1, 2)));
8204 extern int sigwaitinfo (__const sigset_t *__restrict __set,
8205 siginfo_t *__restrict __info) __attribute__ ((__nonnull__ (1)));
8212 extern int sigtimedwait (__const sigset_t *__restrict __set,
8213 siginfo_t *__restrict __info,
8214 __const struct timespec *__restrict __timeout)
8215 __attribute__ ((__nonnull__ (1)));
8219 extern int sigqueue (__pid_t __pid, int __sig, __const union sigval __val)
8220 __attribute__ ((__nothrow__ , __leaf__));
8221 # 310 "/usr/include/signal.h" 3 4
8222 extern __const char *__const _sys_siglist[65];
8223 extern __const char *__const sys_siglist[65];
8228 __sighandler_t sv_handler;
8234 # 334 "/usr/include/signal.h" 3 4
8235 extern int sigvec (int __sig, __const struct sigvec *__vec,
8236 struct sigvec *__ovec) __attribute__ ((__nothrow__ , __leaf__));
8240 # 1 "/usr/include/bits/sigcontext.h" 1 3 4
8241 # 28 "/usr/include/bits/sigcontext.h" 3 4
8242 # 1 "/usr/include/asm/sigcontext.h" 1 3 4
8247 # 1 "/usr/include/linux/types.h" 1 3 4
8251 # 1 "/usr/include/asm/types.h" 1 3 4
8255 # 1 "/usr/include/asm-generic/types.h" 1 3 4
8262 # 1 "/usr/include/asm-generic/int-ll64.h" 1 3 4
8263 # 11 "/usr/include/asm-generic/int-ll64.h" 3 4
8264 # 1 "/usr/include/asm/bitsperlong.h" 1 3 4
8265 # 10 "/usr/include/asm/bitsperlong.h" 3 4
8266 # 1 "/usr/include/asm-generic/bitsperlong.h" 1 3 4
8267 # 11 "/usr/include/asm/bitsperlong.h" 2 3 4
8268 # 12 "/usr/include/asm-generic/int-ll64.h" 2 3 4
8276 typedef __signed__ char __s8;
8277 typedef unsigned char __u8;
8279 typedef __signed__ short __s16;
8280 typedef unsigned short __u16;
8282 typedef __signed__ int __s32;
8283 typedef unsigned int __u32;
8286 __extension__ typedef __signed__ long long __s64;
8287 __extension__ typedef unsigned long long __u64;
8288 # 8 "/usr/include/asm-generic/types.h" 2 3 4
8292 typedef unsigned short umode_t;
8293 # 5 "/usr/include/asm/types.h" 2 3 4
8294 # 5 "/usr/include/linux/types.h" 2 3 4
8298 # 1 "/usr/include/linux/posix_types.h" 1 3 4
8302 # 1 "/usr/include/linux/stddef.h" 1 3 4
8303 # 14 "/usr/include/linux/stddef.h" 3 4
8304 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
8305 # 150 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 3 4
8306 typedef int ptrdiff_t;
8307 # 15 "/usr/include/linux/stddef.h" 2 3 4
8308 # 5 "/usr/include/linux/posix_types.h" 2 3 4
8309 # 36 "/usr/include/linux/posix_types.h" 3 4
8311 unsigned long fds_bits [(1024/(8 * sizeof(unsigned long)))];
8315 typedef void (*__kernel_sighandler_t)(int);
8318 typedef int __kernel_key_t;
8319 typedef int __kernel_mqd_t;
8321 # 1 "/usr/include/asm/posix_types.h" 1 3 4
8323 # 1 "/usr/include/asm/posix_types_32.h" 1 3 4
8324 # 10 "/usr/include/asm/posix_types_32.h" 3 4
8325 typedef unsigned long __kernel_ino_t;
8326 typedef unsigned short __kernel_mode_t;
8327 typedef unsigned short __kernel_nlink_t;
8328 typedef long __kernel_off_t;
8329 typedef int __kernel_pid_t;
8330 typedef unsigned short __kernel_ipc_pid_t;
8331 typedef unsigned short __kernel_uid_t;
8332 typedef unsigned short __kernel_gid_t;
8333 typedef unsigned int __kernel_size_t;
8334 typedef int __kernel_ssize_t;
8335 typedef int __kernel_ptrdiff_t;
8336 typedef long __kernel_time_t;
8337 typedef long __kernel_suseconds_t;
8338 typedef long __kernel_clock_t;
8339 typedef int __kernel_timer_t;
8340 typedef int __kernel_clockid_t;
8341 typedef int __kernel_daddr_t;
8342 typedef char * __kernel_caddr_t;
8343 typedef unsigned short __kernel_uid16_t;
8344 typedef unsigned short __kernel_gid16_t;
8345 typedef unsigned int __kernel_uid32_t;
8346 typedef unsigned int __kernel_gid32_t;
8348 typedef unsigned short __kernel_old_uid_t;
8349 typedef unsigned short __kernel_old_gid_t;
8350 typedef unsigned short __kernel_old_dev_t;
8353 typedef long long __kernel_loff_t;
8359 # 3 "/usr/include/asm/posix_types.h" 2 3 4
8360 # 48 "/usr/include/linux/posix_types.h" 2 3 4
8361 # 9 "/usr/include/linux/types.h" 2 3 4
8362 # 27 "/usr/include/linux/types.h" 3 4
8363 typedef __u16 __le16;
8364 typedef __u16 __be16;
8365 typedef __u32 __le32;
8366 typedef __u32 __be32;
8367 typedef __u64 __le64;
8368 typedef __u64 __be64;
8370 typedef __u16 __sum16;
8371 typedef __u32 __wsum;
8372 # 6 "/usr/include/asm/sigcontext.h" 2 3 4
8373 # 23 "/usr/include/asm/sigcontext.h" 3 4
8374 struct _fpx_sw_bytes {
8376 __u32 extended_size;
8391 # 56 "/usr/include/asm/sigcontext.h" 3 4
8393 unsigned short significand[4];
8394 unsigned short exponent;
8398 unsigned short significand[4];
8399 unsigned short exponent;
8400 unsigned short padding[3];
8404 unsigned long element[4];
8412 unsigned long ipoff;
8413 unsigned long cssel;
8414 unsigned long dataoff;
8415 unsigned long datasel;
8416 struct _fpreg _st[8];
8417 unsigned short status;
8418 unsigned short magic;
8421 unsigned long _fxsr_env[6];
8422 unsigned long mxcsr;
8423 unsigned long reserved;
8424 struct _fpxreg _fxsr_st[8];
8425 struct _xmmreg _xmm[8];
8426 unsigned long padding1[44];
8429 unsigned long padding2[12];
8430 struct _fpx_sw_bytes sw_reserved;
8441 unsigned short gs, __gsh;
8442 unsigned short fs, __fsh;
8443 unsigned short es, __esh;
8444 unsigned short ds, __dsh;
8453 unsigned long trapno;
8456 unsigned short cs, __csh;
8457 unsigned long eflags;
8458 unsigned long esp_at_signal;
8459 unsigned short ss, __ssh;
8460 struct _fpstate *fpstate;
8461 unsigned long oldmask;
8464 # 190 "/usr/include/asm/sigcontext.h" 3 4
8471 struct _ymmh_state {
8473 __u32 ymmh_space[64];
8483 struct _fpstate fpstate;
8484 struct _xsave_hdr xstate_hdr;
8485 struct _ymmh_state ymmh;
8488 # 29 "/usr/include/bits/sigcontext.h" 2 3 4
8492 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
8493 # 33 "/usr/include/bits/sigcontext.h" 2 3 4
8494 # 340 "/usr/include/signal.h" 2 3 4
8497 extern int sigreturn (struct sigcontext *__scp) __attribute__ ((__nothrow__ , __leaf__));
8504 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
8505 # 350 "/usr/include/signal.h" 2 3 4
8510 extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__ , __leaf__));
8512 # 1 "/usr/include/bits/sigstack.h" 1 3 4
8513 # 26 "/usr/include/bits/sigstack.h" 3 4
8529 # 50 "/usr/include/bits/sigstack.h" 3 4
8530 typedef struct sigaltstack
8536 # 357 "/usr/include/signal.h" 2 3 4
8539 # 1 "/usr/include/sys/ucontext.h" 1 3 4
8540 # 23 "/usr/include/sys/ucontext.h" 3 4
8541 # 1 "/usr/include/signal.h" 1 3 4
8542 # 24 "/usr/include/sys/ucontext.h" 2 3 4
8546 # 1 "/usr/include/bits/sigcontext.h" 1 3 4
8547 # 28 "/usr/include/sys/ucontext.h" 2 3 4
8557 typedef greg_t gregset_t[19];
8607 unsigned short int significand[4];
8608 unsigned short int exponent;
8611 struct _libc_fpstate
8613 unsigned long int cw;
8614 unsigned long int sw;
8615 unsigned long int tag;
8616 unsigned long int ipoff;
8617 unsigned long int cssel;
8618 unsigned long int dataoff;
8619 unsigned long int datasel;
8620 struct _libc_fpreg _st[8];
8621 unsigned long int status;
8625 typedef struct _libc_fpstate *fpregset_t;
8634 unsigned long int oldmask;
8635 unsigned long int cr2;
8639 typedef struct ucontext
8641 unsigned long int uc_flags;
8642 struct ucontext *uc_link;
8644 mcontext_t uc_mcontext;
8645 __sigset_t uc_sigmask;
8646 struct _libc_fpstate __fpregs_mem;
8648 # 360 "/usr/include/signal.h" 2 3 4
8654 extern int sigstack (struct sigstack *__ss, struct sigstack *__oss)
8655 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__deprecated__));
8659 extern int sigaltstack (__const struct sigaltstack *__restrict __ss,
8660 struct sigaltstack *__restrict __oss) __attribute__ ((__nothrow__ , __leaf__));
8668 extern int sighold (int __sig) __attribute__ ((__nothrow__ , __leaf__));
8671 extern int sigrelse (int __sig) __attribute__ ((__nothrow__ , __leaf__));
8674 extern int sigignore (int __sig) __attribute__ ((__nothrow__ , __leaf__));
8677 extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __attribute__ ((__nothrow__ , __leaf__));
8684 # 1 "/usr/include/bits/sigthread.h" 1 3 4
8685 # 31 "/usr/include/bits/sigthread.h" 3 4
8686 extern int pthread_sigmask (int __how,
8687 __const __sigset_t *__restrict __newmask,
8688 __sigset_t *__restrict __oldmask)__attribute__ ((__nothrow__ , __leaf__));
8691 extern int pthread_kill (pthread_t __threadid, int __signo) __attribute__ ((__nothrow__ , __leaf__));
8695 extern int pthread_sigqueue (pthread_t __threadid, int __signo,
8696 const union sigval __value) __attribute__ ((__nothrow__ , __leaf__));
8697 # 396 "/usr/include/signal.h" 2 3 4
8704 extern int __libc_current_sigrtmin (void) __attribute__ ((__nothrow__ , __leaf__));
8706 extern int __libc_current_sigrtmax (void) __attribute__ ((__nothrow__ , __leaf__));
8711 # 39 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
8712 # 1 "/usr/include/glib-2.0/glib.h" 1
8713 # 32 "/usr/include/glib-2.0/glib.h"
8714 # 1 "/usr/include/glib-2.0/glib/galloca.h" 1
8715 # 34 "/usr/include/glib-2.0/glib/galloca.h"
8716 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
8717 # 34 "/usr/include/glib-2.0/glib/gtypes.h"
8718 # 1 "/usr/lib/glib-2.0/include/glibconfig.h" 1
8719 # 9 "/usr/lib/glib-2.0/include/glibconfig.h"
8720 # 1 "/usr/include/glib-2.0/glib/gmacros.h" 1
8721 # 40 "/usr/include/glib-2.0/glib/gmacros.h"
8722 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
8723 # 41 "/usr/include/glib-2.0/glib/gmacros.h" 2
8724 # 10 "/usr/lib/glib-2.0/include/glibconfig.h" 2
8726 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include-fixed/limits.h" 1 3 4
8727 # 12 "/usr/lib/glib-2.0/include/glibconfig.h" 2
8728 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/float.h" 1 3 4
8729 # 13 "/usr/lib/glib-2.0/include/glibconfig.h" 2
8730 # 22 "/usr/lib/glib-2.0/include/glibconfig.h"
8732 # 38 "/usr/lib/glib-2.0/include/glibconfig.h"
8733 typedef signed char gint8;
8734 typedef unsigned char guint8;
8735 typedef signed short gint16;
8736 typedef unsigned short guint16;
8740 typedef signed int gint32;
8741 typedef unsigned int guint32;
8747 __extension__ typedef signed long long gint64;
8748 __extension__ typedef unsigned long long guint64;
8749 # 65 "/usr/lib/glib-2.0/include/glibconfig.h"
8750 typedef signed int gssize;
8751 typedef unsigned int gsize;
8752 # 75 "/usr/lib/glib-2.0/include/glibconfig.h"
8753 typedef gint64 goffset;
8754 # 90 "/usr/lib/glib-2.0/include/glibconfig.h"
8755 typedef signed int gintptr;
8756 typedef unsigned int guintptr;
8757 # 197 "/usr/lib/glib-2.0/include/glibconfig.h"
8759 # 207 "/usr/lib/glib-2.0/include/glibconfig.h"
8761 # 35 "/usr/include/glib-2.0/glib/gtypes.h" 2
8762 # 1 "/usr/include/glib-2.0/glib/gmacros.h" 1
8763 # 36 "/usr/include/glib-2.0/glib/gtypes.h" 2
8764 # 1 "/usr/include/glib-2.0/glib/gversionmacros.h" 1
8765 # 37 "/usr/include/glib-2.0/glib/gtypes.h" 2
8769 # 48 "/usr/include/glib-2.0/glib/gtypes.h"
8771 typedef short gshort;
8774 typedef gint gboolean;
8776 typedef unsigned char guchar;
8777 typedef unsigned short gushort;
8778 typedef unsigned long gulong;
8779 typedef unsigned int guint;
8781 typedef float gfloat;
8782 typedef double gdouble;
8783 # 79 "/usr/include/glib-2.0/glib/gtypes.h"
8784 typedef void* gpointer;
8785 typedef const void *gconstpointer;
8787 typedef gint (*GCompareFunc) (gconstpointer a,
8789 typedef gint (*GCompareDataFunc) (gconstpointer a,
8791 gpointer user_data);
8792 typedef gboolean (*GEqualFunc) (gconstpointer a,
8794 typedef void (*GDestroyNotify) (gpointer data);
8795 typedef void (*GFunc) (gpointer data,
8796 gpointer user_data);
8797 typedef guint (*GHashFunc) (gconstpointer key);
8798 typedef void (*GHFunc) (gpointer key,
8800 gpointer user_data);
8801 # 105 "/usr/include/glib-2.0/glib/gtypes.h"
8802 typedef void (*GFreeFunc) (gpointer data);
8803 # 119 "/usr/include/glib-2.0/glib/gtypes.h"
8804 typedef const gchar * (*GTranslateFunc) (const gchar *str,
8806 # 401 "/usr/include/glib-2.0/glib/gtypes.h"
8807 typedef union _GDoubleIEEE754 GDoubleIEEE754;
8808 typedef union _GFloatIEEE754 GFloatIEEE754;
8814 union _GFloatIEEE754
8818 guint mantissa : 23;
8819 guint biased_exponent : 8;
8823 union _GDoubleIEEE754
8827 guint mantissa_low : 32;
8828 guint mantissa_high : 20;
8829 guint biased_exponent : 11;
8833 # 451 "/usr/include/glib-2.0/glib/gtypes.h"
8834 typedef struct _GTimeVal GTimeVal;
8843 # 35 "/usr/include/glib-2.0/glib/galloca.h" 2
8844 # 33 "/usr/include/glib-2.0/glib.h" 2
8845 # 1 "/usr/include/glib-2.0/glib/garray.h" 1
8846 # 34 "/usr/include/glib-2.0/glib/garray.h"
8847 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
8848 # 35 "/usr/include/glib-2.0/glib/garray.h" 2
8852 typedef struct _GBytes GBytes;
8853 typedef struct _GArray GArray;
8854 typedef struct _GByteArray GByteArray;
8855 typedef struct _GPtrArray GPtrArray;
8874 # 71 "/usr/include/glib-2.0/glib/garray.h"
8875 GArray* g_array_new (gboolean zero_terminated,
8877 guint element_size);
8878 GArray* g_array_sized_new (gboolean zero_terminated,
8881 guint reserved_size);
8882 gchar* g_array_free (GArray *array,
8883 gboolean free_segment);
8884 GArray *g_array_ref (GArray *array);
8885 void g_array_unref (GArray *array);
8886 guint g_array_get_element_size (GArray *array);
8887 GArray* g_array_append_vals (GArray *array,
8890 GArray* g_array_prepend_vals (GArray *array,
8893 GArray* g_array_insert_vals (GArray *array,
8897 GArray* g_array_set_size (GArray *array,
8899 GArray* g_array_remove_index (GArray *array,
8901 GArray* g_array_remove_index_fast (GArray *array,
8903 GArray* g_array_remove_range (GArray *array,
8906 void g_array_sort (GArray *array,
8907 GCompareFunc compare_func);
8908 void g_array_sort_with_data (GArray *array,
8909 GCompareDataFunc compare_func,
8910 gpointer user_data);
8911 void g_array_set_clear_func (GArray *array,
8912 GDestroyNotify clear_func);
8919 GPtrArray* g_ptr_array_new (void);
8920 GPtrArray* g_ptr_array_new_with_free_func (GDestroyNotify element_free_func);
8921 GPtrArray* g_ptr_array_sized_new (guint reserved_size);
8922 GPtrArray* g_ptr_array_new_full (guint reserved_size,
8923 GDestroyNotify element_free_func);
8924 gpointer* g_ptr_array_free (GPtrArray *array,
8926 GPtrArray* g_ptr_array_ref (GPtrArray *array);
8927 void g_ptr_array_unref (GPtrArray *array);
8928 void g_ptr_array_set_free_func (GPtrArray *array,
8929 GDestroyNotify element_free_func);
8930 void g_ptr_array_set_size (GPtrArray *array,
8932 gpointer g_ptr_array_remove_index (GPtrArray *array,
8934 gpointer g_ptr_array_remove_index_fast (GPtrArray *array,
8936 gboolean g_ptr_array_remove (GPtrArray *array,
8938 gboolean g_ptr_array_remove_fast (GPtrArray *array,
8940 void g_ptr_array_remove_range (GPtrArray *array,
8943 void g_ptr_array_add (GPtrArray *array,
8945 void g_ptr_array_sort (GPtrArray *array,
8946 GCompareFunc compare_func);
8947 void g_ptr_array_sort_with_data (GPtrArray *array,
8948 GCompareDataFunc compare_func,
8949 gpointer user_data);
8950 void g_ptr_array_foreach (GPtrArray *array,
8952 gpointer user_data);
8959 GByteArray* g_byte_array_new (void);
8960 GByteArray* g_byte_array_new_take (guint8 *data,
8962 GByteArray* g_byte_array_sized_new (guint reserved_size);
8963 guint8* g_byte_array_free (GByteArray *array,
8964 gboolean free_segment);
8965 GBytes* g_byte_array_free_to_bytes (GByteArray *array);
8966 GByteArray *g_byte_array_ref (GByteArray *array);
8967 void g_byte_array_unref (GByteArray *array);
8968 GByteArray* g_byte_array_append (GByteArray *array,
8971 GByteArray* g_byte_array_prepend (GByteArray *array,
8974 GByteArray* g_byte_array_set_size (GByteArray *array,
8976 GByteArray* g_byte_array_remove_index (GByteArray *array,
8978 GByteArray* g_byte_array_remove_index_fast (GByteArray *array,
8980 GByteArray* g_byte_array_remove_range (GByteArray *array,
8983 void g_byte_array_sort (GByteArray *array,
8984 GCompareFunc compare_func);
8985 void g_byte_array_sort_with_data (GByteArray *array,
8986 GCompareDataFunc compare_func,
8987 gpointer user_data);
8990 # 34 "/usr/include/glib-2.0/glib.h" 2
8991 # 1 "/usr/include/glib-2.0/glib/gasyncqueue.h" 1
8992 # 34 "/usr/include/glib-2.0/glib/gasyncqueue.h"
8993 # 1 "/usr/include/glib-2.0/glib/gthread.h" 1
8994 # 34 "/usr/include/glib-2.0/glib/gthread.h"
8995 # 1 "/usr/include/glib-2.0/glib/gatomic.h" 1
8996 # 29 "/usr/include/glib-2.0/glib/gatomic.h"
8997 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
8998 # 30 "/usr/include/glib-2.0/glib/gatomic.h" 2
9002 gint g_atomic_int_get (volatile gint *atomic);
9003 void g_atomic_int_set (volatile gint *atomic,
9005 void g_atomic_int_inc (volatile gint *atomic);
9006 gboolean g_atomic_int_dec_and_test (volatile gint *atomic);
9007 gboolean g_atomic_int_compare_and_exchange (volatile gint *atomic,
9010 gint g_atomic_int_add (volatile gint *atomic,
9013 guint g_atomic_int_and (volatile guint *atomic,
9016 guint g_atomic_int_or (volatile guint *atomic,
9018 guint g_atomic_int_xor (volatile guint *atomic,
9021 gpointer g_atomic_pointer_get (volatile void *atomic);
9022 void g_atomic_pointer_set (volatile void *atomic,
9024 gboolean g_atomic_pointer_compare_and_exchange (volatile void *atomic,
9027 gssize g_atomic_pointer_add (volatile void *atomic,
9030 gsize g_atomic_pointer_and (volatile void *atomic,
9033 gsize g_atomic_pointer_or (volatile void *atomic,
9035 gsize g_atomic_pointer_xor (volatile void *atomic,
9038 __attribute__((__deprecated__("Use '" "g_atomic_add" "' instead")))
9039 gint g_atomic_int_exchange_and_add (volatile gint *atomic,
9043 # 35 "/usr/include/glib-2.0/glib/gthread.h" 2
9044 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
9045 # 30 "/usr/include/glib-2.0/glib/gerror.h"
9046 # 1 "/usr/include/glib-2.0/glib/gquark.h" 1
9047 # 34 "/usr/include/glib-2.0/glib/gquark.h"
9048 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9049 # 35 "/usr/include/glib-2.0/glib/gquark.h" 2
9053 typedef guint32 GQuark;
9057 GQuark g_quark_try_string (const gchar *string);
9058 GQuark g_quark_from_static_string (const gchar *string);
9059 GQuark g_quark_from_string (const gchar *string);
9060 const gchar * g_quark_to_string (GQuark quark) __attribute__((__const__));
9062 const gchar * g_intern_string (const gchar *string);
9063 const gchar * g_intern_static_string (const gchar *string);
9066 # 31 "/usr/include/glib-2.0/glib/gerror.h" 2
9069 # 43 "/usr/include/glib-2.0/glib/gerror.h"
9070 typedef struct _GError GError;
9079 GError* g_error_new (GQuark domain,
9081 const gchar *format,
9082 ...) __attribute__((__format__ (__printf__, 3, 4)));
9084 GError* g_error_new_literal (GQuark domain,
9086 const gchar *message);
9087 GError* g_error_new_valist (GQuark domain,
9089 const gchar *format,
9092 void g_error_free (GError *error);
9093 GError* g_error_copy (const GError *error);
9095 gboolean g_error_matches (const GError *error,
9102 void g_set_error (GError **err,
9105 const gchar *format,
9106 ...) __attribute__((__format__ (__printf__, 4, 5)));
9108 void g_set_error_literal (GError **err,
9111 const gchar *message);
9115 void g_propagate_error (GError **dest,
9119 void g_clear_error (GError **err);
9122 void g_prefix_error (GError **err,
9123 const gchar *format,
9124 ...) __attribute__((__format__ (__printf__, 2, 3)));
9127 void g_propagate_prefixed_error (GError **dest,
9129 const gchar *format,
9130 ...) __attribute__((__format__ (__printf__, 3, 4)));
9133 # 36 "/usr/include/glib-2.0/glib/gthread.h" 2
9138 GQuark g_thread_error_quark (void);
9142 G_THREAD_ERROR_AGAIN
9145 typedef gpointer (*GThreadFunc) (gpointer data);
9147 typedef struct _GThread GThread;
9149 typedef union _GMutex GMutex;
9150 typedef struct _GRecMutex GRecMutex;
9151 typedef struct _GRWLock GRWLock;
9152 typedef struct _GCond GCond;
9153 typedef struct _GPrivate GPrivate;
9154 typedef struct _GOnce GOnce;
9189 GDestroyNotify notify;
9195 G_ONCE_STATUS_NOTCALLED,
9196 G_ONCE_STATUS_PROGRESS,
9203 volatile GOnceStatus status;
9204 volatile gpointer retval;
9206 # 140 "/usr/include/glib-2.0/glib/gthread.h"
9207 GThread * g_thread_ref (GThread *thread);
9208 void g_thread_unref (GThread *thread);
9209 GThread * g_thread_new (const gchar *name,
9212 GThread * g_thread_try_new (const gchar *name,
9216 GThread * g_thread_self (void);
9217 void g_thread_exit (gpointer retval);
9218 gpointer g_thread_join (GThread *thread);
9219 void g_thread_yield (void);
9222 void g_mutex_init (GMutex *mutex);
9223 void g_mutex_clear (GMutex *mutex);
9224 void g_mutex_lock (GMutex *mutex);
9225 gboolean g_mutex_trylock (GMutex *mutex);
9226 void g_mutex_unlock (GMutex *mutex);
9228 void g_rw_lock_init (GRWLock *rw_lock);
9229 void g_rw_lock_clear (GRWLock *rw_lock);
9230 void g_rw_lock_writer_lock (GRWLock *rw_lock);
9231 gboolean g_rw_lock_writer_trylock (GRWLock *rw_lock);
9232 void g_rw_lock_writer_unlock (GRWLock *rw_lock);
9233 void g_rw_lock_reader_lock (GRWLock *rw_lock);
9234 gboolean g_rw_lock_reader_trylock (GRWLock *rw_lock);
9235 void g_rw_lock_reader_unlock (GRWLock *rw_lock);
9237 void g_rec_mutex_init (GRecMutex *rec_mutex);
9238 void g_rec_mutex_clear (GRecMutex *rec_mutex);
9239 void g_rec_mutex_lock (GRecMutex *rec_mutex);
9240 gboolean g_rec_mutex_trylock (GRecMutex *rec_mutex);
9241 void g_rec_mutex_unlock (GRecMutex *rec_mutex);
9243 void g_cond_init (GCond *cond);
9244 void g_cond_clear (GCond *cond);
9245 void g_cond_wait (GCond *cond,
9247 void g_cond_signal (GCond *cond);
9248 void g_cond_broadcast (GCond *cond);
9249 gboolean g_cond_wait_until (GCond *cond,
9253 gpointer g_private_get (GPrivate *key);
9254 void g_private_set (GPrivate *key,
9256 void g_private_replace (GPrivate *key,
9259 gpointer g_once_impl (GOnce *once,
9262 gboolean g_once_init_enter (volatile void *location);
9263 void g_once_init_leave (volatile void *location,
9265 # 229 "/usr/include/glib-2.0/glib/gthread.h"
9267 # 35 "/usr/include/glib-2.0/glib/gasyncqueue.h" 2
9271 typedef struct _GAsyncQueue GAsyncQueue;
9273 GAsyncQueue *g_async_queue_new (void);
9274 GAsyncQueue *g_async_queue_new_full (GDestroyNotify item_free_func);
9275 void g_async_queue_lock (GAsyncQueue *queue);
9276 void g_async_queue_unlock (GAsyncQueue *queue);
9277 GAsyncQueue *g_async_queue_ref (GAsyncQueue *queue);
9278 void g_async_queue_unref (GAsyncQueue *queue);
9280 __attribute__((__deprecated__("Use '" "g_async_queue_ref" "' instead")))
9281 void g_async_queue_ref_unlocked (GAsyncQueue *queue);
9283 __attribute__((__deprecated__("Use '" "g_async_queue_unref" "' instead")))
9284 void g_async_queue_unref_and_unlock (GAsyncQueue *queue);
9286 void g_async_queue_push (GAsyncQueue *queue,
9288 void g_async_queue_push_unlocked (GAsyncQueue *queue,
9290 void g_async_queue_push_sorted (GAsyncQueue *queue,
9292 GCompareDataFunc func,
9293 gpointer user_data);
9294 void g_async_queue_push_sorted_unlocked (GAsyncQueue *queue,
9296 GCompareDataFunc func,
9297 gpointer user_data);
9298 gpointer g_async_queue_pop (GAsyncQueue *queue);
9299 gpointer g_async_queue_pop_unlocked (GAsyncQueue *queue);
9300 gpointer g_async_queue_try_pop (GAsyncQueue *queue);
9301 gpointer g_async_queue_try_pop_unlocked (GAsyncQueue *queue);
9302 gpointer g_async_queue_timeout_pop (GAsyncQueue *queue,
9304 gpointer g_async_queue_timeout_pop_unlocked (GAsyncQueue *queue,
9306 gint g_async_queue_length (GAsyncQueue *queue);
9307 gint g_async_queue_length_unlocked (GAsyncQueue *queue);
9308 void g_async_queue_sort (GAsyncQueue *queue,
9309 GCompareDataFunc func,
9310 gpointer user_data);
9311 void g_async_queue_sort_unlocked (GAsyncQueue *queue,
9312 GCompareDataFunc func,
9313 gpointer user_data);
9315 __attribute__((__deprecated__("Use '" "g_async_queue_timeout_pop" "' instead")))
9316 gpointer g_async_queue_timed_pop (GAsyncQueue *queue,
9317 GTimeVal *end_time);
9318 __attribute__((__deprecated__("Use '" "g_async_queue_timeout_pop_unlocked" "' instead")))
9319 gpointer g_async_queue_timed_pop_unlocked (GAsyncQueue *queue,
9320 GTimeVal *end_time);
9323 # 35 "/usr/include/glib-2.0/glib.h" 2
9324 # 1 "/usr/include/glib-2.0/glib/gatomic.h" 1
9325 # 36 "/usr/include/glib-2.0/glib.h" 2
9326 # 1 "/usr/include/glib-2.0/glib/gbacktrace.h" 1
9327 # 34 "/usr/include/glib-2.0/glib/gbacktrace.h"
9328 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9329 # 35 "/usr/include/glib-2.0/glib/gbacktrace.h" 2
9334 void g_on_error_query (const gchar *prg_name);
9335 void g_on_error_stack_trace (const gchar *prg_name);
9336 # 62 "/usr/include/glib-2.0/glib/gbacktrace.h"
9338 # 37 "/usr/include/glib-2.0/glib.h" 2
9339 # 1 "/usr/include/glib-2.0/glib/gbase64.h" 1
9340 # 28 "/usr/include/glib-2.0/glib/gbase64.h"
9341 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9342 # 29 "/usr/include/glib-2.0/glib/gbase64.h" 2
9346 gsize g_base64_encode_step (const guchar *in,
9348 gboolean break_lines,
9352 gsize g_base64_encode_close (gboolean break_lines,
9356 gchar* g_base64_encode (const guchar *data,
9357 gsize len) __attribute__((__malloc__));
9358 gsize g_base64_decode_step (const gchar *in,
9363 guchar *g_base64_decode (const gchar *text,
9364 gsize *out_len) __attribute__((__malloc__));
9365 guchar *g_base64_decode_inplace (gchar *text,
9370 # 38 "/usr/include/glib-2.0/glib.h" 2
9371 # 1 "/usr/include/glib-2.0/glib/gbitlock.h" 1
9372 # 26 "/usr/include/glib-2.0/glib/gbitlock.h"
9373 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9374 # 27 "/usr/include/glib-2.0/glib/gbitlock.h" 2
9382 void g_bit_lock (volatile gint *address,
9384 gboolean g_bit_trylock (volatile gint *address,
9386 void g_bit_unlock (volatile gint *address,
9389 void g_pointer_bit_lock (volatile void *address,
9391 gboolean g_pointer_bit_trylock (volatile void *address,
9393 void g_pointer_bit_unlock (volatile void *address,
9395 # 70 "/usr/include/glib-2.0/glib/gbitlock.h"
9397 # 39 "/usr/include/glib-2.0/glib.h" 2
9398 # 1 "/usr/include/glib-2.0/glib/gbookmarkfile.h" 1
9399 # 27 "/usr/include/glib-2.0/glib/gbookmarkfile.h"
9400 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
9401 # 28 "/usr/include/glib-2.0/glib/gbookmarkfile.h" 2
9405 # 57 "/usr/include/glib-2.0/glib/gbookmarkfile.h"
9408 G_BOOKMARK_FILE_ERROR_INVALID_URI,
9409 G_BOOKMARK_FILE_ERROR_INVALID_VALUE,
9410 G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED,
9411 G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND,
9412 G_BOOKMARK_FILE_ERROR_READ,
9413 G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING,
9414 G_BOOKMARK_FILE_ERROR_WRITE,
9415 G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND
9416 } GBookmarkFileError;
9418 GQuark g_bookmark_file_error_quark (void);
9426 typedef struct _GBookmarkFile GBookmarkFile;
9428 GBookmarkFile *g_bookmark_file_new (void);
9429 void g_bookmark_file_free (GBookmarkFile *bookmark);
9431 gboolean g_bookmark_file_load_from_file (GBookmarkFile *bookmark,
9432 const gchar *filename,
9434 gboolean g_bookmark_file_load_from_data (GBookmarkFile *bookmark,
9438 gboolean g_bookmark_file_load_from_data_dirs (GBookmarkFile *bookmark,
9442 gchar * g_bookmark_file_to_data (GBookmarkFile *bookmark,
9444 GError **error) __attribute__((__malloc__));
9445 gboolean g_bookmark_file_to_file (GBookmarkFile *bookmark,
9446 const gchar *filename,
9449 void g_bookmark_file_set_title (GBookmarkFile *bookmark,
9451 const gchar *title);
9452 gchar * g_bookmark_file_get_title (GBookmarkFile *bookmark,
9454 GError **error) __attribute__((__malloc__));
9455 void g_bookmark_file_set_description (GBookmarkFile *bookmark,
9457 const gchar *description);
9458 gchar * g_bookmark_file_get_description (GBookmarkFile *bookmark,
9460 GError **error) __attribute__((__malloc__));
9461 void g_bookmark_file_set_mime_type (GBookmarkFile *bookmark,
9463 const gchar *mime_type);
9464 gchar * g_bookmark_file_get_mime_type (GBookmarkFile *bookmark,
9466 GError **error) __attribute__((__malloc__));
9467 void g_bookmark_file_set_groups (GBookmarkFile *bookmark,
9469 const gchar **groups,
9471 void g_bookmark_file_add_group (GBookmarkFile *bookmark,
9473 const gchar *group);
9474 gboolean g_bookmark_file_has_group (GBookmarkFile *bookmark,
9478 gchar ** g_bookmark_file_get_groups (GBookmarkFile *bookmark,
9481 GError **error) __attribute__((__malloc__));
9482 void g_bookmark_file_add_application (GBookmarkFile *bookmark,
9486 gboolean g_bookmark_file_has_application (GBookmarkFile *bookmark,
9490 gchar ** g_bookmark_file_get_applications (GBookmarkFile *bookmark,
9493 GError **error) __attribute__((__malloc__));
9494 gboolean g_bookmark_file_set_app_info (GBookmarkFile *bookmark,
9501 gboolean g_bookmark_file_get_app_info (GBookmarkFile *bookmark,
9508 void g_bookmark_file_set_is_private (GBookmarkFile *bookmark,
9510 gboolean is_private);
9511 gboolean g_bookmark_file_get_is_private (GBookmarkFile *bookmark,
9514 void g_bookmark_file_set_icon (GBookmarkFile *bookmark,
9517 const gchar *mime_type);
9518 gboolean g_bookmark_file_get_icon (GBookmarkFile *bookmark,
9523 void g_bookmark_file_set_added (GBookmarkFile *bookmark,
9526 time_t g_bookmark_file_get_added (GBookmarkFile *bookmark,
9529 void g_bookmark_file_set_modified (GBookmarkFile *bookmark,
9532 time_t g_bookmark_file_get_modified (GBookmarkFile *bookmark,
9535 void g_bookmark_file_set_visited (GBookmarkFile *bookmark,
9538 time_t g_bookmark_file_get_visited (GBookmarkFile *bookmark,
9541 gboolean g_bookmark_file_has_item (GBookmarkFile *bookmark,
9543 gint g_bookmark_file_get_size (GBookmarkFile *bookmark);
9544 gchar ** g_bookmark_file_get_uris (GBookmarkFile *bookmark,
9545 gsize *length) __attribute__((__malloc__));
9546 gboolean g_bookmark_file_remove_group (GBookmarkFile *bookmark,
9550 gboolean g_bookmark_file_remove_application (GBookmarkFile *bookmark,
9554 gboolean g_bookmark_file_remove_item (GBookmarkFile *bookmark,
9557 gboolean g_bookmark_file_move_item (GBookmarkFile *bookmark,
9558 const gchar *old_uri,
9559 const gchar *new_uri,
9563 # 40 "/usr/include/glib-2.0/glib.h" 2
9564 # 1 "/usr/include/glib-2.0/glib/gbytes.h" 1
9565 # 31 "/usr/include/glib-2.0/glib/gbytes.h"
9566 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9567 # 32 "/usr/include/glib-2.0/glib/gbytes.h" 2
9568 # 1 "/usr/include/glib-2.0/glib/garray.h" 1
9569 # 33 "/usr/include/glib-2.0/glib/gbytes.h" 2
9573 GBytes * g_bytes_new (gconstpointer data,
9576 GBytes * g_bytes_new_take (gpointer data,
9579 GBytes * g_bytes_new_static (gconstpointer data,
9582 GBytes * g_bytes_new_with_free_func (gconstpointer data,
9584 GDestroyNotify free_func,
9585 gpointer user_data);
9587 GBytes * g_bytes_new_from_bytes (GBytes *bytes,
9591 gconstpointer g_bytes_get_data (GBytes *bytes,
9594 gsize g_bytes_get_size (GBytes *bytes);
9596 GBytes * g_bytes_ref (GBytes *bytes);
9598 void g_bytes_unref (GBytes *bytes);
9600 gpointer g_bytes_unref_to_data (GBytes *bytes,
9603 GByteArray * g_bytes_unref_to_array (GBytes *bytes);
9605 guint g_bytes_hash (gconstpointer bytes);
9607 gboolean g_bytes_equal (gconstpointer bytes1,
9608 gconstpointer bytes2);
9610 gint g_bytes_compare (gconstpointer bytes1,
9611 gconstpointer bytes2);
9614 # 41 "/usr/include/glib-2.0/glib.h" 2
9615 # 1 "/usr/include/glib-2.0/glib/gcharset.h" 1
9616 # 28 "/usr/include/glib-2.0/glib/gcharset.h"
9617 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9618 # 29 "/usr/include/glib-2.0/glib/gcharset.h" 2
9622 gboolean g_get_charset (const char **charset);
9623 gchar * g_get_codeset (void);
9625 const gchar * const * g_get_language_names (void);
9626 gchar ** g_get_locale_variants (const gchar *locale);
9629 # 42 "/usr/include/glib-2.0/glib.h" 2
9630 # 1 "/usr/include/glib-2.0/glib/gchecksum.h" 1
9631 # 28 "/usr/include/glib-2.0/glib/gchecksum.h"
9632 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9633 # 29 "/usr/include/glib-2.0/glib/gchecksum.h" 2
9636 # 46 "/usr/include/glib-2.0/glib/gchecksum.h"
9642 # 61 "/usr/include/glib-2.0/glib/gchecksum.h"
9643 typedef struct _GChecksum GChecksum;
9645 gssize g_checksum_type_get_length (GChecksumType checksum_type);
9647 GChecksum * g_checksum_new (GChecksumType checksum_type);
9648 void g_checksum_reset (GChecksum *checksum);
9649 GChecksum * g_checksum_copy (const GChecksum *checksum);
9650 void g_checksum_free (GChecksum *checksum);
9651 void g_checksum_update (GChecksum *checksum,
9654 const gchar * g_checksum_get_string (GChecksum *checksum);
9655 void g_checksum_get_digest (GChecksum *checksum,
9659 gchar *g_compute_checksum_for_data (GChecksumType checksum_type,
9662 gchar *g_compute_checksum_for_string (GChecksumType checksum_type,
9667 # 43 "/usr/include/glib-2.0/glib.h" 2
9668 # 1 "/usr/include/glib-2.0/glib/gconvert.h" 1
9669 # 34 "/usr/include/glib-2.0/glib/gconvert.h"
9670 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
9671 # 35 "/usr/include/glib-2.0/glib/gconvert.h" 2
9674 # 50 "/usr/include/glib-2.0/glib/gconvert.h"
9677 G_CONVERT_ERROR_NO_CONVERSION,
9678 G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
9679 G_CONVERT_ERROR_FAILED,
9680 G_CONVERT_ERROR_PARTIAL_INPUT,
9681 G_CONVERT_ERROR_BAD_URI,
9682 G_CONVERT_ERROR_NOT_ABSOLUTE_PATH
9684 # 68 "/usr/include/glib-2.0/glib/gconvert.h"
9685 GQuark g_convert_error_quark (void);
9686 # 77 "/usr/include/glib-2.0/glib/gconvert.h"
9687 typedef struct _GIConv *GIConv;
9689 GIConv g_iconv_open (const gchar *to_codeset,
9690 const gchar *from_codeset);
9691 gsize g_iconv (GIConv converter,
9693 gsize *inbytes_left,
9695 gsize *outbytes_left);
9696 gint g_iconv_close (GIConv converter);
9699 gchar* g_convert (const gchar *str,
9701 const gchar *to_codeset,
9702 const gchar *from_codeset,
9704 gsize *bytes_written,
9705 GError **error) __attribute__((__malloc__));
9706 gchar* g_convert_with_iconv (const gchar *str,
9710 gsize *bytes_written,
9711 GError **error) __attribute__((__malloc__));
9712 gchar* g_convert_with_fallback (const gchar *str,
9714 const gchar *to_codeset,
9715 const gchar *from_codeset,
9716 const gchar *fallback,
9718 gsize *bytes_written,
9719 GError **error) __attribute__((__malloc__));
9724 gchar* g_locale_to_utf8 (const gchar *opsysstring,
9727 gsize *bytes_written,
9728 GError **error) __attribute__((__malloc__));
9729 gchar* g_locale_from_utf8 (const gchar *utf8string,
9732 gsize *bytes_written,
9733 GError **error) __attribute__((__malloc__));
9734 # 137 "/usr/include/glib-2.0/glib/gconvert.h"
9735 gchar* g_filename_to_utf8 (const gchar *opsysstring,
9738 gsize *bytes_written,
9739 GError **error) __attribute__((__malloc__));
9740 gchar* g_filename_from_utf8 (const gchar *utf8string,
9743 gsize *bytes_written,
9744 GError **error) __attribute__((__malloc__));
9746 gchar *g_filename_from_uri (const gchar *uri,
9748 GError **error) __attribute__((__malloc__));
9750 gchar *g_filename_to_uri (const gchar *filename,
9751 const gchar *hostname,
9752 GError **error) __attribute__((__malloc__));
9753 gchar *g_filename_display_name (const gchar *filename) __attribute__((__malloc__));
9754 gboolean g_get_filename_charsets (const gchar ***charsets);
9756 gchar *g_filename_display_basename (const gchar *filename) __attribute__((__malloc__));
9758 gchar **g_uri_list_extract_uris (const gchar *uri_list) __attribute__((__malloc__));
9761 # 44 "/usr/include/glib-2.0/glib.h" 2
9762 # 1 "/usr/include/glib-2.0/glib/gdataset.h" 1
9763 # 34 "/usr/include/glib-2.0/glib/gdataset.h"
9764 # 1 "/usr/include/glib-2.0/glib/gquark.h" 1
9765 # 35 "/usr/include/glib-2.0/glib/gdataset.h" 2
9769 typedef struct _GData GData;
9771 typedef void (*GDataForeachFunc) (GQuark key_id,
9773 gpointer user_data);
9777 void g_datalist_init (GData **datalist);
9778 void g_datalist_clear (GData **datalist);
9779 gpointer g_datalist_id_get_data (GData **datalist,
9781 void g_datalist_id_set_data_full (GData **datalist,
9784 GDestroyNotify destroy_func);
9785 gpointer g_datalist_id_remove_no_notify (GData **datalist,
9787 void g_datalist_foreach (GData **datalist,
9788 GDataForeachFunc func,
9789 gpointer user_data);
9790 # 69 "/usr/include/glib-2.0/glib/gdataset.h"
9791 void g_datalist_set_flags (GData **datalist,
9793 void g_datalist_unset_flags (GData **datalist,
9795 guint g_datalist_get_flags (GData **datalist);
9796 # 91 "/usr/include/glib-2.0/glib/gdataset.h"
9797 void g_dataset_destroy (gconstpointer dataset_location);
9798 gpointer g_dataset_id_get_data (gconstpointer dataset_location,
9800 gpointer g_datalist_get_data (GData **datalist,
9802 void g_dataset_id_set_data_full (gconstpointer dataset_location,
9805 GDestroyNotify destroy_func);
9806 gpointer g_dataset_id_remove_no_notify (gconstpointer dataset_location,
9808 void g_dataset_foreach (gconstpointer dataset_location,
9809 GDataForeachFunc func,
9810 gpointer user_data);
9811 # 120 "/usr/include/glib-2.0/glib/gdataset.h"
9813 # 45 "/usr/include/glib-2.0/glib.h" 2
9814 # 1 "/usr/include/glib-2.0/glib/gdate.h" 1
9815 # 36 "/usr/include/glib-2.0/glib/gdate.h"
9816 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
9817 # 37 "/usr/include/glib-2.0/glib/gdate.h" 2
9818 # 1 "/usr/include/glib-2.0/glib/gquark.h" 1
9819 # 38 "/usr/include/glib-2.0/glib/gdate.h" 2
9822 # 50 "/usr/include/glib-2.0/glib/gdate.h"
9823 typedef gint32 GTime;
9824 typedef guint16 GDateYear;
9825 typedef guint8 GDateDay;
9826 typedef struct _GDate GDate;
9839 G_DATE_BAD_WEEKDAY = 0,
9842 G_DATE_WEDNESDAY = 3,
9843 G_DATE_THURSDAY = 4,
9845 G_DATE_SATURDAY = 6,
9850 G_DATE_BAD_MONTH = 0,
9852 G_DATE_FEBRUARY = 2,
9859 G_DATE_SEPTEMBER = 9,
9860 G_DATE_OCTOBER = 10,
9861 G_DATE_NOVEMBER = 11,
9862 G_DATE_DECEMBER = 12
9864 # 101 "/usr/include/glib-2.0/glib/gdate.h"
9867 guint julian_days : 32;
9886 GDate* g_date_new (void);
9887 GDate* g_date_new_dmy (GDateDay day,
9890 GDate* g_date_new_julian (guint32 julian_day);
9891 void g_date_free (GDate *date);
9898 gboolean g_date_valid (const GDate *date);
9899 gboolean g_date_valid_day (GDateDay day) __attribute__((__const__));
9900 gboolean g_date_valid_month (GDateMonth month) __attribute__((__const__));
9901 gboolean g_date_valid_year (GDateYear year) __attribute__((__const__));
9902 gboolean g_date_valid_weekday (GDateWeekday weekday) __attribute__((__const__));
9903 gboolean g_date_valid_julian (guint32 julian_date) __attribute__((__const__));
9904 gboolean g_date_valid_dmy (GDateDay day,
9906 GDateYear year) __attribute__((__const__));
9908 GDateWeekday g_date_get_weekday (const GDate *date);
9909 GDateMonth g_date_get_month (const GDate *date);
9910 GDateYear g_date_get_year (const GDate *date);
9911 GDateDay g_date_get_day (const GDate *date);
9912 guint32 g_date_get_julian (const GDate *date);
9913 guint g_date_get_day_of_year (const GDate *date);
9920 guint g_date_get_monday_week_of_year (const GDate *date);
9921 guint g_date_get_sunday_week_of_year (const GDate *date);
9922 guint g_date_get_iso8601_week_of_year (const GDate *date);
9928 void g_date_clear (GDate *date,
9935 void g_date_set_parse (GDate *date,
9937 void g_date_set_time_t (GDate *date,
9939 void g_date_set_time_val (GDate *date,
9942 __attribute__((__deprecated__("Use '" "g_date_set_time_t" "' instead")))
9943 void g_date_set_time (GDate *date,
9946 void g_date_set_month (GDate *date,
9948 void g_date_set_day (GDate *date,
9950 void g_date_set_year (GDate *date,
9952 void g_date_set_dmy (GDate *date,
9956 void g_date_set_julian (GDate *date,
9957 guint32 julian_date);
9958 gboolean g_date_is_first_of_month (const GDate *date);
9959 gboolean g_date_is_last_of_month (const GDate *date);
9962 void g_date_add_days (GDate *date,
9964 void g_date_subtract_days (GDate *date,
9968 void g_date_add_months (GDate *date,
9970 void g_date_subtract_months (GDate *date,
9974 void g_date_add_years (GDate *date,
9976 void g_date_subtract_years (GDate *date,
9978 gboolean g_date_is_leap_year (GDateYear year) __attribute__((__const__));
9979 guint8 g_date_get_days_in_month (GDateMonth month,
9980 GDateYear year) __attribute__((__const__));
9981 guint8 g_date_get_monday_weeks_in_year (GDateYear year) __attribute__((__const__));
9982 guint8 g_date_get_sunday_weeks_in_year (GDateYear year) __attribute__((__const__));
9986 gint g_date_days_between (const GDate *date1,
9987 const GDate *date2);
9990 gint g_date_compare (const GDate *lhs,
9992 void g_date_to_struct_tm (const GDate *date,
9995 void g_date_clamp (GDate *date,
9996 const GDate *min_date,
9997 const GDate *max_date);
10000 void g_date_order (GDate *date1, GDate *date2);
10005 gsize g_date_strftime (gchar *s,
10007 const gchar *format,
10008 const GDate *date);
10009 # 262 "/usr/include/glib-2.0/glib/gdate.h"
10011 # 46 "/usr/include/glib-2.0/glib.h" 2
10012 # 1 "/usr/include/glib-2.0/glib/gdatetime.h" 1
10013 # 33 "/usr/include/glib-2.0/glib/gdatetime.h"
10014 # 1 "/usr/include/glib-2.0/glib/gtimezone.h" 1
10015 # 29 "/usr/include/glib-2.0/glib/gtimezone.h"
10016 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10017 # 30 "/usr/include/glib-2.0/glib/gtimezone.h" 2
10021 typedef struct _GTimeZone GTimeZone;
10022 # 50 "/usr/include/glib-2.0/glib/gtimezone.h"
10025 G_TIME_TYPE_STANDARD,
10026 G_TIME_TYPE_DAYLIGHT,
10027 G_TIME_TYPE_UNIVERSAL
10030 GTimeZone * g_time_zone_new (const gchar *identifier);
10031 GTimeZone * g_time_zone_new_utc (void);
10032 GTimeZone * g_time_zone_new_local (void);
10034 GTimeZone * g_time_zone_ref (GTimeZone *tz);
10035 void g_time_zone_unref (GTimeZone *tz);
10037 gint g_time_zone_find_interval (GTimeZone *tz,
10041 gint g_time_zone_adjust_time (GTimeZone *tz,
10045 const gchar * g_time_zone_get_abbreviation (GTimeZone *tz,
10047 gint32 g_time_zone_get_offset (GTimeZone *tz,
10049 gboolean g_time_zone_is_dst (GTimeZone *tz,
10053 # 34 "/usr/include/glib-2.0/glib/gdatetime.h" 2
10056 # 89 "/usr/include/glib-2.0/glib/gdatetime.h"
10057 typedef gint64 GTimeSpan;
10058 # 99 "/usr/include/glib-2.0/glib/gdatetime.h"
10059 typedef struct _GDateTime GDateTime;
10061 void g_date_time_unref (GDateTime *datetime);
10062 GDateTime * g_date_time_ref (GDateTime *datetime);
10064 GDateTime * g_date_time_new_now (GTimeZone *tz);
10065 GDateTime * g_date_time_new_now_local (void);
10066 GDateTime * g_date_time_new_now_utc (void);
10068 GDateTime * g_date_time_new_from_unix_local (gint64 t);
10069 GDateTime * g_date_time_new_from_unix_utc (gint64 t);
10071 GDateTime * g_date_time_new_from_timeval_local (const GTimeVal *tv);
10072 GDateTime * g_date_time_new_from_timeval_utc (const GTimeVal *tv);
10074 GDateTime * g_date_time_new (GTimeZone *tz,
10081 GDateTime * g_date_time_new_local (gint year,
10087 GDateTime * g_date_time_new_utc (gint year,
10094 __attribute__((warn_unused_result))
10095 GDateTime * g_date_time_add (GDateTime *datetime,
10096 GTimeSpan timespan);
10098 __attribute__((warn_unused_result))
10099 GDateTime * g_date_time_add_years (GDateTime *datetime,
10101 __attribute__((warn_unused_result))
10102 GDateTime * g_date_time_add_months (GDateTime *datetime,
10104 __attribute__((warn_unused_result))
10105 GDateTime * g_date_time_add_weeks (GDateTime *datetime,
10107 __attribute__((warn_unused_result))
10108 GDateTime * g_date_time_add_days (GDateTime *datetime,
10111 __attribute__((warn_unused_result))
10112 GDateTime * g_date_time_add_hours (GDateTime *datetime,
10114 __attribute__((warn_unused_result))
10115 GDateTime * g_date_time_add_minutes (GDateTime *datetime,
10117 __attribute__((warn_unused_result))
10118 GDateTime * g_date_time_add_seconds (GDateTime *datetime,
10121 __attribute__((warn_unused_result))
10122 GDateTime * g_date_time_add_full (GDateTime *datetime,
10130 gint g_date_time_compare (gconstpointer dt1,
10131 gconstpointer dt2);
10132 GTimeSpan g_date_time_difference (GDateTime *end,
10134 guint g_date_time_hash (gconstpointer datetime);
10135 gboolean g_date_time_equal (gconstpointer dt1,
10136 gconstpointer dt2);
10138 void g_date_time_get_ymd (GDateTime *datetime,
10143 gint g_date_time_get_year (GDateTime *datetime);
10144 gint g_date_time_get_month (GDateTime *datetime);
10145 gint g_date_time_get_day_of_month (GDateTime *datetime);
10147 gint g_date_time_get_week_numbering_year (GDateTime *datetime);
10148 gint g_date_time_get_week_of_year (GDateTime *datetime);
10149 gint g_date_time_get_day_of_week (GDateTime *datetime);
10151 gint g_date_time_get_day_of_year (GDateTime *datetime);
10153 gint g_date_time_get_hour (GDateTime *datetime);
10154 gint g_date_time_get_minute (GDateTime *datetime);
10155 gint g_date_time_get_second (GDateTime *datetime);
10156 gint g_date_time_get_microsecond (GDateTime *datetime);
10157 gdouble g_date_time_get_seconds (GDateTime *datetime);
10159 gint64 g_date_time_to_unix (GDateTime *datetime);
10160 gboolean g_date_time_to_timeval (GDateTime *datetime,
10163 GTimeSpan g_date_time_get_utc_offset (GDateTime *datetime);
10164 const gchar * g_date_time_get_timezone_abbreviation (GDateTime *datetime);
10165 gboolean g_date_time_is_daylight_savings (GDateTime *datetime);
10167 GDateTime * g_date_time_to_timezone (GDateTime *datetime,
10169 GDateTime * g_date_time_to_local (GDateTime *datetime);
10170 GDateTime * g_date_time_to_utc (GDateTime *datetime);
10172 gchar * g_date_time_format (GDateTime *datetime,
10173 const gchar *format) __attribute__((__malloc__));
10176 # 47 "/usr/include/glib-2.0/glib.h" 2
10177 # 1 "/usr/include/glib-2.0/glib/gdir.h" 1
10178 # 31 "/usr/include/glib-2.0/glib/gdir.h"
10179 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
10180 # 32 "/usr/include/glib-2.0/glib/gdir.h" 2
10184 typedef struct _GDir GDir;
10185 # 45 "/usr/include/glib-2.0/glib/gdir.h"
10186 GDir * g_dir_open (const gchar *path,
10189 const gchar * g_dir_read_name (GDir *dir);
10190 void g_dir_rewind (GDir *dir);
10191 void g_dir_close (GDir *dir);
10194 # 48 "/usr/include/glib-2.0/glib.h" 2
10195 # 1 "/usr/include/glib-2.0/glib/genviron.h" 1
10196 # 34 "/usr/include/glib-2.0/glib/genviron.h"
10197 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10198 # 35 "/usr/include/glib-2.0/glib/genviron.h" 2
10201 # 46 "/usr/include/glib-2.0/glib/genviron.h"
10202 const gchar * g_getenv (const gchar *variable);
10203 gboolean g_setenv (const gchar *variable,
10204 const gchar *value,
10205 gboolean overwrite);
10206 void g_unsetenv (const gchar *variable);
10207 gchar ** g_listenv (void);
10209 gchar ** g_get_environ (void);
10210 const gchar * g_environ_getenv (gchar **envp,
10211 const gchar *variable);
10212 gchar ** g_environ_setenv (gchar **envp,
10213 const gchar *variable,
10214 const gchar *value,
10215 gboolean overwrite) __attribute__((warn_unused_result));
10216 gchar ** g_environ_unsetenv (gchar **envp,
10217 const gchar *variable) __attribute__((warn_unused_result));
10220 # 49 "/usr/include/glib-2.0/glib.h" 2
10221 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
10222 # 50 "/usr/include/glib-2.0/glib.h" 2
10223 # 1 "/usr/include/glib-2.0/glib/gfileutils.h" 1
10224 # 28 "/usr/include/glib-2.0/glib/gfileutils.h"
10225 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
10226 # 29 "/usr/include/glib-2.0/glib/gfileutils.h" 2
10234 G_FILE_ERROR_EXIST,
10235 G_FILE_ERROR_ISDIR,
10236 G_FILE_ERROR_ACCES,
10237 G_FILE_ERROR_NAMETOOLONG,
10238 G_FILE_ERROR_NOENT,
10239 G_FILE_ERROR_NOTDIR,
10241 G_FILE_ERROR_NODEV,
10243 G_FILE_ERROR_TXTBSY,
10244 G_FILE_ERROR_FAULT,
10246 G_FILE_ERROR_NOSPC,
10247 G_FILE_ERROR_NOMEM,
10248 G_FILE_ERROR_MFILE,
10249 G_FILE_ERROR_NFILE,
10251 G_FILE_ERROR_INVAL,
10253 G_FILE_ERROR_AGAIN,
10257 G_FILE_ERROR_NOSYS,
10258 G_FILE_ERROR_FAILED
10267 G_FILE_TEST_IS_REGULAR = 1 << 0,
10268 G_FILE_TEST_IS_SYMLINK = 1 << 1,
10269 G_FILE_TEST_IS_DIR = 1 << 2,
10270 G_FILE_TEST_IS_EXECUTABLE = 1 << 3,
10271 G_FILE_TEST_EXISTS = 1 << 4
10274 GQuark g_file_error_quark (void);
10276 GFileError g_file_error_from_errno (gint err_no);
10277 # 89 "/usr/include/glib-2.0/glib/gfileutils.h"
10278 gboolean g_file_test (const gchar *filename,
10280 gboolean g_file_get_contents (const gchar *filename,
10284 gboolean g_file_set_contents (const gchar *filename,
10285 const gchar *contents,
10288 gchar *g_file_read_link (const gchar *filename,
10293 gchar *g_mkdtemp (gchar *tmpl);
10295 gchar *g_mkdtemp_full (gchar *tmpl,
10299 gint g_mkstemp (gchar *tmpl);
10300 gint g_mkstemp_full (gchar *tmpl,
10305 gint g_file_open_tmp (const gchar *tmpl,
10309 gchar *g_dir_make_tmp (const gchar *tmpl,
10312 gchar *g_build_path (const gchar *separator,
10313 const gchar *first_element,
10314 ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
10315 gchar *g_build_pathv (const gchar *separator,
10316 gchar **args) __attribute__((__malloc__));
10318 gchar *g_build_filename (const gchar *first_element,
10319 ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
10320 gchar *g_build_filenamev (gchar **args) __attribute__((__malloc__));
10322 gint g_mkdir_with_parents (const gchar *pathname,
10324 # 158 "/usr/include/glib-2.0/glib/gfileutils.h"
10325 gboolean g_path_is_absolute (const gchar *file_name);
10326 const gchar *g_path_skip_root (const gchar *file_name);
10328 __attribute__((__deprecated__("Use '" "g_path_get_basename" "' instead")))
10329 const gchar *g_basename (const gchar *file_name);
10330 # 173 "/usr/include/glib-2.0/glib/gfileutils.h"
10331 gchar *g_get_current_dir (void);
10332 gchar *g_path_get_basename (const gchar *file_name) __attribute__((__malloc__));
10333 gchar *g_path_get_dirname (const gchar *file_name) __attribute__((__malloc__));
10336 # 51 "/usr/include/glib-2.0/glib.h" 2
10337 # 1 "/usr/include/glib-2.0/glib/ggettext.h" 1
10338 # 34 "/usr/include/glib-2.0/glib/ggettext.h"
10339 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10340 # 35 "/usr/include/glib-2.0/glib/ggettext.h" 2
10344 const gchar *g_strip_context (const gchar *msgid,
10345 const gchar *msgval) __attribute__((__format_arg__ (1)));
10347 const gchar *g_dgettext (const gchar *domain,
10348 const gchar *msgid) __attribute__((__format_arg__ (2)));
10349 const gchar *g_dcgettext (const gchar *domain,
10350 const gchar *msgid,
10351 gint category) __attribute__((__format_arg__ (2)));
10352 const gchar *g_dngettext (const gchar *domain,
10353 const gchar *msgid,
10354 const gchar *msgid_plural,
10355 gulong n) __attribute__((__format_arg__ (3)));
10356 const gchar *g_dpgettext (const gchar *domain,
10357 const gchar *msgctxtid,
10358 gsize msgidoffset) __attribute__((__format_arg__ (2)));
10359 const gchar *g_dpgettext2 (const gchar *domain,
10360 const gchar *context,
10361 const gchar *msgid) __attribute__((__format_arg__ (3)));
10364 # 52 "/usr/include/glib-2.0/glib.h" 2
10365 # 1 "/usr/include/glib-2.0/glib/ghash.h" 1
10366 # 34 "/usr/include/glib-2.0/glib/ghash.h"
10367 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10368 # 35 "/usr/include/glib-2.0/glib/ghash.h" 2
10369 # 1 "/usr/include/glib-2.0/glib/glist.h" 1
10370 # 34 "/usr/include/glib-2.0/glib/glist.h"
10371 # 1 "/usr/include/glib-2.0/glib/gmem.h" 1
10372 # 34 "/usr/include/glib-2.0/glib/gmem.h"
10373 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10374 # 35 "/usr/include/glib-2.0/glib/gmem.h" 2
10377 # 51 "/usr/include/glib-2.0/glib/gmem.h"
10378 typedef struct _GMemVTable GMemVTable;
10379 # 70 "/usr/include/glib-2.0/glib/gmem.h"
10380 void g_free (gpointer mem);
10382 gpointer g_malloc (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
10383 gpointer g_malloc0 (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
10384 gpointer g_realloc (gpointer mem,
10385 gsize n_bytes) __attribute__((warn_unused_result));
10386 gpointer g_try_malloc (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
10387 gpointer g_try_malloc0 (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
10388 gpointer g_try_realloc (gpointer mem,
10389 gsize n_bytes) __attribute__((warn_unused_result));
10391 gpointer g_malloc_n (gsize n_blocks,
10392 gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
10393 gpointer g_malloc0_n (gsize n_blocks,
10394 gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
10395 gpointer g_realloc_n (gpointer mem,
10397 gsize n_block_bytes) __attribute__((warn_unused_result));
10398 gpointer g_try_malloc_n (gsize n_blocks,
10399 gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
10400 gpointer g_try_malloc0_n (gsize n_blocks,
10401 gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
10402 gpointer g_try_realloc_n (gpointer mem,
10404 gsize n_block_bytes) __attribute__((warn_unused_result));
10405 # 240 "/usr/include/glib-2.0/glib/gmem.h"
10406 struct _GMemVTable {
10407 gpointer (*malloc) (gsize n_bytes);
10408 gpointer (*realloc) (gpointer mem,
10410 void (*free) (gpointer mem);
10412 gpointer (*calloc) (gsize n_blocks,
10413 gsize n_block_bytes);
10414 gpointer (*try_malloc) (gsize n_bytes);
10415 gpointer (*try_realloc) (gpointer mem,
10418 void g_mem_set_vtable (GMemVTable *vtable);
10419 gboolean g_mem_is_system_malloc (void);
10421 extern gboolean g_mem_gc_friendly;
10425 extern GMemVTable *glib_mem_profiler_table;
10426 void g_mem_profile (void);
10429 # 35 "/usr/include/glib-2.0/glib/glist.h" 2
10433 typedef struct _GList GList;
10444 GList* g_list_alloc (void) __attribute__((warn_unused_result));
10445 void g_list_free (GList *list);
10446 void g_list_free_1 (GList *list);
10448 void g_list_free_full (GList *list,
10449 GDestroyNotify free_func);
10450 GList* g_list_append (GList *list,
10451 gpointer data) __attribute__((warn_unused_result));
10452 GList* g_list_prepend (GList *list,
10453 gpointer data) __attribute__((warn_unused_result));
10454 GList* g_list_insert (GList *list,
10456 gint position) __attribute__((warn_unused_result));
10457 GList* g_list_insert_sorted (GList *list,
10459 GCompareFunc func) __attribute__((warn_unused_result));
10460 GList* g_list_insert_sorted_with_data (GList *list,
10462 GCompareDataFunc func,
10463 gpointer user_data) __attribute__((warn_unused_result));
10464 GList* g_list_insert_before (GList *list,
10466 gpointer data) __attribute__((warn_unused_result));
10467 GList* g_list_concat (GList *list1,
10468 GList *list2) __attribute__((warn_unused_result));
10469 GList* g_list_remove (GList *list,
10470 gconstpointer data) __attribute__((warn_unused_result));
10471 GList* g_list_remove_all (GList *list,
10472 gconstpointer data) __attribute__((warn_unused_result));
10473 GList* g_list_remove_link (GList *list,
10474 GList *llink) __attribute__((warn_unused_result));
10475 GList* g_list_delete_link (GList *list,
10476 GList *link_) __attribute__((warn_unused_result));
10477 GList* g_list_reverse (GList *list) __attribute__((warn_unused_result));
10478 GList* g_list_copy (GList *list) __attribute__((warn_unused_result));
10479 GList* g_list_nth (GList *list,
10481 GList* g_list_nth_prev (GList *list,
10483 GList* g_list_find (GList *list,
10484 gconstpointer data);
10485 GList* g_list_find_custom (GList *list,
10486 gconstpointer data,
10487 GCompareFunc func);
10488 gint g_list_position (GList *list,
10490 gint g_list_index (GList *list,
10491 gconstpointer data);
10492 GList* g_list_last (GList *list);
10493 GList* g_list_first (GList *list);
10494 guint g_list_length (GList *list);
10495 void g_list_foreach (GList *list,
10497 gpointer user_data);
10498 GList* g_list_sort (GList *list,
10499 GCompareFunc compare_func) __attribute__((warn_unused_result));
10500 GList* g_list_sort_with_data (GList *list,
10501 GCompareDataFunc compare_func,
10502 gpointer user_data) __attribute__((warn_unused_result));
10503 gpointer g_list_nth_data (GList *list,
10511 # 36 "/usr/include/glib-2.0/glib/ghash.h" 2
10515 typedef struct _GHashTable GHashTable;
10517 typedef gboolean (*GHRFunc) (gpointer key,
10519 gpointer user_data);
10521 typedef struct _GHashTableIter GHashTableIter;
10523 struct _GHashTableIter
10534 GHashTable* g_hash_table_new (GHashFunc hash_func,
10535 GEqualFunc key_equal_func);
10536 GHashTable* g_hash_table_new_full (GHashFunc hash_func,
10537 GEqualFunc key_equal_func,
10538 GDestroyNotify key_destroy_func,
10539 GDestroyNotify value_destroy_func);
10540 void g_hash_table_destroy (GHashTable *hash_table);
10541 void g_hash_table_insert (GHashTable *hash_table,
10544 void g_hash_table_replace (GHashTable *hash_table,
10547 void g_hash_table_add (GHashTable *hash_table,
10549 gboolean g_hash_table_remove (GHashTable *hash_table,
10550 gconstpointer key);
10551 void g_hash_table_remove_all (GHashTable *hash_table);
10552 gboolean g_hash_table_steal (GHashTable *hash_table,
10553 gconstpointer key);
10554 void g_hash_table_steal_all (GHashTable *hash_table);
10555 gpointer g_hash_table_lookup (GHashTable *hash_table,
10556 gconstpointer key);
10557 gboolean g_hash_table_contains (GHashTable *hash_table,
10558 gconstpointer key);
10559 gboolean g_hash_table_lookup_extended (GHashTable *hash_table,
10560 gconstpointer lookup_key,
10561 gpointer *orig_key,
10563 void g_hash_table_foreach (GHashTable *hash_table,
10565 gpointer user_data);
10566 gpointer g_hash_table_find (GHashTable *hash_table,
10568 gpointer user_data);
10569 guint g_hash_table_foreach_remove (GHashTable *hash_table,
10571 gpointer user_data);
10572 guint g_hash_table_foreach_steal (GHashTable *hash_table,
10574 gpointer user_data);
10575 guint g_hash_table_size (GHashTable *hash_table);
10576 GList * g_hash_table_get_keys (GHashTable *hash_table);
10577 GList * g_hash_table_get_values (GHashTable *hash_table);
10579 void g_hash_table_iter_init (GHashTableIter *iter,
10580 GHashTable *hash_table);
10581 gboolean g_hash_table_iter_next (GHashTableIter *iter,
10584 GHashTable* g_hash_table_iter_get_hash_table (GHashTableIter *iter);
10585 void g_hash_table_iter_remove (GHashTableIter *iter);
10587 void g_hash_table_iter_replace (GHashTableIter *iter,
10589 void g_hash_table_iter_steal (GHashTableIter *iter);
10591 GHashTable* g_hash_table_ref (GHashTable *hash_table);
10592 void g_hash_table_unref (GHashTable *hash_table);
10593 # 125 "/usr/include/glib-2.0/glib/ghash.h"
10594 gboolean g_str_equal (gconstpointer v1,
10596 guint g_str_hash (gconstpointer v);
10598 gboolean g_int_equal (gconstpointer v1,
10600 guint g_int_hash (gconstpointer v);
10602 gboolean g_int64_equal (gconstpointer v1,
10604 guint g_int64_hash (gconstpointer v);
10606 gboolean g_double_equal (gconstpointer v1,
10608 guint g_double_hash (gconstpointer v);
10610 guint g_direct_hash (gconstpointer v) __attribute__((__const__));
10611 gboolean g_direct_equal (gconstpointer v1,
10612 gconstpointer v2) __attribute__((__const__));
10615 # 53 "/usr/include/glib-2.0/glib.h" 2
10616 # 1 "/usr/include/glib-2.0/glib/ghmac.h" 1
10617 # 28 "/usr/include/glib-2.0/glib/ghmac.h"
10618 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10619 # 29 "/usr/include/glib-2.0/glib/ghmac.h" 2
10620 # 1 "/usr/include/glib-2.0/glib/gchecksum.h" 1
10621 # 30 "/usr/include/glib-2.0/glib/ghmac.h" 2
10624 # 42 "/usr/include/glib-2.0/glib/ghmac.h"
10625 typedef struct _GHmac GHmac;
10628 GHmac * g_hmac_new (GChecksumType digest_type,
10632 GHmac * g_hmac_copy (const GHmac *hmac);
10634 GHmac * g_hmac_ref (GHmac *hmac);
10636 void g_hmac_unref (GHmac *hmac);
10638 void g_hmac_update (GHmac *hmac,
10639 const guchar *data,
10642 const gchar * g_hmac_get_string (GHmac *hmac);
10644 void g_hmac_get_digest (GHmac *hmac,
10646 gsize *digest_len);
10649 gchar *g_compute_hmac_for_data (GChecksumType digest_type,
10652 const guchar *data,
10655 gchar *g_compute_hmac_for_string (GChecksumType digest_type,
10662 # 54 "/usr/include/glib-2.0/glib.h" 2
10663 # 1 "/usr/include/glib-2.0/glib/ghook.h" 1
10664 # 34 "/usr/include/glib-2.0/glib/ghook.h"
10665 # 1 "/usr/include/glib-2.0/glib/gmem.h" 1
10666 # 35 "/usr/include/glib-2.0/glib/ghook.h" 2
10672 typedef struct _GHook GHook;
10673 typedef struct _GHookList GHookList;
10675 typedef gint (*GHookCompareFunc) (GHook *new_hook,
10677 typedef gboolean (*GHookFindFunc) (GHook *hook,
10679 typedef void (*GHookMarshaller) (GHook *hook,
10680 gpointer marshal_data);
10681 typedef gboolean (*GHookCheckMarshaller) (GHook *hook,
10682 gpointer marshal_data);
10683 typedef void (*GHookFunc) (gpointer data);
10684 typedef gboolean (*GHookCheckFunc) (gpointer data);
10685 typedef void (*GHookFinalizeFunc) (GHookList *hook_list,
10689 G_HOOK_FLAG_ACTIVE = 1 << 0,
10690 G_HOOK_FLAG_IN_CALL = 1 << 1,
10691 G_HOOK_FLAG_MASK = 0x0f
10700 guint hook_size : 16;
10701 guint is_setup : 1;
10704 GHookFinalizeFunc finalize_hook;
10716 GDestroyNotify destroy;
10718 # 106 "/usr/include/glib-2.0/glib/ghook.h"
10719 void g_hook_list_init (GHookList *hook_list,
10721 void g_hook_list_clear (GHookList *hook_list);
10722 GHook* g_hook_alloc (GHookList *hook_list);
10723 void g_hook_free (GHookList *hook_list,
10725 GHook * g_hook_ref (GHookList *hook_list,
10727 void g_hook_unref (GHookList *hook_list,
10729 gboolean g_hook_destroy (GHookList *hook_list,
10731 void g_hook_destroy_link (GHookList *hook_list,
10733 void g_hook_prepend (GHookList *hook_list,
10735 void g_hook_insert_before (GHookList *hook_list,
10738 void g_hook_insert_sorted (GHookList *hook_list,
10740 GHookCompareFunc func);
10741 GHook* g_hook_get (GHookList *hook_list,
10743 GHook* g_hook_find (GHookList *hook_list,
10744 gboolean need_valids,
10745 GHookFindFunc func,
10747 GHook* g_hook_find_data (GHookList *hook_list,
10748 gboolean need_valids,
10750 GHook* g_hook_find_func (GHookList *hook_list,
10751 gboolean need_valids,
10753 GHook* g_hook_find_func_data (GHookList *hook_list,
10754 gboolean need_valids,
10758 GHook* g_hook_first_valid (GHookList *hook_list,
10759 gboolean may_be_in_call);
10763 GHook* g_hook_next_valid (GHookList *hook_list,
10765 gboolean may_be_in_call);
10767 gint g_hook_compare_ids (GHook *new_hook,
10774 void g_hook_list_invoke (GHookList *hook_list,
10775 gboolean may_recurse);
10779 void g_hook_list_invoke_check (GHookList *hook_list,
10780 gboolean may_recurse);
10783 void g_hook_list_marshal (GHookList *hook_list,
10784 gboolean may_recurse,
10785 GHookMarshaller marshaller,
10786 gpointer marshal_data);
10787 void g_hook_list_marshal_check (GHookList *hook_list,
10788 gboolean may_recurse,
10789 GHookCheckMarshaller marshaller,
10790 gpointer marshal_data);
10793 # 55 "/usr/include/glib-2.0/glib.h" 2
10794 # 1 "/usr/include/glib-2.0/glib/ghostutils.h" 1
10795 # 27 "/usr/include/glib-2.0/glib/ghostutils.h"
10796 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10797 # 28 "/usr/include/glib-2.0/glib/ghostutils.h" 2
10801 gboolean g_hostname_is_non_ascii (const gchar *hostname);
10802 gboolean g_hostname_is_ascii_encoded (const gchar *hostname);
10803 gboolean g_hostname_is_ip_address (const gchar *hostname);
10805 gchar *g_hostname_to_ascii (const gchar *hostname);
10806 gchar *g_hostname_to_unicode (const gchar *hostname);
10809 # 56 "/usr/include/glib-2.0/glib.h" 2
10810 # 1 "/usr/include/glib-2.0/glib/giochannel.h" 1
10811 # 34 "/usr/include/glib-2.0/glib/giochannel.h"
10812 # 1 "/usr/include/glib-2.0/glib/gconvert.h" 1
10813 # 35 "/usr/include/glib-2.0/glib/giochannel.h" 2
10814 # 1 "/usr/include/glib-2.0/glib/gmain.h" 1
10815 # 27 "/usr/include/glib-2.0/glib/gmain.h"
10816 # 1 "/usr/include/glib-2.0/glib/gpoll.h" 1
10817 # 27 "/usr/include/glib-2.0/glib/gpoll.h"
10818 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
10819 # 28 "/usr/include/glib-2.0/glib/gpoll.h" 2
10822 # 61 "/usr/include/glib-2.0/glib/gpoll.h"
10823 typedef struct _GPollFD GPollFD;
10824 # 76 "/usr/include/glib-2.0/glib/gpoll.h"
10825 typedef gint (*GPollFunc) (GPollFD *ufds,
10828 # 93 "/usr/include/glib-2.0/glib/gpoll.h"
10839 # 114 "/usr/include/glib-2.0/glib/gpoll.h"
10840 gint g_poll (GPollFD *fds,
10845 # 28 "/usr/include/glib-2.0/glib/gmain.h" 2
10846 # 1 "/usr/include/glib-2.0/glib/gslist.h" 1
10847 # 34 "/usr/include/glib-2.0/glib/gslist.h"
10848 # 1 "/usr/include/glib-2.0/glib/gmem.h" 1
10849 # 35 "/usr/include/glib-2.0/glib/gslist.h" 2
10853 typedef struct _GSList GSList;
10863 GSList* g_slist_alloc (void) __attribute__((warn_unused_result));
10864 void g_slist_free (GSList *list);
10865 void g_slist_free_1 (GSList *list);
10867 void g_slist_free_full (GSList *list,
10868 GDestroyNotify free_func);
10869 GSList* g_slist_append (GSList *list,
10870 gpointer data) __attribute__((warn_unused_result));
10871 GSList* g_slist_prepend (GSList *list,
10872 gpointer data) __attribute__((warn_unused_result));
10873 GSList* g_slist_insert (GSList *list,
10875 gint position) __attribute__((warn_unused_result));
10876 GSList* g_slist_insert_sorted (GSList *list,
10878 GCompareFunc func) __attribute__((warn_unused_result));
10879 GSList* g_slist_insert_sorted_with_data (GSList *list,
10881 GCompareDataFunc func,
10882 gpointer user_data) __attribute__((warn_unused_result));
10883 GSList* g_slist_insert_before (GSList *slist,
10885 gpointer data) __attribute__((warn_unused_result));
10886 GSList* g_slist_concat (GSList *list1,
10887 GSList *list2) __attribute__((warn_unused_result));
10888 GSList* g_slist_remove (GSList *list,
10889 gconstpointer data) __attribute__((warn_unused_result));
10890 GSList* g_slist_remove_all (GSList *list,
10891 gconstpointer data) __attribute__((warn_unused_result));
10892 GSList* g_slist_remove_link (GSList *list,
10893 GSList *link_) __attribute__((warn_unused_result));
10894 GSList* g_slist_delete_link (GSList *list,
10895 GSList *link_) __attribute__((warn_unused_result));
10896 GSList* g_slist_reverse (GSList *list) __attribute__((warn_unused_result));
10897 GSList* g_slist_copy (GSList *list) __attribute__((warn_unused_result));
10898 GSList* g_slist_nth (GSList *list,
10900 GSList* g_slist_find (GSList *list,
10901 gconstpointer data);
10902 GSList* g_slist_find_custom (GSList *list,
10903 gconstpointer data,
10904 GCompareFunc func);
10905 gint g_slist_position (GSList *list,
10907 gint g_slist_index (GSList *list,
10908 gconstpointer data);
10909 GSList* g_slist_last (GSList *list);
10910 guint g_slist_length (GSList *list);
10911 void g_slist_foreach (GSList *list,
10913 gpointer user_data);
10914 GSList* g_slist_sort (GSList *list,
10915 GCompareFunc compare_func) __attribute__((warn_unused_result));
10916 GSList* g_slist_sort_with_data (GSList *list,
10917 GCompareDataFunc compare_func,
10918 gpointer user_data) __attribute__((warn_unused_result));
10919 gpointer g_slist_nth_data (GSList *list,
10925 # 29 "/usr/include/glib-2.0/glib/gmain.h" 2
10926 # 1 "/usr/include/glib-2.0/glib/gthread.h" 1
10927 # 30 "/usr/include/glib-2.0/glib/gmain.h" 2
10937 typedef struct _GMainContext GMainContext;
10945 typedef struct _GMainLoop GMainLoop;
10953 typedef struct _GSource GSource;
10954 typedef struct _GSourcePrivate GSourcePrivate;
10955 # 68 "/usr/include/glib-2.0/glib/gmain.h"
10956 typedef struct _GSourceCallbackFuncs GSourceCallbackFuncs;
10957 # 113 "/usr/include/glib-2.0/glib/gmain.h"
10958 typedef struct _GSourceFuncs GSourceFuncs;
10959 # 137 "/usr/include/glib-2.0/glib/gmain.h"
10960 typedef gboolean (*GSourceFunc) (gpointer user_data);
10961 # 148 "/usr/include/glib-2.0/glib/gmain.h"
10962 typedef void (*GChildWatchFunc) (GPid pid,
10964 gpointer user_data);
10968 gpointer callback_data;
10969 GSourceCallbackFuncs *callback_funcs;
10971 GSourceFuncs *source_funcs;
10974 GMainContext *context;
10987 GSourcePrivate *priv;
10990 struct _GSourceCallbackFuncs
10992 void (*ref) (gpointer cb_data);
10993 void (*unref) (gpointer cb_data);
10994 void (*get) (gpointer cb_data,
11006 typedef void (*GSourceDummyMarshal) (void);
11008 struct _GSourceFuncs
11010 gboolean (*prepare) (GSource *source,
11012 gboolean (*check) (GSource *source);
11013 gboolean (*dispatch) (GSource *source,
11014 GSourceFunc callback,
11015 gpointer user_data);
11016 void (*finalize) (GSource *source);
11020 GSourceFunc closure_callback;
11021 GSourceDummyMarshal closure_marshal;
11023 # 285 "/usr/include/glib-2.0/glib/gmain.h"
11024 GMainContext *g_main_context_new (void);
11025 GMainContext *g_main_context_ref (GMainContext *context);
11026 void g_main_context_unref (GMainContext *context);
11027 GMainContext *g_main_context_default (void);
11029 gboolean g_main_context_iteration (GMainContext *context,
11030 gboolean may_block);
11031 gboolean g_main_context_pending (GMainContext *context);
11035 GSource *g_main_context_find_source_by_id (GMainContext *context,
11037 GSource *g_main_context_find_source_by_user_data (GMainContext *context,
11038 gpointer user_data);
11039 GSource *g_main_context_find_source_by_funcs_user_data (GMainContext *context,
11040 GSourceFuncs *funcs,
11041 gpointer user_data);
11045 void g_main_context_wakeup (GMainContext *context);
11046 gboolean g_main_context_acquire (GMainContext *context);
11047 void g_main_context_release (GMainContext *context);
11048 gboolean g_main_context_is_owner (GMainContext *context);
11049 gboolean g_main_context_wait (GMainContext *context,
11053 gboolean g_main_context_prepare (GMainContext *context,
11055 gint g_main_context_query (GMainContext *context,
11060 gint g_main_context_check (GMainContext *context,
11064 void g_main_context_dispatch (GMainContext *context);
11066 void g_main_context_set_poll_func (GMainContext *context,
11068 GPollFunc g_main_context_get_poll_func (GMainContext *context);
11072 void g_main_context_add_poll (GMainContext *context,
11075 void g_main_context_remove_poll (GMainContext *context,
11078 gint g_main_depth (void);
11079 GSource *g_main_current_source (void);
11083 void g_main_context_push_thread_default (GMainContext *context);
11084 void g_main_context_pop_thread_default (GMainContext *context);
11085 GMainContext *g_main_context_get_thread_default (void);
11086 GMainContext *g_main_context_ref_thread_default (void);
11090 GMainLoop *g_main_loop_new (GMainContext *context,
11091 gboolean is_running);
11092 void g_main_loop_run (GMainLoop *loop);
11093 void g_main_loop_quit (GMainLoop *loop);
11094 GMainLoop *g_main_loop_ref (GMainLoop *loop);
11095 void g_main_loop_unref (GMainLoop *loop);
11096 gboolean g_main_loop_is_running (GMainLoop *loop);
11097 GMainContext *g_main_loop_get_context (GMainLoop *loop);
11101 GSource *g_source_new (GSourceFuncs *source_funcs,
11102 guint struct_size);
11103 GSource *g_source_ref (GSource *source);
11104 void g_source_unref (GSource *source);
11106 guint g_source_attach (GSource *source,
11107 GMainContext *context);
11108 void g_source_destroy (GSource *source);
11110 void g_source_set_priority (GSource *source,
11112 gint g_source_get_priority (GSource *source);
11113 void g_source_set_can_recurse (GSource *source,
11114 gboolean can_recurse);
11115 gboolean g_source_get_can_recurse (GSource *source);
11116 guint g_source_get_id (GSource *source);
11118 GMainContext *g_source_get_context (GSource *source);
11120 void g_source_set_callback (GSource *source,
11123 GDestroyNotify notify);
11125 void g_source_set_funcs (GSource *source,
11126 GSourceFuncs *funcs);
11127 gboolean g_source_is_destroyed (GSource *source);
11129 void g_source_set_name (GSource *source,
11131 const char * g_source_get_name (GSource *source);
11132 void g_source_set_name_by_id (guint tag,
11137 void g_source_set_callback_indirect (GSource *source,
11138 gpointer callback_data,
11139 GSourceCallbackFuncs *callback_funcs);
11141 void g_source_add_poll (GSource *source,
11143 void g_source_remove_poll (GSource *source,
11146 void g_source_add_child_source (GSource *source,
11147 GSource *child_source);
11148 void g_source_remove_child_source (GSource *source,
11149 GSource *child_source);
11151 __attribute__((__deprecated__("Use '" "g_source_get_time" "' instead")))
11152 void g_source_get_current_time (GSource *source,
11153 GTimeVal *timeval);
11155 gint64 g_source_get_time (GSource *source);
11163 GSource *g_idle_source_new (void);
11164 GSource *g_child_watch_source_new (GPid pid);
11165 GSource *g_timeout_source_new (guint interval);
11166 GSource *g_timeout_source_new_seconds (guint interval);
11170 void g_get_current_time (GTimeVal *result);
11171 gint64 g_get_monotonic_time (void);
11172 gint64 g_get_real_time (void);
11176 gboolean g_source_remove (guint tag);
11177 gboolean g_source_remove_by_user_data (gpointer user_data);
11178 gboolean g_source_remove_by_funcs_user_data (GSourceFuncs *funcs,
11179 gpointer user_data);
11182 guint g_timeout_add_full (gint priority,
11184 GSourceFunc function,
11186 GDestroyNotify notify);
11187 guint g_timeout_add (guint interval,
11188 GSourceFunc function,
11190 guint g_timeout_add_seconds_full (gint priority,
11192 GSourceFunc function,
11194 GDestroyNotify notify);
11195 guint g_timeout_add_seconds (guint interval,
11196 GSourceFunc function,
11198 guint g_child_watch_add_full (gint priority,
11200 GChildWatchFunc function,
11202 GDestroyNotify notify);
11203 guint g_child_watch_add (GPid pid,
11204 GChildWatchFunc function,
11206 guint g_idle_add (GSourceFunc function,
11208 guint g_idle_add_full (gint priority,
11209 GSourceFunc function,
11211 GDestroyNotify notify);
11212 gboolean g_idle_remove_by_data (gpointer data);
11214 void g_main_context_invoke_full (GMainContext *context,
11216 GSourceFunc function,
11218 GDestroyNotify notify);
11219 void g_main_context_invoke (GMainContext *context,
11220 GSourceFunc function,
11224 extern GSourceFuncs g_timeout_funcs;
11225 extern GSourceFuncs g_child_watch_funcs;
11226 extern GSourceFuncs g_idle_funcs;
11229 # 36 "/usr/include/glib-2.0/glib/giochannel.h" 2
11230 # 1 "/usr/include/glib-2.0/glib/gstring.h" 1
11231 # 34 "/usr/include/glib-2.0/glib/gstring.h"
11232 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
11233 # 35 "/usr/include/glib-2.0/glib/gstring.h" 2
11234 # 1 "/usr/include/glib-2.0/glib/gunicode.h" 1
11235 # 29 "/usr/include/glib-2.0/glib/gunicode.h"
11236 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
11237 # 30 "/usr/include/glib-2.0/glib/gunicode.h" 2
11238 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
11239 # 31 "/usr/include/glib-2.0/glib/gunicode.h" 2
11242 # 61 "/usr/include/glib-2.0/glib/gunicode.h"
11243 typedef guint32 gunichar;
11244 # 79 "/usr/include/glib-2.0/glib/gunicode.h"
11245 typedef guint16 gunichar2;
11246 # 118 "/usr/include/glib-2.0/glib/gunicode.h"
11251 G_UNICODE_UNASSIGNED,
11252 G_UNICODE_PRIVATE_USE,
11253 G_UNICODE_SURROGATE,
11254 G_UNICODE_LOWERCASE_LETTER,
11255 G_UNICODE_MODIFIER_LETTER,
11256 G_UNICODE_OTHER_LETTER,
11257 G_UNICODE_TITLECASE_LETTER,
11258 G_UNICODE_UPPERCASE_LETTER,
11259 G_UNICODE_SPACING_MARK,
11260 G_UNICODE_ENCLOSING_MARK,
11261 G_UNICODE_NON_SPACING_MARK,
11262 G_UNICODE_DECIMAL_NUMBER,
11263 G_UNICODE_LETTER_NUMBER,
11264 G_UNICODE_OTHER_NUMBER,
11265 G_UNICODE_CONNECT_PUNCTUATION,
11266 G_UNICODE_DASH_PUNCTUATION,
11267 G_UNICODE_CLOSE_PUNCTUATION,
11268 G_UNICODE_FINAL_PUNCTUATION,
11269 G_UNICODE_INITIAL_PUNCTUATION,
11270 G_UNICODE_OTHER_PUNCTUATION,
11271 G_UNICODE_OPEN_PUNCTUATION,
11272 G_UNICODE_CURRENCY_SYMBOL,
11273 G_UNICODE_MODIFIER_SYMBOL,
11274 G_UNICODE_MATH_SYMBOL,
11275 G_UNICODE_OTHER_SYMBOL,
11276 G_UNICODE_LINE_SEPARATOR,
11277 G_UNICODE_PARAGRAPH_SEPARATOR,
11278 G_UNICODE_SPACE_SEPARATOR
11280 # 214 "/usr/include/glib-2.0/glib/gunicode.h"
11283 G_UNICODE_BREAK_MANDATORY,
11284 G_UNICODE_BREAK_CARRIAGE_RETURN,
11285 G_UNICODE_BREAK_LINE_FEED,
11286 G_UNICODE_BREAK_COMBINING_MARK,
11287 G_UNICODE_BREAK_SURROGATE,
11288 G_UNICODE_BREAK_ZERO_WIDTH_SPACE,
11289 G_UNICODE_BREAK_INSEPARABLE,
11290 G_UNICODE_BREAK_NON_BREAKING_GLUE,
11291 G_UNICODE_BREAK_CONTINGENT,
11292 G_UNICODE_BREAK_SPACE,
11293 G_UNICODE_BREAK_AFTER,
11294 G_UNICODE_BREAK_BEFORE,
11295 G_UNICODE_BREAK_BEFORE_AND_AFTER,
11296 G_UNICODE_BREAK_HYPHEN,
11297 G_UNICODE_BREAK_NON_STARTER,
11298 G_UNICODE_BREAK_OPEN_PUNCTUATION,
11299 G_UNICODE_BREAK_CLOSE_PUNCTUATION,
11300 G_UNICODE_BREAK_QUOTATION,
11301 G_UNICODE_BREAK_EXCLAMATION,
11302 G_UNICODE_BREAK_IDEOGRAPHIC,
11303 G_UNICODE_BREAK_NUMERIC,
11304 G_UNICODE_BREAK_INFIX_SEPARATOR,
11305 G_UNICODE_BREAK_SYMBOL,
11306 G_UNICODE_BREAK_ALPHABETIC,
11307 G_UNICODE_BREAK_PREFIX,
11308 G_UNICODE_BREAK_POSTFIX,
11309 G_UNICODE_BREAK_COMPLEX_CONTEXT,
11310 G_UNICODE_BREAK_AMBIGUOUS,
11311 G_UNICODE_BREAK_UNKNOWN,
11312 G_UNICODE_BREAK_NEXT_LINE,
11313 G_UNICODE_BREAK_WORD_JOINER,
11314 G_UNICODE_BREAK_HANGUL_L_JAMO,
11315 G_UNICODE_BREAK_HANGUL_V_JAMO,
11316 G_UNICODE_BREAK_HANGUL_T_JAMO,
11317 G_UNICODE_BREAK_HANGUL_LV_SYLLABLE,
11318 G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE,
11319 G_UNICODE_BREAK_CLOSE_PARANTHESIS,
11320 G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER,
11321 G_UNICODE_BREAK_HEBREW_LETTER
11322 } GUnicodeBreakType;
11323 # 387 "/usr/include/glib-2.0/glib/gunicode.h"
11326 G_UNICODE_SCRIPT_INVALID_CODE = -1,
11327 G_UNICODE_SCRIPT_COMMON = 0,
11328 G_UNICODE_SCRIPT_INHERITED,
11329 G_UNICODE_SCRIPT_ARABIC,
11330 G_UNICODE_SCRIPT_ARMENIAN,
11331 G_UNICODE_SCRIPT_BENGALI,
11332 G_UNICODE_SCRIPT_BOPOMOFO,
11333 G_UNICODE_SCRIPT_CHEROKEE,
11334 G_UNICODE_SCRIPT_COPTIC,
11335 G_UNICODE_SCRIPT_CYRILLIC,
11336 G_UNICODE_SCRIPT_DESERET,
11337 G_UNICODE_SCRIPT_DEVANAGARI,
11338 G_UNICODE_SCRIPT_ETHIOPIC,
11339 G_UNICODE_SCRIPT_GEORGIAN,
11340 G_UNICODE_SCRIPT_GOTHIC,
11341 G_UNICODE_SCRIPT_GREEK,
11342 G_UNICODE_SCRIPT_GUJARATI,
11343 G_UNICODE_SCRIPT_GURMUKHI,
11344 G_UNICODE_SCRIPT_HAN,
11345 G_UNICODE_SCRIPT_HANGUL,
11346 G_UNICODE_SCRIPT_HEBREW,
11347 G_UNICODE_SCRIPT_HIRAGANA,
11348 G_UNICODE_SCRIPT_KANNADA,
11349 G_UNICODE_SCRIPT_KATAKANA,
11350 G_UNICODE_SCRIPT_KHMER,
11351 G_UNICODE_SCRIPT_LAO,
11352 G_UNICODE_SCRIPT_LATIN,
11353 G_UNICODE_SCRIPT_MALAYALAM,
11354 G_UNICODE_SCRIPT_MONGOLIAN,
11355 G_UNICODE_SCRIPT_MYANMAR,
11356 G_UNICODE_SCRIPT_OGHAM,
11357 G_UNICODE_SCRIPT_OLD_ITALIC,
11358 G_UNICODE_SCRIPT_ORIYA,
11359 G_UNICODE_SCRIPT_RUNIC,
11360 G_UNICODE_SCRIPT_SINHALA,
11361 G_UNICODE_SCRIPT_SYRIAC,
11362 G_UNICODE_SCRIPT_TAMIL,
11363 G_UNICODE_SCRIPT_TELUGU,
11364 G_UNICODE_SCRIPT_THAANA,
11365 G_UNICODE_SCRIPT_THAI,
11366 G_UNICODE_SCRIPT_TIBETAN,
11367 G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL,
11368 G_UNICODE_SCRIPT_YI,
11369 G_UNICODE_SCRIPT_TAGALOG,
11370 G_UNICODE_SCRIPT_HANUNOO,
11371 G_UNICODE_SCRIPT_BUHID,
11372 G_UNICODE_SCRIPT_TAGBANWA,
11375 G_UNICODE_SCRIPT_BRAILLE,
11376 G_UNICODE_SCRIPT_CYPRIOT,
11377 G_UNICODE_SCRIPT_LIMBU,
11378 G_UNICODE_SCRIPT_OSMANYA,
11379 G_UNICODE_SCRIPT_SHAVIAN,
11380 G_UNICODE_SCRIPT_LINEAR_B,
11381 G_UNICODE_SCRIPT_TAI_LE,
11382 G_UNICODE_SCRIPT_UGARITIC,
11385 G_UNICODE_SCRIPT_NEW_TAI_LUE,
11386 G_UNICODE_SCRIPT_BUGINESE,
11387 G_UNICODE_SCRIPT_GLAGOLITIC,
11388 G_UNICODE_SCRIPT_TIFINAGH,
11389 G_UNICODE_SCRIPT_SYLOTI_NAGRI,
11390 G_UNICODE_SCRIPT_OLD_PERSIAN,
11391 G_UNICODE_SCRIPT_KHAROSHTHI,
11394 G_UNICODE_SCRIPT_UNKNOWN,
11395 G_UNICODE_SCRIPT_BALINESE,
11396 G_UNICODE_SCRIPT_CUNEIFORM,
11397 G_UNICODE_SCRIPT_PHOENICIAN,
11398 G_UNICODE_SCRIPT_PHAGS_PA,
11399 G_UNICODE_SCRIPT_NKO,
11402 G_UNICODE_SCRIPT_KAYAH_LI,
11403 G_UNICODE_SCRIPT_LEPCHA,
11404 G_UNICODE_SCRIPT_REJANG,
11405 G_UNICODE_SCRIPT_SUNDANESE,
11406 G_UNICODE_SCRIPT_SAURASHTRA,
11407 G_UNICODE_SCRIPT_CHAM,
11408 G_UNICODE_SCRIPT_OL_CHIKI,
11409 G_UNICODE_SCRIPT_VAI,
11410 G_UNICODE_SCRIPT_CARIAN,
11411 G_UNICODE_SCRIPT_LYCIAN,
11412 G_UNICODE_SCRIPT_LYDIAN,
11415 G_UNICODE_SCRIPT_AVESTAN,
11416 G_UNICODE_SCRIPT_BAMUM,
11417 G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS,
11418 G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC,
11419 G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI,
11420 G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN,
11421 G_UNICODE_SCRIPT_JAVANESE,
11422 G_UNICODE_SCRIPT_KAITHI,
11423 G_UNICODE_SCRIPT_LISU,
11424 G_UNICODE_SCRIPT_MEETEI_MAYEK,
11425 G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN,
11426 G_UNICODE_SCRIPT_OLD_TURKIC,
11427 G_UNICODE_SCRIPT_SAMARITAN,
11428 G_UNICODE_SCRIPT_TAI_THAM,
11429 G_UNICODE_SCRIPT_TAI_VIET,
11432 G_UNICODE_SCRIPT_BATAK,
11433 G_UNICODE_SCRIPT_BRAHMI,
11434 G_UNICODE_SCRIPT_MANDAIC,
11437 G_UNICODE_SCRIPT_CHAKMA,
11438 G_UNICODE_SCRIPT_MEROITIC_CURSIVE,
11439 G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS,
11440 G_UNICODE_SCRIPT_MIAO,
11441 G_UNICODE_SCRIPT_SHARADA,
11442 G_UNICODE_SCRIPT_SORA_SOMPENG,
11443 G_UNICODE_SCRIPT_TAKRI
11446 guint32 g_unicode_script_to_iso15924 (GUnicodeScript script);
11447 GUnicodeScript g_unicode_script_from_iso15924 (guint32 iso15924);
11451 gboolean g_unichar_isalnum (gunichar c) __attribute__((__const__));
11452 gboolean g_unichar_isalpha (gunichar c) __attribute__((__const__));
11453 gboolean g_unichar_iscntrl (gunichar c) __attribute__((__const__));
11454 gboolean g_unichar_isdigit (gunichar c) __attribute__((__const__));
11455 gboolean g_unichar_isgraph (gunichar c) __attribute__((__const__));
11456 gboolean g_unichar_islower (gunichar c) __attribute__((__const__));
11457 gboolean g_unichar_isprint (gunichar c) __attribute__((__const__));
11458 gboolean g_unichar_ispunct (gunichar c) __attribute__((__const__));
11459 gboolean g_unichar_isspace (gunichar c) __attribute__((__const__));
11460 gboolean g_unichar_isupper (gunichar c) __attribute__((__const__));
11461 gboolean g_unichar_isxdigit (gunichar c) __attribute__((__const__));
11462 gboolean g_unichar_istitle (gunichar c) __attribute__((__const__));
11463 gboolean g_unichar_isdefined (gunichar c) __attribute__((__const__));
11464 gboolean g_unichar_iswide (gunichar c) __attribute__((__const__));
11465 gboolean g_unichar_iswide_cjk(gunichar c) __attribute__((__const__));
11466 gboolean g_unichar_iszerowidth(gunichar c) __attribute__((__const__));
11467 gboolean g_unichar_ismark (gunichar c) __attribute__((__const__));
11471 gunichar g_unichar_toupper (gunichar c) __attribute__((__const__));
11472 gunichar g_unichar_tolower (gunichar c) __attribute__((__const__));
11473 gunichar g_unichar_totitle (gunichar c) __attribute__((__const__));
11477 gint g_unichar_digit_value (gunichar c) __attribute__((__const__));
11479 gint g_unichar_xdigit_value (gunichar c) __attribute__((__const__));
11482 GUnicodeType g_unichar_type (gunichar c) __attribute__((__const__));
11485 GUnicodeBreakType g_unichar_break_type (gunichar c) __attribute__((__const__));
11488 gint g_unichar_combining_class (gunichar uc) __attribute__((__const__));
11490 gboolean g_unichar_get_mirror_char (gunichar ch,
11491 gunichar *mirrored_ch);
11493 GUnicodeScript g_unichar_get_script (gunichar ch) __attribute__((__const__));
11496 gboolean g_unichar_validate (gunichar ch) __attribute__((__const__));
11499 gboolean g_unichar_compose (gunichar a,
11502 gboolean g_unichar_decompose (gunichar ch,
11506 gsize g_unichar_fully_decompose (gunichar ch,
11510 # 589 "/usr/include/glib-2.0/glib/gunicode.h"
11511 void g_unicode_canonical_ordering (gunichar *string,
11515 __attribute__((__deprecated__))
11516 gunichar *g_unicode_canonical_decomposition (gunichar ch,
11517 gsize *result_len) __attribute__((__malloc__));
11521 extern const gchar * const g_utf8_skip;
11522 # 614 "/usr/include/glib-2.0/glib/gunicode.h"
11523 gunichar g_utf8_get_char (const gchar *p) __attribute__((__pure__));
11524 gunichar g_utf8_get_char_validated (const gchar *p,
11525 gssize max_len) __attribute__((__pure__));
11527 gchar* g_utf8_offset_to_pointer (const gchar *str,
11528 glong offset) __attribute__((__pure__));
11529 glong g_utf8_pointer_to_offset (const gchar *str,
11530 const gchar *pos) __attribute__((__pure__));
11531 gchar* g_utf8_prev_char (const gchar *p) __attribute__((__pure__));
11532 gchar* g_utf8_find_next_char (const gchar *p,
11533 const gchar *end) __attribute__((__pure__));
11534 gchar* g_utf8_find_prev_char (const gchar *str,
11535 const gchar *p) __attribute__((__pure__));
11537 glong g_utf8_strlen (const gchar *p,
11538 gssize max) __attribute__((__pure__));
11541 gchar *g_utf8_substring (const gchar *str,
11543 glong end_pos) __attribute__((__malloc__));
11545 gchar *g_utf8_strncpy (gchar *dest,
11551 gchar* g_utf8_strchr (const gchar *p,
11554 gchar* g_utf8_strrchr (const gchar *p,
11557 gchar* g_utf8_strreverse (const gchar *str,
11560 gunichar2 *g_utf8_to_utf16 (const gchar *str,
11563 glong *items_written,
11564 GError **error) __attribute__((__malloc__));
11565 gunichar * g_utf8_to_ucs4 (const gchar *str,
11568 glong *items_written,
11569 GError **error) __attribute__((__malloc__));
11570 gunichar * g_utf8_to_ucs4_fast (const gchar *str,
11572 glong *items_written) __attribute__((__malloc__));
11573 gunichar * g_utf16_to_ucs4 (const gunichar2 *str,
11576 glong *items_written,
11577 GError **error) __attribute__((__malloc__));
11578 gchar* g_utf16_to_utf8 (const gunichar2 *str,
11581 glong *items_written,
11582 GError **error) __attribute__((__malloc__));
11583 gunichar2 *g_ucs4_to_utf16 (const gunichar *str,
11586 glong *items_written,
11587 GError **error) __attribute__((__malloc__));
11588 gchar* g_ucs4_to_utf8 (const gunichar *str,
11591 glong *items_written,
11592 GError **error) __attribute__((__malloc__));
11594 gint g_unichar_to_utf8 (gunichar c,
11597 gboolean g_utf8_validate (const gchar *str,
11599 const gchar **end);
11601 gchar *g_utf8_strup (const gchar *str,
11602 gssize len) __attribute__((__malloc__));
11603 gchar *g_utf8_strdown (const gchar *str,
11604 gssize len) __attribute__((__malloc__));
11605 gchar *g_utf8_casefold (const gchar *str,
11606 gssize len) __attribute__((__malloc__));
11607 # 723 "/usr/include/glib-2.0/glib/gunicode.h"
11609 G_NORMALIZE_DEFAULT,
11610 G_NORMALIZE_NFD = G_NORMALIZE_DEFAULT,
11611 G_NORMALIZE_DEFAULT_COMPOSE,
11612 G_NORMALIZE_NFC = G_NORMALIZE_DEFAULT_COMPOSE,
11614 G_NORMALIZE_NFKD = G_NORMALIZE_ALL,
11615 G_NORMALIZE_ALL_COMPOSE,
11616 G_NORMALIZE_NFKC = G_NORMALIZE_ALL_COMPOSE
11619 gchar *g_utf8_normalize (const gchar *str,
11621 GNormalizeMode mode) __attribute__((__malloc__));
11623 gint g_utf8_collate (const gchar *str1,
11624 const gchar *str2) __attribute__((__pure__));
11625 gchar *g_utf8_collate_key (const gchar *str,
11626 gssize len) __attribute__((__malloc__));
11627 gchar *g_utf8_collate_key_for_filename (const gchar *str,
11628 gssize len) __attribute__((__malloc__));
11633 gchar *_g_utf8_make_valid (const gchar *name);
11636 # 36 "/usr/include/glib-2.0/glib/gstring.h" 2
11637 # 1 "/usr/include/glib-2.0/glib/gutils.h" 1
11638 # 34 "/usr/include/glib-2.0/glib/gutils.h"
11639 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
11640 # 35 "/usr/include/glib-2.0/glib/gutils.h" 2
11644 # 96 "/usr/include/glib-2.0/glib/gutils.h"
11645 const gchar * g_get_user_name (void);
11646 const gchar * g_get_real_name (void);
11647 const gchar * g_get_home_dir (void);
11648 const gchar * g_get_tmp_dir (void);
11649 const gchar * g_get_host_name (void);
11650 gchar * g_get_prgname (void);
11651 void g_set_prgname (const gchar *prgname);
11652 const gchar * g_get_application_name (void);
11653 void g_set_application_name (const gchar *application_name);
11655 void g_reload_user_special_dirs_cache (void);
11656 const gchar * g_get_user_data_dir (void);
11657 const gchar * g_get_user_config_dir (void);
11658 const gchar * g_get_user_cache_dir (void);
11659 const gchar * const * g_get_system_data_dirs (void);
11660 # 130 "/usr/include/glib-2.0/glib/gutils.h"
11661 const gchar * const * g_get_system_config_dirs (void);
11663 const gchar * g_get_user_runtime_dir (void);
11664 # 156 "/usr/include/glib-2.0/glib/gutils.h"
11666 G_USER_DIRECTORY_DESKTOP,
11667 G_USER_DIRECTORY_DOCUMENTS,
11668 G_USER_DIRECTORY_DOWNLOAD,
11669 G_USER_DIRECTORY_MUSIC,
11670 G_USER_DIRECTORY_PICTURES,
11671 G_USER_DIRECTORY_PUBLIC_SHARE,
11672 G_USER_DIRECTORY_TEMPLATES,
11673 G_USER_DIRECTORY_VIDEOS,
11675 G_USER_N_DIRECTORIES
11678 const gchar * g_get_user_special_dir (GUserDirectory directory);
11679 # 179 "/usr/include/glib-2.0/glib/gutils.h"
11680 typedef struct _GDebugKey GDebugKey;
11689 guint g_parse_debug_string (const gchar *string,
11690 const GDebugKey *keys,
11693 gint g_snprintf (gchar *string,
11695 gchar const *format,
11696 ...) __attribute__((__format__ (__printf__, 3, 4)));
11697 gint g_vsnprintf (gchar *string,
11699 gchar const *format,
11702 void g_nullify_pointer (gpointer *nullify_location);
11706 G_FORMAT_SIZE_DEFAULT = 0,
11707 G_FORMAT_SIZE_LONG_FORMAT = 1 << 0,
11708 G_FORMAT_SIZE_IEC_UNITS = 1 << 1
11709 } GFormatSizeFlags;
11712 gchar *g_format_size_full (guint64 size,
11713 GFormatSizeFlags flags);
11715 gchar *g_format_size (guint64 size);
11717 __attribute__((__deprecated__("Use '" "g_format_size" "' instead")))
11718 gchar *g_format_size_for_display (goffset size);
11719 # 227 "/usr/include/glib-2.0/glib/gutils.h"
11720 typedef void (*GVoidFunc) (void);
11721 # 238 "/usr/include/glib-2.0/glib/gutils.h"
11722 __attribute__((__deprecated__))
11723 void g_atexit (GVoidFunc func);
11724 # 263 "/usr/include/glib-2.0/glib/gutils.h"
11725 gchar* g_find_program_in_path (const gchar *program);
11729 static __inline __attribute__ ((unused)) gint g_bit_nth_lsf (gulong mask,
11730 gint nth_bit) __attribute__((__const__));
11731 static __inline __attribute__ ((unused)) gint g_bit_nth_msf (gulong mask,
11732 gint nth_bit) __attribute__((__const__));
11733 static __inline __attribute__ ((unused)) guint g_bit_storage (gulong number) __attribute__((__const__));
11738 static __inline __attribute__ ((unused)) gint
11739 g_bit_nth_lsf (gulong mask,
11742 if ((__builtin_expect (__extension__ ({ int _g_boolean_var_; if (nth_bit < -1) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 0)))
11744 while (nth_bit < ((4 * 8) - 1))
11747 if (mask & (1UL << nth_bit))
11752 static __inline __attribute__ ((unused)) gint
11753 g_bit_nth_msf (gulong mask,
11756 if (nth_bit < 0 || (__builtin_expect (__extension__ ({ int _g_boolean_var_; if (nth_bit > 4 * 8) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 0)))
11758 while (nth_bit > 0)
11761 if (mask & (1UL << nth_bit))
11766 static __inline __attribute__ ((unused)) guint
11767 g_bit_storage (gulong number)
11770 return (__builtin_expect (__extension__ ({ int _g_boolean_var_; if (number) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 1)) ?
11771 ((4 * 8U - 1) ^ (guint) __builtin_clzl(number)) + 1 : 1;
11772 # 321 "/usr/include/glib-2.0/glib/gutils.h"
11777 # 37 "/usr/include/glib-2.0/glib/gstring.h" 2
11781 typedef struct _GString GString;
11787 gsize allocated_len;
11790 GString* g_string_new (const gchar *init);
11791 GString* g_string_new_len (const gchar *init,
11793 GString* g_string_sized_new (gsize dfl_size);
11794 gchar* g_string_free (GString *string,
11795 gboolean free_segment);
11796 gboolean g_string_equal (const GString *v,
11797 const GString *v2);
11798 guint g_string_hash (const GString *str);
11799 GString* g_string_assign (GString *string,
11800 const gchar *rval);
11801 GString* g_string_truncate (GString *string,
11803 GString* g_string_set_size (GString *string,
11805 GString* g_string_insert_len (GString *string,
11809 GString* g_string_append (GString *string,
11811 GString* g_string_append_len (GString *string,
11814 GString* g_string_append_c (GString *string,
11816 GString* g_string_append_unichar (GString *string,
11818 GString* g_string_prepend (GString *string,
11820 GString* g_string_prepend_c (GString *string,
11822 GString* g_string_prepend_unichar (GString *string,
11824 GString* g_string_prepend_len (GString *string,
11827 GString* g_string_insert (GString *string,
11830 GString* g_string_insert_c (GString *string,
11833 GString* g_string_insert_unichar (GString *string,
11836 GString* g_string_overwrite (GString *string,
11839 GString* g_string_overwrite_len (GString *string,
11843 GString* g_string_erase (GString *string,
11846 GString* g_string_ascii_down (GString *string);
11847 GString* g_string_ascii_up (GString *string);
11848 void g_string_vprintf (GString *string,
11849 const gchar *format,
11851 void g_string_printf (GString *string,
11852 const gchar *format,
11853 ...) __attribute__((__format__ (__printf__, 2, 3)));
11854 void g_string_append_vprintf (GString *string,
11855 const gchar *format,
11857 void g_string_append_printf (GString *string,
11858 const gchar *format,
11859 ...) __attribute__((__format__ (__printf__, 2, 3)));
11860 GString* g_string_append_uri_escaped (GString *string,
11861 const gchar *unescaped,
11862 const gchar *reserved_chars_allowed,
11863 gboolean allow_utf8);
11867 static inline GString*
11868 g_string_append_c_inline (GString *gstring,
11871 if (gstring->len + 1 < gstring->allocated_len)
11873 gstring->str[gstring->len++] = c;
11874 gstring->str[gstring->len] = 0;
11877 g_string_insert_c (gstring, -1, c);
11884 __attribute__((__deprecated__))
11885 GString *g_string_down (GString *string);
11886 __attribute__((__deprecated__))
11887 GString *g_string_up (GString *string);
11895 # 37 "/usr/include/glib-2.0/glib/giochannel.h" 2
11902 typedef struct _GIOChannel GIOChannel;
11903 typedef struct _GIOFuncs GIOFuncs;
11918 G_IO_CHANNEL_ERROR_FBIG,
11919 G_IO_CHANNEL_ERROR_INVAL,
11920 G_IO_CHANNEL_ERROR_IO,
11921 G_IO_CHANNEL_ERROR_ISDIR,
11922 G_IO_CHANNEL_ERROR_NOSPC,
11923 G_IO_CHANNEL_ERROR_NXIO,
11924 G_IO_CHANNEL_ERROR_OVERFLOW,
11925 G_IO_CHANNEL_ERROR_PIPE,
11927 G_IO_CHANNEL_ERROR_FAILED
11933 G_IO_STATUS_NORMAL,
11957 G_IO_FLAG_APPEND = 1 << 0,
11958 G_IO_FLAG_NONBLOCK = 1 << 1,
11959 G_IO_FLAG_IS_READABLE = 1 << 2,
11960 G_IO_FLAG_IS_WRITABLE = 1 << 3,
11961 G_IO_FLAG_IS_SEEKABLE = 1 << 4,
11962 G_IO_FLAG_MASK = (1 << 5) - 1,
11963 G_IO_FLAG_GET_MASK = G_IO_FLAG_MASK,
11964 G_IO_FLAG_SET_MASK = G_IO_FLAG_APPEND | G_IO_FLAG_NONBLOCK
11980 guint line_term_len;
11984 GString *encoded_read_buf;
11985 GString *write_buf;
11986 gchar partial_write_buf[6];
11990 guint use_buffer : 1;
11991 guint do_encode : 1;
11992 guint close_on_unref : 1;
11993 guint is_readable : 1;
11994 guint is_writeable : 1;
11995 guint is_seekable : 1;
11997 gpointer reserved1;
11998 gpointer reserved2;
12001 typedef gboolean (*GIOFunc) (GIOChannel *source,
12002 GIOCondition condition,
12006 GIOStatus (*io_read) (GIOChannel *channel,
12011 GIOStatus (*io_write) (GIOChannel *channel,
12014 gsize *bytes_written,
12016 GIOStatus (*io_seek) (GIOChannel *channel,
12020 GIOStatus (*io_close) (GIOChannel *channel,
12022 GSource* (*io_create_watch) (GIOChannel *channel,
12023 GIOCondition condition);
12024 void (*io_free) (GIOChannel *channel);
12025 GIOStatus (*io_set_flags) (GIOChannel *channel,
12028 GIOFlags (*io_get_flags) (GIOChannel *channel);
12031 void g_io_channel_init (GIOChannel *channel);
12032 GIOChannel *g_io_channel_ref (GIOChannel *channel);
12033 void g_io_channel_unref (GIOChannel *channel);
12035 __attribute__((__deprecated__("Use '" "g_io_channel_read_for" "' instead")))
12036 GIOError g_io_channel_read (GIOChannel *channel,
12039 gsize *bytes_read);
12041 __attribute__((__deprecated__("Use '" "g_io_channel_write_chars" "' instead")))
12042 GIOError g_io_channel_write (GIOChannel *channel,
12045 gsize *bytes_written);
12047 __attribute__((__deprecated__("Use '" "g_io_channel_seek_position" "' instead")))
12048 GIOError g_io_channel_seek (GIOChannel *channel,
12052 __attribute__((__deprecated__("Use '" "g_io_channel_shutdown" "' instead")))
12053 void g_io_channel_close (GIOChannel *channel);
12055 GIOStatus g_io_channel_shutdown (GIOChannel *channel,
12058 guint g_io_add_watch_full (GIOChannel *channel,
12060 GIOCondition condition,
12062 gpointer user_data,
12063 GDestroyNotify notify);
12064 GSource * g_io_create_watch (GIOChannel *channel,
12065 GIOCondition condition);
12066 guint g_io_add_watch (GIOChannel *channel,
12067 GIOCondition condition,
12069 gpointer user_data);
12074 void g_io_channel_set_buffer_size (GIOChannel *channel,
12076 gsize g_io_channel_get_buffer_size (GIOChannel *channel);
12077 GIOCondition g_io_channel_get_buffer_condition (GIOChannel *channel);
12078 GIOStatus g_io_channel_set_flags (GIOChannel *channel,
12081 GIOFlags g_io_channel_get_flags (GIOChannel *channel);
12082 void g_io_channel_set_line_term (GIOChannel *channel,
12083 const gchar *line_term,
12085 const gchar * g_io_channel_get_line_term (GIOChannel *channel,
12087 void g_io_channel_set_buffered (GIOChannel *channel,
12088 gboolean buffered);
12089 gboolean g_io_channel_get_buffered (GIOChannel *channel);
12090 GIOStatus g_io_channel_set_encoding (GIOChannel *channel,
12091 const gchar *encoding,
12093 const gchar * g_io_channel_get_encoding (GIOChannel *channel);
12094 void g_io_channel_set_close_on_unref (GIOChannel *channel,
12095 gboolean do_close);
12096 gboolean g_io_channel_get_close_on_unref (GIOChannel *channel);
12099 GIOStatus g_io_channel_flush (GIOChannel *channel,
12101 GIOStatus g_io_channel_read_line (GIOChannel *channel,
12102 gchar **str_return,
12104 gsize *terminator_pos,
12106 GIOStatus g_io_channel_read_line_string (GIOChannel *channel,
12108 gsize *terminator_pos,
12110 GIOStatus g_io_channel_read_to_end (GIOChannel *channel,
12111 gchar **str_return,
12114 GIOStatus g_io_channel_read_chars (GIOChannel *channel,
12119 GIOStatus g_io_channel_read_unichar (GIOChannel *channel,
12122 GIOStatus g_io_channel_write_chars (GIOChannel *channel,
12125 gsize *bytes_written,
12127 GIOStatus g_io_channel_write_unichar (GIOChannel *channel,
12130 GIOStatus g_io_channel_seek_position (GIOChannel *channel,
12138 GIOChannel* g_io_channel_new_file (const gchar *filename,
12144 GQuark g_io_channel_error_quark (void);
12145 GIOChannelError g_io_channel_error_from_errno (gint en);
12146 # 306 "/usr/include/glib-2.0/glib/giochannel.h"
12147 GIOChannel* g_io_channel_unix_new (int fd);
12148 gint g_io_channel_unix_get_fd (GIOChannel *channel);
12152 extern GSourceFuncs g_io_watch_funcs;
12153 # 372 "/usr/include/glib-2.0/glib/giochannel.h"
12155 # 57 "/usr/include/glib-2.0/glib.h" 2
12156 # 1 "/usr/include/glib-2.0/glib/gkeyfile.h" 1
12157 # 30 "/usr/include/glib-2.0/glib/gkeyfile.h"
12158 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
12159 # 31 "/usr/include/glib-2.0/glib/gkeyfile.h" 2
12165 G_KEY_FILE_ERROR_UNKNOWN_ENCODING,
12166 G_KEY_FILE_ERROR_PARSE,
12167 G_KEY_FILE_ERROR_NOT_FOUND,
12168 G_KEY_FILE_ERROR_KEY_NOT_FOUND,
12169 G_KEY_FILE_ERROR_GROUP_NOT_FOUND,
12170 G_KEY_FILE_ERROR_INVALID_VALUE
12175 GQuark g_key_file_error_quark (void);
12177 typedef struct _GKeyFile GKeyFile;
12181 G_KEY_FILE_NONE = 0,
12182 G_KEY_FILE_KEEP_COMMENTS = 1 << 0,
12183 G_KEY_FILE_KEEP_TRANSLATIONS = 1 << 1
12186 GKeyFile *g_key_file_new (void);
12187 GKeyFile *g_key_file_ref (GKeyFile *key_file);
12188 void g_key_file_unref (GKeyFile *key_file);
12189 void g_key_file_free (GKeyFile *key_file);
12190 void g_key_file_set_list_separator (GKeyFile *key_file,
12192 gboolean g_key_file_load_from_file (GKeyFile *key_file,
12194 GKeyFileFlags flags,
12196 gboolean g_key_file_load_from_data (GKeyFile *key_file,
12199 GKeyFileFlags flags,
12201 gboolean g_key_file_load_from_dirs (GKeyFile *key_file,
12203 const gchar **search_dirs,
12205 GKeyFileFlags flags,
12207 gboolean g_key_file_load_from_data_dirs (GKeyFile *key_file,
12210 GKeyFileFlags flags,
12212 gchar *g_key_file_to_data (GKeyFile *key_file,
12214 GError **error) __attribute__((__malloc__));
12215 gchar *g_key_file_get_start_group (GKeyFile *key_file) __attribute__((__malloc__));
12216 gchar **g_key_file_get_groups (GKeyFile *key_file,
12217 gsize *length) __attribute__((__malloc__));
12218 gchar **g_key_file_get_keys (GKeyFile *key_file,
12219 const gchar *group_name,
12221 GError **error) __attribute__((__malloc__));
12222 gboolean g_key_file_has_group (GKeyFile *key_file,
12223 const gchar *group_name);
12224 gboolean g_key_file_has_key (GKeyFile *key_file,
12225 const gchar *group_name,
12228 gchar *g_key_file_get_value (GKeyFile *key_file,
12229 const gchar *group_name,
12231 GError **error) __attribute__((__malloc__));
12232 void g_key_file_set_value (GKeyFile *key_file,
12233 const gchar *group_name,
12235 const gchar *value);
12236 gchar *g_key_file_get_string (GKeyFile *key_file,
12237 const gchar *group_name,
12239 GError **error) __attribute__((__malloc__));
12240 void g_key_file_set_string (GKeyFile *key_file,
12241 const gchar *group_name,
12243 const gchar *string);
12244 gchar *g_key_file_get_locale_string (GKeyFile *key_file,
12245 const gchar *group_name,
12247 const gchar *locale,
12248 GError **error) __attribute__((__malloc__));
12249 void g_key_file_set_locale_string (GKeyFile *key_file,
12250 const gchar *group_name,
12252 const gchar *locale,
12253 const gchar *string);
12254 gboolean g_key_file_get_boolean (GKeyFile *key_file,
12255 const gchar *group_name,
12258 void g_key_file_set_boolean (GKeyFile *key_file,
12259 const gchar *group_name,
12262 gint g_key_file_get_integer (GKeyFile *key_file,
12263 const gchar *group_name,
12266 void g_key_file_set_integer (GKeyFile *key_file,
12267 const gchar *group_name,
12270 gint64 g_key_file_get_int64 (GKeyFile *key_file,
12271 const gchar *group_name,
12274 void g_key_file_set_int64 (GKeyFile *key_file,
12275 const gchar *group_name,
12278 guint64 g_key_file_get_uint64 (GKeyFile *key_file,
12279 const gchar *group_name,
12282 void g_key_file_set_uint64 (GKeyFile *key_file,
12283 const gchar *group_name,
12286 gdouble g_key_file_get_double (GKeyFile *key_file,
12287 const gchar *group_name,
12290 void g_key_file_set_double (GKeyFile *key_file,
12291 const gchar *group_name,
12294 gchar **g_key_file_get_string_list (GKeyFile *key_file,
12295 const gchar *group_name,
12298 GError **error) __attribute__((__malloc__));
12299 void g_key_file_set_string_list (GKeyFile *key_file,
12300 const gchar *group_name,
12302 const gchar * const list[],
12304 gchar **g_key_file_get_locale_string_list (GKeyFile *key_file,
12305 const gchar *group_name,
12307 const gchar *locale,
12309 GError **error) __attribute__((__malloc__));
12310 void g_key_file_set_locale_string_list (GKeyFile *key_file,
12311 const gchar *group_name,
12313 const gchar *locale,
12314 const gchar * const list[],
12316 gboolean *g_key_file_get_boolean_list (GKeyFile *key_file,
12317 const gchar *group_name,
12320 GError **error) __attribute__((__malloc__));
12321 void g_key_file_set_boolean_list (GKeyFile *key_file,
12322 const gchar *group_name,
12326 gint *g_key_file_get_integer_list (GKeyFile *key_file,
12327 const gchar *group_name,
12330 GError **error) __attribute__((__malloc__));
12331 void g_key_file_set_double_list (GKeyFile *key_file,
12332 const gchar *group_name,
12336 gdouble *g_key_file_get_double_list (GKeyFile *key_file,
12337 const gchar *group_name,
12340 GError **error) __attribute__((__malloc__));
12341 void g_key_file_set_integer_list (GKeyFile *key_file,
12342 const gchar *group_name,
12346 gboolean g_key_file_set_comment (GKeyFile *key_file,
12347 const gchar *group_name,
12349 const gchar *comment,
12351 gchar *g_key_file_get_comment (GKeyFile *key_file,
12352 const gchar *group_name,
12354 GError **error) __attribute__((__malloc__));
12356 gboolean g_key_file_remove_comment (GKeyFile *key_file,
12357 const gchar *group_name,
12360 gboolean g_key_file_remove_key (GKeyFile *key_file,
12361 const gchar *group_name,
12364 gboolean g_key_file_remove_group (GKeyFile *key_file,
12365 const gchar *group_name,
12367 # 266 "/usr/include/glib-2.0/glib/gkeyfile.h"
12369 # 58 "/usr/include/glib-2.0/glib.h" 2
12370 # 1 "/usr/include/glib-2.0/glib/glist.h" 1
12371 # 59 "/usr/include/glib-2.0/glib.h" 2
12372 # 1 "/usr/include/glib-2.0/glib/gmacros.h" 1
12373 # 60 "/usr/include/glib-2.0/glib.h" 2
12374 # 1 "/usr/include/glib-2.0/glib/gmain.h" 1
12375 # 61 "/usr/include/glib-2.0/glib.h" 2
12376 # 1 "/usr/include/glib-2.0/glib/gmappedfile.h" 1
12377 # 29 "/usr/include/glib-2.0/glib/gmappedfile.h"
12378 # 1 "/usr/include/glib-2.0/glib/gbytes.h" 1
12379 # 30 "/usr/include/glib-2.0/glib/gmappedfile.h" 2
12380 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
12381 # 31 "/usr/include/glib-2.0/glib/gmappedfile.h" 2
12385 typedef struct _GMappedFile GMappedFile;
12387 GMappedFile *g_mapped_file_new (const gchar *filename,
12389 GError **error) __attribute__((__malloc__));
12390 GMappedFile *g_mapped_file_new_from_fd (gint fd,
12392 GError **error) __attribute__((__malloc__));
12393 gsize g_mapped_file_get_length (GMappedFile *file);
12394 gchar *g_mapped_file_get_contents (GMappedFile *file);
12395 GMappedFile *g_mapped_file_ref (GMappedFile *file);
12396 void g_mapped_file_unref (GMappedFile *file);
12398 __attribute__((__deprecated__("Use '" "g_mapped_file_unref" "' instead")))
12399 void g_mapped_file_free (GMappedFile *file);
12402 # 62 "/usr/include/glib-2.0/glib.h" 2
12403 # 1 "/usr/include/glib-2.0/glib/gmarkup.h" 1
12404 # 30 "/usr/include/glib-2.0/glib/gmarkup.h"
12405 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
12406 # 31 "/usr/include/glib-2.0/glib/gmarkup.h" 2
12407 # 1 "/usr/include/glib-2.0/glib/gslist.h" 1
12408 # 32 "/usr/include/glib-2.0/glib/gmarkup.h" 2
12411 # 51 "/usr/include/glib-2.0/glib/gmarkup.h"
12414 G_MARKUP_ERROR_BAD_UTF8,
12415 G_MARKUP_ERROR_EMPTY,
12416 G_MARKUP_ERROR_PARSE,
12420 G_MARKUP_ERROR_UNKNOWN_ELEMENT,
12421 G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
12422 G_MARKUP_ERROR_INVALID_CONTENT,
12423 G_MARKUP_ERROR_MISSING_ATTRIBUTE
12425 # 74 "/usr/include/glib-2.0/glib/gmarkup.h"
12426 GQuark g_markup_error_quark (void);
12427 # 92 "/usr/include/glib-2.0/glib/gmarkup.h"
12430 G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 1 << 0,
12431 G_MARKUP_TREAT_CDATA_AS_TEXT = 1 << 1,
12432 G_MARKUP_PREFIX_ERROR_POSITION = 1 << 2
12433 } GMarkupParseFlags;
12434 # 108 "/usr/include/glib-2.0/glib/gmarkup.h"
12435 typedef struct _GMarkupParseContext GMarkupParseContext;
12436 typedef struct _GMarkupParser GMarkupParser;
12437 # 138 "/usr/include/glib-2.0/glib/gmarkup.h"
12438 struct _GMarkupParser
12441 void (*start_element) (GMarkupParseContext *context,
12442 const gchar *element_name,
12443 const gchar **attribute_names,
12444 const gchar **attribute_values,
12445 gpointer user_data,
12449 void (*end_element) (GMarkupParseContext *context,
12450 const gchar *element_name,
12451 gpointer user_data,
12456 void (*text) (GMarkupParseContext *context,
12459 gpointer user_data,
12467 void (*passthrough) (GMarkupParseContext *context,
12468 const gchar *passthrough_text,
12470 gpointer user_data,
12476 void (*error) (GMarkupParseContext *context,
12478 gpointer user_data);
12481 GMarkupParseContext *g_markup_parse_context_new (const GMarkupParser *parser,
12482 GMarkupParseFlags flags,
12483 gpointer user_data,
12484 GDestroyNotify user_data_dnotify);
12485 void g_markup_parse_context_free (GMarkupParseContext *context);
12486 gboolean g_markup_parse_context_parse (GMarkupParseContext *context,
12490 void g_markup_parse_context_push (GMarkupParseContext *context,
12491 const GMarkupParser *parser,
12492 gpointer user_data);
12493 gpointer g_markup_parse_context_pop (GMarkupParseContext *context);
12495 gboolean g_markup_parse_context_end_parse (GMarkupParseContext *context,
12497 const gchar * g_markup_parse_context_get_element (GMarkupParseContext *context);
12498 const GSList * g_markup_parse_context_get_element_stack (GMarkupParseContext *context);
12501 void g_markup_parse_context_get_position (GMarkupParseContext *context,
12503 gint *char_number);
12504 gpointer g_markup_parse_context_get_user_data (GMarkupParseContext *context);
12507 gchar* g_markup_escape_text (const gchar *text,
12510 gchar *g_markup_printf_escaped (const char *format,
12511 ...) __attribute__((__format__ (__printf__, 1, 2)));
12512 gchar *g_markup_vprintf_escaped (const char *format,
12517 G_MARKUP_COLLECT_INVALID,
12518 G_MARKUP_COLLECT_STRING,
12519 G_MARKUP_COLLECT_STRDUP,
12520 G_MARKUP_COLLECT_BOOLEAN,
12521 G_MARKUP_COLLECT_TRISTATE,
12523 G_MARKUP_COLLECT_OPTIONAL = (1 << 16)
12524 } GMarkupCollectType;
12528 gboolean g_markup_collect_attributes (const gchar *element_name,
12529 const gchar **attribute_names,
12530 const gchar **attribute_values,
12532 GMarkupCollectType first_type,
12533 const gchar *first_attr,
12537 # 63 "/usr/include/glib-2.0/glib.h" 2
12538 # 1 "/usr/include/glib-2.0/glib/gmem.h" 1
12539 # 64 "/usr/include/glib-2.0/glib.h" 2
12540 # 1 "/usr/include/glib-2.0/glib/gmessages.h" 1
12541 # 35 "/usr/include/glib-2.0/glib/gmessages.h"
12542 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
12543 # 36 "/usr/include/glib-2.0/glib/gmessages.h" 2
12544 # 1 "/usr/include/glib-2.0/glib/gmacros.h" 1
12545 # 37 "/usr/include/glib-2.0/glib/gmessages.h" 2
12551 # 42 "/usr/include/glib-2.0/glib/gmessages.h" 3
12558 gsize g_printf_string_upper_bound (const gchar* format,
12560 # 58 "/usr/include/glib-2.0/glib/gmessages.h" 3
12564 G_LOG_FLAG_RECURSION = 1 << 0,
12565 G_LOG_FLAG_FATAL = 1 << 1,
12568 G_LOG_LEVEL_ERROR = 1 << 2,
12569 G_LOG_LEVEL_CRITICAL = 1 << 3,
12570 G_LOG_LEVEL_WARNING = 1 << 4,
12571 G_LOG_LEVEL_MESSAGE = 1 << 5,
12572 G_LOG_LEVEL_INFO = 1 << 6,
12573 G_LOG_LEVEL_DEBUG = 1 << 7,
12575 G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
12581 typedef void (*GLogFunc) (const gchar *log_domain,
12582 GLogLevelFlags log_level,
12583 const gchar *message,
12584 gpointer user_data);
12588 guint g_log_set_handler (const gchar *log_domain,
12589 GLogLevelFlags log_levels,
12591 gpointer user_data);
12592 void g_log_remove_handler (const gchar *log_domain,
12594 void g_log_default_handler (const gchar *log_domain,
12595 GLogLevelFlags log_level,
12596 const gchar *message,
12597 gpointer unused_data);
12598 GLogFunc g_log_set_default_handler (GLogFunc log_func,
12599 gpointer user_data);
12600 void g_log (const gchar *log_domain,
12601 GLogLevelFlags log_level,
12602 const gchar *format,
12603 ...) __attribute__((__format__ (__printf__, 3, 4)));
12604 void g_logv (const gchar *log_domain,
12605 GLogLevelFlags log_level,
12606 const gchar *format,
12608 GLogLevelFlags g_log_set_fatal_mask (const gchar *log_domain,
12609 GLogLevelFlags fatal_mask);
12610 GLogLevelFlags g_log_set_always_fatal (GLogLevelFlags fatal_mask);
12613 __attribute__((visibility("hidden"))) void _g_log_fallback_handler (const gchar *log_domain,
12614 GLogLevelFlags log_level,
12615 const gchar *message,
12616 gpointer unused_data);
12619 void g_return_if_fail_warning (const char *log_domain,
12620 const char *pretty_function,
12621 const char *expression);
12622 void g_warn_message (const char *domain,
12626 const char *warnexpr);
12627 __attribute__((__deprecated__))
12628 void g_assert_warning (const char *log_domain,
12631 const char *pretty_function,
12632 const char *expression) __attribute__((__noreturn__));
12633 # 235 "/usr/include/glib-2.0/glib/gmessages.h" 3
12634 typedef void (*GPrintFunc) (const gchar *string);
12635 void g_print (const gchar *format,
12636 ...) __attribute__((__format__ (__printf__, 1, 2)));
12637 GPrintFunc g_set_print_handler (GPrintFunc func);
12638 void g_printerr (const gchar *format,
12639 ...) __attribute__((__format__ (__printf__, 1, 2)));
12640 GPrintFunc g_set_printerr_handler (GPrintFunc func);
12641 # 402 "/usr/include/glib-2.0/glib/gmessages.h" 3
12643 # 65 "/usr/include/glib-2.0/glib.h" 2
12644 # 1 "/usr/include/glib-2.0/glib/gnode.h" 1
12645 # 34 "/usr/include/glib-2.0/glib/gnode.h"
12646 # 1 "/usr/include/glib-2.0/glib/gmem.h" 1
12647 # 35 "/usr/include/glib-2.0/glib/gnode.h" 2
12651 typedef struct _GNode GNode;
12656 G_TRAVERSE_LEAVES = 1 << 0,
12657 G_TRAVERSE_NON_LEAVES = 1 << 1,
12658 G_TRAVERSE_ALL = G_TRAVERSE_LEAVES | G_TRAVERSE_NON_LEAVES,
12659 G_TRAVERSE_MASK = 0x03,
12660 G_TRAVERSE_LEAFS = G_TRAVERSE_LEAVES,
12661 G_TRAVERSE_NON_LEAFS = G_TRAVERSE_NON_LEAVES
12673 typedef gboolean (*GNodeTraverseFunc) (GNode *node,
12675 typedef void (*GNodeForeachFunc) (GNode *node,
12677 # 77 "/usr/include/glib-2.0/glib/gnode.h"
12678 typedef gpointer (*GCopyFunc) (gconstpointer src,
12691 # 115 "/usr/include/glib-2.0/glib/gnode.h"
12692 GNode* g_node_new (gpointer data);
12693 void g_node_destroy (GNode *root);
12694 void g_node_unlink (GNode *node);
12695 GNode* g_node_copy_deep (GNode *node,
12696 GCopyFunc copy_func,
12698 GNode* g_node_copy (GNode *node);
12699 GNode* g_node_insert (GNode *parent,
12702 GNode* g_node_insert_before (GNode *parent,
12705 GNode* g_node_insert_after (GNode *parent,
12708 GNode* g_node_prepend (GNode *parent,
12710 guint g_node_n_nodes (GNode *root,
12711 GTraverseFlags flags);
12712 GNode* g_node_get_root (GNode *node);
12713 gboolean g_node_is_ancestor (GNode *node,
12714 GNode *descendant);
12715 guint g_node_depth (GNode *node);
12716 GNode* g_node_find (GNode *root,
12717 GTraverseType order,
12718 GTraverseFlags flags,
12720 # 226 "/usr/include/glib-2.0/glib/gnode.h"
12721 void g_node_traverse (GNode *root,
12722 GTraverseType order,
12723 GTraverseFlags flags,
12725 GNodeTraverseFunc func,
12733 guint g_node_max_height (GNode *root);
12735 void g_node_children_foreach (GNode *node,
12736 GTraverseFlags flags,
12737 GNodeForeachFunc func,
12739 void g_node_reverse_children (GNode *node);
12740 guint g_node_n_children (GNode *node);
12741 GNode* g_node_nth_child (GNode *node,
12743 GNode* g_node_last_child (GNode *node);
12744 GNode* g_node_find_child (GNode *node,
12745 GTraverseFlags flags,
12747 gint g_node_child_position (GNode *node,
12749 gint g_node_child_index (GNode *node,
12752 GNode* g_node_first_sibling (GNode *node);
12753 GNode* g_node_last_sibling (GNode *node);
12754 # 296 "/usr/include/glib-2.0/glib/gnode.h"
12756 # 66 "/usr/include/glib-2.0/glib.h" 2
12757 # 1 "/usr/include/glib-2.0/glib/goption.h" 1
12758 # 28 "/usr/include/glib-2.0/glib/goption.h"
12759 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
12760 # 29 "/usr/include/glib-2.0/glib/goption.h" 2
12761 # 1 "/usr/include/glib-2.0/glib/gquark.h" 1
12762 # 30 "/usr/include/glib-2.0/glib/goption.h" 2
12765 # 40 "/usr/include/glib-2.0/glib/goption.h"
12766 typedef struct _GOptionContext GOptionContext;
12767 # 53 "/usr/include/glib-2.0/glib/goption.h"
12768 typedef struct _GOptionGroup GOptionGroup;
12769 typedef struct _GOptionEntry GOptionEntry;
12770 # 82 "/usr/include/glib-2.0/glib/goption.h"
12773 G_OPTION_FLAG_HIDDEN = 1 << 0,
12774 G_OPTION_FLAG_IN_MAIN = 1 << 1,
12775 G_OPTION_FLAG_REVERSE = 1 << 2,
12776 G_OPTION_FLAG_NO_ARG = 1 << 3,
12777 G_OPTION_FLAG_FILENAME = 1 << 4,
12778 G_OPTION_FLAG_OPTIONAL_ARG = 1 << 5,
12779 G_OPTION_FLAG_NOALIAS = 1 << 6
12781 # 118 "/usr/include/glib-2.0/glib/goption.h"
12785 G_OPTION_ARG_STRING,
12787 G_OPTION_ARG_CALLBACK,
12788 G_OPTION_ARG_FILENAME,
12789 G_OPTION_ARG_STRING_ARRAY,
12790 G_OPTION_ARG_FILENAME_ARRAY,
12791 G_OPTION_ARG_DOUBLE,
12794 # 148 "/usr/include/glib-2.0/glib/goption.h"
12795 typedef gboolean (*GOptionArgFunc) (const gchar *option_name,
12796 const gchar *value,
12799 # 166 "/usr/include/glib-2.0/glib/goption.h"
12800 typedef gboolean (*GOptionParseFunc) (GOptionContext *context,
12801 GOptionGroup *group,
12804 # 181 "/usr/include/glib-2.0/glib/goption.h"
12805 typedef void (*GOptionErrorFunc) (GOptionContext *context,
12806 GOptionGroup *group,
12809 # 205 "/usr/include/glib-2.0/glib/goption.h"
12812 G_OPTION_ERROR_UNKNOWN_OPTION,
12813 G_OPTION_ERROR_BAD_VALUE,
12814 G_OPTION_ERROR_FAILED
12817 GQuark g_option_error_quark (void);
12818 # 279 "/usr/include/glib-2.0/glib/goption.h"
12819 struct _GOptionEntry
12821 const gchar *long_name;
12828 const gchar *description;
12829 const gchar *arg_description;
12831 # 310 "/usr/include/glib-2.0/glib/goption.h"
12832 GOptionContext *g_option_context_new (const gchar *parameter_string);
12833 void g_option_context_set_summary (GOptionContext *context,
12834 const gchar *summary);
12835 const gchar * g_option_context_get_summary (GOptionContext *context);
12836 void g_option_context_set_description (GOptionContext *context,
12837 const gchar *description);
12838 const gchar * g_option_context_get_description (GOptionContext *context);
12839 void g_option_context_free (GOptionContext *context);
12840 void g_option_context_set_help_enabled (GOptionContext *context,
12841 gboolean help_enabled);
12842 gboolean g_option_context_get_help_enabled (GOptionContext *context);
12843 void g_option_context_set_ignore_unknown_options (GOptionContext *context,
12844 gboolean ignore_unknown);
12845 gboolean g_option_context_get_ignore_unknown_options (GOptionContext *context);
12847 void g_option_context_add_main_entries (GOptionContext *context,
12848 const GOptionEntry *entries,
12849 const gchar *translation_domain);
12850 gboolean g_option_context_parse (GOptionContext *context,
12854 void g_option_context_set_translate_func (GOptionContext *context,
12855 GTranslateFunc func,
12857 GDestroyNotify destroy_notify);
12858 void g_option_context_set_translation_domain (GOptionContext *context,
12859 const gchar *domain);
12861 void g_option_context_add_group (GOptionContext *context,
12862 GOptionGroup *group);
12863 void g_option_context_set_main_group (GOptionContext *context,
12864 GOptionGroup *group);
12865 GOptionGroup *g_option_context_get_main_group (GOptionContext *context);
12866 gchar *g_option_context_get_help (GOptionContext *context,
12867 gboolean main_help,
12868 GOptionGroup *group);
12870 GOptionGroup *g_option_group_new (const gchar *name,
12871 const gchar *description,
12872 const gchar *help_description,
12873 gpointer user_data,
12874 GDestroyNotify destroy);
12875 void g_option_group_set_parse_hooks (GOptionGroup *group,
12876 GOptionParseFunc pre_parse_func,
12877 GOptionParseFunc post_parse_func);
12878 void g_option_group_set_error_hook (GOptionGroup *group,
12879 GOptionErrorFunc error_func);
12880 void g_option_group_free (GOptionGroup *group);
12881 void g_option_group_add_entries (GOptionGroup *group,
12882 const GOptionEntry *entries);
12883 void g_option_group_set_translate_func (GOptionGroup *group,
12884 GTranslateFunc func,
12886 GDestroyNotify destroy_notify);
12887 void g_option_group_set_translation_domain (GOptionGroup *group,
12888 const gchar *domain);
12891 # 67 "/usr/include/glib-2.0/glib.h" 2
12892 # 1 "/usr/include/glib-2.0/glib/gpattern.h" 1
12893 # 27 "/usr/include/glib-2.0/glib/gpattern.h"
12894 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
12895 # 28 "/usr/include/glib-2.0/glib/gpattern.h" 2
12900 typedef struct _GPatternSpec GPatternSpec;
12902 GPatternSpec* g_pattern_spec_new (const gchar *pattern);
12903 void g_pattern_spec_free (GPatternSpec *pspec);
12904 gboolean g_pattern_spec_equal (GPatternSpec *pspec1,
12905 GPatternSpec *pspec2);
12906 gboolean g_pattern_match (GPatternSpec *pspec,
12907 guint string_length,
12908 const gchar *string,
12909 const gchar *string_reversed);
12910 gboolean g_pattern_match_string (GPatternSpec *pspec,
12911 const gchar *string);
12912 gboolean g_pattern_match_simple (const gchar *pattern,
12913 const gchar *string);
12916 # 68 "/usr/include/glib-2.0/glib.h" 2
12917 # 1 "/usr/include/glib-2.0/glib/gpoll.h" 1
12918 # 69 "/usr/include/glib-2.0/glib.h" 2
12919 # 1 "/usr/include/glib-2.0/glib/gprimes.h" 1
12920 # 34 "/usr/include/glib-2.0/glib/gprimes.h"
12921 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
12922 # 35 "/usr/include/glib-2.0/glib/gprimes.h" 2
12925 # 47 "/usr/include/glib-2.0/glib/gprimes.h"
12926 guint g_spaced_primes_closest (guint num) __attribute__((__const__));
12929 # 70 "/usr/include/glib-2.0/glib.h" 2
12930 # 1 "/usr/include/glib-2.0/glib/gqsort.h" 1
12931 # 34 "/usr/include/glib-2.0/glib/gqsort.h"
12932 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
12933 # 35 "/usr/include/glib-2.0/glib/gqsort.h" 2
12937 void g_qsort_with_data (gconstpointer pbase,
12940 GCompareDataFunc compare_func,
12941 gpointer user_data);
12944 # 71 "/usr/include/glib-2.0/glib.h" 2
12945 # 1 "/usr/include/glib-2.0/glib/gquark.h" 1
12946 # 72 "/usr/include/glib-2.0/glib.h" 2
12947 # 1 "/usr/include/glib-2.0/glib/gqueue.h" 1
12948 # 34 "/usr/include/glib-2.0/glib/gqueue.h"
12949 # 1 "/usr/include/glib-2.0/glib/glist.h" 1
12950 # 35 "/usr/include/glib-2.0/glib/gqueue.h" 2
12954 typedef struct _GQueue GQueue;
12955 # 49 "/usr/include/glib-2.0/glib/gqueue.h"
12962 # 74 "/usr/include/glib-2.0/glib/gqueue.h"
12963 GQueue* g_queue_new (void);
12964 void g_queue_free (GQueue *queue);
12965 void g_queue_free_full (GQueue *queue,
12966 GDestroyNotify free_func);
12967 void g_queue_init (GQueue *queue);
12968 void g_queue_clear (GQueue *queue);
12969 gboolean g_queue_is_empty (GQueue *queue);
12970 guint g_queue_get_length (GQueue *queue);
12971 void g_queue_reverse (GQueue *queue);
12972 GQueue * g_queue_copy (GQueue *queue);
12973 void g_queue_foreach (GQueue *queue,
12975 gpointer user_data);
12976 GList * g_queue_find (GQueue *queue,
12977 gconstpointer data);
12978 GList * g_queue_find_custom (GQueue *queue,
12979 gconstpointer data,
12980 GCompareFunc func);
12981 void g_queue_sort (GQueue *queue,
12982 GCompareDataFunc compare_func,
12983 gpointer user_data);
12985 void g_queue_push_head (GQueue *queue,
12987 void g_queue_push_tail (GQueue *queue,
12989 void g_queue_push_nth (GQueue *queue,
12992 gpointer g_queue_pop_head (GQueue *queue);
12993 gpointer g_queue_pop_tail (GQueue *queue);
12994 gpointer g_queue_pop_nth (GQueue *queue,
12996 gpointer g_queue_peek_head (GQueue *queue);
12997 gpointer g_queue_peek_tail (GQueue *queue);
12998 gpointer g_queue_peek_nth (GQueue *queue,
13000 gint g_queue_index (GQueue *queue,
13001 gconstpointer data);
13002 gboolean g_queue_remove (GQueue *queue,
13003 gconstpointer data);
13004 guint g_queue_remove_all (GQueue *queue,
13005 gconstpointer data);
13006 void g_queue_insert_before (GQueue *queue,
13009 void g_queue_insert_after (GQueue *queue,
13012 void g_queue_insert_sorted (GQueue *queue,
13014 GCompareDataFunc func,
13015 gpointer user_data);
13017 void g_queue_push_head_link (GQueue *queue,
13019 void g_queue_push_tail_link (GQueue *queue,
13021 void g_queue_push_nth_link (GQueue *queue,
13024 GList* g_queue_pop_head_link (GQueue *queue);
13025 GList* g_queue_pop_tail_link (GQueue *queue);
13026 GList* g_queue_pop_nth_link (GQueue *queue,
13028 GList* g_queue_peek_head_link (GQueue *queue);
13029 GList* g_queue_peek_tail_link (GQueue *queue);
13030 GList* g_queue_peek_nth_link (GQueue *queue,
13032 gint g_queue_link_index (GQueue *queue,
13034 void g_queue_unlink (GQueue *queue,
13036 void g_queue_delete_link (GQueue *queue,
13040 # 73 "/usr/include/glib-2.0/glib.h" 2
13041 # 1 "/usr/include/glib-2.0/glib/grand.h" 1
13042 # 34 "/usr/include/glib-2.0/glib/grand.h"
13043 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
13044 # 35 "/usr/include/glib-2.0/glib/grand.h" 2
13048 typedef struct _GRand GRand;
13049 # 49 "/usr/include/glib-2.0/glib/grand.h"
13050 GRand* g_rand_new_with_seed (guint32 seed);
13051 GRand* g_rand_new_with_seed_array (const guint32 *seed,
13052 guint seed_length);
13053 GRand* g_rand_new (void);
13054 void g_rand_free (GRand *rand_);
13055 GRand* g_rand_copy (GRand *rand_);
13056 void g_rand_set_seed (GRand *rand_,
13058 void g_rand_set_seed_array (GRand *rand_,
13059 const guint32 *seed,
13060 guint seed_length);
13064 guint32 g_rand_int (GRand *rand_);
13065 gint32 g_rand_int_range (GRand *rand_,
13068 gdouble g_rand_double (GRand *rand_);
13069 gdouble g_rand_double_range (GRand *rand_,
13072 void g_random_set_seed (guint32 seed);
13076 guint32 g_random_int (void);
13077 gint32 g_random_int_range (gint32 begin,
13079 gdouble g_random_double (void);
13080 gdouble g_random_double_range (gdouble begin,
13085 # 74 "/usr/include/glib-2.0/glib.h" 2
13086 # 1 "/usr/include/glib-2.0/glib/gregex.h" 1
13087 # 29 "/usr/include/glib-2.0/glib/gregex.h"
13088 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
13089 # 30 "/usr/include/glib-2.0/glib/gregex.h" 2
13090 # 1 "/usr/include/glib-2.0/glib/gstring.h" 1
13091 # 31 "/usr/include/glib-2.0/glib/gregex.h" 2
13094 # 117 "/usr/include/glib-2.0/glib/gregex.h"
13097 G_REGEX_ERROR_COMPILE,
13098 G_REGEX_ERROR_OPTIMIZE,
13099 G_REGEX_ERROR_REPLACE,
13100 G_REGEX_ERROR_MATCH,
13101 G_REGEX_ERROR_INTERNAL,
13104 G_REGEX_ERROR_STRAY_BACKSLASH = 101,
13105 G_REGEX_ERROR_MISSING_CONTROL_CHAR = 102,
13106 G_REGEX_ERROR_UNRECOGNIZED_ESCAPE = 103,
13107 G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER = 104,
13108 G_REGEX_ERROR_QUANTIFIER_TOO_BIG = 105,
13109 G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS = 106,
13110 G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS = 107,
13111 G_REGEX_ERROR_RANGE_OUT_OF_ORDER = 108,
13112 G_REGEX_ERROR_NOTHING_TO_REPEAT = 109,
13113 G_REGEX_ERROR_UNRECOGNIZED_CHARACTER = 112,
13114 G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS = 113,
13115 G_REGEX_ERROR_UNMATCHED_PARENTHESIS = 114,
13116 G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE = 115,
13117 G_REGEX_ERROR_UNTERMINATED_COMMENT = 118,
13118 G_REGEX_ERROR_EXPRESSION_TOO_LARGE = 120,
13119 G_REGEX_ERROR_MEMORY_ERROR = 121,
13120 G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND = 125,
13121 G_REGEX_ERROR_MALFORMED_CONDITION = 126,
13122 G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES = 127,
13123 G_REGEX_ERROR_ASSERTION_EXPECTED = 128,
13124 G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME = 130,
13125 G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED = 131,
13126 G_REGEX_ERROR_HEX_CODE_TOO_LARGE = 134,
13127 G_REGEX_ERROR_INVALID_CONDITION = 135,
13128 G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND = 136,
13129 G_REGEX_ERROR_INFINITE_LOOP = 140,
13130 G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR = 142,
13131 G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME = 143,
13132 G_REGEX_ERROR_MALFORMED_PROPERTY = 146,
13133 G_REGEX_ERROR_UNKNOWN_PROPERTY = 147,
13134 G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG = 148,
13135 G_REGEX_ERROR_TOO_MANY_SUBPATTERNS = 149,
13136 G_REGEX_ERROR_INVALID_OCTAL_VALUE = 151,
13137 G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE = 154,
13138 G_REGEX_ERROR_DEFINE_REPETION = 155,
13139 G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS = 156,
13140 G_REGEX_ERROR_MISSING_BACK_REFERENCE = 157
13142 # 176 "/usr/include/glib-2.0/glib/gregex.h"
13143 GQuark g_regex_error_quark (void);
13144 # 243 "/usr/include/glib-2.0/glib/gregex.h"
13147 G_REGEX_CASELESS = 1 << 0,
13148 G_REGEX_MULTILINE = 1 << 1,
13149 G_REGEX_DOTALL = 1 << 2,
13150 G_REGEX_EXTENDED = 1 << 3,
13151 G_REGEX_ANCHORED = 1 << 4,
13152 G_REGEX_DOLLAR_ENDONLY = 1 << 5,
13153 G_REGEX_UNGREEDY = 1 << 9,
13154 G_REGEX_RAW = 1 << 11,
13155 G_REGEX_NO_AUTO_CAPTURE = 1 << 12,
13156 G_REGEX_OPTIMIZE = 1 << 13,
13157 G_REGEX_DUPNAMES = 1 << 19,
13158 G_REGEX_NEWLINE_CR = 1 << 20,
13159 G_REGEX_NEWLINE_LF = 1 << 21,
13160 G_REGEX_NEWLINE_CRLF = G_REGEX_NEWLINE_CR | G_REGEX_NEWLINE_LF
13161 } GRegexCompileFlags;
13162 # 306 "/usr/include/glib-2.0/glib/gregex.h"
13165 G_REGEX_MATCH_ANCHORED = 1 << 4,
13166 G_REGEX_MATCH_NOTBOL = 1 << 7,
13167 G_REGEX_MATCH_NOTEOL = 1 << 8,
13168 G_REGEX_MATCH_NOTEMPTY = 1 << 10,
13169 G_REGEX_MATCH_PARTIAL = 1 << 15,
13170 G_REGEX_MATCH_NEWLINE_CR = 1 << 20,
13171 G_REGEX_MATCH_NEWLINE_LF = 1 << 21,
13172 G_REGEX_MATCH_NEWLINE_CRLF = G_REGEX_MATCH_NEWLINE_CR | G_REGEX_MATCH_NEWLINE_LF,
13173 G_REGEX_MATCH_NEWLINE_ANY = 1 << 22
13174 } GRegexMatchFlags;
13175 # 327 "/usr/include/glib-2.0/glib/gregex.h"
13176 typedef struct _GRegex GRegex;
13179 typedef struct _GMatchInfo GMatchInfo;
13180 # 349 "/usr/include/glib-2.0/glib/gregex.h"
13181 typedef gboolean (*GRegexEvalCallback) (const GMatchInfo *match_info,
13183 gpointer user_data);
13186 GRegex *g_regex_new (const gchar *pattern,
13187 GRegexCompileFlags compile_options,
13188 GRegexMatchFlags match_options,
13190 GRegex *g_regex_ref (GRegex *regex);
13191 void g_regex_unref (GRegex *regex);
13192 const gchar *g_regex_get_pattern (const GRegex *regex);
13193 gint g_regex_get_max_backref (const GRegex *regex);
13194 gint g_regex_get_capture_count (const GRegex *regex);
13195 gint g_regex_get_string_number (const GRegex *regex,
13196 const gchar *name);
13197 gchar *g_regex_escape_string (const gchar *string,
13199 gchar *g_regex_escape_nul (const gchar *string,
13202 GRegexCompileFlags g_regex_get_compile_flags (const GRegex *regex);
13203 GRegexMatchFlags g_regex_get_match_flags (const GRegex *regex);
13206 gboolean g_regex_match_simple (const gchar *pattern,
13207 const gchar *string,
13208 GRegexCompileFlags compile_options,
13209 GRegexMatchFlags match_options);
13210 gboolean g_regex_match (const GRegex *regex,
13211 const gchar *string,
13212 GRegexMatchFlags match_options,
13213 GMatchInfo **match_info);
13214 gboolean g_regex_match_full (const GRegex *regex,
13215 const gchar *string,
13217 gint start_position,
13218 GRegexMatchFlags match_options,
13219 GMatchInfo **match_info,
13221 gboolean g_regex_match_all (const GRegex *regex,
13222 const gchar *string,
13223 GRegexMatchFlags match_options,
13224 GMatchInfo **match_info);
13225 gboolean g_regex_match_all_full (const GRegex *regex,
13226 const gchar *string,
13228 gint start_position,
13229 GRegexMatchFlags match_options,
13230 GMatchInfo **match_info,
13234 gchar **g_regex_split_simple (const gchar *pattern,
13235 const gchar *string,
13236 GRegexCompileFlags compile_options,
13237 GRegexMatchFlags match_options);
13238 gchar **g_regex_split (const GRegex *regex,
13239 const gchar *string,
13240 GRegexMatchFlags match_options);
13241 gchar **g_regex_split_full (const GRegex *regex,
13242 const gchar *string,
13244 gint start_position,
13245 GRegexMatchFlags match_options,
13250 gchar *g_regex_replace (const GRegex *regex,
13251 const gchar *string,
13253 gint start_position,
13254 const gchar *replacement,
13255 GRegexMatchFlags match_options,
13257 gchar *g_regex_replace_literal (const GRegex *regex,
13258 const gchar *string,
13260 gint start_position,
13261 const gchar *replacement,
13262 GRegexMatchFlags match_options,
13264 gchar *g_regex_replace_eval (const GRegex *regex,
13265 const gchar *string,
13267 gint start_position,
13268 GRegexMatchFlags match_options,
13269 GRegexEvalCallback eval,
13270 gpointer user_data,
13272 gboolean g_regex_check_replacement (const gchar *replacement,
13273 gboolean *has_references,
13277 GRegex *g_match_info_get_regex (const GMatchInfo *match_info);
13278 const gchar *g_match_info_get_string (const GMatchInfo *match_info);
13280 GMatchInfo *g_match_info_ref (GMatchInfo *match_info);
13281 void g_match_info_unref (GMatchInfo *match_info);
13282 void g_match_info_free (GMatchInfo *match_info);
13283 gboolean g_match_info_next (GMatchInfo *match_info,
13285 gboolean g_match_info_matches (const GMatchInfo *match_info);
13286 gint g_match_info_get_match_count (const GMatchInfo *match_info);
13287 gboolean g_match_info_is_partial_match (const GMatchInfo *match_info);
13288 gchar *g_match_info_expand_references(const GMatchInfo *match_info,
13289 const gchar *string_to_expand,
13291 gchar *g_match_info_fetch (const GMatchInfo *match_info,
13293 gboolean g_match_info_fetch_pos (const GMatchInfo *match_info,
13297 gchar *g_match_info_fetch_named (const GMatchInfo *match_info,
13298 const gchar *name);
13299 gboolean g_match_info_fetch_named_pos (const GMatchInfo *match_info,
13303 gchar **g_match_info_fetch_all (const GMatchInfo *match_info);
13306 # 75 "/usr/include/glib-2.0/glib.h" 2
13307 # 1 "/usr/include/glib-2.0/glib/gscanner.h" 1
13308 # 34 "/usr/include/glib-2.0/glib/gscanner.h"
13309 # 1 "/usr/include/glib-2.0/glib/gdataset.h" 1
13310 # 35 "/usr/include/glib-2.0/glib/gscanner.h" 2
13311 # 1 "/usr/include/glib-2.0/glib/ghash.h" 1
13312 # 36 "/usr/include/glib-2.0/glib/gscanner.h" 2
13316 typedef struct _GScanner GScanner;
13317 typedef struct _GScannerConfig GScannerConfig;
13318 typedef union _GTokenValue GTokenValue;
13320 typedef void (*GScannerMsgFunc) (GScanner *scanner,
13323 # 64 "/usr/include/glib-2.0/glib/gscanner.h"
13328 G_ERR_UNEXP_EOF_IN_STRING,
13329 G_ERR_UNEXP_EOF_IN_COMMENT,
13330 G_ERR_NON_DIGIT_IN_CONST,
13333 G_ERR_FLOAT_MALFORMED
13341 G_TOKEN_LEFT_PAREN = '(',
13342 G_TOKEN_RIGHT_PAREN = ')',
13343 G_TOKEN_LEFT_CURLY = '{',
13344 G_TOKEN_RIGHT_CURLY = '}',
13345 G_TOKEN_LEFT_BRACE = '[',
13346 G_TOKEN_RIGHT_BRACE = ']',
13347 G_TOKEN_EQUAL_SIGN = '=',
13348 G_TOKEN_COMMA = ',',
13350 G_TOKEN_NONE = 256,
13363 G_TOKEN_IDENTIFIER,
13364 G_TOKEN_IDENTIFIER_NULL,
13366 G_TOKEN_COMMENT_SINGLE,
13367 G_TOKEN_COMMENT_MULTI,
13376 gchar *v_identifier;
13389 struct _GScannerConfig
13393 gchar *cset_skip_characters;
13394 gchar *cset_identifier_first;
13395 gchar *cset_identifier_nth;
13396 gchar *cpair_comment_single;
13400 guint case_sensitive : 1;
13405 guint skip_comment_multi : 1;
13406 guint skip_comment_single : 1;
13407 guint scan_comment_multi : 1;
13408 guint scan_identifier : 1;
13409 guint scan_identifier_1char : 1;
13410 guint scan_identifier_NULL : 1;
13411 guint scan_symbols : 1;
13412 guint scan_binary : 1;
13413 guint scan_octal : 1;
13414 guint scan_float : 1;
13415 guint scan_hex : 1;
13416 guint scan_hex_dollar : 1;
13417 guint scan_string_sq : 1;
13418 guint scan_string_dq : 1;
13419 guint numbers_2_int : 1;
13420 guint int_2_float : 1;
13421 guint identifier_2_string : 1;
13422 guint char_2_token : 1;
13423 guint symbol_2_token : 1;
13424 guint scope_0_fallback : 1;
13425 guint store_int64 : 1;
13428 guint padding_dummy;
13434 gpointer user_data;
13435 guint max_parse_errors;
13438 guint parse_errors;
13441 const gchar *input_name;
13447 GScannerConfig *config;
13456 GTokenType next_token;
13457 GTokenValue next_value;
13459 guint next_position;
13463 GHashTable *symbol_table;
13466 const gchar *text_end;
13472 GScannerMsgFunc msg_handler;
13475 GScanner* g_scanner_new (const GScannerConfig *config_templ);
13476 void g_scanner_destroy (GScanner *scanner);
13477 void g_scanner_input_file (GScanner *scanner,
13479 void g_scanner_sync_file_offset (GScanner *scanner);
13480 void g_scanner_input_text (GScanner *scanner,
13483 GTokenType g_scanner_get_next_token (GScanner *scanner);
13484 GTokenType g_scanner_peek_next_token (GScanner *scanner);
13485 GTokenType g_scanner_cur_token (GScanner *scanner);
13486 GTokenValue g_scanner_cur_value (GScanner *scanner);
13487 guint g_scanner_cur_line (GScanner *scanner);
13488 guint g_scanner_cur_position (GScanner *scanner);
13489 gboolean g_scanner_eof (GScanner *scanner);
13490 guint g_scanner_set_scope (GScanner *scanner,
13492 void g_scanner_scope_add_symbol (GScanner *scanner,
13494 const gchar *symbol,
13496 void g_scanner_scope_remove_symbol (GScanner *scanner,
13498 const gchar *symbol);
13499 gpointer g_scanner_scope_lookup_symbol (GScanner *scanner,
13501 const gchar *symbol);
13502 void g_scanner_scope_foreach_symbol (GScanner *scanner,
13505 gpointer user_data);
13506 gpointer g_scanner_lookup_symbol (GScanner *scanner,
13507 const gchar *symbol);
13508 void g_scanner_unexp_token (GScanner *scanner,
13509 GTokenType expected_token,
13510 const gchar *identifier_spec,
13511 const gchar *symbol_spec,
13512 const gchar *symbol_name,
13513 const gchar *message,
13515 void g_scanner_error (GScanner *scanner,
13516 const gchar *format,
13517 ...) __attribute__((__format__ (__printf__, 2, 3)));
13518 void g_scanner_warn (GScanner *scanner,
13519 const gchar *format,
13520 ...) __attribute__((__format__ (__printf__, 2, 3)));
13521 # 282 "/usr/include/glib-2.0/glib/gscanner.h"
13523 # 76 "/usr/include/glib-2.0/glib.h" 2
13524 # 1 "/usr/include/glib-2.0/glib/gsequence.h" 1
13525 # 28 "/usr/include/glib-2.0/glib/gsequence.h"
13526 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
13527 # 29 "/usr/include/glib-2.0/glib/gsequence.h" 2
13531 typedef struct _GSequence GSequence;
13532 typedef struct _GSequenceNode GSequenceIter;
13534 typedef gint (* GSequenceIterCompareFunc) (GSequenceIter *a,
13540 GSequence * g_sequence_new (GDestroyNotify data_destroy);
13541 void g_sequence_free (GSequence *seq);
13542 gint g_sequence_get_length (GSequence *seq);
13543 void g_sequence_foreach (GSequence *seq,
13545 gpointer user_data);
13546 void g_sequence_foreach_range (GSequenceIter *begin,
13547 GSequenceIter *end,
13549 gpointer user_data);
13550 void g_sequence_sort (GSequence *seq,
13551 GCompareDataFunc cmp_func,
13552 gpointer cmp_data);
13553 void g_sequence_sort_iter (GSequence *seq,
13554 GSequenceIterCompareFunc cmp_func,
13555 gpointer cmp_data);
13559 GSequenceIter *g_sequence_get_begin_iter (GSequence *seq);
13560 GSequenceIter *g_sequence_get_end_iter (GSequence *seq);
13561 GSequenceIter *g_sequence_get_iter_at_pos (GSequence *seq,
13563 GSequenceIter *g_sequence_append (GSequence *seq,
13565 GSequenceIter *g_sequence_prepend (GSequence *seq,
13567 GSequenceIter *g_sequence_insert_before (GSequenceIter *iter,
13569 void g_sequence_move (GSequenceIter *src,
13570 GSequenceIter *dest);
13571 void g_sequence_swap (GSequenceIter *a,
13573 GSequenceIter *g_sequence_insert_sorted (GSequence *seq,
13575 GCompareDataFunc cmp_func,
13576 gpointer cmp_data);
13577 GSequenceIter *g_sequence_insert_sorted_iter (GSequence *seq,
13579 GSequenceIterCompareFunc iter_cmp,
13580 gpointer cmp_data);
13581 void g_sequence_sort_changed (GSequenceIter *iter,
13582 GCompareDataFunc cmp_func,
13583 gpointer cmp_data);
13584 void g_sequence_sort_changed_iter (GSequenceIter *iter,
13585 GSequenceIterCompareFunc iter_cmp,
13586 gpointer cmp_data);
13587 void g_sequence_remove (GSequenceIter *iter);
13588 void g_sequence_remove_range (GSequenceIter *begin,
13589 GSequenceIter *end);
13590 void g_sequence_move_range (GSequenceIter *dest,
13591 GSequenceIter *begin,
13592 GSequenceIter *end);
13593 GSequenceIter *g_sequence_search (GSequence *seq,
13595 GCompareDataFunc cmp_func,
13596 gpointer cmp_data);
13597 GSequenceIter *g_sequence_search_iter (GSequence *seq,
13599 GSequenceIterCompareFunc iter_cmp,
13600 gpointer cmp_data);
13601 GSequenceIter *g_sequence_lookup (GSequence *seq,
13603 GCompareDataFunc cmp_func,
13604 gpointer cmp_data);
13605 GSequenceIter *g_sequence_lookup_iter (GSequence *seq,
13607 GSequenceIterCompareFunc iter_cmp,
13608 gpointer cmp_data);
13612 gpointer g_sequence_get (GSequenceIter *iter);
13613 void g_sequence_set (GSequenceIter *iter,
13617 gboolean g_sequence_iter_is_begin (GSequenceIter *iter);
13618 gboolean g_sequence_iter_is_end (GSequenceIter *iter);
13619 GSequenceIter *g_sequence_iter_next (GSequenceIter *iter);
13620 GSequenceIter *g_sequence_iter_prev (GSequenceIter *iter);
13621 gint g_sequence_iter_get_position (GSequenceIter *iter);
13622 GSequenceIter *g_sequence_iter_move (GSequenceIter *iter,
13624 GSequence * g_sequence_iter_get_sequence (GSequenceIter *iter);
13628 gint g_sequence_iter_compare (GSequenceIter *a,
13630 GSequenceIter *g_sequence_range_get_midpoint (GSequenceIter *begin,
13631 GSequenceIter *end);
13634 # 77 "/usr/include/glib-2.0/glib.h" 2
13635 # 1 "/usr/include/glib-2.0/glib/gshell.h" 1
13636 # 28 "/usr/include/glib-2.0/glib/gshell.h"
13637 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
13638 # 29 "/usr/include/glib-2.0/glib/gshell.h" 2
13647 G_SHELL_ERROR_BAD_QUOTING,
13649 G_SHELL_ERROR_EMPTY_STRING,
13650 G_SHELL_ERROR_FAILED
13653 GQuark g_shell_error_quark (void);
13655 gchar* g_shell_quote (const gchar *unquoted_string);
13656 gchar* g_shell_unquote (const gchar *quoted_string,
13658 gboolean g_shell_parse_argv (const gchar *command_line,
13664 # 78 "/usr/include/glib-2.0/glib.h" 2
13665 # 1 "/usr/include/glib-2.0/glib/gslice.h" 1
13666 # 27 "/usr/include/glib-2.0/glib/gslice.h"
13667 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
13668 # 28 "/usr/include/glib-2.0/glib/gslice.h" 2
13674 gpointer g_slice_alloc (gsize block_size) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
13675 gpointer g_slice_alloc0 (gsize block_size) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
13676 gpointer g_slice_copy (gsize block_size,
13677 gconstpointer mem_block) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
13678 void g_slice_free1 (gsize block_size,
13679 gpointer mem_block);
13680 void g_slice_free_chain_with_offset (gsize block_size,
13681 gpointer mem_chain,
13682 gsize next_offset);
13683 # 72 "/usr/include/glib-2.0/glib/gslice.h"
13685 G_SLICE_CONFIG_ALWAYS_MALLOC = 1,
13686 G_SLICE_CONFIG_BYPASS_MAGAZINES,
13687 G_SLICE_CONFIG_WORKING_SET_MSECS,
13688 G_SLICE_CONFIG_COLOR_INCREMENT,
13689 G_SLICE_CONFIG_CHUNK_SIZES,
13690 G_SLICE_CONFIG_CONTENTION_COUNTER
13692 void g_slice_set_config (GSliceConfig ckey, gint64 value);
13693 gint64 g_slice_get_config (GSliceConfig ckey);
13694 gint64* g_slice_get_config_state (GSliceConfig ckey, gint64 address, guint *n_values);
13697 # 79 "/usr/include/glib-2.0/glib.h" 2
13698 # 1 "/usr/include/glib-2.0/glib/gslist.h" 1
13699 # 80 "/usr/include/glib-2.0/glib.h" 2
13700 # 1 "/usr/include/glib-2.0/glib/gspawn.h" 1
13701 # 28 "/usr/include/glib-2.0/glib/gspawn.h"
13702 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
13703 # 29 "/usr/include/glib-2.0/glib/gspawn.h" 2
13706 # 70 "/usr/include/glib-2.0/glib/gspawn.h"
13709 G_SPAWN_ERROR_FORK,
13710 G_SPAWN_ERROR_READ,
13711 G_SPAWN_ERROR_CHDIR,
13712 G_SPAWN_ERROR_ACCES,
13713 G_SPAWN_ERROR_PERM,
13714 G_SPAWN_ERROR_TOO_BIG,
13716 G_SPAWN_ERROR_2BIG = G_SPAWN_ERROR_TOO_BIG,
13718 G_SPAWN_ERROR_NOEXEC,
13719 G_SPAWN_ERROR_NAMETOOLONG,
13720 G_SPAWN_ERROR_NOENT,
13721 G_SPAWN_ERROR_NOMEM,
13722 G_SPAWN_ERROR_NOTDIR,
13723 G_SPAWN_ERROR_LOOP,
13724 G_SPAWN_ERROR_TXTBUSY,
13726 G_SPAWN_ERROR_NFILE,
13727 G_SPAWN_ERROR_MFILE,
13728 G_SPAWN_ERROR_INVAL,
13729 G_SPAWN_ERROR_ISDIR,
13730 G_SPAWN_ERROR_LIBBAD,
13731 G_SPAWN_ERROR_FAILED
13735 # 135 "/usr/include/glib-2.0/glib/gspawn.h"
13736 typedef void (* GSpawnChildSetupFunc) (gpointer user_data);
13737 # 161 "/usr/include/glib-2.0/glib/gspawn.h"
13740 G_SPAWN_LEAVE_DESCRIPTORS_OPEN = 1 << 0,
13741 G_SPAWN_DO_NOT_REAP_CHILD = 1 << 1,
13743 G_SPAWN_SEARCH_PATH = 1 << 2,
13745 G_SPAWN_STDOUT_TO_DEV_NULL = 1 << 3,
13746 G_SPAWN_STDERR_TO_DEV_NULL = 1 << 4,
13747 G_SPAWN_CHILD_INHERITS_STDIN = 1 << 5,
13748 G_SPAWN_FILE_AND_ARGV_ZERO = 1 << 6
13751 GQuark g_spawn_error_quark (void);
13752 # 186 "/usr/include/glib-2.0/glib/gspawn.h"
13753 gboolean g_spawn_async (const gchar *working_directory,
13757 GSpawnChildSetupFunc child_setup,
13758 gpointer user_data,
13766 gboolean g_spawn_async_with_pipes (const gchar *working_directory,
13770 GSpawnChildSetupFunc child_setup,
13771 gpointer user_data,
13773 gint *standard_input,
13774 gint *standard_output,
13775 gint *standard_error,
13783 gboolean g_spawn_sync (const gchar *working_directory,
13787 GSpawnChildSetupFunc child_setup,
13788 gpointer user_data,
13789 gchar **standard_output,
13790 gchar **standard_error,
13794 gboolean g_spawn_command_line_sync (const gchar *command_line,
13795 gchar **standard_output,
13796 gchar **standard_error,
13799 gboolean g_spawn_command_line_async (const gchar *command_line,
13802 void g_spawn_close_pid (GPid pid);
13805 # 81 "/usr/include/glib-2.0/glib.h" 2
13806 # 1 "/usr/include/glib-2.0/glib/gstrfuncs.h" 1
13807 # 35 "/usr/include/glib-2.0/glib/gstrfuncs.h"
13808 # 1 "/usr/include/glib-2.0/glib/gmacros.h" 1
13809 # 36 "/usr/include/glib-2.0/glib/gstrfuncs.h" 2
13810 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
13811 # 37 "/usr/include/glib-2.0/glib/gstrfuncs.h" 2
13817 G_ASCII_ALNUM = 1 << 0,
13818 G_ASCII_ALPHA = 1 << 1,
13819 G_ASCII_CNTRL = 1 << 2,
13820 G_ASCII_DIGIT = 1 << 3,
13821 G_ASCII_GRAPH = 1 << 4,
13822 G_ASCII_LOWER = 1 << 5,
13823 G_ASCII_PRINT = 1 << 6,
13824 G_ASCII_PUNCT = 1 << 7,
13825 G_ASCII_SPACE = 1 << 8,
13826 G_ASCII_UPPER = 1 << 9,
13827 G_ASCII_XDIGIT = 1 << 10
13830 extern const guint16 * const g_ascii_table;
13831 # 90 "/usr/include/glib-2.0/glib/gstrfuncs.h"
13832 gchar g_ascii_tolower (gchar c) __attribute__((__const__));
13833 gchar g_ascii_toupper (gchar c) __attribute__((__const__));
13835 gint g_ascii_digit_value (gchar c) __attribute__((__const__));
13836 gint g_ascii_xdigit_value (gchar c) __attribute__((__const__));
13842 gchar* g_strdelimit (gchar *string,
13843 const gchar *delimiters,
13844 gchar new_delimiter);
13845 gchar* g_strcanon (gchar *string,
13846 const gchar *valid_chars,
13847 gchar substitutor);
13848 const gchar * g_strerror (gint errnum) __attribute__((__const__));
13849 const gchar * g_strsignal (gint signum) __attribute__((__const__));
13850 gchar * g_strreverse (gchar *string);
13851 gsize g_strlcpy (gchar *dest,
13854 gsize g_strlcat (gchar *dest,
13857 gchar * g_strstr_len (const gchar *haystack,
13858 gssize haystack_len,
13859 const gchar *needle);
13860 gchar * g_strrstr (const gchar *haystack,
13861 const gchar *needle);
13862 gchar * g_strrstr_len (const gchar *haystack,
13863 gssize haystack_len,
13864 const gchar *needle);
13866 gboolean g_str_has_suffix (const gchar *str,
13867 const gchar *suffix);
13868 gboolean g_str_has_prefix (const gchar *str,
13869 const gchar *prefix);
13873 gdouble g_strtod (const gchar *nptr,
13875 gdouble g_ascii_strtod (const gchar *nptr,
13877 guint64 g_ascii_strtoull (const gchar *nptr,
13880 gint64 g_ascii_strtoll (const gchar *nptr,
13887 gchar * g_ascii_dtostr (gchar *buffer,
13890 gchar * g_ascii_formatd (gchar *buffer,
13892 const gchar *format,
13896 gchar* g_strchug (gchar *string);
13898 gchar* g_strchomp (gchar *string);
13902 gint g_ascii_strcasecmp (const gchar *s1,
13904 gint g_ascii_strncasecmp (const gchar *s1,
13907 gchar* g_ascii_strdown (const gchar *str,
13908 gssize len) __attribute__((__malloc__));
13909 gchar* g_ascii_strup (const gchar *str,
13910 gssize len) __attribute__((__malloc__));
13913 __attribute__((__deprecated__))
13914 gint g_strcasecmp (const gchar *s1,
13916 __attribute__((__deprecated__))
13917 gint g_strncasecmp (const gchar *s1,
13920 __attribute__((__deprecated__))
13921 gchar* g_strdown (gchar *string);
13922 __attribute__((__deprecated__))
13923 gchar* g_strup (gchar *string);
13929 gchar* g_strdup (const gchar *str) __attribute__((__malloc__));
13930 gchar* g_strdup_printf (const gchar *format,
13931 ...) __attribute__((__format__ (__printf__, 1, 2))) __attribute__((__malloc__));
13932 gchar* g_strdup_vprintf (const gchar *format,
13933 va_list args) __attribute__((__malloc__));
13934 gchar* g_strndup (const gchar *str,
13935 gsize n) __attribute__((__malloc__));
13936 gchar* g_strnfill (gsize length,
13937 gchar fill_char) __attribute__((__malloc__));
13938 gchar* g_strconcat (const gchar *string1,
13939 ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
13940 gchar* g_strjoin (const gchar *separator,
13941 ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
13947 gchar* g_strcompress (const gchar *source) __attribute__((__malloc__));
13948 # 215 "/usr/include/glib-2.0/glib/gstrfuncs.h"
13949 gchar* g_strescape (const gchar *source,
13950 const gchar *exceptions) __attribute__((__malloc__));
13952 gpointer g_memdup (gconstpointer mem,
13953 guint byte_size) __attribute__((__malloc__)) __attribute__((__alloc_size__(2)));
13954 # 230 "/usr/include/glib-2.0/glib/gstrfuncs.h"
13955 gchar** g_strsplit (const gchar *string,
13956 const gchar *delimiter,
13957 gint max_tokens) __attribute__((__malloc__));
13958 gchar ** g_strsplit_set (const gchar *string,
13959 const gchar *delimiters,
13960 gint max_tokens) __attribute__((__malloc__));
13961 gchar* g_strjoinv (const gchar *separator,
13962 gchar **str_array) __attribute__((__malloc__));
13963 void g_strfreev (gchar **str_array);
13964 gchar** g_strdupv (gchar **str_array) __attribute__((__malloc__));
13965 guint g_strv_length (gchar **str_array);
13967 gchar* g_stpcpy (gchar *dest,
13971 # 82 "/usr/include/glib-2.0/glib.h" 2
13972 # 1 "/usr/include/glib-2.0/glib/gstring.h" 1
13973 # 83 "/usr/include/glib-2.0/glib.h" 2
13974 # 1 "/usr/include/glib-2.0/glib/gstringchunk.h" 1
13975 # 34 "/usr/include/glib-2.0/glib/gstringchunk.h"
13976 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
13977 # 35 "/usr/include/glib-2.0/glib/gstringchunk.h" 2
13981 typedef struct _GStringChunk GStringChunk;
13983 GStringChunk* g_string_chunk_new (gsize size);
13984 void g_string_chunk_free (GStringChunk *chunk);
13985 void g_string_chunk_clear (GStringChunk *chunk);
13986 gchar* g_string_chunk_insert (GStringChunk *chunk,
13987 const gchar *string);
13988 gchar* g_string_chunk_insert_len (GStringChunk *chunk,
13989 const gchar *string,
13991 gchar* g_string_chunk_insert_const (GStringChunk *chunk,
13992 const gchar *string);
13995 # 84 "/usr/include/glib-2.0/glib.h" 2
13996 # 1 "/usr/include/glib-2.0/glib/gtestutils.h" 1
13997 # 28 "/usr/include/glib-2.0/glib/gtestutils.h"
13998 # 1 "/usr/include/glib-2.0/glib/gmessages.h" 1
13999 # 29 "/usr/include/glib-2.0/glib/gtestutils.h" 2
14000 # 1 "/usr/include/glib-2.0/glib/gstring.h" 1
14001 # 30 "/usr/include/glib-2.0/glib/gtestutils.h" 2
14002 # 1 "/usr/include/glib-2.0/glib/gerror.h" 1
14003 # 31 "/usr/include/glib-2.0/glib/gtestutils.h" 2
14004 # 1 "/usr/include/glib-2.0/glib/gslist.h" 1
14005 # 32 "/usr/include/glib-2.0/glib/gtestutils.h" 2
14009 typedef struct GTestCase GTestCase;
14010 typedef struct GTestSuite GTestSuite;
14011 typedef void (*GTestFunc) (void);
14012 typedef void (*GTestDataFunc) (gconstpointer user_data);
14013 typedef void (*GTestFixtureFunc) (gpointer fixture,
14014 gconstpointer user_data);
14015 # 79 "/usr/include/glib-2.0/glib/gtestutils.h"
14016 int g_strcmp0 (const char *str1,
14020 void g_test_minimized_result (double minimized_quantity,
14021 const char *format,
14022 ...) __attribute__((__format__ (__printf__, 2, 3)));
14023 void g_test_maximized_result (double maximized_quantity,
14024 const char *format,
14025 ...) __attribute__((__format__ (__printf__, 2, 3)));
14028 void g_test_init (int *argc,
14031 # 103 "/usr/include/glib-2.0/glib/gtestutils.h"
14032 int g_test_run (void);
14034 void g_test_add_func (const char *testpath,
14035 GTestFunc test_func);
14037 void g_test_add_data_func (const char *testpath,
14038 gconstpointer test_data,
14039 GTestDataFunc test_func);
14041 void g_test_fail (void);
14042 # 128 "/usr/include/glib-2.0/glib/gtestutils.h"
14043 void g_test_message (const char *format,
14044 ...) __attribute__((__format__ (__printf__, 1, 2)));
14045 void g_test_bug_base (const char *uri_pattern);
14046 void g_test_bug (const char *bug_uri_snippet);
14048 void g_test_timer_start (void);
14049 double g_test_timer_elapsed (void);
14050 double g_test_timer_last (void);
14053 void g_test_queue_free (gpointer gfree_pointer);
14054 void g_test_queue_destroy (GDestroyNotify destroy_func,
14055 gpointer destroy_data);
14060 G_TEST_TRAP_SILENCE_STDOUT = 1 << 7,
14061 G_TEST_TRAP_SILENCE_STDERR = 1 << 8,
14062 G_TEST_TRAP_INHERIT_STDIN = 1 << 9
14064 gboolean g_test_trap_fork (guint64 usec_timeout,
14065 GTestTrapFlags test_trap_flags);
14066 gboolean g_test_trap_has_passed (void);
14067 gboolean g_test_trap_reached_timeout (void);
14068 # 162 "/usr/include/glib-2.0/glib/gtestutils.h"
14069 gint32 g_test_rand_int (void);
14070 gint32 g_test_rand_int_range (gint32 begin,
14072 double g_test_rand_double (void);
14073 double g_test_rand_double_range (double range_start,
14077 GTestCase* g_test_create_case (const char *test_name,
14079 gconstpointer test_data,
14080 GTestFixtureFunc data_setup,
14081 GTestFixtureFunc data_test,
14082 GTestFixtureFunc data_teardown);
14083 GTestSuite* g_test_create_suite (const char *suite_name);
14084 GTestSuite* g_test_get_root (void);
14085 void g_test_suite_add (GTestSuite *suite,
14086 GTestCase *test_case);
14087 void g_test_suite_add_suite (GTestSuite *suite,
14088 GTestSuite *nestedsuite);
14089 int g_test_run_suite (GTestSuite *suite);
14092 void g_test_trap_assertions (const char *domain,
14096 guint64 assertion_flags,
14097 const char *pattern);
14098 void g_assertion_message (const char *domain,
14102 const char *message) __attribute__((__noreturn__));
14103 void g_assertion_message_expr (const char *domain,
14107 const char *expr) __attribute__((__noreturn__));
14108 void g_assertion_message_cmpstr (const char *domain,
14115 const char *arg2) __attribute__((__noreturn__));
14116 void g_assertion_message_cmpnum (const char *domain,
14124 char numtype) __attribute__((__noreturn__));
14125 void g_assertion_message_error (const char *domain,
14130 const GError *error,
14131 GQuark error_domain,
14132 int error_code) __attribute__((__noreturn__));
14133 void g_test_add_vtable (const char *testpath,
14135 gconstpointer test_data,
14136 GTestFixtureFunc data_setup,
14137 GTestFixtureFunc data_test,
14138 GTestFixtureFunc data_teardown);
14140 gboolean test_initialized;
14141 gboolean test_quick;
14142 gboolean test_perf;
14143 gboolean test_verbose;
14144 gboolean test_quiet;
14145 gboolean test_undefined;
14147 extern const GTestConfig * const g_test_config_vars;
14153 G_TEST_LOG_START_BINARY,
14154 G_TEST_LOG_LIST_CASE,
14155 G_TEST_LOG_SKIP_CASE,
14156 G_TEST_LOG_START_CASE,
14157 G_TEST_LOG_STOP_CASE,
14158 G_TEST_LOG_MIN_RESULT,
14159 G_TEST_LOG_MAX_RESULT,
14164 GTestLogType log_type;
14176 const char* g_test_log_type_name (GTestLogType log_type);
14177 GTestLogBuffer* g_test_log_buffer_new (void);
14178 void g_test_log_buffer_free (GTestLogBuffer *tbuffer);
14179 void g_test_log_buffer_push (GTestLogBuffer *tbuffer,
14181 const guint8 *bytes);
14182 GTestLogMsg* g_test_log_buffer_pop (GTestLogBuffer *tbuffer);
14183 void g_test_log_msg_free (GTestLogMsg *tmsg);
14184 # 291 "/usr/include/glib-2.0/glib/gtestutils.h"
14185 typedef gboolean (*GTestLogFatalFunc) (const gchar *log_domain,
14186 GLogLevelFlags log_level,
14187 const gchar *message,
14188 gpointer user_data);
14190 g_test_log_set_fatal_handler (GTestLogFatalFunc log_func,
14191 gpointer user_data);
14194 # 85 "/usr/include/glib-2.0/glib.h" 2
14195 # 1 "/usr/include/glib-2.0/glib/gthread.h" 1
14196 # 86 "/usr/include/glib-2.0/glib.h" 2
14197 # 1 "/usr/include/glib-2.0/glib/gthreadpool.h" 1
14198 # 34 "/usr/include/glib-2.0/glib/gthreadpool.h"
14199 # 1 "/usr/include/glib-2.0/glib/gthread.h" 1
14200 # 35 "/usr/include/glib-2.0/glib/gthreadpool.h" 2
14204 typedef struct _GThreadPool GThreadPool;
14209 struct _GThreadPool
14212 gpointer user_data;
14213 gboolean exclusive;
14216 GThreadPool * g_thread_pool_new (GFunc func,
14217 gpointer user_data,
14219 gboolean exclusive,
14221 void g_thread_pool_free (GThreadPool *pool,
14222 gboolean immediate,
14224 gboolean g_thread_pool_push (GThreadPool *pool,
14227 guint g_thread_pool_unprocessed (GThreadPool *pool);
14228 void g_thread_pool_set_sort_function (GThreadPool *pool,
14229 GCompareDataFunc func,
14230 gpointer user_data);
14231 gboolean g_thread_pool_set_max_threads (GThreadPool *pool,
14234 gint g_thread_pool_get_max_threads (GThreadPool *pool);
14235 guint g_thread_pool_get_num_threads (GThreadPool *pool);
14237 void g_thread_pool_set_max_unused_threads (gint max_threads);
14238 gint g_thread_pool_get_max_unused_threads (void);
14239 guint g_thread_pool_get_num_unused_threads (void);
14240 void g_thread_pool_stop_unused_threads (void);
14241 void g_thread_pool_set_max_idle_time (guint interval);
14242 guint g_thread_pool_get_max_idle_time (void);
14245 # 87 "/usr/include/glib-2.0/glib.h" 2
14246 # 1 "/usr/include/glib-2.0/glib/gtimer.h" 1
14247 # 34 "/usr/include/glib-2.0/glib/gtimer.h"
14248 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14249 # 35 "/usr/include/glib-2.0/glib/gtimer.h" 2
14257 typedef struct _GTimer GTimer;
14261 GTimer* g_timer_new (void);
14262 void g_timer_destroy (GTimer *timer);
14263 void g_timer_start (GTimer *timer);
14264 void g_timer_stop (GTimer *timer);
14265 void g_timer_reset (GTimer *timer);
14266 void g_timer_continue (GTimer *timer);
14267 gdouble g_timer_elapsed (GTimer *timer,
14268 gulong *microseconds);
14270 void g_usleep (gulong microseconds);
14272 void g_time_val_add (GTimeVal *time_,
14273 glong microseconds);
14274 gboolean g_time_val_from_iso8601 (const gchar *iso_date,
14276 gchar* g_time_val_to_iso8601 (GTimeVal *time_) __attribute__((__malloc__));
14279 # 88 "/usr/include/glib-2.0/glib.h" 2
14280 # 1 "/usr/include/glib-2.0/glib/gtimezone.h" 1
14281 # 89 "/usr/include/glib-2.0/glib.h" 2
14282 # 1 "/usr/include/glib-2.0/glib/gtrashstack.h" 1
14283 # 34 "/usr/include/glib-2.0/glib/gtrashstack.h"
14284 # 1 "/usr/include/glib-2.0/glib/gutils.h" 1
14285 # 35 "/usr/include/glib-2.0/glib/gtrashstack.h" 2
14289 typedef struct _GTrashStack GTrashStack;
14290 struct _GTrashStack
14295 static __inline __attribute__ ((unused)) void g_trash_stack_push (GTrashStack **stack_p,
14297 static __inline __attribute__ ((unused)) gpointer g_trash_stack_pop (GTrashStack **stack_p);
14298 static __inline __attribute__ ((unused)) gpointer g_trash_stack_peek (GTrashStack **stack_p);
14299 static __inline __attribute__ ((unused)) guint g_trash_stack_height (GTrashStack **stack_p);
14303 static __inline __attribute__ ((unused)) void
14304 g_trash_stack_push (GTrashStack **stack_p,
14307 GTrashStack *data = (GTrashStack *) data_p;
14309 data->next = *stack_p;
14312 static __inline __attribute__ ((unused)) gpointer
14313 g_trash_stack_pop (GTrashStack **stack_p)
14320 *stack_p = data->next;
14324 data->next = ((void *)0);
14329 static __inline __attribute__ ((unused)) gpointer
14330 g_trash_stack_peek (GTrashStack **stack_p)
14338 static __inline __attribute__ ((unused)) guint
14339 g_trash_stack_height (GTrashStack **stack_p)
14344 for (data = *stack_p; data; data = data->next)
14353 # 90 "/usr/include/glib-2.0/glib.h" 2
14354 # 1 "/usr/include/glib-2.0/glib/gtree.h" 1
14355 # 34 "/usr/include/glib-2.0/glib/gtree.h"
14356 # 1 "/usr/include/glib-2.0/glib/gnode.h" 1
14357 # 35 "/usr/include/glib-2.0/glib/gtree.h" 2
14361 typedef struct _GTree GTree;
14363 typedef gboolean (*GTraverseFunc) (gpointer key,
14369 GTree* g_tree_new (GCompareFunc key_compare_func);
14370 GTree* g_tree_new_with_data (GCompareDataFunc key_compare_func,
14371 gpointer key_compare_data);
14372 GTree* g_tree_new_full (GCompareDataFunc key_compare_func,
14373 gpointer key_compare_data,
14374 GDestroyNotify key_destroy_func,
14375 GDestroyNotify value_destroy_func);
14376 GTree* g_tree_ref (GTree *tree);
14377 void g_tree_unref (GTree *tree);
14378 void g_tree_destroy (GTree *tree);
14379 void g_tree_insert (GTree *tree,
14382 void g_tree_replace (GTree *tree,
14385 gboolean g_tree_remove (GTree *tree,
14386 gconstpointer key);
14387 gboolean g_tree_steal (GTree *tree,
14388 gconstpointer key);
14389 gpointer g_tree_lookup (GTree *tree,
14390 gconstpointer key);
14391 gboolean g_tree_lookup_extended (GTree *tree,
14392 gconstpointer lookup_key,
14393 gpointer *orig_key,
14395 void g_tree_foreach (GTree *tree,
14396 GTraverseFunc func,
14397 gpointer user_data);
14399 __attribute__((__deprecated__))
14400 void g_tree_traverse (GTree *tree,
14401 GTraverseFunc traverse_func,
14402 GTraverseType traverse_type,
14403 gpointer user_data);
14405 gpointer g_tree_search (GTree *tree,
14406 GCompareFunc search_func,
14407 gconstpointer user_data);
14408 gint g_tree_height (GTree *tree);
14409 gint g_tree_nnodes (GTree *tree);
14412 # 91 "/usr/include/glib-2.0/glib.h" 2
14413 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14414 # 92 "/usr/include/glib-2.0/glib.h" 2
14415 # 1 "/usr/include/glib-2.0/glib/gunicode.h" 1
14416 # 93 "/usr/include/glib-2.0/glib.h" 2
14417 # 1 "/usr/include/glib-2.0/glib/gurifuncs.h" 1
14418 # 30 "/usr/include/glib-2.0/glib/gurifuncs.h"
14419 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14420 # 31 "/usr/include/glib-2.0/glib/gurifuncs.h" 2
14423 # 69 "/usr/include/glib-2.0/glib/gurifuncs.h"
14424 char * g_uri_unescape_string (const char *escaped_string,
14425 const char *illegal_characters);
14426 char * g_uri_unescape_segment (const char *escaped_string,
14427 const char *escaped_string_end,
14428 const char *illegal_characters);
14429 char * g_uri_parse_scheme (const char *uri);
14430 char * g_uri_escape_string (const char *unescaped,
14431 const char *reserved_chars_allowed,
14432 gboolean allow_utf8);
14435 # 94 "/usr/include/glib-2.0/glib.h" 2
14436 # 1 "/usr/include/glib-2.0/glib/gutils.h" 1
14437 # 95 "/usr/include/glib-2.0/glib.h" 2
14438 # 1 "/usr/include/glib-2.0/glib/gvarianttype.h" 1
14439 # 30 "/usr/include/glib-2.0/glib/gvarianttype.h"
14440 # 1 "/usr/include/glib-2.0/glib/gmessages.h" 1
14441 # 31 "/usr/include/glib-2.0/glib/gvarianttype.h" 2
14442 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14443 # 32 "/usr/include/glib-2.0/glib/gvarianttype.h" 2
14446 # 44 "/usr/include/glib-2.0/glib/gvarianttype.h"
14447 typedef struct _GVariantType GVariantType;
14448 # 297 "/usr/include/glib-2.0/glib/gvarianttype.h"
14449 gboolean g_variant_type_string_is_valid (const gchar *type_string);
14450 gboolean g_variant_type_string_scan (const gchar *string,
14451 const gchar *limit,
14452 const gchar **endptr);
14455 void g_variant_type_free (GVariantType *type);
14456 GVariantType * g_variant_type_copy (const GVariantType *type);
14457 GVariantType * g_variant_type_new (const gchar *type_string);
14460 gsize g_variant_type_get_string_length (const GVariantType *type);
14461 const gchar * g_variant_type_peek_string (const GVariantType *type);
14462 gchar * g_variant_type_dup_string (const GVariantType *type);
14465 gboolean g_variant_type_is_definite (const GVariantType *type);
14466 gboolean g_variant_type_is_container (const GVariantType *type);
14467 gboolean g_variant_type_is_basic (const GVariantType *type);
14468 gboolean g_variant_type_is_maybe (const GVariantType *type);
14469 gboolean g_variant_type_is_array (const GVariantType *type);
14470 gboolean g_variant_type_is_tuple (const GVariantType *type);
14471 gboolean g_variant_type_is_dict_entry (const GVariantType *type);
14472 gboolean g_variant_type_is_variant (const GVariantType *type);
14475 guint g_variant_type_hash (gconstpointer type);
14476 gboolean g_variant_type_equal (gconstpointer type1,
14477 gconstpointer type2);
14480 gboolean g_variant_type_is_subtype_of (const GVariantType *type,
14481 const GVariantType *supertype);
14484 const GVariantType * g_variant_type_element (const GVariantType *type);
14485 const GVariantType * g_variant_type_first (const GVariantType *type);
14486 const GVariantType * g_variant_type_next (const GVariantType *type);
14487 gsize g_variant_type_n_items (const GVariantType *type);
14488 const GVariantType * g_variant_type_key (const GVariantType *type);
14489 const GVariantType * g_variant_type_value (const GVariantType *type);
14492 GVariantType * g_variant_type_new_array (const GVariantType *element);
14493 GVariantType * g_variant_type_new_maybe (const GVariantType *element);
14494 GVariantType * g_variant_type_new_tuple (const GVariantType * const *items,
14496 GVariantType * g_variant_type_new_dict_entry (const GVariantType *key,
14497 const GVariantType *value);
14500 const GVariantType * g_variant_type_checked_ (const gchar *);
14503 # 96 "/usr/include/glib-2.0/glib.h" 2
14504 # 1 "/usr/include/glib-2.0/glib/gvariant.h" 1
14505 # 30 "/usr/include/glib-2.0/glib/gvariant.h"
14506 # 1 "/usr/include/glib-2.0/glib/gvarianttype.h" 1
14507 # 31 "/usr/include/glib-2.0/glib/gvariant.h" 2
14508 # 1 "/usr/include/glib-2.0/glib/gstring.h" 1
14509 # 32 "/usr/include/glib-2.0/glib/gvariant.h" 2
14513 typedef struct _GVariant GVariant;
14517 G_VARIANT_CLASS_BOOLEAN = 'b',
14518 G_VARIANT_CLASS_BYTE = 'y',
14519 G_VARIANT_CLASS_INT16 = 'n',
14520 G_VARIANT_CLASS_UINT16 = 'q',
14521 G_VARIANT_CLASS_INT32 = 'i',
14522 G_VARIANT_CLASS_UINT32 = 'u',
14523 G_VARIANT_CLASS_INT64 = 'x',
14524 G_VARIANT_CLASS_UINT64 = 't',
14525 G_VARIANT_CLASS_HANDLE = 'h',
14526 G_VARIANT_CLASS_DOUBLE = 'd',
14527 G_VARIANT_CLASS_STRING = 's',
14528 G_VARIANT_CLASS_OBJECT_PATH = 'o',
14529 G_VARIANT_CLASS_SIGNATURE = 'g',
14530 G_VARIANT_CLASS_VARIANT = 'v',
14531 G_VARIANT_CLASS_MAYBE = 'm',
14532 G_VARIANT_CLASS_ARRAY = 'a',
14533 G_VARIANT_CLASS_TUPLE = '(',
14534 G_VARIANT_CLASS_DICT_ENTRY = '{'
14537 void g_variant_unref (GVariant *value);
14538 GVariant * g_variant_ref (GVariant *value);
14539 GVariant * g_variant_ref_sink (GVariant *value);
14540 gboolean g_variant_is_floating (GVariant *value);
14541 GVariant * g_variant_take_ref (GVariant *value);
14543 const GVariantType * g_variant_get_type (GVariant *value);
14544 const gchar * g_variant_get_type_string (GVariant *value);
14545 gboolean g_variant_is_of_type (GVariant *value,
14546 const GVariantType *type);
14547 gboolean g_variant_is_container (GVariant *value);
14548 GVariantClass g_variant_classify (GVariant *value);
14549 GVariant * g_variant_new_boolean (gboolean value);
14550 GVariant * g_variant_new_byte (guchar value);
14551 GVariant * g_variant_new_int16 (gint16 value);
14552 GVariant * g_variant_new_uint16 (guint16 value);
14553 GVariant * g_variant_new_int32 (gint32 value);
14554 GVariant * g_variant_new_uint32 (guint32 value);
14555 GVariant * g_variant_new_int64 (gint64 value);
14556 GVariant * g_variant_new_uint64 (guint64 value);
14557 GVariant * g_variant_new_handle (gint32 value);
14558 GVariant * g_variant_new_double (gdouble value);
14559 GVariant * g_variant_new_string (const gchar *string);
14560 GVariant * g_variant_new_object_path (const gchar *object_path);
14561 gboolean g_variant_is_object_path (const gchar *string);
14562 GVariant * g_variant_new_signature (const gchar *signature);
14563 gboolean g_variant_is_signature (const gchar *string);
14564 GVariant * g_variant_new_variant (GVariant *value);
14565 GVariant * g_variant_new_strv (const gchar * const *strv,
14568 GVariant * g_variant_new_objv (const gchar * const *strv,
14570 GVariant * g_variant_new_bytestring (const gchar *string);
14571 GVariant * g_variant_new_bytestring_array (const gchar * const *strv,
14573 GVariant * g_variant_new_fixed_array (const GVariantType *element_type,
14574 gconstpointer elements,
14576 gsize element_size);
14577 gboolean g_variant_get_boolean (GVariant *value);
14578 guchar g_variant_get_byte (GVariant *value);
14579 gint16 g_variant_get_int16 (GVariant *value);
14580 guint16 g_variant_get_uint16 (GVariant *value);
14581 gint32 g_variant_get_int32 (GVariant *value);
14582 guint32 g_variant_get_uint32 (GVariant *value);
14583 gint64 g_variant_get_int64 (GVariant *value);
14584 guint64 g_variant_get_uint64 (GVariant *value);
14585 gint32 g_variant_get_handle (GVariant *value);
14586 gdouble g_variant_get_double (GVariant *value);
14587 GVariant * g_variant_get_variant (GVariant *value);
14588 const gchar * g_variant_get_string (GVariant *value,
14590 gchar * g_variant_dup_string (GVariant *value,
14592 const gchar ** g_variant_get_strv (GVariant *value,
14594 gchar ** g_variant_dup_strv (GVariant *value,
14597 const gchar ** g_variant_get_objv (GVariant *value,
14599 gchar ** g_variant_dup_objv (GVariant *value,
14601 const gchar * g_variant_get_bytestring (GVariant *value);
14602 gchar * g_variant_dup_bytestring (GVariant *value,
14604 const gchar ** g_variant_get_bytestring_array (GVariant *value,
14606 gchar ** g_variant_dup_bytestring_array (GVariant *value,
14609 GVariant * g_variant_new_maybe (const GVariantType *child_type,
14611 GVariant * g_variant_new_array (const GVariantType *child_type,
14612 GVariant * const *children,
14614 GVariant * g_variant_new_tuple (GVariant * const *children,
14616 GVariant * g_variant_new_dict_entry (GVariant *key,
14619 GVariant * g_variant_get_maybe (GVariant *value);
14620 gsize g_variant_n_children (GVariant *value);
14621 void g_variant_get_child (GVariant *value,
14623 const gchar *format_string,
14625 GVariant * g_variant_get_child_value (GVariant *value,
14627 gboolean g_variant_lookup (GVariant *dictionary,
14629 const gchar *format_string,
14631 GVariant * g_variant_lookup_value (GVariant *dictionary,
14633 const GVariantType *expected_type);
14634 gconstpointer g_variant_get_fixed_array (GVariant *value,
14636 gsize element_size);
14638 gsize g_variant_get_size (GVariant *value);
14639 gconstpointer g_variant_get_data (GVariant *value);
14640 void g_variant_store (GVariant *value,
14643 gchar * g_variant_print (GVariant *value,
14644 gboolean type_annotate);
14645 GString * g_variant_print_string (GVariant *value,
14647 gboolean type_annotate);
14649 guint g_variant_hash (gconstpointer value);
14650 gboolean g_variant_equal (gconstpointer one,
14651 gconstpointer two);
14653 GVariant * g_variant_get_normal_form (GVariant *value);
14654 gboolean g_variant_is_normal_form (GVariant *value);
14655 GVariant * g_variant_byteswap (GVariant *value);
14656 GVariant * g_variant_new_from_data (const GVariantType *type,
14657 gconstpointer data,
14660 GDestroyNotify notify,
14661 gpointer user_data);
14663 typedef struct _GVariantIter GVariantIter;
14664 struct _GVariantIter {
14669 GVariantIter * g_variant_iter_new (GVariant *value);
14670 gsize g_variant_iter_init (GVariantIter *iter,
14672 GVariantIter * g_variant_iter_copy (GVariantIter *iter);
14673 gsize g_variant_iter_n_children (GVariantIter *iter);
14674 void g_variant_iter_free (GVariantIter *iter);
14675 GVariant * g_variant_iter_next_value (GVariantIter *iter);
14676 gboolean g_variant_iter_next (GVariantIter *iter,
14677 const gchar *format_string,
14679 gboolean g_variant_iter_loop (GVariantIter *iter,
14680 const gchar *format_string,
14684 typedef struct _GVariantBuilder GVariantBuilder;
14685 struct _GVariantBuilder {
14692 G_VARIANT_PARSE_ERROR_FAILED,
14693 G_VARIANT_PARSE_ERROR_BASIC_TYPE_EXPECTED,
14694 G_VARIANT_PARSE_ERROR_CANNOT_INFER_TYPE,
14695 G_VARIANT_PARSE_ERROR_DEFINITE_TYPE_EXPECTED,
14696 G_VARIANT_PARSE_ERROR_INPUT_NOT_AT_END,
14697 G_VARIANT_PARSE_ERROR_INVALID_CHARACTER,
14698 G_VARIANT_PARSE_ERROR_INVALID_FORMAT_STRING,
14699 G_VARIANT_PARSE_ERROR_INVALID_OBJECT_PATH,
14700 G_VARIANT_PARSE_ERROR_INVALID_SIGNATURE,
14701 G_VARIANT_PARSE_ERROR_INVALID_TYPE_STRING,
14702 G_VARIANT_PARSE_ERROR_NO_COMMON_TYPE,
14703 G_VARIANT_PARSE_ERROR_NUMBER_OUT_OF_RANGE,
14704 G_VARIANT_PARSE_ERROR_NUMBER_TOO_BIG,
14705 G_VARIANT_PARSE_ERROR_TYPE_ERROR,
14706 G_VARIANT_PARSE_ERROR_UNEXPECTED_TOKEN,
14707 G_VARIANT_PARSE_ERROR_UNKNOWN_KEYWORD,
14708 G_VARIANT_PARSE_ERROR_UNTERMINATED_STRING_CONSTANT,
14709 G_VARIANT_PARSE_ERROR_VALUE_EXPECTED
14710 } GVariantParseError;
14713 GQuark g_variant_parser_get_error_quark (void);
14715 GVariantBuilder * g_variant_builder_new (const GVariantType *type);
14716 void g_variant_builder_unref (GVariantBuilder *builder);
14717 GVariantBuilder * g_variant_builder_ref (GVariantBuilder *builder);
14718 void g_variant_builder_init (GVariantBuilder *builder,
14719 const GVariantType *type);
14720 GVariant * g_variant_builder_end (GVariantBuilder *builder);
14721 void g_variant_builder_clear (GVariantBuilder *builder);
14722 void g_variant_builder_open (GVariantBuilder *builder,
14723 const GVariantType *type);
14724 void g_variant_builder_close (GVariantBuilder *builder);
14725 void g_variant_builder_add_value (GVariantBuilder *builder,
14727 void g_variant_builder_add (GVariantBuilder *builder,
14728 const gchar *format_string,
14730 void g_variant_builder_add_parsed (GVariantBuilder *builder,
14731 const gchar *format,
14734 GVariant * g_variant_new (const gchar *format_string,
14736 void g_variant_get (GVariant *value,
14737 const gchar *format_string,
14739 GVariant * g_variant_new_va (const gchar *format_string,
14740 const gchar **endptr,
14742 void g_variant_get_va (GVariant *value,
14743 const gchar *format_string,
14744 const gchar **endptr,
14748 GVariant * g_variant_parse (const GVariantType *type,
14750 const gchar *limit,
14751 const gchar **endptr,
14753 GVariant * g_variant_new_parsed (const gchar *format,
14755 GVariant * g_variant_new_parsed_va (const gchar *format,
14758 gint g_variant_compare (gconstpointer one,
14759 gconstpointer two);
14761 # 97 "/usr/include/glib-2.0/glib.h" 2
14762 # 1 "/usr/include/glib-2.0/glib/gversion.h" 1
14763 # 34 "/usr/include/glib-2.0/glib/gversion.h"
14764 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14765 # 35 "/usr/include/glib-2.0/glib/gversion.h" 2
14769 extern const guint glib_major_version;
14770 extern const guint glib_minor_version;
14771 extern const guint glib_micro_version;
14772 extern const guint glib_interface_age;
14773 extern const guint glib_binary_age;
14775 const gchar * glib_check_version (guint required_major,
14776 guint required_minor,
14777 guint required_micro);
14786 # 98 "/usr/include/glib-2.0/glib.h" 2
14787 # 1 "/usr/include/glib-2.0/glib/gversionmacros.h" 1
14788 # 99 "/usr/include/glib-2.0/glib.h" 2
14793 # 1 "/usr/include/glib-2.0/glib/deprecated/gallocator.h" 1
14794 # 25 "/usr/include/glib-2.0/glib/deprecated/gallocator.h"
14795 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14796 # 26 "/usr/include/glib-2.0/glib/deprecated/gallocator.h" 2
14800 typedef struct _GAllocator GAllocator;
14801 typedef struct _GMemChunk GMemChunk;
14802 # 44 "/usr/include/glib-2.0/glib/deprecated/gallocator.h"
14803 __attribute__((__deprecated__))
14804 GMemChunk * g_mem_chunk_new (const gchar *name,
14808 __attribute__((__deprecated__))
14809 void g_mem_chunk_destroy (GMemChunk *mem_chunk);
14810 __attribute__((__deprecated__))
14811 gpointer g_mem_chunk_alloc (GMemChunk *mem_chunk);
14812 __attribute__((__deprecated__))
14813 gpointer g_mem_chunk_alloc0 (GMemChunk *mem_chunk);
14814 __attribute__((__deprecated__))
14815 void g_mem_chunk_free (GMemChunk *mem_chunk,
14817 __attribute__((__deprecated__))
14818 void g_mem_chunk_clean (GMemChunk *mem_chunk);
14819 __attribute__((__deprecated__))
14820 void g_mem_chunk_reset (GMemChunk *mem_chunk);
14821 __attribute__((__deprecated__))
14822 void g_mem_chunk_print (GMemChunk *mem_chunk);
14823 __attribute__((__deprecated__))
14824 void g_mem_chunk_info (void);
14825 __attribute__((__deprecated__))
14826 void g_blow_chunks (void);
14829 __attribute__((__deprecated__))
14830 GAllocator * g_allocator_new (const gchar *name,
14831 guint n_preallocs);
14832 __attribute__((__deprecated__))
14833 void g_allocator_free (GAllocator *allocator);
14834 __attribute__((__deprecated__))
14835 void g_list_push_allocator (GAllocator *allocator);
14836 __attribute__((__deprecated__))
14837 void g_list_pop_allocator (void);
14838 __attribute__((__deprecated__))
14839 void g_slist_push_allocator (GAllocator *allocator);
14840 __attribute__((__deprecated__))
14841 void g_slist_pop_allocator (void);
14842 __attribute__((__deprecated__))
14843 void g_node_push_allocator (GAllocator *allocator);
14844 __attribute__((__deprecated__))
14845 void g_node_pop_allocator (void);
14848 # 104 "/usr/include/glib-2.0/glib.h" 2
14849 # 1 "/usr/include/glib-2.0/glib/deprecated/gcache.h" 1
14850 # 34 "/usr/include/glib-2.0/glib/deprecated/gcache.h"
14851 # 1 "/usr/include/glib-2.0/glib/glist.h" 1
14852 # 35 "/usr/include/glib-2.0/glib/deprecated/gcache.h" 2
14856 typedef struct _GCache GCache;
14858 typedef gpointer (*GCacheNewFunc) (gpointer key);
14859 typedef gpointer (*GCacheDupFunc) (gpointer value);
14860 typedef void (*GCacheDestroyFunc) (gpointer value);
14864 __attribute__((__deprecated__))
14865 GCache* g_cache_new (GCacheNewFunc value_new_func,
14866 GCacheDestroyFunc value_destroy_func,
14867 GCacheDupFunc key_dup_func,
14868 GCacheDestroyFunc key_destroy_func,
14869 GHashFunc hash_key_func,
14870 GHashFunc hash_value_func,
14871 GEqualFunc key_equal_func);
14872 __attribute__((__deprecated__))
14873 void g_cache_destroy (GCache *cache);
14874 __attribute__((__deprecated__))
14875 gpointer g_cache_insert (GCache *cache,
14877 __attribute__((__deprecated__))
14878 void g_cache_remove (GCache *cache,
14879 gconstpointer value);
14880 __attribute__((__deprecated__))
14881 void g_cache_key_foreach (GCache *cache,
14883 gpointer user_data);
14884 __attribute__((__deprecated__))
14885 void g_cache_value_foreach (GCache *cache,
14887 gpointer user_data);
14890 # 105 "/usr/include/glib-2.0/glib.h" 2
14891 # 1 "/usr/include/glib-2.0/glib/deprecated/gcompletion.h" 1
14892 # 34 "/usr/include/glib-2.0/glib/deprecated/gcompletion.h"
14893 # 1 "/usr/include/glib-2.0/glib/glist.h" 1
14894 # 35 "/usr/include/glib-2.0/glib/deprecated/gcompletion.h" 2
14898 typedef struct _GCompletion GCompletion;
14900 typedef gchar* (*GCompletionFunc) (gpointer);
14905 typedef gint (*GCompletionStrncmpFunc) (const gchar *s1,
14909 struct _GCompletion
14912 GCompletionFunc func;
14916 GCompletionStrncmpFunc strncmp_func;
14919 __attribute__((__deprecated__))
14920 GCompletion* g_completion_new (GCompletionFunc func);
14921 __attribute__((__deprecated__))
14922 void g_completion_add_items (GCompletion* cmp,
14924 __attribute__((__deprecated__))
14925 void g_completion_remove_items (GCompletion* cmp,
14927 __attribute__((__deprecated__))
14928 void g_completion_clear_items (GCompletion* cmp);
14929 __attribute__((__deprecated__))
14930 GList* g_completion_complete (GCompletion* cmp,
14931 const gchar* prefix,
14932 gchar** new_prefix);
14933 __attribute__((__deprecated__))
14934 GList* g_completion_complete_utf8 (GCompletion *cmp,
14935 const gchar* prefix,
14936 gchar** new_prefix);
14937 __attribute__((__deprecated__))
14938 void g_completion_set_compare (GCompletion *cmp,
14939 GCompletionStrncmpFunc strncmp_func);
14940 __attribute__((__deprecated__))
14941 void g_completion_free (GCompletion* cmp);
14944 # 106 "/usr/include/glib-2.0/glib.h" 2
14945 # 1 "/usr/include/glib-2.0/glib/deprecated/gmain.h" 1
14946 # 34 "/usr/include/glib-2.0/glib/deprecated/gmain.h"
14947 # 1 "/usr/include/glib-2.0/glib/gmain.h" 1
14948 # 35 "/usr/include/glib-2.0/glib/deprecated/gmain.h" 2
14951 # 136 "/usr/include/glib-2.0/glib/deprecated/gmain.h"
14953 # 107 "/usr/include/glib-2.0/glib.h" 2
14954 # 1 "/usr/include/glib-2.0/glib/deprecated/grel.h" 1
14955 # 34 "/usr/include/glib-2.0/glib/deprecated/grel.h"
14956 # 1 "/usr/include/glib-2.0/glib/gtypes.h" 1
14957 # 35 "/usr/include/glib-2.0/glib/deprecated/grel.h" 2
14961 typedef struct _GRelation GRelation;
14962 typedef struct _GTuples GTuples;
14968 # 69 "/usr/include/glib-2.0/glib/deprecated/grel.h"
14969 __attribute__((__deprecated__))
14970 GRelation* g_relation_new (gint fields);
14971 __attribute__((__deprecated__))
14972 void g_relation_destroy (GRelation *relation);
14973 __attribute__((__deprecated__))
14974 void g_relation_index (GRelation *relation,
14976 GHashFunc hash_func,
14977 GEqualFunc key_equal_func);
14978 __attribute__((__deprecated__))
14979 void g_relation_insert (GRelation *relation,
14981 __attribute__((__deprecated__))
14982 gint g_relation_delete (GRelation *relation,
14985 __attribute__((__deprecated__))
14986 GTuples* g_relation_select (GRelation *relation,
14989 __attribute__((__deprecated__))
14990 gint g_relation_count (GRelation *relation,
14993 __attribute__((__deprecated__))
14994 gboolean g_relation_exists (GRelation *relation,
14996 __attribute__((__deprecated__))
14997 void g_relation_print (GRelation *relation);
14998 __attribute__((__deprecated__))
14999 void g_tuples_destroy (GTuples *tuples);
15000 __attribute__((__deprecated__))
15001 gpointer g_tuples_index (GTuples *tuples,
15006 # 108 "/usr/include/glib-2.0/glib.h" 2
15007 # 1 "/usr/include/glib-2.0/glib/deprecated/gthread.h" 1
15008 # 34 "/usr/include/glib-2.0/glib/deprecated/gthread.h"
15009 # 1 "/usr/include/glib-2.0/glib/gthread.h" 1
15010 # 35 "/usr/include/glib-2.0/glib/deprecated/gthread.h" 2
15016 G_THREAD_PRIORITY_LOW,
15017 G_THREAD_PRIORITY_NORMAL,
15018 G_THREAD_PRIORITY_HIGH,
15019 G_THREAD_PRIORITY_URGENT
15028 GThreadPriority priority;
15031 typedef struct _GThreadFunctions GThreadFunctions;
15032 struct _GThreadFunctions
15034 GMutex* (*mutex_new) (void);
15035 void (*mutex_lock) (GMutex *mutex);
15036 gboolean (*mutex_trylock) (GMutex *mutex);
15037 void (*mutex_unlock) (GMutex *mutex);
15038 void (*mutex_free) (GMutex *mutex);
15039 GCond* (*cond_new) (void);
15040 void (*cond_signal) (GCond *cond);
15041 void (*cond_broadcast) (GCond *cond);
15042 void (*cond_wait) (GCond *cond,
15044 gboolean (*cond_timed_wait) (GCond *cond,
15046 GTimeVal *end_time);
15047 void (*cond_free) (GCond *cond);
15048 GPrivate* (*private_new) (GDestroyNotify destructor);
15049 gpointer (*private_get) (GPrivate *private_key);
15050 void (*private_set) (GPrivate *private_key,
15052 void (*thread_create) (GThreadFunc func,
15057 GThreadPriority priority,
15060 void (*thread_yield) (void);
15061 void (*thread_join) (gpointer thread);
15062 void (*thread_exit) (void);
15063 void (*thread_set_priority)(gpointer thread,
15064 GThreadPriority priority);
15065 void (*thread_self) (gpointer thread);
15066 gboolean (*thread_equal) (gpointer thread1,
15070 extern GThreadFunctions g_thread_functions_for_glib_use;
15071 extern gboolean g_thread_use_default_impl;
15073 extern guint64 (*g_thread_gettime) (void);
15076 GThread *g_thread_create (GThreadFunc func,
15082 GThread *g_thread_create_full (GThreadFunc func,
15087 GThreadPriority priority,
15091 void g_thread_set_priority (GThread *thread,
15092 GThreadPriority priority);
15095 void g_thread_foreach (GFunc thread_func,
15096 gpointer user_data);
15099 # 1 "/usr/include/pthread.h" 1 3 4
15100 # 25 "/usr/include/pthread.h" 3 4
15101 # 1 "/usr/include/sched.h" 1 3 4
15102 # 30 "/usr/include/sched.h" 3 4
15103 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
15104 # 31 "/usr/include/sched.h" 2 3 4
15105 # 43 "/usr/include/sched.h" 3 4
15106 # 1 "/usr/include/bits/sched.h" 1 3 4
15107 # 74 "/usr/include/bits/sched.h" 3 4
15110 int __sched_priority;
15117 extern int clone (int (*__fn) (void *__arg), void *__child_stack,
15118 int __flags, void *__arg, ...) __attribute__ ((__nothrow__ , __leaf__));
15121 extern int unshare (int __flags) __attribute__ ((__nothrow__ , __leaf__));
15124 extern int sched_getcpu (void) __attribute__ ((__nothrow__ , __leaf__));
15127 extern int setns (int __fd, int __nstype) __attribute__ ((__nothrow__ , __leaf__));
15139 struct __sched_param
15141 int __sched_priority;
15143 # 120 "/usr/include/bits/sched.h" 3 4
15144 typedef unsigned long int __cpu_mask;
15153 __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))];
15155 # 203 "/usr/include/bits/sched.h" 3 4
15158 extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp)
15159 __attribute__ ((__nothrow__ , __leaf__));
15160 extern cpu_set_t *__sched_cpualloc (size_t __count) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
15161 extern void __sched_cpufree (cpu_set_t *__set) __attribute__ ((__nothrow__ , __leaf__));
15164 # 44 "/usr/include/sched.h" 2 3 4
15172 extern int sched_setparam (__pid_t __pid, __const struct sched_param *__param)
15173 __attribute__ ((__nothrow__ , __leaf__));
15176 extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __attribute__ ((__nothrow__ , __leaf__));
15179 extern int sched_setscheduler (__pid_t __pid, int __policy,
15180 __const struct sched_param *__param) __attribute__ ((__nothrow__ , __leaf__));
15183 extern int sched_getscheduler (__pid_t __pid) __attribute__ ((__nothrow__ , __leaf__));
15186 extern int sched_yield (void) __attribute__ ((__nothrow__ , __leaf__));
15189 extern int sched_get_priority_max (int __algorithm) __attribute__ ((__nothrow__ , __leaf__));
15192 extern int sched_get_priority_min (int __algorithm) __attribute__ ((__nothrow__ , __leaf__));
15195 extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __attribute__ ((__nothrow__ , __leaf__));
15196 # 118 "/usr/include/sched.h" 3 4
15197 extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize,
15198 __const cpu_set_t *__cpuset) __attribute__ ((__nothrow__ , __leaf__));
15201 extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize,
15202 cpu_set_t *__cpuset) __attribute__ ((__nothrow__ , __leaf__));
15206 # 26 "/usr/include/pthread.h" 2 3 4
15210 # 1 "/usr/include/bits/setjmp.h" 1 3 4
15211 # 29 "/usr/include/bits/setjmp.h" 3 4
15212 typedef int __jmp_buf[6];
15213 # 30 "/usr/include/pthread.h" 2 3 4
15214 # 1 "/usr/include/bits/wordsize.h" 1 3 4
15215 # 31 "/usr/include/pthread.h" 2 3 4
15221 PTHREAD_CREATE_JOINABLE,
15223 PTHREAD_CREATE_DETACHED
15231 PTHREAD_MUTEX_TIMED_NP,
15232 PTHREAD_MUTEX_RECURSIVE_NP,
15233 PTHREAD_MUTEX_ERRORCHECK_NP,
15234 PTHREAD_MUTEX_ADAPTIVE_NP
15237 PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP,
15238 PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP,
15239 PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP,
15240 PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL
15244 , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP
15253 PTHREAD_MUTEX_STALLED,
15254 PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED,
15255 PTHREAD_MUTEX_ROBUST,
15256 PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST
15266 PTHREAD_PRIO_INHERIT,
15267 PTHREAD_PRIO_PROTECT
15269 # 115 "/usr/include/pthread.h" 3 4
15272 PTHREAD_RWLOCK_PREFER_READER_NP,
15273 PTHREAD_RWLOCK_PREFER_WRITER_NP,
15274 PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP,
15275 PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP
15277 # 147 "/usr/include/pthread.h" 3 4
15280 PTHREAD_INHERIT_SCHED,
15282 PTHREAD_EXPLICIT_SCHED
15290 PTHREAD_SCOPE_SYSTEM,
15292 PTHREAD_SCOPE_PROCESS
15300 PTHREAD_PROCESS_PRIVATE,
15302 PTHREAD_PROCESS_SHARED
15305 # 182 "/usr/include/pthread.h" 3 4
15306 struct _pthread_cleanup_buffer
15308 void (*__routine) (void *);
15311 struct _pthread_cleanup_buffer *__prev;
15317 PTHREAD_CANCEL_ENABLE,
15319 PTHREAD_CANCEL_DISABLE
15324 PTHREAD_CANCEL_DEFERRED,
15326 PTHREAD_CANCEL_ASYNCHRONOUS
15329 # 220 "/usr/include/pthread.h" 3 4
15335 extern int pthread_create (pthread_t *__restrict __newthread,
15336 __const pthread_attr_t *__restrict __attr,
15337 void *(*__start_routine) (void *),
15338 void *__restrict __arg) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
15344 extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__));
15352 extern int pthread_join (pthread_t __th, void **__thread_return);
15357 extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) __attribute__ ((__nothrow__ , __leaf__));
15365 extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return,
15366 __const struct timespec *__abstime);
15373 extern int pthread_detach (pthread_t __th) __attribute__ ((__nothrow__ , __leaf__));
15377 extern pthread_t pthread_self (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
15380 extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) __attribute__ ((__nothrow__ , __leaf__));
15388 extern int pthread_attr_init (pthread_attr_t *__attr) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15391 extern int pthread_attr_destroy (pthread_attr_t *__attr)
15392 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15395 extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr,
15396 int *__detachstate)
15397 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15400 extern int pthread_attr_setdetachstate (pthread_attr_t *__attr,
15402 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15406 extern int pthread_attr_getguardsize (__const pthread_attr_t *__attr,
15407 size_t *__guardsize)
15408 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15411 extern int pthread_attr_setguardsize (pthread_attr_t *__attr,
15412 size_t __guardsize)
15413 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15417 extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict
15419 struct sched_param *__restrict __param)
15420 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15423 extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr,
15424 __const struct sched_param *__restrict
15425 __param) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15428 extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict
15429 __attr, int *__restrict __policy)
15430 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15433 extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy)
15434 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15437 extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict
15438 __attr, int *__restrict __inherit)
15439 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15442 extern int pthread_attr_setinheritsched (pthread_attr_t *__attr,
15444 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15448 extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr,
15449 int *__restrict __scope)
15450 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15453 extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope)
15454 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15457 extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict
15458 __attr, void **__restrict __stackaddr)
15459 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__deprecated__));
15465 extern int pthread_attr_setstackaddr (pthread_attr_t *__attr,
15467 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__));
15470 extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict
15471 __attr, size_t *__restrict __stacksize)
15472 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15477 extern int pthread_attr_setstacksize (pthread_attr_t *__attr,
15478 size_t __stacksize)
15479 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15483 extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr,
15484 void **__restrict __stackaddr,
15485 size_t *__restrict __stacksize)
15486 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2, 3)));
15491 extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr,
15492 size_t __stacksize) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15498 extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr,
15499 size_t __cpusetsize,
15500 __const cpu_set_t *__cpuset)
15501 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3)));
15505 extern int pthread_attr_getaffinity_np (__const pthread_attr_t *__attr,
15506 size_t __cpusetsize,
15507 cpu_set_t *__cpuset)
15508 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3)));
15514 extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr)
15515 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
15523 extern int pthread_setschedparam (pthread_t __target_thread, int __policy,
15524 __const struct sched_param *__param)
15525 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3)));
15528 extern int pthread_getschedparam (pthread_t __target_thread,
15529 int *__restrict __policy,
15530 struct sched_param *__restrict __param)
15531 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
15534 extern int pthread_setschedprio (pthread_t __target_thread, int __prio)
15535 __attribute__ ((__nothrow__ , __leaf__));
15540 extern int pthread_getname_np (pthread_t __target_thread, char *__buf,
15542 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
15545 extern int pthread_setname_np (pthread_t __target_thread, __const char *__name)
15546 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
15552 extern int pthread_getconcurrency (void) __attribute__ ((__nothrow__ , __leaf__));
15555 extern int pthread_setconcurrency (int __level) __attribute__ ((__nothrow__ , __leaf__));
15563 extern int pthread_yield (void) __attribute__ ((__nothrow__ , __leaf__));
15568 extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize,
15569 __const cpu_set_t *__cpuset)
15570 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3)));
15573 extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize,
15574 cpu_set_t *__cpuset)
15575 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3)));
15576 # 478 "/usr/include/pthread.h" 3 4
15577 extern int pthread_once (pthread_once_t *__once_control,
15578 void (*__init_routine) (void)) __attribute__ ((__nonnull__ (1, 2)));
15579 # 490 "/usr/include/pthread.h" 3 4
15580 extern int pthread_setcancelstate (int __state, int *__oldstate);
15584 extern int pthread_setcanceltype (int __type, int *__oldtype);
15587 extern int pthread_cancel (pthread_t __th);
15592 extern void pthread_testcancel (void);
15601 __jmp_buf __cancel_jmp_buf;
15602 int __mask_was_saved;
15603 } __cancel_jmp_buf[1];
15605 } __pthread_unwind_buf_t __attribute__ ((__aligned__));
15606 # 524 "/usr/include/pthread.h" 3 4
15607 struct __pthread_cleanup_frame
15609 void (*__cancel_routine) (void *);
15610 void *__cancel_arg;
15614 # 664 "/usr/include/pthread.h" 3 4
15615 extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf)
15616 __attribute__ ((__regparm__ (1)));
15617 # 676 "/usr/include/pthread.h" 3 4
15618 extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf)
15619 __attribute__ ((__regparm__ (1)));
15620 # 699 "/usr/include/pthread.h" 3 4
15621 extern void __pthread_register_cancel_defer (__pthread_unwind_buf_t *__buf)
15622 __attribute__ ((__regparm__ (1)));
15623 # 712 "/usr/include/pthread.h" 3 4
15624 extern void __pthread_unregister_cancel_restore (__pthread_unwind_buf_t *__buf)
15625 __attribute__ ((__regparm__ (1)));
15629 extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf)
15630 __attribute__ ((__regparm__ (1))) __attribute__ ((__noreturn__))
15632 __attribute__ ((__weak__))
15638 struct __jmp_buf_tag;
15639 extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) __attribute__ ((__nothrow__ , __leaf__));
15645 extern int pthread_mutex_init (pthread_mutex_t *__mutex,
15646 __const pthread_mutexattr_t *__mutexattr)
15647 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15650 extern int pthread_mutex_destroy (pthread_mutex_t *__mutex)
15651 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15654 extern int pthread_mutex_trylock (pthread_mutex_t *__mutex)
15655 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15658 extern int pthread_mutex_lock (pthread_mutex_t *__mutex)
15659 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15663 extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
15664 __const struct timespec *__restrict
15665 __abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
15669 extern int pthread_mutex_unlock (pthread_mutex_t *__mutex)
15670 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15674 extern int pthread_mutex_getprioceiling (__const pthread_mutex_t *
15675 __restrict __mutex,
15676 int *__restrict __prioceiling)
15677 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15681 extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex,
15683 int *__restrict __old_ceiling)
15684 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 3)));
15689 extern int pthread_mutex_consistent (pthread_mutex_t *__mutex)
15690 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15692 extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex)
15693 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15694 # 790 "/usr/include/pthread.h" 3 4
15695 extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr)
15696 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15699 extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr)
15700 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15703 extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t *
15705 int *__restrict __pshared)
15706 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15709 extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr,
15711 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15715 extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict
15716 __attr, int *__restrict __kind)
15717 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15722 extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind)
15723 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15727 extern int pthread_mutexattr_getprotocol (__const pthread_mutexattr_t *
15729 int *__restrict __protocol)
15730 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15734 extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr,
15736 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15739 extern int pthread_mutexattr_getprioceiling (__const pthread_mutexattr_t *
15741 int *__restrict __prioceiling)
15742 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15745 extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr,
15747 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15751 extern int pthread_mutexattr_getrobust (__const pthread_mutexattr_t *__attr,
15753 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15755 extern int pthread_mutexattr_getrobust_np (__const pthread_mutexattr_t *__attr,
15757 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15761 extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr,
15763 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15765 extern int pthread_mutexattr_setrobust_np (pthread_mutexattr_t *__attr,
15767 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15768 # 872 "/usr/include/pthread.h" 3 4
15769 extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock,
15770 __const pthread_rwlockattr_t *__restrict
15771 __attr) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15774 extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock)
15775 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15778 extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock)
15779 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15782 extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock)
15783 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15787 extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
15788 __const struct timespec *__restrict
15789 __abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
15793 extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock)
15794 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15797 extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock)
15798 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15802 extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
15803 __const struct timespec *__restrict
15804 __abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
15808 extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock)
15809 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15815 extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr)
15816 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15819 extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr)
15820 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15823 extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t *
15825 int *__restrict __pshared)
15826 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15829 extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr,
15831 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15834 extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *
15836 int *__restrict __pref)
15837 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15840 extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr,
15841 int __pref) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15849 extern int pthread_cond_init (pthread_cond_t *__restrict __cond,
15850 __const pthread_condattr_t *__restrict
15851 __cond_attr) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15854 extern int pthread_cond_destroy (pthread_cond_t *__cond)
15855 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15858 extern int pthread_cond_signal (pthread_cond_t *__cond)
15859 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15862 extern int pthread_cond_broadcast (pthread_cond_t *__cond)
15863 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15870 extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
15871 pthread_mutex_t *__restrict __mutex)
15872 __attribute__ ((__nonnull__ (1, 2)));
15873 # 984 "/usr/include/pthread.h" 3 4
15874 extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
15875 pthread_mutex_t *__restrict __mutex,
15876 __const struct timespec *__restrict
15877 __abstime) __attribute__ ((__nonnull__ (1, 2, 3)));
15882 extern int pthread_condattr_init (pthread_condattr_t *__attr)
15883 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15886 extern int pthread_condattr_destroy (pthread_condattr_t *__attr)
15887 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15890 extern int pthread_condattr_getpshared (__const pthread_condattr_t *
15892 int *__restrict __pshared)
15893 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15896 extern int pthread_condattr_setpshared (pthread_condattr_t *__attr,
15897 int __pshared) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15901 extern int pthread_condattr_getclock (__const pthread_condattr_t *
15903 __clockid_t *__restrict __clock_id)
15904 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15907 extern int pthread_condattr_setclock (pthread_condattr_t *__attr,
15908 __clockid_t __clock_id)
15909 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15910 # 1028 "/usr/include/pthread.h" 3 4
15911 extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared)
15912 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15915 extern int pthread_spin_destroy (pthread_spinlock_t *__lock)
15916 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15919 extern int pthread_spin_lock (pthread_spinlock_t *__lock)
15920 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15923 extern int pthread_spin_trylock (pthread_spinlock_t *__lock)
15924 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15927 extern int pthread_spin_unlock (pthread_spinlock_t *__lock)
15928 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15935 extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier,
15936 __const pthread_barrierattr_t *__restrict
15937 __attr, unsigned int __count)
15938 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15941 extern int pthread_barrier_destroy (pthread_barrier_t *__barrier)
15942 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15945 extern int pthread_barrier_wait (pthread_barrier_t *__barrier)
15946 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
15950 extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr)
15951 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15954 extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr)
15955 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15958 extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t *
15960 int *__restrict __pshared)
15961 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
15964 extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr,
15966 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15967 # 1095 "/usr/include/pthread.h" 3 4
15968 extern int pthread_key_create (pthread_key_t *__key,
15969 void (*__destr_function) (void *))
15970 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
15973 extern int pthread_key_delete (pthread_key_t __key) __attribute__ ((__nothrow__ , __leaf__));
15976 extern void *pthread_getspecific (pthread_key_t __key) __attribute__ ((__nothrow__ , __leaf__));
15979 extern int pthread_setspecific (pthread_key_t __key,
15980 __const void *__pointer) __attribute__ ((__nothrow__ , __leaf__)) ;
15985 extern int pthread_getcpuclockid (pthread_t __thread_id,
15986 __clockid_t *__clock_id)
15987 __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
15988 # 1129 "/usr/include/pthread.h" 3 4
15989 extern int pthread_atfork (void (*__prepare) (void),
15990 void (*__parent) (void),
15991 void (*__child) (void)) __attribute__ ((__nothrow__ , __leaf__));
15996 extern __inline int
15997 __attribute__ ((__nothrow__ , __leaf__)) pthread_equal (pthread_t __thread1, pthread_t __thread2)
15999 return __thread1 == __thread2;
16004 # 124 "/usr/include/glib-2.0/glib/deprecated/gthread.h" 2
16014 pthread_mutex_t unused;
16017 # 144 "/usr/include/glib-2.0/glib/deprecated/gthread.h"
16019 void g_static_mutex_init (GStaticMutex *mutex);
16021 void g_static_mutex_free (GStaticMutex *mutex);
16022 GMutex *g_static_mutex_get_mutex_impl (GStaticMutex *mutex);
16024 typedef struct _GStaticRecMutex GStaticRecMutex;
16025 struct _GStaticRecMutex
16028 GStaticMutex mutex;
16044 void g_static_rec_mutex_init (GStaticRecMutex *mutex);
16047 void g_static_rec_mutex_lock (GStaticRecMutex *mutex);
16050 gboolean g_static_rec_mutex_trylock (GStaticRecMutex *mutex);
16053 void g_static_rec_mutex_unlock (GStaticRecMutex *mutex);
16056 void g_static_rec_mutex_lock_full (GStaticRecMutex *mutex,
16060 guint g_static_rec_mutex_unlock_full (GStaticRecMutex *mutex);
16063 void g_static_rec_mutex_free (GStaticRecMutex *mutex);
16065 typedef struct _GStaticRWLock GStaticRWLock;
16066 struct _GStaticRWLock
16069 GStaticMutex mutex;
16072 guint read_counter;
16073 gboolean have_writer;
16074 guint want_to_read;
16075 guint want_to_write;
16081 void g_static_rw_lock_init (GStaticRWLock *lock);
16084 void g_static_rw_lock_reader_lock (GStaticRWLock *lock);
16087 gboolean g_static_rw_lock_reader_trylock (GStaticRWLock *lock);
16090 void g_static_rw_lock_reader_unlock (GStaticRWLock *lock);
16093 void g_static_rw_lock_writer_lock (GStaticRWLock *lock);
16096 gboolean g_static_rw_lock_writer_trylock (GStaticRWLock *lock);
16099 void g_static_rw_lock_writer_unlock (GStaticRWLock *lock);
16102 void g_static_rw_lock_free (GStaticRWLock *lock);
16105 GPrivate * g_private_new (GDestroyNotify notify);
16107 typedef struct _GStaticPrivate GStaticPrivate;
16108 struct _GStaticPrivate
16116 void g_static_private_init (GStaticPrivate *private_key);
16119 gpointer g_static_private_get (GStaticPrivate *private_key);
16122 void g_static_private_set (GStaticPrivate *private_key,
16124 GDestroyNotify notify);
16127 void g_static_private_free (GStaticPrivate *private_key);
16130 gboolean g_once_init_enter_impl (volatile gsize *location);
16133 void g_thread_init (gpointer vtable);
16135 void g_thread_init_with_errorcheck_mutexes (gpointer vtable);
16138 gboolean g_thread_get_initialized (void);
16140 extern gboolean g_threads_got_initialized;
16145 GMutex * g_mutex_new (void);
16147 void g_mutex_free (GMutex *mutex);
16149 GCond * g_cond_new (void);
16151 void g_cond_free (GCond *cond);
16153 gboolean g_cond_timed_wait (GCond *cond,
16155 GTimeVal *timeval);
16158 # 109 "/usr/include/glib-2.0/glib.h" 2
16159 # 40 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
16166 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-os-posix.h" 1
16167 # 29 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-os-posix.h"
16168 void os_set_line_buffering(void);
16169 void os_set_proc_name(const char *s);
16170 void os_setup_signal_handling(void);
16171 void os_daemonize(void);
16172 void os_setup_post(void);
16174 typedef struct timeval qemu_timeval;
16175 # 46 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-os-posix.h"
16176 typedef struct timespec qemu_timespec;
16177 int qemu_utimens(const char *path, const qemu_timespec *times);
16178 # 47 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
16179 # 91 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16180 # 1 "/usr/include/sys/uio.h" 1 3 4
16181 # 26 "/usr/include/sys/uio.h" 3 4
16185 # 1 "/usr/include/bits/uio.h" 1 3 4
16186 # 55 "/usr/include/bits/uio.h" 3 4
16190 extern ssize_t process_vm_readv (pid_t __pid, __const struct iovec *__lvec,
16191 unsigned long int __liovcnt,
16192 __const struct iovec *__rvec,
16193 unsigned long int __riovcnt,
16194 unsigned long int __flags)
16195 __attribute__ ((__nothrow__ , __leaf__));
16198 extern ssize_t process_vm_writev (pid_t __pid, __const struct iovec *__lvec,
16199 unsigned long int __liovcnt,
16200 __const struct iovec *__rvec,
16201 unsigned long int __riovcnt,
16202 unsigned long int __flags)
16203 __attribute__ ((__nothrow__ , __leaf__));
16206 # 30 "/usr/include/sys/uio.h" 2 3 4
16207 # 40 "/usr/include/sys/uio.h" 3 4
16208 extern ssize_t readv (int __fd, __const struct iovec *__iovec, int __count)
16209 __attribute__ ((__warn_unused_result__));
16210 # 51 "/usr/include/sys/uio.h" 3 4
16211 extern ssize_t writev (int __fd, __const struct iovec *__iovec, int __count)
16212 __attribute__ ((__warn_unused_result__));
16213 # 82 "/usr/include/sys/uio.h" 3 4
16214 extern ssize_t preadv (int __fd, __const struct iovec *__iovec, int __count, __off64_t __offset) __asm__ ("" "preadv64")
16216 __attribute__ ((__warn_unused_result__));
16217 extern ssize_t pwritev (int __fd, __const struct iovec *__iovec, int __count, __off64_t __offset) __asm__ ("" "pwritev64")
16219 __attribute__ ((__warn_unused_result__));
16220 # 104 "/usr/include/sys/uio.h" 3 4
16221 extern ssize_t preadv64 (int __fd, __const struct iovec *__iovec, int __count,
16222 __off64_t __offset) __attribute__ ((__warn_unused_result__));
16223 # 116 "/usr/include/sys/uio.h" 3 4
16224 extern ssize_t pwritev64 (int __fd, __const struct iovec *__iovec, int __count,
16225 __off64_t __offset) __attribute__ ((__warn_unused_result__));
16230 # 92 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
16233 typedef int (*fprintf_function)(FILE *f, const char *fmt, ...)
16234 __attribute__((format(gnu_printf, 2, 3)));
16235 # 115 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16236 void configure_icount(const char *option);
16237 extern int use_icount;
16238 # 126 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16239 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 1
16240 # 127 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
16241 # 135 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16242 void qemu_get_timedate(struct tm *tm, int offset);
16243 int qemu_timedate_diff(struct tm *tm);
16246 void pstrcpy(char *buf, int buf_size, const char *str);
16247 char *pstrcat(char *buf, int buf_size, const char *s);
16248 int strstart(const char *str, const char *val, const char **ptr);
16249 int stristart(const char *str, const char *val, const char **ptr);
16250 int qemu_strnlen(const char *s, int max_len);
16251 time_t mktimegm(struct tm *tm);
16252 int qemu_fls(int i);
16253 int qemu_fdatasync(int fd);
16254 int fcntl_setfl(int fd, int flag);
16255 int qemu_parse_fd(const char *param);
16256 # 162 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16257 int64_t strtosz(const char *nptr, char **end);
16258 int64_t strtosz_suffix(const char *nptr, char **end, const char default_suffix);
16259 int64_t strtosz_suffix_unit(const char *nptr, char **end,
16260 const char default_suffix, int64_t unit);
16263 void init_paths(const char *prefix);
16264 const char *path(const char *pathname);
16265 # 187 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16266 void *qemu_oom_check(void *ptr);
16268 int qemu_open(const char *name, int flags, ...);
16269 ssize_t qemu_write_full(int fd, const void *buf, size_t count)
16270 __attribute__((warn_unused_result));
16271 ssize_t qemu_send_full(int fd, const void *buf, size_t count, int flags)
16272 __attribute__((warn_unused_result));
16273 ssize_t qemu_recv_full(int fd, void *buf, size_t count, int flags)
16274 __attribute__((warn_unused_result));
16277 int qemu_eventfd(int pipefd[2]);
16278 int qemu_pipe(int pipefd[2]);
16279 # 208 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h"
16280 int qemu_recvv(int sockfd, struct iovec *iov, int len, int iov_offset);
16281 int qemu_sendv(int sockfd, struct iovec *iov, int len, int iov_offset);
16285 void __attribute__ ((__noreturn__)) hw_error(const char *fmt, ...) __attribute__((format(gnu_printf, 1, 2)));
16287 struct ParallelIOArg {
16292 typedef int (*DMA_transfer_handler) (void *opaque, int nchan, int pos, int size);
16296 typedef struct NICInfo NICInfo;
16297 typedef struct HCIInfo HCIInfo;
16298 typedef struct AudioState AudioState;
16299 typedef struct BlockDriverState BlockDriverState;
16300 typedef struct DriveInfo DriveInfo;
16301 typedef struct DisplayState DisplayState;
16302 typedef struct DisplayChangeListener DisplayChangeListener;
16303 typedef struct DisplaySurface DisplaySurface;
16304 typedef struct DisplayAllocator DisplayAllocator;
16305 typedef struct PixelFormat PixelFormat;
16306 typedef struct TextConsole TextConsole;
16307 typedef TextConsole QEMUConsole;
16308 typedef struct CharDriverState CharDriverState;
16309 typedef struct MACAddr MACAddr;
16310 typedef struct VLANState VLANState;
16311 typedef struct VLANClientState VLANClientState;
16312 typedef struct i2c_bus i2c_bus;
16313 typedef struct ISABus ISABus;
16314 typedef struct SMBusDevice SMBusDevice;
16315 typedef struct PCIHostState PCIHostState;
16316 typedef struct PCIExpressHost PCIExpressHost;
16317 typedef struct PCIBus PCIBus;
16318 typedef struct PCIDevice PCIDevice;
16319 typedef struct PCIExpressDevice PCIExpressDevice;
16320 typedef struct PCIBridge PCIBridge;
16321 typedef struct PCIEAERMsg PCIEAERMsg;
16322 typedef struct PCIEAERLog PCIEAERLog;
16323 typedef struct PCIEAERErr PCIEAERErr;
16324 typedef struct PCIEPort PCIEPort;
16325 typedef struct PCIESlot PCIESlot;
16326 typedef struct SerialState SerialState;
16327 typedef struct IRQState *qemu_irq;
16328 typedef struct PCMCIACardState PCMCIACardState;
16329 typedef struct MouseTransformInfo MouseTransformInfo;
16330 typedef struct uWireSlave uWireSlave;
16331 typedef struct I2SCodec I2SCodec;
16332 typedef struct SSIBus SSIBus;
16333 typedef struct EventNotifier EventNotifier;
16334 typedef struct VirtIODevice VirtIODevice;
16335 typedef struct QEMUSGList QEMUSGList;
16336 typedef struct SHPCDevice SHPCDevice;
16338 typedef uint64_t pcibus_t;
16340 typedef enum LostTickPolicy {
16348 void tcg_exec_init(unsigned long tb_size);
16349 _Bool tcg_enabled(void);
16351 void cpu_exec_init_all(void);
16354 void cpu_save(QEMUFile *f, void *opaque);
16355 int cpu_load(QEMUFile *f, void *opaque, int version_id);
16358 void qemu_cpu_kick(void *env);
16359 void qemu_cpu_kick_self(void);
16360 int qemu_cpu_is_self(void *env);
16361 _Bool all_cpu_threads_idle(void);
16364 struct qemu_work_item {
16365 struct qemu_work_item *next;
16366 void (*func)(void *data);
16374 void qemu_init_vcpu(void *env);
16381 int qemu_co_sendv(int sockfd, struct iovec *iov,
16382 int len, int iov_offset);
16388 int qemu_co_recvv(int sockfd, struct iovec *iov,
16389 int len, int iov_offset);
16395 int qemu_co_send(int sockfd, void *buf, int len);
16401 int qemu_co_recv(int sockfd, void *buf, int len);
16404 typedef struct QEMUIOVector {
16411 void qemu_iovec_init(QEMUIOVector *qiov, int alloc_hint);
16412 void qemu_iovec_init_external(QEMUIOVector *qiov, struct iovec *iov, int niov);
16413 void qemu_iovec_add(QEMUIOVector *qiov, void *base, size_t len);
16414 void qemu_iovec_copy(QEMUIOVector *dst, QEMUIOVector *src, uint64_t skip,
16416 void qemu_iovec_concat(QEMUIOVector *dst, QEMUIOVector *src, size_t size);
16417 void qemu_iovec_destroy(QEMUIOVector *qiov);
16418 void qemu_iovec_reset(QEMUIOVector *qiov);
16419 void qemu_iovec_to_buffer(QEMUIOVector *qiov, void *buf);
16420 void qemu_iovec_from_buffer(QEMUIOVector *qiov, const void *buf, size_t count);
16421 void qemu_iovec_memset(QEMUIOVector *qiov, int c, size_t count);
16422 void qemu_iovec_memset_skip(QEMUIOVector *qiov, int c, size_t count,
16425 _Bool buffer_is_zero(const void *buf, size_t len);
16427 void qemu_progress_init(int enabled, float min_skip);
16428 void qemu_progress_end(void);
16429 void qemu_progress_print(float delta, int max);
16433 char *qemu_find_file(int type, const char *name);
16436 void os_setup_early_signal_handling(void);
16437 char *os_find_datadir(const char *argv0);
16438 void os_parse_cmd_args(int index, const char *optarg);
16439 void os_pidfile_error(void);
16442 static inline uint8_t to_bcd(uint8_t val)
16444 return ((val / 10) << 4) | (val % 10);
16447 static inline uint8_t from_bcd(uint8_t val)
16449 return ((val >> 4) * 10) + (val & 0x0f);
16453 static inline uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c)
16461 uint32_t low, high;
16468 rl = (uint64_t)u.l.low * (uint64_t)b;
16469 rh = (uint64_t)u.l.high * (uint64_t)b;
16471 res.l.high = rh / c;
16472 res.l.low = (((rh % c) << 32) + (rl & 0xffffffff)) / c;
16482 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/module.h" 1
16483 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/module.h"
16486 MODULE_INIT_MACHINE,
16490 } module_init_type;
16497 void register_module_init(void (*fn)(void), module_init_type type);
16499 void module_call_init(module_init_type type);
16500 # 411 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 2
16501 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
16502 # 47 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
16503 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h" 1
16504 # 26 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h"
16505 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config.h" 1
16506 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config-host.h" 1
16507 # 2 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config.h" 2
16508 # 1 "./config-target.h" 1
16509 # 2 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config.h" 2
16510 # 27 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h" 2
16511 # 1 "/usr/include/setjmp.h" 1 3 4
16512 # 28 "/usr/include/setjmp.h" 3 4
16516 # 1 "/usr/include/bits/sigset.h" 1 3 4
16517 # 32 "/usr/include/setjmp.h" 2 3 4
16521 struct __jmp_buf_tag
16527 __jmp_buf __jmpbuf;
16528 int __mask_was_saved;
16529 __sigset_t __saved_mask;
16535 typedef struct __jmp_buf_tag jmp_buf[1];
16539 extern int setjmp (jmp_buf __env) __attribute__ ((__nothrow__));
16546 extern int __sigsetjmp (struct __jmp_buf_tag __env[1], int __savemask) __attribute__ ((__nothrow__));
16551 extern int _setjmp (struct __jmp_buf_tag __env[1]) __attribute__ ((__nothrow__));
16552 # 78 "/usr/include/setjmp.h" 3 4
16557 extern void longjmp (struct __jmp_buf_tag __env[1], int __val)
16558 __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
16566 extern void _longjmp (struct __jmp_buf_tag __env[1], int __val)
16567 __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
16575 typedef struct __jmp_buf_tag sigjmp_buf[1];
16576 # 110 "/usr/include/setjmp.h" 3 4
16577 extern void siglongjmp (sigjmp_buf __env, int __val)
16578 __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
16584 # 1 "/usr/include/bits/setjmp2.h" 1 3 4
16585 # 26 "/usr/include/bits/setjmp2.h" 3 4
16586 extern void longjmp (struct __jmp_buf_tag __env[1], int __val) __asm__ ("" "__longjmp_chk") __attribute__ ((__nothrow__))
16588 __attribute__ ((__noreturn__));
16589 extern void _longjmp (struct __jmp_buf_tag __env[1], int __val) __asm__ ("" "__longjmp_chk") __attribute__ ((__nothrow__))
16591 __attribute__ ((__noreturn__));
16592 extern void siglongjmp (struct __jmp_buf_tag __env[1], int __val) __asm__ ("" "__longjmp_chk") __attribute__ ((__nothrow__))
16594 __attribute__ ((__noreturn__));
16595 # 118 "/usr/include/setjmp.h" 2 3 4
16599 # 28 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h" 2
16602 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h" 1
16607 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/4.6.3/include/stddef.h" 1 3 4
16608 # 6 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h" 2
16609 # 82 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h"
16610 int qemu_daemon(int nochdir, int noclose);
16611 void *qemu_memalign(size_t alignment, size_t size);
16612 void *qemu_vmalloc(size_t size);
16613 void qemu_vfree(void *ptr);
16614 # 120 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h"
16615 int qemu_madvise(void *addr, size_t len, int advice);
16616 # 130 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h"
16617 int qemu_create_pidfile(const char *filename);
16618 int qemu_get_thread_id(void);
16619 # 150 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h"
16620 void qemu_set_cloexec(int fd);
16621 # 31 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h" 2
16622 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-queue.h" 1
16623 # 81 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-queue.h"
16624 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-barrier.h" 1
16625 # 82 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-queue.h" 2
16626 # 32 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h" 2
16627 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/targphys.h" 1
16628 # 15 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/targphys.h"
16629 typedef uint64_t target_phys_addr_t;
16630 # 33 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h" 2
16638 typedef int16_t target_short __attribute__ ((aligned(2)));
16639 typedef uint16_t target_ushort __attribute__((aligned(2)));
16640 typedef int32_t target_int __attribute__((aligned(4)));
16641 typedef uint32_t target_uint __attribute__((aligned(4)));
16642 typedef int64_t target_llong __attribute__((aligned(8)));
16643 typedef uint64_t target_ullong __attribute__((aligned(8)));
16646 typedef int32_t target_long __attribute__((aligned(4)));
16647 typedef uint32_t target_ulong __attribute__((aligned(4)));
16648 # 89 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h"
16649 typedef struct CPUTLBEntry {
16656 target_ulong addr_read;
16657 target_ulong addr_write;
16658 target_ulong addr_code;
16663 uint8_t dummy[(1 << 4) -
16664 (sizeof(target_ulong) * 3 +
16665 ((-sizeof(target_ulong) * 3) & (sizeof(uintptr_t) - 1)) +
16666 sizeof(uintptr_t))];
16669 extern int CPUTLBEntry_wrong_size[sizeof(CPUTLBEntry) == (1 << 4) ? 1 : -1];
16670 # 131 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-defs.h"
16671 typedef struct icount_decr_u16 {
16679 struct qemu_work_item;
16681 typedef struct CPUBreakpoint {
16684 struct { struct CPUBreakpoint *tqe_next; struct CPUBreakpoint * *tqe_prev; } entry;
16687 typedef struct CPUWatchpoint {
16688 target_ulong vaddr;
16689 target_ulong len_mask;
16691 struct { struct CPUWatchpoint *tqe_next; struct CPUWatchpoint * *tqe_prev; } entry;
16693 # 48 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
16695 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h" 1
16696 # 46 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
16697 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config-host.h" 1
16698 # 47 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h" 2
16699 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/osdep.h" 1
16700 # 48 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h" 2
16701 # 57 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
16702 typedef uint8_t flag;
16703 typedef uint8_t uint8;
16704 typedef int8_t int8;
16705 typedef unsigned int uint32;
16706 typedef signed int int32;
16707 typedef uint64_t uint64;
16708 typedef int64_t int64;
16709 # 75 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
16711 float_relation_less = -1,
16712 float_relation_equal = 0,
16713 float_relation_greater = 1,
16714 float_relation_unordered = 2
16716 # 111 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
16717 typedef uint16_t float16;
16718 typedef uint32_t float32;
16719 typedef uint64_t float64;
16720 # 124 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
16731 uint64_t low, high;
16741 float_tininess_after_rounding = 0,
16742 float_tininess_before_rounding = 1
16749 float_round_nearest_even = 0,
16750 float_round_down = 1,
16751 float_round_up = 2,
16752 float_round_to_zero = 3
16759 float_flag_invalid = 1,
16760 float_flag_divbyzero = 4,
16761 float_flag_overflow = 8,
16762 float_flag_underflow = 16,
16763 float_flag_inexact = 32,
16764 float_flag_input_denormal = 64,
16765 float_flag_output_denormal = 128
16768 typedef struct float_status {
16769 signed char float_detect_tininess;
16770 signed char float_rounding_mode;
16771 signed char float_exception_flags;
16772 signed char floatx80_rounding_precision;
16774 flag flush_to_zero;
16776 flag flush_inputs_to_zero;
16777 flag default_nan_mode;
16780 void set_float_rounding_mode(int val , float_status *status);
16781 void set_float_exception_flags(int val , float_status *status);
16782 static __attribute__ (( always_inline )) __inline__ void set_float_detect_tininess(int val , float_status *status)
16784 status->float_detect_tininess = val;
16786 static __attribute__ (( always_inline )) __inline__ void set_flush_to_zero(flag val , float_status *status)
16788 status->flush_to_zero = val;
16790 static __attribute__ (( always_inline )) __inline__ void set_flush_inputs_to_zero(flag val , float_status *status)
16792 status->flush_inputs_to_zero = val;
16794 static __attribute__ (( always_inline )) __inline__ void set_default_nan_mode(flag val , float_status *status)
16796 status->default_nan_mode = val;
16798 static __attribute__ (( always_inline )) __inline__ int get_float_exception_flags(float_status *status)
16800 return status->float_exception_flags;
16802 void set_floatx80_rounding_precision(int val , float_status *status);
16808 void float_raise( int8 flags , float_status *status);
16817 float_muladd_negate_c = 1,
16818 float_muladd_negate_product = 2,
16819 float_muladd_negate_result = 3,
16825 float32 int32_to_float32( int32 , float_status *status );
16826 float64 int32_to_float64( int32 , float_status *status );
16827 float32 uint32_to_float32( uint32 , float_status *status );
16828 float64 uint32_to_float64( uint32 , float_status *status );
16829 floatx80 int32_to_floatx80( int32 , float_status *status );
16830 float128 int32_to_float128( int32 , float_status *status );
16831 float32 int64_to_float32( int64 , float_status *status );
16832 float32 uint64_to_float32( uint64 , float_status *status );
16833 float64 int64_to_float64( int64 , float_status *status );
16834 float64 uint64_to_float64( uint64 , float_status *status );
16835 floatx80 int64_to_floatx80( int64 , float_status *status );
16836 float128 int64_to_float128( int64 , float_status *status );
16841 float16 float32_to_float16( float32, flag , float_status *status );
16842 float32 float16_to_float32( float16, flag , float_status *status );
16847 int float16_is_quiet_nan( float16 );
16848 int float16_is_signaling_nan( float16 );
16849 float16 float16_maybe_silence_nan( float16 );
16854 extern const float16 float16_default_nan;
16859 int_fast16_t float32_to_int16_round_to_zero(float32 , float_status *status);
16860 uint_fast16_t float32_to_uint16_round_to_zero(float32 , float_status *status);
16861 int32 float32_to_int32( float32 , float_status *status );
16862 int32 float32_to_int32_round_to_zero( float32 , float_status *status );
16863 uint32 float32_to_uint32( float32 , float_status *status );
16864 uint32 float32_to_uint32_round_to_zero( float32 , float_status *status );
16865 int64 float32_to_int64( float32 , float_status *status );
16866 int64 float32_to_int64_round_to_zero( float32 , float_status *status );
16867 float64 float32_to_float64( float32 , float_status *status );
16868 floatx80 float32_to_floatx80( float32 , float_status *status );
16869 float128 float32_to_float128( float32 , float_status *status );
16874 float32 float32_round_to_int( float32 , float_status *status );
16875 float32 float32_add( float32, float32 , float_status *status );
16876 float32 float32_sub( float32, float32 , float_status *status );
16877 float32 float32_mul( float32, float32 , float_status *status );
16878 float32 float32_div( float32, float32 , float_status *status );
16879 float32 float32_rem( float32, float32 , float_status *status );
16880 float32 float32_muladd(float32, float32, float32, int , float_status *status);
16881 float32 float32_sqrt( float32 , float_status *status );
16882 float32 float32_exp2( float32 , float_status *status );
16883 float32 float32_log2( float32 , float_status *status );
16884 int float32_eq( float32, float32 , float_status *status );
16885 int float32_le( float32, float32 , float_status *status );
16886 int float32_lt( float32, float32 , float_status *status );
16887 int float32_unordered( float32, float32 , float_status *status );
16888 int float32_eq_quiet( float32, float32 , float_status *status );
16889 int float32_le_quiet( float32, float32 , float_status *status );
16890 int float32_lt_quiet( float32, float32 , float_status *status );
16891 int float32_unordered_quiet( float32, float32 , float_status *status );
16892 int float32_compare( float32, float32 , float_status *status );
16893 int float32_compare_quiet( float32, float32 , float_status *status );
16894 float32 float32_min(float32, float32 , float_status *status);
16895 float32 float32_max(float32, float32 , float_status *status);
16896 int float32_is_quiet_nan( float32 );
16897 int float32_is_signaling_nan( float32 );
16898 float32 float32_maybe_silence_nan( float32 );
16899 float32 float32_scalbn( float32, int , float_status *status );
16901 static __attribute__ (( always_inline )) __inline__ float32 float32_abs(float32 a)
16906 return ((a) & 0x7fffffff);
16909 static __attribute__ (( always_inline )) __inline__ float32 float32_chs(float32 a)
16914 return ((a) ^ 0x80000000);
16917 static __attribute__ (( always_inline )) __inline__ int float32_is_infinity(float32 a)
16919 return ((a) & 0x7fffffff) == 0x7f800000;
16922 static __attribute__ (( always_inline )) __inline__ int float32_is_neg(float32 a)
16927 static __attribute__ (( always_inline )) __inline__ int float32_is_zero(float32 a)
16929 return ((a) & 0x7fffffff) == 0;
16932 static __attribute__ (( always_inline )) __inline__ int float32_is_any_nan(float32 a)
16934 return (((a) & ~(1 << 31)) > 0x7f800000UL);
16937 static __attribute__ (( always_inline )) __inline__ int float32_is_zero_or_denormal(float32 a)
16939 return ((a) & 0x7f800000) == 0;
16942 static __attribute__ (( always_inline )) __inline__ float32 float32_set_sign(float32 a, int sign)
16944 return (((a) & 0x7fffffff) | (sign << 31));
16946 # 361 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
16947 extern const float32 float32_default_nan;
16952 int_fast16_t float64_to_int16_round_to_zero(float64 , float_status *status);
16953 uint_fast16_t float64_to_uint16_round_to_zero(float64 , float_status *status);
16954 int32 float64_to_int32( float64 , float_status *status );
16955 int32 float64_to_int32_round_to_zero( float64 , float_status *status );
16956 uint32 float64_to_uint32( float64 , float_status *status );
16957 uint32 float64_to_uint32_round_to_zero( float64 , float_status *status );
16958 int64 float64_to_int64( float64 , float_status *status );
16959 int64 float64_to_int64_round_to_zero( float64 , float_status *status );
16960 uint64 float64_to_uint64 (float64 a , float_status *status);
16961 uint64 float64_to_uint64_round_to_zero (float64 a , float_status *status);
16962 float32 float64_to_float32( float64 , float_status *status );
16963 floatx80 float64_to_floatx80( float64 , float_status *status );
16964 float128 float64_to_float128( float64 , float_status *status );
16969 float64 float64_round_to_int( float64 , float_status *status );
16970 float64 float64_trunc_to_int( float64 , float_status *status );
16971 float64 float64_add( float64, float64 , float_status *status );
16972 float64 float64_sub( float64, float64 , float_status *status );
16973 float64 float64_mul( float64, float64 , float_status *status );
16974 float64 float64_div( float64, float64 , float_status *status );
16975 float64 float64_rem( float64, float64 , float_status *status );
16976 float64 float64_muladd(float64, float64, float64, int , float_status *status);
16977 float64 float64_sqrt( float64 , float_status *status );
16978 float64 float64_log2( float64 , float_status *status );
16979 int float64_eq( float64, float64 , float_status *status );
16980 int float64_le( float64, float64 , float_status *status );
16981 int float64_lt( float64, float64 , float_status *status );
16982 int float64_unordered( float64, float64 , float_status *status );
16983 int float64_eq_quiet( float64, float64 , float_status *status );
16984 int float64_le_quiet( float64, float64 , float_status *status );
16985 int float64_lt_quiet( float64, float64 , float_status *status );
16986 int float64_unordered_quiet( float64, float64 , float_status *status );
16987 int float64_compare( float64, float64 , float_status *status );
16988 int float64_compare_quiet( float64, float64 , float_status *status );
16989 float64 float64_min(float64, float64 , float_status *status);
16990 float64 float64_max(float64, float64 , float_status *status);
16991 int float64_is_quiet_nan( float64 a );
16992 int float64_is_signaling_nan( float64 );
16993 float64 float64_maybe_silence_nan( float64 );
16994 float64 float64_scalbn( float64, int , float_status *status );
16996 static __attribute__ (( always_inline )) __inline__ float64 float64_abs(float64 a)
17001 return ((a) & 0x7fffffffffffffffLL);
17004 static __attribute__ (( always_inline )) __inline__ float64 float64_chs(float64 a)
17009 return ((a) ^ 0x8000000000000000LL);
17012 static __attribute__ (( always_inline )) __inline__ int float64_is_infinity(float64 a)
17014 return ((a) & 0x7fffffffffffffffLL ) == 0x7ff0000000000000LL;
17017 static __attribute__ (( always_inline )) __inline__ int float64_is_neg(float64 a)
17022 static __attribute__ (( always_inline )) __inline__ int float64_is_zero(float64 a)
17024 return ((a) & 0x7fffffffffffffffLL) == 0;
17027 static __attribute__ (( always_inline )) __inline__ int float64_is_any_nan(float64 a)
17029 return (((a) & ~(1ULL << 63)) > 0x7ff0000000000000ULL);
17032 static __attribute__ (( always_inline )) __inline__ int float64_is_zero_or_denormal(float64 a)
17034 return ((a) & 0x7ff0000000000000LL) == 0;
17037 static __attribute__ (( always_inline )) __inline__ float64 float64_set_sign(float64 a, int sign)
17039 return (((a) & 0x7fffffffffffffffULL) | ((int64_t)sign << 63))
17042 # 467 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
17043 extern const float64 float64_default_nan;
17048 int32 floatx80_to_int32( floatx80 , float_status *status );
17049 int32 floatx80_to_int32_round_to_zero( floatx80 , float_status *status );
17050 int64 floatx80_to_int64( floatx80 , float_status *status );
17051 int64 floatx80_to_int64_round_to_zero( floatx80 , float_status *status );
17052 float32 floatx80_to_float32( floatx80 , float_status *status );
17053 float64 floatx80_to_float64( floatx80 , float_status *status );
17054 float128 floatx80_to_float128( floatx80 , float_status *status );
17059 floatx80 floatx80_round_to_int( floatx80 , float_status *status );
17060 floatx80 floatx80_add( floatx80, floatx80 , float_status *status );
17061 floatx80 floatx80_sub( floatx80, floatx80 , float_status *status );
17062 floatx80 floatx80_mul( floatx80, floatx80 , float_status *status );
17063 floatx80 floatx80_div( floatx80, floatx80 , float_status *status );
17064 floatx80 floatx80_rem( floatx80, floatx80 , float_status *status );
17065 floatx80 floatx80_sqrt( floatx80 , float_status *status );
17066 int floatx80_eq( floatx80, floatx80 , float_status *status );
17067 int floatx80_le( floatx80, floatx80 , float_status *status );
17068 int floatx80_lt( floatx80, floatx80 , float_status *status );
17069 int floatx80_unordered( floatx80, floatx80 , float_status *status );
17070 int floatx80_eq_quiet( floatx80, floatx80 , float_status *status );
17071 int floatx80_le_quiet( floatx80, floatx80 , float_status *status );
17072 int floatx80_lt_quiet( floatx80, floatx80 , float_status *status );
17073 int floatx80_unordered_quiet( floatx80, floatx80 , float_status *status );
17074 int floatx80_compare( floatx80, floatx80 , float_status *status );
17075 int floatx80_compare_quiet( floatx80, floatx80 , float_status *status );
17076 int floatx80_is_quiet_nan( floatx80 );
17077 int floatx80_is_signaling_nan( floatx80 );
17078 floatx80 floatx80_maybe_silence_nan( floatx80 );
17079 floatx80 floatx80_scalbn( floatx80, int , float_status *status );
17081 static __attribute__ (( always_inline )) __inline__ floatx80 floatx80_abs(floatx80 a)
17087 static __attribute__ (( always_inline )) __inline__ floatx80 floatx80_chs(floatx80 a)
17093 static __attribute__ (( always_inline )) __inline__ int floatx80_is_infinity(floatx80 a)
17095 return (a.high & 0x7fff) == 0x7fff && a.low == 0x8000000000000000LL;
17098 static __attribute__ (( always_inline )) __inline__ int floatx80_is_neg(floatx80 a)
17100 return a.high >> 15;
17103 static __attribute__ (( always_inline )) __inline__ int floatx80_is_zero(floatx80 a)
17105 return (a.high & 0x7fff) == 0 && a.low == 0;
17108 static __attribute__ (( always_inline )) __inline__ int floatx80_is_zero_or_denormal(floatx80 a)
17110 return (a.high & 0x7fff) == 0;
17113 static __attribute__ (( always_inline )) __inline__ int floatx80_is_any_nan(floatx80 a)
17115 return ((a.high & 0x7fff) == 0x7fff) && (a.low<<1);
17117 # 552 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/fpu/softfloat.h"
17118 extern const floatx80 floatx80_default_nan;
17123 int32 float128_to_int32( float128 , float_status *status );
17124 int32 float128_to_int32_round_to_zero( float128 , float_status *status );
17125 int64 float128_to_int64( float128 , float_status *status );
17126 int64 float128_to_int64_round_to_zero( float128 , float_status *status );
17127 float32 float128_to_float32( float128 , float_status *status );
17128 float64 float128_to_float64( float128 , float_status *status );
17129 floatx80 float128_to_floatx80( float128 , float_status *status );
17134 float128 float128_round_to_int( float128 , float_status *status );
17135 float128 float128_add( float128, float128 , float_status *status );
17136 float128 float128_sub( float128, float128 , float_status *status );
17137 float128 float128_mul( float128, float128 , float_status *status );
17138 float128 float128_div( float128, float128 , float_status *status );
17139 float128 float128_rem( float128, float128 , float_status *status );
17140 float128 float128_sqrt( float128 , float_status *status );
17141 int float128_eq( float128, float128 , float_status *status );
17142 int float128_le( float128, float128 , float_status *status );
17143 int float128_lt( float128, float128 , float_status *status );
17144 int float128_unordered( float128, float128 , float_status *status );
17145 int float128_eq_quiet( float128, float128 , float_status *status );
17146 int float128_le_quiet( float128, float128 , float_status *status );
17147 int float128_lt_quiet( float128, float128 , float_status *status );
17148 int float128_unordered_quiet( float128, float128 , float_status *status );
17149 int float128_compare( float128, float128 , float_status *status );
17150 int float128_compare_quiet( float128, float128 , float_status *status );
17151 int float128_is_quiet_nan( float128 );
17152 int float128_is_signaling_nan( float128 );
17153 float128 float128_maybe_silence_nan( float128 );
17154 float128 float128_scalbn( float128, int , float_status *status );
17156 static __attribute__ (( always_inline )) __inline__ float128 float128_abs(float128 a)
17158 a.high &= 0x7fffffffffffffffLL;
17162 static __attribute__ (( always_inline )) __inline__ float128 float128_chs(float128 a)
17164 a.high ^= 0x8000000000000000LL;
17168 static __attribute__ (( always_inline )) __inline__ int float128_is_infinity(float128 a)
17170 return (a.high & 0x7fffffffffffffffLL) == 0x7fff000000000000LL && a.low == 0;
17173 static __attribute__ (( always_inline )) __inline__ int float128_is_neg(float128 a)
17175 return a.high >> 63;
17178 static __attribute__ (( always_inline )) __inline__ int float128_is_zero(float128 a)
17180 return (a.high & 0x7fffffffffffffffLL) == 0 && a.low == 0;
17183 static __attribute__ (( always_inline )) __inline__ int float128_is_zero_or_denormal(float128 a)
17185 return (a.high & 0x7fff000000000000LL) == 0;
17188 static __attribute__ (( always_inline )) __inline__ int float128_is_any_nan(float128 a)
17190 return ((a.high >> 48) & 0x7fff) == 0x7fff &&
17191 ((a.low != 0) || ((a.high & 0xffffffffffffLL) != 0));
17197 extern const float128 float128_default_nan;
17198 # 50 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
17199 # 489 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
17257 typedef struct SegmentCache {
17280 # 597 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
17282 floatx80 d __attribute__((aligned(16)));
17290 # 618 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
17291 typedef enum TPRAccess {
17296 typedef struct CPUX86State {
17298 target_ulong regs[8];
17300 target_ulong eflags;
17305 target_ulong cc_src;
17306 target_ulong cc_dst;
17314 SegmentCache segs[6];
17320 target_ulong cr[5];
17324 unsigned int fpstt;
17335 float_status fp_status;
17338 float_status mmx_status;
17339 float_status sse_status;
17341 XMMReg xmm_regs[8];
17344 target_ulong cc_tmp;
17347 uint32_t sysenter_cs;
17348 target_ulong sysenter_esp;
17349 target_ulong sysenter_eip;
17355 uint64_t tsc_offset;
17356 uint64_t intercept;
17357 uint16_t intercept_cr_read;
17358 uint16_t intercept_cr_write;
17359 uint16_t intercept_dr_read;
17360 uint16_t intercept_dr_write;
17361 uint32_t intercept_exceptions;
17370 uint64_t system_time_msr;
17371 uint64_t wall_clock_msr;
17372 uint64_t async_pf_en_msr;
17375 uint64_t tsc_deadline;
17377 uint64_t mcg_status;
17378 uint64_t msr_ia32_misc_enable;
17382 int exception_is_int;
17383 target_ulong exception_next_eip;
17384 target_ulong dr[8];
17386 CPUBreakpoint *cpu_breakpoint[4];
17387 CPUWatchpoint *cpu_watchpoint[4];
17393 uint8_t nmi_injected;
17394 uint8_t nmi_pending;
17396 struct TranslationBlock *current_tb; uintptr_t mem_io_pc; target_ulong mem_io_vaddr; uint32_t halted; uint32_t interrupt_request; volatile sig_atomic_t exit_request; CPUTLBEntry tlb_table[2][(1 << 8)]; target_phys_addr_t iotlb[2][(1 << 8)]; target_ulong tlb_flush_addr; target_ulong tlb_flush_mask; struct TranslationBlock *tb_jmp_cache[(1 << 12)]; long temp_buf[128]; int64_t icount_extra; union { uint32_t u32; icount_decr_u16 u16; } icount_decr; uint32_t can_do_io; struct breakpoints_head { struct CPUBreakpoint *tqh_first; struct CPUBreakpoint * *tqh_last; } breakpoints; int singlestep_enabled; struct watchpoints_head { struct CPUWatchpoint *tqh_first; struct CPUWatchpoint * *tqh_last; } watchpoints; CPUWatchpoint *watchpoint_hit; struct GDBRegisterState *gdb_regs; jmp_buf jmp_env; int exception_index; struct CPUX86State *next_cpu; int cpu_index; uint32_t host_tid; int numa_node; int nr_cores; int nr_threads; int running; int thread_id; void *opaque; uint32_t created; uint32_t stop; uint32_t stopped; struct QemuThread *thread; struct QemuCond *halt_cond; int thread_kicked; struct qemu_work_item *queued_work_first, *queued_work_last; const char *cpu_model_str; struct KVMState *kvm_state; struct kvm_run *kvm_run; int kvm_fd; int kvm_vcpu_dirty;
17401 uint32_t cpuid_level;
17402 uint32_t cpuid_vendor1;
17403 uint32_t cpuid_vendor2;
17404 uint32_t cpuid_vendor3;
17405 uint32_t cpuid_version;
17406 uint32_t cpuid_features;
17407 uint32_t cpuid_ext_features;
17408 uint32_t cpuid_xlevel;
17409 uint32_t cpuid_model[12];
17410 uint32_t cpuid_ext2_features;
17411 uint32_t cpuid_ext3_features;
17412 uint32_t cpuid_apic_id;
17413 int cpuid_vendor_override;
17415 uint32_t cpuid_xlevel2;
17416 uint32_t cpuid_ext4_features;
17418 uint32_t cpuid_7_0_ebx;
17421 uint64_t mtrr_fixed[11];
17422 uint64_t mtrr_deftype;
17423 MTRRVar mtrr_var[8];
17427 int32_t exception_injected;
17428 int32_t interrupt_injected;
17429 uint8_t soft_interrupt;
17430 uint8_t has_error_code;
17431 uint32_t sipi_vector;
17432 uint32_t cpuid_kvm_features;
17433 uint32_t cpuid_svm_features;
17436 void *kvm_xsave_buf;
17440 struct DeviceState *apic_state;
17444 uint64_t mce_banks[10*4];
17449 uint16_t fpus_vmstate;
17450 uint16_t fptag_vmstate;
17451 uint16_t fpregs_format_vmstate;
17453 uint64_t xstate_bv;
17454 XMMReg ymmh_regs[8];
17458 TPRAccess tpr_access_type;
17461 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu-qom.h" 1
17462 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu-qom.h"
17463 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/cpu.h" 1
17464 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/cpu.h"
17465 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h" 1
17466 # 20 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17467 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-queue.h" 1
17468 # 21 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h" 2
17474 typedef struct TypeImpl *Type;
17476 typedef struct ObjectClass ObjectClass;
17477 typedef struct Object Object;
17479 typedef struct TypeInfo TypeInfo;
17481 typedef struct InterfaceClass InterfaceClass;
17482 typedef struct InterfaceInfo InterfaceInfo;
17483 # 202 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17484 typedef void (ObjectPropertyAccessor)(Object *obj,
17488 struct Error **errp);
17489 # 216 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17490 typedef void (ObjectPropertyRelease)(Object *obj,
17494 typedef struct ObjectProperty
17498 ObjectPropertyAccessor *get;
17499 ObjectPropertyAccessor *set;
17500 ObjectPropertyRelease *release;
17503 struct { struct ObjectProperty *tqe_next; struct ObjectProperty * *tqe_prev; } node;
17517 # 259 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17521 ObjectClass *class;
17522 GSList *interfaces;
17523 struct { struct ObjectProperty *tqh_first; struct ObjectProperty * *tqh_last; } properties;
17527 # 302 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17531 const char *parent;
17533 size_t instance_size;
17534 void (*instance_init)(Object *obj);
17535 void (*instance_finalize)(Object *obj);
17540 void (*class_init)(ObjectClass *klass, void *data);
17541 void (*class_finalize)(ObjectClass *klass, void *data);
17544 InterfaceInfo *interfaces;
17546 # 390 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17547 struct InterfaceClass
17549 ObjectClass parent_class;
17551 # 405 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17552 struct InterfaceInfo
17556 void (*interface_initfn)(ObjectClass *class, void *data);
17558 # 424 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17559 Object *object_new(const char *typename);
17560 # 436 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17561 Object *object_new_with_type(Type type);
17562 # 445 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17563 void object_delete(Object *obj);
17564 # 455 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17565 void object_initialize_with_type(void *data, Type type);
17566 # 465 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17567 void object_initialize(void *obj, const char *typename);
17568 # 474 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17569 void object_finalize(void *obj);
17570 # 486 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17571 Object *object_dynamic_cast(Object *obj, const char *typename);
17572 # 495 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17573 Object *object_dynamic_cast_assert(Object *obj, const char *typename);
17581 ObjectClass *object_get_class(Object *obj);
17589 const char *object_get_typename(Object *obj);
17590 # 522 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17591 Type type_register_static(const TypeInfo *info);
17592 # 535 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17593 Type type_register(const TypeInfo *info);
17594 # 544 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17595 ObjectClass *object_class_dynamic_cast_assert(ObjectClass *klass,
17596 const char *typename);
17598 ObjectClass *object_class_dynamic_cast(ObjectClass *klass,
17599 const char *typename);
17607 const char *object_class_get_name(ObjectClass *klass);
17615 ObjectClass *object_class_by_name(const char *typename);
17617 void object_class_foreach(void (*fn)(ObjectClass *klass, void *opaque),
17618 const char *implements_type, _Bool include_abstract,
17620 # 577 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17621 GSList *object_class_get_list(const char *implements_type,
17622 _Bool include_abstract);
17623 # 587 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17624 void object_ref(Object *obj);
17625 # 596 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17626 void object_unref(Object *obj);
17627 # 618 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17628 void object_property_add(Object *obj, const char *name, const char *type,
17629 ObjectPropertyAccessor *get,
17630 ObjectPropertyAccessor *set,
17631 ObjectPropertyRelease *release,
17632 void *opaque, struct Error **errp);
17634 void object_property_del(Object *obj, const char *name, struct Error **errp);
17636 void object_unparent(Object *obj);
17637 # 638 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17638 void object_property_get(Object *obj, struct Visitor *v, const char *name,
17639 struct Error **errp);
17640 # 649 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17641 void object_property_set_str(Object *obj, const char *value,
17642 const char *name, struct Error **errp);
17643 # 662 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17644 char *object_property_get_str(Object *obj, const char *name,
17645 struct Error **errp);
17646 # 673 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17647 void object_property_set_link(Object *obj, Object *value,
17648 const char *name, struct Error **errp);
17649 # 686 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17650 Object *object_property_get_link(Object *obj, const char *name,
17651 struct Error **errp);
17652 # 697 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17653 void object_property_set_bool(Object *obj, _Bool value,
17654 const char *name, struct Error **errp);
17655 # 709 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17656 _Bool object_property_get_bool(Object *obj, const char *name,
17657 struct Error **errp);
17658 # 720 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17659 void object_property_set_int(Object *obj, int64_t value,
17660 const char *name, struct Error **errp);
17661 # 732 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17662 int64_t object_property_get_int(Object *obj, const char *name,
17663 struct Error **errp);
17664 # 746 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17665 void object_property_set(Object *obj, struct Visitor *v, const char *name,
17666 struct Error **errp);
17667 # 758 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17668 void object_property_parse(Object *obj, const char *string,
17669 const char *name, struct Error **errp);
17670 # 770 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17671 char *object_property_print(Object *obj, const char *name,
17672 struct Error **errp);
17673 # 781 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17674 const char *object_property_get_type(Object *obj, const char *name,
17675 struct Error **errp);
17682 Object *object_get_root(void);
17690 gchar *object_get_canonical_path(Object *obj);
17691 # 822 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17692 Object *object_resolve_path(const char *path, _Bool *ambiguous);
17693 # 842 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17694 Object *object_resolve_path_type(const char *path, const char *typename,
17696 # 855 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17697 Object *object_resolve_path_component(Object *parent, gchar *part);
17698 # 874 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17699 void object_property_add_child(Object *obj, const char *name,
17700 Object *child, struct Error **errp);
17701 # 891 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17702 void object_property_add_link(Object *obj, const char *name,
17703 const char *type, Object **child,
17704 struct Error **errp);
17705 # 907 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17706 void object_property_add_str(Object *obj, const char *name,
17707 char *(*get)(Object *, struct Error **),
17708 void (*set)(Object *, const char *, struct Error **),
17709 struct Error **errp);
17710 # 922 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/object.h"
17711 Object *container_get(Object *root, const char *path);
17712 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/cpu.h" 2
17713 # 38 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/include/qemu/cpu.h"
17714 typedef struct CPUState CPUState;
17722 typedef struct CPUClass {
17724 ObjectClass parent_class;
17727 void (*reset)(CPUState *cpu);
17748 void cpu_reset(CPUState *cpu);
17749 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu-qom.h" 2
17750 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 1
17751 # 25 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu-qom.h" 2
17752 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/error.h" 1
17753 # 22 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/error.h"
17754 typedef struct Error Error;
17761 void error_set(Error **err, const char *fmt, ...) __attribute__((format(gnu_printf, 2, 3)));
17767 _Bool error_is_set(Error **err);
17772 Error *error_copy(const Error *err);
17777 const char *error_get_pretty(Error *err);
17782 const char *error_get_field(Error *err, const char *field);
17787 void error_set_field(Error *err, const char *field, const char *value);
17794 void error_propagate(Error **dst_err, Error *local_err);
17799 void error_free(Error *err);
17805 _Bool error_is_type(Error *err, const char *fmt);
17806 # 26 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu-qom.h" 2
17807 # 46 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu-qom.h"
17808 typedef struct X86CPUClass {
17810 CPUClass parent_class;
17813 void (*parent_reset)(CPUState *cpu);
17822 typedef struct X86CPU {
17824 CPUState parent_obj;
17830 static __attribute__ (( always_inline )) __inline__ X86CPU *x86_env_get_cpu(CPUX86State *env)
17832 return ((X86CPU *)object_dynamic_cast_assert(((Object *)((({ const typeof(((X86CPU *) 0)->env) *__mptr = (env); (X86CPU *) ((char *) __mptr - __builtin_offsetof (X86CPU, env));})))), ("i386-cpu")));
17838 void x86_cpu_realize(Object *obj, Error **errp);
17839 # 789 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
17841 CPUX86State *cpu_x86_init(const char *cpu_model);
17842 int cpu_x86_exec(CPUX86State *s);
17843 void x86_cpu_list (FILE *f, fprintf_function cpu_fprintf, const char *optarg);
17844 void x86_cpudef_setup(void);
17845 int cpu_x86_support_mca_broadcast(CPUX86State *env);
17847 int cpu_get_pic_interrupt(CPUX86State *s);
17849 void cpu_set_ferr(CPUX86State *s);
17853 static __attribute__ (( always_inline )) __inline__ void cpu_x86_load_seg_cache(CPUX86State *env,
17854 int seg_reg, unsigned int selector,
17856 unsigned int limit,
17857 unsigned int flags)
17860 unsigned int new_hflags;
17862 sc = &env->segs[seg_reg];
17863 sc->selector = selector;
17870 if (seg_reg == 1) {
17880 new_hflags = (env->segs[1].flags & (1 << 22))
17882 env->hflags = (env->hflags & ~((1 << 4) | (1 << 15))) |
17886 new_hflags = (env->segs[2].flags & (1 << 22))
17888 if (env->hflags & (1 << 15)) {
17890 } else if (!(env->cr[0] & (1 << 0)) ||
17891 (env->eflags & 0x00020000) ||
17892 !(env->hflags & (1 << 4))) {
17898 new_hflags |= (1 << 6);
17900 new_hflags |= ((env->segs[3].base |
17901 env->segs[0].base |
17902 env->segs[2].base) != 0) <<
17905 env->hflags = (env->hflags &
17906 ~((1 << 5) | (1 << 6))) | new_hflags;
17910 static __attribute__ (( always_inline )) __inline__ void cpu_x86_load_seg_cache_sipi(CPUX86State *env,
17914 cpu_x86_load_seg_cache(env, 1, sipi_vector << 8,
17916 env->segs[1].limit,
17917 env->segs[1].flags);
17921 int cpu_x86_get_descr_debug(CPUX86State *env, unsigned int selector,
17922 target_ulong *base, unsigned int *limit,
17923 unsigned int *flags);
17926 static __attribute__ (( always_inline )) __inline__ void cpu_x86_set_cpl(CPUX86State *s, int cpl)
17929 s->hflags = (s->hflags & ~(3 << 0)) | cpl;
17937 void cpu_get_fp80(uint64_t *pmant, uint16_t *pexp, floatx80 f);
17938 floatx80 cpu_set_fp80(uint64_t mant, uint16_t upper);
17943 void cpu_x86_load_seg(CPUX86State *s, int seg_reg, int selector);
17944 void cpu_x86_fsave(CPUX86State *s, target_ulong ptr, int data32);
17945 void cpu_x86_frstor(CPUX86State *s, target_ulong ptr, int data32);
17950 int cpu_x86_signal_handler(int host_signum, void *pinfo,
17954 void cpu_x86_cpuid(CPUX86State *env, uint32_t index, uint32_t count,
17955 uint32_t *eax, uint32_t *ebx,
17956 uint32_t *ecx, uint32_t *edx);
17957 int cpu_x86_register(X86CPU *cpu, const char *cpu_model);
17958 void cpu_clear_apic_feature(CPUX86State *env);
17959 void host_cpuid(uint32_t function, uint32_t count,
17960 uint32_t *eax, uint32_t *ebx, uint32_t *ecx, uint32_t *edx);
17963 int cpu_x86_handle_mmu_fault(CPUX86State *env, target_ulong addr,
17964 int is_write, int mmu_idx);
17966 void cpu_x86_set_a20(CPUX86State *env, int a20_state);
17968 static __attribute__ (( always_inline )) __inline__ int hw_breakpoint_enabled(unsigned long dr7, int index)
17970 return (dr7 >> (index * 2)) & 3;
17973 static __attribute__ (( always_inline )) __inline__ int hw_breakpoint_type(unsigned long dr7, int index)
17975 return (dr7 >> (16 + (index * 4))) & 3;
17978 static __attribute__ (( always_inline )) __inline__ int hw_breakpoint_len(unsigned long dr7, int index)
17980 int len = ((dr7 >> (18 + (index * 4))) & 3);
17981 return (len == 2) ? 8 : len + 1;
17984 void hw_breakpoint_insert(CPUX86State *env, int index);
17985 void hw_breakpoint_remove(CPUX86State *env, int index);
17986 int check_hw_breakpoints(CPUX86State *env, int force_dr6_update);
17989 void cpu_x86_update_cr0(CPUX86State *env, uint32_t new_cr0);
17990 void cpu_x86_update_cr3(CPUX86State *env, target_ulong new_cr3);
17991 void cpu_x86_update_cr4(CPUX86State *env, uint32_t new_cr4);
17994 void cpu_smm_update(CPUX86State *env);
17995 uint64_t cpu_get_tsc(CPUX86State *env);
17996 struct CPUX86State *pc_new_cpu(const char *cpu_model);
17997 # 977 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
17998 static __attribute__ (( always_inline )) __inline__ int cpu_mmu_index (CPUX86State *env)
18000 return (env->hflags & (3 << 0)) == 3 ? 1 : 0;
18002 # 1013 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
18003 void optimize_flags_init(void);
18004 # 1024 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h"
18005 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h" 1
18006 # 22 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18007 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-common.h" 1
18008 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h" 2
18009 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-tls.h" 1
18010 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h" 2
18011 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-common.h" 1
18012 # 14 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-common.h"
18013 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h" 1
18017 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/config-host.h" 1
18018 # 5 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h" 2
18019 # 16 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18020 # 1 "/usr/include/byteswap.h" 1 3 4
18021 # 23 "/usr/include/byteswap.h" 3 4
18022 # 1 "/usr/include/bits/byteswap.h" 1 3 4
18023 # 24 "/usr/include/byteswap.h" 2 3 4
18024 # 17 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h" 2
18025 # 53 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18026 static __attribute__ (( always_inline )) __inline__ uint16_t bswap16(uint16_t x)
18028 return (__extension__ ({ register unsigned short int __v, __x = (unsigned short int) (x); if (__builtin_constant_p (__x)) __v = ((unsigned short int) ((((__x) >> 8) & 0xff) | (((__x) & 0xff) << 8))); else __asm__ ("rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); __v; }));
18031 static __attribute__ (( always_inline )) __inline__ uint32_t bswap32(uint32_t x)
18033 return (__extension__ ({ register unsigned int __v, __x = (x); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("rorw $8, %w0;" "rorl $16, %0;" "rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); __v; }));
18036 static __attribute__ (( always_inline )) __inline__ uint64_t bswap64(uint64_t x)
18038 return (__extension__ ({ union { __extension__ unsigned long long int __ll; unsigned long int __l[2]; } __w, __r; if (__builtin_constant_p (x)) __r.__ll = (__extension__ ((((x) & 0xff00000000000000ull) >> 56) | (((x) & 0x00ff000000000000ull) >> 40) | (((x) & 0x0000ff0000000000ull) >> 24) | (((x) & 0x000000ff00000000ull) >> 8) | (((x) & 0x00000000ff000000ull) << 8) | (((x) & 0x0000000000ff0000ull) << 24) | (((x) & 0x000000000000ff00ull) << 40) | (((x) & 0x00000000000000ffull) << 56))); else { __w.__ll = (x); __r.__l[0] = (__extension__ ({ register unsigned int __v, __x = (__w.__l[1]); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("rorw $8, %w0;" "rorl $16, %0;" "rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); __v; })); __r.__l[1] = (__extension__ ({ register unsigned int __v, __x = (__w.__l[0]); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("rorw $8, %w0;" "rorl $16, %0;" "rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); __v; })); } __r.__ll; }));
18043 static __attribute__ (( always_inline )) __inline__ void bswap16s(uint16_t *s)
18048 static __attribute__ (( always_inline )) __inline__ void bswap32s(uint32_t *s)
18053 static __attribute__ (( always_inline )) __inline__ void bswap64s(uint64_t *s)
18057 # 128 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18058 static __attribute__ (( always_inline )) __inline__ uint16_t be16_to_cpu(uint16_t v){ return bswap16(v);}static __attribute__ (( always_inline )) __inline__ uint16_t cpu_to_be16(uint16_t v){ return bswap16(v);}static __attribute__ (( always_inline )) __inline__ void be16_to_cpus(uint16_t *p){ *p = bswap16(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_be16s(uint16_t *p){ *p = bswap16(*p);}static __attribute__ (( always_inline )) __inline__ uint16_t be16_to_cpup(const uint16_t *p){ return be16_to_cpu(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_be16w(uint16_t *p, uint16_t v){ *p = cpu_to_be16(v);}
18059 static __attribute__ (( always_inline )) __inline__ uint32_t be32_to_cpu(uint32_t v){ return bswap32(v);}static __attribute__ (( always_inline )) __inline__ uint32_t cpu_to_be32(uint32_t v){ return bswap32(v);}static __attribute__ (( always_inline )) __inline__ void be32_to_cpus(uint32_t *p){ *p = bswap32(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_be32s(uint32_t *p){ *p = bswap32(*p);}static __attribute__ (( always_inline )) __inline__ uint32_t be32_to_cpup(const uint32_t *p){ return be32_to_cpu(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_be32w(uint32_t *p, uint32_t v){ *p = cpu_to_be32(v);}
18060 static __attribute__ (( always_inline )) __inline__ uint64_t be64_to_cpu(uint64_t v){ return bswap64(v);}static __attribute__ (( always_inline )) __inline__ uint64_t cpu_to_be64(uint64_t v){ return bswap64(v);}static __attribute__ (( always_inline )) __inline__ void be64_to_cpus(uint64_t *p){ *p = bswap64(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_be64s(uint64_t *p){ *p = bswap64(*p);}static __attribute__ (( always_inline )) __inline__ uint64_t be64_to_cpup(const uint64_t *p){ return be64_to_cpu(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_be64w(uint64_t *p, uint64_t v){ *p = cpu_to_be64(v);}
18062 static __attribute__ (( always_inline )) __inline__ uint16_t le16_to_cpu(uint16_t v){ return (v);}static __attribute__ (( always_inline )) __inline__ uint16_t cpu_to_le16(uint16_t v){ return (v);}static __attribute__ (( always_inline )) __inline__ void le16_to_cpus(uint16_t *p){ }static __attribute__ (( always_inline )) __inline__ void cpu_to_le16s(uint16_t *p){ }static __attribute__ (( always_inline )) __inline__ uint16_t le16_to_cpup(const uint16_t *p){ return le16_to_cpu(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_le16w(uint16_t *p, uint16_t v){ *p = cpu_to_le16(v);}
18063 static __attribute__ (( always_inline )) __inline__ uint32_t le32_to_cpu(uint32_t v){ return (v);}static __attribute__ (( always_inline )) __inline__ uint32_t cpu_to_le32(uint32_t v){ return (v);}static __attribute__ (( always_inline )) __inline__ void le32_to_cpus(uint32_t *p){ }static __attribute__ (( always_inline )) __inline__ void cpu_to_le32s(uint32_t *p){ }static __attribute__ (( always_inline )) __inline__ uint32_t le32_to_cpup(const uint32_t *p){ return le32_to_cpu(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_le32w(uint32_t *p, uint32_t v){ *p = cpu_to_le32(v);}
18064 static __attribute__ (( always_inline )) __inline__ uint64_t le64_to_cpu(uint64_t v){ return (v);}static __attribute__ (( always_inline )) __inline__ uint64_t cpu_to_le64(uint64_t v){ return (v);}static __attribute__ (( always_inline )) __inline__ void le64_to_cpus(uint64_t *p){ }static __attribute__ (( always_inline )) __inline__ void cpu_to_le64s(uint64_t *p){ }static __attribute__ (( always_inline )) __inline__ uint64_t le64_to_cpup(const uint64_t *p){ return le64_to_cpu(*p);}static __attribute__ (( always_inline )) __inline__ void cpu_to_le64w(uint64_t *p, uint64_t v){ *p = cpu_to_le64(v);}
18065 # 236 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18066 static __attribute__ (( always_inline )) __inline__ uint32_t qemu_bswap_len(uint32_t value, int len)
18068 return bswap32(value) >> (32 - 8 * len);
18102 # 284 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18115 # 328 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18116 static __attribute__ (( always_inline )) __inline__ int ldub_p(const void *ptr)
18118 return *(uint8_t *)ptr;
18121 static __attribute__ (( always_inline )) __inline__ int ldsb_p(const void *ptr)
18123 return *(int8_t *)ptr;
18126 static __attribute__ (( always_inline )) __inline__ void stb_p(void *ptr, int v)
18128 *(uint8_t *)ptr = v;
18130 # 465 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/bswap.h"
18131 static __attribute__ (( always_inline )) __inline__ int lduw_le_p(const void *ptr)
18133 return *(uint16_t *)ptr;
18136 static __attribute__ (( always_inline )) __inline__ int ldsw_le_p(const void *ptr)
18138 return *(int16_t *)ptr;
18141 static __attribute__ (( always_inline )) __inline__ int ldl_le_p(const void *ptr)
18143 return *(uint32_t *)ptr;
18146 static __attribute__ (( always_inline )) __inline__ uint64_t ldq_le_p(const void *ptr)
18148 return *(uint64_t *)ptr;
18151 static __attribute__ (( always_inline )) __inline__ void stw_le_p(void *ptr, int v)
18153 *(uint16_t *)ptr = v;
18156 static __attribute__ (( always_inline )) __inline__ void stl_le_p(void *ptr, int v)
18158 *(uint32_t *)ptr = v;
18161 static __attribute__ (( always_inline )) __inline__ void stq_le_p(void *ptr, uint64_t v)
18163 *(uint64_t *)ptr = v;
18168 static __attribute__ (( always_inline )) __inline__ float32 ldfl_le_p(const void *ptr)
18170 return *(float32 *)ptr;
18173 static __attribute__ (( always_inline )) __inline__ float64 ldfq_le_p(const void *ptr)
18175 return *(float64 *)ptr;
18178 static __attribute__ (( always_inline )) __inline__ void stfl_le_p(void *ptr, float32 v)
18180 *(float32 *)ptr = v;
18183 static __attribute__ (( always_inline )) __inline__ void stfq_le_p(void *ptr, float64 v)
18185 *(float64 *)ptr = v;
18191 static __attribute__ (( always_inline )) __inline__ int lduw_be_p(const void *ptr)
18195 asm volatile ("movzwl %1, %0\n"
18198 : "m" (*(uint16_t *)ptr));
18206 static __attribute__ (( always_inline )) __inline__ int ldsw_be_p(const void *ptr)
18210 asm volatile ("movzwl %1, %0\n"
18213 : "m" (*(uint16_t *)ptr));
18214 return (int16_t)val;
18221 static __attribute__ (( always_inline )) __inline__ int ldl_be_p(const void *ptr)
18225 asm volatile ("movl %1, %0\n"
18228 : "m" (*(uint32_t *)ptr));
18236 static __attribute__ (( always_inline )) __inline__ uint64_t ldq_be_p(const void *ptr)
18240 b = ldl_be_p((uint8_t *)ptr + 4);
18241 return (((uint64_t)a<<32)|b);
18244 static __attribute__ (( always_inline )) __inline__ void stw_be_p(void *ptr, int v)
18247 asm volatile ("xchgb %b0, %h0\n"
18250 : "m" (*(uint16_t *)ptr), "0" (v));
18258 static __attribute__ (( always_inline )) __inline__ void stl_be_p(void *ptr, int v)
18261 asm volatile ("bswap %0\n"
18264 : "m" (*(uint32_t *)ptr), "0" (v));
18274 static __attribute__ (( always_inline )) __inline__ void stq_be_p(void *ptr, uint64_t v)
18276 stl_be_p(ptr, v >> 32);
18277 stl_be_p((uint8_t *)ptr + 4, v);
18282 static __attribute__ (( always_inline )) __inline__ float32 ldfl_be_p(const void *ptr)
18288 u.i = ldl_be_p(ptr);
18292 static __attribute__ (( always_inline )) __inline__ void stfl_be_p(void *ptr, float32 v)
18299 stl_be_p(ptr, u.i);
18302 static __attribute__ (( always_inline )) __inline__ float64 ldfq_be_p(const void *ptr)
18305 u.l.upper = ldl_be_p(ptr);
18306 u.l.lower = ldl_be_p((uint8_t *)ptr + 4);
18310 static __attribute__ (( always_inline )) __inline__ void stfq_be_p(void *ptr, float64 v)
18314 stl_be_p(ptr, u.l.upper);
18315 stl_be_p((uint8_t *)ptr + 4, u.l.lower);
18317 # 15 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-common.h" 2
18322 enum device_endian {
18323 DEVICE_NATIVE_ENDIAN,
18325 DEVICE_LITTLE_ENDIAN,
18334 typedef uintptr_t ram_addr_t;
18341 typedef void CPUWriteMemoryFunc(void *opaque, target_phys_addr_t addr, uint32_t value);
18342 typedef uint32_t CPUReadMemoryFunc(void *opaque, target_phys_addr_t addr);
18344 void qemu_ram_remap(ram_addr_t addr, ram_addr_t length);
18346 void *qemu_get_ram_ptr(ram_addr_t addr);
18347 void *qemu_ram_ptr_length(ram_addr_t addr, ram_addr_t *size);
18350 void *qemu_safe_ram_ptr(ram_addr_t addr);
18351 void qemu_put_ram_ptr(void *addr);
18353 int qemu_ram_addr_from_host(void *ptr, ram_addr_t *ram_addr);
18354 ram_addr_t qemu_ram_addr_from_host_nofail(void *ptr);
18355 void qemu_ram_set_idstr(ram_addr_t addr, const char *name, DeviceState *dev);
18357 void cpu_physical_memory_rw(target_phys_addr_t addr, uint8_t *buf,
18358 int len, int is_write);
18359 static __attribute__ (( always_inline )) __inline__ void cpu_physical_memory_read(target_phys_addr_t addr,
18360 void *buf, int len)
18362 cpu_physical_memory_rw(addr, buf, len, 0);
18364 static __attribute__ (( always_inline )) __inline__ void cpu_physical_memory_write(target_phys_addr_t addr,
18365 const void *buf, int len)
18367 cpu_physical_memory_rw(addr, (void *)buf, len, 1);
18369 void *cpu_physical_memory_map(target_phys_addr_t addr,
18370 target_phys_addr_t *plen,
18372 void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len,
18373 int is_write, target_phys_addr_t access_len);
18374 void *cpu_register_map_client(void *opaque, void (*callback)(void *opaque));
18375 void cpu_unregister_map_client(void *cookie);
18382 void qemu_flush_coalesced_mmio_buffer(void);
18384 uint32_t ldub_phys(target_phys_addr_t addr);
18385 uint32_t lduw_le_phys(target_phys_addr_t addr);
18386 uint32_t lduw_be_phys(target_phys_addr_t addr);
18387 uint32_t ldl_le_phys(target_phys_addr_t addr);
18388 uint32_t ldl_be_phys(target_phys_addr_t addr);
18389 uint64_t ldq_le_phys(target_phys_addr_t addr);
18390 uint64_t ldq_be_phys(target_phys_addr_t addr);
18391 void stb_phys(target_phys_addr_t addr, uint32_t val);
18392 void stw_le_phys(target_phys_addr_t addr, uint32_t val);
18393 void stw_be_phys(target_phys_addr_t addr, uint32_t val);
18394 void stl_le_phys(target_phys_addr_t addr, uint32_t val);
18395 void stl_be_phys(target_phys_addr_t addr, uint32_t val);
18396 void stq_le_phys(target_phys_addr_t addr, uint64_t val);
18397 void stq_be_phys(target_phys_addr_t addr, uint64_t val);
18400 uint32_t lduw_phys(target_phys_addr_t addr);
18401 uint32_t ldl_phys(target_phys_addr_t addr);
18402 uint64_t ldq_phys(target_phys_addr_t addr);
18403 void stl_phys_notdirty(target_phys_addr_t addr, uint32_t val);
18404 void stq_phys_notdirty(target_phys_addr_t addr, uint64_t val);
18405 void stw_phys(target_phys_addr_t addr, uint32_t val);
18406 void stl_phys(target_phys_addr_t addr, uint32_t val);
18407 void stq_phys(target_phys_addr_t addr, uint64_t val);
18410 void cpu_physical_memory_write_rom(target_phys_addr_t addr,
18411 const uint8_t *buf, int len);
18413 extern struct MemoryRegion io_mem_ram;
18414 extern struct MemoryRegion io_mem_rom;
18415 extern struct MemoryRegion io_mem_unassigned;
18416 extern struct MemoryRegion io_mem_notdirty;
18417 # 25 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h" 2
18418 # 77 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18419 static __attribute__ (( always_inline )) __inline__ uint16_t tswap16(uint16_t s)
18424 static __attribute__ (( always_inline )) __inline__ uint32_t tswap32(uint32_t s)
18429 static __attribute__ (( always_inline )) __inline__ uint64_t tswap64(uint64_t s)
18434 static __attribute__ (( always_inline )) __inline__ void tswap16s(uint16_t *s)
18438 static __attribute__ (( always_inline )) __inline__ void tswap32s(uint32_t *s)
18442 static __attribute__ (( always_inline )) __inline__ void tswap64s(uint64_t *s)
18445 # 303 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18446 extern uintptr_t qemu_real_host_page_size;
18447 extern uintptr_t qemu_host_page_size;
18448 extern uintptr_t qemu_host_page_mask;
18449 # 335 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18450 struct CPUX86State *cpu_copy(struct CPUX86State *env);
18451 struct CPUX86State *qemu_get_cpu(int cpu);
18455 void cpu_dump_state(struct CPUX86State *env, FILE *f, fprintf_function cpu_fprintf,
18457 void cpu_dump_statistics(struct CPUX86State *env, FILE *f, fprintf_function cpu_fprintf,
18460 void __attribute__ ((__noreturn__)) cpu_abort(struct CPUX86State *env, const char *fmt, ...)
18461 __attribute__((format(gnu_printf, 2, 3)));
18462 extern struct CPUX86State *first_cpu;
18463 extern __thread __typeof__(struct CPUX86State *) tls__cpu_single_env;
18464 # 402 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18465 typedef void (*CPUInterruptHandler)(struct CPUX86State *, int);
18467 extern CPUInterruptHandler cpu_interrupt_handler;
18469 static __attribute__ (( always_inline )) __inline__ void cpu_interrupt(struct CPUX86State *s, int mask)
18471 cpu_interrupt_handler(s, mask);
18477 void cpu_reset_interrupt(struct CPUX86State *env, int mask);
18479 void cpu_exit(struct CPUX86State *s);
18481 _Bool qemu_cpu_has_work(struct CPUX86State *env);
18482 # 429 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18483 int cpu_breakpoint_insert(struct CPUX86State *env, target_ulong pc, int flags,
18484 CPUBreakpoint **breakpoint);
18485 int cpu_breakpoint_remove(struct CPUX86State *env, target_ulong pc, int flags);
18486 void cpu_breakpoint_remove_by_ref(struct CPUX86State *env, CPUBreakpoint *breakpoint);
18487 void cpu_breakpoint_remove_all(struct CPUX86State *env, int mask);
18488 int cpu_watchpoint_insert(struct CPUX86State *env, target_ulong addr, target_ulong len,
18489 int flags, CPUWatchpoint **watchpoint);
18490 int cpu_watchpoint_remove(struct CPUX86State *env, target_ulong addr,
18491 target_ulong len, int flags);
18492 void cpu_watchpoint_remove_by_ref(struct CPUX86State *env, CPUWatchpoint *watchpoint);
18493 void cpu_watchpoint_remove_all(struct CPUX86State *env, int mask);
18499 void cpu_single_step(struct CPUX86State *env, int enabled);
18500 void cpu_state_reset(struct CPUX86State *s);
18501 int cpu_is_stopped(struct CPUX86State *env);
18502 void run_on_cpu(struct CPUX86State *env, void (*func)(void *data), void *data);
18503 # 462 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18504 typedef struct CPULogItem {
18510 extern const CPULogItem cpu_log_items[];
18512 void cpu_set_log(int log_flags);
18513 void cpu_set_log_filename(const char *filename);
18514 int cpu_str_to_log_mask(const char *str);
18521 target_phys_addr_t cpu_get_phys_page_debug(struct CPUX86State *env, target_ulong addr);
18525 extern int phys_ram_fd;
18526 extern ram_addr_t ram_size;
18531 typedef struct RAMBlock {
18532 struct MemoryRegion *mr;
18538 struct { struct RAMBlock *le_next; struct RAMBlock **le_prev; } next;
18544 typedef struct RAMList {
18545 uint8_t *phys_dirty;
18546 struct { struct RAMBlock *lh_first; } blocks;
18548 extern RAMList ram_list;
18550 extern const char *mem_path;
18551 extern int mem_prealloc;
18552 # 521 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/cpu-all.h"
18553 void dump_exec_info(FILE *f, fprintf_function cpu_fprintf);
18556 int cpu_memory_rw_debug(struct CPUX86State *env, target_ulong addr,
18557 uint8_t *buf, int len, int is_write);
18558 # 1025 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
18559 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/svm.h" 1
18560 # 133 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/svm.h"
18561 struct __attribute__((packed)) vmcb_control_area {
18562 uint16_t intercept_cr_read;
18563 uint16_t intercept_cr_write;
18564 uint16_t intercept_dr_read;
18565 uint16_t intercept_dr_write;
18566 uint32_t intercept_exceptions;
18567 uint64_t intercept;
18568 uint8_t reserved_1[44];
18569 uint64_t iopm_base_pa;
18570 uint64_t msrpm_base_pa;
18571 uint64_t tsc_offset;
18574 uint8_t reserved_2[3];
18576 uint32_t int_vector;
18577 uint32_t int_state;
18578 uint8_t reserved_3[4];
18579 uint64_t exit_code;
18580 uint64_t exit_info_1;
18581 uint64_t exit_info_2;
18582 uint32_t exit_int_info;
18583 uint32_t exit_int_info_err;
18584 uint64_t nested_ctl;
18585 uint8_t reserved_4[16];
18586 uint32_t event_inj;
18587 uint32_t event_inj_err;
18588 uint64_t nested_cr3;
18590 uint8_t reserved_5[832];
18593 struct __attribute__((packed)) vmcb_seg {
18600 struct __attribute__((packed)) vmcb_save_area {
18601 struct vmcb_seg es;
18602 struct vmcb_seg cs;
18603 struct vmcb_seg ss;
18604 struct vmcb_seg ds;
18605 struct vmcb_seg fs;
18606 struct vmcb_seg gs;
18607 struct vmcb_seg gdtr;
18608 struct vmcb_seg ldtr;
18609 struct vmcb_seg idtr;
18610 struct vmcb_seg tr;
18611 uint8_t reserved_1[43];
18613 uint8_t reserved_2[4];
18615 uint8_t reserved_3[112];
18623 uint8_t reserved_4[88];
18625 uint8_t reserved_5[24];
18631 uint64_t kernel_gs_base;
18632 uint64_t sysenter_cs;
18633 uint64_t sysenter_esp;
18634 uint64_t sysenter_eip;
18636 uint8_t reserved_6[32];
18641 uint64_t last_excp_from;
18642 uint64_t last_excp_to;
18645 struct __attribute__((packed)) vmcb {
18646 struct vmcb_control_area control;
18647 struct vmcb_save_area save;
18649 # 1026 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
18652 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/hw/apic.h" 1
18659 void apic_deliver_irq(uint8_t dest, uint8_t dest_mode, uint8_t delivery_mode,
18660 uint8_t vector_num, uint8_t trigger_mode);
18661 int apic_accept_pic_intr(DeviceState *s);
18662 void apic_deliver_pic_intr(DeviceState *s, int level);
18663 void apic_deliver_nmi(DeviceState *d);
18664 int apic_get_interrupt(DeviceState *s);
18665 void apic_reset_irq_delivered(void);
18666 int apic_get_irq_delivered(void);
18667 void cpu_set_apic_base(DeviceState *s, uint64_t val);
18668 uint64_t cpu_get_apic_base(DeviceState *s);
18669 void cpu_set_apic_tpr(DeviceState *s, uint8_t val);
18670 uint8_t cpu_get_apic_tpr(DeviceState *s);
18671 void apic_init_reset(DeviceState *s);
18672 void apic_sipi(DeviceState *s);
18673 void apic_handle_tpr_access_report(DeviceState *d, target_ulong ip,
18677 int cpu_is_bsp(CPUX86State *env);
18678 DeviceState *cpu_get_current_apic(void);
18679 # 1029 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
18682 static __attribute__ (( always_inline )) __inline__ _Bool cpu_has_work(CPUX86State *env)
18684 return ((env->interrupt_request & 0x0002) &&
18685 (env->eflags & 0x00000200)) ||
18686 (env->interrupt_request & (0x0200 |
18692 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 1
18693 # 34 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18694 typedef ram_addr_t tb_page_addr_t;
18695 # 43 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18696 struct TranslationBlock;
18697 typedef struct TranslationBlock TranslationBlock;
18698 # 73 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18699 extern target_ulong gen_opc_pc[640];
18700 extern uint8_t gen_opc_instr_start[640];
18701 extern uint16_t gen_opc_icount[640];
18703 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-log.h" 1
18708 extern FILE *logfile;
18709 extern int loglevel;
18710 # 78 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
18712 void gen_intermediate_code(struct CPUX86State *env, struct TranslationBlock *tb);
18713 void gen_intermediate_code_pc(struct CPUX86State *env, struct TranslationBlock *tb);
18714 void restore_state_to_opc(struct CPUX86State *env, struct TranslationBlock *tb,
18717 void cpu_gen_init(void);
18718 int cpu_x86_gen_code(struct CPUX86State *env, struct TranslationBlock *tb,
18719 int *gen_code_size_ptr);
18720 int cpu_restore_state(struct TranslationBlock *tb,
18721 struct CPUX86State *env, uintptr_t searched_pc);
18722 void __attribute__ ((__noreturn__)) cpu_resume_from_signal(struct CPUX86State *env1, void *puc);
18723 void __attribute__ ((__noreturn__)) cpu_io_recompile(struct CPUX86State *env, uintptr_t retaddr);
18724 TranslationBlock *tb_gen_code(struct CPUX86State *env,
18725 target_ulong pc, target_ulong cs_base, int flags,
18727 void cpu_exec_init(struct CPUX86State *env);
18728 void __attribute__ ((__noreturn__)) cpu_loop_exit(struct CPUX86State *env1);
18729 int page_unprotect(target_ulong address, uintptr_t pc, void *puc);
18730 void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
18731 int is_cpu_write_access);
18732 void tb_invalidate_phys_range(tb_page_addr_t start, tb_page_addr_t end,
18733 int is_cpu_write_access);
18736 void tlb_flush_page(struct CPUX86State *env, target_ulong addr);
18737 void tlb_flush(struct CPUX86State *env, int flush_global);
18738 void tlb_set_page(struct CPUX86State *env, target_ulong vaddr,
18739 target_phys_addr_t paddr, int prot,
18740 int mmu_idx, target_ulong size);
18741 void tb_invalidate_phys_addr(target_phys_addr_t addr);
18742 # 141 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18743 struct TranslationBlock {
18745 target_ulong cs_base;
18755 struct TranslationBlock *phys_hash_next;
18758 struct TranslationBlock *page_next[2];
18759 tb_page_addr_t page_addr[2];
18763 uint16_t tb_next_offset[2];
18765 uint16_t tb_jmp_offset[2];
18773 struct TranslationBlock *jmp_next[2];
18774 struct TranslationBlock *jmp_first;
18778 static __attribute__ (( always_inline )) __inline__ unsigned int tb_jmp_cache_hash_page(target_ulong pc)
18781 tmp = pc ^ (pc >> (12 - (12 / 2)));
18782 return (tmp >> (12 - (12 / 2))) & ((1 << 12) - (1 << (12 / 2)));
18785 static __attribute__ (( always_inline )) __inline__ unsigned int tb_jmp_cache_hash_func(target_ulong pc)
18788 tmp = pc ^ (pc >> (12 - (12 / 2)));
18789 return (((tmp >> (12 - (12 / 2))) & ((1 << 12) - (1 << (12 / 2))))
18790 | (tmp & ((1 << (12 / 2)) - 1)));
18793 static __attribute__ (( always_inline )) __inline__ unsigned int tb_phys_hash_func(tb_page_addr_t pc)
18795 return (pc >> 2) & ((1 << 15) - 1);
18798 void tb_free(TranslationBlock *tb);
18799 void tb_flush(struct CPUX86State *env);
18800 void tb_link_page(TranslationBlock *tb,
18801 tb_page_addr_t phys_pc, tb_page_addr_t phys_page2);
18802 void tb_phys_invalidate(TranslationBlock *tb, tb_page_addr_t page_addr);
18804 extern TranslationBlock *tb_phys_hash[(1 << 15)];
18805 # 217 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18806 static __attribute__ (( always_inline )) __inline__ void tb_set_jmp_target1(uintptr_t jmp_addr, uintptr_t addr)
18809 *(uint32_t *)jmp_addr = addr - (jmp_addr + 4);
18812 # 251 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18813 static __attribute__ (( always_inline )) __inline__ void tb_set_jmp_target(TranslationBlock *tb,
18814 int n, uintptr_t addr)
18816 uint16_t offset = tb->tb_jmp_offset[n];
18817 tb_set_jmp_target1((uintptr_t)(tb->tc_ptr + offset), addr);
18819 # 269 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18820 static __attribute__ (( always_inline )) __inline__ void tb_add_jump(TranslationBlock *tb, int n,
18821 TranslationBlock *tb_next)
18824 if (!tb->jmp_next[n]) {
18826 tb_set_jmp_target(tb, n, (uintptr_t)tb_next->tc_ptr);
18829 tb->jmp_next[n] = tb_next->jmp_first;
18830 tb_next->jmp_first = (TranslationBlock *)((uintptr_t)(tb) | (n));
18834 TranslationBlock *tb_find_pc(uintptr_t pc_ptr);
18836 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-lock.h" 1
18837 # 38 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-lock.h"
18838 typedef int spinlock_t;
18841 static __attribute__ (( always_inline )) __inline__ void spin_lock(spinlock_t *lock)
18845 static __attribute__ (( always_inline )) __inline__ void spin_unlock(spinlock_t *lock)
18848 # 286 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
18850 extern spinlock_t tb_lock;
18852 extern int tb_invalidated_flag;
18853 # 313 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18854 struct MemoryRegion *iotlb_to_region(target_phys_addr_t index);
18855 uint64_t io_mem_read(struct MemoryRegion *mr, target_phys_addr_t addr,
18857 void io_mem_write(struct MemoryRegion *mr, target_phys_addr_t addr,
18858 uint64_t value, unsigned size);
18860 void tlb_fill(struct CPUX86State *env1, target_ulong addr, int is_write, int mmu_idx,
18861 uintptr_t retaddr);
18863 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_defs.h" 1
18864 # 13 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_defs.h"
18865 uint8_t __ldb_mmu(target_ulong addr, int mmu_idx);
18866 void __stb_mmu(target_ulong addr, uint8_t val, int mmu_idx);
18867 uint16_t __ldw_mmu(target_ulong addr, int mmu_idx);
18868 void __stw_mmu(target_ulong addr, uint16_t val, int mmu_idx);
18869 uint32_t __ldl_mmu(target_ulong addr, int mmu_idx);
18870 void __stl_mmu(target_ulong addr, uint32_t val, int mmu_idx);
18871 uint64_t __ldq_mmu(target_ulong addr, int mmu_idx);
18872 void __stq_mmu(target_ulong addr, uint64_t val, int mmu_idx);
18874 uint8_t __ldb_cmmu(target_ulong addr, int mmu_idx);
18875 void __stb_cmmu(target_ulong addr, uint8_t val, int mmu_idx);
18876 uint16_t __ldw_cmmu(target_ulong addr, int mmu_idx);
18877 void __stw_cmmu(target_ulong addr, uint16_t val, int mmu_idx);
18878 uint32_t __ldl_cmmu(target_ulong addr, int mmu_idx);
18879 void __stl_cmmu(target_ulong addr, uint32_t val, int mmu_idx);
18880 uint64_t __ldq_cmmu(target_ulong addr, int mmu_idx);
18881 void __stq_cmmu(target_ulong addr, uint64_t val, int mmu_idx);
18882 # 323 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
18883 # 331 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
18884 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
18885 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
18886 static __attribute__ (( always_inline )) __inline__ uint32_t
18896 page_index = (addr >> 12) & ((1 << 8) - 1);
18897 mmu_idx = (cpu_mmu_index(tls__cpu_single_env));
18898 if (__builtin_expect(!!(tls__cpu_single_env->tlb_table[mmu_idx][page_index].addr_code != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
18904 uintptr_t hostaddr = addr + tls__cpu_single_env->tlb_table[mmu_idx][page_index].addend;
18905 res = ldub_p((uint8_t *)(intptr_t)((hostaddr)));
18911 static __attribute__ (( always_inline )) __inline__ int
18915 int res, page_index;
18920 page_index = (addr >> 12) & ((1 << 8) - 1);
18921 mmu_idx = (cpu_mmu_index(tls__cpu_single_env));
18922 if (__builtin_expect(!!(tls__cpu_single_env->tlb_table[mmu_idx][page_index].addr_code != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
18925 __ldb_cmmu( addr, mmu_idx);
18927 uintptr_t hostaddr = addr + tls__cpu_single_env->tlb_table[mmu_idx][page_index].addend;
18928 res = ldsb_p((uint8_t *)(intptr_t)((hostaddr)));
18932 # 332 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
18935 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
18936 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
18937 static __attribute__ (( always_inline )) __inline__ uint32_t
18947 page_index = (addr >> 12) & ((1 << 8) - 1);
18948 mmu_idx = (cpu_mmu_index(tls__cpu_single_env));
18949 if (__builtin_expect(!!(tls__cpu_single_env->tlb_table[mmu_idx][page_index].addr_code != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
18955 uintptr_t hostaddr = addr + tls__cpu_single_env->tlb_table[mmu_idx][page_index].addend;
18956 res = lduw_le_p((uint8_t *)(intptr_t)((hostaddr)));
18962 static __attribute__ (( always_inline )) __inline__ int
18966 int res, page_index;
18971 page_index = (addr >> 12) & ((1 << 8) - 1);
18972 mmu_idx = (cpu_mmu_index(tls__cpu_single_env));
18973 if (__builtin_expect(!!(tls__cpu_single_env->tlb_table[mmu_idx][page_index].addr_code != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
18976 __ldw_cmmu( addr, mmu_idx);
18978 uintptr_t hostaddr = addr + tls__cpu_single_env->tlb_table[mmu_idx][page_index].addend;
18979 res = ldsw_le_p((uint8_t *)(intptr_t)((hostaddr)));
18983 # 335 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
18986 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
18987 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
18988 static __attribute__ (( always_inline )) __inline__ uint32_t
18998 page_index = (addr >> 12) & ((1 << 8) - 1);
18999 mmu_idx = (cpu_mmu_index(tls__cpu_single_env));
19000 if (__builtin_expect(!!(tls__cpu_single_env->tlb_table[mmu_idx][page_index].addr_code != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
19006 uintptr_t hostaddr = addr + tls__cpu_single_env->tlb_table[mmu_idx][page_index].addend;
19007 res = ldl_le_p((uint8_t *)(intptr_t)((hostaddr)));
19011 # 338 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
19014 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
19015 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
19016 static __attribute__ (( always_inline )) __inline__ uint64_t
19026 page_index = (addr >> 12) & ((1 << 8) - 1);
19027 mmu_idx = (cpu_mmu_index(tls__cpu_single_env));
19028 if (__builtin_expect(!!(tls__cpu_single_env->tlb_table[mmu_idx][page_index].addr_code != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
19034 uintptr_t hostaddr = addr + tls__cpu_single_env->tlb_table[mmu_idx][page_index].addend;
19035 res = ldq_le_p((uint8_t *)(intptr_t)((hostaddr)));
19039 # 341 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h" 2
19040 # 355 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/exec-all.h"
19041 tb_page_addr_t get_page_addr_code(struct CPUX86State *env1, target_ulong addr);
19044 typedef void (CPUDebugExcpHandler)(struct CPUX86State *env);
19046 CPUDebugExcpHandler *cpu_set_debug_excp_handler(CPUDebugExcpHandler *handler);
19049 extern int singlestep;
19052 extern volatile sig_atomic_t exit_request;
19056 static __attribute__ (( always_inline )) __inline__ int can_do_io(struct CPUX86State *env)
19062 if (!env->current_tb) {
19065 return env->can_do_io != 0;
19067 # 1042 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/cpu.h" 2
19069 static __attribute__ (( always_inline )) __inline__ void cpu_pc_from_tb(CPUX86State *env, TranslationBlock *tb)
19071 env->eip = tb->pc - tb->cs_base;
19074 static __attribute__ (( always_inline )) __inline__ void cpu_get_tb_cpu_state(CPUX86State *env, target_ulong *pc,
19075 target_ulong *cs_base, int *flags)
19077 *cs_base = env->segs[1].base;
19078 *pc = *cs_base + env->eip;
19079 *flags = env->hflags |
19080 (env->eflags & (0x00003000 | 0x00000100 | 0x00010000 | 0x00020000));
19083 void do_cpu_init(CPUX86State *env);
19084 void do_cpu_sipi(CPUX86State *env);
19089 void cpu_x86_inject_mce(Monitor *mon, CPUX86State *cenv, int bank,
19090 uint64_t status, uint64_t mcg_status, uint64_t addr,
19091 uint64_t misc, int flags);
19094 void do_interrupt(CPUX86State *env);
19095 void do_interrupt_x86_hardirq(CPUX86State *env, int intno, int is_hw);
19096 void __attribute__ ((__noreturn__)) raise_exception_env(int exception_index, CPUX86State *nenv);
19097 void __attribute__ ((__noreturn__)) raise_exception_err_env(CPUX86State *nenv, int exception_index,
19100 void do_smm_enter(CPUX86State *env1);
19102 void svm_check_intercept(CPUX86State *env1, uint32_t type);
19104 uint32_t cpu_cc_compute_all(CPUX86State *env1, int op);
19106 void cpu_report_tpr_access(CPUX86State *env, TPRAccess access);
19107 # 22 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
19108 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/dyngen-exec.h" 1
19109 # 64 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/dyngen-exec.h"
19110 register struct CPUX86State *env asm("ebp");
19111 # 23 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
19112 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h" 1
19113 # 46 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19114 void muls64(uint64_t *phigh, uint64_t *plow, int64_t a, int64_t b);
19115 void mulu64(uint64_t *phigh, uint64_t *plow, uint64_t a, uint64_t b);
19120 static __attribute__ (( always_inline )) __inline__ int clz32(uint32_t val)
19124 return __builtin_clz(val);
19127 # 87 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19130 static __attribute__ (( always_inline )) __inline__ int clo32(uint32_t val)
19132 return clz32(~val);
19135 static __attribute__ (( always_inline )) __inline__ int clz64(uint64_t val)
19139 return __builtin_clzll(val);
19142 # 112 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19145 static __attribute__ (( always_inline )) __inline__ int clo64(uint64_t val)
19147 return clz64(~val);
19150 static __attribute__ (( always_inline )) __inline__ int ctz32(uint32_t val)
19154 return __builtin_ctz(val);
19157 # 156 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19160 static __attribute__ (( always_inline )) __inline__ int cto32(uint32_t val)
19162 return ctz32(~val);
19165 static __attribute__ (( always_inline )) __inline__ int ctz64(uint64_t val)
19169 return __builtin_ctzll(val);
19172 # 181 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19175 static __attribute__ (( always_inline )) __inline__ int cto64(uint64_t val)
19177 return ctz64(~val);
19180 static __attribute__ (( always_inline )) __inline__ int ctpop8(uint8_t val)
19182 val = (val & 0x55) + ((val >> 1) & 0x55);
19183 val = (val & 0x33) + ((val >> 2) & 0x33);
19184 val = (val & 0x0f) + ((val >> 4) & 0x0f);
19189 static __attribute__ (( always_inline )) __inline__ int ctpop16(uint16_t val)
19191 val = (val & 0x5555) + ((val >> 1) & 0x5555);
19192 val = (val & 0x3333) + ((val >> 2) & 0x3333);
19193 val = (val & 0x0f0f) + ((val >> 4) & 0x0f0f);
19194 val = (val & 0x00ff) + ((val >> 8) & 0x00ff);
19199 static __attribute__ (( always_inline )) __inline__ int ctpop32(uint32_t val)
19202 return __builtin_popcount(val);
19203 # 220 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19206 static __attribute__ (( always_inline )) __inline__ int ctpop64(uint64_t val)
19209 return __builtin_popcountll(val);
19210 # 236 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/host-utils.h"
19212 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
19213 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/ioport.h" 1
19214 # 28 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/ioport.h"
19215 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/iorange.h" 1
19221 typedef struct IORange IORange;
19222 typedef struct IORangeOps IORangeOps;
19224 struct IORangeOps {
19225 void (*read)(IORange *iorange, uint64_t offset, unsigned width,
19227 void (*write)(IORange *iorange, uint64_t offset, unsigned width,
19229 void (*destructor)(IORange *iorange);
19233 const IORangeOps *ops;
19238 static __attribute__ (( always_inline )) __inline__ void iorange_init(IORange *iorange, const IORangeOps *ops,
19239 uint64_t base, uint64_t len)
19241 iorange->ops = ops;
19242 iorange->base = base;
19243 iorange->len = len;
19245 # 29 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/ioport.h" 2
19247 typedef uint32_t pio_addr_t;
19254 typedef void (IOPortWriteFunc)(void *opaque, uint32_t address, uint32_t data);
19255 typedef uint32_t (IOPortReadFunc)(void *opaque, uint32_t address);
19256 typedef void (IOPortDestructor)(void *opaque);
19258 void ioport_register(IORange *iorange);
19259 int register_ioport_read(pio_addr_t start, int length, int size,
19260 IOPortReadFunc *func, void *opaque);
19261 int register_ioport_write(pio_addr_t start, int length, int size,
19262 IOPortWriteFunc *func, void *opaque);
19263 void isa_unassign_ioport(pio_addr_t start, int length);
19264 _Bool isa_is_ioport_assigned(pio_addr_t start);
19266 void cpu_outb(pio_addr_t addr, uint8_t val);
19267 void cpu_outw(pio_addr_t addr, uint16_t val);
19268 void cpu_outl(pio_addr_t addr, uint32_t val);
19269 uint8_t cpu_inb(pio_addr_t addr);
19270 uint16_t cpu_inw(pio_addr_t addr);
19271 uint32_t cpu_inl(pio_addr_t addr);
19273 struct MemoryRegion;
19274 struct MemoryRegionPortio;
19276 typedef struct PortioList {
19277 const struct MemoryRegionPortio *ports;
19278 struct MemoryRegion *address_space;
19280 struct MemoryRegion **regions;
19281 struct MemoryRegion **aliases;
19286 void portio_list_init(PortioList *piolist,
19287 const struct MemoryRegionPortio *callbacks,
19288 void *opaque, const char *name);
19289 void portio_list_destroy(PortioList *piolist);
19290 void portio_list_add(PortioList *piolist,
19291 struct MemoryRegion *address_space,
19293 void portio_list_del(PortioList *piolist);
19294 # 25 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
19295 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-log.h" 1
19296 # 26 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
19298 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper.h" 1
19299 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/def-helper.h" 1
19300 # 2 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper.h" 2
19302 uint32_t helper_cc_compute_all (int);
19303 uint32_t helper_cc_compute_c (int);
19305 void helper_lock (void);
19306 void helper_unlock (void);
19307 void helper_write_eflags (target_ulong, uint32_t);
19308 target_ulong helper_read_eflags (void);
19309 void helper_divb_AL (target_ulong);
19310 void helper_idivb_AL (target_ulong);
19311 void helper_divw_AX (target_ulong);
19312 void helper_idivw_AX (target_ulong);
19313 void helper_divl_EAX (target_ulong);
19314 void helper_idivl_EAX (target_ulong);
19315 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper.h"
19316 void helper_aam (int);
19317 void helper_aad (int);
19318 void helper_aaa (void);
19319 void helper_aas (void);
19320 void helper_daa (void);
19321 void helper_das (void);
19323 target_ulong helper_lsl (target_ulong);
19324 target_ulong helper_lar (target_ulong);
19325 void helper_verr (target_ulong);
19326 void helper_verw (target_ulong);
19327 void helper_lldt (int);
19328 void helper_ltr (int);
19329 void helper_load_seg (int, int);
19330 void helper_ljmp_protected (int, target_ulong, int);
19331 void helper_lcall_real (int, target_ulong, int, int);
19332 void helper_lcall_protected (int, target_ulong, int, int);
19333 void helper_iret_real (int);
19334 void helper_iret_protected (int, int);
19335 void helper_lret_protected (int, int);
19336 target_ulong helper_read_crN (int);
19337 void helper_write_crN (int, target_ulong);
19338 void helper_lmsw (target_ulong);
19339 void helper_clts (void);
19340 void helper_movl_drN_T0 (int, target_ulong);
19341 void helper_invlpg (target_ulong);
19343 void helper_enter_level (int, int, target_ulong);
19347 void helper_sysenter (void);
19348 void helper_sysexit (int);
19353 void helper_hlt (int);
19354 void helper_monitor (target_ulong);
19355 void helper_mwait (int);
19356 void helper_debug (void);
19357 void helper_reset_rf (void);
19358 void helper_raise_interrupt (int, int);
19359 void helper_raise_exception (int);
19360 void helper_cli (void);
19361 void helper_sti (void);
19362 void helper_set_inhibit_irq (void);
19363 void helper_reset_inhibit_irq (void);
19364 void helper_boundw (target_ulong, int);
19365 void helper_boundl (target_ulong, int);
19366 void helper_rsm (void);
19367 void helper_into (int);
19368 void helper_cmpxchg8b (target_ulong);
19372 void helper_single_step (void);
19373 void helper_cpuid (void);
19374 void helper_rdtsc (void);
19375 void helper_rdtscp (void);
19376 void helper_rdpmc (void);
19377 void helper_rdmsr (void);
19378 void helper_wrmsr (void);
19380 void helper_check_iob (uint32_t);
19381 void helper_check_iow (uint32_t);
19382 void helper_check_iol (uint32_t);
19383 void helper_outb (uint32_t, uint32_t);
19384 target_ulong helper_inb (uint32_t);
19385 void helper_outw (uint32_t, uint32_t);
19386 target_ulong helper_inw (uint32_t);
19387 void helper_outl (uint32_t, uint32_t);
19388 target_ulong helper_inl (uint32_t);
19390 void helper_svm_check_intercept_param (uint32_t, uint64_t);
19391 void helper_vmexit (uint32_t, uint64_t);
19392 void helper_svm_check_io (uint32_t, uint32_t, uint32_t);
19393 void helper_vmrun (int, int);
19394 void helper_vmmcall (void);
19395 void helper_vmload (int);
19396 void helper_vmsave (int);
19397 void helper_stgi (void);
19398 void helper_clgi (void);
19399 void helper_skinit (void);
19400 void helper_invlpga (int);
19404 void helper_flds_FT0 (uint32_t);
19405 void helper_fldl_FT0 (uint64_t);
19406 void helper_fildl_FT0 (int32_t);
19407 void helper_flds_ST0 (uint32_t);
19408 void helper_fldl_ST0 (uint64_t);
19409 void helper_fildl_ST0 (int32_t);
19410 void helper_fildll_ST0 (int64_t);
19411 uint32_t helper_fsts_ST0 (void);
19412 uint64_t helper_fstl_ST0 (void);
19413 int32_t helper_fist_ST0 (void);
19414 int32_t helper_fistl_ST0 (void);
19415 int64_t helper_fistll_ST0 (void);
19416 int32_t helper_fistt_ST0 (void);
19417 int32_t helper_fisttl_ST0 (void);
19418 int64_t helper_fisttll_ST0 (void);
19419 void helper_fldt_ST0 (target_ulong);
19420 void helper_fstt_ST0 (target_ulong);
19421 void helper_fpush (void);
19422 void helper_fpop (void);
19423 void helper_fdecstp (void);
19424 void helper_fincstp (void);
19425 void helper_ffree_STN (int);
19426 void helper_fmov_ST0_FT0 (void);
19427 void helper_fmov_FT0_STN (int);
19428 void helper_fmov_ST0_STN (int);
19429 void helper_fmov_STN_ST0 (int);
19430 void helper_fxchg_ST0_STN (int);
19431 void helper_fcom_ST0_FT0 (void);
19432 void helper_fucom_ST0_FT0 (void);
19433 void helper_fcomi_ST0_FT0 (void);
19434 void helper_fucomi_ST0_FT0 (void);
19435 void helper_fadd_ST0_FT0 (void);
19436 void helper_fmul_ST0_FT0 (void);
19437 void helper_fsub_ST0_FT0 (void);
19438 void helper_fsubr_ST0_FT0 (void);
19439 void helper_fdiv_ST0_FT0 (void);
19440 void helper_fdivr_ST0_FT0 (void);
19441 void helper_fadd_STN_ST0 (int);
19442 void helper_fmul_STN_ST0 (int);
19443 void helper_fsub_STN_ST0 (int);
19444 void helper_fsubr_STN_ST0 (int);
19445 void helper_fdiv_STN_ST0 (int);
19446 void helper_fdivr_STN_ST0 (int);
19447 void helper_fchs_ST0 (void);
19448 void helper_fabs_ST0 (void);
19449 void helper_fxam_ST0 (void);
19450 void helper_fld1_ST0 (void);
19451 void helper_fldl2t_ST0 (void);
19452 void helper_fldl2e_ST0 (void);
19453 void helper_fldpi_ST0 (void);
19454 void helper_fldlg2_ST0 (void);
19455 void helper_fldln2_ST0 (void);
19456 void helper_fldz_ST0 (void);
19457 void helper_fldz_FT0 (void);
19458 uint32_t helper_fnstsw (void);
19459 uint32_t helper_fnstcw (void);
19460 void helper_fldcw (uint32_t);
19461 void helper_fclex (void);
19462 void helper_fwait (void);
19463 void helper_fninit (void);
19464 void helper_fbld_ST0 (target_ulong);
19465 void helper_fbst_ST0 (target_ulong);
19466 void helper_f2xm1 (void);
19467 void helper_fyl2x (void);
19468 void helper_fptan (void);
19469 void helper_fpatan (void);
19470 void helper_fxtract (void);
19471 void helper_fprem1 (void);
19472 void helper_fprem (void);
19473 void helper_fyl2xp1 (void);
19474 void helper_fsqrt (void);
19475 void helper_fsincos (void);
19476 void helper_frndint (void);
19477 void helper_fscale (void);
19478 void helper_fsin (void);
19479 void helper_fcos (void);
19480 void helper_fstenv (target_ulong, int);
19481 void helper_fldenv (target_ulong, int);
19482 void helper_fsave (target_ulong, int);
19483 void helper_frstor (target_ulong, int);
19484 void helper_fxsave (target_ulong, int);
19485 void helper_fxrstor (target_ulong, int);
19486 target_ulong helper_bsf (target_ulong);
19487 target_ulong helper_bsr (target_ulong);
19488 target_ulong helper_lzcnt (target_ulong, int);
19492 void helper_ldmxcsr (uint32_t);
19493 void helper_enter_mmx (void);
19494 void helper_emms (void);
19495 void helper_movq (void *, void *);
19498 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h" 1
19499 # 37 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19500 void helper_psrlw_mmx (MMXReg *, MMXReg *);
19501 void helper_psraw_mmx (MMXReg *, MMXReg *);
19502 void helper_psllw_mmx (MMXReg *, MMXReg *);
19503 void helper_psrld_mmx (MMXReg *, MMXReg *);
19504 void helper_psrad_mmx (MMXReg *, MMXReg *);
19505 void helper_pslld_mmx (MMXReg *, MMXReg *);
19506 void helper_psrlq_mmx (MMXReg *, MMXReg *);
19507 void helper_psllq_mmx (MMXReg *, MMXReg *);
19508 # 63 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19509 void helper_paddb_mmx (MMXReg *, MMXReg *);
19510 void helper_paddw_mmx (MMXReg *, MMXReg *);
19511 void helper_paddl_mmx (MMXReg *, MMXReg *);
19512 void helper_paddq_mmx (MMXReg *, MMXReg *);
19514 void helper_psubb_mmx (MMXReg *, MMXReg *);
19515 void helper_psubw_mmx (MMXReg *, MMXReg *);
19516 void helper_psubl_mmx (MMXReg *, MMXReg *);
19517 void helper_psubq_mmx (MMXReg *, MMXReg *);
19519 void helper_paddusb_mmx (MMXReg *, MMXReg *);
19520 void helper_paddsb_mmx (MMXReg *, MMXReg *);
19521 void helper_psubusb_mmx (MMXReg *, MMXReg *);
19522 void helper_psubsb_mmx (MMXReg *, MMXReg *);
19524 void helper_paddusw_mmx (MMXReg *, MMXReg *);
19525 void helper_paddsw_mmx (MMXReg *, MMXReg *);
19526 void helper_psubusw_mmx (MMXReg *, MMXReg *);
19527 void helper_psubsw_mmx (MMXReg *, MMXReg *);
19529 void helper_pminub_mmx (MMXReg *, MMXReg *);
19530 void helper_pmaxub_mmx (MMXReg *, MMXReg *);
19532 void helper_pminsw_mmx (MMXReg *, MMXReg *);
19533 void helper_pmaxsw_mmx (MMXReg *, MMXReg *);
19535 void helper_pand_mmx (MMXReg *, MMXReg *);
19536 void helper_pandn_mmx (MMXReg *, MMXReg *);
19537 void helper_por_mmx (MMXReg *, MMXReg *);
19538 void helper_pxor_mmx (MMXReg *, MMXReg *);
19540 void helper_pcmpgtb_mmx (MMXReg *, MMXReg *);
19541 void helper_pcmpgtw_mmx (MMXReg *, MMXReg *);
19542 void helper_pcmpgtl_mmx (MMXReg *, MMXReg *);
19544 void helper_pcmpeqb_mmx (MMXReg *, MMXReg *);
19545 void helper_pcmpeqw_mmx (MMXReg *, MMXReg *);
19546 void helper_pcmpeql_mmx (MMXReg *, MMXReg *);
19548 void helper_pmullw_mmx (MMXReg *, MMXReg *);
19550 void helper_pmulhrw_mmx (MMXReg *, MMXReg *);
19552 void helper_pmulhuw_mmx (MMXReg *, MMXReg *);
19553 void helper_pmulhw_mmx (MMXReg *, MMXReg *);
19555 void helper_pavgb_mmx (MMXReg *, MMXReg *);
19556 void helper_pavgw_mmx (MMXReg *, MMXReg *);
19558 void helper_pmuludq_mmx (MMXReg *, MMXReg *);
19559 void helper_pmaddwd_mmx (MMXReg *, MMXReg *);
19561 void helper_psadbw_mmx (MMXReg *, MMXReg *);
19562 void helper_maskmov_mmx (MMXReg *, MMXReg *, target_ulong);
19563 void helper_movl_mm_T0_mmx (MMXReg *, uint32_t);
19569 void helper_pshufw_mmx (MMXReg *, MMXReg *, int);
19570 # 227 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19571 uint32_t helper_pmovmskb_mmx (MMXReg *);
19572 void helper_packsswb_mmx (MMXReg *, MMXReg *);
19573 void helper_packuswb_mmx (MMXReg *, MMXReg *);
19574 void helper_packssdw_mmx (MMXReg *, MMXReg *);
19580 void helper_punpcklbw_mmx (MMXReg *, MMXReg *); void helper_punpcklwd_mmx (MMXReg *, MMXReg *); void helper_punpckldq_mmx (MMXReg *, MMXReg *);
19581 void helper_punpckhbw_mmx (MMXReg *, MMXReg *); void helper_punpckhwd_mmx (MMXReg *, MMXReg *); void helper_punpckhdq_mmx (MMXReg *, MMXReg *);
19582 # 246 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19583 void helper_pi2fd (MMXReg *, MMXReg *);
19584 void helper_pi2fw (MMXReg *, MMXReg *);
19585 void helper_pf2id (MMXReg *, MMXReg *);
19586 void helper_pf2iw (MMXReg *, MMXReg *);
19587 void helper_pfacc (MMXReg *, MMXReg *);
19588 void helper_pfadd (MMXReg *, MMXReg *);
19589 void helper_pfcmpeq (MMXReg *, MMXReg *);
19590 void helper_pfcmpge (MMXReg *, MMXReg *);
19591 void helper_pfcmpgt (MMXReg *, MMXReg *);
19592 void helper_pfmax (MMXReg *, MMXReg *);
19593 void helper_pfmin (MMXReg *, MMXReg *);
19594 void helper_pfmul (MMXReg *, MMXReg *);
19595 void helper_pfnacc (MMXReg *, MMXReg *);
19596 void helper_pfpnacc (MMXReg *, MMXReg *);
19597 void helper_pfrcp (MMXReg *, MMXReg *);
19598 void helper_pfrsqrt (MMXReg *, MMXReg *);
19599 void helper_pfsub (MMXReg *, MMXReg *);
19600 void helper_pfsubr (MMXReg *, MMXReg *);
19601 void helper_pswapd (MMXReg *, MMXReg *);
19605 void helper_phaddw_mmx (MMXReg *, MMXReg *);
19606 void helper_phaddd_mmx (MMXReg *, MMXReg *);
19607 void helper_phaddsw_mmx (MMXReg *, MMXReg *);
19608 void helper_phsubw_mmx (MMXReg *, MMXReg *);
19609 void helper_phsubd_mmx (MMXReg *, MMXReg *);
19610 void helper_phsubsw_mmx (MMXReg *, MMXReg *);
19611 void helper_pabsb_mmx (MMXReg *, MMXReg *);
19612 void helper_pabsw_mmx (MMXReg *, MMXReg *);
19613 void helper_pabsd_mmx (MMXReg *, MMXReg *);
19614 void helper_pmaddubsw_mmx (MMXReg *, MMXReg *);
19615 void helper_pmulhrsw_mmx (MMXReg *, MMXReg *);
19616 void helper_pshufb_mmx (MMXReg *, MMXReg *);
19617 void helper_psignb_mmx (MMXReg *, MMXReg *);
19618 void helper_psignw_mmx (MMXReg *, MMXReg *);
19619 void helper_psignd_mmx (MMXReg *, MMXReg *);
19620 void helper_palignr_mmx (MMXReg *, MMXReg *, int32_t);
19621 # 207 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper.h" 2
19623 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h" 1
19624 # 37 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19625 void helper_psrlw_xmm (XMMReg *, XMMReg *);
19626 void helper_psraw_xmm (XMMReg *, XMMReg *);
19627 void helper_psllw_xmm (XMMReg *, XMMReg *);
19628 void helper_psrld_xmm (XMMReg *, XMMReg *);
19629 void helper_psrad_xmm (XMMReg *, XMMReg *);
19630 void helper_pslld_xmm (XMMReg *, XMMReg *);
19631 void helper_psrlq_xmm (XMMReg *, XMMReg *);
19632 void helper_psllq_xmm (XMMReg *, XMMReg *);
19635 void helper_psrldq_xmm (XMMReg *, XMMReg *);
19636 void helper_pslldq_xmm (XMMReg *, XMMReg *);
19637 # 63 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19638 void helper_paddb_xmm (XMMReg *, XMMReg *);
19639 void helper_paddw_xmm (XMMReg *, XMMReg *);
19640 void helper_paddl_xmm (XMMReg *, XMMReg *);
19641 void helper_paddq_xmm (XMMReg *, XMMReg *);
19643 void helper_psubb_xmm (XMMReg *, XMMReg *);
19644 void helper_psubw_xmm (XMMReg *, XMMReg *);
19645 void helper_psubl_xmm (XMMReg *, XMMReg *);
19646 void helper_psubq_xmm (XMMReg *, XMMReg *);
19648 void helper_paddusb_xmm (XMMReg *, XMMReg *);
19649 void helper_paddsb_xmm (XMMReg *, XMMReg *);
19650 void helper_psubusb_xmm (XMMReg *, XMMReg *);
19651 void helper_psubsb_xmm (XMMReg *, XMMReg *);
19653 void helper_paddusw_xmm (XMMReg *, XMMReg *);
19654 void helper_paddsw_xmm (XMMReg *, XMMReg *);
19655 void helper_psubusw_xmm (XMMReg *, XMMReg *);
19656 void helper_psubsw_xmm (XMMReg *, XMMReg *);
19658 void helper_pminub_xmm (XMMReg *, XMMReg *);
19659 void helper_pmaxub_xmm (XMMReg *, XMMReg *);
19661 void helper_pminsw_xmm (XMMReg *, XMMReg *);
19662 void helper_pmaxsw_xmm (XMMReg *, XMMReg *);
19664 void helper_pand_xmm (XMMReg *, XMMReg *);
19665 void helper_pandn_xmm (XMMReg *, XMMReg *);
19666 void helper_por_xmm (XMMReg *, XMMReg *);
19667 void helper_pxor_xmm (XMMReg *, XMMReg *);
19669 void helper_pcmpgtb_xmm (XMMReg *, XMMReg *);
19670 void helper_pcmpgtw_xmm (XMMReg *, XMMReg *);
19671 void helper_pcmpgtl_xmm (XMMReg *, XMMReg *);
19673 void helper_pcmpeqb_xmm (XMMReg *, XMMReg *);
19674 void helper_pcmpeqw_xmm (XMMReg *, XMMReg *);
19675 void helper_pcmpeql_xmm (XMMReg *, XMMReg *);
19677 void helper_pmullw_xmm (XMMReg *, XMMReg *);
19681 void helper_pmulhuw_xmm (XMMReg *, XMMReg *);
19682 void helper_pmulhw_xmm (XMMReg *, XMMReg *);
19684 void helper_pavgb_xmm (XMMReg *, XMMReg *);
19685 void helper_pavgw_xmm (XMMReg *, XMMReg *);
19687 void helper_pmuludq_xmm (XMMReg *, XMMReg *);
19688 void helper_pmaddwd_xmm (XMMReg *, XMMReg *);
19690 void helper_psadbw_xmm (XMMReg *, XMMReg *);
19691 void helper_maskmov_xmm (XMMReg *, XMMReg *, target_ulong);
19692 void helper_movl_mm_T0_xmm (XMMReg *, uint32_t);
19700 void helper_shufps (XMMReg *, XMMReg *, int);
19701 void helper_shufpd (XMMReg *, XMMReg *, int);
19702 void helper_pshufd_xmm (XMMReg *, XMMReg *, int);
19703 void helper_pshuflw_xmm (XMMReg *, XMMReg *, int);
19704 void helper_pshufhw_xmm (XMMReg *, XMMReg *, int);
19705 # 142 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19706 void helper_addps (XMMReg *, XMMReg *); void helper_addss (XMMReg *, XMMReg *); void helper_addpd (XMMReg *, XMMReg *); void helper_addsd (XMMReg *, XMMReg *);
19707 void helper_subps (XMMReg *, XMMReg *); void helper_subss (XMMReg *, XMMReg *); void helper_subpd (XMMReg *, XMMReg *); void helper_subsd (XMMReg *, XMMReg *);
19708 void helper_mulps (XMMReg *, XMMReg *); void helper_mulss (XMMReg *, XMMReg *); void helper_mulpd (XMMReg *, XMMReg *); void helper_mulsd (XMMReg *, XMMReg *);
19709 void helper_divps (XMMReg *, XMMReg *); void helper_divss (XMMReg *, XMMReg *); void helper_divpd (XMMReg *, XMMReg *); void helper_divsd (XMMReg *, XMMReg *);
19710 void helper_minps (XMMReg *, XMMReg *); void helper_minss (XMMReg *, XMMReg *); void helper_minpd (XMMReg *, XMMReg *); void helper_minsd (XMMReg *, XMMReg *);
19711 void helper_maxps (XMMReg *, XMMReg *); void helper_maxss (XMMReg *, XMMReg *); void helper_maxpd (XMMReg *, XMMReg *); void helper_maxsd (XMMReg *, XMMReg *);
19712 void helper_sqrtps (XMMReg *, XMMReg *); void helper_sqrtss (XMMReg *, XMMReg *); void helper_sqrtpd (XMMReg *, XMMReg *); void helper_sqrtsd (XMMReg *, XMMReg *);
19715 void helper_cvtps2pd (XMMReg *, XMMReg *);
19716 void helper_cvtpd2ps (XMMReg *, XMMReg *);
19717 void helper_cvtss2sd (XMMReg *, XMMReg *);
19718 void helper_cvtsd2ss (XMMReg *, XMMReg *);
19719 void helper_cvtdq2ps (XMMReg *, XMMReg *);
19720 void helper_cvtdq2pd (XMMReg *, XMMReg *);
19721 void helper_cvtpi2ps (XMMReg *, MMXReg *);
19722 void helper_cvtpi2pd (XMMReg *, MMXReg *);
19723 void helper_cvtsi2ss (XMMReg *, uint32_t);
19724 void helper_cvtsi2sd (XMMReg *, uint32_t);
19731 void helper_cvtps2dq (XMMReg *, XMMReg *);
19732 void helper_cvtpd2dq (XMMReg *, XMMReg *);
19733 void helper_cvtps2pi (MMXReg *, XMMReg *);
19734 void helper_cvtpd2pi (MMXReg *, XMMReg *);
19735 int32_t helper_cvtss2si (XMMReg *);
19736 int32_t helper_cvtsd2si (XMMReg *);
19742 void helper_cvttps2dq (XMMReg *, XMMReg *);
19743 void helper_cvttpd2dq (XMMReg *, XMMReg *);
19744 void helper_cvttps2pi (MMXReg *, XMMReg *);
19745 void helper_cvttpd2pi (MMXReg *, XMMReg *);
19746 int32_t helper_cvttss2si (XMMReg *);
19747 int32_t helper_cvttsd2si (XMMReg *);
19753 void helper_rsqrtps (XMMReg *, XMMReg *);
19754 void helper_rsqrtss (XMMReg *, XMMReg *);
19755 void helper_rcpps (XMMReg *, XMMReg *);
19756 void helper_rcpss (XMMReg *, XMMReg *);
19757 void helper_extrq_r (XMMReg *, XMMReg *);
19758 void helper_extrq_i (XMMReg *, int, int);
19759 void helper_insertq_r (XMMReg *, XMMReg *);
19760 void helper_insertq_i (XMMReg *, int, int);
19761 void helper_haddps (XMMReg *, XMMReg *);
19762 void helper_haddpd (XMMReg *, XMMReg *);
19763 void helper_hsubps (XMMReg *, XMMReg *);
19764 void helper_hsubpd (XMMReg *, XMMReg *);
19765 void helper_addsubps (XMMReg *, XMMReg *);
19766 void helper_addsubpd (XMMReg *, XMMReg *);
19774 void helper_cmpeqps (XMMReg *, XMMReg *); void helper_cmpeqss (XMMReg *, XMMReg *); void helper_cmpeqpd (XMMReg *, XMMReg *); void helper_cmpeqsd (XMMReg *, XMMReg *);
19775 void helper_cmpltps (XMMReg *, XMMReg *); void helper_cmpltss (XMMReg *, XMMReg *); void helper_cmpltpd (XMMReg *, XMMReg *); void helper_cmpltsd (XMMReg *, XMMReg *);
19776 void helper_cmpleps (XMMReg *, XMMReg *); void helper_cmpless (XMMReg *, XMMReg *); void helper_cmplepd (XMMReg *, XMMReg *); void helper_cmplesd (XMMReg *, XMMReg *);
19777 void helper_cmpunordps (XMMReg *, XMMReg *); void helper_cmpunordss (XMMReg *, XMMReg *); void helper_cmpunordpd (XMMReg *, XMMReg *); void helper_cmpunordsd (XMMReg *, XMMReg *);
19778 void helper_cmpneqps (XMMReg *, XMMReg *); void helper_cmpneqss (XMMReg *, XMMReg *); void helper_cmpneqpd (XMMReg *, XMMReg *); void helper_cmpneqsd (XMMReg *, XMMReg *);
19779 void helper_cmpnltps (XMMReg *, XMMReg *); void helper_cmpnltss (XMMReg *, XMMReg *); void helper_cmpnltpd (XMMReg *, XMMReg *); void helper_cmpnltsd (XMMReg *, XMMReg *);
19780 void helper_cmpnleps (XMMReg *, XMMReg *); void helper_cmpnless (XMMReg *, XMMReg *); void helper_cmpnlepd (XMMReg *, XMMReg *); void helper_cmpnlesd (XMMReg *, XMMReg *);
19781 void helper_cmpordps (XMMReg *, XMMReg *); void helper_cmpordss (XMMReg *, XMMReg *); void helper_cmpordpd (XMMReg *, XMMReg *); void helper_cmpordsd (XMMReg *, XMMReg *);
19783 void helper_ucomiss (XMMReg *, XMMReg *);
19784 void helper_comiss (XMMReg *, XMMReg *);
19785 void helper_ucomisd (XMMReg *, XMMReg *);
19786 void helper_comisd (XMMReg *, XMMReg *);
19787 uint32_t helper_movmskps (XMMReg *);
19788 uint32_t helper_movmskpd (XMMReg *);
19791 uint32_t helper_pmovmskb_xmm (XMMReg *);
19792 void helper_packsswb_xmm (XMMReg *, XMMReg *);
19793 void helper_packuswb_xmm (XMMReg *, XMMReg *);
19794 void helper_packssdw_xmm (XMMReg *, XMMReg *);
19800 void helper_punpcklbw_xmm (XMMReg *, XMMReg *); void helper_punpcklwd_xmm (XMMReg *, XMMReg *); void helper_punpckldq_xmm (XMMReg *, XMMReg *);
19801 void helper_punpckhbw_xmm (XMMReg *, XMMReg *); void helper_punpckhwd_xmm (XMMReg *, XMMReg *); void helper_punpckhdq_xmm (XMMReg *, XMMReg *);
19804 void helper_punpcklqdq_xmm (XMMReg *, XMMReg *);
19805 void helper_punpckhqdq_xmm (XMMReg *, XMMReg *);
19806 # 268 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse_header.h"
19807 void helper_phaddw_xmm (XMMReg *, XMMReg *);
19808 void helper_phaddd_xmm (XMMReg *, XMMReg *);
19809 void helper_phaddsw_xmm (XMMReg *, XMMReg *);
19810 void helper_phsubw_xmm (XMMReg *, XMMReg *);
19811 void helper_phsubd_xmm (XMMReg *, XMMReg *);
19812 void helper_phsubsw_xmm (XMMReg *, XMMReg *);
19813 void helper_pabsb_xmm (XMMReg *, XMMReg *);
19814 void helper_pabsw_xmm (XMMReg *, XMMReg *);
19815 void helper_pabsd_xmm (XMMReg *, XMMReg *);
19816 void helper_pmaddubsw_xmm (XMMReg *, XMMReg *);
19817 void helper_pmulhrsw_xmm (XMMReg *, XMMReg *);
19818 void helper_pshufb_xmm (XMMReg *, XMMReg *);
19819 void helper_psignb_xmm (XMMReg *, XMMReg *);
19820 void helper_psignw_xmm (XMMReg *, XMMReg *);
19821 void helper_psignd_xmm (XMMReg *, XMMReg *);
19822 void helper_palignr_xmm (XMMReg *, XMMReg *, int32_t);
19826 void helper_pblendvb_xmm (XMMReg *, XMMReg *);
19827 void helper_blendvps_xmm (XMMReg *, XMMReg *);
19828 void helper_blendvpd_xmm (XMMReg *, XMMReg *);
19829 void helper_ptest_xmm (XMMReg *, XMMReg *);
19830 void helper_pmovsxbw_xmm (XMMReg *, XMMReg *);
19831 void helper_pmovsxbd_xmm (XMMReg *, XMMReg *);
19832 void helper_pmovsxbq_xmm (XMMReg *, XMMReg *);
19833 void helper_pmovsxwd_xmm (XMMReg *, XMMReg *);
19834 void helper_pmovsxwq_xmm (XMMReg *, XMMReg *);
19835 void helper_pmovsxdq_xmm (XMMReg *, XMMReg *);
19836 void helper_pmovzxbw_xmm (XMMReg *, XMMReg *);
19837 void helper_pmovzxbd_xmm (XMMReg *, XMMReg *);
19838 void helper_pmovzxbq_xmm (XMMReg *, XMMReg *);
19839 void helper_pmovzxwd_xmm (XMMReg *, XMMReg *);
19840 void helper_pmovzxwq_xmm (XMMReg *, XMMReg *);
19841 void helper_pmovzxdq_xmm (XMMReg *, XMMReg *);
19842 void helper_pmuldq_xmm (XMMReg *, XMMReg *);
19843 void helper_pcmpeqq_xmm (XMMReg *, XMMReg *);
19844 void helper_packusdw_xmm (XMMReg *, XMMReg *);
19845 void helper_pminsb_xmm (XMMReg *, XMMReg *);
19846 void helper_pminsd_xmm (XMMReg *, XMMReg *);
19847 void helper_pminuw_xmm (XMMReg *, XMMReg *);
19848 void helper_pminud_xmm (XMMReg *, XMMReg *);
19849 void helper_pmaxsb_xmm (XMMReg *, XMMReg *);
19850 void helper_pmaxsd_xmm (XMMReg *, XMMReg *);
19851 void helper_pmaxuw_xmm (XMMReg *, XMMReg *);
19852 void helper_pmaxud_xmm (XMMReg *, XMMReg *);
19853 void helper_pmulld_xmm (XMMReg *, XMMReg *);
19854 void helper_phminposuw_xmm (XMMReg *, XMMReg *);
19855 void helper_roundps_xmm (XMMReg *, XMMReg *, uint32_t);
19856 void helper_roundpd_xmm (XMMReg *, XMMReg *, uint32_t);
19857 void helper_roundss_xmm (XMMReg *, XMMReg *, uint32_t);
19858 void helper_roundsd_xmm (XMMReg *, XMMReg *, uint32_t);
19859 void helper_blendps_xmm (XMMReg *, XMMReg *, uint32_t);
19860 void helper_blendpd_xmm (XMMReg *, XMMReg *, uint32_t);
19861 void helper_pblendw_xmm (XMMReg *, XMMReg *, uint32_t);
19862 void helper_dpps_xmm (XMMReg *, XMMReg *, uint32_t);
19863 void helper_dppd_xmm (XMMReg *, XMMReg *, uint32_t);
19864 void helper_mpsadbw_xmm (XMMReg *, XMMReg *, uint32_t);
19869 void helper_pcmpgtq_xmm (XMMReg *, XMMReg *);
19870 void helper_pcmpestri_xmm (XMMReg *, XMMReg *, uint32_t);
19871 void helper_pcmpestrm_xmm (XMMReg *, XMMReg *, uint32_t);
19872 void helper_pcmpistri_xmm (XMMReg *, XMMReg *, uint32_t);
19873 void helper_pcmpistrm_xmm (XMMReg *, XMMReg *, uint32_t);
19874 target_ulong helper_crc32 (uint32_t, target_ulong, uint32_t);
19875 target_ulong helper_popcnt (target_ulong, uint32_t);
19876 # 209 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper.h" 2
19878 target_ulong helper_rclb (target_ulong, target_ulong);
19879 target_ulong helper_rclw (target_ulong, target_ulong);
19880 target_ulong helper_rcll (target_ulong, target_ulong);
19881 target_ulong helper_rcrb (target_ulong, target_ulong);
19882 target_ulong helper_rcrw (target_ulong, target_ulong);
19883 target_ulong helper_rcrl (target_ulong, target_ulong);
19889 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/def-helper.h" 1
19890 # 221 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper.h" 2
19891 # 28 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
19894 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 1
19895 # 27 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h"
19896 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
19897 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
19898 static __attribute__ (( always_inline )) __inline__ uint32_t
19908 page_index = (addr >> 12) & ((1 << 8) - 1);
19910 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
19916 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
19917 res = ldub_p((uint8_t *)(intptr_t)((hostaddr)));
19923 static __attribute__ (( always_inline )) __inline__ int
19927 int res, page_index;
19932 page_index = (addr >> 12) & ((1 << 8) - 1);
19934 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
19937 __ldb_mmu( addr, mmu_idx);
19939 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
19940 res = ldsb_p((uint8_t *)(intptr_t)((hostaddr)));
19950 static __attribute__ (( always_inline )) __inline__ void
19951 stb_kernel( target_ulong ptr,
19959 page_index = (addr >> 12) & ((1 << 8) - 1);
19961 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
19963 __stb_mmu( addr, v,
19966 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
19967 stb_p((uint8_t *)(intptr_t)((hostaddr)), v);
19970 # 28 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
19973 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
19974 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
19975 static __attribute__ (( always_inline )) __inline__ uint32_t
19985 page_index = (addr >> 12) & ((1 << 8) - 1);
19987 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
19993 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
19994 res = lduw_le_p((uint8_t *)(intptr_t)((hostaddr)));
20000 static __attribute__ (( always_inline )) __inline__ int
20004 int res, page_index;
20009 page_index = (addr >> 12) & ((1 << 8) - 1);
20011 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20014 __ldw_mmu( addr, mmu_idx);
20016 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20017 res = ldsw_le_p((uint8_t *)(intptr_t)((hostaddr)));
20027 static __attribute__ (( always_inline )) __inline__ void
20028 stw_kernel( target_ulong ptr,
20036 page_index = (addr >> 12) & ((1 << 8) - 1);
20038 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20040 __stw_mmu( addr, v,
20043 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20044 stw_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20047 # 31 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20050 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20051 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20052 static __attribute__ (( always_inline )) __inline__ uint32_t
20062 page_index = (addr >> 12) & ((1 << 8) - 1);
20064 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
20070 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20071 res = ldl_le_p((uint8_t *)(intptr_t)((hostaddr)));
20075 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20076 static __attribute__ (( always_inline )) __inline__ void
20077 stl_kernel( target_ulong ptr,
20085 page_index = (addr >> 12) & ((1 << 8) - 1);
20087 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
20089 __stl_mmu( addr, v,
20092 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20093 stl_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20096 # 198 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20097 static __attribute__ (( always_inline )) __inline__ float32 ldfl_kernel(
20104 u.i = ldl_kernel( ptr);
20108 static __attribute__ (( always_inline )) __inline__ void stfl_kernel(
20117 stl_kernel( ptr, u.i);
20119 # 34 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20122 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20123 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20124 static __attribute__ (( always_inline )) __inline__ uint64_t
20134 page_index = (addr >> 12) & ((1 << 8) - 1);
20136 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
20142 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20143 res = ldq_le_p((uint8_t *)(intptr_t)((hostaddr)));
20147 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20148 static __attribute__ (( always_inline )) __inline__ void
20149 stq_kernel( target_ulong ptr,
20157 page_index = (addr >> 12) & ((1 << 8) - 1);
20159 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
20161 __stq_mmu( addr, v,
20164 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20165 stq_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20174 static __attribute__ (( always_inline )) __inline__ float64 ldfq_kernel(
20181 u.i = ldq_kernel( ptr);
20185 static __attribute__ (( always_inline )) __inline__ void stfq_kernel(
20194 stq_kernel( ptr, u.i);
20196 # 37 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20203 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20204 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20205 static __attribute__ (( always_inline )) __inline__ uint32_t
20215 page_index = (addr >> 12) & ((1 << 8) - 1);
20217 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
20223 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20224 res = ldub_p((uint8_t *)(intptr_t)((hostaddr)));
20230 static __attribute__ (( always_inline )) __inline__ int
20234 int res, page_index;
20239 page_index = (addr >> 12) & ((1 << 8) - 1);
20241 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
20244 __ldb_mmu( addr, mmu_idx);
20246 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20247 res = ldsb_p((uint8_t *)(intptr_t)((hostaddr)));
20257 static __attribute__ (( always_inline )) __inline__ void
20258 stb_user( target_ulong ptr,
20266 page_index = (addr >> 12) & ((1 << 8) - 1);
20268 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
20270 __stb_mmu( addr, v,
20273 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20274 stb_p((uint8_t *)(intptr_t)((hostaddr)), v);
20277 # 44 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20280 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20281 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20282 static __attribute__ (( always_inline )) __inline__ uint32_t
20292 page_index = (addr >> 12) & ((1 << 8) - 1);
20294 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20300 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20301 res = lduw_le_p((uint8_t *)(intptr_t)((hostaddr)));
20307 static __attribute__ (( always_inline )) __inline__ int
20311 int res, page_index;
20316 page_index = (addr >> 12) & ((1 << 8) - 1);
20318 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20321 __ldw_mmu( addr, mmu_idx);
20323 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20324 res = ldsw_le_p((uint8_t *)(intptr_t)((hostaddr)));
20334 static __attribute__ (( always_inline )) __inline__ void
20335 stw_user( target_ulong ptr,
20343 page_index = (addr >> 12) & ((1 << 8) - 1);
20345 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20347 __stw_mmu( addr, v,
20350 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20351 stw_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20354 # 47 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20357 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20358 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20359 static __attribute__ (( always_inline )) __inline__ uint32_t
20369 page_index = (addr >> 12) & ((1 << 8) - 1);
20371 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
20377 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20378 res = ldl_le_p((uint8_t *)(intptr_t)((hostaddr)));
20382 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20383 static __attribute__ (( always_inline )) __inline__ void
20384 stl_user( target_ulong ptr,
20392 page_index = (addr >> 12) & ((1 << 8) - 1);
20394 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
20396 __stl_mmu( addr, v,
20399 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20400 stl_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20403 # 198 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20404 static __attribute__ (( always_inline )) __inline__ float32 ldfl_user(
20411 u.i = ldl_user( ptr);
20415 static __attribute__ (( always_inline )) __inline__ void stfl_user(
20424 stl_user( ptr, u.i);
20426 # 50 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20429 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20430 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20431 static __attribute__ (( always_inline )) __inline__ uint64_t
20441 page_index = (addr >> 12) & ((1 << 8) - 1);
20443 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
20449 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20450 res = ldq_le_p((uint8_t *)(intptr_t)((hostaddr)));
20454 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20455 static __attribute__ (( always_inline )) __inline__ void
20456 stq_user( target_ulong ptr,
20464 page_index = (addr >> 12) & ((1 << 8) - 1);
20466 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
20468 __stq_mmu( addr, v,
20471 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20472 stq_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20481 static __attribute__ (( always_inline )) __inline__ float64 ldfq_user(
20488 u.i = ldq_user( ptr);
20492 static __attribute__ (( always_inline )) __inline__ void stfq_user(
20501 stq_user( ptr, u.i);
20503 # 53 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20504 # 140 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h"
20505 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20506 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20507 static __attribute__ (( always_inline )) __inline__ uint32_t
20517 page_index = (addr >> 12) & ((1 << 8) - 1);
20518 mmu_idx = (cpu_mmu_index(env));
20519 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
20525 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20526 res = ldub_p((uint8_t *)(intptr_t)((hostaddr)));
20532 static __attribute__ (( always_inline )) __inline__ int
20536 int res, page_index;
20541 page_index = (addr >> 12) & ((1 << 8) - 1);
20542 mmu_idx = (cpu_mmu_index(env));
20543 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
20546 __ldb_mmu( addr, mmu_idx);
20548 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20549 res = ldsb_p((uint8_t *)(intptr_t)((hostaddr)));
20559 static __attribute__ (( always_inline )) __inline__ void
20560 stb_data( target_ulong ptr,
20568 page_index = (addr >> 12) & ((1 << 8) - 1);
20569 mmu_idx = (cpu_mmu_index(env));
20570 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (1 - 1)))), 0)
20572 __stb_mmu( addr, v,
20575 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20576 stb_p((uint8_t *)(intptr_t)((hostaddr)), v);
20579 # 141 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20582 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20583 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20584 static __attribute__ (( always_inline )) __inline__ uint32_t
20594 page_index = (addr >> 12) & ((1 << 8) - 1);
20595 mmu_idx = (cpu_mmu_index(env));
20596 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20602 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20603 res = lduw_le_p((uint8_t *)(intptr_t)((hostaddr)));
20609 static __attribute__ (( always_inline )) __inline__ int
20613 int res, page_index;
20618 page_index = (addr >> 12) & ((1 << 8) - 1);
20619 mmu_idx = (cpu_mmu_index(env));
20620 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20623 __ldw_mmu( addr, mmu_idx);
20625 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20626 res = ldsw_le_p((uint8_t *)(intptr_t)((hostaddr)));
20636 static __attribute__ (( always_inline )) __inline__ void
20637 stw_data( target_ulong ptr,
20645 page_index = (addr >> 12) & ((1 << 8) - 1);
20646 mmu_idx = (cpu_mmu_index(env));
20647 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (2 - 1)))), 0)
20649 __stw_mmu( addr, v,
20652 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20653 stw_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20656 # 144 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20659 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20660 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20661 static __attribute__ (( always_inline )) __inline__ uint32_t
20671 page_index = (addr >> 12) & ((1 << 8) - 1);
20672 mmu_idx = (cpu_mmu_index(env));
20673 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
20679 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20680 res = ldl_le_p((uint8_t *)(intptr_t)((hostaddr)));
20684 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20685 static __attribute__ (( always_inline )) __inline__ void
20686 stl_data( target_ulong ptr,
20694 page_index = (addr >> 12) & ((1 << 8) - 1);
20695 mmu_idx = (cpu_mmu_index(env));
20696 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (4 - 1)))), 0)
20698 __stl_mmu( addr, v,
20701 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20702 stl_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20705 # 198 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20706 static __attribute__ (( always_inline )) __inline__ float32 ldfl_data(
20713 u.i = ldl_data( ptr);
20717 static __attribute__ (( always_inline )) __inline__ void stfl_data(
20726 stl_data( ptr, u.i);
20728 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20731 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h" 1
20732 # 95 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20733 static __attribute__ (( always_inline )) __inline__ uint64_t
20743 page_index = (addr >> 12) & ((1 << 8) - 1);
20744 mmu_idx = (cpu_mmu_index(env));
20745 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_read != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
20751 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20752 res = ldq_le_p((uint8_t *)(intptr_t)((hostaddr)));
20756 # 147 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_header.h"
20757 static __attribute__ (( always_inline )) __inline__ void
20758 stq_data( target_ulong ptr,
20766 page_index = (addr >> 12) & ((1 << 8) - 1);
20767 mmu_idx = (cpu_mmu_index(env));
20768 if (__builtin_expect(!!(env->tlb_table[mmu_idx][page_index].addr_write != (addr & (~((1 << 12) - 1) | (8 - 1)))), 0)
20770 __stq_mmu( addr, v,
20773 uintptr_t hostaddr = addr + env->tlb_table[mmu_idx][page_index].addend;
20774 stq_le_p((uint8_t *)(intptr_t)((hostaddr)), v);
20783 static __attribute__ (( always_inline )) __inline__ float64 ldfq_data(
20790 u.i = ldq_data( ptr);
20794 static __attribute__ (( always_inline )) __inline__ void stfq_data(
20803 stq_data( ptr, u.i);
20805 # 150 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_exec.h" 2
20806 # 31 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
20807 # 45 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
20808 static __attribute__ (( always_inline )) __inline__ target_long lshift(target_long x, int n)
20816 # 70 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
20817 static __attribute__ (( always_inline )) __inline__ void fpush(void)
20819 env->fpstt = (env->fpstt - 1) & 7;
20820 env->fptags[env->fpstt] = 0;
20823 static __attribute__ (( always_inline )) __inline__ void fpop(void)
20825 env->fptags[env->fpstt] = 1;
20826 env->fpstt = (env->fpstt + 1) & 7;
20829 static __attribute__ (( always_inline )) __inline__ floatx80 helper_fldt(target_ulong ptr)
20833 temp.l.lower = ldq_data(ptr);
20834 temp.l.upper = lduw_data(ptr + 8);
20838 static __attribute__ (( always_inline )) __inline__ void helper_fstt(floatx80 f, target_ulong ptr)
20843 stq_data(ptr, temp.l.lower);
20844 stw_data(ptr + 8, temp.l.upper);
20846 # 112 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
20847 static __attribute__ (( always_inline )) __inline__ uint32_t compute_eflags(void)
20849 return env->eflags | helper_cc_compute_all((env->cc_op)) | ((env->df) & 0x00000400);
20853 static __attribute__ (( always_inline )) __inline__ void load_eflags(int eflags, int update_mask)
20855 (env->cc_src) = eflags & (0x0800 | 0x0080 | 0x0040 | 0x0010 | 0x0004 | 0x0001);
20856 (env->df) = 1 - (2 * ((eflags >> 10) & 1));
20857 env->eflags = (env->eflags & ~update_mask) |
20858 (eflags & update_mask) | 0x2;
20863 static __attribute__ (( always_inline )) __inline__ void cpu_load_efer(CPUX86State *env, uint64_t val)
20866 env->hflags &= ~((1 << 14) | (1 << 20));
20867 if (env->efer & (1 << 10)) {
20868 env->hflags |= (1 << 14);
20870 if (env->efer & (1 << 12)) {
20871 env->hflags |= (1 << 20);
20874 # 148 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
20875 static void __attribute__ ((__noreturn__)) raise_exception_err(int exception_index,
20878 static const uint8_t parity_table[256] = {
20879 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20880 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20881 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20882 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20883 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20884 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20885 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20886 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20887 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20888 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20889 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20890 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20891 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20892 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20893 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20894 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20895 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20896 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20897 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20898 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20899 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20900 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20901 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20902 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20903 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20904 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20905 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20906 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20907 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20908 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20909 0x0004, 0, 0, 0x0004, 0, 0x0004, 0x0004, 0,
20910 0, 0x0004, 0x0004, 0, 0x0004, 0, 0, 0x0004,
20914 static const uint8_t rclw_table[32] = {
20915 0, 1, 2, 3, 4, 5, 6, 7,
20916 8, 9,10,11,12,13,14,15,
20917 16, 0, 1, 2, 3, 4, 5, 6,
20918 7, 8, 9,10,11,12,13,14,
20922 static const uint8_t rclb_table[32] = {
20923 0, 1, 2, 3, 4, 5, 6, 7,
20924 8, 0, 1, 2, 3, 4, 5, 6,
20925 7, 8, 0, 1, 2, 3, 4, 5,
20926 6, 7, 8, 0, 1, 2, 3, 4,
20935 static spinlock_t global_cpu_lock = 0;
20937 void helper_lock(void)
20939 spin_lock(&global_cpu_lock);
20942 void helper_unlock(void)
20944 spin_unlock(&global_cpu_lock);
20947 void helper_write_eflags(target_ulong t0, uint32_t update_mask)
20949 load_eflags(t0, update_mask);
20952 target_ulong helper_read_eflags(void)
20955 eflags = helper_cc_compute_all((env->cc_op));
20956 eflags |= ((env->df) & 0x00000400);
20957 eflags |= env->eflags & ~(0x00020000 | 0x00010000);
20962 static __attribute__ (( always_inline )) __inline__ int load_segment(uint32_t *e1_ptr, uint32_t *e2_ptr,
20969 if (selector & 0x4)
20973 index = selector & ~7;
20974 if ((index + 7) > dt->limit)
20976 ptr = dt->base + index;
20977 *e1_ptr = ldl_kernel(ptr);
20978 *e2_ptr = ldl_kernel(ptr + 4);
20982 static __attribute__ (( always_inline )) __inline__ unsigned int get_seg_limit(uint32_t e1, uint32_t e2)
20984 unsigned int limit;
20985 limit = (e1 & 0xffff) | (e2 & 0x000f0000);
20986 if (e2 & (1 << 23))
20987 limit = (limit << 12) | 0xfff;
20991 static __attribute__ (( always_inline )) __inline__ uint32_t get_seg_base(uint32_t e1, uint32_t e2)
20993 return ((e1 >> 16) | ((e2 & 0xff) << 16) | (e2 & 0xff000000));
20996 static __attribute__ (( always_inline )) __inline__ void load_seg_cache_raw_dt(SegmentCache *sc, uint32_t e1, uint32_t e2)
20998 sc->base = get_seg_base(e1, e2);
20999 sc->limit = get_seg_limit(e1, e2);
21004 static __attribute__ (( always_inline )) __inline__ void load_seg_vm(int seg, int selector)
21006 selector &= 0xffff;
21007 cpu_x86_load_seg_cache(env, seg, selector,
21008 (selector << 4), 0xffff, 0);
21011 static __attribute__ (( always_inline )) __inline__ void get_ss_esp_from_tss(uint32_t *ss_ptr,
21012 uint32_t *esp_ptr, int dpl)
21014 int type, index, shift;
21015 # 301 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21016 if (!(env->tr.flags & (1 << 15)))
21017 cpu_abort(env, "invalid tss");
21018 type = (env->tr.flags >> 8) & 0xf;
21019 if ((type & 7) != 1)
21020 cpu_abort(env, "invalid tss type");
21022 index = (dpl * 4 + 2) << shift;
21023 if (index + (4 << shift) - 1 > env->tr.limit)
21024 raise_exception_err(10, env->tr.selector & 0xfffc);
21026 *esp_ptr = lduw_kernel(env->tr.base + index);
21027 *ss_ptr = lduw_kernel(env->tr.base + index + 2);
21029 *esp_ptr = ldl_kernel(env->tr.base + index);
21030 *ss_ptr = lduw_kernel(env->tr.base + index + 4);
21035 static void tss_load_seg(int seg_reg, int selector)
21040 if ((selector & 0xfffc) != 0) {
21041 if (load_segment(&e1, &e2, selector) != 0)
21042 raise_exception_err(10, selector & 0xfffc);
21043 if (!(e2 & (1 << 12)))
21044 raise_exception_err(10, selector & 0xfffc);
21045 rpl = selector & 3;
21046 dpl = (e2 >> 13) & 3;
21047 cpl = env->hflags & (3 << 0);
21048 if (seg_reg == 1) {
21049 if (!(e2 & (1 << 11)))
21050 raise_exception_err(10, selector & 0xfffc);
21053 raise_exception_err(10, selector & 0xfffc);
21054 if ((e2 & (1 << 10)) && dpl > rpl)
21055 raise_exception_err(10, selector & 0xfffc);
21056 } else if (seg_reg == 2) {
21058 if ((e2 & (1 << 11)) || !(e2 & (1 << 9)))
21059 raise_exception_err(10, selector & 0xfffc);
21060 if (dpl != cpl || dpl != rpl)
21061 raise_exception_err(10, selector & 0xfffc);
21064 if ((e2 & (1 << 11)) && !(e2 & (1 << 9)))
21065 raise_exception_err(10, selector & 0xfffc);
21067 if (((e2 >> 8) & 0xf) < 12) {
21068 if (dpl < cpl || dpl < rpl)
21069 raise_exception_err(10, selector & 0xfffc);
21072 if (!(e2 & (1 << 15)))
21073 raise_exception_err(11, selector & 0xfffc);
21074 cpu_x86_load_seg_cache(env, seg_reg, selector,
21075 get_seg_base(e1, e2),
21076 get_seg_limit(e1, e2),
21079 if (seg_reg == 2 || seg_reg == 1)
21080 raise_exception_err(10, selector & 0xfffc);
21089 static void switch_tss(int tss_selector,
21090 uint32_t e1, uint32_t e2, int source,
21093 int tss_limit, tss_limit_max, type, old_tss_limit_max, old_type, v1, v2, i;
21094 target_ulong tss_base;
21095 uint32_t new_regs[8], new_segs[6];
21096 uint32_t new_eflags, new_eip, new_cr3, new_ldt, new_trap;
21097 uint32_t old_eflags, eflags_mask;
21102 type = (e2 >> 8) & 0xf;
21107 if (!(e2 & (1 << 15)))
21108 raise_exception_err(11, tss_selector & 0xfffc);
21109 tss_selector = e1 >> 16;
21110 if (tss_selector & 4)
21111 raise_exception_err(10, tss_selector & 0xfffc);
21112 if (load_segment(&e1, &e2, tss_selector) != 0)
21113 raise_exception_err(13, tss_selector & 0xfffc);
21114 if (e2 & (1 << 12))
21115 raise_exception_err(13, tss_selector & 0xfffc);
21116 type = (e2 >> 8) & 0xf;
21117 if ((type & 7) != 1)
21118 raise_exception_err(13, tss_selector & 0xfffc);
21121 if (!(e2 & (1 << 15)))
21122 raise_exception_err(11, tss_selector & 0xfffc);
21125 tss_limit_max = 103;
21127 tss_limit_max = 43;
21128 tss_limit = get_seg_limit(e1, e2);
21129 tss_base = get_seg_base(e1, e2);
21130 if ((tss_selector & 4) != 0 ||
21131 tss_limit < tss_limit_max)
21132 raise_exception_err(10, tss_selector & 0xfffc);
21133 old_type = (env->tr.flags >> 8) & 0xf;
21135 old_tss_limit_max = 103;
21137 old_tss_limit_max = 43;
21142 new_cr3 = ldl_kernel(tss_base + 0x1c);
21143 new_eip = ldl_kernel(tss_base + 0x20);
21144 new_eflags = ldl_kernel(tss_base + 0x24);
21145 for(i = 0; i < 8; i++)
21146 new_regs[i] = ldl_kernel(tss_base + (0x28 + i * 4));
21147 for(i = 0; i < 6; i++)
21148 new_segs[i] = lduw_kernel(tss_base + (0x48 + i * 4));
21149 new_ldt = lduw_kernel(tss_base + 0x60);
21150 new_trap = ldl_kernel(tss_base + 0x64);
21154 new_eip = lduw_kernel(tss_base + 0x0e);
21155 new_eflags = lduw_kernel(tss_base + 0x10);
21156 for(i = 0; i < 8; i++)
21157 new_regs[i] = lduw_kernel(tss_base + (0x12 + i * 2)) | 0xffff0000;
21158 for(i = 0; i < 4; i++)
21159 new_segs[i] = lduw_kernel(tss_base + (0x22 + i * 4));
21160 new_ldt = lduw_kernel(tss_base + 0x2a);
21175 v1 = ldub_kernel(env->tr.base);
21176 v2 = ldub_kernel(env->tr.base + old_tss_limit_max);
21177 stb_kernel(env->tr.base, v1);
21178 stb_kernel(env->tr.base + old_tss_limit_max, v2);
21181 if (source == 0 || source == 1) {
21184 ptr = env->gdt.base + (env->tr.selector & ~7);
21185 e2 = ldl_kernel(ptr + 4);
21187 stl_kernel(ptr + 4, e2);
21189 old_eflags = compute_eflags();
21191 old_eflags &= ~0x00004000;
21196 stl_kernel(env->tr.base + 0x20, next_eip);
21197 stl_kernel(env->tr.base + 0x24, old_eflags);
21198 stl_kernel(env->tr.base + (0x28 + 0 * 4), (env->regs[0]));
21199 stl_kernel(env->tr.base + (0x28 + 1 * 4), (env->regs[1]));
21200 stl_kernel(env->tr.base + (0x28 + 2 * 4), (env->regs[2]));
21201 stl_kernel(env->tr.base + (0x28 + 3 * 4), (env->regs[3]));
21202 stl_kernel(env->tr.base + (0x28 + 4 * 4), (env->regs[4]));
21203 stl_kernel(env->tr.base + (0x28 + 5 * 4), (env->regs[5]));
21204 stl_kernel(env->tr.base + (0x28 + 6 * 4), (env->regs[6]));
21205 stl_kernel(env->tr.base + (0x28 + 7 * 4), (env->regs[7]));
21206 for(i = 0; i < 6; i++)
21207 stw_kernel(env->tr.base + (0x48 + i * 4), env->segs[i].selector);
21210 stw_kernel(env->tr.base + 0x0e, next_eip);
21211 stw_kernel(env->tr.base + 0x10, old_eflags);
21212 stw_kernel(env->tr.base + (0x12 + 0 * 2), (env->regs[0]));
21213 stw_kernel(env->tr.base + (0x12 + 1 * 2), (env->regs[1]));
21214 stw_kernel(env->tr.base + (0x12 + 2 * 2), (env->regs[2]));
21215 stw_kernel(env->tr.base + (0x12 + 3 * 2), (env->regs[3]));
21216 stw_kernel(env->tr.base + (0x12 + 4 * 2), (env->regs[4]));
21217 stw_kernel(env->tr.base + (0x12 + 5 * 2), (env->regs[5]));
21218 stw_kernel(env->tr.base + (0x12 + 6 * 2), (env->regs[6]));
21219 stw_kernel(env->tr.base + (0x12 + 7 * 2), (env->regs[7]));
21220 for(i = 0; i < 4; i++)
21221 stw_kernel(env->tr.base + (0x22 + i * 4), env->segs[i].selector);
21228 stw_kernel(tss_base, env->tr.selector);
21229 new_eflags |= 0x00004000;
21233 if (source == 0 || source == 2) {
21236 ptr = env->gdt.base + (tss_selector & ~7);
21237 e2 = ldl_kernel(ptr + 4);
21239 stl_kernel(ptr + 4, e2);
21244 env->cr[0] |= (1 << 3);
21245 env->hflags |= (1 << 11);
21246 env->tr.selector = tss_selector;
21247 env->tr.base = tss_base;
21248 env->tr.limit = tss_limit;
21249 env->tr.flags = e2 & ~(1 << 9);
21251 if ((type & 8) && (env->cr[0] & (1 << 31))) {
21252 cpu_x86_update_cr3(env, new_cr3);
21257 env->eip = new_eip;
21258 eflags_mask = 0x00000100 | 0x00040000 | 0x00200000 |
21259 0x00000200 | 0x00003000 | 0x00020000 | 0x00010000 | 0x00004000;
21261 eflags_mask &= 0xffff;
21262 load_eflags(new_eflags, eflags_mask);
21264 (env->regs[0]) = new_regs[0];
21265 (env->regs[1]) = new_regs[1];
21266 (env->regs[2]) = new_regs[2];
21267 (env->regs[3]) = new_regs[3];
21268 (env->regs[4]) = new_regs[4];
21269 (env->regs[5]) = new_regs[5];
21270 (env->regs[6]) = new_regs[6];
21271 (env->regs[7]) = new_regs[7];
21272 if (new_eflags & 0x00020000) {
21273 for(i = 0; i < 6; i++)
21274 load_seg_vm(i, new_segs[i]);
21276 cpu_x86_set_cpl(env, 3);
21279 cpu_x86_set_cpl(env, new_segs[1] & 3);
21281 for(i = 0; i < 6; i++)
21282 cpu_x86_load_seg_cache(env, i, new_segs[i], 0, 0, 0);
21285 env->ldt.selector = new_ldt & ~4;
21287 env->ldt.limit = 0;
21288 env->ldt.flags = 0;
21292 raise_exception_err(10, new_ldt & 0xfffc);
21294 if ((new_ldt & 0xfffc) != 0) {
21296 index = new_ldt & ~7;
21297 if ((index + 7) > dt->limit)
21298 raise_exception_err(10, new_ldt & 0xfffc);
21299 ptr = dt->base + index;
21300 e1 = ldl_kernel(ptr);
21301 e2 = ldl_kernel(ptr + 4);
21302 if ((e2 & (1 << 12)) || ((e2 >> 8) & 0xf) != 2)
21303 raise_exception_err(10, new_ldt & 0xfffc);
21304 if (!(e2 & (1 << 15)))
21305 raise_exception_err(10, new_ldt & 0xfffc);
21306 load_seg_cache_raw_dt(&env->ldt, e1, e2);
21310 if (!(new_eflags & 0x00020000)) {
21311 tss_load_seg(1, new_segs[1]);
21312 tss_load_seg(2, new_segs[2]);
21313 tss_load_seg(0, new_segs[0]);
21314 tss_load_seg(3, new_segs[3]);
21315 tss_load_seg(4, new_segs[4]);
21316 tss_load_seg(5, new_segs[5]);
21320 if (new_eip > env->segs[1].limit) {
21322 raise_exception_err(13, 0);
21327 if (env->dr[7] & 0x55) {
21328 for (i = 0; i < 4; i++) {
21329 if (hw_breakpoint_enabled(env->dr[7], i) == 0x1)
21330 hw_breakpoint_remove(env, i);
21332 env->dr[7] &= ~0x55;
21338 static __attribute__ (( always_inline )) __inline__ void check_io(int addr, int size)
21340 int io_offset, val, mask;
21343 if (!(env->tr.flags & (1 << 15)) ||
21344 ((env->tr.flags >> 8) & 0xf) != 9 ||
21345 env->tr.limit < 103)
21347 io_offset = lduw_kernel(env->tr.base + 0x66);
21348 io_offset += (addr >> 3);
21350 if ((io_offset + 1) > env->tr.limit)
21352 val = lduw_kernel(env->tr.base + io_offset);
21353 val >>= (addr & 7);
21354 mask = (1 << size) - 1;
21356 if ((val & mask) != 0) {
21358 raise_exception_err(13, 0);
21362 void helper_check_iob(uint32_t t0)
21367 void helper_check_iow(uint32_t t0)
21372 void helper_check_iol(uint32_t t0)
21377 void helper_outb(uint32_t port, uint32_t data)
21379 cpu_outb(port, data & 0xff);
21382 target_ulong helper_inb(uint32_t port)
21384 return cpu_inb(port);
21387 void helper_outw(uint32_t port, uint32_t data)
21389 cpu_outw(port, data & 0xffff);
21392 target_ulong helper_inw(uint32_t port)
21394 return cpu_inw(port);
21397 void helper_outl(uint32_t port, uint32_t data)
21399 cpu_outl(port, data);
21402 target_ulong helper_inl(uint32_t port)
21404 return cpu_inl(port);
21407 static __attribute__ (( always_inline )) __inline__ unsigned int get_sp_mask(unsigned int e2)
21409 if (e2 & (1 << 22))
21415 static int exeption_has_error_code(int intno)
21429 # 759 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21430 static void do_interrupt_protected(int intno, int is_int, int error_code,
21431 unsigned int next_eip, int is_hw)
21434 target_ulong ptr, ssp;
21435 int type, dpl, selector, ss_dpl, cpl;
21436 int has_error_code, new_stack, shift;
21437 uint32_t e1, e2, offset, ss = 0, esp, ss_e1 = 0, ss_e2 = 0;
21438 uint32_t old_eip, sp_mask;
21440 has_error_code = 0;
21441 if (!is_int && !is_hw)
21442 has_error_code = exeption_has_error_code(intno);
21444 old_eip = next_eip;
21446 old_eip = env->eip;
21449 if (intno * 8 + 7 > dt->limit)
21450 raise_exception_err(13, intno * 8 + 2);
21451 ptr = dt->base + intno * 8;
21452 e1 = ldl_kernel(ptr);
21453 e2 = ldl_kernel(ptr + 4);
21455 type = (e2 >> 8) & 0x1f;
21459 if (!(e2 & (1 << 15)))
21460 raise_exception_err(11, intno * 8 + 2);
21461 switch_tss(intno * 8, e1, e2, 2, old_eip);
21462 if (has_error_code) {
21466 type = (env->tr.flags >> 8) & 0xf;
21468 if (env->segs[2].flags & (1 << 22))
21472 esp = ((env->regs[4]) - (2 << shift)) & mask;
21473 ssp = env->segs[2].base + esp;
21475 stl_kernel(ssp, error_code);
21477 stw_kernel(ssp, error_code);
21478 (env->regs[4]) = ((env->regs[4]) & ~(mask)) | ((esp) & (mask));
21487 raise_exception_err(13, intno * 8 + 2);
21490 dpl = (e2 >> 13) & 3;
21491 cpl = env->hflags & (3 << 0);
21493 if (is_int && dpl < cpl)
21494 raise_exception_err(13, intno * 8 + 2);
21496 if (!(e2 & (1 << 15)))
21497 raise_exception_err(11, intno * 8 + 2);
21498 selector = e1 >> 16;
21499 offset = (e2 & 0xffff0000) | (e1 & 0x0000ffff);
21500 if ((selector & 0xfffc) == 0)
21501 raise_exception_err(13, 0);
21503 if (load_segment(&e1, &e2, selector) != 0)
21504 raise_exception_err(13, selector & 0xfffc);
21505 if (!(e2 & (1 << 12)) || !(e2 & ((1 << 11))))
21506 raise_exception_err(13, selector & 0xfffc);
21507 dpl = (e2 >> 13) & 3;
21509 raise_exception_err(13, selector & 0xfffc);
21510 if (!(e2 & (1 << 15)))
21511 raise_exception_err(11, selector & 0xfffc);
21512 if (!(e2 & (1 << 10)) && dpl < cpl) {
21514 get_ss_esp_from_tss(&ss, &esp, dpl);
21515 if ((ss & 0xfffc) == 0)
21516 raise_exception_err(10, ss & 0xfffc);
21517 if ((ss & 3) != dpl)
21518 raise_exception_err(10, ss & 0xfffc);
21519 if (load_segment(&ss_e1, &ss_e2, ss) != 0)
21520 raise_exception_err(10, ss & 0xfffc);
21521 ss_dpl = (ss_e2 >> 13) & 3;
21523 raise_exception_err(10, ss & 0xfffc);
21524 if (!(ss_e2 & (1 << 12)) ||
21525 (ss_e2 & (1 << 11)) ||
21526 !(ss_e2 & (1 << 9)))
21527 raise_exception_err(10, ss & 0xfffc);
21528 if (!(ss_e2 & (1 << 15)))
21529 raise_exception_err(10, ss & 0xfffc);
21531 sp_mask = get_sp_mask(ss_e2);
21532 ssp = get_seg_base(ss_e1, ss_e2);
21533 } else if ((e2 & (1 << 10)) || dpl == cpl) {
21535 if (env->eflags & 0x00020000)
21536 raise_exception_err(13, selector & 0xfffc);
21538 sp_mask = get_sp_mask(env->segs[2].flags);
21539 ssp = env->segs[2].base;
21540 esp = (env->regs[4]);
21543 raise_exception_err(13, selector & 0xfffc);
21551 # 888 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21554 if (env->eflags & 0x00020000) {
21555 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(env->segs[5].selector));};
21556 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(env->segs[4].selector));};
21557 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(env->segs[3].selector));};
21558 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(env->segs[0].selector));};
21560 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(env->segs[2].selector));};
21561 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)((env->regs[4])));};
21563 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(compute_eflags()));};
21564 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(env->segs[1].selector));};
21565 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(old_eip));};
21566 if (has_error_code) {
21567 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (sp_mask)))), (uint32_t)(error_code));};
21571 if (env->eflags & 0x00020000) {
21572 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (env->segs[5].selector));};
21573 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (env->segs[4].selector));};
21574 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (env->segs[3].selector));};
21575 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (env->segs[0].selector));};
21577 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (env->segs[2].selector));};
21578 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), ((env->regs[4])));};
21580 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (compute_eflags()));};
21581 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (env->segs[1].selector));};
21582 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (old_eip));};
21583 if (has_error_code) {
21584 { esp -= 2; stw_kernel((ssp) + (esp & (sp_mask)), (error_code));};
21589 if (env->eflags & 0x00020000) {
21590 cpu_x86_load_seg_cache(env, 0, 0, 0, 0, 0);
21591 cpu_x86_load_seg_cache(env, 3, 0, 0, 0, 0);
21592 cpu_x86_load_seg_cache(env, 4, 0, 0, 0, 0);
21593 cpu_x86_load_seg_cache(env, 5, 0, 0, 0, 0);
21595 ss = (ss & ~3) | dpl;
21596 cpu_x86_load_seg_cache(env, 2, ss,
21597 ssp, get_seg_limit(ss_e1, ss_e2), ss_e2);
21599 (env->regs[4]) = ((env->regs[4]) & ~(sp_mask)) | ((esp) & (sp_mask));
21601 selector = (selector & ~3) | dpl;
21602 cpu_x86_load_seg_cache(env, 1, selector,
21603 get_seg_base(e1, e2),
21604 get_seg_limit(e1, e2),
21606 cpu_x86_set_cpl(env, dpl);
21610 if ((type & 1) == 0) {
21611 env->eflags &= ~0x00000200;
21613 env->eflags &= ~(0x00000100 | 0x00020000 | 0x00010000 | 0x00004000);
21615 # 1221 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21616 static void do_interrupt_real(int intno, int is_int, int error_code,
21617 unsigned int next_eip)
21620 target_ulong ptr, ssp;
21622 uint32_t offset, esp;
21623 uint32_t old_cs, old_eip;
21627 if (intno * 4 + 3 > dt->limit)
21628 raise_exception_err(13, intno * 8 + 2);
21629 ptr = dt->base + intno * 4;
21630 offset = lduw_kernel(ptr);
21631 selector = lduw_kernel(ptr + 2);
21632 esp = (env->regs[4]);
21633 ssp = env->segs[2].base;
21635 old_eip = next_eip;
21637 old_eip = env->eip;
21638 old_cs = env->segs[1].selector;
21640 { esp -= 2; stw_kernel((ssp) + (esp & (0xffff)), (compute_eflags()));};
21641 { esp -= 2; stw_kernel((ssp) + (esp & (0xffff)), (old_cs));};
21642 { esp -= 2; stw_kernel((ssp) + (esp & (0xffff)), (old_eip));};
21645 (env->regs[4]) = ((env->regs[4]) & ~0xffff) | (esp & 0xffff);
21647 env->segs[1].selector = selector;
21648 env->segs[1].base = (selector << 4);
21649 env->eflags &= ~(0x00000200 | 0x00000100 | 0x00040000 | 0x00010000);
21651 # 1291 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21652 static void handle_even_inj(int intno, int is_int, int error_code,
21655 uint32_t event_inj = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj));
21656 if (!(event_inj & (1 << 31))) {
21662 event_inj = intno | type | (1 << 31);
21663 if (!rm && exeption_has_error_code(intno)) {
21664 event_inj |= (1 << 11);
21665 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj_err), error_code);
21667 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj), event_inj);
21677 static void do_interrupt_all(int intno, int is_int, int error_code,
21678 target_ulong next_eip, int is_hw)
21680 if (((loglevel & ((1 << 4))) != 0)) {
21681 if ((env->cr[0] & (1 << 0))) {
21683 do { if (logfile) fprintf(logfile,"%6d: v=%02x e=%04x i=%d cpl=%d IP=%04x:" "%08x" " pc=" "%08x" " SP=%04x:" "%08x", count, intno, error_code, is_int, env->hflags & (3 << 0), env->segs[1].selector, (env->eip), (int)env->segs[1].base + (env->eip), env->segs[2].selector, (env->regs[4])); } while (0)
21689 if (intno == 0x0e) {
21690 do { if (logfile) fprintf(logfile," CR2=" "%08x", env->cr[2]); } while (0);
21692 do { if (logfile) fprintf(logfile," EAX=" "%08x", (env->regs[0])); } while (0);
21694 do { if (logfile) fprintf(logfile,"\n"); } while (0);
21695 cpu_dump_state((env), logfile, fprintf, (0x0002));;
21696 # 1347 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21700 if (env->cr[0] & (1 << 0)) {
21702 if (env->hflags & (1 << 21))
21703 handle_even_inj(intno, is_int, error_code, is_hw, 0);
21711 do_interrupt_protected(intno, is_int, error_code, next_eip, is_hw);
21715 if (env->hflags & (1 << 21))
21716 handle_even_inj(intno, is_int, error_code, is_hw, 1);
21718 do_interrupt_real(intno, is_int, error_code, next_eip);
21722 if (env->hflags & (1 << 21)) {
21723 uint32_t event_inj = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj));
21724 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj), event_inj & ~(1 << 31));
21729 void do_interrupt(CPUX86State *env1)
21731 CPUX86State *saved_env;
21735 # 1399 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21736 do_interrupt_all(env->exception_index,
21737 env->exception_is_int,
21739 env->exception_next_eip, 0);
21741 env->old_exception = -1;
21746 void do_interrupt_x86_hardirq(CPUX86State *env1, int intno, int is_hw)
21748 CPUX86State *saved_env;
21752 do_interrupt_all(intno, 0, 0, 0, is_hw);
21757 void qemu_system_reset_request(void);
21764 static int check_exception(int intno, int *error_code)
21766 int first_contributory = env->old_exception == 0 ||
21767 (env->old_exception >= 10 &&
21768 env->old_exception <= 13);
21769 int second_contributory = intno == 0 ||
21770 (intno >= 10 && intno <= 13);
21772 do { if (loglevel & ((1 << 4))) fprintf(logfile, "check_exception old: 0x%x new 0x%x\n", env->old_exception, intno); } while (0)
21776 if (env->old_exception == 8) {
21777 if (env->hflags & (1 << 21))
21778 helper_vmexit(0x07f, 0);
21780 do { if (loglevel & ((1 << 9))) fprintf(logfile, "Triple fault\n"); } while (0);
21782 qemu_system_reset_request();
21787 if ((first_contributory && second_contributory)
21788 || (env->old_exception == 14 &&
21789 (second_contributory || (intno == 14)))) {
21794 if (second_contributory || (intno == 14) ||
21796 env->old_exception = intno;
21807 static void __attribute__ ((__noreturn__)) raise_interrupt(int intno, int is_int, int error_code,
21808 int next_eip_addend)
21811 helper_svm_check_intercept_param(0x040 + intno, error_code);
21812 intno = check_exception(intno, &error_code);
21814 helper_svm_check_intercept_param(0x075, 0);
21817 env->exception_index = intno;
21818 env->error_code = error_code;
21819 env->exception_is_int = is_int;
21820 env->exception_next_eip = env->eip + next_eip_addend;
21821 cpu_loop_exit(env);
21826 static void __attribute__ ((__noreturn__)) raise_exception_err(int exception_index,
21829 raise_interrupt(exception_index, 0, error_code, 0);
21832 void raise_exception_err_env(CPUX86State *nenv, int exception_index,
21836 raise_interrupt(exception_index, 0, error_code, 0);
21839 static void __attribute__ ((__noreturn__)) raise_exception(int exception_index)
21841 raise_interrupt(exception_index, 0, 0, 0);
21844 void raise_exception_env(int exception_index, CPUX86State *nenv)
21847 raise_exception(exception_index);
21849 # 1532 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21850 void do_smm_enter(CPUX86State *env1)
21852 target_ulong sm_state;
21855 CPUX86State *saved_env;
21860 do { if (loglevel & ((1 << 4))) fprintf(logfile, "SMM: enter\n"); } while (0);
21861 do { if (loglevel & ((1 << 4))) cpu_dump_state(((env)), logfile, fprintf, ((0x0002)));; } while (0);
21863 env->hflags |= (1 << 19);
21864 cpu_smm_update(env);
21866 sm_state = env->smbase + 0x8000;
21867 # 1600 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21868 stl_phys(sm_state + 0x7ffc, env->cr[0]);
21869 stl_phys(sm_state + 0x7ff8, env->cr[3]);
21870 stl_phys(sm_state + 0x7ff4, compute_eflags());
21871 stl_phys(sm_state + 0x7ff0, env->eip);
21872 stl_phys(sm_state + 0x7fec, (env->regs[7]));
21873 stl_phys(sm_state + 0x7fe8, (env->regs[6]));
21874 stl_phys(sm_state + 0x7fe4, (env->regs[5]));
21875 stl_phys(sm_state + 0x7fe0, (env->regs[4]));
21876 stl_phys(sm_state + 0x7fdc, (env->regs[3]));
21877 stl_phys(sm_state + 0x7fd8, (env->regs[2]));
21878 stl_phys(sm_state + 0x7fd4, (env->regs[1]));
21879 stl_phys(sm_state + 0x7fd0, (env->regs[0]));
21880 stl_phys(sm_state + 0x7fcc, env->dr[6]);
21881 stl_phys(sm_state + 0x7fc8, env->dr[7]);
21883 stl_phys(sm_state + 0x7fc4, env->tr.selector);
21884 stl_phys(sm_state + 0x7f64, env->tr.base);
21885 stl_phys(sm_state + 0x7f60, env->tr.limit);
21886 stl_phys(sm_state + 0x7f5c, (env->tr.flags >> 8) & 0xf0ff);
21888 stl_phys(sm_state + 0x7fc0, env->ldt.selector);
21889 stl_phys(sm_state + 0x7f80, env->ldt.base);
21890 stl_phys(sm_state + 0x7f7c, env->ldt.limit);
21891 stl_phys(sm_state + 0x7f78, (env->ldt.flags >> 8) & 0xf0ff);
21893 stl_phys(sm_state + 0x7f74, env->gdt.base);
21894 stl_phys(sm_state + 0x7f70, env->gdt.limit);
21896 stl_phys(sm_state + 0x7f58, env->idt.base);
21897 stl_phys(sm_state + 0x7f54, env->idt.limit);
21899 for(i = 0; i < 6; i++) {
21900 dt = &env->segs[i];
21902 offset = 0x7f84 + i * 12;
21904 offset = 0x7f2c + (i - 3) * 12;
21905 stl_phys(sm_state + 0x7fa8 + i * 4, dt->selector);
21906 stl_phys(sm_state + offset + 8, dt->base);
21907 stl_phys(sm_state + offset + 4, dt->limit);
21908 stl_phys(sm_state + offset, (dt->flags >> 8) & 0xf0ff);
21910 stl_phys(sm_state + 0x7f14, env->cr[4]);
21912 stl_phys(sm_state + 0x7efc, 0x00020000);
21913 stl_phys(sm_state + 0x7ef8, env->smbase);
21920 load_eflags(0, ~(0x0800 | 0x0080 | 0x0040 | 0x0010 | 0x0004 | 0x0001 | 0x00000400));
21921 env->eip = 0x00008000;
21922 cpu_x86_load_seg_cache(env, 1, (env->smbase >> 4) & 0xffff, env->smbase,
21924 cpu_x86_load_seg_cache(env, 3, 0, 0, 0xffffffff, 0);
21925 cpu_x86_load_seg_cache(env, 0, 0, 0, 0xffffffff, 0);
21926 cpu_x86_load_seg_cache(env, 2, 0, 0, 0xffffffff, 0);
21927 cpu_x86_load_seg_cache(env, 4, 0, 0, 0xffffffff, 0);
21928 cpu_x86_load_seg_cache(env, 5, 0, 0, 0xffffffff, 0);
21930 cpu_x86_update_cr0(env,
21931 env->cr[0] & ~((1 << 0) | (1 << 2) | (1 << 3) | (1 << 31)));
21932 cpu_x86_update_cr4(env, 0);
21933 env->dr[7] = 0x00000400;
21934 (env->cc_op) = CC_OP_EFLAGS;
21938 void helper_rsm(void)
21940 target_ulong sm_state;
21944 sm_state = env->smbase + 0x8000;
21945 # 1730 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
21946 cpu_x86_update_cr0(env, ldl_phys(sm_state + 0x7ffc));
21947 cpu_x86_update_cr3(env, ldl_phys(sm_state + 0x7ff8));
21948 load_eflags(ldl_phys(sm_state + 0x7ff4),
21949 ~(0x0800 | 0x0080 | 0x0040 | 0x0010 | 0x0004 | 0x0001 | 0x00000400));
21950 env->eip = ldl_phys(sm_state + 0x7ff0);
21951 (env->regs[7]) = ldl_phys(sm_state + 0x7fec);
21952 (env->regs[6]) = ldl_phys(sm_state + 0x7fe8);
21953 (env->regs[5]) = ldl_phys(sm_state + 0x7fe4);
21954 (env->regs[4]) = ldl_phys(sm_state + 0x7fe0);
21955 (env->regs[3]) = ldl_phys(sm_state + 0x7fdc);
21956 (env->regs[2]) = ldl_phys(sm_state + 0x7fd8);
21957 (env->regs[1]) = ldl_phys(sm_state + 0x7fd4);
21958 (env->regs[0]) = ldl_phys(sm_state + 0x7fd0);
21959 env->dr[6] = ldl_phys(sm_state + 0x7fcc);
21960 env->dr[7] = ldl_phys(sm_state + 0x7fc8);
21962 env->tr.selector = ldl_phys(sm_state + 0x7fc4) & 0xffff;
21963 env->tr.base = ldl_phys(sm_state + 0x7f64);
21964 env->tr.limit = ldl_phys(sm_state + 0x7f60);
21965 env->tr.flags = (ldl_phys(sm_state + 0x7f5c) & 0xf0ff) << 8;
21967 env->ldt.selector = ldl_phys(sm_state + 0x7fc0) & 0xffff;
21968 env->ldt.base = ldl_phys(sm_state + 0x7f80);
21969 env->ldt.limit = ldl_phys(sm_state + 0x7f7c);
21970 env->ldt.flags = (ldl_phys(sm_state + 0x7f78) & 0xf0ff) << 8;
21972 env->gdt.base = ldl_phys(sm_state + 0x7f74);
21973 env->gdt.limit = ldl_phys(sm_state + 0x7f70);
21975 env->idt.base = ldl_phys(sm_state + 0x7f58);
21976 env->idt.limit = ldl_phys(sm_state + 0x7f54);
21978 for(i = 0; i < 6; i++) {
21980 offset = 0x7f84 + i * 12;
21982 offset = 0x7f2c + (i - 3) * 12;
21983 cpu_x86_load_seg_cache(env, i,
21984 ldl_phys(sm_state + 0x7fa8 + i * 4) & 0xffff,
21985 ldl_phys(sm_state + offset + 8),
21986 ldl_phys(sm_state + offset + 4),
21987 (ldl_phys(sm_state + offset) & 0xf0ff) << 8);
21989 cpu_x86_update_cr4(env, ldl_phys(sm_state + 0x7f14));
21991 val = ldl_phys(sm_state + 0x7efc);
21992 if (val & 0x20000) {
21993 env->smbase = ldl_phys(sm_state + 0x7ef8) & ~0x7fff;
21996 (env->cc_op) = CC_OP_EFLAGS;
21997 env->hflags &= ~(1 << 19);
21998 cpu_smm_update(env);
22000 do { if (loglevel & ((1 << 4))) fprintf(logfile, "SMM: after RSM\n"); } while (0);
22001 do { if (loglevel & ((1 << 4))) cpu_dump_state(((env)), logfile, fprintf, ((0x0002)));; } while (0);
22009 void helper_divb_AL(target_ulong t0)
22011 unsigned int num, den, q, r;
22013 num = ((env->regs[0]) & 0xffff);
22016 raise_exception(0);
22020 raise_exception(0);
22022 r = (num % den) & 0xff;
22023 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | (r << 8) | q;
22026 void helper_idivb_AL(target_ulong t0)
22028 int num, den, q, r;
22030 num = (int16_t)(env->regs[0]);
22033 raise_exception(0);
22036 if (q != (int8_t)q)
22037 raise_exception(0);
22039 r = (num % den) & 0xff;
22040 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | (r << 8) | q;
22043 void helper_divw_AX(target_ulong t0)
22045 unsigned int num, den, q, r;
22047 num = ((env->regs[0]) & 0xffff) | (((env->regs[2]) & 0xffff) << 16);
22048 den = (t0 & 0xffff);
22050 raise_exception(0);
22054 raise_exception(0);
22056 r = (num % den) & 0xffff;
22057 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | q;
22058 (env->regs[2]) = ((env->regs[2]) & ~0xffff) | r;
22061 void helper_idivw_AX(target_ulong t0)
22063 int num, den, q, r;
22065 num = ((env->regs[0]) & 0xffff) | (((env->regs[2]) & 0xffff) << 16);
22068 raise_exception(0);
22071 if (q != (int16_t)q)
22072 raise_exception(0);
22074 r = (num % den) & 0xffff;
22075 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | q;
22076 (env->regs[2]) = ((env->regs[2]) & ~0xffff) | r;
22079 void helper_divl_EAX(target_ulong t0)
22081 unsigned int den, r;
22084 num = ((uint32_t)(env->regs[0])) | ((uint64_t)((uint32_t)(env->regs[2])) << 32);
22087 raise_exception(0);
22091 if (q > 0xffffffff)
22092 raise_exception(0);
22093 (env->regs[0]) = (uint32_t)q;
22094 (env->regs[2]) = (uint32_t)r;
22097 void helper_idivl_EAX(target_ulong t0)
22102 num = ((uint32_t)(env->regs[0])) | ((uint64_t)((uint32_t)(env->regs[2])) << 32);
22105 raise_exception(0);
22109 if (q != (int32_t)q)
22110 raise_exception(0);
22111 (env->regs[0]) = (uint32_t)q;
22112 (env->regs[2]) = (uint32_t)r;
22118 void helper_aam(int base)
22121 al = (env->regs[0]) & 0xff;
22124 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | al | (ah << 8);
22125 (env->cc_dst) = al;
22128 void helper_aad(int base)
22131 al = (env->regs[0]) & 0xff;
22132 ah = ((env->regs[0]) >> 8) & 0xff;
22133 al = ((ah * base) + al) & 0xff;
22134 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | al;
22135 (env->cc_dst) = al;
22138 void helper_aaa(void)
22144 eflags = helper_cc_compute_all((env->cc_op));
22145 af = eflags & 0x0010;
22146 al = (env->regs[0]) & 0xff;
22147 ah = ((env->regs[0]) >> 8) & 0xff;
22149 icarry = (al > 0xf9);
22150 if (((al & 0x0f) > 9 ) || af) {
22151 al = (al + 6) & 0x0f;
22152 ah = (ah + 1 + icarry) & 0xff;
22153 eflags |= 0x0001 | 0x0010;
22155 eflags &= ~(0x0001 | 0x0010);
22158 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | al | (ah << 8);
22159 (env->cc_src) = eflags;
22162 void helper_aas(void)
22168 eflags = helper_cc_compute_all((env->cc_op));
22169 af = eflags & 0x0010;
22170 al = (env->regs[0]) & 0xff;
22171 ah = ((env->regs[0]) >> 8) & 0xff;
22174 if (((al & 0x0f) > 9 ) || af) {
22175 al = (al - 6) & 0x0f;
22176 ah = (ah - 1 - icarry) & 0xff;
22177 eflags |= 0x0001 | 0x0010;
22179 eflags &= ~(0x0001 | 0x0010);
22182 (env->regs[0]) = ((env->regs[0]) & ~0xffff) | al | (ah << 8);
22183 (env->cc_src) = eflags;
22186 void helper_daa(void)
22188 int old_al, al, af, cf;
22191 eflags = helper_cc_compute_all((env->cc_op));
22192 cf = eflags & 0x0001;
22193 af = eflags & 0x0010;
22194 old_al = al = (env->regs[0]) & 0xff;
22197 if (((al & 0x0f) > 9 ) || af) {
22198 al = (al + 6) & 0xff;
22201 if ((old_al > 0x99) || cf) {
22202 al = (al + 0x60) & 0xff;
22205 (env->regs[0]) = ((env->regs[0]) & ~0xff) | al;
22207 eflags |= (al == 0) << 6;
22208 eflags |= parity_table[al];
22209 eflags |= (al & 0x80);
22210 (env->cc_src) = eflags;
22213 void helper_das(void)
22215 int al, al1, af, cf;
22218 eflags = helper_cc_compute_all((env->cc_op));
22219 cf = eflags & 0x0001;
22220 af = eflags & 0x0010;
22221 al = (env->regs[0]) & 0xff;
22225 if (((al & 0x0f) > 9 ) || af) {
22229 al = (al - 6) & 0xff;
22231 if ((al1 > 0x99) || cf) {
22232 al = (al - 0x60) & 0xff;
22235 (env->regs[0]) = ((env->regs[0]) & ~0xff) | al;
22237 eflags |= (al == 0) << 6;
22238 eflags |= parity_table[al];
22239 eflags |= (al & 0x80);
22240 (env->cc_src) = eflags;
22243 void helper_into(int next_eip_addend)
22246 eflags = helper_cc_compute_all((env->cc_op));
22247 if (eflags & 0x0800) {
22248 raise_interrupt(4, 1, 0, next_eip_addend);
22252 void helper_cmpxchg8b(target_ulong a0)
22257 eflags = helper_cc_compute_all((env->cc_op));
22259 if (d == (((uint64_t)(env->regs[2]) << 32) | (uint32_t)(env->regs[0]))) {
22260 stq_data(a0, ((uint64_t)(env->regs[1]) << 32) | (uint32_t)(env->regs[3]));
22265 (env->regs[2]) = (uint32_t)(d >> 32);
22266 (env->regs[0]) = (uint32_t)d;
22269 (env->cc_src) = eflags;
22271 # 2083 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22272 void helper_single_step(void)
22275 check_hw_breakpoints(env, 1);
22276 env->dr[6] |= (1 << 14);
22278 raise_exception(1);
22281 void helper_cpuid(void)
22283 uint32_t eax, ebx, ecx, edx;
22285 helper_svm_check_intercept_param(0x072, 0);
22287 cpu_x86_cpuid(env, (uint32_t)(env->regs[0]), (uint32_t)(env->regs[1]), &eax, &ebx, &ecx, &edx);
22288 (env->regs[0]) = eax;
22289 (env->regs[3]) = ebx;
22290 (env->regs[1]) = ecx;
22291 (env->regs[2]) = edx;
22294 void helper_enter_level(int level, int data32, target_ulong t1)
22297 uint32_t esp_mask, esp, ebp;
22299 esp_mask = get_sp_mask(env->segs[2].flags);
22300 ssp = env->segs[2].base;
22301 ebp = (env->regs[5]);
22302 esp = (env->regs[4]);
22309 stl_data(ssp + (esp & esp_mask), ldl_data(ssp + (ebp & esp_mask)));
22312 stl_data(ssp + (esp & esp_mask), t1);
22319 stw_data(ssp + (esp & esp_mask), lduw_data(ssp + (ebp & esp_mask)));
22322 stw_data(ssp + (esp & esp_mask), t1);
22325 # 2168 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22326 void helper_lldt(int selector)
22330 int index, entry_limit;
22333 selector &= 0xffff;
22334 if ((selector & 0xfffc) == 0) {
22337 env->ldt.limit = 0;
22339 if (selector & 0x4)
22340 raise_exception_err(13, selector & 0xfffc);
22342 index = selector & ~7;
22349 if ((index + entry_limit) > dt->limit)
22350 raise_exception_err(13, selector & 0xfffc);
22351 ptr = dt->base + index;
22352 e1 = ldl_kernel(ptr);
22353 e2 = ldl_kernel(ptr + 4);
22354 if ((e2 & (1 << 12)) || ((e2 >> 8) & 0xf) != 2)
22355 raise_exception_err(13, selector & 0xfffc);
22356 if (!(e2 & (1 << 15)))
22357 raise_exception_err(11, selector & 0xfffc);
22358 # 2208 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22360 load_seg_cache_raw_dt(&env->ldt, e1, e2);
22363 env->ldt.selector = selector;
22366 void helper_ltr(int selector)
22370 int index, type, entry_limit;
22373 selector &= 0xffff;
22374 if ((selector & 0xfffc) == 0) {
22380 if (selector & 0x4)
22381 raise_exception_err(13, selector & 0xfffc);
22383 index = selector & ~7;
22390 if ((index + entry_limit) > dt->limit)
22391 raise_exception_err(13, selector & 0xfffc);
22392 ptr = dt->base + index;
22393 e1 = ldl_kernel(ptr);
22394 e2 = ldl_kernel(ptr + 4);
22395 type = (e2 >> 8) & 0xf;
22396 if ((e2 & (1 << 12)) ||
22397 (type != 1 && type != 9))
22398 raise_exception_err(13, selector & 0xfffc);
22399 if (!(e2 & (1 << 15)))
22400 raise_exception_err(11, selector & 0xfffc);
22401 # 2261 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22403 load_seg_cache_raw_dt(&env->tr, e1, e2);
22406 stl_kernel(ptr + 4, e2);
22408 env->tr.selector = selector;
22412 void helper_load_seg(int seg_reg, int selector)
22420 selector &= 0xffff;
22421 cpl = env->hflags & (3 << 0);
22422 if ((selector & 0xfffc) == 0) {
22429 raise_exception_err(13, 0);
22430 cpu_x86_load_seg_cache(env, seg_reg, selector, 0, 0, 0);
22433 if (selector & 0x4)
22437 index = selector & ~7;
22438 if ((index + 7) > dt->limit)
22439 raise_exception_err(13, selector & 0xfffc);
22440 ptr = dt->base + index;
22441 e1 = ldl_kernel(ptr);
22442 e2 = ldl_kernel(ptr + 4);
22444 if (!(e2 & (1 << 12)))
22445 raise_exception_err(13, selector & 0xfffc);
22446 rpl = selector & 3;
22447 dpl = (e2 >> 13) & 3;
22448 if (seg_reg == 2) {
22450 if ((e2 & (1 << 11)) || !(e2 & (1 << 9)))
22451 raise_exception_err(13, selector & 0xfffc);
22452 if (rpl != cpl || dpl != cpl)
22453 raise_exception_err(13, selector & 0xfffc);
22456 if ((e2 & ((1 << 11) | (1 << 9))) == (1 << 11))
22457 raise_exception_err(13, selector & 0xfffc);
22459 if (!(e2 & (1 << 11)) || !(e2 & (1 << 10))) {
22461 if (dpl < cpl || dpl < rpl)
22462 raise_exception_err(13, selector & 0xfffc);
22466 if (!(e2 & (1 << 15))) {
22468 raise_exception_err(12, selector & 0xfffc);
22470 raise_exception_err(11, selector & 0xfffc);
22474 if (!(e2 & (1 << 8))) {
22476 stl_kernel(ptr + 4, e2);
22479 cpu_x86_load_seg_cache(env, seg_reg, selector,
22480 get_seg_base(e1, e2),
22481 get_seg_limit(e1, e2),
22491 void helper_ljmp_protected(int new_cs, target_ulong new_eip,
22492 int next_eip_addend)
22495 uint32_t e1, e2, cpl, dpl, rpl, limit;
22496 target_ulong next_eip;
22498 if ((new_cs & 0xfffc) == 0)
22499 raise_exception_err(13, 0);
22500 if (load_segment(&e1, &e2, new_cs) != 0)
22501 raise_exception_err(13, new_cs & 0xfffc);
22502 cpl = env->hflags & (3 << 0);
22503 if (e2 & (1 << 12)) {
22504 if (!(e2 & (1 << 11)))
22505 raise_exception_err(13, new_cs & 0xfffc);
22506 dpl = (e2 >> 13) & 3;
22507 if (e2 & (1 << 10)) {
22510 raise_exception_err(13, new_cs & 0xfffc);
22515 raise_exception_err(13, new_cs & 0xfffc);
22517 raise_exception_err(13, new_cs & 0xfffc);
22519 if (!(e2 & (1 << 15)))
22520 raise_exception_err(11, new_cs & 0xfffc);
22521 limit = get_seg_limit(e1, e2);
22522 if (new_eip > limit &&
22523 !(env->hflags & (1 << 14)) && !(e2 & (1 << 21)))
22524 raise_exception_err(13, new_cs & 0xfffc);
22525 cpu_x86_load_seg_cache(env, 1, (new_cs & 0xfffc) | cpl,
22526 get_seg_base(e1, e2), limit, e2);
22527 (env->eip) = new_eip;
22530 dpl = (e2 >> 13) & 3;
22532 cpl = env->hflags & (3 << 0);
22533 type = (e2 >> 8) & 0xf;
22538 if (dpl < cpl || dpl < rpl)
22539 raise_exception_err(13, new_cs & 0xfffc);
22540 next_eip = env->eip + next_eip_addend;
22541 switch_tss(new_cs, e1, e2, 0, next_eip);
22542 (env->cc_op) = CC_OP_EFLAGS;
22546 if ((dpl < cpl) || (dpl < rpl))
22547 raise_exception_err(13, new_cs & 0xfffc);
22548 if (!(e2 & (1 << 15)))
22549 raise_exception_err(11, new_cs & 0xfffc);
22550 gate_cs = e1 >> 16;
22551 new_eip = (e1 & 0xffff);
22553 new_eip |= (e2 & 0xffff0000);
22554 if (load_segment(&e1, &e2, gate_cs) != 0)
22555 raise_exception_err(13, gate_cs & 0xfffc);
22556 dpl = (e2 >> 13) & 3;
22558 if (((e2 & ((1 << 12) | (1 << 11))) !=
22559 ((1 << 12) | (1 << 11))))
22560 raise_exception_err(13, gate_cs & 0xfffc);
22561 if (((e2 & (1 << 10)) && (dpl > cpl)) ||
22562 (!(e2 & (1 << 10)) && (dpl != cpl)))
22563 raise_exception_err(13, gate_cs & 0xfffc);
22564 if (!(e2 & (1 << 15)))
22565 raise_exception_err(13, gate_cs & 0xfffc);
22566 limit = get_seg_limit(e1, e2);
22567 if (new_eip > limit)
22568 raise_exception_err(13, 0);
22569 cpu_x86_load_seg_cache(env, 1, (gate_cs & 0xfffc) | cpl,
22570 get_seg_base(e1, e2), limit, e2);
22571 (env->eip) = new_eip;
22574 raise_exception_err(13, new_cs & 0xfffc);
22581 void helper_lcall_real(int new_cs, target_ulong new_eip1,
22582 int shift, int next_eip)
22585 uint32_t esp, esp_mask;
22588 new_eip = new_eip1;
22589 esp = (env->regs[4]);
22590 esp_mask = get_sp_mask(env->segs[2].flags);
22591 ssp = env->segs[2].base;
22593 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (esp_mask)))), (uint32_t)(env->segs[1].selector));};
22594 { esp -= 4; stl_kernel(((uint32_t)((ssp) + (esp & (esp_mask)))), (uint32_t)(next_eip));};
22596 { esp -= 2; stw_kernel((ssp) + (esp & (esp_mask)), (env->segs[1].selector));};
22597 { esp -= 2; stw_kernel((ssp) + (esp & (esp_mask)), (next_eip));};
22600 (env->regs[4]) = ((env->regs[4]) & ~(esp_mask)) | ((esp) & (esp_mask));
22601 env->eip = new_eip;
22602 env->segs[1].selector = new_cs;
22603 env->segs[1].base = (new_cs << 4);
22607 void helper_lcall_protected(int new_cs, target_ulong new_eip,
22608 int shift, int next_eip_addend)
22611 uint32_t e1, e2, cpl, dpl, rpl, selector, offset, param_count;
22612 uint32_t ss = 0, ss_e1 = 0, ss_e2 = 0, sp, type, ss_dpl, sp_mask;
22613 uint32_t val, limit, old_sp_mask;
22614 target_ulong ssp, old_ssp, next_eip;
22616 next_eip = env->eip + next_eip_addend;
22619 if ((new_cs & 0xfffc) == 0)
22620 raise_exception_err(13, 0);
22621 if (load_segment(&e1, &e2, new_cs) != 0)
22622 raise_exception_err(13, new_cs & 0xfffc);
22623 cpl = env->hflags & (3 << 0);
22625 if (e2 & (1 << 12)) {
22626 if (!(e2 & (1 << 11)))
22627 raise_exception_err(13, new_cs & 0xfffc);
22628 dpl = (e2 >> 13) & 3;
22629 if (e2 & (1 << 10)) {
22632 raise_exception_err(13, new_cs & 0xfffc);
22637 raise_exception_err(13, new_cs & 0xfffc);
22639 raise_exception_err(13, new_cs & 0xfffc);
22641 if (!(e2 & (1 << 15)))
22642 raise_exception_err(11, new_cs & 0xfffc);
22643 # 2519 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22645 sp = (env->regs[4]);
22646 sp_mask = get_sp_mask(env->segs[2].flags);
22647 ssp = env->segs[2].base;
22649 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)(env->segs[1].selector));};
22650 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)(next_eip));};
22652 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), (env->segs[1].selector));};
22653 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), (next_eip));};
22656 limit = get_seg_limit(e1, e2);
22657 if (new_eip > limit)
22658 raise_exception_err(13, new_cs & 0xfffc);
22660 (env->regs[4]) = ((env->regs[4]) & ~(sp_mask)) | ((sp) & (sp_mask));
22661 cpu_x86_load_seg_cache(env, 1, (new_cs & 0xfffc) | cpl,
22662 get_seg_base(e1, e2), limit, e2);
22663 (env->eip) = new_eip;
22667 type = (e2 >> 8) & 0x1f;
22668 dpl = (e2 >> 13) & 3;
22674 if (dpl < cpl || dpl < rpl)
22675 raise_exception_err(13, new_cs & 0xfffc);
22676 switch_tss(new_cs, e1, e2, 2, next_eip);
22677 (env->cc_op) = CC_OP_EFLAGS;
22683 raise_exception_err(13, new_cs & 0xfffc);
22688 if (dpl < cpl || dpl < rpl)
22689 raise_exception_err(13, new_cs & 0xfffc);
22691 if (!(e2 & (1 << 15)))
22692 raise_exception_err(11, new_cs & 0xfffc);
22693 selector = e1 >> 16;
22694 offset = (e2 & 0xffff0000) | (e1 & 0x0000ffff);
22695 param_count = e2 & 0x1f;
22696 if ((selector & 0xfffc) == 0)
22697 raise_exception_err(13, 0);
22699 if (load_segment(&e1, &e2, selector) != 0)
22700 raise_exception_err(13, selector & 0xfffc);
22701 if (!(e2 & (1 << 12)) || !(e2 & ((1 << 11))))
22702 raise_exception_err(13, selector & 0xfffc);
22703 dpl = (e2 >> 13) & 3;
22705 raise_exception_err(13, selector & 0xfffc);
22706 if (!(e2 & (1 << 15)))
22707 raise_exception_err(11, selector & 0xfffc);
22709 if (!(e2 & (1 << 10)) && dpl < cpl) {
22711 get_ss_esp_from_tss(&ss, &sp, dpl);
22714 if ((ss & 0xfffc) == 0)
22715 raise_exception_err(10, ss & 0xfffc);
22716 if ((ss & 3) != dpl)
22717 raise_exception_err(10, ss & 0xfffc);
22718 if (load_segment(&ss_e1, &ss_e2, ss) != 0)
22719 raise_exception_err(10, ss & 0xfffc);
22720 ss_dpl = (ss_e2 >> 13) & 3;
22722 raise_exception_err(10, ss & 0xfffc);
22723 if (!(ss_e2 & (1 << 12)) ||
22724 (ss_e2 & (1 << 11)) ||
22725 !(ss_e2 & (1 << 9)))
22726 raise_exception_err(10, ss & 0xfffc);
22727 if (!(ss_e2 & (1 << 15)))
22728 raise_exception_err(10, ss & 0xfffc);
22732 old_sp_mask = get_sp_mask(env->segs[2].flags);
22733 old_ssp = env->segs[2].base;
22735 sp_mask = get_sp_mask(ss_e2);
22736 ssp = get_seg_base(ss_e1, ss_e2);
22738 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)(env->segs[2].selector));};
22739 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)((env->regs[4])));};
22740 for(i = param_count - 1; i >= 0; i--) {
22741 val = ldl_kernel(old_ssp + (((env->regs[4]) + i * 4) & old_sp_mask));
22742 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)(val));};
22745 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), (env->segs[2].selector));};
22746 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), ((env->regs[4])));};
22747 for(i = param_count - 1; i >= 0; i--) {
22748 val = lduw_kernel(old_ssp + (((env->regs[4]) + i * 2) & old_sp_mask));
22749 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), (val));};
22755 sp = (env->regs[4]);
22756 sp_mask = get_sp_mask(env->segs[2].flags);
22757 ssp = env->segs[2].base;
22763 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)(env->segs[1].selector));};
22764 { sp -= 4; stl_kernel(((uint32_t)((ssp) + (sp & (sp_mask)))), (uint32_t)(next_eip));};
22766 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), (env->segs[1].selector));};
22767 { sp -= 2; stw_kernel((ssp) + (sp & (sp_mask)), (next_eip));};
22773 ss = (ss & ~3) | dpl;
22774 cpu_x86_load_seg_cache(env, 2, ss,
22776 get_seg_limit(ss_e1, ss_e2),
22780 selector = (selector & ~3) | dpl;
22781 cpu_x86_load_seg_cache(env, 1, selector,
22782 get_seg_base(e1, e2),
22783 get_seg_limit(e1, e2),
22785 cpu_x86_set_cpl(env, dpl);
22786 (env->regs[4]) = ((env->regs[4]) & ~(sp_mask)) | ((sp) & (sp_mask));
22787 (env->eip) = offset;
22792 void helper_iret_real(int shift)
22794 uint32_t sp, new_cs, new_eip, new_eflags, sp_mask;
22799 sp = (env->regs[4]);
22800 ssp = env->segs[2].base;
22803 { new_eip = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22804 { new_cs = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22806 { new_eflags = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22809 { new_eip = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22810 { new_cs = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22811 { new_eflags = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22813 (env->regs[4]) = ((env->regs[4]) & ~sp_mask) | (sp & sp_mask);
22814 env->segs[1].selector = new_cs;
22815 env->segs[1].base = (new_cs << 4);
22816 env->eip = new_eip;
22817 if (env->eflags & 0x00020000)
22818 eflags_mask = 0x00000100 | 0x00040000 | 0x00200000 | 0x00000200 | 0x00010000 | 0x00004000;
22820 eflags_mask = 0x00000100 | 0x00040000 | 0x00200000 | 0x00000200 | 0x00003000 | 0x00010000 | 0x00004000;
22822 eflags_mask &= 0xffff;
22823 load_eflags(new_eflags, eflags_mask);
22824 env->hflags2 &= ~(1 << 2);
22827 static __attribute__ (( always_inline )) __inline__ void validate_seg(int seg_reg, int cpl)
22835 if ((seg_reg == 4 || seg_reg == 5) &&
22836 (env->segs[seg_reg].selector & 0xfffc) == 0)
22839 e2 = env->segs[seg_reg].flags;
22840 dpl = (e2 >> 13) & 3;
22841 if (!(e2 & (1 << 11)) || !(e2 & (1 << 10))) {
22844 cpu_x86_load_seg_cache(env, seg_reg, 0, 0, 0, 0);
22850 static __attribute__ (( always_inline )) __inline__ void helper_ret_protected(int shift, int is_iret, int addend)
22852 uint32_t new_cs, new_eflags, new_ss;
22853 uint32_t new_es, new_ds, new_fs, new_gs;
22854 uint32_t e1, e2, ss_e1, ss_e2;
22855 int cpl, dpl, rpl, eflags_mask, iopl;
22856 target_ulong ssp, sp, new_eip, new_esp, sp_mask;
22863 sp_mask = get_sp_mask(env->segs[2].flags);
22864 sp = (env->regs[4]);
22865 ssp = env->segs[2].base;
22867 # 2752 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22870 { new_eip = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22871 { new_cs = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22874 { new_eflags = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22875 if (new_eflags & 0x00020000)
22876 goto return_to_vm86;
22880 { new_eip = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22881 { new_cs = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22883 { new_eflags = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22888 if ((new_cs & 0xfffc) == 0)
22889 raise_exception_err(13, new_cs & 0xfffc);
22890 if (load_segment(&e1, &e2, new_cs) != 0)
22891 raise_exception_err(13, new_cs & 0xfffc);
22892 if (!(e2 & (1 << 12)) ||
22894 raise_exception_err(13, new_cs & 0xfffc);
22895 cpl = env->hflags & (3 << 0);
22898 raise_exception_err(13, new_cs & 0xfffc);
22899 dpl = (e2 >> 13) & 3;
22900 if (e2 & (1 << 10)) {
22902 raise_exception_err(13, new_cs & 0xfffc);
22905 raise_exception_err(13, new_cs & 0xfffc);
22907 if (!(e2 & (1 << 15)))
22908 raise_exception_err(11, new_cs & 0xfffc);
22911 if (rpl == cpl && (!(env->hflags & (1 << 15)) ||
22912 ((env->hflags & (1 << 15)) && !is_iret))) {
22914 cpu_x86_load_seg_cache(env, 1, new_cs,
22915 get_seg_base(e1, e2),
22916 get_seg_limit(e1, e2),
22919 # 2811 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22922 { new_esp = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22923 { new_ss = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22927 { new_esp = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22928 { new_ss = lduw_kernel((ssp) + (sp & (sp_mask))); sp += 2;};
22932 if ((new_ss & 0xfffc) == 0) {
22933 # 2836 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
22935 raise_exception_err(13, 0);
22938 if ((new_ss & 3) != rpl)
22939 raise_exception_err(13, new_ss & 0xfffc);
22940 if (load_segment(&ss_e1, &ss_e2, new_ss) != 0)
22941 raise_exception_err(13, new_ss & 0xfffc);
22942 if (!(ss_e2 & (1 << 12)) ||
22943 (ss_e2 & (1 << 11)) ||
22944 !(ss_e2 & (1 << 9)))
22945 raise_exception_err(13, new_ss & 0xfffc);
22946 dpl = (ss_e2 >> 13) & 3;
22948 raise_exception_err(13, new_ss & 0xfffc);
22949 if (!(ss_e2 & (1 << 15)))
22950 raise_exception_err(11, new_ss & 0xfffc);
22951 cpu_x86_load_seg_cache(env, 2, new_ss,
22952 get_seg_base(ss_e1, ss_e2),
22953 get_seg_limit(ss_e1, ss_e2),
22957 cpu_x86_load_seg_cache(env, 1, new_cs,
22958 get_seg_base(e1, e2),
22959 get_seg_limit(e1, e2),
22961 cpu_x86_set_cpl(env, rpl);
22968 sp_mask = get_sp_mask(ss_e2);
22971 validate_seg(0, rpl);
22972 validate_seg(3, rpl);
22973 validate_seg(4, rpl);
22974 validate_seg(5, rpl);
22978 (env->regs[4]) = ((env->regs[4]) & ~(sp_mask)) | ((sp) & (sp_mask));
22979 env->eip = new_eip;
22982 eflags_mask = 0x00000100 | 0x00040000 | 0x00200000 | 0x00010000 | 0x00004000;
22984 eflags_mask |= 0x00003000;
22985 iopl = (env->eflags >> 12) & 3;
22987 eflags_mask |= 0x00000200;
22989 eflags_mask &= 0xffff;
22990 load_eflags(new_eflags, eflags_mask);
22995 { new_esp = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22996 { new_ss = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22997 { new_es = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22998 { new_ds = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
22999 { new_fs = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
23000 { new_gs = (uint32_t)ldl_kernel(((uint32_t)((ssp) + (sp & (sp_mask))))); sp += 4;};
23003 load_eflags(new_eflags, 0x00000100 | 0x00040000 | 0x00200000 |
23004 0x00000200 | 0x00003000 | 0x00020000 | 0x00004000 | 0x00080000 | 0x00100000);
23005 load_seg_vm(1, new_cs & 0xffff);
23006 cpu_x86_set_cpl(env, 3);
23007 load_seg_vm(2, new_ss & 0xffff);
23008 load_seg_vm(0, new_es & 0xffff);
23009 load_seg_vm(3, new_ds & 0xffff);
23010 load_seg_vm(4, new_fs & 0xffff);
23011 load_seg_vm(5, new_gs & 0xffff);
23013 env->eip = new_eip & 0xffff;
23014 (env->regs[4]) = new_esp;
23017 void helper_iret_protected(int shift, int next_eip)
23019 int tss_selector, type;
23023 if (env->eflags & 0x00004000) {
23028 tss_selector = lduw_kernel(env->tr.base + 0);
23029 if (tss_selector & 4)
23030 raise_exception_err(10, tss_selector & 0xfffc);
23031 if (load_segment(&e1, &e2, tss_selector) != 0)
23032 raise_exception_err(10, tss_selector & 0xfffc);
23033 type = (e2 >> 8) & 0x17;
23036 raise_exception_err(10, tss_selector & 0xfffc);
23037 switch_tss(tss_selector, e1, e2, 1, next_eip);
23039 helper_ret_protected(shift, 1, 0);
23041 env->hflags2 &= ~(1 << 2);
23044 void helper_lret_protected(int shift, int addend)
23046 helper_ret_protected(shift, 0, addend);
23049 void helper_sysenter(void)
23051 if (env->sysenter_cs == 0) {
23052 raise_exception_err(13, 0);
23054 env->eflags &= ~(0x00020000 | 0x00000200 | 0x00010000);
23055 cpu_x86_set_cpl(env, 0);
23056 # 2968 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
23058 cpu_x86_load_seg_cache(env, 1, env->sysenter_cs & 0xfffc,
23060 (1 << 23) | (1 << 22) | (1 << 15) |
23062 (1 << 11) | (1 << 9) | (1 << 8));
23064 cpu_x86_load_seg_cache(env, 2, (env->sysenter_cs + 8) & 0xfffc,
23066 (1 << 23) | (1 << 22) | (1 << 15) |
23068 (1 << 9) | (1 << 8));
23069 (env->regs[4]) = env->sysenter_esp;
23070 (env->eip) = env->sysenter_eip;
23073 void helper_sysexit(int dflag)
23077 cpl = env->hflags & (3 << 0);
23078 if (env->sysenter_cs == 0 || cpl != 0) {
23079 raise_exception_err(13, 0);
23081 cpu_x86_set_cpl(env, 3);
23082 # 3007 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
23084 cpu_x86_load_seg_cache(env, 1, ((env->sysenter_cs + 16) & 0xfffc) | 3,
23086 (1 << 23) | (1 << 22) | (1 << 15) |
23087 (1 << 12) | (3 << 13) |
23088 (1 << 11) | (1 << 9) | (1 << 8));
23089 cpu_x86_load_seg_cache(env, 2, ((env->sysenter_cs + 24) & 0xfffc) | 3,
23091 (1 << 23) | (1 << 22) | (1 << 15) |
23092 (1 << 12) | (3 << 13) |
23093 (1 << 9) | (1 << 8));
23095 (env->regs[4]) = (env->regs[1]);
23096 (env->eip) = (env->regs[2]);
23098 # 3037 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
23099 target_ulong helper_read_crN(int reg)
23103 helper_svm_check_intercept_param(0x000 + reg, 0);
23106 val = env->cr[reg];
23109 if (!(env->hflags2 & (1 << 3))) {
23110 val = cpu_get_apic_tpr(env->apic_state);
23119 void helper_write_crN(int reg, target_ulong t0)
23121 helper_svm_check_intercept_param(0x010 + reg, 0);
23124 cpu_x86_update_cr0(env, t0);
23127 cpu_x86_update_cr3(env, t0);
23130 cpu_x86_update_cr4(env, t0);
23133 if (!(env->hflags2 & (1 << 3))) {
23134 cpu_set_apic_tpr(env->apic_state, t0);
23136 env->v_tpr = t0 & 0x0f;
23144 void helper_movl_drN_T0(int reg, target_ulong t0)
23149 hw_breakpoint_remove(env, reg);
23151 hw_breakpoint_insert(env, reg);
23152 } else if (reg == 7) {
23153 for (i = 0; i < 4; i++)
23154 hw_breakpoint_remove(env, i);
23156 for (i = 0; i < 4; i++)
23157 hw_breakpoint_insert(env, i);
23163 void helper_lmsw(target_ulong t0)
23167 t0 = (env->cr[0] & ~0xe) | (t0 & 0xf);
23168 helper_write_crN(0, t0);
23171 void helper_clts(void)
23173 env->cr[0] &= ~(1 << 3);
23174 env->hflags &= ~(1 << 11);
23177 void helper_invlpg(target_ulong addr)
23179 helper_svm_check_intercept_param(0x079, 0);
23180 tlb_flush_page(env, addr);
23183 void helper_rdtsc(void)
23187 if ((env->cr[4] & (1 << 2)) && ((env->hflags & (3 << 0)) != 0)) {
23188 raise_exception(13);
23190 helper_svm_check_intercept_param(0x06e, 0);
23192 val = cpu_get_tsc(env) + env->tsc_offset;
23193 (env->regs[0]) = (uint32_t)(val);
23194 (env->regs[2]) = (uint32_t)(val >> 32);
23197 void helper_rdtscp(void)
23200 (env->regs[1]) = (uint32_t)(env->tsc_aux);
23203 void helper_rdpmc(void)
23205 if ((env->cr[4] & (1 << 8)) && ((env->hflags & (3 << 0)) != 0)) {
23206 raise_exception(13);
23208 helper_svm_check_intercept_param(0x06f, 0);
23211 raise_exception_err(6, 0);
23213 # 3161 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
23214 void helper_wrmsr(void)
23218 helper_svm_check_intercept_param(0x07c, 1);
23220 val = ((uint32_t)(env->regs[0])) | ((uint64_t)((uint32_t)(env->regs[2])) << 32);
23222 switch((uint32_t)(env->regs[1])) {
23224 env->sysenter_cs = val & 0xffff;
23227 env->sysenter_esp = val;
23230 env->sysenter_eip = val;
23233 cpu_set_apic_base(env->apic_state, val);
23237 uint64_t update_mask;
23239 if (env->cpuid_ext2_features & (1 << 11))
23240 update_mask |= (1 << 0);
23241 if (env->cpuid_ext2_features & (1 << 29))
23242 update_mask |= (1 << 8);
23243 if (env->cpuid_ext2_features & (1 << 25))
23244 update_mask |= (1 << 14);
23245 if (env->cpuid_ext2_features & (1 << 20))
23246 update_mask |= (1 << 11);
23247 if (env->cpuid_ext3_features & (1 << 2))
23248 update_mask |= (1 << 12);
23249 if (env->cpuid_ext2_features & (1 << 25))
23250 update_mask |= (1 << 14);
23251 cpu_load_efer(env, (env->efer & ~update_mask) |
23252 (val & update_mask));
23262 env->vm_hsave = val;
23264 # 3231 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
23265 case (0x200 + 2 * (0)):
23266 case (0x200 + 2 * (1)):
23267 case (0x200 + 2 * (2)):
23268 case (0x200 + 2 * (3)):
23269 case (0x200 + 2 * (4)):
23270 case (0x200 + 2 * (5)):
23271 case (0x200 + 2 * (6)):
23272 case (0x200 + 2 * (7)):
23273 env->mtrr_var[((uint32_t)(env->regs[1]) - (0x200 + 2 * (0))) / 2].base = val;
23275 case (0x200 + 2 * (0) + 1):
23276 case (0x200 + 2 * (1) + 1):
23277 case (0x200 + 2 * (2) + 1):
23278 case (0x200 + 2 * (3) + 1):
23279 case (0x200 + 2 * (4) + 1):
23280 case (0x200 + 2 * (5) + 1):
23281 case (0x200 + 2 * (6) + 1):
23282 case (0x200 + 2 * (7) + 1):
23283 env->mtrr_var[((uint32_t)(env->regs[1]) - (0x200 + 2 * (0) + 1)) / 2].mask = val;
23286 env->mtrr_fixed[(uint32_t)(env->regs[1]) - 0x250] = val;
23290 env->mtrr_fixed[(uint32_t)(env->regs[1]) - 0x258 + 1] = val;
23300 env->mtrr_fixed[(uint32_t)(env->regs[1]) - 0x268 + 3] = val;
23303 env->mtrr_deftype = val;
23306 env->mcg_status = val;
23309 if ((env->mcg_cap & (1ULL<<8))
23310 && (val == 0 || val == ~(uint64_t)0))
23311 env->mcg_ctl = val;
23314 env->tsc_aux = val;
23317 env->msr_ia32_misc_enable = val;
23320 if ((uint32_t)(env->regs[1]) >= 0x400
23321 && (uint32_t)(env->regs[1]) < 0x400 + (4 * env->mcg_cap & 0xff)) {
23322 uint32_t offset = (uint32_t)(env->regs[1]) - 0x400;
23323 if ((offset & 0x3) != 0
23324 || (val == 0 || val == ~(uint64_t)0))
23325 env->mce_banks[offset] = val;
23333 void helper_rdmsr(void)
23337 helper_svm_check_intercept_param(0x07c, 0);
23339 switch((uint32_t)(env->regs[1])) {
23341 val = env->sysenter_cs;
23344 val = env->sysenter_esp;
23347 val = env->sysenter_eip;
23350 val = cpu_get_apic_base(env->apic_state);
23362 val = env->vm_hsave;
23368 val |= (((uint64_t)4ULL) << 40);
23370 # 3359 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
23371 case (0x200 + 2 * (0)):
23372 case (0x200 + 2 * (1)):
23373 case (0x200 + 2 * (2)):
23374 case (0x200 + 2 * (3)):
23375 case (0x200 + 2 * (4)):
23376 case (0x200 + 2 * (5)):
23377 case (0x200 + 2 * (6)):
23378 case (0x200 + 2 * (7)):
23379 val = env->mtrr_var[((uint32_t)(env->regs[1]) - (0x200 + 2 * (0))) / 2].base;
23381 case (0x200 + 2 * (0) + 1):
23382 case (0x200 + 2 * (1) + 1):
23383 case (0x200 + 2 * (2) + 1):
23384 case (0x200 + 2 * (3) + 1):
23385 case (0x200 + 2 * (4) + 1):
23386 case (0x200 + 2 * (5) + 1):
23387 case (0x200 + 2 * (6) + 1):
23388 case (0x200 + 2 * (7) + 1):
23389 val = env->mtrr_var[((uint32_t)(env->regs[1]) - (0x200 + 2 * (0) + 1)) / 2].mask;
23392 val = env->mtrr_fixed[0];
23396 val = env->mtrr_fixed[(uint32_t)(env->regs[1]) - 0x258 + 1];
23406 val = env->mtrr_fixed[(uint32_t)(env->regs[1]) - 0x268 + 3];
23409 val = env->mtrr_deftype;
23412 if (env->cpuid_features & (1 << 12))
23413 val = 8 | (1 << 8) | (1 << 10);
23419 val = env->mcg_cap;
23422 if (env->mcg_cap & (1ULL<<8))
23423 val = env->mcg_ctl;
23428 val = env->mcg_status;
23431 val = env->msr_ia32_misc_enable;
23434 if ((uint32_t)(env->regs[1]) >= 0x400
23435 && (uint32_t)(env->regs[1]) < 0x400 + (4 * env->mcg_cap & 0xff)) {
23436 uint32_t offset = (uint32_t)(env->regs[1]) - 0x400;
23437 val = env->mce_banks[offset];
23444 (env->regs[0]) = (uint32_t)(val);
23445 (env->regs[2]) = (uint32_t)(val >> 32);
23449 target_ulong helper_lsl(target_ulong selector1)
23451 unsigned int limit;
23452 uint32_t e1, e2, eflags, selector;
23453 int rpl, dpl, cpl, type;
23455 selector = selector1 & 0xffff;
23456 eflags = helper_cc_compute_all((env->cc_op));
23457 if ((selector & 0xfffc) == 0)
23459 if (load_segment(&e1, &e2, selector) != 0)
23461 rpl = selector & 3;
23462 dpl = (e2 >> 13) & 3;
23463 cpl = env->hflags & (3 << 0);
23464 if (e2 & (1 << 12)) {
23465 if ((e2 & (1 << 11)) && (e2 & (1 << 10))) {
23468 if (dpl < cpl || dpl < rpl)
23472 type = (e2 >> 8) & 0xf;
23483 if (dpl < cpl || dpl < rpl) {
23485 (env->cc_src) = eflags & ~0x0040;
23489 limit = get_seg_limit(e1, e2);
23490 (env->cc_src) = eflags | 0x0040;
23494 target_ulong helper_lar(target_ulong selector1)
23496 uint32_t e1, e2, eflags, selector;
23497 int rpl, dpl, cpl, type;
23499 selector = selector1 & 0xffff;
23500 eflags = helper_cc_compute_all((env->cc_op));
23501 if ((selector & 0xfffc) == 0)
23503 if (load_segment(&e1, &e2, selector) != 0)
23505 rpl = selector & 3;
23506 dpl = (e2 >> 13) & 3;
23507 cpl = env->hflags & (3 << 0);
23508 if (e2 & (1 << 12)) {
23509 if ((e2 & (1 << 11)) && (e2 & (1 << 10))) {
23512 if (dpl < cpl || dpl < rpl)
23516 type = (e2 >> 8) & 0xf;
23530 if (dpl < cpl || dpl < rpl) {
23532 (env->cc_src) = eflags & ~0x0040;
23536 (env->cc_src) = eflags | 0x0040;
23537 return e2 & 0x00f0ff00;
23540 void helper_verr(target_ulong selector1)
23542 uint32_t e1, e2, eflags, selector;
23545 selector = selector1 & 0xffff;
23546 eflags = helper_cc_compute_all((env->cc_op));
23547 if ((selector & 0xfffc) == 0)
23549 if (load_segment(&e1, &e2, selector) != 0)
23551 if (!(e2 & (1 << 12)))
23553 rpl = selector & 3;
23554 dpl = (e2 >> 13) & 3;
23555 cpl = env->hflags & (3 << 0);
23556 if (e2 & (1 << 11)) {
23557 if (!(e2 & (1 << 9)))
23559 if (!(e2 & (1 << 10))) {
23560 if (dpl < cpl || dpl < rpl)
23564 if (dpl < cpl || dpl < rpl) {
23566 (env->cc_src) = eflags & ~0x0040;
23570 (env->cc_src) = eflags | 0x0040;
23573 void helper_verw(target_ulong selector1)
23575 uint32_t e1, e2, eflags, selector;
23578 selector = selector1 & 0xffff;
23579 eflags = helper_cc_compute_all((env->cc_op));
23580 if ((selector & 0xfffc) == 0)
23582 if (load_segment(&e1, &e2, selector) != 0)
23584 if (!(e2 & (1 << 12)))
23586 rpl = selector & 3;
23587 dpl = (e2 >> 13) & 3;
23588 cpl = env->hflags & (3 << 0);
23589 if (e2 & (1 << 11)) {
23592 if (dpl < cpl || dpl < rpl)
23594 if (!(e2 & (1 << 9))) {
23596 (env->cc_src) = eflags & ~0x0040;
23600 (env->cc_src) = eflags | 0x0040;
23605 static __attribute__ (( always_inline )) __inline__ double floatx80_to_double(floatx80 a)
23612 u.f64 = floatx80_to_float64(a, &env->fp_status);
23616 static __attribute__ (( always_inline )) __inline__ floatx80 double_to_floatx80(double a)
23624 return float64_to_floatx80(u.f64, &env->fp_status);
23627 static void fpu_set_exception(int mask)
23630 if (env->fpus & (~env->fpuc & 0x3f))
23631 env->fpus |= (1 << 7) | (1 << 15);
23634 static __attribute__ (( always_inline )) __inline__ floatx80 helper_fdiv(floatx80 a, floatx80 b)
23636 if (floatx80_is_zero(b)) {
23637 fpu_set_exception((1 << 2));
23639 return floatx80_div(a, b, &env->fp_status);
23642 static void fpu_raise_exception(void)
23644 if (env->cr[0] & (1 << 5)) {
23645 raise_exception(16);
23654 void helper_flds_FT0(uint32_t val)
23661 (env->ft0) = float32_to_floatx80(u.f, &env->fp_status);
23664 void helper_fldl_FT0(uint64_t val)
23671 (env->ft0) = float64_to_floatx80(u.f, &env->fp_status);
23674 void helper_fildl_FT0(int32_t val)
23676 (env->ft0) = int32_to_floatx80(val, &env->fp_status);
23679 void helper_flds_ST0(uint32_t val)
23686 new_fpstt = (env->fpstt - 1) & 7;
23688 env->fpregs[new_fpstt].d = float32_to_floatx80(u.f, &env->fp_status);
23689 env->fpstt = new_fpstt;
23690 env->fptags[new_fpstt] = 0;
23693 void helper_fldl_ST0(uint64_t val)
23700 new_fpstt = (env->fpstt - 1) & 7;
23702 env->fpregs[new_fpstt].d = float64_to_floatx80(u.f, &env->fp_status);
23703 env->fpstt = new_fpstt;
23704 env->fptags[new_fpstt] = 0;
23707 void helper_fildl_ST0(int32_t val)
23710 new_fpstt = (env->fpstt - 1) & 7;
23711 env->fpregs[new_fpstt].d = int32_to_floatx80(val, &env->fp_status);
23712 env->fpstt = new_fpstt;
23713 env->fptags[new_fpstt] = 0;
23716 void helper_fildll_ST0(int64_t val)
23719 new_fpstt = (env->fpstt - 1) & 7;
23720 env->fpregs[new_fpstt].d = int64_to_floatx80(val, &env->fp_status);
23721 env->fpstt = new_fpstt;
23722 env->fptags[new_fpstt] = 0;
23725 uint32_t helper_fsts_ST0(void)
23731 u.f = floatx80_to_float32((env->fpregs[env->fpstt].d), &env->fp_status);
23735 uint64_t helper_fstl_ST0(void)
23741 u.f = floatx80_to_float64((env->fpregs[env->fpstt].d), &env->fp_status);
23745 int32_t helper_fist_ST0(void)
23748 val = floatx80_to_int32((env->fpregs[env->fpstt].d), &env->fp_status);
23749 if (val != (int16_t)val)
23754 int32_t helper_fistl_ST0(void)
23757 val = floatx80_to_int32((env->fpregs[env->fpstt].d), &env->fp_status);
23761 int64_t helper_fistll_ST0(void)
23764 val = floatx80_to_int64((env->fpregs[env->fpstt].d), &env->fp_status);
23768 int32_t helper_fistt_ST0(void)
23771 val = floatx80_to_int32_round_to_zero((env->fpregs[env->fpstt].d), &env->fp_status);
23772 if (val != (int16_t)val)
23777 int32_t helper_fisttl_ST0(void)
23780 val = floatx80_to_int32_round_to_zero((env->fpregs[env->fpstt].d), &env->fp_status);
23784 int64_t helper_fisttll_ST0(void)
23787 val = floatx80_to_int64_round_to_zero((env->fpregs[env->fpstt].d), &env->fp_status);
23791 void helper_fldt_ST0(target_ulong ptr)
23794 new_fpstt = (env->fpstt - 1) & 7;
23795 env->fpregs[new_fpstt].d = helper_fldt(ptr);
23796 env->fpstt = new_fpstt;
23797 env->fptags[new_fpstt] = 0;
23800 void helper_fstt_ST0(target_ulong ptr)
23802 helper_fstt((env->fpregs[env->fpstt].d), ptr);
23805 void helper_fpush(void)
23810 void helper_fpop(void)
23815 void helper_fdecstp(void)
23817 env->fpstt = (env->fpstt - 1) & 7;
23818 env->fpus &= (~0x4700);
23821 void helper_fincstp(void)
23823 env->fpstt = (env->fpstt + 1) & 7;
23824 env->fpus &= (~0x4700);
23829 void helper_ffree_STN(int st_index)
23831 env->fptags[(env->fpstt + st_index) & 7] = 1;
23834 void helper_fmov_ST0_FT0(void)
23836 (env->fpregs[env->fpstt].d) = (env->ft0);
23839 void helper_fmov_FT0_STN(int st_index)
23841 (env->ft0) = (env->fpregs[(env->fpstt + (st_index)) & 7].d);
23844 void helper_fmov_ST0_STN(int st_index)
23846 (env->fpregs[env->fpstt].d) = (env->fpregs[(env->fpstt + (st_index)) & 7].d);
23849 void helper_fmov_STN_ST0(int st_index)
23851 (env->fpregs[(env->fpstt + (st_index)) & 7].d) = (env->fpregs[env->fpstt].d);
23854 void helper_fxchg_ST0_STN(int st_index)
23857 tmp = (env->fpregs[(env->fpstt + (st_index)) & 7].d);
23858 (env->fpregs[(env->fpstt + (st_index)) & 7].d) = (env->fpregs[env->fpstt].d);
23859 (env->fpregs[env->fpstt].d) = tmp;
23864 static const int fcom_ccval[4] = {0x0100, 0x4000, 0x0000, 0x4500};
23866 void helper_fcom_ST0_FT0(void)
23870 ret = floatx80_compare((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23871 env->fpus = (env->fpus & ~0x4500) | fcom_ccval[ret + 1];
23874 void helper_fucom_ST0_FT0(void)
23878 ret = floatx80_compare_quiet((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23879 env->fpus = (env->fpus & ~0x4500) | fcom_ccval[ret+ 1];
23882 static const int fcomi_ccval[4] = {0x0001, 0x0040, 0, 0x0040 | 0x0004 | 0x0001};
23884 void helper_fcomi_ST0_FT0(void)
23889 ret = floatx80_compare((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23890 eflags = helper_cc_compute_all((env->cc_op));
23891 eflags = (eflags & ~(0x0040 | 0x0004 | 0x0001)) | fcomi_ccval[ret + 1];
23892 (env->cc_src) = eflags;
23895 void helper_fucomi_ST0_FT0(void)
23900 ret = floatx80_compare_quiet((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23901 eflags = helper_cc_compute_all((env->cc_op));
23902 eflags = (eflags & ~(0x0040 | 0x0004 | 0x0001)) | fcomi_ccval[ret + 1];
23903 (env->cc_src) = eflags;
23906 void helper_fadd_ST0_FT0(void)
23908 (env->fpregs[env->fpstt].d) = floatx80_add((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23911 void helper_fmul_ST0_FT0(void)
23913 (env->fpregs[env->fpstt].d) = floatx80_mul((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23916 void helper_fsub_ST0_FT0(void)
23918 (env->fpregs[env->fpstt].d) = floatx80_sub((env->fpregs[env->fpstt].d), (env->ft0), &env->fp_status);
23921 void helper_fsubr_ST0_FT0(void)
23923 (env->fpregs[env->fpstt].d) = floatx80_sub((env->ft0), (env->fpregs[env->fpstt].d), &env->fp_status);
23926 void helper_fdiv_ST0_FT0(void)
23928 (env->fpregs[env->fpstt].d) = helper_fdiv((env->fpregs[env->fpstt].d), (env->ft0));
23931 void helper_fdivr_ST0_FT0(void)
23933 (env->fpregs[env->fpstt].d) = helper_fdiv((env->ft0), (env->fpregs[env->fpstt].d));
23938 void helper_fadd_STN_ST0(int st_index)
23940 (env->fpregs[(env->fpstt + (st_index)) & 7].d) = floatx80_add((env->fpregs[(env->fpstt + (st_index)) & 7].d), (env->fpregs[env->fpstt].d), &env->fp_status);
23943 void helper_fmul_STN_ST0(int st_index)
23945 (env->fpregs[(env->fpstt + (st_index)) & 7].d) = floatx80_mul((env->fpregs[(env->fpstt + (st_index)) & 7].d), (env->fpregs[env->fpstt].d), &env->fp_status);
23948 void helper_fsub_STN_ST0(int st_index)
23950 (env->fpregs[(env->fpstt + (st_index)) & 7].d) = floatx80_sub((env->fpregs[(env->fpstt + (st_index)) & 7].d), (env->fpregs[env->fpstt].d), &env->fp_status);
23953 void helper_fsubr_STN_ST0(int st_index)
23955 (env->fpregs[(env->fpstt + (st_index)) & 7].d) = floatx80_sub((env->fpregs[env->fpstt].d), (env->fpregs[(env->fpstt + (st_index)) & 7].d), &env->fp_status);
23958 void helper_fdiv_STN_ST0(int st_index)
23961 p = &(env->fpregs[(env->fpstt + (st_index)) & 7].d);
23962 *p = helper_fdiv(*p, (env->fpregs[env->fpstt].d));
23965 void helper_fdivr_STN_ST0(int st_index)
23968 p = &(env->fpregs[(env->fpstt + (st_index)) & 7].d);
23969 *p = helper_fdiv((env->fpregs[env->fpstt].d), *p);
23973 void helper_fchs_ST0(void)
23975 (env->fpregs[env->fpstt].d) = floatx80_chs((env->fpregs[env->fpstt].d));
23978 void helper_fabs_ST0(void)
23980 (env->fpregs[env->fpstt].d) = floatx80_abs((env->fpregs[env->fpstt].d));
23983 void helper_fld1_ST0(void)
23985 (env->fpregs[env->fpstt].d) = ((floatx80) { 0x8000000000000000LL, 0x3fff });
23988 void helper_fldl2t_ST0(void)
23990 (env->fpregs[env->fpstt].d) = ((floatx80) { 0xd49a784bcd1b8afeLL, 0x4000 });
23993 void helper_fldl2e_ST0(void)
23995 (env->fpregs[env->fpstt].d) = ((floatx80) { 0xb8aa3b295c17f0bcLL, 0x3fff });
23998 void helper_fldpi_ST0(void)
24000 (env->fpregs[env->fpstt].d) = ((floatx80) { 0xc90fdaa22168c235LL, 0x4000 });
24003 void helper_fldlg2_ST0(void)
24005 (env->fpregs[env->fpstt].d) = ((floatx80) { 0x9a209a84fbcff799LL, 0x3ffd });
24008 void helper_fldln2_ST0(void)
24010 (env->fpregs[env->fpstt].d) = ((floatx80) { 0xb17217f7d1cf79acLL, 0x3ffe });
24013 void helper_fldz_ST0(void)
24015 (env->fpregs[env->fpstt].d) = ((floatx80) { 0x0000000000000000LL, 0x0000 });
24018 void helper_fldz_FT0(void)
24020 (env->ft0) = ((floatx80) { 0x0000000000000000LL, 0x0000 });
24023 uint32_t helper_fnstsw(void)
24025 return (env->fpus & ~0x3800) | (env->fpstt & 0x7) << 11;
24028 uint32_t helper_fnstcw(void)
24033 static void update_fp_status(void)
24038 switch(env->fpuc & 0xc00) {
24041 rnd_type = float_round_nearest_even;
24044 rnd_type = float_round_down;
24047 rnd_type = float_round_up;
24050 rnd_type = float_round_to_zero;
24053 set_float_rounding_mode(rnd_type, &env->fp_status);
24054 switch((env->fpuc >> 8) & 3) {
24066 set_floatx80_rounding_precision(rnd_type, &env->fp_status);
24069 void helper_fldcw(uint32_t val)
24072 update_fp_status();
24075 void helper_fclex(void)
24077 env->fpus &= 0x7f00;
24080 void helper_fwait(void)
24082 if (env->fpus & (1 << 7))
24083 fpu_raise_exception();
24086 void helper_fninit(void)
24091 env->fptags[0] = 1;
24092 env->fptags[1] = 1;
24093 env->fptags[2] = 1;
24094 env->fptags[3] = 1;
24095 env->fptags[4] = 1;
24096 env->fptags[5] = 1;
24097 env->fptags[6] = 1;
24098 env->fptags[7] = 1;
24103 void helper_fbld_ST0(target_ulong ptr)
24111 for(i = 8; i >= 0; i--) {
24112 v = ldub_data(ptr + i);
24113 val = (val * 100) + ((v >> 4) * 10) + (v & 0xf);
24115 tmp = int64_to_floatx80(val, &env->fp_status);
24116 if (ldub_data(ptr + 9) & 0x80) {
24120 (env->fpregs[env->fpstt].d) = tmp;
24123 void helper_fbst_ST0(target_ulong ptr)
24126 target_ulong mem_ref, mem_end;
24129 val = floatx80_to_int64((env->fpregs[env->fpstt].d), &env->fp_status);
24131 mem_end = mem_ref + 9;
24133 stb_data(mem_end, 0x80);
24136 stb_data(mem_end, 0x00);
24138 while (mem_ref < mem_end) {
24143 v = ((v / 10) << 4) | (v % 10);
24144 stb_data(mem_ref++, v);
24146 while (mem_ref < mem_end) {
24147 stb_data(mem_ref++, 0);
24151 void helper_f2xm1(void)
24153 double val = floatx80_to_double((env->fpregs[env->fpstt].d));
24154 val = pow(2.0, val) - 1.0;
24155 (env->fpregs[env->fpstt].d) = double_to_floatx80(val);
24158 void helper_fyl2x(void)
24160 double fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24163 fptemp = log(fptemp)/log(2.0);
24164 fptemp *= floatx80_to_double((env->fpregs[(env->fpstt + (1)) & 7].d));
24165 (env->fpregs[(env->fpstt + (1)) & 7].d) = double_to_floatx80(fptemp);
24168 env->fpus &= (~0x4700);
24169 env->fpus |= 0x400;
24173 void helper_fptan(void)
24175 double fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24177 if((fptemp > 9223372036854775808.0)||(fptemp < -9223372036854775808.0)) {
24178 env->fpus |= 0x400;
24180 fptemp = tan(fptemp);
24181 (env->fpregs[env->fpstt].d) = double_to_floatx80(fptemp);
24183 (env->fpregs[env->fpstt].d) = ((floatx80) { 0x8000000000000000LL, 0x3fff });
24184 env->fpus &= (~0x400);
24189 void helper_fpatan(void)
24191 double fptemp, fpsrcop;
24193 fpsrcop = floatx80_to_double((env->fpregs[(env->fpstt + (1)) & 7].d));
24194 fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24195 (env->fpregs[(env->fpstt + (1)) & 7].d) = double_to_floatx80(atan2(fpsrcop, fptemp));
24199 void helper_fxtract(void)
24203 temp.d = (env->fpregs[env->fpstt].d);
24205 if (floatx80_is_zero((env->fpregs[env->fpstt].d))) {
24207 (env->fpregs[env->fpstt].d) = floatx80_div(floatx80_chs(((floatx80) { 0x8000000000000000LL, 0x3fff })), ((floatx80) { 0x0000000000000000LL, 0x0000 }), &env->fp_status);
24209 (env->fpregs[env->fpstt].d) = temp.d;
24213 expdif = (temp.l.upper & 0x7fff) - 16383;
24215 (env->fpregs[env->fpstt].d) = int32_to_floatx80(expdif, &env->fp_status);
24217 temp.l.upper = (temp.l.upper & ~(0x7fff)) | 16383;
24218 (env->fpregs[env->fpstt].d) = temp.d;
24222 void helper_fprem1(void)
24224 double st0, st1, dblq, fpsrcop, fptemp;
24225 CPU_LDoubleU fpsrcop1, fptemp1;
24227 signed long long int q;
24229 st0 = floatx80_to_double((env->fpregs[env->fpstt].d));
24230 st1 = floatx80_to_double((env->fpregs[(env->fpstt + (1)) & 7].d));
24232 if ((sizeof (st0) == sizeof (float) ? __isinff (st0) : sizeof (st0) == sizeof (double) ? __isinf (st0) : __isinfl (st0)) || (sizeof (st0) == sizeof (float) ? __isnanf (st0) : sizeof (st0) == sizeof (double) ? __isnan (st0) : __isnanl (st0)) || (sizeof (st1) == sizeof (float) ? __isnanf (st1) : sizeof (st1) == sizeof (double) ? __isnan (st1) : __isnanl (st1)) || (st1 == 0.0)) {
24233 (env->fpregs[env->fpstt].d) = double_to_floatx80(0.0 / 0.0);
24234 env->fpus &= (~0x4700);
24240 fpsrcop1.d = (env->fpregs[env->fpstt].d);
24241 fptemp1.d = (env->fpregs[(env->fpstt + (1)) & 7].d);
24242 expdif = (fpsrcop1.l.upper & 0x7fff) - (fptemp1.l.upper & 0x7fff);
24246 env->fpus &= (~0x4700);
24252 dblq = fpsrcop / fptemp;
24255 st0 = fpsrcop - fptemp * dblq;
24259 q = (signed long long int)(-dblq);
24261 q = (signed long long int)dblq;
24263 env->fpus &= (~0x4700);
24265 env->fpus |= (q & 0x4) << (8 - 2);
24266 env->fpus |= (q & 0x2) << (14 - 1);
24267 env->fpus |= (q & 0x1) << (9 - 0);
24269 env->fpus |= 0x400;
24270 fptemp = pow(2.0, expdif - 50);
24271 fpsrcop = (st0 / st1) / fptemp;
24273 fpsrcop = (fpsrcop < 0.0) ?
24274 -(floor(fabs(fpsrcop))) : floor(fpsrcop);
24275 st0 -= (st1 * fpsrcop * fptemp);
24277 (env->fpregs[env->fpstt].d) = double_to_floatx80(st0);
24280 void helper_fprem(void)
24282 double st0, st1, dblq, fpsrcop, fptemp;
24283 CPU_LDoubleU fpsrcop1, fptemp1;
24285 signed long long int q;
24287 st0 = floatx80_to_double((env->fpregs[env->fpstt].d));
24288 st1 = floatx80_to_double((env->fpregs[(env->fpstt + (1)) & 7].d));
24290 if ((sizeof (st0) == sizeof (float) ? __isinff (st0) : sizeof (st0) == sizeof (double) ? __isinf (st0) : __isinfl (st0)) || (sizeof (st0) == sizeof (float) ? __isnanf (st0) : sizeof (st0) == sizeof (double) ? __isnan (st0) : __isnanl (st0)) || (sizeof (st1) == sizeof (float) ? __isnanf (st1) : sizeof (st1) == sizeof (double) ? __isnan (st1) : __isnanl (st1)) || (st1 == 0.0)) {
24291 (env->fpregs[env->fpstt].d) = double_to_floatx80(0.0 / 0.0);
24292 env->fpus &= (~0x4700);
24298 fpsrcop1.d = (env->fpregs[env->fpstt].d);
24299 fptemp1.d = (env->fpregs[(env->fpstt + (1)) & 7].d);
24300 expdif = (fpsrcop1.l.upper & 0x7fff) - (fptemp1.l.upper & 0x7fff);
24304 env->fpus &= (~0x4700);
24309 if ( expdif < 53 ) {
24310 dblq = fpsrcop / fptemp ;
24312 dblq = (dblq < 0.0) ? ceil(dblq) : floor(dblq);
24313 st0 = fpsrcop - fptemp * dblq;
24317 q = (signed long long int)(-dblq);
24319 q = (signed long long int)dblq;
24321 env->fpus &= (~0x4700);
24323 env->fpus |= (q & 0x4) << (8 - 2);
24324 env->fpus |= (q & 0x2) << (14 - 1);
24325 env->fpus |= (q & 0x1) << (9 - 0);
24327 int N = 32 + (expdif % 32);
24328 env->fpus |= 0x400;
24329 fptemp = pow(2.0, (double)(expdif - N));
24330 fpsrcop = (st0 / st1) / fptemp;
24332 fpsrcop = (fpsrcop < 0.0) ?
24333 -(floor(fabs(fpsrcop))) : floor(fpsrcop);
24334 st0 -= (st1 * fpsrcop * fptemp);
24336 (env->fpregs[env->fpstt].d) = double_to_floatx80(st0);
24339 void helper_fyl2xp1(void)
24341 double fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24343 if ((fptemp+1.0)>0.0) {
24344 fptemp = log(fptemp+1.0) / log(2.0);
24345 fptemp *= floatx80_to_double((env->fpregs[(env->fpstt + (1)) & 7].d));
24346 (env->fpregs[(env->fpstt + (1)) & 7].d) = double_to_floatx80(fptemp);
24349 env->fpus &= (~0x4700);
24350 env->fpus |= 0x400;
24354 void helper_fsqrt(void)
24356 if (floatx80_is_neg((env->fpregs[env->fpstt].d))) {
24357 env->fpus &= (~0x4700);
24358 env->fpus |= 0x400;
24360 (env->fpregs[env->fpstt].d) = floatx80_sqrt((env->fpregs[env->fpstt].d), &env->fp_status);
24363 void helper_fsincos(void)
24365 double fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24367 if ((fptemp > 9223372036854775808.0)||(fptemp < -9223372036854775808.0)) {
24368 env->fpus |= 0x400;
24370 (env->fpregs[env->fpstt].d) = double_to_floatx80(sin(fptemp));
24372 (env->fpregs[env->fpstt].d) = double_to_floatx80(cos(fptemp));
24373 env->fpus &= (~0x400);
24378 void helper_frndint(void)
24380 (env->fpregs[env->fpstt].d) = floatx80_round_to_int((env->fpregs[env->fpstt].d), &env->fp_status);
24383 void helper_fscale(void)
24385 if (floatx80_is_any_nan((env->fpregs[(env->fpstt + (1)) & 7].d))) {
24386 (env->fpregs[env->fpstt].d) = (env->fpregs[(env->fpstt + (1)) & 7].d);
24388 int n = floatx80_to_int32_round_to_zero((env->fpregs[(env->fpstt + (1)) & 7].d), &env->fp_status);
24389 (env->fpregs[env->fpstt].d) = floatx80_scalbn((env->fpregs[env->fpstt].d), n, &env->fp_status);
24393 void helper_fsin(void)
24395 double fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24397 if ((fptemp > 9223372036854775808.0)||(fptemp < -9223372036854775808.0)) {
24398 env->fpus |= 0x400;
24400 (env->fpregs[env->fpstt].d) = double_to_floatx80(sin(fptemp));
24401 env->fpus &= (~0x400);
24406 void helper_fcos(void)
24408 double fptemp = floatx80_to_double((env->fpregs[env->fpstt].d));
24410 if((fptemp > 9223372036854775808.0)||(fptemp < -9223372036854775808.0)) {
24411 env->fpus |= 0x400;
24413 (env->fpregs[env->fpstt].d) = double_to_floatx80(cos(fptemp));
24414 env->fpus &= (~0x400);
24419 void helper_fxam_ST0(void)
24424 temp.d = (env->fpregs[env->fpstt].d);
24426 env->fpus &= (~0x4700);
24427 if (((temp.l.upper) & 0x8000))
24428 env->fpus |= 0x200;
24431 expdif = (temp.l.upper & 0x7fff);
24432 if (expdif == 0x7fff) {
24433 if ((temp.l.lower) == 0x8000000000000000ULL)
24434 env->fpus |= 0x500 ;
24436 env->fpus |= 0x100 ;
24437 } else if (expdif == 0) {
24438 if ((temp.l.lower) == 0)
24439 env->fpus |= 0x4000 ;
24441 env->fpus |= 0x4400 ;
24443 env->fpus |= 0x400;
24447 void helper_fstenv(target_ulong ptr, int data32)
24449 int fpus, fptag, exp, i;
24453 fpus = (env->fpus & ~0x3800) | (env->fpstt & 0x7) << 11;
24455 for (i=7; i>=0; i--) {
24457 if (env->fptags[i]) {
24460 tmp.d = env->fpregs[i].d;
24461 exp = (tmp.l.upper & 0x7fff);
24462 mant = (tmp.l.lower);
24463 if (exp == 0 && mant == 0) {
24466 } else if (exp == 0 || exp == 0x7fff
24467 || (mant & (1LL << 63)) == 0
24476 stl_data(ptr, env->fpuc);
24477 stl_data(ptr + 4, fpus);
24478 stl_data(ptr + 8, fptag);
24479 stl_data(ptr + 12, 0);
24480 stl_data(ptr + 16, 0);
24481 stl_data(ptr + 20, 0);
24482 stl_data(ptr + 24, 0);
24485 stw_data(ptr, env->fpuc);
24486 stw_data(ptr + 2, fpus);
24487 stw_data(ptr + 4, fptag);
24488 stw_data(ptr + 6, 0);
24489 stw_data(ptr + 8, 0);
24490 stw_data(ptr + 10, 0);
24491 stw_data(ptr + 12, 0);
24495 void helper_fldenv(target_ulong ptr, int data32)
24497 int i, fpus, fptag;
24500 env->fpuc = lduw_data(ptr);
24501 fpus = lduw_data(ptr + 4);
24502 fptag = lduw_data(ptr + 8);
24505 env->fpuc = lduw_data(ptr);
24506 fpus = lduw_data(ptr + 2);
24507 fptag = lduw_data(ptr + 4);
24509 env->fpstt = (fpus >> 11) & 7;
24510 env->fpus = fpus & ~0x3800;
24511 for(i = 0;i < 8; i++) {
24512 env->fptags[i] = ((fptag & 3) == 3);
24517 void helper_fsave(target_ulong ptr, int data32)
24522 helper_fstenv(ptr, data32);
24524 ptr += (14 << data32);
24525 for(i = 0;i < 8; i++) {
24526 tmp = (env->fpregs[(env->fpstt + (i)) & 7].d);
24527 helper_fstt(tmp, ptr);
24535 env->fptags[0] = 1;
24536 env->fptags[1] = 1;
24537 env->fptags[2] = 1;
24538 env->fptags[3] = 1;
24539 env->fptags[4] = 1;
24540 env->fptags[5] = 1;
24541 env->fptags[6] = 1;
24542 env->fptags[7] = 1;
24545 void helper_frstor(target_ulong ptr, int data32)
24550 helper_fldenv(ptr, data32);
24551 ptr += (14 << data32);
24553 for(i = 0;i < 8; i++) {
24554 tmp = helper_fldt(ptr);
24555 (env->fpregs[(env->fpstt + (i)) & 7].d) = tmp;
24559 # 4591 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
24560 void helper_fxsave(target_ulong ptr, int data64)
24562 int fpus, fptag, i, nb_xmm_regs;
24568 raise_exception(13);
24571 fpus = (env->fpus & ~0x3800) | (env->fpstt & 0x7) << 11;
24573 for(i = 0; i < 8; i++) {
24574 fptag |= (env->fptags[i] << i);
24576 stw_data(ptr, env->fpuc);
24577 stw_data(ptr + 2, fpus);
24578 stw_data(ptr + 4, fptag ^ 0xff);
24586 stl_data(ptr + 0x08, 0);
24587 stl_data(ptr + 0x0c, 0);
24588 stl_data(ptr + 0x10, 0);
24589 stl_data(ptr + 0x14, 0);
24593 for(i = 0;i < 8; i++) {
24594 tmp = (env->fpregs[(env->fpstt + (i)) & 7].d);
24595 helper_fstt(tmp, addr);
24599 if (env->cr[4] & (1 << 9)) {
24601 stl_data(ptr + 0x18, env->mxcsr);
24602 stl_data(ptr + 0x1c, 0x0000ffff);
24603 if (env->hflags & (1 << 15))
24609 if (!(env->efer & (1 << 14))
24610 || (env->hflags & (3 << 0))
24611 || !(env->hflags & (1 << 14))) {
24612 for(i = 0; i < nb_xmm_regs; i++) {
24613 stq_data(addr, env->xmm_regs[i]._q[0]);
24614 stq_data(addr + 8, env->xmm_regs[i]._q[1]);
24621 void helper_fxrstor(target_ulong ptr, int data64)
24623 int i, fpus, fptag, nb_xmm_regs;
24629 raise_exception(13);
24632 env->fpuc = lduw_data(ptr);
24633 fpus = lduw_data(ptr + 2);
24634 fptag = lduw_data(ptr + 4);
24635 env->fpstt = (fpus >> 11) & 7;
24636 env->fpus = fpus & ~0x3800;
24638 for(i = 0;i < 8; i++) {
24639 env->fptags[i] = ((fptag >> i) & 1);
24643 for(i = 0;i < 8; i++) {
24644 tmp = helper_fldt(addr);
24645 (env->fpregs[(env->fpstt + (i)) & 7].d) = tmp;
24649 if (env->cr[4] & (1 << 9)) {
24651 env->mxcsr = ldl_data(ptr + 0x18);
24653 if (env->hflags & (1 << 15))
24659 if (!(env->efer & (1 << 14))
24660 || (env->hflags & (3 << 0))
24661 || !(env->hflags & (1 << 14))) {
24662 for(i = 0; i < nb_xmm_regs; i++) {
24663 env->xmm_regs[i]._q[0] = ldq_data(addr);
24664 env->xmm_regs[i]._q[1] = ldq_data(addr + 8);
24671 void cpu_get_fp80(uint64_t *pmant, uint16_t *pexp, floatx80 f)
24676 *pmant = temp.l.lower;
24677 *pexp = temp.l.upper;
24680 floatx80 cpu_set_fp80(uint64_t mant, uint16_t upper)
24684 temp.l.upper = upper;
24685 temp.l.lower = mant;
24688 # 4864 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
24689 static void do_hlt(void)
24691 env->hflags &= ~(1 << 3);
24693 env->exception_index = 0x10001;
24694 cpu_loop_exit(env);
24697 void helper_hlt(int next_eip_addend)
24699 helper_svm_check_intercept_param(0x078, 0);
24700 (env->eip) += next_eip_addend;
24705 void helper_monitor(target_ulong ptr)
24707 if ((uint32_t)(env->regs[1]) != 0)
24708 raise_exception(13);
24710 helper_svm_check_intercept_param(0x08a, 0);
24713 void helper_mwait(int next_eip_addend)
24715 if ((uint32_t)(env->regs[1]) != 0)
24716 raise_exception(13);
24717 helper_svm_check_intercept_param(0x08b, 0);
24718 (env->eip) += next_eip_addend;
24721 if (env->cpu_index != 0 || env->next_cpu != ((void *)0)) {
24729 void helper_debug(void)
24731 env->exception_index = 0x10002;
24732 cpu_loop_exit(env);
24735 void helper_reset_rf(void)
24737 env->eflags &= ~0x00010000;
24740 void helper_raise_interrupt(int intno, int next_eip_addend)
24742 raise_interrupt(intno, 1, 0, next_eip_addend);
24745 void helper_raise_exception(int exception_index)
24747 raise_exception(exception_index);
24750 void helper_cli(void)
24752 env->eflags &= ~0x00000200;
24755 void helper_sti(void)
24757 env->eflags |= 0x00000200;
24759 # 4951 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
24760 void helper_set_inhibit_irq(void)
24762 env->hflags |= (1 << 3);
24765 void helper_reset_inhibit_irq(void)
24767 env->hflags &= ~(1 << 3);
24770 void helper_boundw(target_ulong a0, int v)
24773 low = ldsw_data(a0);
24774 high = ldsw_data(a0 + 2);
24776 if (v < low || v > high) {
24777 raise_exception(5);
24781 void helper_boundl(target_ulong a0, int v)
24784 low = ldl_data(a0);
24785 high = ldl_data(a0 + 4);
24786 if (v < low || v > high) {
24787 raise_exception(5);
24796 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h" 1
24797 # 24 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
24798 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-timer.h" 1
24803 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h" 1
24804 # 43 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24805 int qemu_init_main_loop(void);
24806 # 53 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24807 int main_loop_init(void);
24808 # 90 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24809 int main_loop_wait(int nonblocking);
24810 # 105 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24811 void qemu_notify_event(void);
24812 # 174 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24813 typedef void IOReadHandler(void *opaque, const uint8_t *buf, int size);
24814 typedef int IOCanReadHandler(void *opaque);
24815 typedef void IOHandler(void *opaque);
24816 # 218 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24817 int qemu_set_fd_handler2(int fd,
24818 IOCanReadHandler *fd_read_poll,
24819 IOHandler *fd_read,
24820 IOHandler *fd_write,
24822 # 252 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24823 int qemu_set_fd_handler(int fd,
24824 IOHandler *fd_read,
24825 IOHandler *fd_write,
24828 typedef struct QEMUBH QEMUBH;
24829 typedef void QEMUBHFunc(void *opaque);
24830 # 267 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24831 QEMUBH *qemu_bh_new(QEMUBHFunc *cb, void *opaque);
24832 # 281 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24833 void qemu_bh_schedule(QEMUBH *bh);
24834 # 294 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24835 void qemu_bh_cancel(QEMUBH *bh);
24836 # 305 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24837 void qemu_bh_delete(QEMUBH *bh);
24838 # 323 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24839 int qemu_add_child_watch(pid_t pid);
24840 # 339 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24841 void qemu_mutex_lock_iothread(void);
24842 # 354 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/main-loop.h"
24843 void qemu_mutex_unlock_iothread(void);
24847 void qemu_fd_register(int fd);
24848 void qemu_iohandler_fill(int *pnfds, fd_set *readfds, fd_set *writefds, fd_set *xfds);
24849 void qemu_iohandler_poll(fd_set *readfds, fd_set *writefds, fd_set *xfds, int rc);
24851 void qemu_bh_schedule_idle(QEMUBH *bh);
24852 int qemu_bh_poll(void);
24853 void qemu_bh_update_timeout(uint32_t *timeout);
24854 # 6 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-timer.h" 2
24855 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/notify.h" 1
24856 # 19 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/notify.h"
24857 typedef struct Notifier Notifier;
24861 void (*notify)(Notifier *notifier, void *data);
24862 struct { struct Notifier *le_next; struct Notifier **le_prev; } node;
24865 typedef struct NotifierList
24867 struct { struct Notifier *lh_first; } notifiers;
24873 void notifier_list_init(NotifierList *list);
24875 void notifier_list_add(NotifierList *list, Notifier *notifier);
24877 void notifier_remove(Notifier *notifier);
24879 void notifier_list_notify(NotifierList *list, void *data);
24880 # 7 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-timer.h" 2
24881 # 18 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-timer.h"
24882 typedef struct QEMUClock QEMUClock;
24883 typedef void QEMUTimerCB(void *opaque);
24889 extern QEMUClock *rt_clock;
24894 extern QEMUClock *vm_clock;
24901 extern QEMUClock *host_clock;
24903 int64_t qemu_get_clock_ns(QEMUClock *clock);
24904 int64_t qemu_clock_has_timers(QEMUClock *clock);
24905 int64_t qemu_clock_expired(QEMUClock *clock);
24906 int64_t qemu_clock_deadline(QEMUClock *clock);
24907 void qemu_clock_enable(QEMUClock *clock, _Bool enabled);
24908 void qemu_clock_warp(QEMUClock *clock);
24910 void qemu_register_clock_reset_notifier(QEMUClock *clock, Notifier *notifier);
24911 void qemu_unregister_clock_reset_notifier(QEMUClock *clock,
24912 Notifier *notifier);
24914 QEMUTimer *qemu_new_timer(QEMUClock *clock, int scale,
24915 QEMUTimerCB *cb, void *opaque);
24916 void qemu_free_timer(QEMUTimer *ts);
24917 void qemu_del_timer(QEMUTimer *ts);
24918 void qemu_mod_timer_ns(QEMUTimer *ts, int64_t expire_time);
24919 void qemu_mod_timer(QEMUTimer *ts, int64_t expire_time);
24920 _Bool qemu_timer_pending(QEMUTimer *ts);
24921 _Bool qemu_timer_expired(QEMUTimer *timer_head, int64_t current_time);
24922 uint64_t qemu_timer_expire_time_ns(QEMUTimer *ts);
24924 void qemu_run_timers(QEMUClock *clock);
24925 void qemu_run_all_timers(void);
24926 void configure_alarms(char const *opt);
24927 void init_clocks(void);
24928 int init_timer_alarm(void);
24930 int64_t cpu_get_ticks(void);
24931 void cpu_enable_ticks(void);
24932 void cpu_disable_ticks(void);
24934 static __attribute__ (( always_inline )) __inline__ QEMUTimer *qemu_new_timer_ns(QEMUClock *clock, QEMUTimerCB *cb,
24937 return qemu_new_timer(clock, 1, cb, opaque);
24940 static __attribute__ (( always_inline )) __inline__ QEMUTimer *qemu_new_timer_ms(QEMUClock *clock, QEMUTimerCB *cb,
24943 return qemu_new_timer(clock, 1000000, cb, opaque);
24946 static __attribute__ (( always_inline )) __inline__ int64_t qemu_get_clock_ms(QEMUClock *clock)
24948 return qemu_get_clock_ns(clock) / 1000000;
24951 static __attribute__ (( always_inline )) __inline__ int64_t get_ticks_per_sec(void)
24953 return 1000000000LL;
24957 static __attribute__ (( always_inline )) __inline__ int64_t get_clock_realtime(void)
24961 gettimeofday(&tv, ((void *)0));
24962 return tv.tv_sec * 1000000000LL + (tv.tv_usec * 1000);
24964 # 116 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-timer.h"
24965 extern int use_rt_clock;
24967 static __attribute__ (( always_inline )) __inline__ int64_t get_clock(void)
24971 if (use_rt_clock) {
24972 struct timespec ts;
24973 clock_gettime(1, &ts);
24974 return ts.tv_sec * 1000000000LL + ts.tv_nsec;
24980 return get_clock_realtime();
24985 void qemu_get_timer(QEMUFile *f, QEMUTimer *ts);
24986 void qemu_put_timer(QEMUFile *f, QEMUTimer *ts);
24989 int64_t cpu_get_icount(void);
24990 int64_t cpu_get_clock(void);
24991 # 174 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/qemu-timer.h"
24992 static __attribute__ (( always_inline )) __inline__ int64_t cpu_get_real_ticks(void)
24995 asm volatile ("rdtsc" : "=A" (val));
24998 # 25 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h" 2
24999 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h" 1
25000 # 26 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25001 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/ioport.h" 1
25002 # 27 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h" 2
25003 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/int128.h" 1
25007 typedef struct Int128 Int128;
25014 static __attribute__ (( always_inline )) __inline__ Int128 int128_make64(uint64_t a)
25016 return (Int128) { a, 0 };
25019 static __attribute__ (( always_inline )) __inline__ uint64_t int128_get64(Int128 a)
25021 ((!a.hi) ? (void) (0) : __assert_fail ("!a.hi", "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/int128.h", 18, __PRETTY_FUNCTION__));
25025 static __attribute__ (( always_inline )) __inline__ Int128 int128_zero(void)
25027 return int128_make64(0);
25030 static __attribute__ (( always_inline )) __inline__ Int128 int128_one(void)
25032 return int128_make64(1);
25035 static __attribute__ (( always_inline )) __inline__ Int128 int128_2_64(void)
25037 return (Int128) { 0, 1 };
25040 static __attribute__ (( always_inline )) __inline__ Int128 int128_add(Int128 a, Int128 b)
25042 Int128 r = { a.lo + b.lo, a.hi + b.hi };
25043 r.hi += (r.lo < a.lo) || (r.lo < b.lo);
25047 static __attribute__ (( always_inline )) __inline__ Int128 int128_neg(Int128 a)
25051 return int128_add(a, int128_one());
25054 static __attribute__ (( always_inline )) __inline__ Int128 int128_sub(Int128 a, Int128 b)
25056 return int128_add(a, int128_neg(b));
25059 static __attribute__ (( always_inline )) __inline__ _Bool int128_nonneg(Int128 a)
25064 static __attribute__ (( always_inline )) __inline__ _Bool int128_eq(Int128 a, Int128 b)
25066 return a.lo == b.lo && a.hi == b.hi;
25069 static __attribute__ (( always_inline )) __inline__ _Bool int128_ne(Int128 a, Int128 b)
25071 return !int128_eq(a, b);
25074 static __attribute__ (( always_inline )) __inline__ _Bool int128_ge(Int128 a, Int128 b)
25076 return int128_nonneg(int128_sub(a, b));
25079 static __attribute__ (( always_inline )) __inline__ _Bool int128_lt(Int128 a, Int128 b)
25081 return !int128_ge(a, b);
25084 static __attribute__ (( always_inline )) __inline__ _Bool int128_le(Int128 a, Int128 b)
25086 return int128_ge(b, a);
25089 static __attribute__ (( always_inline )) __inline__ _Bool int128_gt(Int128 a, Int128 b)
25091 return !int128_le(a, b);
25094 static __attribute__ (( always_inline )) __inline__ _Bool int128_nz(Int128 a)
25096 return a.lo || a.hi;
25099 static __attribute__ (( always_inline )) __inline__ Int128 int128_min(Int128 a, Int128 b)
25101 return int128_le(a, b) ? a : b;
25104 static __attribute__ (( always_inline )) __inline__ Int128 int128_max(Int128 a, Int128 b)
25106 return int128_ge(a, b) ? a : b;
25109 static __attribute__ (( always_inline )) __inline__ void int128_addto(Int128 *a, Int128 b)
25111 *a = int128_add(*a, b);
25114 static __attribute__ (( always_inline )) __inline__ void int128_subfrom(Int128 *a, Int128 b)
25116 *a = int128_sub(*a, b);
25118 # 28 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h" 2
25120 typedef struct MemoryRegionOps MemoryRegionOps;
25121 typedef struct MemoryRegion MemoryRegion;
25122 typedef struct MemoryRegionPortio MemoryRegionPortio;
25123 typedef struct MemoryRegionMmio MemoryRegionMmio;
25124 # 41 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25125 struct MemoryRegionMmio {
25126 CPUReadMemoryFunc *read[3];
25127 CPUWriteMemoryFunc *write[3];
25131 typedef struct MemoryRegionIORange MemoryRegionIORange;
25132 struct MemoryRegionIORange {
25135 target_phys_addr_t offset;
25141 struct MemoryRegionOps {
25144 uint64_t (*read)(void *opaque,
25145 target_phys_addr_t addr,
25149 void (*write)(void *opaque,
25150 target_phys_addr_t addr,
25154 enum device_endian endianness;
25160 unsigned min_access_size;
25161 unsigned max_access_size;
25171 _Bool (*accepts)(void *opaque, target_phys_addr_t addr,
25172 unsigned size, _Bool is_write);
25179 unsigned min_access_size;
25183 unsigned max_access_size;
25193 const MemoryRegionPortio *old_portio;
25197 const MemoryRegionMmio old_mmio;
25200 typedef struct CoalescedMemoryRange CoalescedMemoryRange;
25201 typedef struct MemoryRegionIoeventfd MemoryRegionIoeventfd;
25203 struct MemoryRegion {
25205 const MemoryRegionOps *ops;
25207 MemoryRegion *parent;
25209 target_phys_addr_t addr;
25210 void (*destructor)(MemoryRegion *mr);
25211 ram_addr_t ram_addr;
25219 _Bool warning_printed;
25220 MemoryRegion *alias;
25221 target_phys_addr_t alias_offset;
25224 struct subregions { struct MemoryRegion *tqh_first; struct MemoryRegion * *tqh_last; } subregions;
25225 struct { struct MemoryRegion *tqe_next; struct MemoryRegion * *tqe_prev; } subregions_link;
25226 struct coalesced_ranges { struct CoalescedMemoryRange *tqh_first; struct CoalescedMemoryRange * *tqh_last; } coalesced;
25228 uint8_t dirty_log_mask;
25229 unsigned ioeventfd_nb;
25230 MemoryRegionIoeventfd *ioeventfds;
25233 struct MemoryRegionPortio {
25237 IOPortReadFunc *read;
25238 IOPortWriteFunc *write;
25243 typedef struct MemoryRegionSection MemoryRegionSection;
25244 # 172 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25245 struct MemoryRegionSection {
25247 MemoryRegion *address_space;
25248 target_phys_addr_t offset_within_region;
25250 target_phys_addr_t offset_within_address_space;
25254 typedef struct MemoryListener MemoryListener;
25262 struct MemoryListener {
25263 void (*begin)(MemoryListener *listener);
25264 void (*commit)(MemoryListener *listener);
25265 void (*region_add)(MemoryListener *listener, MemoryRegionSection *section);
25266 void (*region_del)(MemoryListener *listener, MemoryRegionSection *section);
25267 void (*region_nop)(MemoryListener *listener, MemoryRegionSection *section);
25268 void (*log_start)(MemoryListener *listener, MemoryRegionSection *section);
25269 void (*log_stop)(MemoryListener *listener, MemoryRegionSection *section);
25270 void (*log_sync)(MemoryListener *listener, MemoryRegionSection *section);
25271 void (*log_global_start)(MemoryListener *listener);
25272 void (*log_global_stop)(MemoryListener *listener);
25273 void (*eventfd_add)(MemoryListener *listener, MemoryRegionSection *section,
25274 _Bool match_data, uint64_t data, int fd);
25275 void (*eventfd_del)(MemoryListener *listener, MemoryRegionSection *section,
25276 _Bool match_data, uint64_t data, int fd);
25279 MemoryRegion *address_space_filter;
25280 struct { struct MemoryListener *tqe_next; struct MemoryListener * *tqe_prev; } link;
25282 # 220 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25283 void memory_region_init(MemoryRegion *mr,
25286 # 236 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25287 void memory_region_init_io(MemoryRegion *mr,
25288 const MemoryRegionOps *ops,
25292 # 250 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25293 void memory_region_init_ram(MemoryRegion *mr,
25296 # 264 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25297 void memory_region_init_ram_ptr(MemoryRegion *mr,
25301 # 280 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25302 void memory_region_init_alias(MemoryRegion *mr,
25304 MemoryRegion *orig,
25305 target_phys_addr_t offset,
25307 # 295 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25308 void memory_region_init_rom_device(MemoryRegion *mr,
25309 const MemoryRegionOps *ops,
25313 # 313 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25314 void memory_region_init_reservation(MemoryRegion *mr,
25324 void memory_region_destroy(MemoryRegion *mr);
25331 uint64_t memory_region_size(MemoryRegion *mr);
25332 # 339 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25333 _Bool memory_region_is_ram(MemoryRegion *mr);
25334 # 349 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25335 static __attribute__ (( always_inline )) __inline__ _Bool memory_region_is_romd(MemoryRegion *mr)
25337 return mr->rom_device && mr->readable;
25339 # 361 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25340 const char *memory_region_name(MemoryRegion *mr);
25341 # 370 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25342 _Bool memory_region_is_logging(MemoryRegion *mr);
25343 # 379 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25344 _Bool memory_region_is_rom(MemoryRegion *mr);
25345 # 390 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25346 void *memory_region_get_ram_ptr(MemoryRegion *mr);
25347 # 403 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25348 void memory_region_set_log(MemoryRegion *mr, _Bool log, unsigned client);
25349 # 419 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25350 _Bool memory_region_get_dirty(MemoryRegion *mr, target_phys_addr_t addr,
25351 target_phys_addr_t size, unsigned client);
25352 # 432 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25353 void memory_region_set_dirty(MemoryRegion *mr, target_phys_addr_t addr,
25354 target_phys_addr_t size);
25355 # 444 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25356 void memory_region_sync_dirty_bitmap(MemoryRegion *mr);
25357 # 458 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25358 void memory_region_reset_dirty(MemoryRegion *mr, target_phys_addr_t addr,
25359 target_phys_addr_t size, unsigned client);
25360 # 470 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25361 void memory_region_set_readonly(MemoryRegion *mr, _Bool readonly);
25362 # 484 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25363 void memory_region_rom_device_set_readable(MemoryRegion *mr, _Bool readable);
25364 # 495 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25365 void memory_region_set_coalescing(MemoryRegion *mr);
25366 # 508 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25367 void memory_region_add_coalescing(MemoryRegion *mr,
25368 target_phys_addr_t offset,
25370 # 521 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25371 void memory_region_clear_coalescing(MemoryRegion *mr);
25372 # 539 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25373 void memory_region_add_eventfd(MemoryRegion *mr,
25374 target_phys_addr_t addr,
25379 # 559 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25380 void memory_region_del_eventfd(MemoryRegion *mr,
25381 target_phys_addr_t addr,
25386 # 579 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25387 void memory_region_add_subregion(MemoryRegion *mr,
25388 target_phys_addr_t offset,
25389 MemoryRegion *subregion);
25390 # 598 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25391 void memory_region_add_subregion_overlap(MemoryRegion *mr,
25392 target_phys_addr_t offset,
25393 MemoryRegion *subregion,
25394 unsigned priority);
25395 # 610 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25396 ram_addr_t memory_region_get_ram_addr(MemoryRegion *mr);
25397 # 620 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25398 void memory_region_del_subregion(MemoryRegion *mr,
25399 MemoryRegion *subregion);
25400 # 636 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25401 void memory_region_set_enabled(MemoryRegion *mr, _Bool enabled);
25402 # 647 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25403 void memory_region_set_address(MemoryRegion *mr, target_phys_addr_t addr);
25404 # 658 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25405 void memory_region_set_alias_offset(MemoryRegion *mr,
25406 target_phys_addr_t offset);
25407 # 679 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25408 MemoryRegionSection memory_region_find(MemoryRegion *address_space,
25409 target_phys_addr_t addr, uint64_t size);
25410 # 690 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25411 static __attribute__ (( always_inline )) __inline__ target_phys_addr_t
25412 memory_region_section_addr(MemoryRegionSection *section,
25413 target_phys_addr_t addr)
25415 addr -= section->offset_within_address_space;
25416 addr += section->offset_within_region;
25419 # 706 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25420 void memory_global_sync_dirty_bitmap(MemoryRegion *address_space);
25428 void memory_region_transaction_begin(void);
25434 void memory_region_transaction_commit(void);
25435 # 730 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/memory.h"
25436 void memory_listener_register(MemoryListener *listener, MemoryRegion *filter);
25443 void memory_listener_unregister(MemoryListener *listener);
25448 void memory_global_dirty_log_start(void);
25453 void memory_global_dirty_log_stop(void);
25455 void mtree_info(fprintf_function mon_printf, void *f);
25456 # 26 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h" 2
25457 # 69 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
25458 static uint8_t slow_ldb_mmu(
25461 uintptr_t retaddr);
25462 static __attribute__ (( always_inline )) __inline__ uint8_t io_readb(
25463 target_phys_addr_t physaddr,
25468 MemoryRegion *mr = iotlb_to_region(physaddr);
25470 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
25471 env->mem_io_pc = retaddr;
25472 if (mr != &io_mem_ram && mr != &io_mem_rom
25473 && mr != &io_mem_unassigned
25474 && mr != &io_mem_notdirty
25475 && !can_do_io(env)) {
25476 cpu_io_recompile(env, retaddr);
25479 env->mem_io_vaddr = addr;
25481 res = io_mem_read(mr, physaddr, 1 << 0);
25482 # 102 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
25494 target_ulong tlb_addr;
25495 target_phys_addr_t ioaddr;
25500 index = (addr >> 12) & ((1 << 8) - 1);
25502 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
25503 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25504 if (tlb_addr & ~~((1 << 12) - 1)) {
25506 if ((addr & ((1 << 0) - 1)) != 0)
25507 goto do_unaligned_access;
25508 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25509 ioaddr = env->iotlb[mmu_idx][index];
25510 res = io_readb( ioaddr, addr, retaddr);
25511 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 0) - 1) >= (1 << 12)) {
25513 do_unaligned_access:
25514 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25518 res = slow_ldb_mmu( addr,
25529 addend = env->tlb_table[mmu_idx][index].addend;
25530 res = ldub_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
25535 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25540 tlb_fill(env, addr, 0, mmu_idx, retaddr);
25553 uint8_t res, res1, res2;
25555 target_phys_addr_t ioaddr;
25556 target_ulong tlb_addr, addr1, addr2;
25558 index = (addr >> 12) & ((1 << 8) - 1);
25560 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
25561 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25562 if (tlb_addr & ~~((1 << 12) - 1)) {
25564 if ((addr & ((1 << 0) - 1)) != 0)
25565 goto do_unaligned_access;
25566 ioaddr = env->iotlb[mmu_idx][index];
25567 res = io_readb( ioaddr, addr, retaddr);
25568 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 0) - 1) >= (1 << 12)) {
25569 do_unaligned_access:
25571 addr1 = addr & ~((1 << 0) - 1);
25572 addr2 = addr1 + (1 << 0);
25573 res1 = slow_ldb_mmu( addr1,
25575 res2 = slow_ldb_mmu( addr2,
25577 shift = (addr & ((1 << 0) - 1)) * 8;
25581 res = (res1 >> shift) | (res2 << (((1 << 0) * 8) - shift));
25583 res = (uint8_t)res;
25586 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
25587 res = ldub_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
25592 tlb_fill(env, addr, 0, mmu_idx, retaddr);
25600 static void slow_stb_mmu(
25604 uintptr_t retaddr);
25606 static __attribute__ (( always_inline )) __inline__ void io_writeb(
25607 target_phys_addr_t physaddr,
25612 MemoryRegion *mr = iotlb_to_region(physaddr);
25614 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
25615 if (mr != &io_mem_ram && mr != &io_mem_rom
25616 && mr != &io_mem_unassigned
25617 && mr != &io_mem_notdirty
25618 && !can_do_io(env)) {
25619 cpu_io_recompile(env, retaddr);
25622 env->mem_io_vaddr = addr;
25623 env->mem_io_pc = retaddr;
25625 io_mem_write(mr, physaddr, val, 1 << 0);
25626 # 254 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
25634 target_phys_addr_t ioaddr;
25635 target_ulong tlb_addr;
25639 index = (addr >> 12) & ((1 << 8) - 1);
25641 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
25642 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25643 if (tlb_addr & ~~((1 << 12) - 1)) {
25645 if ((addr & ((1 << 0) - 1)) != 0)
25646 goto do_unaligned_access;
25647 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25648 ioaddr = env->iotlb[mmu_idx][index];
25649 io_writeb( ioaddr, val, addr, retaddr);
25650 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 0) - 1) >= (1 << 12)) {
25651 do_unaligned_access:
25652 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25656 slow_stb_mmu( addr, val,
25667 addend = env->tlb_table[mmu_idx][index].addend;
25668 stb_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
25673 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25678 tlb_fill(env, addr, 1, mmu_idx, retaddr);
25684 static void slow_stb_mmu(
25690 target_phys_addr_t ioaddr;
25691 target_ulong tlb_addr;
25694 index = (addr >> 12) & ((1 << 8) - 1);
25696 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
25697 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25698 if (tlb_addr & ~~((1 << 12) - 1)) {
25700 if ((addr & ((1 << 0) - 1)) != 0)
25701 goto do_unaligned_access;
25702 ioaddr = env->iotlb[mmu_idx][index];
25703 io_writeb( ioaddr, val, addr, retaddr);
25704 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 0) - 1) >= (1 << 12)) {
25705 do_unaligned_access:
25709 for(i = (1 << 0) - 1; i >= 0; i--) {
25715 slow_stb_mmu( addr + i,
25722 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
25723 stb_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
25728 tlb_fill(env, addr, 1, mmu_idx, retaddr);
25732 # 4988 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
25735 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h" 1
25736 # 69 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
25737 static uint16_t slow_ldw_mmu(
25740 uintptr_t retaddr);
25741 static __attribute__ (( always_inline )) __inline__ uint16_t io_readw(
25742 target_phys_addr_t physaddr,
25747 MemoryRegion *mr = iotlb_to_region(physaddr);
25749 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
25750 env->mem_io_pc = retaddr;
25751 if (mr != &io_mem_ram && mr != &io_mem_rom
25752 && mr != &io_mem_unassigned
25753 && mr != &io_mem_notdirty
25754 && !can_do_io(env)) {
25755 cpu_io_recompile(env, retaddr);
25758 env->mem_io_vaddr = addr;
25760 res = io_mem_read(mr, physaddr, 1 << 1);
25761 # 102 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
25773 target_ulong tlb_addr;
25774 target_phys_addr_t ioaddr;
25779 index = (addr >> 12) & ((1 << 8) - 1);
25781 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
25782 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25783 if (tlb_addr & ~~((1 << 12) - 1)) {
25785 if ((addr & ((1 << 1) - 1)) != 0)
25786 goto do_unaligned_access;
25787 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25788 ioaddr = env->iotlb[mmu_idx][index];
25789 res = io_readw( ioaddr, addr, retaddr);
25790 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 1) - 1) >= (1 << 12)) {
25792 do_unaligned_access:
25793 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25797 res = slow_ldw_mmu( addr,
25808 addend = env->tlb_table[mmu_idx][index].addend;
25809 res = lduw_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
25814 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25819 tlb_fill(env, addr, 0, mmu_idx, retaddr);
25832 uint16_t res, res1, res2;
25834 target_phys_addr_t ioaddr;
25835 target_ulong tlb_addr, addr1, addr2;
25837 index = (addr >> 12) & ((1 << 8) - 1);
25839 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
25840 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25841 if (tlb_addr & ~~((1 << 12) - 1)) {
25843 if ((addr & ((1 << 1) - 1)) != 0)
25844 goto do_unaligned_access;
25845 ioaddr = env->iotlb[mmu_idx][index];
25846 res = io_readw( ioaddr, addr, retaddr);
25847 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 1) - 1) >= (1 << 12)) {
25848 do_unaligned_access:
25850 addr1 = addr & ~((1 << 1) - 1);
25851 addr2 = addr1 + (1 << 1);
25852 res1 = slow_ldw_mmu( addr1,
25854 res2 = slow_ldw_mmu( addr2,
25856 shift = (addr & ((1 << 1) - 1)) * 8;
25860 res = (res1 >> shift) | (res2 << (((1 << 1) * 8) - shift));
25862 res = (uint16_t)res;
25865 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
25866 res = lduw_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
25871 tlb_fill(env, addr, 0, mmu_idx, retaddr);
25879 static void slow_stw_mmu(
25883 uintptr_t retaddr);
25885 static __attribute__ (( always_inline )) __inline__ void io_writew(
25886 target_phys_addr_t physaddr,
25891 MemoryRegion *mr = iotlb_to_region(physaddr);
25893 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
25894 if (mr != &io_mem_ram && mr != &io_mem_rom
25895 && mr != &io_mem_unassigned
25896 && mr != &io_mem_notdirty
25897 && !can_do_io(env)) {
25898 cpu_io_recompile(env, retaddr);
25901 env->mem_io_vaddr = addr;
25902 env->mem_io_pc = retaddr;
25904 io_mem_write(mr, physaddr, val, 1 << 1);
25905 # 254 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
25913 target_phys_addr_t ioaddr;
25914 target_ulong tlb_addr;
25918 index = (addr >> 12) & ((1 << 8) - 1);
25920 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
25921 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25922 if (tlb_addr & ~~((1 << 12) - 1)) {
25924 if ((addr & ((1 << 1) - 1)) != 0)
25925 goto do_unaligned_access;
25926 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25927 ioaddr = env->iotlb[mmu_idx][index];
25928 io_writew( ioaddr, val, addr, retaddr);
25929 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 1) - 1) >= (1 << 12)) {
25930 do_unaligned_access:
25931 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25935 slow_stw_mmu( addr, val,
25946 addend = env->tlb_table[mmu_idx][index].addend;
25947 stw_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
25952 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
25957 tlb_fill(env, addr, 1, mmu_idx, retaddr);
25963 static void slow_stw_mmu(
25969 target_phys_addr_t ioaddr;
25970 target_ulong tlb_addr;
25973 index = (addr >> 12) & ((1 << 8) - 1);
25975 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
25976 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
25977 if (tlb_addr & ~~((1 << 12) - 1)) {
25979 if ((addr & ((1 << 1) - 1)) != 0)
25980 goto do_unaligned_access;
25981 ioaddr = env->iotlb[mmu_idx][index];
25982 io_writew( ioaddr, val, addr, retaddr);
25983 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 1) - 1) >= (1 << 12)) {
25984 do_unaligned_access:
25988 for(i = (1 << 1) - 1; i >= 0; i--) {
25994 slow_stb_mmu( addr + i,
26001 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
26002 stw_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
26007 tlb_fill(env, addr, 1, mmu_idx, retaddr);
26011 # 4991 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
26014 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h" 1
26015 # 69 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
26016 static uint32_t slow_ldl_mmu(
26019 uintptr_t retaddr);
26020 static __attribute__ (( always_inline )) __inline__ uint32_t io_readl(
26021 target_phys_addr_t physaddr,
26026 MemoryRegion *mr = iotlb_to_region(physaddr);
26028 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
26029 env->mem_io_pc = retaddr;
26030 if (mr != &io_mem_ram && mr != &io_mem_rom
26031 && mr != &io_mem_unassigned
26032 && mr != &io_mem_notdirty
26033 && !can_do_io(env)) {
26034 cpu_io_recompile(env, retaddr);
26037 env->mem_io_vaddr = addr;
26039 res = io_mem_read(mr, physaddr, 1 << 2);
26040 # 102 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
26052 target_ulong tlb_addr;
26053 target_phys_addr_t ioaddr;
26058 index = (addr >> 12) & ((1 << 8) - 1);
26060 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
26061 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26062 if (tlb_addr & ~~((1 << 12) - 1)) {
26064 if ((addr & ((1 << 2) - 1)) != 0)
26065 goto do_unaligned_access;
26066 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26067 ioaddr = env->iotlb[mmu_idx][index];
26068 res = io_readl( ioaddr, addr, retaddr);
26069 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 2) - 1) >= (1 << 12)) {
26071 do_unaligned_access:
26072 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26076 res = slow_ldl_mmu( addr,
26087 addend = env->tlb_table[mmu_idx][index].addend;
26088 res = ldl_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
26093 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26098 tlb_fill(env, addr, 0, mmu_idx, retaddr);
26111 uint32_t res, res1, res2;
26113 target_phys_addr_t ioaddr;
26114 target_ulong tlb_addr, addr1, addr2;
26116 index = (addr >> 12) & ((1 << 8) - 1);
26118 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
26119 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26120 if (tlb_addr & ~~((1 << 12) - 1)) {
26122 if ((addr & ((1 << 2) - 1)) != 0)
26123 goto do_unaligned_access;
26124 ioaddr = env->iotlb[mmu_idx][index];
26125 res = io_readl( ioaddr, addr, retaddr);
26126 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 2) - 1) >= (1 << 12)) {
26127 do_unaligned_access:
26129 addr1 = addr & ~((1 << 2) - 1);
26130 addr2 = addr1 + (1 << 2);
26131 res1 = slow_ldl_mmu( addr1,
26133 res2 = slow_ldl_mmu( addr2,
26135 shift = (addr & ((1 << 2) - 1)) * 8;
26139 res = (res1 >> shift) | (res2 << (((1 << 2) * 8) - shift));
26141 res = (uint32_t)res;
26144 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
26145 res = ldl_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
26150 tlb_fill(env, addr, 0, mmu_idx, retaddr);
26158 static void slow_stl_mmu(
26162 uintptr_t retaddr);
26164 static __attribute__ (( always_inline )) __inline__ void io_writel(
26165 target_phys_addr_t physaddr,
26170 MemoryRegion *mr = iotlb_to_region(physaddr);
26172 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
26173 if (mr != &io_mem_ram && mr != &io_mem_rom
26174 && mr != &io_mem_unassigned
26175 && mr != &io_mem_notdirty
26176 && !can_do_io(env)) {
26177 cpu_io_recompile(env, retaddr);
26180 env->mem_io_vaddr = addr;
26181 env->mem_io_pc = retaddr;
26183 io_mem_write(mr, physaddr, val, 1 << 2);
26184 # 254 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
26192 target_phys_addr_t ioaddr;
26193 target_ulong tlb_addr;
26197 index = (addr >> 12) & ((1 << 8) - 1);
26199 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
26200 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26201 if (tlb_addr & ~~((1 << 12) - 1)) {
26203 if ((addr & ((1 << 2) - 1)) != 0)
26204 goto do_unaligned_access;
26205 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26206 ioaddr = env->iotlb[mmu_idx][index];
26207 io_writel( ioaddr, val, addr, retaddr);
26208 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 2) - 1) >= (1 << 12)) {
26209 do_unaligned_access:
26210 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26214 slow_stl_mmu( addr, val,
26225 addend = env->tlb_table[mmu_idx][index].addend;
26226 stl_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
26231 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26236 tlb_fill(env, addr, 1, mmu_idx, retaddr);
26242 static void slow_stl_mmu(
26248 target_phys_addr_t ioaddr;
26249 target_ulong tlb_addr;
26252 index = (addr >> 12) & ((1 << 8) - 1);
26254 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
26255 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26256 if (tlb_addr & ~~((1 << 12) - 1)) {
26258 if ((addr & ((1 << 2) - 1)) != 0)
26259 goto do_unaligned_access;
26260 ioaddr = env->iotlb[mmu_idx][index];
26261 io_writel( ioaddr, val, addr, retaddr);
26262 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 2) - 1) >= (1 << 12)) {
26263 do_unaligned_access:
26267 for(i = (1 << 2) - 1; i >= 0; i--) {
26273 slow_stb_mmu( addr + i,
26280 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
26281 stl_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
26286 tlb_fill(env, addr, 1, mmu_idx, retaddr);
26290 # 4994 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
26293 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h" 1
26294 # 69 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/softmmu_template.h"
26295 static uint64_t slow_ldq_mmu(
26298 uintptr_t retaddr);
26299 static __attribute__ (( always_inline )) __inline__ uint64_t io_readq(
26300 target_phys_addr_t physaddr,
26305 MemoryRegion *mr = iotlb_to_region(physaddr);
26307 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
26308 env->mem_io_pc = retaddr;
26309 if (mr != &io_mem_ram && mr != &io_mem_rom
26310 && mr != &io_mem_unassigned
26311 && mr != &io_mem_notdirty
26312 && !can_do_io(env)) {
26313 cpu_io_recompile(env, retaddr);
26316 env->mem_io_vaddr = addr;
26324 res = io_mem_read(mr, physaddr, 4);
26325 res |= io_mem_read(mr, physaddr + 4, 4) << 32;
26339 target_ulong tlb_addr;
26340 target_phys_addr_t ioaddr;
26345 index = (addr >> 12) & ((1 << 8) - 1);
26347 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
26348 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26349 if (tlb_addr & ~~((1 << 12) - 1)) {
26351 if ((addr & ((1 << 3) - 1)) != 0)
26352 goto do_unaligned_access;
26353 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26354 ioaddr = env->iotlb[mmu_idx][index];
26355 res = io_readq( ioaddr, addr, retaddr);
26356 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 3) - 1) >= (1 << 12)) {
26358 do_unaligned_access:
26359 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26363 res = slow_ldq_mmu( addr,
26374 addend = env->tlb_table[mmu_idx][index].addend;
26375 res = ldq_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
26380 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26385 tlb_fill(env, addr, 0, mmu_idx, retaddr);
26398 uint64_t res, res1, res2;
26400 target_phys_addr_t ioaddr;
26401 target_ulong tlb_addr, addr1, addr2;
26403 index = (addr >> 12) & ((1 << 8) - 1);
26405 tlb_addr = env->tlb_table[mmu_idx][index].addr_read;
26406 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26407 if (tlb_addr & ~~((1 << 12) - 1)) {
26409 if ((addr & ((1 << 3) - 1)) != 0)
26410 goto do_unaligned_access;
26411 ioaddr = env->iotlb[mmu_idx][index];
26412 res = io_readq( ioaddr, addr, retaddr);
26413 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 3) - 1) >= (1 << 12)) {
26414 do_unaligned_access:
26416 addr1 = addr & ~((1 << 3) - 1);
26417 addr2 = addr1 + (1 << 3);
26418 res1 = slow_ldq_mmu( addr1,
26420 res2 = slow_ldq_mmu( addr2,
26422 shift = (addr & ((1 << 3) - 1)) * 8;
26426 res = (res1 >> shift) | (res2 << (((1 << 3) * 8) - shift));
26428 res = (uint64_t)res;
26431 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
26432 res = ldq_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))))
26437 tlb_fill(env, addr, 0, mmu_idx, retaddr);
26445 static void slow_stq_mmu(
26449 uintptr_t retaddr);
26451 static __attribute__ (( always_inline )) __inline__ void io_writeq(
26452 target_phys_addr_t physaddr,
26457 MemoryRegion *mr = iotlb_to_region(physaddr);
26459 physaddr = (physaddr & ~((1 << 12) - 1)) + addr;
26460 if (mr != &io_mem_ram && mr != &io_mem_rom
26461 && mr != &io_mem_unassigned
26462 && mr != &io_mem_notdirty
26463 && !can_do_io(env)) {
26464 cpu_io_recompile(env, retaddr);
26467 env->mem_io_vaddr = addr;
26468 env->mem_io_pc = retaddr;
26476 io_mem_write(mr, physaddr, (uint32_t)val, 4);
26477 io_mem_write(mr, physaddr + 4, val >> 32, 4);
26487 target_phys_addr_t ioaddr;
26488 target_ulong tlb_addr;
26492 index = (addr >> 12) & ((1 << 8) - 1);
26494 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
26495 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26496 if (tlb_addr & ~~((1 << 12) - 1)) {
26498 if ((addr & ((1 << 3) - 1)) != 0)
26499 goto do_unaligned_access;
26500 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26501 ioaddr = env->iotlb[mmu_idx][index];
26502 io_writeq( ioaddr, val, addr, retaddr);
26503 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 3) - 1) >= (1 << 12)) {
26504 do_unaligned_access:
26505 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26509 slow_stq_mmu( addr, val,
26520 addend = env->tlb_table[mmu_idx][index].addend;
26521 stq_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
26526 retaddr = ((uintptr_t)__builtin_return_address(0) - 1);
26531 tlb_fill(env, addr, 1, mmu_idx, retaddr);
26537 static void slow_stq_mmu(
26543 target_phys_addr_t ioaddr;
26544 target_ulong tlb_addr;
26547 index = (addr >> 12) & ((1 << 8) - 1);
26549 tlb_addr = env->tlb_table[mmu_idx][index].addr_write;
26550 if ((addr & ~((1 << 12) - 1)) == (tlb_addr & (~((1 << 12) - 1) | (1 << 3)))) {
26551 if (tlb_addr & ~~((1 << 12) - 1)) {
26553 if ((addr & ((1 << 3) - 1)) != 0)
26554 goto do_unaligned_access;
26555 ioaddr = env->iotlb[mmu_idx][index];
26556 io_writeq( ioaddr, val, addr, retaddr);
26557 } else if (((addr & ~~((1 << 12) - 1)) + (1 << 3) - 1) >= (1 << 12)) {
26558 do_unaligned_access:
26562 for(i = (1 << 3) - 1; i >= 0; i--) {
26568 slow_stb_mmu( addr + i,
26575 uintptr_t addend = env->tlb_table[mmu_idx][index].addend;
26576 stq_le_p((uint8_t *)(intptr_t)(((uint8_t *)(intptr_t) (addr + addend))), val)
26581 tlb_fill(env, addr, 1, mmu_idx, retaddr);
26585 # 4997 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
26586 # 5005 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
26587 void tlb_fill(CPUX86State *env1, target_ulong addr, int is_write, int mmu_idx,
26590 TranslationBlock *tb;
26592 CPUX86State *saved_env;
26597 ret = cpu_x86_handle_mmu_fault(env, addr, is_write, mmu_idx);
26601 tb = tb_find_pc(retaddr);
26605 cpu_restore_state(tb, env, retaddr);
26608 raise_exception_err(env->exception_index, env->error_code);
26612 # 5077 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
26613 static __attribute__ (( always_inline )) __inline__ void svm_save_seg(target_phys_addr_t addr,
26614 const SegmentCache *sc)
26616 stw_phys(addr + __builtin_offsetof (struct vmcb_seg, selector),
26618 stq_phys(addr + __builtin_offsetof (struct vmcb_seg, base),
26620 stl_phys(addr + __builtin_offsetof (struct vmcb_seg, limit),
26622 stw_phys(addr + __builtin_offsetof (struct vmcb_seg, attrib),
26623 ((sc->flags >> 8) & 0xff) | ((sc->flags >> 12) & 0x0f00));
26626 static __attribute__ (( always_inline )) __inline__ void svm_load_seg(target_phys_addr_t addr, SegmentCache *sc)
26628 unsigned int flags;
26630 sc->selector = lduw_phys(addr + __builtin_offsetof (struct vmcb_seg, selector));
26631 sc->base = ldq_phys(addr + __builtin_offsetof (struct vmcb_seg, base));
26632 sc->limit = ldl_phys(addr + __builtin_offsetof (struct vmcb_seg, limit));
26633 flags = lduw_phys(addr + __builtin_offsetof (struct vmcb_seg, attrib));
26634 sc->flags = ((flags & 0xff) << 8) | ((flags & 0x0f00) << 12);
26637 static __attribute__ (( always_inline )) __inline__ void svm_load_seg_cache(target_phys_addr_t addr,
26638 CPUX86State *env, int seg_reg)
26640 SegmentCache sc1, *sc = &sc1;
26641 svm_load_seg(addr, sc);
26642 cpu_x86_load_seg_cache(env, seg_reg, sc->selector,
26643 sc->base, sc->limit, sc->flags);
26646 void helper_vmrun(int aflag, int next_eip_addend)
26649 uint32_t event_inj;
26652 helper_svm_check_intercept_param(0x080, 0);
26655 addr = (env->regs[0]);
26657 addr = (uint32_t)(env->regs[0]);
26659 do { if (loglevel & ((1 << 1))) fprintf(logfile, "vmrun! " "%08x" "\n", addr); } while (0);
26661 env->vm_vmcb = addr;
26664 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.gdtr.base), env->gdt.base);
26665 stl_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.gdtr.limit), env->gdt.limit);
26667 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.idtr.base), env->idt.base);
26668 stl_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.idtr.limit), env->idt.limit);
26670 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr0), env->cr[0]);
26671 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr2), env->cr[2]);
26672 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr3), env->cr[3]);
26673 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr4), env->cr[4]);
26674 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.dr6), env->dr[6]);
26675 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.dr7), env->dr[7]);
26677 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.efer), env->efer);
26678 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rflags), compute_eflags());
26680 svm_save_seg(env->vm_hsave + __builtin_offsetof (struct vmcb, save.es),
26682 svm_save_seg(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cs),
26684 svm_save_seg(env->vm_hsave + __builtin_offsetof (struct vmcb, save.ss),
26686 svm_save_seg(env->vm_hsave + __builtin_offsetof (struct vmcb, save.ds),
26689 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rip),
26690 (env->eip) + next_eip_addend);
26691 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rsp), (env->regs[4]));
26692 stq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rax), (env->regs[0]));
26696 env->intercept = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.intercept));
26697 env->intercept_cr_read = lduw_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.intercept_cr_read));
26698 env->intercept_cr_write = lduw_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.intercept_cr_write));
26699 env->intercept_dr_read = lduw_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.intercept_dr_read));
26700 env->intercept_dr_write = lduw_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.intercept_dr_write));
26701 env->intercept_exceptions = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.intercept_exceptions));
26704 env->hflags |= (1 << 21);
26706 env->tsc_offset = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.tsc_offset));
26708 env->gdt.base = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.gdtr.base));
26709 env->gdt.limit = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.gdtr.limit));
26711 env->idt.base = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.idtr.base));
26712 env->idt.limit = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.idtr.limit));
26715 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_info_2), 0);
26717 cpu_x86_update_cr0(env, ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr0)));
26718 cpu_x86_update_cr4(env, ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr4)));
26719 cpu_x86_update_cr3(env, ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr3)));
26720 env->cr[2] = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr2));
26721 int_ctl = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.int_ctl));
26722 env->hflags2 &= ~((1 << 1) | (1 << 3));
26723 if (int_ctl & (1 << 24)) {
26724 env->v_tpr = int_ctl & 0x0f;
26725 env->hflags2 |= (1 << 3);
26726 if (env->eflags & 0x00000200)
26727 env->hflags2 |= (1 << 1);
26731 ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.efer)));
26733 load_eflags(ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rflags)),
26734 ~(0x0800 | 0x0080 | 0x0040 | 0x0010 | 0x0004 | 0x0001 | 0x00000400));
26735 (env->cc_op) = CC_OP_EFLAGS;
26737 svm_load_seg_cache(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.es),
26739 svm_load_seg_cache(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cs),
26741 svm_load_seg_cache(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.ss),
26743 svm_load_seg_cache(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.ds),
26746 (env->eip) = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rip));
26747 env->eip = (env->eip);
26748 (env->regs[4]) = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rsp));
26749 (env->regs[0]) = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rax));
26750 env->dr[7] = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.dr7));
26751 env->dr[6] = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.dr6));
26752 cpu_x86_set_cpl(env, ldub_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cpl)));
26756 switch(ldub_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.tlb_ctl))) {
26765 env->hflags2 |= (1 << 0);
26767 if (int_ctl & (1 << 8)) {
26768 env->interrupt_request |= 0x0100;
26772 event_inj = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj));
26773 if (event_inj & (1 << 31)) {
26774 uint8_t vector = event_inj & 0xff;
26775 uint16_t valid_err = event_inj & (1 << 11);
26776 uint32_t event_inj_err = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj_err));
26778 do { if (loglevel & ((1 << 1))) fprintf(logfile, "Injecting(%#hx): ", valid_err); } while (0);
26780 switch (event_inj & (7 << 8)) {
26782 env->exception_index = vector;
26783 env->error_code = event_inj_err;
26784 env->exception_is_int = 0;
26785 env->exception_next_eip = -1;
26786 do { if (loglevel & ((1 << 1))) fprintf(logfile, "INTR"); } while (0);
26788 do_interrupt_all(vector, 0, 0, 0, 1);
26791 env->exception_index = 2;
26792 env->error_code = event_inj_err;
26793 env->exception_is_int = 0;
26794 env->exception_next_eip = (env->eip);
26795 do { if (loglevel & ((1 << 1))) fprintf(logfile, "NMI"); } while (0);
26796 cpu_loop_exit(env);
26799 env->exception_index = vector;
26800 env->error_code = event_inj_err;
26801 env->exception_is_int = 0;
26802 env->exception_next_eip = -1;
26803 do { if (loglevel & ((1 << 1))) fprintf(logfile, "EXEPT"); } while (0);
26804 cpu_loop_exit(env);
26807 env->exception_index = vector;
26808 env->error_code = event_inj_err;
26809 env->exception_is_int = 1;
26810 env->exception_next_eip = (env->eip);
26811 do { if (loglevel & ((1 << 1))) fprintf(logfile, "SOFT"); } while (0);
26812 cpu_loop_exit(env);
26815 do { if (loglevel & ((1 << 1))) fprintf(logfile, " %#x %#x\n", env->exception_index, env->error_code); } while (0);
26819 void helper_vmmcall(void)
26821 helper_svm_check_intercept_param(0x081, 0);
26822 raise_exception(6);
26825 void helper_vmload(int aflag)
26828 helper_svm_check_intercept_param(0x082, 0);
26831 addr = (env->regs[0]);
26833 addr = (uint32_t)(env->regs[0]);
26835 do { if (loglevel & ((1 << 1))) fprintf(logfile, "vmload! " "%08x" "\nFS: %016" "ll" "x" " | " "%08x" "\n", addr, ldq_phys(addr + __builtin_offsetof (struct vmcb, save.fs.base)), env->segs[4].base); } while (0)
26839 svm_load_seg_cache(addr + __builtin_offsetof (struct vmcb, save.fs),
26841 svm_load_seg_cache(addr + __builtin_offsetof (struct vmcb, save.gs),
26843 svm_load_seg(addr + __builtin_offsetof (struct vmcb, save.tr),
26845 svm_load_seg(addr + __builtin_offsetof (struct vmcb, save.ldtr),
26854 env->star = ldq_phys(addr + __builtin_offsetof (struct vmcb, save.star));
26855 env->sysenter_cs = ldq_phys(addr + __builtin_offsetof (struct vmcb, save.sysenter_cs));
26856 env->sysenter_esp = ldq_phys(addr + __builtin_offsetof (struct vmcb, save.sysenter_esp));
26857 env->sysenter_eip = ldq_phys(addr + __builtin_offsetof (struct vmcb, save.sysenter_eip));
26860 void helper_vmsave(int aflag)
26863 helper_svm_check_intercept_param(0x083, 0);
26866 addr = (env->regs[0]);
26868 addr = (uint32_t)(env->regs[0]);
26870 do { if (loglevel & ((1 << 1))) fprintf(logfile, "vmsave! " "%08x" "\nFS: %016" "ll" "x" " | " "%08x" "\n", addr, ldq_phys(addr + __builtin_offsetof (struct vmcb, save.fs.base)), env->segs[4].base); } while (0)
26874 svm_save_seg(addr + __builtin_offsetof (struct vmcb, save.fs),
26876 svm_save_seg(addr + __builtin_offsetof (struct vmcb, save.gs),
26878 svm_save_seg(addr + __builtin_offsetof (struct vmcb, save.tr),
26880 svm_save_seg(addr + __builtin_offsetof (struct vmcb, save.ldtr),
26889 stq_phys(addr + __builtin_offsetof (struct vmcb, save.star), env->star);
26890 stq_phys(addr + __builtin_offsetof (struct vmcb, save.sysenter_cs), env->sysenter_cs);
26891 stq_phys(addr + __builtin_offsetof (struct vmcb, save.sysenter_esp), env->sysenter_esp);
26892 stq_phys(addr + __builtin_offsetof (struct vmcb, save.sysenter_eip), env->sysenter_eip);
26895 void helper_stgi(void)
26897 helper_svm_check_intercept_param(0x084, 0);
26898 env->hflags2 |= (1 << 0);
26901 void helper_clgi(void)
26903 helper_svm_check_intercept_param(0x085, 0);
26904 env->hflags2 &= ~(1 << 0);
26907 void helper_skinit(void)
26909 helper_svm_check_intercept_param(0x086, 0);
26911 raise_exception(6);
26914 void helper_invlpga(int aflag)
26917 helper_svm_check_intercept_param(0x07a, 0);
26920 addr = (env->regs[0]);
26922 addr = (uint32_t)(env->regs[0]);
26926 tlb_flush_page(env, addr);
26929 void helper_svm_check_intercept_param(uint32_t type, uint64_t param)
26931 if (__builtin_expect(!!(!(env->hflags & (1 << 21))), 1))
26934 case 0x000 ... 0x000 + 8:
26935 if (env->intercept_cr_read & (1 << (type - 0x000))) {
26936 helper_vmexit(type, param);
26939 case 0x010 ... 0x010 + 8:
26940 if (env->intercept_cr_write & (1 << (type - 0x010))) {
26941 helper_vmexit(type, param);
26944 case 0x020 ... 0x020 + 7:
26945 if (env->intercept_dr_read & (1 << (type - 0x020))) {
26946 helper_vmexit(type, param);
26949 case 0x030 ... 0x030 + 7:
26950 if (env->intercept_dr_write & (1 << (type - 0x030))) {
26951 helper_vmexit(type, param);
26954 case 0x040 ... 0x040 + 31:
26955 if (env->intercept_exceptions & (1 << (type - 0x040))) {
26956 helper_vmexit(type, param);
26960 if (env->intercept & (1ULL << (0x07c - 0x060))) {
26962 uint64_t addr = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.msrpm_base_pa));
26964 switch((uint32_t)(env->regs[1])) {
26966 t0 = ((env->regs[1]) * 2) % 8;
26967 t1 = ((env->regs[1]) * 2) / 8;
26969 case 0xc0000000 ... 0xc0001fff:
26970 t0 = (8192 + (env->regs[1]) - 0xc0000000) * 2;
26974 case 0xc0010000 ... 0xc0011fff:
26975 t0 = (16384 + (env->regs[1]) - 0xc0010000) * 2;
26980 helper_vmexit(type, param);
26985 if (ldub_phys(addr + t1) & ((1 << param) << t0))
26986 helper_vmexit(type, param);
26990 if (env->intercept & (1ULL << (type - 0x060))) {
26991 helper_vmexit(type, param);
26997 void svm_check_intercept(CPUX86State *env1, uint32_t type)
26999 CPUX86State *saved_env;
27003 helper_svm_check_intercept_param(type, 0);
27007 void helper_svm_check_io(uint32_t port, uint32_t param,
27008 uint32_t next_eip_addend)
27010 if (env->intercept & (1ULL << (0x07b - 0x060))) {
27012 uint64_t addr = ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.iopm_base_pa));
27013 uint16_t mask = (1 << ((param >> 4) & 7)) - 1;
27014 if(lduw_phys(addr + port / 8) & (mask << (port & 7))) {
27016 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_info_2),
27017 env->eip + next_eip_addend);
27018 helper_vmexit(0x07b, param | (port << 16));
27024 void helper_vmexit(uint32_t exit_code, uint64_t exit_info_1)
27028 do { if (loglevel & ((1 << 1))) fprintf(logfile, "vmexit(%08x, %016" "ll" "x" ", %016" "ll" "x" ", " "%08x" ")!\n", exit_code, exit_info_1, ldq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_info_2)), (env->eip)); } while (0)
27033 if(env->hflags & (1 << 3)) {
27034 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.int_state), 1);
27035 env->hflags &= ~(1 << 3);
27037 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.int_state), 0);
27041 svm_save_seg(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.es),
27043 svm_save_seg(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cs),
27045 svm_save_seg(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.ss),
27047 svm_save_seg(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.ds),
27050 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.gdtr.base), env->gdt.base);
27051 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.gdtr.limit), env->gdt.limit);
27053 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.idtr.base), env->idt.base);
27054 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.idtr.limit), env->idt.limit);
27056 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.efer), env->efer);
27057 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr0), env->cr[0]);
27058 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr2), env->cr[2]);
27059 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr3), env->cr[3]);
27060 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cr4), env->cr[4]);
27062 int_ctl = ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.int_ctl));
27063 int_ctl &= ~(0x0f | (1 << 8));
27064 int_ctl |= env->v_tpr & 0x0f;
27065 if (env->interrupt_request & 0x0100)
27066 int_ctl |= (1 << 8);
27067 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.int_ctl), int_ctl);
27069 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rflags), compute_eflags());
27070 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rip), env->eip);
27071 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rsp), (env->regs[4]));
27072 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.rax), (env->regs[0]));
27073 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.dr7), env->dr[7]);
27074 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.dr6), env->dr[6]);
27075 stb_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, save.cpl), env->hflags & (3 << 0));
27078 env->hflags2 &= ~((1 << 1) | (1 << 3));
27079 env->hflags &= ~(1 << 21);
27080 env->intercept = 0;
27081 env->intercept_exceptions = 0;
27082 env->interrupt_request &= ~0x0100;
27083 env->tsc_offset = 0;
27085 env->gdt.base = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.gdtr.base));
27086 env->gdt.limit = ldl_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.gdtr.limit));
27088 env->idt.base = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.idtr.base));
27089 env->idt.limit = ldl_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.idtr.limit));
27091 cpu_x86_update_cr0(env, ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr0)) | (1 << 0));
27092 cpu_x86_update_cr4(env, ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr4)));
27093 cpu_x86_update_cr3(env, ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cr3)));
27097 ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.efer)));
27099 load_eflags(ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rflags)),
27100 ~(0x0800 | 0x0080 | 0x0040 | 0x0010 | 0x0004 | 0x0001 | 0x00000400));
27101 (env->cc_op) = CC_OP_EFLAGS;
27103 svm_load_seg_cache(env->vm_hsave + __builtin_offsetof (struct vmcb, save.es),
27105 svm_load_seg_cache(env->vm_hsave + __builtin_offsetof (struct vmcb, save.cs),
27107 svm_load_seg_cache(env->vm_hsave + __builtin_offsetof (struct vmcb, save.ss),
27109 svm_load_seg_cache(env->vm_hsave + __builtin_offsetof (struct vmcb, save.ds),
27112 (env->eip) = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rip));
27113 (env->regs[4]) = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rsp));
27114 (env->regs[0]) = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.rax));
27116 env->dr[6] = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.dr6));
27117 env->dr[7] = ldq_phys(env->vm_hsave + __builtin_offsetof (struct vmcb, save.dr7));
27120 cpu_x86_set_cpl(env, 0);
27121 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_code), exit_code);
27122 stq_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_info_1), exit_info_1);
27124 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_int_info),
27125 ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj)));
27126 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.exit_int_info_err),
27127 ldl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj_err)));
27128 stl_phys(env->vm_vmcb + __builtin_offsetof (struct vmcb, control.event_inj), 0);
27130 env->hflags2 &= ~(1 << 0);
27131 # 5606 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
27132 env->cr[0] |= (1 << 0);
27133 env->eflags &= ~0x00020000;
27134 # 5618 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
27135 env->exception_index = -1;
27136 env->error_code = 0;
27137 env->old_exception = -1;
27139 cpu_loop_exit(env);
27141 # 5638 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
27142 static void update_sse_status(void)
27147 switch(env->mxcsr & 0x6000) {
27150 rnd_type = float_round_nearest_even;
27153 rnd_type = float_round_down;
27156 rnd_type = float_round_up;
27159 rnd_type = float_round_to_zero;
27162 set_float_rounding_mode(rnd_type, &env->sse_status);
27165 set_flush_inputs_to_zero((env->mxcsr & 0x0040) ? 1 : 0, &env->sse_status);
27168 set_flush_to_zero((env->mxcsr & 0x8000) ? 1 : 0, &env->fp_status);
27171 void helper_ldmxcsr(uint32_t val)
27174 update_sse_status();
27177 void helper_enter_mmx(void)
27180 *(uint32_t *)(env->fptags) = 0;
27181 *(uint32_t *)(env->fptags + 4) = 0;
27184 void helper_emms(void)
27187 *(uint32_t *)(env->fptags) = 0x01010101;
27188 *(uint32_t *)(env->fptags + 4) = 0x01010101;
27192 void helper_movq(void *d, void *s)
27194 *(uint64_t *)d = *(uint64_t *)s;
27198 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h" 1
27199 # 38 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27200 void helper_psrlw_mmx(MMXReg *d, MMXReg *s)
27211 d->_w[0] >>= shift;
27212 d->_w[1] >>= shift;
27213 d->_w[2] >>= shift;
27214 d->_w[3] >>= shift;
27224 void helper_psraw_mmx(MMXReg *d, MMXReg *s)
27233 d->_w[0] = (int16_t)d->_w[0] >> shift;
27234 d->_w[1] = (int16_t)d->_w[1] >> shift;
27235 d->_w[2] = (int16_t)d->_w[2] >> shift;
27236 d->_w[3] = (int16_t)d->_w[3] >> shift;
27245 void helper_psllw_mmx(MMXReg *d, MMXReg *s)
27256 d->_w[0] <<= shift;
27257 d->_w[1] <<= shift;
27258 d->_w[2] <<= shift;
27259 d->_w[3] <<= shift;
27269 void helper_psrld_mmx(MMXReg *d, MMXReg *s)
27280 d->_l[0] >>= shift;
27281 d->_l[1] >>= shift;
27289 void helper_psrad_mmx(MMXReg *d, MMXReg *s)
27298 d->_l[0] = (int32_t)d->_l[0] >> shift;
27299 d->_l[1] = (int32_t)d->_l[1] >> shift;
27306 void helper_pslld_mmx(MMXReg *d, MMXReg *s)
27317 d->_l[0] <<= shift;
27318 d->_l[1] <<= shift;
27326 void helper_psrlq_mmx(MMXReg *d, MMXReg *s)
27344 void helper_psllq_mmx(MMXReg *d, MMXReg *s)
27361 # 287 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27362 static __attribute__ (( always_inline )) __inline__ int satub(int x)
27372 static __attribute__ (( always_inline )) __inline__ int satuw(int x)
27376 else if (x > 65535)
27382 static __attribute__ (( always_inline )) __inline__ int satsb(int x)
27392 static __attribute__ (( always_inline )) __inline__ int satsw(int x)
27396 else if (x > 32767)
27401 # 361 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27402 void helper_paddb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = ((d->_b[0]) + (s->_b[0])); d->_b[1] = ((d->_b[1]) + (s->_b[1])); d->_b[2] = ((d->_b[2]) + (s->_b[2])); d->_b[3] = ((d->_b[3]) + (s->_b[3])); d->_b[4] = ((d->_b[4]) + (s->_b[4])); d->_b[5] = ((d->_b[5]) + (s->_b[5])); d->_b[6] = ((d->_b[6]) + (s->_b[6])); d->_b[7] = ((d->_b[7]) + (s->_b[7])); }
27403 void helper_paddw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((d->_w[0]) + (s->_w[0])); d->_w[1] = ((d->_w[1]) + (s->_w[1])); d->_w[2] = ((d->_w[2]) + (s->_w[2])); d->_w[3] = ((d->_w[3]) + (s->_w[3])); }
27404 void helper_paddl_mmx (MMXReg *d, MMXReg *s){ d->_l[0] = ((d->_l[0]) + (s->_l[0])); d->_l[1] = ((d->_l[1]) + (s->_l[1])); }
27405 void helper_paddq_mmx (MMXReg *d, MMXReg *s){ d->q = ((d->q) + (s->q)); }
27407 void helper_psubb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = ((d->_b[0]) - (s->_b[0])); d->_b[1] = ((d->_b[1]) - (s->_b[1])); d->_b[2] = ((d->_b[2]) - (s->_b[2])); d->_b[3] = ((d->_b[3]) - (s->_b[3])); d->_b[4] = ((d->_b[4]) - (s->_b[4])); d->_b[5] = ((d->_b[5]) - (s->_b[5])); d->_b[6] = ((d->_b[6]) - (s->_b[6])); d->_b[7] = ((d->_b[7]) - (s->_b[7])); }
27408 void helper_psubw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((d->_w[0]) - (s->_w[0])); d->_w[1] = ((d->_w[1]) - (s->_w[1])); d->_w[2] = ((d->_w[2]) - (s->_w[2])); d->_w[3] = ((d->_w[3]) - (s->_w[3])); }
27409 void helper_psubl_mmx (MMXReg *d, MMXReg *s){ d->_l[0] = ((d->_l[0]) - (s->_l[0])); d->_l[1] = ((d->_l[1]) - (s->_l[1])); }
27410 void helper_psubq_mmx (MMXReg *d, MMXReg *s){ d->q = ((d->q) - (s->q)); }
27412 void helper_paddusb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = satub((d->_b[0]) + (s->_b[0])); d->_b[1] = satub((d->_b[1]) + (s->_b[1])); d->_b[2] = satub((d->_b[2]) + (s->_b[2])); d->_b[3] = satub((d->_b[3]) + (s->_b[3])); d->_b[4] = satub((d->_b[4]) + (s->_b[4])); d->_b[5] = satub((d->_b[5]) + (s->_b[5])); d->_b[6] = satub((d->_b[6]) + (s->_b[6])); d->_b[7] = satub((d->_b[7]) + (s->_b[7])); }
27413 void helper_paddsb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = satsb((int8_t)(d->_b[0]) + (int8_t)(s->_b[0])); d->_b[1] = satsb((int8_t)(d->_b[1]) + (int8_t)(s->_b[1])); d->_b[2] = satsb((int8_t)(d->_b[2]) + (int8_t)(s->_b[2])); d->_b[3] = satsb((int8_t)(d->_b[3]) + (int8_t)(s->_b[3])); d->_b[4] = satsb((int8_t)(d->_b[4]) + (int8_t)(s->_b[4])); d->_b[5] = satsb((int8_t)(d->_b[5]) + (int8_t)(s->_b[5])); d->_b[6] = satsb((int8_t)(d->_b[6]) + (int8_t)(s->_b[6])); d->_b[7] = satsb((int8_t)(d->_b[7]) + (int8_t)(s->_b[7])); }
27414 void helper_psubusb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = satub((d->_b[0]) - (s->_b[0])); d->_b[1] = satub((d->_b[1]) - (s->_b[1])); d->_b[2] = satub((d->_b[2]) - (s->_b[2])); d->_b[3] = satub((d->_b[3]) - (s->_b[3])); d->_b[4] = satub((d->_b[4]) - (s->_b[4])); d->_b[5] = satub((d->_b[5]) - (s->_b[5])); d->_b[6] = satub((d->_b[6]) - (s->_b[6])); d->_b[7] = satub((d->_b[7]) - (s->_b[7])); }
27415 void helper_psubsb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = satsb((int8_t)(d->_b[0]) - (int8_t)(s->_b[0])); d->_b[1] = satsb((int8_t)(d->_b[1]) - (int8_t)(s->_b[1])); d->_b[2] = satsb((int8_t)(d->_b[2]) - (int8_t)(s->_b[2])); d->_b[3] = satsb((int8_t)(d->_b[3]) - (int8_t)(s->_b[3])); d->_b[4] = satsb((int8_t)(d->_b[4]) - (int8_t)(s->_b[4])); d->_b[5] = satsb((int8_t)(d->_b[5]) - (int8_t)(s->_b[5])); d->_b[6] = satsb((int8_t)(d->_b[6]) - (int8_t)(s->_b[6])); d->_b[7] = satsb((int8_t)(d->_b[7]) - (int8_t)(s->_b[7])); }
27417 void helper_paddusw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = satuw((d->_w[0]) + (s->_w[0])); d->_w[1] = satuw((d->_w[1]) + (s->_w[1])); d->_w[2] = satuw((d->_w[2]) + (s->_w[2])); d->_w[3] = satuw((d->_w[3]) + (s->_w[3])); }
27418 void helper_paddsw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = satsw((int16_t)(d->_w[0]) + (int16_t)(s->_w[0])); d->_w[1] = satsw((int16_t)(d->_w[1]) + (int16_t)(s->_w[1])); d->_w[2] = satsw((int16_t)(d->_w[2]) + (int16_t)(s->_w[2])); d->_w[3] = satsw((int16_t)(d->_w[3]) + (int16_t)(s->_w[3])); }
27419 void helper_psubusw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = satuw((d->_w[0]) - (s->_w[0])); d->_w[1] = satuw((d->_w[1]) - (s->_w[1])); d->_w[2] = satuw((d->_w[2]) - (s->_w[2])); d->_w[3] = satuw((d->_w[3]) - (s->_w[3])); }
27420 void helper_psubsw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = satsw((int16_t)(d->_w[0]) - (int16_t)(s->_w[0])); d->_w[1] = satsw((int16_t)(d->_w[1]) - (int16_t)(s->_w[1])); d->_w[2] = satsw((int16_t)(d->_w[2]) - (int16_t)(s->_w[2])); d->_w[3] = satsw((int16_t)(d->_w[3]) - (int16_t)(s->_w[3])); }
27422 void helper_pminub_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = ((d->_b[0]) < (s->_b[0])) ? (d->_b[0]) : (s->_b[0]); d->_b[1] = ((d->_b[1]) < (s->_b[1])) ? (d->_b[1]) : (s->_b[1]); d->_b[2] = ((d->_b[2]) < (s->_b[2])) ? (d->_b[2]) : (s->_b[2]); d->_b[3] = ((d->_b[3]) < (s->_b[3])) ? (d->_b[3]) : (s->_b[3]); d->_b[4] = ((d->_b[4]) < (s->_b[4])) ? (d->_b[4]) : (s->_b[4]); d->_b[5] = ((d->_b[5]) < (s->_b[5])) ? (d->_b[5]) : (s->_b[5]); d->_b[6] = ((d->_b[6]) < (s->_b[6])) ? (d->_b[6]) : (s->_b[6]); d->_b[7] = ((d->_b[7]) < (s->_b[7])) ? (d->_b[7]) : (s->_b[7]); }
27423 void helper_pmaxub_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = ((d->_b[0]) > (s->_b[0])) ? (d->_b[0]) : (s->_b[0]); d->_b[1] = ((d->_b[1]) > (s->_b[1])) ? (d->_b[1]) : (s->_b[1]); d->_b[2] = ((d->_b[2]) > (s->_b[2])) ? (d->_b[2]) : (s->_b[2]); d->_b[3] = ((d->_b[3]) > (s->_b[3])) ? (d->_b[3]) : (s->_b[3]); d->_b[4] = ((d->_b[4]) > (s->_b[4])) ? (d->_b[4]) : (s->_b[4]); d->_b[5] = ((d->_b[5]) > (s->_b[5])) ? (d->_b[5]) : (s->_b[5]); d->_b[6] = ((d->_b[6]) > (s->_b[6])) ? (d->_b[6]) : (s->_b[6]); d->_b[7] = ((d->_b[7]) > (s->_b[7])) ? (d->_b[7]) : (s->_b[7]); }
27425 void helper_pminsw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((int16_t)(d->_w[0]) < (int16_t)(s->_w[0])) ? (d->_w[0]) : (s->_w[0]); d->_w[1] = ((int16_t)(d->_w[1]) < (int16_t)(s->_w[1])) ? (d->_w[1]) : (s->_w[1]); d->_w[2] = ((int16_t)(d->_w[2]) < (int16_t)(s->_w[2])) ? (d->_w[2]) : (s->_w[2]); d->_w[3] = ((int16_t)(d->_w[3]) < (int16_t)(s->_w[3])) ? (d->_w[3]) : (s->_w[3]); }
27426 void helper_pmaxsw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((int16_t)(d->_w[0]) > (int16_t)(s->_w[0])) ? (d->_w[0]) : (s->_w[0]); d->_w[1] = ((int16_t)(d->_w[1]) > (int16_t)(s->_w[1])) ? (d->_w[1]) : (s->_w[1]); d->_w[2] = ((int16_t)(d->_w[2]) > (int16_t)(s->_w[2])) ? (d->_w[2]) : (s->_w[2]); d->_w[3] = ((int16_t)(d->_w[3]) > (int16_t)(s->_w[3])) ? (d->_w[3]) : (s->_w[3]); }
27428 void helper_pand_mmx (MMXReg *d, MMXReg *s){ d->q = (d->q) & (s->q); }
27429 void helper_pandn_mmx (MMXReg *d, MMXReg *s){ d->q = ((~(d->q)) & (s->q)); }
27430 void helper_por_mmx (MMXReg *d, MMXReg *s){ d->q = (d->q) | (s->q); }
27431 void helper_pxor_mmx (MMXReg *d, MMXReg *s){ d->q = (d->q) ^ (s->q); }
27433 void helper_pcmpgtb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = (int8_t)(d->_b[0]) > (int8_t)(s->_b[0]) ? -1 : 0; d->_b[1] = (int8_t)(d->_b[1]) > (int8_t)(s->_b[1]) ? -1 : 0; d->_b[2] = (int8_t)(d->_b[2]) > (int8_t)(s->_b[2]) ? -1 : 0; d->_b[3] = (int8_t)(d->_b[3]) > (int8_t)(s->_b[3]) ? -1 : 0; d->_b[4] = (int8_t)(d->_b[4]) > (int8_t)(s->_b[4]) ? -1 : 0; d->_b[5] = (int8_t)(d->_b[5]) > (int8_t)(s->_b[5]) ? -1 : 0; d->_b[6] = (int8_t)(d->_b[6]) > (int8_t)(s->_b[6]) ? -1 : 0; d->_b[7] = (int8_t)(d->_b[7]) > (int8_t)(s->_b[7]) ? -1 : 0; }
27434 void helper_pcmpgtw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = (int16_t)(d->_w[0]) > (int16_t)(s->_w[0]) ? -1 : 0; d->_w[1] = (int16_t)(d->_w[1]) > (int16_t)(s->_w[1]) ? -1 : 0; d->_w[2] = (int16_t)(d->_w[2]) > (int16_t)(s->_w[2]) ? -1 : 0; d->_w[3] = (int16_t)(d->_w[3]) > (int16_t)(s->_w[3]) ? -1 : 0; }
27435 void helper_pcmpgtl_mmx (MMXReg *d, MMXReg *s){ d->_l[0] = (int32_t)(d->_l[0]) > (int32_t)(s->_l[0]) ? -1 : 0; d->_l[1] = (int32_t)(d->_l[1]) > (int32_t)(s->_l[1]) ? -1 : 0; }
27437 void helper_pcmpeqb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = (d->_b[0]) == (s->_b[0]) ? -1 : 0; d->_b[1] = (d->_b[1]) == (s->_b[1]) ? -1 : 0; d->_b[2] = (d->_b[2]) == (s->_b[2]) ? -1 : 0; d->_b[3] = (d->_b[3]) == (s->_b[3]) ? -1 : 0; d->_b[4] = (d->_b[4]) == (s->_b[4]) ? -1 : 0; d->_b[5] = (d->_b[5]) == (s->_b[5]) ? -1 : 0; d->_b[6] = (d->_b[6]) == (s->_b[6]) ? -1 : 0; d->_b[7] = (d->_b[7]) == (s->_b[7]) ? -1 : 0; }
27438 void helper_pcmpeqw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = (d->_w[0]) == (s->_w[0]) ? -1 : 0; d->_w[1] = (d->_w[1]) == (s->_w[1]) ? -1 : 0; d->_w[2] = (d->_w[2]) == (s->_w[2]) ? -1 : 0; d->_w[3] = (d->_w[3]) == (s->_w[3]) ? -1 : 0; }
27439 void helper_pcmpeql_mmx (MMXReg *d, MMXReg *s){ d->_l[0] = (d->_l[0]) == (s->_l[0]) ? -1 : 0; d->_l[1] = (d->_l[1]) == (s->_l[1]) ? -1 : 0; }
27441 void helper_pmullw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = (d->_w[0]) * (s->_w[0]); d->_w[1] = (d->_w[1]) * (s->_w[1]); d->_w[2] = (d->_w[2]) * (s->_w[2]); d->_w[3] = (d->_w[3]) * (s->_w[3]); }
27443 void helper_pmulhrw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((int16_t)(d->_w[0]) * (int16_t)(s->_w[0]) + 0x8000) >> 16; d->_w[1] = ((int16_t)(d->_w[1]) * (int16_t)(s->_w[1]) + 0x8000) >> 16; d->_w[2] = ((int16_t)(d->_w[2]) * (int16_t)(s->_w[2]) + 0x8000) >> 16; d->_w[3] = ((int16_t)(d->_w[3]) * (int16_t)(s->_w[3]) + 0x8000) >> 16; }
27445 void helper_pmulhuw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = (d->_w[0]) * (s->_w[0]) >> 16; d->_w[1] = (d->_w[1]) * (s->_w[1]) >> 16; d->_w[2] = (d->_w[2]) * (s->_w[2]) >> 16; d->_w[3] = (d->_w[3]) * (s->_w[3]) >> 16; }
27446 void helper_pmulhw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = (int16_t)(d->_w[0]) * (int16_t)(s->_w[0]) >> 16; d->_w[1] = (int16_t)(d->_w[1]) * (int16_t)(s->_w[1]) >> 16; d->_w[2] = (int16_t)(d->_w[2]) * (int16_t)(s->_w[2]) >> 16; d->_w[3] = (int16_t)(d->_w[3]) * (int16_t)(s->_w[3]) >> 16; }
27448 void helper_pavgb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = ((d->_b[0]) + (s->_b[0]) + 1) >> 1; d->_b[1] = ((d->_b[1]) + (s->_b[1]) + 1) >> 1; d->_b[2] = ((d->_b[2]) + (s->_b[2]) + 1) >> 1; d->_b[3] = ((d->_b[3]) + (s->_b[3]) + 1) >> 1; d->_b[4] = ((d->_b[4]) + (s->_b[4]) + 1) >> 1; d->_b[5] = ((d->_b[5]) + (s->_b[5]) + 1) >> 1; d->_b[6] = ((d->_b[6]) + (s->_b[6]) + 1) >> 1; d->_b[7] = ((d->_b[7]) + (s->_b[7]) + 1) >> 1; }
27449 void helper_pavgw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((d->_w[0]) + (s->_w[0]) + 1) >> 1; d->_w[1] = ((d->_w[1]) + (s->_w[1]) + 1) >> 1; d->_w[2] = ((d->_w[2]) + (s->_w[2]) + 1) >> 1; d->_w[3] = ((d->_w[3]) + (s->_w[3]) + 1) >> 1; }
27451 void helper_pmuludq_mmx (MMXReg *d, MMXReg *s)
27453 d->q = (uint64_t)s->_l[0] * (uint64_t)d->_l[0];
27459 void helper_pmaddwd_mmx (MMXReg *d, MMXReg *s)
27463 for(i = 0; i < (2 << 0); i++) {
27464 d->_l[i] = (int16_t)s->_w[2*i] * (int16_t)d->_w[2*i] +
27465 (int16_t)s->_w[2*i+1] * (int16_t)d->_w[2*i+1];
27470 static __attribute__ (( always_inline )) __inline__ int abs1(int a)
27478 void helper_psadbw_mmx (MMXReg *d, MMXReg *s)
27483 val += abs1(d->_b[0] - s->_b[0]);
27484 val += abs1(d->_b[1] - s->_b[1]);
27485 val += abs1(d->_b[2] - s->_b[2]);
27486 val += abs1(d->_b[3] - s->_b[3]);
27487 val += abs1(d->_b[4] - s->_b[4]);
27488 val += abs1(d->_b[5] - s->_b[5]);
27489 val += abs1(d->_b[6] - s->_b[6]);
27490 val += abs1(d->_b[7] - s->_b[7]);
27492 # 463 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27495 void helper_maskmov_mmx (MMXReg *d, MMXReg *s, target_ulong a0)
27498 for(i = 0; i < (8 << 0); i++) {
27499 if (s->_b[i] & 0x80)
27500 stb_data(a0 + i, d->_b[i]);
27504 void helper_movl_mm_T0_mmx (MMXReg *d, uint32_t val)
27512 # 494 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27513 void helper_pshufw_mmx (MMXReg *d, MMXReg *s, int order)
27516 r._w[0] = s->_w[order & 3];
27517 r._w[1] = s->_w[(order >> 2) & 3];
27518 r._w[2] = s->_w[(order >> 4) & 3];
27519 r._w[3] = s->_w[(order >> 6) & 3];
27522 # 1023 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27523 uint32_t helper_pmovmskb_mmx(MMXReg *s)
27527 val |= (s->_b[0] >> 7);
27528 val |= (s->_b[1] >> 6) & 0x02;
27529 val |= (s->_b[2] >> 5) & 0x04;
27530 val |= (s->_b[3] >> 4) & 0x08;
27531 val |= (s->_b[4] >> 3) & 0x10;
27532 val |= (s->_b[5] >> 2) & 0x20;
27533 val |= (s->_b[6] >> 1) & 0x40;
27534 val |= (s->_b[7]) & 0x80;
27535 # 1045 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27539 void helper_packsswb_mmx (MMXReg *d, MMXReg *s)
27543 r._b[0] = satsb((int16_t)d->_w[0]);
27544 r._b[1] = satsb((int16_t)d->_w[1]);
27545 r._b[2] = satsb((int16_t)d->_w[2]);
27546 r._b[3] = satsb((int16_t)d->_w[3]);
27553 r._b[(4 << 0) + 0] = satsb((int16_t)s->_w[0]);
27554 r._b[(4 << 0) + 1] = satsb((int16_t)s->_w[1]);
27555 r._b[(4 << 0) + 2] = satsb((int16_t)s->_w[2]);
27556 r._b[(4 << 0) + 3] = satsb((int16_t)s->_w[3]);
27566 void helper_packuswb_mmx (MMXReg *d, MMXReg *s)
27570 r._b[0] = satub((int16_t)d->_w[0]);
27571 r._b[1] = satub((int16_t)d->_w[1]);
27572 r._b[2] = satub((int16_t)d->_w[2]);
27573 r._b[3] = satub((int16_t)d->_w[3]);
27580 r._b[(4 << 0) + 0] = satub((int16_t)s->_w[0]);
27581 r._b[(4 << 0) + 1] = satub((int16_t)s->_w[1]);
27582 r._b[(4 << 0) + 2] = satub((int16_t)s->_w[2]);
27583 r._b[(4 << 0) + 3] = satub((int16_t)s->_w[3]);
27593 void helper_packssdw_mmx (MMXReg *d, MMXReg *s)
27597 r._w[0] = satsw(d->_l[0]);
27598 r._w[1] = satsw(d->_l[1]);
27603 r._w[(2 << 0) + 0] = satsw(s->_l[0]);
27604 r._w[(2 << 0) + 1] = satsw(s->_l[1]);
27611 # 1189 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27612 void helper_punpcklbw_mmx (MMXReg *d, MMXReg *s) { MMXReg r; r._b[0] = d->_b[(0 << (0 + 2)) + 0]; r._b[1] = s->_b[(0 << (0 + 2)) + 0]; r._b[2] = d->_b[(0 << (0 + 2)) + 1]; r._b[3] = s->_b[(0 << (0 + 2)) + 1]; r._b[4] = d->_b[(0 << (0 + 2)) + 2]; r._b[5] = s->_b[(0 << (0 + 2)) + 2]; r._b[6] = d->_b[(0 << (0 + 2)) + 3]; r._b[7] = s->_b[(0 << (0 + 2)) + 3]; *d = r; } void helper_punpcklwd_mmx (MMXReg *d, MMXReg *s) { MMXReg r; r._w[0] = d->_w[(0 << (0 + 1)) + 0]; r._w[1] = s->_w[(0 << (0 + 1)) + 0]; r._w[2] = d->_w[(0 << (0 + 1)) + 1]; r._w[3] = s->_w[(0 << (0 + 1)) + 1]; *d = r; } void helper_punpckldq_mmx (MMXReg *d, MMXReg *s) { MMXReg r; r._l[0] = d->_l[(0 << 0) + 0]; r._l[1] = s->_l[(0 << 0) + 0]; *d = r; }
27613 void helper_punpckhbw_mmx (MMXReg *d, MMXReg *s) { MMXReg r; r._b[0] = d->_b[(1 << (0 + 2)) + 0]; r._b[1] = s->_b[(1 << (0 + 2)) + 0]; r._b[2] = d->_b[(1 << (0 + 2)) + 1]; r._b[3] = s->_b[(1 << (0 + 2)) + 1]; r._b[4] = d->_b[(1 << (0 + 2)) + 2]; r._b[5] = s->_b[(1 << (0 + 2)) + 2]; r._b[6] = d->_b[(1 << (0 + 2)) + 3]; r._b[7] = s->_b[(1 << (0 + 2)) + 3]; *d = r; } void helper_punpckhwd_mmx (MMXReg *d, MMXReg *s) { MMXReg r; r._w[0] = d->_w[(1 << (0 + 1)) + 0]; r._w[1] = s->_w[(1 << (0 + 1)) + 0]; r._w[2] = d->_w[(1 << (0 + 1)) + 1]; r._w[3] = s->_w[(1 << (0 + 1)) + 1]; *d = r; } void helper_punpckhdq_mmx (MMXReg *d, MMXReg *s) { MMXReg r; r._l[0] = d->_l[(1 << 0) + 0]; r._l[1] = s->_l[(1 << 0) + 0]; *d = r; }
27617 void helper_pi2fd(MMXReg *d, MMXReg *s)
27619 d->_s[0] = int32_to_float32(s->_l[0], &env->mmx_status);
27620 d->_s[1] = int32_to_float32(s->_l[1], &env->mmx_status);
27623 void helper_pi2fw(MMXReg *d, MMXReg *s)
27625 d->_s[0] = int32_to_float32((int16_t)s->_w[0], &env->mmx_status);
27626 d->_s[1] = int32_to_float32((int16_t)s->_w[2], &env->mmx_status);
27629 void helper_pf2id(MMXReg *d, MMXReg *s)
27631 d->_l[0] = float32_to_int32_round_to_zero(s->_s[0], &env->mmx_status);
27632 d->_l[1] = float32_to_int32_round_to_zero(s->_s[1], &env->mmx_status);
27635 void helper_pf2iw(MMXReg *d, MMXReg *s)
27637 d->_l[0] = satsw(float32_to_int32_round_to_zero(s->_s[0], &env->mmx_status));
27638 d->_l[1] = satsw(float32_to_int32_round_to_zero(s->_s[1], &env->mmx_status));
27641 void helper_pfacc(MMXReg *d, MMXReg *s)
27644 r._s[0] = float32_add(d->_s[0], d->_s[1], &env->mmx_status);
27645 r._s[1] = float32_add(s->_s[0], s->_s[1], &env->mmx_status);
27649 void helper_pfadd(MMXReg *d, MMXReg *s)
27651 d->_s[0] = float32_add(d->_s[0], s->_s[0], &env->mmx_status);
27652 d->_s[1] = float32_add(d->_s[1], s->_s[1], &env->mmx_status);
27655 void helper_pfcmpeq(MMXReg *d, MMXReg *s)
27657 d->_l[0] = float32_eq_quiet(d->_s[0], s->_s[0], &env->mmx_status) ? -1 : 0;
27658 d->_l[1] = float32_eq_quiet(d->_s[1], s->_s[1], &env->mmx_status) ? -1 : 0;
27661 void helper_pfcmpge(MMXReg *d, MMXReg *s)
27663 d->_l[0] = float32_le(s->_s[0], d->_s[0], &env->mmx_status) ? -1 : 0;
27664 d->_l[1] = float32_le(s->_s[1], d->_s[1], &env->mmx_status) ? -1 : 0;
27667 void helper_pfcmpgt(MMXReg *d, MMXReg *s)
27669 d->_l[0] = float32_lt(s->_s[0], d->_s[0], &env->mmx_status) ? -1 : 0;
27670 d->_l[1] = float32_lt(s->_s[1], d->_s[1], &env->mmx_status) ? -1 : 0;
27673 void helper_pfmax(MMXReg *d, MMXReg *s)
27675 if (float32_lt(d->_s[0], s->_s[0], &env->mmx_status))
27676 d->_s[0] = s->_s[0];
27677 if (float32_lt(d->_s[1], s->_s[1], &env->mmx_status))
27678 d->_s[1] = s->_s[1];
27681 void helper_pfmin(MMXReg *d, MMXReg *s)
27683 if (float32_lt(s->_s[0], d->_s[0], &env->mmx_status))
27684 d->_s[0] = s->_s[0];
27685 if (float32_lt(s->_s[1], d->_s[1], &env->mmx_status))
27686 d->_s[1] = s->_s[1];
27689 void helper_pfmul(MMXReg *d, MMXReg *s)
27691 d->_s[0] = float32_mul(d->_s[0], s->_s[0], &env->mmx_status);
27692 d->_s[1] = float32_mul(d->_s[1], s->_s[1], &env->mmx_status);
27695 void helper_pfnacc(MMXReg *d, MMXReg *s)
27698 r._s[0] = float32_sub(d->_s[0], d->_s[1], &env->mmx_status);
27699 r._s[1] = float32_sub(s->_s[0], s->_s[1], &env->mmx_status);
27703 void helper_pfpnacc(MMXReg *d, MMXReg *s)
27706 r._s[0] = float32_sub(d->_s[0], d->_s[1], &env->mmx_status);
27707 r._s[1] = float32_add(s->_s[0], s->_s[1], &env->mmx_status);
27711 void helper_pfrcp(MMXReg *d, MMXReg *s)
27713 d->_s[0] = float32_div((0x3f800000), s->_s[0], &env->mmx_status);
27714 d->_s[1] = d->_s[0];
27717 void helper_pfrsqrt(MMXReg *d, MMXReg *s)
27719 d->_l[1] = s->_l[0] & 0x7fffffff;
27720 d->_s[1] = float32_div((0x3f800000),
27721 float32_sqrt(d->_s[1], &env->mmx_status),
27723 d->_l[1] |= s->_l[0] & 0x80000000;
27724 d->_l[0] = d->_l[1];
27727 void helper_pfsub(MMXReg *d, MMXReg *s)
27729 d->_s[0] = float32_sub(d->_s[0], s->_s[0], &env->mmx_status);
27730 d->_s[1] = float32_sub(d->_s[1], s->_s[1], &env->mmx_status);
27733 void helper_pfsubr(MMXReg *d, MMXReg *s)
27735 d->_s[0] = float32_sub(s->_s[0], d->_s[0], &env->mmx_status);
27736 d->_s[1] = float32_sub(s->_s[1], d->_s[1], &env->mmx_status);
27739 void helper_pswapd(MMXReg *d, MMXReg *s)
27742 r._l[0] = s->_l[1];
27743 r._l[1] = s->_l[0];
27749 void helper_pshufb_mmx (MMXReg *d, MMXReg *s)
27754 for (i = 0; i < (8 << 0); i++)
27755 r._b[i] = (s->_b[i] & 0x80) ? 0 : (d->_b[s->_b[i] & ((8 << 0) - 1)]);
27760 void helper_phaddw_mmx (MMXReg *d, MMXReg *s)
27762 d->_w[0] = (int16_t)d->_w[0] + (int16_t)d->_w[1];
27763 d->_w[1] = (int16_t)d->_w[2] + (int16_t)d->_w[3];
27766 d->_w[(2 << 0) + 0] = (int16_t)s->_w[0] + (int16_t)s->_w[1];
27767 d->_w[(2 << 0) + 1] = (int16_t)s->_w[2] + (int16_t)s->_w[3];
27772 void helper_phaddd_mmx (MMXReg *d, MMXReg *s)
27774 d->_l[0] = (int32_t)d->_l[0] + (int32_t)d->_l[1];
27776 d->_l[(1 << 0) + 0] = (int32_t)s->_l[0] + (int32_t)s->_l[1];
27780 void helper_phaddsw_mmx (MMXReg *d, MMXReg *s)
27782 d->_w[0] = satsw((int16_t)d->_w[0] + (int16_t)d->_w[1]);
27783 d->_w[1] = satsw((int16_t)d->_w[2] + (int16_t)d->_w[3]);
27786 d->_w[(2 << 0) + 0] = satsw((int16_t)s->_w[0] + (int16_t)s->_w[1]);
27787 d->_w[(2 << 0) + 1] = satsw((int16_t)s->_w[2] + (int16_t)s->_w[3]);
27792 void helper_pmaddubsw_mmx (MMXReg *d, MMXReg *s)
27794 d->_w[0] = satsw((int8_t)s->_b[0] * (uint8_t)d->_b[0] +
27795 (int8_t)s->_b[1] * (uint8_t)d->_b[1]);
27796 d->_w[1] = satsw((int8_t)s->_b[2] * (uint8_t)d->_b[2] +
27797 (int8_t)s->_b[3] * (uint8_t)d->_b[3]);
27798 d->_w[2] = satsw((int8_t)s->_b[4] * (uint8_t)d->_b[4] +
27799 (int8_t)s->_b[5] * (uint8_t)d->_b[5]);
27800 d->_w[3] = satsw((int8_t)s->_b[6] * (uint8_t)d->_b[6] +
27801 (int8_t)s->_b[7] * (uint8_t)d->_b[7]);
27802 # 1389 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27805 void helper_phsubw_mmx (MMXReg *d, MMXReg *s)
27807 d->_w[0] = (int16_t)d->_w[0] - (int16_t)d->_w[1];
27808 d->_w[1] = (int16_t)d->_w[2] - (int16_t)d->_w[3];
27811 d->_w[(2 << 0) + 0] = (int16_t)s->_w[0] - (int16_t)s->_w[1];
27812 d->_w[(2 << 0) + 1] = (int16_t)s->_w[2] - (int16_t)s->_w[3];
27817 void helper_phsubd_mmx (MMXReg *d, MMXReg *s)
27819 d->_l[0] = (int32_t)d->_l[0] - (int32_t)d->_l[1];
27821 d->_l[(1 << 0) + 0] = (int32_t)s->_l[0] - (int32_t)s->_l[1];
27825 void helper_phsubsw_mmx (MMXReg *d, MMXReg *s)
27827 d->_w[0] = satsw((int16_t)d->_w[0] - (int16_t)d->_w[1]);
27828 d->_w[1] = satsw((int16_t)d->_w[2] - (int16_t)d->_w[3]);
27831 d->_w[(2 << 0) + 0] = satsw((int16_t)s->_w[0] - (int16_t)s->_w[1]);
27832 d->_w[(2 << 0) + 1] = satsw((int16_t)s->_w[2] - (int16_t)s->_w[3]);
27840 void helper_pabsb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = s->_b[0] > (127) ? -(int8_t ) s->_b[0] : s->_b[0]; d->_b[1] = s->_b[1] > (127) ? -(int8_t ) s->_b[1] : s->_b[1]; d->_b[2] = s->_b[2] > (127) ? -(int8_t ) s->_b[2] : s->_b[2]; d->_b[3] = s->_b[3] > (127) ? -(int8_t ) s->_b[3] : s->_b[3]; d->_b[4] = s->_b[4] > (127) ? -(int8_t ) s->_b[4] : s->_b[4]; d->_b[5] = s->_b[5] > (127) ? -(int8_t ) s->_b[5] : s->_b[5]; d->_b[6] = s->_b[6] > (127) ? -(int8_t ) s->_b[6] : s->_b[6]; d->_b[7] = s->_b[7] > (127) ? -(int8_t ) s->_b[7] : s->_b[7]; }
27841 void helper_pabsw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = s->_w[0] > (32767) ? -(int16_t) s->_w[0] : s->_w[0]; d->_w[1] = s->_w[1] > (32767) ? -(int16_t) s->_w[1] : s->_w[1]; d->_w[2] = s->_w[2] > (32767) ? -(int16_t) s->_w[2] : s->_w[2]; d->_w[3] = s->_w[3] > (32767) ? -(int16_t) s->_w[3] : s->_w[3]; }
27842 void helper_pabsd_mmx (MMXReg *d, MMXReg *s){ d->_l[0] = s->_l[0] > (2147483647) ? -(int32_t) s->_l[0] : s->_l[0]; d->_l[1] = s->_l[1] > (2147483647) ? -(int32_t) s->_l[1] : s->_l[1]; }
27845 void helper_pmulhrsw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = ((int16_t) d->_w[0] * (int16_t) s->_w[0] + 0x4000) >> 15; d->_w[1] = ((int16_t) d->_w[1] * (int16_t) s->_w[1] + 0x4000) >> 15; d->_w[2] = ((int16_t) d->_w[2] * (int16_t) s->_w[2] + 0x4000) >> 15; d->_w[3] = ((int16_t) d->_w[3] * (int16_t) s->_w[3] + 0x4000) >> 15; }
27850 void helper_psignb_mmx (MMXReg *d, MMXReg *s){ d->_b[0] = s->_b[0] <= (127) ? s->_b[0] ? d->_b[0] : 0 : -(int8_t ) d->_b[0]; d->_b[1] = s->_b[1] <= (127) ? s->_b[1] ? d->_b[1] : 0 : -(int8_t ) d->_b[1]; d->_b[2] = s->_b[2] <= (127) ? s->_b[2] ? d->_b[2] : 0 : -(int8_t ) d->_b[2]; d->_b[3] = s->_b[3] <= (127) ? s->_b[3] ? d->_b[3] : 0 : -(int8_t ) d->_b[3]; d->_b[4] = s->_b[4] <= (127) ? s->_b[4] ? d->_b[4] : 0 : -(int8_t ) d->_b[4]; d->_b[5] = s->_b[5] <= (127) ? s->_b[5] ? d->_b[5] : 0 : -(int8_t ) d->_b[5]; d->_b[6] = s->_b[6] <= (127) ? s->_b[6] ? d->_b[6] : 0 : -(int8_t ) d->_b[6]; d->_b[7] = s->_b[7] <= (127) ? s->_b[7] ? d->_b[7] : 0 : -(int8_t ) d->_b[7]; }
27851 void helper_psignw_mmx (MMXReg *d, MMXReg *s){ d->_w[0] = s->_w[0] <= (32767) ? s->_w[0] ? d->_w[0] : 0 : -(int16_t) d->_w[0]; d->_w[1] = s->_w[1] <= (32767) ? s->_w[1] ? d->_w[1] : 0 : -(int16_t) d->_w[1]; d->_w[2] = s->_w[2] <= (32767) ? s->_w[2] ? d->_w[2] : 0 : -(int16_t) d->_w[2]; d->_w[3] = s->_w[3] <= (32767) ? s->_w[3] ? d->_w[3] : 0 : -(int16_t) d->_w[3]; }
27852 void helper_psignd_mmx (MMXReg *d, MMXReg *s){ d->_l[0] = s->_l[0] <= (2147483647) ? s->_l[0] ? d->_l[0] : 0 : -(int32_t) d->_l[0]; d->_l[1] = s->_l[1] <= (2147483647) ? s->_l[1] ? d->_l[1] : 0 : -(int32_t) d->_l[1]; }
27854 void helper_palignr_mmx (MMXReg *d, MMXReg *s, int32_t shift)
27859 if (shift >= (16 << 0)) {
27866 r.q = (shift - 0 < 64 && shift - 0 > -64 ? shift - 0 > 0 ? s->q >> (shift - 0) : (s->q << -(shift - 0)) : 0) |
27867 (shift - 64 < 64 && shift - 64 > -64 ? shift - 64 > 0 ? d->q >> (shift - 64) : (d->q << -(shift - 64)) : 0);
27868 # 1465 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27873 # 5695 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
27876 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h" 1
27877 # 38 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
27878 void helper_psrlw_xmm(XMMReg *d, XMMReg *s)
27882 if (s->_q[0] > 15) {
27889 d->_w[0] >>= shift;
27890 d->_w[1] >>= shift;
27891 d->_w[2] >>= shift;
27892 d->_w[3] >>= shift;
27894 d->_w[4] >>= shift;
27895 d->_w[5] >>= shift;
27896 d->_w[6] >>= shift;
27897 d->_w[7] >>= shift;
27902 void helper_psraw_xmm(XMMReg *d, XMMReg *s)
27906 if (s->_q[0] > 15) {
27911 d->_w[0] = (int16_t)d->_w[0] >> shift;
27912 d->_w[1] = (int16_t)d->_w[1] >> shift;
27913 d->_w[2] = (int16_t)d->_w[2] >> shift;
27914 d->_w[3] = (int16_t)d->_w[3] >> shift;
27916 d->_w[4] = (int16_t)d->_w[4] >> shift;
27917 d->_w[5] = (int16_t)d->_w[5] >> shift;
27918 d->_w[6] = (int16_t)d->_w[6] >> shift;
27919 d->_w[7] = (int16_t)d->_w[7] >> shift;
27923 void helper_psllw_xmm(XMMReg *d, XMMReg *s)
27927 if (s->_q[0] > 15) {
27934 d->_w[0] <<= shift;
27935 d->_w[1] <<= shift;
27936 d->_w[2] <<= shift;
27937 d->_w[3] <<= shift;
27939 d->_w[4] <<= shift;
27940 d->_w[5] <<= shift;
27941 d->_w[6] <<= shift;
27942 d->_w[7] <<= shift;
27947 void helper_psrld_xmm(XMMReg *d, XMMReg *s)
27951 if (s->_q[0] > 31) {
27958 d->_l[0] >>= shift;
27959 d->_l[1] >>= shift;
27961 d->_l[2] >>= shift;
27962 d->_l[3] >>= shift;
27967 void helper_psrad_xmm(XMMReg *d, XMMReg *s)
27971 if (s->_q[0] > 31) {
27976 d->_l[0] = (int32_t)d->_l[0] >> shift;
27977 d->_l[1] = (int32_t)d->_l[1] >> shift;
27979 d->_l[2] = (int32_t)d->_l[2] >> shift;
27980 d->_l[3] = (int32_t)d->_l[3] >> shift;
27984 void helper_pslld_xmm(XMMReg *d, XMMReg *s)
27988 if (s->_q[0] > 31) {
27995 d->_l[0] <<= shift;
27996 d->_l[1] <<= shift;
27998 d->_l[2] <<= shift;
27999 d->_l[3] <<= shift;
28004 void helper_psrlq_xmm(XMMReg *d, XMMReg *s)
28008 if (s->_q[0] > 63) {
28015 d->_q[0] >>= shift;
28017 d->_q[1] >>= shift;
28022 void helper_psllq_xmm(XMMReg *d, XMMReg *s)
28026 if (s->_q[0] > 63) {
28033 d->_q[0] <<= shift;
28035 d->_q[1] <<= shift;
28041 void helper_psrldq_xmm(XMMReg *d, XMMReg *s)
28048 for(i = 0; i < 16 - shift; i++)
28049 d->_b[i] = d->_b[i + shift];
28050 for(i = 16 - shift; i < 16; i++)
28054 void helper_pslldq_xmm(XMMReg *d, XMMReg *s)
28061 for(i = 15; i >= shift; i--)
28062 d->_b[i] = d->_b[i - shift];
28063 for(i = 0; i < shift; i++)
28066 # 361 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28067 void helper_paddb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((d->_b[0]) + (s->_b[0])); d->_b[1] = ((d->_b[1]) + (s->_b[1])); d->_b[2] = ((d->_b[2]) + (s->_b[2])); d->_b[3] = ((d->_b[3]) + (s->_b[3])); d->_b[4] = ((d->_b[4]) + (s->_b[4])); d->_b[5] = ((d->_b[5]) + (s->_b[5])); d->_b[6] = ((d->_b[6]) + (s->_b[6])); d->_b[7] = ((d->_b[7]) + (s->_b[7])); d->_b[8] = ((d->_b[8]) + (s->_b[8])); d->_b[9] = ((d->_b[9]) + (s->_b[9])); d->_b[10] = ((d->_b[10]) + (s->_b[10])); d->_b[11] = ((d->_b[11]) + (s->_b[11])); d->_b[12] = ((d->_b[12]) + (s->_b[12])); d->_b[13] = ((d->_b[13]) + (s->_b[13])); d->_b[14] = ((d->_b[14]) + (s->_b[14])); d->_b[15] = ((d->_b[15]) + (s->_b[15]));}
28068 void helper_paddw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = ((d->_w[0]) + (s->_w[0])); d->_w[1] = ((d->_w[1]) + (s->_w[1])); d->_w[2] = ((d->_w[2]) + (s->_w[2])); d->_w[3] = ((d->_w[3]) + (s->_w[3])); d->_w[4] = ((d->_w[4]) + (s->_w[4])); d->_w[5] = ((d->_w[5]) + (s->_w[5])); d->_w[6] = ((d->_w[6]) + (s->_w[6])); d->_w[7] = ((d->_w[7]) + (s->_w[7]));}
28069 void helper_paddl_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = ((d->_l[0]) + (s->_l[0])); d->_l[1] = ((d->_l[1]) + (s->_l[1])); d->_l[2] = ((d->_l[2]) + (s->_l[2])); d->_l[3] = ((d->_l[3]) + (s->_l[3]));}
28070 void helper_paddq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = ((d->_q[0]) + (s->_q[0])); d->_q[1] = ((d->_q[1]) + (s->_q[1]));}
28072 void helper_psubb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((d->_b[0]) - (s->_b[0])); d->_b[1] = ((d->_b[1]) - (s->_b[1])); d->_b[2] = ((d->_b[2]) - (s->_b[2])); d->_b[3] = ((d->_b[3]) - (s->_b[3])); d->_b[4] = ((d->_b[4]) - (s->_b[4])); d->_b[5] = ((d->_b[5]) - (s->_b[5])); d->_b[6] = ((d->_b[6]) - (s->_b[6])); d->_b[7] = ((d->_b[7]) - (s->_b[7])); d->_b[8] = ((d->_b[8]) - (s->_b[8])); d->_b[9] = ((d->_b[9]) - (s->_b[9])); d->_b[10] = ((d->_b[10]) - (s->_b[10])); d->_b[11] = ((d->_b[11]) - (s->_b[11])); d->_b[12] = ((d->_b[12]) - (s->_b[12])); d->_b[13] = ((d->_b[13]) - (s->_b[13])); d->_b[14] = ((d->_b[14]) - (s->_b[14])); d->_b[15] = ((d->_b[15]) - (s->_b[15]));}
28073 void helper_psubw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = ((d->_w[0]) - (s->_w[0])); d->_w[1] = ((d->_w[1]) - (s->_w[1])); d->_w[2] = ((d->_w[2]) - (s->_w[2])); d->_w[3] = ((d->_w[3]) - (s->_w[3])); d->_w[4] = ((d->_w[4]) - (s->_w[4])); d->_w[5] = ((d->_w[5]) - (s->_w[5])); d->_w[6] = ((d->_w[6]) - (s->_w[6])); d->_w[7] = ((d->_w[7]) - (s->_w[7]));}
28074 void helper_psubl_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = ((d->_l[0]) - (s->_l[0])); d->_l[1] = ((d->_l[1]) - (s->_l[1])); d->_l[2] = ((d->_l[2]) - (s->_l[2])); d->_l[3] = ((d->_l[3]) - (s->_l[3]));}
28075 void helper_psubq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = ((d->_q[0]) - (s->_q[0])); d->_q[1] = ((d->_q[1]) - (s->_q[1]));}
28077 void helper_paddusb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = satub((d->_b[0]) + (s->_b[0])); d->_b[1] = satub((d->_b[1]) + (s->_b[1])); d->_b[2] = satub((d->_b[2]) + (s->_b[2])); d->_b[3] = satub((d->_b[3]) + (s->_b[3])); d->_b[4] = satub((d->_b[4]) + (s->_b[4])); d->_b[5] = satub((d->_b[5]) + (s->_b[5])); d->_b[6] = satub((d->_b[6]) + (s->_b[6])); d->_b[7] = satub((d->_b[7]) + (s->_b[7])); d->_b[8] = satub((d->_b[8]) + (s->_b[8])); d->_b[9] = satub((d->_b[9]) + (s->_b[9])); d->_b[10] = satub((d->_b[10]) + (s->_b[10])); d->_b[11] = satub((d->_b[11]) + (s->_b[11])); d->_b[12] = satub((d->_b[12]) + (s->_b[12])); d->_b[13] = satub((d->_b[13]) + (s->_b[13])); d->_b[14] = satub((d->_b[14]) + (s->_b[14])); d->_b[15] = satub((d->_b[15]) + (s->_b[15]));}
28078 void helper_paddsb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = satsb((int8_t)(d->_b[0]) + (int8_t)(s->_b[0])); d->_b[1] = satsb((int8_t)(d->_b[1]) + (int8_t)(s->_b[1])); d->_b[2] = satsb((int8_t)(d->_b[2]) + (int8_t)(s->_b[2])); d->_b[3] = satsb((int8_t)(d->_b[3]) + (int8_t)(s->_b[3])); d->_b[4] = satsb((int8_t)(d->_b[4]) + (int8_t)(s->_b[4])); d->_b[5] = satsb((int8_t)(d->_b[5]) + (int8_t)(s->_b[5])); d->_b[6] = satsb((int8_t)(d->_b[6]) + (int8_t)(s->_b[6])); d->_b[7] = satsb((int8_t)(d->_b[7]) + (int8_t)(s->_b[7])); d->_b[8] = satsb((int8_t)(d->_b[8]) + (int8_t)(s->_b[8])); d->_b[9] = satsb((int8_t)(d->_b[9]) + (int8_t)(s->_b[9])); d->_b[10] = satsb((int8_t)(d->_b[10]) + (int8_t)(s->_b[10])); d->_b[11] = satsb((int8_t)(d->_b[11]) + (int8_t)(s->_b[11])); d->_b[12] = satsb((int8_t)(d->_b[12]) + (int8_t)(s->_b[12])); d->_b[13] = satsb((int8_t)(d->_b[13]) + (int8_t)(s->_b[13])); d->_b[14] = satsb((int8_t)(d->_b[14]) + (int8_t)(s->_b[14])); d->_b[15] = satsb((int8_t)(d->_b[15]) + (int8_t)(s->_b[15]));}
28079 void helper_psubusb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = satub((d->_b[0]) - (s->_b[0])); d->_b[1] = satub((d->_b[1]) - (s->_b[1])); d->_b[2] = satub((d->_b[2]) - (s->_b[2])); d->_b[3] = satub((d->_b[3]) - (s->_b[3])); d->_b[4] = satub((d->_b[4]) - (s->_b[4])); d->_b[5] = satub((d->_b[5]) - (s->_b[5])); d->_b[6] = satub((d->_b[6]) - (s->_b[6])); d->_b[7] = satub((d->_b[7]) - (s->_b[7])); d->_b[8] = satub((d->_b[8]) - (s->_b[8])); d->_b[9] = satub((d->_b[9]) - (s->_b[9])); d->_b[10] = satub((d->_b[10]) - (s->_b[10])); d->_b[11] = satub((d->_b[11]) - (s->_b[11])); d->_b[12] = satub((d->_b[12]) - (s->_b[12])); d->_b[13] = satub((d->_b[13]) - (s->_b[13])); d->_b[14] = satub((d->_b[14]) - (s->_b[14])); d->_b[15] = satub((d->_b[15]) - (s->_b[15]));}
28080 void helper_psubsb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = satsb((int8_t)(d->_b[0]) - (int8_t)(s->_b[0])); d->_b[1] = satsb((int8_t)(d->_b[1]) - (int8_t)(s->_b[1])); d->_b[2] = satsb((int8_t)(d->_b[2]) - (int8_t)(s->_b[2])); d->_b[3] = satsb((int8_t)(d->_b[3]) - (int8_t)(s->_b[3])); d->_b[4] = satsb((int8_t)(d->_b[4]) - (int8_t)(s->_b[4])); d->_b[5] = satsb((int8_t)(d->_b[5]) - (int8_t)(s->_b[5])); d->_b[6] = satsb((int8_t)(d->_b[6]) - (int8_t)(s->_b[6])); d->_b[7] = satsb((int8_t)(d->_b[7]) - (int8_t)(s->_b[7])); d->_b[8] = satsb((int8_t)(d->_b[8]) - (int8_t)(s->_b[8])); d->_b[9] = satsb((int8_t)(d->_b[9]) - (int8_t)(s->_b[9])); d->_b[10] = satsb((int8_t)(d->_b[10]) - (int8_t)(s->_b[10])); d->_b[11] = satsb((int8_t)(d->_b[11]) - (int8_t)(s->_b[11])); d->_b[12] = satsb((int8_t)(d->_b[12]) - (int8_t)(s->_b[12])); d->_b[13] = satsb((int8_t)(d->_b[13]) - (int8_t)(s->_b[13])); d->_b[14] = satsb((int8_t)(d->_b[14]) - (int8_t)(s->_b[14])); d->_b[15] = satsb((int8_t)(d->_b[15]) - (int8_t)(s->_b[15]));}
28082 void helper_paddusw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = satuw((d->_w[0]) + (s->_w[0])); d->_w[1] = satuw((d->_w[1]) + (s->_w[1])); d->_w[2] = satuw((d->_w[2]) + (s->_w[2])); d->_w[3] = satuw((d->_w[3]) + (s->_w[3])); d->_w[4] = satuw((d->_w[4]) + (s->_w[4])); d->_w[5] = satuw((d->_w[5]) + (s->_w[5])); d->_w[6] = satuw((d->_w[6]) + (s->_w[6])); d->_w[7] = satuw((d->_w[7]) + (s->_w[7]));}
28083 void helper_paddsw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = satsw((int16_t)(d->_w[0]) + (int16_t)(s->_w[0])); d->_w[1] = satsw((int16_t)(d->_w[1]) + (int16_t)(s->_w[1])); d->_w[2] = satsw((int16_t)(d->_w[2]) + (int16_t)(s->_w[2])); d->_w[3] = satsw((int16_t)(d->_w[3]) + (int16_t)(s->_w[3])); d->_w[4] = satsw((int16_t)(d->_w[4]) + (int16_t)(s->_w[4])); d->_w[5] = satsw((int16_t)(d->_w[5]) + (int16_t)(s->_w[5])); d->_w[6] = satsw((int16_t)(d->_w[6]) + (int16_t)(s->_w[6])); d->_w[7] = satsw((int16_t)(d->_w[7]) + (int16_t)(s->_w[7]));}
28084 void helper_psubusw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = satuw((d->_w[0]) - (s->_w[0])); d->_w[1] = satuw((d->_w[1]) - (s->_w[1])); d->_w[2] = satuw((d->_w[2]) - (s->_w[2])); d->_w[3] = satuw((d->_w[3]) - (s->_w[3])); d->_w[4] = satuw((d->_w[4]) - (s->_w[4])); d->_w[5] = satuw((d->_w[5]) - (s->_w[5])); d->_w[6] = satuw((d->_w[6]) - (s->_w[6])); d->_w[7] = satuw((d->_w[7]) - (s->_w[7]));}
28085 void helper_psubsw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = satsw((int16_t)(d->_w[0]) - (int16_t)(s->_w[0])); d->_w[1] = satsw((int16_t)(d->_w[1]) - (int16_t)(s->_w[1])); d->_w[2] = satsw((int16_t)(d->_w[2]) - (int16_t)(s->_w[2])); d->_w[3] = satsw((int16_t)(d->_w[3]) - (int16_t)(s->_w[3])); d->_w[4] = satsw((int16_t)(d->_w[4]) - (int16_t)(s->_w[4])); d->_w[5] = satsw((int16_t)(d->_w[5]) - (int16_t)(s->_w[5])); d->_w[6] = satsw((int16_t)(d->_w[6]) - (int16_t)(s->_w[6])); d->_w[7] = satsw((int16_t)(d->_w[7]) - (int16_t)(s->_w[7]));}
28087 void helper_pminub_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((d->_b[0]) < (s->_b[0])) ? (d->_b[0]) : (s->_b[0]); d->_b[1] = ((d->_b[1]) < (s->_b[1])) ? (d->_b[1]) : (s->_b[1]); d->_b[2] = ((d->_b[2]) < (s->_b[2])) ? (d->_b[2]) : (s->_b[2]); d->_b[3] = ((d->_b[3]) < (s->_b[3])) ? (d->_b[3]) : (s->_b[3]); d->_b[4] = ((d->_b[4]) < (s->_b[4])) ? (d->_b[4]) : (s->_b[4]); d->_b[5] = ((d->_b[5]) < (s->_b[5])) ? (d->_b[5]) : (s->_b[5]); d->_b[6] = ((d->_b[6]) < (s->_b[6])) ? (d->_b[6]) : (s->_b[6]); d->_b[7] = ((d->_b[7]) < (s->_b[7])) ? (d->_b[7]) : (s->_b[7]); d->_b[8] = ((d->_b[8]) < (s->_b[8])) ? (d->_b[8]) : (s->_b[8]); d->_b[9] = ((d->_b[9]) < (s->_b[9])) ? (d->_b[9]) : (s->_b[9]); d->_b[10] = ((d->_b[10]) < (s->_b[10])) ? (d->_b[10]) : (s->_b[10]); d->_b[11] = ((d->_b[11]) < (s->_b[11])) ? (d->_b[11]) : (s->_b[11]); d->_b[12] = ((d->_b[12]) < (s->_b[12])) ? (d->_b[12]) : (s->_b[12]); d->_b[13] = ((d->_b[13]) < (s->_b[13])) ? (d->_b[13]) : (s->_b[13]); d->_b[14] = ((d->_b[14]) < (s->_b[14])) ? (d->_b[14]) : (s->_b[14]); d->_b[15] = ((d->_b[15]) < (s->_b[15])) ? (d->_b[15]) : (s->_b[15]);}
28088 void helper_pmaxub_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((d->_b[0]) > (s->_b[0])) ? (d->_b[0]) : (s->_b[0]); d->_b[1] = ((d->_b[1]) > (s->_b[1])) ? (d->_b[1]) : (s->_b[1]); d->_b[2] = ((d->_b[2]) > (s->_b[2])) ? (d->_b[2]) : (s->_b[2]); d->_b[3] = ((d->_b[3]) > (s->_b[3])) ? (d->_b[3]) : (s->_b[3]); d->_b[4] = ((d->_b[4]) > (s->_b[4])) ? (d->_b[4]) : (s->_b[4]); d->_b[5] = ((d->_b[5]) > (s->_b[5])) ? (d->_b[5]) : (s->_b[5]); d->_b[6] = ((d->_b[6]) > (s->_b[6])) ? (d->_b[6]) : (s->_b[6]); d->_b[7] = ((d->_b[7]) > (s->_b[7])) ? (d->_b[7]) : (s->_b[7]); d->_b[8] = ((d->_b[8]) > (s->_b[8])) ? (d->_b[8]) : (s->_b[8]); d->_b[9] = ((d->_b[9]) > (s->_b[9])) ? (d->_b[9]) : (s->_b[9]); d->_b[10] = ((d->_b[10]) > (s->_b[10])) ? (d->_b[10]) : (s->_b[10]); d->_b[11] = ((d->_b[11]) > (s->_b[11])) ? (d->_b[11]) : (s->_b[11]); d->_b[12] = ((d->_b[12]) > (s->_b[12])) ? (d->_b[12]) : (s->_b[12]); d->_b[13] = ((d->_b[13]) > (s->_b[13])) ? (d->_b[13]) : (s->_b[13]); d->_b[14] = ((d->_b[14]) > (s->_b[14])) ? (d->_b[14]) : (s->_b[14]); d->_b[15] = ((d->_b[15]) > (s->_b[15])) ? (d->_b[15]) : (s->_b[15]);}
28090 void helper_pminsw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = ((int16_t)(d->_w[0]) < (int16_t)(s->_w[0])) ? (d->_w[0]) : (s->_w[0]); d->_w[1] = ((int16_t)(d->_w[1]) < (int16_t)(s->_w[1])) ? (d->_w[1]) : (s->_w[1]); d->_w[2] = ((int16_t)(d->_w[2]) < (int16_t)(s->_w[2])) ? (d->_w[2]) : (s->_w[2]); d->_w[3] = ((int16_t)(d->_w[3]) < (int16_t)(s->_w[3])) ? (d->_w[3]) : (s->_w[3]); d->_w[4] = ((int16_t)(d->_w[4]) < (int16_t)(s->_w[4])) ? (d->_w[4]) : (s->_w[4]); d->_w[5] = ((int16_t)(d->_w[5]) < (int16_t)(s->_w[5])) ? (d->_w[5]) : (s->_w[5]); d->_w[6] = ((int16_t)(d->_w[6]) < (int16_t)(s->_w[6])) ? (d->_w[6]) : (s->_w[6]); d->_w[7] = ((int16_t)(d->_w[7]) < (int16_t)(s->_w[7])) ? (d->_w[7]) : (s->_w[7]);}
28091 void helper_pmaxsw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = ((int16_t)(d->_w[0]) > (int16_t)(s->_w[0])) ? (d->_w[0]) : (s->_w[0]); d->_w[1] = ((int16_t)(d->_w[1]) > (int16_t)(s->_w[1])) ? (d->_w[1]) : (s->_w[1]); d->_w[2] = ((int16_t)(d->_w[2]) > (int16_t)(s->_w[2])) ? (d->_w[2]) : (s->_w[2]); d->_w[3] = ((int16_t)(d->_w[3]) > (int16_t)(s->_w[3])) ? (d->_w[3]) : (s->_w[3]); d->_w[4] = ((int16_t)(d->_w[4]) > (int16_t)(s->_w[4])) ? (d->_w[4]) : (s->_w[4]); d->_w[5] = ((int16_t)(d->_w[5]) > (int16_t)(s->_w[5])) ? (d->_w[5]) : (s->_w[5]); d->_w[6] = ((int16_t)(d->_w[6]) > (int16_t)(s->_w[6])) ? (d->_w[6]) : (s->_w[6]); d->_w[7] = ((int16_t)(d->_w[7]) > (int16_t)(s->_w[7])) ? (d->_w[7]) : (s->_w[7]);}
28093 void helper_pand_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (d->_q[0]) & (s->_q[0]); d->_q[1] = (d->_q[1]) & (s->_q[1]);}
28094 void helper_pandn_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = ((~(d->_q[0])) & (s->_q[0])); d->_q[1] = ((~(d->_q[1])) & (s->_q[1]));}
28095 void helper_por_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (d->_q[0]) | (s->_q[0]); d->_q[1] = (d->_q[1]) | (s->_q[1]);}
28096 void helper_pxor_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (d->_q[0]) ^ (s->_q[0]); d->_q[1] = (d->_q[1]) ^ (s->_q[1]);}
28098 void helper_pcmpgtb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = (int8_t)(d->_b[0]) > (int8_t)(s->_b[0]) ? -1 : 0; d->_b[1] = (int8_t)(d->_b[1]) > (int8_t)(s->_b[1]) ? -1 : 0; d->_b[2] = (int8_t)(d->_b[2]) > (int8_t)(s->_b[2]) ? -1 : 0; d->_b[3] = (int8_t)(d->_b[3]) > (int8_t)(s->_b[3]) ? -1 : 0; d->_b[4] = (int8_t)(d->_b[4]) > (int8_t)(s->_b[4]) ? -1 : 0; d->_b[5] = (int8_t)(d->_b[5]) > (int8_t)(s->_b[5]) ? -1 : 0; d->_b[6] = (int8_t)(d->_b[6]) > (int8_t)(s->_b[6]) ? -1 : 0; d->_b[7] = (int8_t)(d->_b[7]) > (int8_t)(s->_b[7]) ? -1 : 0; d->_b[8] = (int8_t)(d->_b[8]) > (int8_t)(s->_b[8]) ? -1 : 0; d->_b[9] = (int8_t)(d->_b[9]) > (int8_t)(s->_b[9]) ? -1 : 0; d->_b[10] = (int8_t)(d->_b[10]) > (int8_t)(s->_b[10]) ? -1 : 0; d->_b[11] = (int8_t)(d->_b[11]) > (int8_t)(s->_b[11]) ? -1 : 0; d->_b[12] = (int8_t)(d->_b[12]) > (int8_t)(s->_b[12]) ? -1 : 0; d->_b[13] = (int8_t)(d->_b[13]) > (int8_t)(s->_b[13]) ? -1 : 0; d->_b[14] = (int8_t)(d->_b[14]) > (int8_t)(s->_b[14]) ? -1 : 0; d->_b[15] = (int8_t)(d->_b[15]) > (int8_t)(s->_b[15]) ? -1 : 0;}
28099 void helper_pcmpgtw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (int16_t)(d->_w[0]) > (int16_t)(s->_w[0]) ? -1 : 0; d->_w[1] = (int16_t)(d->_w[1]) > (int16_t)(s->_w[1]) ? -1 : 0; d->_w[2] = (int16_t)(d->_w[2]) > (int16_t)(s->_w[2]) ? -1 : 0; d->_w[3] = (int16_t)(d->_w[3]) > (int16_t)(s->_w[3]) ? -1 : 0; d->_w[4] = (int16_t)(d->_w[4]) > (int16_t)(s->_w[4]) ? -1 : 0; d->_w[5] = (int16_t)(d->_w[5]) > (int16_t)(s->_w[5]) ? -1 : 0; d->_w[6] = (int16_t)(d->_w[6]) > (int16_t)(s->_w[6]) ? -1 : 0; d->_w[7] = (int16_t)(d->_w[7]) > (int16_t)(s->_w[7]) ? -1 : 0;}
28100 void helper_pcmpgtl_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (int32_t)(d->_l[0]) > (int32_t)(s->_l[0]) ? -1 : 0; d->_l[1] = (int32_t)(d->_l[1]) > (int32_t)(s->_l[1]) ? -1 : 0; d->_l[2] = (int32_t)(d->_l[2]) > (int32_t)(s->_l[2]) ? -1 : 0; d->_l[3] = (int32_t)(d->_l[3]) > (int32_t)(s->_l[3]) ? -1 : 0;}
28102 void helper_pcmpeqb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = (d->_b[0]) == (s->_b[0]) ? -1 : 0; d->_b[1] = (d->_b[1]) == (s->_b[1]) ? -1 : 0; d->_b[2] = (d->_b[2]) == (s->_b[2]) ? -1 : 0; d->_b[3] = (d->_b[3]) == (s->_b[3]) ? -1 : 0; d->_b[4] = (d->_b[4]) == (s->_b[4]) ? -1 : 0; d->_b[5] = (d->_b[5]) == (s->_b[5]) ? -1 : 0; d->_b[6] = (d->_b[6]) == (s->_b[6]) ? -1 : 0; d->_b[7] = (d->_b[7]) == (s->_b[7]) ? -1 : 0; d->_b[8] = (d->_b[8]) == (s->_b[8]) ? -1 : 0; d->_b[9] = (d->_b[9]) == (s->_b[9]) ? -1 : 0; d->_b[10] = (d->_b[10]) == (s->_b[10]) ? -1 : 0; d->_b[11] = (d->_b[11]) == (s->_b[11]) ? -1 : 0; d->_b[12] = (d->_b[12]) == (s->_b[12]) ? -1 : 0; d->_b[13] = (d->_b[13]) == (s->_b[13]) ? -1 : 0; d->_b[14] = (d->_b[14]) == (s->_b[14]) ? -1 : 0; d->_b[15] = (d->_b[15]) == (s->_b[15]) ? -1 : 0;}
28103 void helper_pcmpeqw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (d->_w[0]) == (s->_w[0]) ? -1 : 0; d->_w[1] = (d->_w[1]) == (s->_w[1]) ? -1 : 0; d->_w[2] = (d->_w[2]) == (s->_w[2]) ? -1 : 0; d->_w[3] = (d->_w[3]) == (s->_w[3]) ? -1 : 0; d->_w[4] = (d->_w[4]) == (s->_w[4]) ? -1 : 0; d->_w[5] = (d->_w[5]) == (s->_w[5]) ? -1 : 0; d->_w[6] = (d->_w[6]) == (s->_w[6]) ? -1 : 0; d->_w[7] = (d->_w[7]) == (s->_w[7]) ? -1 : 0;}
28104 void helper_pcmpeql_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (d->_l[0]) == (s->_l[0]) ? -1 : 0; d->_l[1] = (d->_l[1]) == (s->_l[1]) ? -1 : 0; d->_l[2] = (d->_l[2]) == (s->_l[2]) ? -1 : 0; d->_l[3] = (d->_l[3]) == (s->_l[3]) ? -1 : 0;}
28106 void helper_pmullw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (d->_w[0]) * (s->_w[0]); d->_w[1] = (d->_w[1]) * (s->_w[1]); d->_w[2] = (d->_w[2]) * (s->_w[2]); d->_w[3] = (d->_w[3]) * (s->_w[3]); d->_w[4] = (d->_w[4]) * (s->_w[4]); d->_w[5] = (d->_w[5]) * (s->_w[5]); d->_w[6] = (d->_w[6]) * (s->_w[6]); d->_w[7] = (d->_w[7]) * (s->_w[7]);}
28110 void helper_pmulhuw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (d->_w[0]) * (s->_w[0]) >> 16; d->_w[1] = (d->_w[1]) * (s->_w[1]) >> 16; d->_w[2] = (d->_w[2]) * (s->_w[2]) >> 16; d->_w[3] = (d->_w[3]) * (s->_w[3]) >> 16; d->_w[4] = (d->_w[4]) * (s->_w[4]) >> 16; d->_w[5] = (d->_w[5]) * (s->_w[5]) >> 16; d->_w[6] = (d->_w[6]) * (s->_w[6]) >> 16; d->_w[7] = (d->_w[7]) * (s->_w[7]) >> 16;}
28111 void helper_pmulhw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (int16_t)(d->_w[0]) * (int16_t)(s->_w[0]) >> 16; d->_w[1] = (int16_t)(d->_w[1]) * (int16_t)(s->_w[1]) >> 16; d->_w[2] = (int16_t)(d->_w[2]) * (int16_t)(s->_w[2]) >> 16; d->_w[3] = (int16_t)(d->_w[3]) * (int16_t)(s->_w[3]) >> 16; d->_w[4] = (int16_t)(d->_w[4]) * (int16_t)(s->_w[4]) >> 16; d->_w[5] = (int16_t)(d->_w[5]) * (int16_t)(s->_w[5]) >> 16; d->_w[6] = (int16_t)(d->_w[6]) * (int16_t)(s->_w[6]) >> 16; d->_w[7] = (int16_t)(d->_w[7]) * (int16_t)(s->_w[7]) >> 16;}
28113 void helper_pavgb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((d->_b[0]) + (s->_b[0]) + 1) >> 1; d->_b[1] = ((d->_b[1]) + (s->_b[1]) + 1) >> 1; d->_b[2] = ((d->_b[2]) + (s->_b[2]) + 1) >> 1; d->_b[3] = ((d->_b[3]) + (s->_b[3]) + 1) >> 1; d->_b[4] = ((d->_b[4]) + (s->_b[4]) + 1) >> 1; d->_b[5] = ((d->_b[5]) + (s->_b[5]) + 1) >> 1; d->_b[6] = ((d->_b[6]) + (s->_b[6]) + 1) >> 1; d->_b[7] = ((d->_b[7]) + (s->_b[7]) + 1) >> 1; d->_b[8] = ((d->_b[8]) + (s->_b[8]) + 1) >> 1; d->_b[9] = ((d->_b[9]) + (s->_b[9]) + 1) >> 1; d->_b[10] = ((d->_b[10]) + (s->_b[10]) + 1) >> 1; d->_b[11] = ((d->_b[11]) + (s->_b[11]) + 1) >> 1; d->_b[12] = ((d->_b[12]) + (s->_b[12]) + 1) >> 1; d->_b[13] = ((d->_b[13]) + (s->_b[13]) + 1) >> 1; d->_b[14] = ((d->_b[14]) + (s->_b[14]) + 1) >> 1; d->_b[15] = ((d->_b[15]) + (s->_b[15]) + 1) >> 1;}
28114 void helper_pavgw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = ((d->_w[0]) + (s->_w[0]) + 1) >> 1; d->_w[1] = ((d->_w[1]) + (s->_w[1]) + 1) >> 1; d->_w[2] = ((d->_w[2]) + (s->_w[2]) + 1) >> 1; d->_w[3] = ((d->_w[3]) + (s->_w[3]) + 1) >> 1; d->_w[4] = ((d->_w[4]) + (s->_w[4]) + 1) >> 1; d->_w[5] = ((d->_w[5]) + (s->_w[5]) + 1) >> 1; d->_w[6] = ((d->_w[6]) + (s->_w[6]) + 1) >> 1; d->_w[7] = ((d->_w[7]) + (s->_w[7]) + 1) >> 1;}
28116 void helper_pmuludq_xmm (XMMReg *d, XMMReg *s)
28118 d->_q[0] = (uint64_t)s->_l[0] * (uint64_t)d->_l[0];
28120 d->_q[1] = (uint64_t)s->_l[2] * (uint64_t)d->_l[2];
28124 void helper_pmaddwd_xmm (XMMReg *d, XMMReg *s)
28128 for(i = 0; i < (2 << 1); i++) {
28129 d->_l[i] = (int16_t)s->_w[2*i] * (int16_t)d->_w[2*i] +
28130 (int16_t)s->_w[2*i+1] * (int16_t)d->_w[2*i+1];
28133 # 437 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28134 void helper_psadbw_xmm (XMMReg *d, XMMReg *s)
28139 val += abs1(d->_b[0] - s->_b[0]);
28140 val += abs1(d->_b[1] - s->_b[1]);
28141 val += abs1(d->_b[2] - s->_b[2]);
28142 val += abs1(d->_b[3] - s->_b[3]);
28143 val += abs1(d->_b[4] - s->_b[4]);
28144 val += abs1(d->_b[5] - s->_b[5]);
28145 val += abs1(d->_b[6] - s->_b[6]);
28146 val += abs1(d->_b[7] - s->_b[7]);
28150 val += abs1(d->_b[8] - s->_b[8]);
28151 val += abs1(d->_b[9] - s->_b[9]);
28152 val += abs1(d->_b[10] - s->_b[10]);
28153 val += abs1(d->_b[11] - s->_b[11]);
28154 val += abs1(d->_b[12] - s->_b[12]);
28155 val += abs1(d->_b[13] - s->_b[13]);
28156 val += abs1(d->_b[14] - s->_b[14]);
28157 val += abs1(d->_b[15] - s->_b[15]);
28162 void helper_maskmov_xmm (XMMReg *d, XMMReg *s, target_ulong a0)
28165 for(i = 0; i < (8 << 1); i++) {
28166 if (s->_b[i] & 0x80)
28167 stb_data(a0 + i, d->_b[i]);
28171 void helper_movl_mm_T0_xmm (XMMReg *d, uint32_t val)
28179 # 504 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28180 void helper_shufps(XMMReg *d, XMMReg *s, int order)
28183 r._l[0] = d->_l[order & 3];
28184 r._l[1] = d->_l[(order >> 2) & 3];
28185 r._l[2] = s->_l[(order >> 4) & 3];
28186 r._l[3] = s->_l[(order >> 6) & 3];
28190 void helper_shufpd(XMMReg *d, XMMReg *s, int order)
28193 r._q[0] = d->_q[order & 1];
28194 r._q[1] = s->_q[(order >> 1) & 1];
28198 void helper_pshufd_xmm (XMMReg *d, XMMReg *s, int order)
28201 r._l[0] = s->_l[order & 3];
28202 r._l[1] = s->_l[(order >> 2) & 3];
28203 r._l[2] = s->_l[(order >> 4) & 3];
28204 r._l[3] = s->_l[(order >> 6) & 3];
28208 void helper_pshuflw_xmm (XMMReg *d, XMMReg *s, int order)
28211 r._w[0] = s->_w[order & 3];
28212 r._w[1] = s->_w[(order >> 2) & 3];
28213 r._w[2] = s->_w[(order >> 4) & 3];
28214 r._w[3] = s->_w[(order >> 6) & 3];
28215 r._q[1] = s->_q[1];
28219 void helper_pshufhw_xmm (XMMReg *d, XMMReg *s, int order)
28222 r._q[0] = s->_q[0];
28223 r._w[4] = s->_w[4 + (order & 3)];
28224 r._w[5] = s->_w[4 + ((order >> 2) & 3)];
28225 r._w[6] = s->_w[4 + ((order >> 4) & 3)];
28226 r._w[7] = s->_w[4 + ((order >> 6) & 3)];
28229 # 596 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28230 void helper_addps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_add(d->_s[0], s->_s[0], &env->sse_status); d->_s[1] = float32_add(d->_s[1], s->_s[1], &env->sse_status); d->_s[2] = float32_add(d->_s[2], s->_s[2], &env->sse_status); d->_s[3] = float32_add(d->_s[3], s->_s[3], &env->sse_status);}void helper_addss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_add(d->_s[0], s->_s[0], &env->sse_status);}void helper_addpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_add(d->_d[0], s->_d[0], &env->sse_status); d->_d[1] = float64_add(d->_d[1], s->_d[1], &env->sse_status);}void helper_addsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_add(d->_d[0], s->_d[0], &env->sse_status);}
28231 void helper_subps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_sub(d->_s[0], s->_s[0], &env->sse_status); d->_s[1] = float32_sub(d->_s[1], s->_s[1], &env->sse_status); d->_s[2] = float32_sub(d->_s[2], s->_s[2], &env->sse_status); d->_s[3] = float32_sub(d->_s[3], s->_s[3], &env->sse_status);}void helper_subss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_sub(d->_s[0], s->_s[0], &env->sse_status);}void helper_subpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_sub(d->_d[0], s->_d[0], &env->sse_status); d->_d[1] = float64_sub(d->_d[1], s->_d[1], &env->sse_status);}void helper_subsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_sub(d->_d[0], s->_d[0], &env->sse_status);}
28232 void helper_mulps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_mul(d->_s[0], s->_s[0], &env->sse_status); d->_s[1] = float32_mul(d->_s[1], s->_s[1], &env->sse_status); d->_s[2] = float32_mul(d->_s[2], s->_s[2], &env->sse_status); d->_s[3] = float32_mul(d->_s[3], s->_s[3], &env->sse_status);}void helper_mulss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_mul(d->_s[0], s->_s[0], &env->sse_status);}void helper_mulpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_mul(d->_d[0], s->_d[0], &env->sse_status); d->_d[1] = float64_mul(d->_d[1], s->_d[1], &env->sse_status);}void helper_mulsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_mul(d->_d[0], s->_d[0], &env->sse_status);}
28233 void helper_divps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_div(d->_s[0], s->_s[0], &env->sse_status); d->_s[1] = float32_div(d->_s[1], s->_s[1], &env->sse_status); d->_s[2] = float32_div(d->_s[2], s->_s[2], &env->sse_status); d->_s[3] = float32_div(d->_s[3], s->_s[3], &env->sse_status);}void helper_divss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_div(d->_s[0], s->_s[0], &env->sse_status);}void helper_divpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_div(d->_d[0], s->_d[0], &env->sse_status); d->_d[1] = float64_div(d->_d[1], s->_d[1], &env->sse_status);}void helper_divsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_div(d->_d[0], s->_d[0], &env->sse_status);}
28234 void helper_minps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_lt(d->_s[0], s->_s[0], &env->sse_status) ? (d->_s[0]) : (s->_s[0]); d->_s[1] = float32_lt(d->_s[1], s->_s[1], &env->sse_status) ? (d->_s[1]) : (s->_s[1]); d->_s[2] = float32_lt(d->_s[2], s->_s[2], &env->sse_status) ? (d->_s[2]) : (s->_s[2]); d->_s[3] = float32_lt(d->_s[3], s->_s[3], &env->sse_status) ? (d->_s[3]) : (s->_s[3]);}void helper_minss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_lt(d->_s[0], s->_s[0], &env->sse_status) ? (d->_s[0]) : (s->_s[0]);}void helper_minpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_lt(d->_d[0], s->_d[0], &env->sse_status) ? (d->_d[0]) : (s->_d[0]); d->_d[1] = float64_lt(d->_d[1], s->_d[1], &env->sse_status) ? (d->_d[1]) : (s->_d[1]);}void helper_minsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_lt(d->_d[0], s->_d[0], &env->sse_status) ? (d->_d[0]) : (s->_d[0]);}
28235 void helper_maxps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_lt(s->_s[0], d->_s[0], &env->sse_status) ? (d->_s[0]) : (s->_s[0]); d->_s[1] = float32_lt(s->_s[1], d->_s[1], &env->sse_status) ? (d->_s[1]) : (s->_s[1]); d->_s[2] = float32_lt(s->_s[2], d->_s[2], &env->sse_status) ? (d->_s[2]) : (s->_s[2]); d->_s[3] = float32_lt(s->_s[3], d->_s[3], &env->sse_status) ? (d->_s[3]) : (s->_s[3]);}void helper_maxss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_lt(s->_s[0], d->_s[0], &env->sse_status) ? (d->_s[0]) : (s->_s[0]);}void helper_maxpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_lt(s->_d[0], d->_d[0], &env->sse_status) ? (d->_d[0]) : (s->_d[0]); d->_d[1] = float64_lt(s->_d[1], d->_d[1], &env->sse_status) ? (d->_d[1]) : (s->_d[1]);}void helper_maxsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_lt(s->_d[0], d->_d[0], &env->sse_status) ? (d->_d[0]) : (s->_d[0]);}
28236 void helper_sqrtps (XMMReg *d, XMMReg *s){ d->_s[0] = float32_sqrt(s->_s[0], &env->sse_status); d->_s[1] = float32_sqrt(s->_s[1], &env->sse_status); d->_s[2] = float32_sqrt(s->_s[2], &env->sse_status); d->_s[3] = float32_sqrt(s->_s[3], &env->sse_status);}void helper_sqrtss (XMMReg *d, XMMReg *s){ d->_s[0] = float32_sqrt(s->_s[0], &env->sse_status);}void helper_sqrtpd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_sqrt(s->_d[0], &env->sse_status); d->_d[1] = float64_sqrt(s->_d[1], &env->sse_status);}void helper_sqrtsd (XMMReg *d, XMMReg *s){ d->_d[0] = float64_sqrt(s->_d[0], &env->sse_status);}
28240 void helper_cvtps2pd(XMMReg *d, XMMReg *s)
28245 d->_d[0] = float32_to_float64(s0, &env->sse_status);
28246 d->_d[1] = float32_to_float64(s1, &env->sse_status);
28249 void helper_cvtpd2ps(XMMReg *d, XMMReg *s)
28251 d->_s[0] = float64_to_float32(s->_d[0], &env->sse_status);
28252 d->_s[1] = float64_to_float32(s->_d[1], &env->sse_status);
28256 void helper_cvtss2sd(XMMReg *d, XMMReg *s)
28258 d->_d[0] = float32_to_float64(s->_s[0], &env->sse_status);
28261 void helper_cvtsd2ss(XMMReg *d, XMMReg *s)
28263 d->_s[0] = float64_to_float32(s->_d[0], &env->sse_status);
28267 void helper_cvtdq2ps(XMMReg *d, XMMReg *s)
28269 d->_s[0] = int32_to_float32(s->_l[0], &env->sse_status);
28270 d->_s[1] = int32_to_float32(s->_l[1], &env->sse_status);
28271 d->_s[2] = int32_to_float32(s->_l[2], &env->sse_status);
28272 d->_s[3] = int32_to_float32(s->_l[3], &env->sse_status);
28275 void helper_cvtdq2pd(XMMReg *d, XMMReg *s)
28278 l0 = (int32_t)s->_l[0];
28279 l1 = (int32_t)s->_l[1];
28280 d->_d[0] = int32_to_float64(l0, &env->sse_status);
28281 d->_d[1] = int32_to_float64(l1, &env->sse_status);
28284 void helper_cvtpi2ps(XMMReg *d, MMXReg *s)
28286 d->_s[0] = int32_to_float32(s->_l[0], &env->sse_status);
28287 d->_s[1] = int32_to_float32(s->_l[1], &env->sse_status);
28290 void helper_cvtpi2pd(XMMReg *d, MMXReg *s)
28292 d->_d[0] = int32_to_float64(s->_l[0], &env->sse_status);
28293 d->_d[1] = int32_to_float64(s->_l[1], &env->sse_status);
28296 void helper_cvtsi2ss(XMMReg *d, uint32_t val)
28298 d->_s[0] = int32_to_float32(val, &env->sse_status);
28301 void helper_cvtsi2sd(XMMReg *d, uint32_t val)
28303 d->_d[0] = int32_to_float64(val, &env->sse_status);
28305 # 685 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28306 void helper_cvtps2dq(XMMReg *d, XMMReg *s)
28308 d->_l[0] = float32_to_int32(s->_s[0], &env->sse_status);
28309 d->_l[1] = float32_to_int32(s->_s[1], &env->sse_status);
28310 d->_l[2] = float32_to_int32(s->_s[2], &env->sse_status);
28311 d->_l[3] = float32_to_int32(s->_s[3], &env->sse_status);
28314 void helper_cvtpd2dq(XMMReg *d, XMMReg *s)
28316 d->_l[0] = float64_to_int32(s->_d[0], &env->sse_status);
28317 d->_l[1] = float64_to_int32(s->_d[1], &env->sse_status);
28321 void helper_cvtps2pi(MMXReg *d, XMMReg *s)
28323 d->_l[0] = float32_to_int32(s->_s[0], &env->sse_status);
28324 d->_l[1] = float32_to_int32(s->_s[1], &env->sse_status);
28327 void helper_cvtpd2pi(MMXReg *d, XMMReg *s)
28329 d->_l[0] = float64_to_int32(s->_d[0], &env->sse_status);
28330 d->_l[1] = float64_to_int32(s->_d[1], &env->sse_status);
28333 int32_t helper_cvtss2si(XMMReg *s)
28335 return float32_to_int32(s->_s[0], &env->sse_status);
28338 int32_t helper_cvtsd2si(XMMReg *s)
28340 return float64_to_int32(s->_d[0], &env->sse_status);
28342 # 735 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28343 void helper_cvttps2dq(XMMReg *d, XMMReg *s)
28345 d->_l[0] = float32_to_int32_round_to_zero(s->_s[0], &env->sse_status);
28346 d->_l[1] = float32_to_int32_round_to_zero(s->_s[1], &env->sse_status);
28347 d->_l[2] = float32_to_int32_round_to_zero(s->_s[2], &env->sse_status);
28348 d->_l[3] = float32_to_int32_round_to_zero(s->_s[3], &env->sse_status);
28351 void helper_cvttpd2dq(XMMReg *d, XMMReg *s)
28353 d->_l[0] = float64_to_int32_round_to_zero(s->_d[0], &env->sse_status);
28354 d->_l[1] = float64_to_int32_round_to_zero(s->_d[1], &env->sse_status);
28358 void helper_cvttps2pi(MMXReg *d, XMMReg *s)
28360 d->_l[0] = float32_to_int32_round_to_zero(s->_s[0], &env->sse_status);
28361 d->_l[1] = float32_to_int32_round_to_zero(s->_s[1], &env->sse_status);
28364 void helper_cvttpd2pi(MMXReg *d, XMMReg *s)
28366 d->_l[0] = float64_to_int32_round_to_zero(s->_d[0], &env->sse_status);
28367 d->_l[1] = float64_to_int32_round_to_zero(s->_d[1], &env->sse_status);
28370 int32_t helper_cvttss2si(XMMReg *s)
28372 return float32_to_int32_round_to_zero(s->_s[0], &env->sse_status);
28375 int32_t helper_cvttsd2si(XMMReg *s)
28377 return float64_to_int32_round_to_zero(s->_d[0], &env->sse_status);
28379 # 784 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28380 void helper_rsqrtps(XMMReg *d, XMMReg *s)
28382 d->_s[0] = float32_div((0x3f800000),
28383 float32_sqrt(s->_s[0], &env->sse_status),
28385 d->_s[1] = float32_div((0x3f800000),
28386 float32_sqrt(s->_s[1], &env->sse_status),
28388 d->_s[2] = float32_div((0x3f800000),
28389 float32_sqrt(s->_s[2], &env->sse_status),
28391 d->_s[3] = float32_div((0x3f800000),
28392 float32_sqrt(s->_s[3], &env->sse_status),
28396 void helper_rsqrtss(XMMReg *d, XMMReg *s)
28398 d->_s[0] = float32_div((0x3f800000),
28399 float32_sqrt(s->_s[0], &env->sse_status),
28403 void helper_rcpps(XMMReg *d, XMMReg *s)
28405 d->_s[0] = float32_div((0x3f800000), s->_s[0], &env->sse_status);
28406 d->_s[1] = float32_div((0x3f800000), s->_s[1], &env->sse_status);
28407 d->_s[2] = float32_div((0x3f800000), s->_s[2], &env->sse_status);
28408 d->_s[3] = float32_div((0x3f800000), s->_s[3], &env->sse_status);
28411 void helper_rcpss(XMMReg *d, XMMReg *s)
28413 d->_s[0] = float32_div((0x3f800000), s->_s[0], &env->sse_status);
28416 static __attribute__ (( always_inline )) __inline__ uint64_t helper_extrq(uint64_t src, int shift, int len)
28423 mask = (1ULL << len) - 1;
28425 return (src >> shift) & mask;
28428 void helper_extrq_r(XMMReg *d, XMMReg *s)
28430 d->_q[0] = helper_extrq(d->_q[0], s->_b[1], s->_b[0]);
28433 void helper_extrq_i(XMMReg *d, int index, int length)
28435 d->_q[0] = helper_extrq(d->_q[0], index, length);
28438 static __attribute__ (( always_inline )) __inline__ uint64_t helper_insertq(uint64_t src, int shift, int len)
28445 mask = (1ULL << len) - 1;
28447 return (src & ~(mask << shift)) | ((src & mask) << shift);
28450 void helper_insertq_r(XMMReg *d, XMMReg *s)
28452 d->_q[0] = helper_insertq(s->_q[0], s->_b[9], s->_b[8]);
28455 void helper_insertq_i(XMMReg *d, int index, int length)
28457 d->_q[0] = helper_insertq(d->_q[0], index, length);
28460 void helper_haddps(XMMReg *d, XMMReg *s)
28463 r._s[0] = float32_add(d->_s[0], d->_s[1], &env->sse_status);
28464 r._s[1] = float32_add(d->_s[2], d->_s[3], &env->sse_status);
28465 r._s[2] = float32_add(s->_s[0], s->_s[1], &env->sse_status);
28466 r._s[3] = float32_add(s->_s[2], s->_s[3], &env->sse_status);
28470 void helper_haddpd(XMMReg *d, XMMReg *s)
28473 r._d[0] = float64_add(d->_d[0], d->_d[1], &env->sse_status);
28474 r._d[1] = float64_add(s->_d[0], s->_d[1], &env->sse_status);
28478 void helper_hsubps(XMMReg *d, XMMReg *s)
28481 r._s[0] = float32_sub(d->_s[0], d->_s[1], &env->sse_status);
28482 r._s[1] = float32_sub(d->_s[2], d->_s[3], &env->sse_status);
28483 r._s[2] = float32_sub(s->_s[0], s->_s[1], &env->sse_status);
28484 r._s[3] = float32_sub(s->_s[2], s->_s[3], &env->sse_status);
28488 void helper_hsubpd(XMMReg *d, XMMReg *s)
28491 r._d[0] = float64_sub(d->_d[0], d->_d[1], &env->sse_status);
28492 r._d[1] = float64_sub(s->_d[0], s->_d[1], &env->sse_status);
28496 void helper_addsubps(XMMReg *d, XMMReg *s)
28498 d->_s[0] = float32_sub(d->_s[0], s->_s[0], &env->sse_status);
28499 d->_s[1] = float32_add(d->_s[1], s->_s[1], &env->sse_status);
28500 d->_s[2] = float32_sub(d->_s[2], s->_s[2], &env->sse_status);
28501 d->_s[3] = float32_add(d->_s[3], s->_s[3], &env->sse_status);
28504 void helper_addsubpd(XMMReg *d, XMMReg *s)
28506 d->_d[0] = float64_sub(d->_d[0], s->_d[0], &env->sse_status);
28507 d->_d[1] = float64_add(d->_d[1], s->_d[1], &env->sse_status);
28509 # 948 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28510 void helper_cmpeqps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_eq_quiet(d->_s[0], s->_s[0], &env->sse_status) ? -1 : 0; d->_l[1] = float32_eq_quiet(d->_s[1], s->_s[1], &env->sse_status) ? -1 : 0; d->_l[2] = float32_eq_quiet(d->_s[2], s->_s[2], &env->sse_status) ? -1 : 0; d->_l[3] = float32_eq_quiet(d->_s[3], s->_s[3], &env->sse_status) ? -1 : 0;}void helper_cmpeqss (XMMReg *d, XMMReg *s){ d->_l[0] = float32_eq_quiet(d->_s[0], s->_s[0], &env->sse_status) ? -1 : 0;}void helper_cmpeqpd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_eq_quiet(d->_d[0], s->_d[0], &env->sse_status) ? -1 : 0; d->_q[1] = float64_eq_quiet(d->_d[1], s->_d[1], &env->sse_status) ? -1 : 0;}void helper_cmpeqsd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_eq_quiet(d->_d[0], s->_d[0], &env->sse_status) ? -1 : 0;}
28511 void helper_cmpltps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_lt(d->_s[0], s->_s[0], &env->sse_status) ? -1 : 0; d->_l[1] = float32_lt(d->_s[1], s->_s[1], &env->sse_status) ? -1 : 0; d->_l[2] = float32_lt(d->_s[2], s->_s[2], &env->sse_status) ? -1 : 0; d->_l[3] = float32_lt(d->_s[3], s->_s[3], &env->sse_status) ? -1 : 0;}void helper_cmpltss (XMMReg *d, XMMReg *s){ d->_l[0] = float32_lt(d->_s[0], s->_s[0], &env->sse_status) ? -1 : 0;}void helper_cmpltpd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_lt(d->_d[0], s->_d[0], &env->sse_status) ? -1 : 0; d->_q[1] = float64_lt(d->_d[1], s->_d[1], &env->sse_status) ? -1 : 0;}void helper_cmpltsd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_lt(d->_d[0], s->_d[0], &env->sse_status) ? -1 : 0;}
28512 void helper_cmpleps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_le(d->_s[0], s->_s[0], &env->sse_status) ? -1 : 0; d->_l[1] = float32_le(d->_s[1], s->_s[1], &env->sse_status) ? -1 : 0; d->_l[2] = float32_le(d->_s[2], s->_s[2], &env->sse_status) ? -1 : 0; d->_l[3] = float32_le(d->_s[3], s->_s[3], &env->sse_status) ? -1 : 0;}void helper_cmpless (XMMReg *d, XMMReg *s){ d->_l[0] = float32_le(d->_s[0], s->_s[0], &env->sse_status) ? -1 : 0;}void helper_cmplepd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_le(d->_d[0], s->_d[0], &env->sse_status) ? -1 : 0; d->_q[1] = float64_le(d->_d[1], s->_d[1], &env->sse_status) ? -1 : 0;}void helper_cmplesd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_le(d->_d[0], s->_d[0], &env->sse_status) ? -1 : 0;}
28513 void helper_cmpunordps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_unordered_quiet(d->_s[0], s->_s[0], &env->sse_status) ? - 1 : 0; d->_l[1] = float32_unordered_quiet(d->_s[1], s->_s[1], &env->sse_status) ? - 1 : 0; d->_l[2] = float32_unordered_quiet(d->_s[2], s->_s[2], &env->sse_status) ? - 1 : 0; d->_l[3] = float32_unordered_quiet(d->_s[3], s->_s[3], &env->sse_status) ? - 1 : 0;}void helper_cmpunordss (XMMReg *d, XMMReg *s){ d->_l[0] = float32_unordered_quiet(d->_s[0], s->_s[0], &env->sse_status) ? - 1 : 0;}void helper_cmpunordpd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_unordered_quiet(d->_d[0], s->_d[0], &env->sse_status) ? - 1 : 0; d->_q[1] = float64_unordered_quiet(d->_d[1], s->_d[1], &env->sse_status) ? - 1 : 0;}void helper_cmpunordsd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_unordered_quiet(d->_d[0], s->_d[0], &env->sse_status) ? - 1 : 0;}
28514 void helper_cmpneqps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_eq_quiet(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1; d->_l[1] = float32_eq_quiet(d->_s[1], s->_s[1], &env->sse_status) ? 0 : -1; d->_l[2] = float32_eq_quiet(d->_s[2], s->_s[2], &env->sse_status) ? 0 : -1; d->_l[3] = float32_eq_quiet(d->_s[3], s->_s[3], &env->sse_status) ? 0 : -1;}void helper_cmpneqss (XMMReg *d, XMMReg *s){ d->_l[0] = float32_eq_quiet(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1;}void helper_cmpneqpd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_eq_quiet(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1; d->_q[1] = float64_eq_quiet(d->_d[1], s->_d[1], &env->sse_status) ? 0 : -1;}void helper_cmpneqsd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_eq_quiet(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1;}
28515 void helper_cmpnltps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_lt(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1; d->_l[1] = float32_lt(d->_s[1], s->_s[1], &env->sse_status) ? 0 : -1; d->_l[2] = float32_lt(d->_s[2], s->_s[2], &env->sse_status) ? 0 : -1; d->_l[3] = float32_lt(d->_s[3], s->_s[3], &env->sse_status) ? 0 : -1;}void helper_cmpnltss (XMMReg *d, XMMReg *s){ d->_l[0] = float32_lt(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1;}void helper_cmpnltpd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_lt(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1; d->_q[1] = float64_lt(d->_d[1], s->_d[1], &env->sse_status) ? 0 : -1;}void helper_cmpnltsd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_lt(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1;}
28516 void helper_cmpnleps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_le(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1; d->_l[1] = float32_le(d->_s[1], s->_s[1], &env->sse_status) ? 0 : -1; d->_l[2] = float32_le(d->_s[2], s->_s[2], &env->sse_status) ? 0 : -1; d->_l[3] = float32_le(d->_s[3], s->_s[3], &env->sse_status) ? 0 : -1;}void helper_cmpnless (XMMReg *d, XMMReg *s){ d->_l[0] = float32_le(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1;}void helper_cmpnlepd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_le(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1; d->_q[1] = float64_le(d->_d[1], s->_d[1], &env->sse_status) ? 0 : -1;}void helper_cmpnlesd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_le(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1;}
28517 void helper_cmpordps (XMMReg *d, XMMReg *s){ d->_l[0] = float32_unordered_quiet(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1; d->_l[1] = float32_unordered_quiet(d->_s[1], s->_s[1], &env->sse_status) ? 0 : -1; d->_l[2] = float32_unordered_quiet(d->_s[2], s->_s[2], &env->sse_status) ? 0 : -1; d->_l[3] = float32_unordered_quiet(d->_s[3], s->_s[3], &env->sse_status) ? 0 : -1;}void helper_cmpordss (XMMReg *d, XMMReg *s){ d->_l[0] = float32_unordered_quiet(d->_s[0], s->_s[0], &env->sse_status) ? 0 : -1;}void helper_cmpordpd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_unordered_quiet(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1; d->_q[1] = float64_unordered_quiet(d->_d[1], s->_d[1], &env->sse_status) ? 0 : -1;}void helper_cmpordsd (XMMReg *d, XMMReg *s){ d->_q[0] = float64_unordered_quiet(d->_d[0], s->_d[0], &env->sse_status) ? 0 : -1;}
28519 static const int comis_eflags[4] = {0x0001, 0x0040, 0, 0x0040 | 0x0004 | 0x0001};
28521 void helper_ucomiss(XMMReg *d, XMMReg *s)
28528 ret = float32_compare_quiet(s0, s1, &env->sse_status);
28529 (env->cc_src) = comis_eflags[ret + 1];
28532 void helper_comiss(XMMReg *d, XMMReg *s)
28539 ret = float32_compare(s0, s1, &env->sse_status);
28540 (env->cc_src) = comis_eflags[ret + 1];
28543 void helper_ucomisd(XMMReg *d, XMMReg *s)
28550 ret = float64_compare_quiet(d0, d1, &env->sse_status);
28551 (env->cc_src) = comis_eflags[ret + 1];
28554 void helper_comisd(XMMReg *d, XMMReg *s)
28561 ret = float64_compare(d0, d1, &env->sse_status);
28562 (env->cc_src) = comis_eflags[ret + 1];
28565 uint32_t helper_movmskps(XMMReg *s)
28567 int b0, b1, b2, b3;
28568 b0 = s->_l[0] >> 31;
28569 b1 = s->_l[1] >> 31;
28570 b2 = s->_l[2] >> 31;
28571 b3 = s->_l[3] >> 31;
28572 return b0 | (b1 << 1) | (b2 << 2) | (b3 << 3);
28575 uint32_t helper_movmskpd(XMMReg *s)
28578 b0 = s->_l[1] >> 31;
28579 b1 = s->_l[3] >> 31;
28580 return b0 | (b1 << 1);
28585 uint32_t helper_pmovmskb_xmm(XMMReg *s)
28589 val |= (s->_b[0] >> 7);
28590 val |= (s->_b[1] >> 6) & 0x02;
28591 val |= (s->_b[2] >> 5) & 0x04;
28592 val |= (s->_b[3] >> 4) & 0x08;
28593 val |= (s->_b[4] >> 3) & 0x10;
28594 val |= (s->_b[5] >> 2) & 0x20;
28595 val |= (s->_b[6] >> 1) & 0x40;
28596 val |= (s->_b[7]) & 0x80;
28598 val |= (s->_b[8] << 1) & 0x0100;
28599 val |= (s->_b[9] << 2) & 0x0200;
28600 val |= (s->_b[10] << 3) & 0x0400;
28601 val |= (s->_b[11] << 4) & 0x0800;
28602 val |= (s->_b[12] << 5) & 0x1000;
28603 val |= (s->_b[13] << 6) & 0x2000;
28604 val |= (s->_b[14] << 7) & 0x4000;
28605 val |= (s->_b[15] << 8) & 0x8000;
28610 void helper_packsswb_xmm (XMMReg *d, XMMReg *s)
28614 r._b[0] = satsb((int16_t)d->_w[0]);
28615 r._b[1] = satsb((int16_t)d->_w[1]);
28616 r._b[2] = satsb((int16_t)d->_w[2]);
28617 r._b[3] = satsb((int16_t)d->_w[3]);
28619 r._b[4] = satsb((int16_t)d->_w[4]);
28620 r._b[5] = satsb((int16_t)d->_w[5]);
28621 r._b[6] = satsb((int16_t)d->_w[6]);
28622 r._b[7] = satsb((int16_t)d->_w[7]);
28624 r._b[(4 << 1) + 0] = satsb((int16_t)s->_w[0]);
28625 r._b[(4 << 1) + 1] = satsb((int16_t)s->_w[1]);
28626 r._b[(4 << 1) + 2] = satsb((int16_t)s->_w[2]);
28627 r._b[(4 << 1) + 3] = satsb((int16_t)s->_w[3]);
28629 r._b[12] = satsb((int16_t)s->_w[4]);
28630 r._b[13] = satsb((int16_t)s->_w[5]);
28631 r._b[14] = satsb((int16_t)s->_w[6]);
28632 r._b[15] = satsb((int16_t)s->_w[7]);
28637 void helper_packuswb_xmm (XMMReg *d, XMMReg *s)
28641 r._b[0] = satub((int16_t)d->_w[0]);
28642 r._b[1] = satub((int16_t)d->_w[1]);
28643 r._b[2] = satub((int16_t)d->_w[2]);
28644 r._b[3] = satub((int16_t)d->_w[3]);
28646 r._b[4] = satub((int16_t)d->_w[4]);
28647 r._b[5] = satub((int16_t)d->_w[5]);
28648 r._b[6] = satub((int16_t)d->_w[6]);
28649 r._b[7] = satub((int16_t)d->_w[7]);
28651 r._b[(4 << 1) + 0] = satub((int16_t)s->_w[0]);
28652 r._b[(4 << 1) + 1] = satub((int16_t)s->_w[1]);
28653 r._b[(4 << 1) + 2] = satub((int16_t)s->_w[2]);
28654 r._b[(4 << 1) + 3] = satub((int16_t)s->_w[3]);
28656 r._b[12] = satub((int16_t)s->_w[4]);
28657 r._b[13] = satub((int16_t)s->_w[5]);
28658 r._b[14] = satub((int16_t)s->_w[6]);
28659 r._b[15] = satub((int16_t)s->_w[7]);
28664 void helper_packssdw_xmm (XMMReg *d, XMMReg *s)
28668 r._w[0] = satsw(d->_l[0]);
28669 r._w[1] = satsw(d->_l[1]);
28671 r._w[2] = satsw(d->_l[2]);
28672 r._w[3] = satsw(d->_l[3]);
28674 r._w[(2 << 1) + 0] = satsw(s->_l[0]);
28675 r._w[(2 << 1) + 1] = satsw(s->_l[1]);
28677 r._w[6] = satsw(s->_l[2]);
28678 r._w[7] = satsw(s->_l[3]);
28682 # 1189 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28683 void helper_punpcklbw_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._b[0] = d->_b[(0 << (1 + 2)) + 0]; r._b[1] = s->_b[(0 << (1 + 2)) + 0]; r._b[2] = d->_b[(0 << (1 + 2)) + 1]; r._b[3] = s->_b[(0 << (1 + 2)) + 1]; r._b[4] = d->_b[(0 << (1 + 2)) + 2]; r._b[5] = s->_b[(0 << (1 + 2)) + 2]; r._b[6] = d->_b[(0 << (1 + 2)) + 3]; r._b[7] = s->_b[(0 << (1 + 2)) + 3]; r._b[8] = d->_b[(0 << (1 + 2)) + 4]; r._b[9] = s->_b[(0 << (1 + 2)) + 4]; r._b[10] = d->_b[(0 << (1 + 2)) + 5]; r._b[11] = s->_b[(0 << (1 + 2)) + 5]; r._b[12] = d->_b[(0 << (1 + 2)) + 6]; r._b[13] = s->_b[(0 << (1 + 2)) + 6]; r._b[14] = d->_b[(0 << (1 + 2)) + 7]; r._b[15] = s->_b[(0 << (1 + 2)) + 7]; *d = r; } void helper_punpcklwd_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._w[0] = d->_w[(0 << (1 + 1)) + 0]; r._w[1] = s->_w[(0 << (1 + 1)) + 0]; r._w[2] = d->_w[(0 << (1 + 1)) + 1]; r._w[3] = s->_w[(0 << (1 + 1)) + 1]; r._w[4] = d->_w[(0 << (1 + 1)) + 2]; r._w[5] = s->_w[(0 << (1 + 1)) + 2]; r._w[6] = d->_w[(0 << (1 + 1)) + 3]; r._w[7] = s->_w[(0 << (1 + 1)) + 3]; *d = r; } void helper_punpckldq_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._l[0] = d->_l[(0 << 1) + 0]; r._l[1] = s->_l[(0 << 1) + 0]; r._l[2] = d->_l[(0 << 1) + 1]; r._l[3] = s->_l[(0 << 1) + 1]; *d = r; } void helper_punpcklqdq_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._q[0] = d->_q[0]; r._q[1] = s->_q[0]; *d = r; }
28684 void helper_punpckhbw_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._b[0] = d->_b[(1 << (1 + 2)) + 0]; r._b[1] = s->_b[(1 << (1 + 2)) + 0]; r._b[2] = d->_b[(1 << (1 + 2)) + 1]; r._b[3] = s->_b[(1 << (1 + 2)) + 1]; r._b[4] = d->_b[(1 << (1 + 2)) + 2]; r._b[5] = s->_b[(1 << (1 + 2)) + 2]; r._b[6] = d->_b[(1 << (1 + 2)) + 3]; r._b[7] = s->_b[(1 << (1 + 2)) + 3]; r._b[8] = d->_b[(1 << (1 + 2)) + 4]; r._b[9] = s->_b[(1 << (1 + 2)) + 4]; r._b[10] = d->_b[(1 << (1 + 2)) + 5]; r._b[11] = s->_b[(1 << (1 + 2)) + 5]; r._b[12] = d->_b[(1 << (1 + 2)) + 6]; r._b[13] = s->_b[(1 << (1 + 2)) + 6]; r._b[14] = d->_b[(1 << (1 + 2)) + 7]; r._b[15] = s->_b[(1 << (1 + 2)) + 7]; *d = r; } void helper_punpckhwd_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._w[0] = d->_w[(1 << (1 + 1)) + 0]; r._w[1] = s->_w[(1 << (1 + 1)) + 0]; r._w[2] = d->_w[(1 << (1 + 1)) + 1]; r._w[3] = s->_w[(1 << (1 + 1)) + 1]; r._w[4] = d->_w[(1 << (1 + 1)) + 2]; r._w[5] = s->_w[(1 << (1 + 1)) + 2]; r._w[6] = d->_w[(1 << (1 + 1)) + 3]; r._w[7] = s->_w[(1 << (1 + 1)) + 3]; *d = r; } void helper_punpckhdq_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._l[0] = d->_l[(1 << 1) + 0]; r._l[1] = s->_l[(1 << 1) + 0]; r._l[2] = d->_l[(1 << 1) + 1]; r._l[3] = s->_l[(1 << 1) + 1]; *d = r; } void helper_punpckhqdq_xmm (XMMReg *d, XMMReg *s) { XMMReg r; r._q[0] = d->_q[1]; r._q[1] = s->_q[1]; *d = r; }
28685 # 1326 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28686 void helper_pshufb_xmm (XMMReg *d, XMMReg *s)
28691 for (i = 0; i < (8 << 1); i++)
28692 r._b[i] = (s->_b[i] & 0x80) ? 0 : (d->_b[s->_b[i] & ((8 << 1) - 1)]);
28697 void helper_phaddw_xmm (XMMReg *d, XMMReg *s)
28699 d->_w[0] = (int16_t)d->_w[0] + (int16_t)d->_w[1];
28700 d->_w[1] = (int16_t)d->_w[2] + (int16_t)d->_w[3];
28701 d->_w[2] = (int16_t)d->_w[4] + (int16_t)d->_w[5];
28702 d->_w[3] = (int16_t)d->_w[6] + (int16_t)d->_w[7];
28703 d->_w[(2 << 1) + 0] = (int16_t)s->_w[0] + (int16_t)s->_w[1];
28704 d->_w[(2 << 1) + 1] = (int16_t)s->_w[2] + (int16_t)s->_w[3];
28705 d->_w[6] = (int16_t)s->_w[4] + (int16_t)s->_w[5];
28706 d->_w[7] = (int16_t)s->_w[6] + (int16_t)s->_w[7];
28709 void helper_phaddd_xmm (XMMReg *d, XMMReg *s)
28711 d->_l[0] = (int32_t)d->_l[0] + (int32_t)d->_l[1];
28712 d->_l[1] = (int32_t)d->_l[2] + (int32_t)d->_l[3];
28713 d->_l[(1 << 1) + 0] = (int32_t)s->_l[0] + (int32_t)s->_l[1];
28714 d->_l[3] = (int32_t)s->_l[2] + (int32_t)s->_l[3];
28717 void helper_phaddsw_xmm (XMMReg *d, XMMReg *s)
28719 d->_w[0] = satsw((int16_t)d->_w[0] + (int16_t)d->_w[1]);
28720 d->_w[1] = satsw((int16_t)d->_w[2] + (int16_t)d->_w[3]);
28721 d->_w[2] = satsw((int16_t)d->_w[4] + (int16_t)d->_w[5]);
28722 d->_w[3] = satsw((int16_t)d->_w[6] + (int16_t)d->_w[7]);
28723 d->_w[(2 << 1) + 0] = satsw((int16_t)s->_w[0] + (int16_t)s->_w[1]);
28724 d->_w[(2 << 1) + 1] = satsw((int16_t)s->_w[2] + (int16_t)s->_w[3]);
28725 d->_w[6] = satsw((int16_t)s->_w[4] + (int16_t)s->_w[5]);
28726 d->_w[7] = satsw((int16_t)s->_w[6] + (int16_t)s->_w[7]);
28729 void helper_pmaddubsw_xmm (XMMReg *d, XMMReg *s)
28731 d->_w[0] = satsw((int8_t)s->_b[0] * (uint8_t)d->_b[0] +
28732 (int8_t)s->_b[1] * (uint8_t)d->_b[1]);
28733 d->_w[1] = satsw((int8_t)s->_b[2] * (uint8_t)d->_b[2] +
28734 (int8_t)s->_b[3] * (uint8_t)d->_b[3]);
28735 d->_w[2] = satsw((int8_t)s->_b[4] * (uint8_t)d->_b[4] +
28736 (int8_t)s->_b[5] * (uint8_t)d->_b[5]);
28737 d->_w[3] = satsw((int8_t)s->_b[6] * (uint8_t)d->_b[6] +
28738 (int8_t)s->_b[7] * (uint8_t)d->_b[7]);
28740 d->_w[4] = satsw((int8_t)s->_b[8] * (uint8_t)d->_b[8] +
28741 (int8_t)s->_b[9] * (uint8_t)d->_b[9]);
28742 d->_w[5] = satsw((int8_t)s->_b[10] * (uint8_t)d->_b[10] +
28743 (int8_t)s->_b[11] * (uint8_t)d->_b[11]);
28744 d->_w[6] = satsw((int8_t)s->_b[12] * (uint8_t)d->_b[12] +
28745 (int8_t)s->_b[13] * (uint8_t)d->_b[13]);
28746 d->_w[7] = satsw((int8_t)s->_b[14] * (uint8_t)d->_b[14] +
28747 (int8_t)s->_b[15] * (uint8_t)d->_b[15]);
28751 void helper_phsubw_xmm (XMMReg *d, XMMReg *s)
28753 d->_w[0] = (int16_t)d->_w[0] - (int16_t)d->_w[1];
28754 d->_w[1] = (int16_t)d->_w[2] - (int16_t)d->_w[3];
28755 d->_w[2] = (int16_t)d->_w[4] - (int16_t)d->_w[5];
28756 d->_w[3] = (int16_t)d->_w[6] - (int16_t)d->_w[7];
28757 d->_w[(2 << 1) + 0] = (int16_t)s->_w[0] - (int16_t)s->_w[1];
28758 d->_w[(2 << 1) + 1] = (int16_t)s->_w[2] - (int16_t)s->_w[3];
28759 d->_w[6] = (int16_t)s->_w[4] - (int16_t)s->_w[5];
28760 d->_w[7] = (int16_t)s->_w[6] - (int16_t)s->_w[7];
28763 void helper_phsubd_xmm (XMMReg *d, XMMReg *s)
28765 d->_l[0] = (int32_t)d->_l[0] - (int32_t)d->_l[1];
28766 d->_l[1] = (int32_t)d->_l[2] - (int32_t)d->_l[3];
28767 d->_l[(1 << 1) + 0] = (int32_t)s->_l[0] - (int32_t)s->_l[1];
28768 d->_l[3] = (int32_t)s->_l[2] - (int32_t)s->_l[3];
28771 void helper_phsubsw_xmm (XMMReg *d, XMMReg *s)
28773 d->_w[0] = satsw((int16_t)d->_w[0] - (int16_t)d->_w[1]);
28774 d->_w[1] = satsw((int16_t)d->_w[2] - (int16_t)d->_w[3]);
28775 d->_w[2] = satsw((int16_t)d->_w[4] - (int16_t)d->_w[5]);
28776 d->_w[3] = satsw((int16_t)d->_w[6] - (int16_t)d->_w[7]);
28777 d->_w[(2 << 1) + 0] = satsw((int16_t)s->_w[0] - (int16_t)s->_w[1]);
28778 d->_w[(2 << 1) + 1] = satsw((int16_t)s->_w[2] - (int16_t)s->_w[3]);
28779 d->_w[6] = satsw((int16_t)s->_w[4] - (int16_t)s->_w[5]);
28780 d->_w[7] = satsw((int16_t)s->_w[6] - (int16_t)s->_w[7]);
28786 void helper_pabsb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = s->_b[0] > (127) ? -(int8_t ) s->_b[0] : s->_b[0]; d->_b[1] = s->_b[1] > (127) ? -(int8_t ) s->_b[1] : s->_b[1]; d->_b[2] = s->_b[2] > (127) ? -(int8_t ) s->_b[2] : s->_b[2]; d->_b[3] = s->_b[3] > (127) ? -(int8_t ) s->_b[3] : s->_b[3]; d->_b[4] = s->_b[4] > (127) ? -(int8_t ) s->_b[4] : s->_b[4]; d->_b[5] = s->_b[5] > (127) ? -(int8_t ) s->_b[5] : s->_b[5]; d->_b[6] = s->_b[6] > (127) ? -(int8_t ) s->_b[6] : s->_b[6]; d->_b[7] = s->_b[7] > (127) ? -(int8_t ) s->_b[7] : s->_b[7]; d->_b[8] = s->_b[8] > (127) ? -(int8_t ) s->_b[8] : s->_b[8]; d->_b[9] = s->_b[9] > (127) ? -(int8_t ) s->_b[9] : s->_b[9]; d->_b[10] = s->_b[10] > (127) ? -(int8_t ) s->_b[10] : s->_b[10]; d->_b[11] = s->_b[11] > (127) ? -(int8_t ) s->_b[11] : s->_b[11]; d->_b[12] = s->_b[12] > (127) ? -(int8_t ) s->_b[12] : s->_b[12]; d->_b[13] = s->_b[13] > (127) ? -(int8_t ) s->_b[13] : s->_b[13]; d->_b[14] = s->_b[14] > (127) ? -(int8_t ) s->_b[14] : s->_b[14]; d->_b[15] = s->_b[15] > (127) ? -(int8_t ) s->_b[15] : s->_b[15];}
28787 void helper_pabsw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = s->_w[0] > (32767) ? -(int16_t) s->_w[0] : s->_w[0]; d->_w[1] = s->_w[1] > (32767) ? -(int16_t) s->_w[1] : s->_w[1]; d->_w[2] = s->_w[2] > (32767) ? -(int16_t) s->_w[2] : s->_w[2]; d->_w[3] = s->_w[3] > (32767) ? -(int16_t) s->_w[3] : s->_w[3]; d->_w[4] = s->_w[4] > (32767) ? -(int16_t) s->_w[4] : s->_w[4]; d->_w[5] = s->_w[5] > (32767) ? -(int16_t) s->_w[5] : s->_w[5]; d->_w[6] = s->_w[6] > (32767) ? -(int16_t) s->_w[6] : s->_w[6]; d->_w[7] = s->_w[7] > (32767) ? -(int16_t) s->_w[7] : s->_w[7];}
28788 void helper_pabsd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = s->_l[0] > (2147483647) ? -(int32_t) s->_l[0] : s->_l[0]; d->_l[1] = s->_l[1] > (2147483647) ? -(int32_t) s->_l[1] : s->_l[1]; d->_l[2] = s->_l[2] > (2147483647) ? -(int32_t) s->_l[2] : s->_l[2]; d->_l[3] = s->_l[3] > (2147483647) ? -(int32_t) s->_l[3] : s->_l[3];}
28791 void helper_pmulhrsw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = ((int16_t) d->_w[0] * (int16_t) s->_w[0] + 0x4000) >> 15; d->_w[1] = ((int16_t) d->_w[1] * (int16_t) s->_w[1] + 0x4000) >> 15; d->_w[2] = ((int16_t) d->_w[2] * (int16_t) s->_w[2] + 0x4000) >> 15; d->_w[3] = ((int16_t) d->_w[3] * (int16_t) s->_w[3] + 0x4000) >> 15; d->_w[4] = ((int16_t) d->_w[4] * (int16_t) s->_w[4] + 0x4000) >> 15; d->_w[5] = ((int16_t) d->_w[5] * (int16_t) s->_w[5] + 0x4000) >> 15; d->_w[6] = ((int16_t) d->_w[6] * (int16_t) s->_w[6] + 0x4000) >> 15; d->_w[7] = ((int16_t) d->_w[7] * (int16_t) s->_w[7] + 0x4000) >> 15;}
28796 void helper_psignb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = s->_b[0] <= (127) ? s->_b[0] ? d->_b[0] : 0 : -(int8_t ) d->_b[0]; d->_b[1] = s->_b[1] <= (127) ? s->_b[1] ? d->_b[1] : 0 : -(int8_t ) d->_b[1]; d->_b[2] = s->_b[2] <= (127) ? s->_b[2] ? d->_b[2] : 0 : -(int8_t ) d->_b[2]; d->_b[3] = s->_b[3] <= (127) ? s->_b[3] ? d->_b[3] : 0 : -(int8_t ) d->_b[3]; d->_b[4] = s->_b[4] <= (127) ? s->_b[4] ? d->_b[4] : 0 : -(int8_t ) d->_b[4]; d->_b[5] = s->_b[5] <= (127) ? s->_b[5] ? d->_b[5] : 0 : -(int8_t ) d->_b[5]; d->_b[6] = s->_b[6] <= (127) ? s->_b[6] ? d->_b[6] : 0 : -(int8_t ) d->_b[6]; d->_b[7] = s->_b[7] <= (127) ? s->_b[7] ? d->_b[7] : 0 : -(int8_t ) d->_b[7]; d->_b[8] = s->_b[8] <= (127) ? s->_b[8] ? d->_b[8] : 0 : -(int8_t ) d->_b[8]; d->_b[9] = s->_b[9] <= (127) ? s->_b[9] ? d->_b[9] : 0 : -(int8_t ) d->_b[9]; d->_b[10] = s->_b[10] <= (127) ? s->_b[10] ? d->_b[10] : 0 : -(int8_t ) d->_b[10]; d->_b[11] = s->_b[11] <= (127) ? s->_b[11] ? d->_b[11] : 0 : -(int8_t ) d->_b[11]; d->_b[12] = s->_b[12] <= (127) ? s->_b[12] ? d->_b[12] : 0 : -(int8_t ) d->_b[12]; d->_b[13] = s->_b[13] <= (127) ? s->_b[13] ? d->_b[13] : 0 : -(int8_t ) d->_b[13]; d->_b[14] = s->_b[14] <= (127) ? s->_b[14] ? d->_b[14] : 0 : -(int8_t ) d->_b[14]; d->_b[15] = s->_b[15] <= (127) ? s->_b[15] ? d->_b[15] : 0 : -(int8_t ) d->_b[15];}
28797 void helper_psignw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = s->_w[0] <= (32767) ? s->_w[0] ? d->_w[0] : 0 : -(int16_t) d->_w[0]; d->_w[1] = s->_w[1] <= (32767) ? s->_w[1] ? d->_w[1] : 0 : -(int16_t) d->_w[1]; d->_w[2] = s->_w[2] <= (32767) ? s->_w[2] ? d->_w[2] : 0 : -(int16_t) d->_w[2]; d->_w[3] = s->_w[3] <= (32767) ? s->_w[3] ? d->_w[3] : 0 : -(int16_t) d->_w[3]; d->_w[4] = s->_w[4] <= (32767) ? s->_w[4] ? d->_w[4] : 0 : -(int16_t) d->_w[4]; d->_w[5] = s->_w[5] <= (32767) ? s->_w[5] ? d->_w[5] : 0 : -(int16_t) d->_w[5]; d->_w[6] = s->_w[6] <= (32767) ? s->_w[6] ? d->_w[6] : 0 : -(int16_t) d->_w[6]; d->_w[7] = s->_w[7] <= (32767) ? s->_w[7] ? d->_w[7] : 0 : -(int16_t) d->_w[7];}
28798 void helper_psignd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = s->_l[0] <= (2147483647) ? s->_l[0] ? d->_l[0] : 0 : -(int32_t) d->_l[0]; d->_l[1] = s->_l[1] <= (2147483647) ? s->_l[1] ? d->_l[1] : 0 : -(int32_t) d->_l[1]; d->_l[2] = s->_l[2] <= (2147483647) ? s->_l[2] ? d->_l[2] : 0 : -(int32_t) d->_l[2]; d->_l[3] = s->_l[3] <= (2147483647) ? s->_l[3] ? d->_l[3] : 0 : -(int32_t) d->_l[3];}
28800 void helper_palignr_xmm (XMMReg *d, XMMReg *s, int32_t shift)
28805 if (shift >= (16 << 1)) {
28815 r._q[0] = (shift - 0 < 64 && shift - 0 > -64 ? shift - 0 > 0 ? s->_q[0] >> (shift - 0) : (s->_q[0] << -(shift - 0)) : 0) |
28816 (shift - 64 < 64 && shift - 64 > -64 ? shift - 64 > 0 ? s->_q[1] >> (shift - 64) : (s->_q[1] << -(shift - 64)) : 0) |
28817 (shift - 128 < 64 && shift - 128 > -64 ? shift - 128 > 0 ? d->_q[0] >> (shift - 128) : (d->_q[0] << -(shift - 128)) : 0) |
28818 (shift - 192 < 64 && shift - 192 > -64 ? shift - 192 > 0 ? d->_q[1] >> (shift - 192) : (d->_q[1] << -(shift - 192)) : 0);
28819 r._q[1] = (shift + 64 < 64 && shift + 64 > -64 ? shift + 64 > 0 ? s->_q[0] >> (shift + 64) : (s->_q[0] << -(shift + 64)) : 0) |
28820 (shift - 0 < 64 && shift - 0 > -64 ? shift - 0 > 0 ? s->_q[1] >> (shift - 0) : (s->_q[1] << -(shift - 0)) : 0) |
28821 (shift - 64 < 64 && shift - 64 > -64 ? shift - 64 > 0 ? d->_q[0] >> (shift - 64) : (d->_q[0] << -(shift - 64)) : 0) |
28822 (shift - 128 < 64 && shift - 128 > -64 ? shift - 128 > 0 ? d->_q[1] >> (shift - 128) : (d->_q[1] << -(shift - 128)) : 0);
28829 # 1531 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28830 void helper_pblendvb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = (env->xmm_regs[0]._b[0] & 0x80) ? s->_b[0] : d->_b[0]; d->_b[1] = (env->xmm_regs[0]._b[1] & 0x80) ? s->_b[1] : d->_b[1]; if (16 > 2) { d->_b[2] = (env->xmm_regs[0]._b[2] & 0x80) ? s->_b[2] : d->_b[2]; d->_b[3] = (env->xmm_regs[0]._b[3] & 0x80) ? s->_b[3] : d->_b[3]; if (16 > 4) { d->_b[4] = (env->xmm_regs[0]._b[4] & 0x80) ? s->_b[4] : d->_b[4]; d->_b[5] = (env->xmm_regs[0]._b[5] & 0x80) ? s->_b[5] : d->_b[5]; d->_b[6] = (env->xmm_regs[0]._b[6] & 0x80) ? s->_b[6] : d->_b[6]; d->_b[7] = (env->xmm_regs[0]._b[7] & 0x80) ? s->_b[7] : d->_b[7]; if (16 > 8) { d->_b[8] = (env->xmm_regs[0]._b[8] & 0x80) ? s->_b[8] : d->_b[8]; d->_b[9] = (env->xmm_regs[0]._b[9] & 0x80) ? s->_b[9] : d->_b[9]; d->_b[10] = (env->xmm_regs[0]._b[10] & 0x80) ? s->_b[10] : d->_b[10]; d->_b[11] = (env->xmm_regs[0]._b[11] & 0x80) ? s->_b[11] : d->_b[11]; d->_b[12] = (env->xmm_regs[0]._b[12] & 0x80) ? s->_b[12] : d->_b[12]; d->_b[13] = (env->xmm_regs[0]._b[13] & 0x80) ? s->_b[13] : d->_b[13]; d->_b[14] = (env->xmm_regs[0]._b[14] & 0x80) ? s->_b[14] : d->_b[14]; d->_b[15] = (env->xmm_regs[0]._b[15] & 0x80) ? s->_b[15] : d->_b[15]; } } }}
28831 void helper_blendvps_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (env->xmm_regs[0]._l[0] & 0x80000000) ? s->_l[0] : d->_l[0]; d->_l[1] = (env->xmm_regs[0]._l[1] & 0x80000000) ? s->_l[1] : d->_l[1]; if (4 > 2) { d->_l[2] = (env->xmm_regs[0]._l[2] & 0x80000000) ? s->_l[2] : d->_l[2]; d->_l[3] = (env->xmm_regs[0]._l[3] & 0x80000000) ? s->_l[3] : d->_l[3]; if (4 > 4) { d->_l[4] = (env->xmm_regs[0]._l[4] & 0x80000000) ? s->_l[4] : d->_l[4]; d->_l[5] = (env->xmm_regs[0]._l[5] & 0x80000000) ? s->_l[5] : d->_l[5]; d->_l[6] = (env->xmm_regs[0]._l[6] & 0x80000000) ? s->_l[6] : d->_l[6]; d->_l[7] = (env->xmm_regs[0]._l[7] & 0x80000000) ? s->_l[7] : d->_l[7]; if (4 > 8) { d->_l[8] = (env->xmm_regs[0]._l[8] & 0x80000000) ? s->_l[8] : d->_l[8]; d->_l[9] = (env->xmm_regs[0]._l[9] & 0x80000000) ? s->_l[9] : d->_l[9]; d->_l[10] = (env->xmm_regs[0]._l[10] & 0x80000000) ? s->_l[10] : d->_l[10]; d->_l[11] = (env->xmm_regs[0]._l[11] & 0x80000000) ? s->_l[11] : d->_l[11]; d->_l[12] = (env->xmm_regs[0]._l[12] & 0x80000000) ? s->_l[12] : d->_l[12]; d->_l[13] = (env->xmm_regs[0]._l[13] & 0x80000000) ? s->_l[13] : d->_l[13]; d->_l[14] = (env->xmm_regs[0]._l[14] & 0x80000000) ? s->_l[14] : d->_l[14]; d->_l[15] = (env->xmm_regs[0]._l[15] & 0x80000000) ? s->_l[15] : d->_l[15]; } } }}
28832 void helper_blendvpd_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (env->xmm_regs[0]._q[0] & 0x8000000000000000LL) ? s->_q[0] : d->_q[0]; d->_q[1] = (env->xmm_regs[0]._q[1] & 0x8000000000000000LL) ? s->_q[1] : d->_q[1]; if (2 > 2) { d->_q[2] = (env->xmm_regs[0]._q[2] & 0x8000000000000000LL) ? s->_q[2] : d->_q[2]; d->_q[3] = (env->xmm_regs[0]._q[3] & 0x8000000000000000LL) ? s->_q[3] : d->_q[3]; if (2 > 4) { d->_q[4] = (env->xmm_regs[0]._q[4] & 0x8000000000000000LL) ? s->_q[4] : d->_q[4]; d->_q[5] = (env->xmm_regs[0]._q[5] & 0x8000000000000000LL) ? s->_q[5] : d->_q[5]; d->_q[6] = (env->xmm_regs[0]._q[6] & 0x8000000000000000LL) ? s->_q[6] : d->_q[6]; d->_q[7] = (env->xmm_regs[0]._q[7] & 0x8000000000000000LL) ? s->_q[7] : d->_q[7]; if (2 > 8) { d->_q[8] = (env->xmm_regs[0]._q[8] & 0x8000000000000000LL) ? s->_q[8] : d->_q[8]; d->_q[9] = (env->xmm_regs[0]._q[9] & 0x8000000000000000LL) ? s->_q[9] : d->_q[9]; d->_q[10] = (env->xmm_regs[0]._q[10] & 0x8000000000000000LL) ? s->_q[10] : d->_q[10]; d->_q[11] = (env->xmm_regs[0]._q[11] & 0x8000000000000000LL) ? s->_q[11] : d->_q[11]; d->_q[12] = (env->xmm_regs[0]._q[12] & 0x8000000000000000LL) ? s->_q[12] : d->_q[12]; d->_q[13] = (env->xmm_regs[0]._q[13] & 0x8000000000000000LL) ? s->_q[13] : d->_q[13]; d->_q[14] = (env->xmm_regs[0]._q[14] & 0x8000000000000000LL) ? s->_q[14] : d->_q[14]; d->_q[15] = (env->xmm_regs[0]._q[15] & 0x8000000000000000LL) ? s->_q[15] : d->_q[15]; } } }}
28834 void helper_ptest_xmm (XMMReg *d, XMMReg *s)
28836 uint64_t zf = (s->_q[0] & d->_q[0]) | (s->_q[1] & d->_q[1]);
28837 uint64_t cf = (s->_q[0] & ~d->_q[0]) | (s->_q[1] & ~d->_q[1]);
28839 (env->cc_src) = (zf ? 0 : 0x0040) | (cf ? 0 : 0x0001);
28841 # 1560 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28842 void helper_pmovsxbw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (int8_t) s->_b[0]; d->_w[1] = (int8_t) s->_b[1]; if (8 > 2) { d->_w[2] = (int8_t) s->_b[2]; d->_w[3] = (int8_t) s->_b[3]; if (8 > 4) { d->_w[4] = (int8_t) s->_b[4]; d->_w[5] = (int8_t) s->_b[5]; d->_w[6] = (int8_t) s->_b[6]; d->_w[7] = (int8_t) s->_b[7]; } }}
28843 void helper_pmovsxbd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (int8_t) s->_b[0]; d->_l[1] = (int8_t) s->_b[1]; if (4 > 2) { d->_l[2] = (int8_t) s->_b[2]; d->_l[3] = (int8_t) s->_b[3]; if (4 > 4) { d->_l[4] = (int8_t) s->_b[4]; d->_l[5] = (int8_t) s->_b[5]; d->_l[6] = (int8_t) s->_b[6]; d->_l[7] = (int8_t) s->_b[7]; } }}
28844 void helper_pmovsxbq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (int8_t) s->_b[0]; d->_q[1] = (int8_t) s->_b[1]; if (2 > 2) { d->_q[2] = (int8_t) s->_b[2]; d->_q[3] = (int8_t) s->_b[3]; if (2 > 4) { d->_q[4] = (int8_t) s->_b[4]; d->_q[5] = (int8_t) s->_b[5]; d->_q[6] = (int8_t) s->_b[6]; d->_q[7] = (int8_t) s->_b[7]; } }}
28845 void helper_pmovsxwd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (int16_t) s->_w[0]; d->_l[1] = (int16_t) s->_w[1]; if (4 > 2) { d->_l[2] = (int16_t) s->_w[2]; d->_l[3] = (int16_t) s->_w[3]; if (4 > 4) { d->_l[4] = (int16_t) s->_w[4]; d->_l[5] = (int16_t) s->_w[5]; d->_l[6] = (int16_t) s->_w[6]; d->_l[7] = (int16_t) s->_w[7]; } }}
28846 void helper_pmovsxwq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (int16_t) s->_w[0]; d->_q[1] = (int16_t) s->_w[1]; if (2 > 2) { d->_q[2] = (int16_t) s->_w[2]; d->_q[3] = (int16_t) s->_w[3]; if (2 > 4) { d->_q[4] = (int16_t) s->_w[4]; d->_q[5] = (int16_t) s->_w[5]; d->_q[6] = (int16_t) s->_w[6]; d->_q[7] = (int16_t) s->_w[7]; } }}
28847 void helper_pmovsxdq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = (int32_t) s->_l[0]; d->_q[1] = (int32_t) s->_l[1]; if (2 > 2) { d->_q[2] = (int32_t) s->_l[2]; d->_q[3] = (int32_t) s->_l[3]; if (2 > 4) { d->_q[4] = (int32_t) s->_l[4]; d->_q[5] = (int32_t) s->_l[5]; d->_q[6] = (int32_t) s->_l[6]; d->_q[7] = (int32_t) s->_l[7]; } }}
28848 void helper_pmovzxbw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = s->_b[0]; d->_w[1] = s->_b[1]; if (8 > 2) { d->_w[2] = s->_b[2]; d->_w[3] = s->_b[3]; if (8 > 4) { d->_w[4] = s->_b[4]; d->_w[5] = s->_b[5]; d->_w[6] = s->_b[6]; d->_w[7] = s->_b[7]; } }}
28849 void helper_pmovzxbd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = s->_b[0]; d->_l[1] = s->_b[1]; if (4 > 2) { d->_l[2] = s->_b[2]; d->_l[3] = s->_b[3]; if (4 > 4) { d->_l[4] = s->_b[4]; d->_l[5] = s->_b[5]; d->_l[6] = s->_b[6]; d->_l[7] = s->_b[7]; } }}
28850 void helper_pmovzxbq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = s->_b[0]; d->_q[1] = s->_b[1]; if (2 > 2) { d->_q[2] = s->_b[2]; d->_q[3] = s->_b[3]; if (2 > 4) { d->_q[4] = s->_b[4]; d->_q[5] = s->_b[5]; d->_q[6] = s->_b[6]; d->_q[7] = s->_b[7]; } }}
28851 void helper_pmovzxwd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = s->_w[0]; d->_l[1] = s->_w[1]; if (4 > 2) { d->_l[2] = s->_w[2]; d->_l[3] = s->_w[3]; if (4 > 4) { d->_l[4] = s->_w[4]; d->_l[5] = s->_w[5]; d->_l[6] = s->_w[6]; d->_l[7] = s->_w[7]; } }}
28852 void helper_pmovzxwq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = s->_w[0]; d->_q[1] = s->_w[1]; if (2 > 2) { d->_q[2] = s->_w[2]; d->_q[3] = s->_w[3]; if (2 > 4) { d->_q[4] = s->_w[4]; d->_q[5] = s->_w[5]; d->_q[6] = s->_w[6]; d->_q[7] = s->_w[7]; } }}
28853 void helper_pmovzxdq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = s->_l[0]; d->_q[1] = s->_l[1]; if (2 > 2) { d->_q[2] = s->_l[2]; d->_q[3] = s->_l[3]; if (2 > 4) { d->_q[4] = s->_l[4]; d->_q[5] = s->_l[5]; d->_q[6] = s->_l[6]; d->_q[7] = s->_l[7]; } }}
28855 void helper_pmuldq_xmm (XMMReg *d, XMMReg *s)
28857 d->_q[0] = (int64_t) (int32_t) d->_l[0] * (int32_t) s->_l[0];
28858 d->_q[1] = (int64_t) (int32_t) d->_l[2] * (int32_t) s->_l[2];
28862 void helper_pcmpeqq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = d->_q[0] == s->_q[0] ? -1 : 0; d->_q[1] = d->_q[1] == s->_q[1] ? -1 : 0;}
28864 void helper_packusdw_xmm (XMMReg *d, XMMReg *s)
28866 d->_w[0] = satuw((int32_t) d->_l[0]);
28867 d->_w[1] = satuw((int32_t) d->_l[1]);
28868 d->_w[2] = satuw((int32_t) d->_l[2]);
28869 d->_w[3] = satuw((int32_t) d->_l[3]);
28870 d->_w[4] = satuw((int32_t) s->_l[0]);
28871 d->_w[5] = satuw((int32_t) s->_l[1]);
28872 d->_w[6] = satuw((int32_t) s->_l[2]);
28873 d->_w[7] = satuw((int32_t) s->_l[3]);
28880 void helper_pminsb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((((int8_t) d->_b[0]) < ((int8_t) s->_b[0])) ? ((int8_t) d->_b[0]) : ((int8_t) s->_b[0])); d->_b[1] = ((((int8_t) d->_b[1]) < ((int8_t) s->_b[1])) ? ((int8_t) d->_b[1]) : ((int8_t) s->_b[1])); d->_b[2] = ((((int8_t) d->_b[2]) < ((int8_t) s->_b[2])) ? ((int8_t) d->_b[2]) : ((int8_t) s->_b[2])); d->_b[3] = ((((int8_t) d->_b[3]) < ((int8_t) s->_b[3])) ? ((int8_t) d->_b[3]) : ((int8_t) s->_b[3])); d->_b[4] = ((((int8_t) d->_b[4]) < ((int8_t) s->_b[4])) ? ((int8_t) d->_b[4]) : ((int8_t) s->_b[4])); d->_b[5] = ((((int8_t) d->_b[5]) < ((int8_t) s->_b[5])) ? ((int8_t) d->_b[5]) : ((int8_t) s->_b[5])); d->_b[6] = ((((int8_t) d->_b[6]) < ((int8_t) s->_b[6])) ? ((int8_t) d->_b[6]) : ((int8_t) s->_b[6])); d->_b[7] = ((((int8_t) d->_b[7]) < ((int8_t) s->_b[7])) ? ((int8_t) d->_b[7]) : ((int8_t) s->_b[7])); d->_b[8] = ((((int8_t) d->_b[8]) < ((int8_t) s->_b[8])) ? ((int8_t) d->_b[8]) : ((int8_t) s->_b[8])); d->_b[9] = ((((int8_t) d->_b[9]) < ((int8_t) s->_b[9])) ? ((int8_t) d->_b[9]) : ((int8_t) s->_b[9])); d->_b[10] = ((((int8_t) d->_b[10]) < ((int8_t) s->_b[10])) ? ((int8_t) d->_b[10]) : ((int8_t) s->_b[10])); d->_b[11] = ((((int8_t) d->_b[11]) < ((int8_t) s->_b[11])) ? ((int8_t) d->_b[11]) : ((int8_t) s->_b[11])); d->_b[12] = ((((int8_t) d->_b[12]) < ((int8_t) s->_b[12])) ? ((int8_t) d->_b[12]) : ((int8_t) s->_b[12])); d->_b[13] = ((((int8_t) d->_b[13]) < ((int8_t) s->_b[13])) ? ((int8_t) d->_b[13]) : ((int8_t) s->_b[13])); d->_b[14] = ((((int8_t) d->_b[14]) < ((int8_t) s->_b[14])) ? ((int8_t) d->_b[14]) : ((int8_t) s->_b[14])); d->_b[15] = ((((int8_t) d->_b[15]) < ((int8_t) s->_b[15])) ? ((int8_t) d->_b[15]) : ((int8_t) s->_b[15]));}
28881 void helper_pminsd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = ((((int32_t) d->_l[0]) < ((int32_t) s->_l[0])) ? ((int32_t) d->_l[0]) : ((int32_t) s->_l[0])); d->_l[1] = ((((int32_t) d->_l[1]) < ((int32_t) s->_l[1])) ? ((int32_t) d->_l[1]) : ((int32_t) s->_l[1])); d->_l[2] = ((((int32_t) d->_l[2]) < ((int32_t) s->_l[2])) ? ((int32_t) d->_l[2]) : ((int32_t) s->_l[2])); d->_l[3] = ((((int32_t) d->_l[3]) < ((int32_t) s->_l[3])) ? ((int32_t) d->_l[3]) : ((int32_t) s->_l[3]));}
28882 void helper_pminuw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (((d->_w[0]) < (s->_w[0])) ? (d->_w[0]) : (s->_w[0])); d->_w[1] = (((d->_w[1]) < (s->_w[1])) ? (d->_w[1]) : (s->_w[1])); d->_w[2] = (((d->_w[2]) < (s->_w[2])) ? (d->_w[2]) : (s->_w[2])); d->_w[3] = (((d->_w[3]) < (s->_w[3])) ? (d->_w[3]) : (s->_w[3])); d->_w[4] = (((d->_w[4]) < (s->_w[4])) ? (d->_w[4]) : (s->_w[4])); d->_w[5] = (((d->_w[5]) < (s->_w[5])) ? (d->_w[5]) : (s->_w[5])); d->_w[6] = (((d->_w[6]) < (s->_w[6])) ? (d->_w[6]) : (s->_w[6])); d->_w[7] = (((d->_w[7]) < (s->_w[7])) ? (d->_w[7]) : (s->_w[7]));}
28883 void helper_pminud_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (((d->_l[0]) < (s->_l[0])) ? (d->_l[0]) : (s->_l[0])); d->_l[1] = (((d->_l[1]) < (s->_l[1])) ? (d->_l[1]) : (s->_l[1])); d->_l[2] = (((d->_l[2]) < (s->_l[2])) ? (d->_l[2]) : (s->_l[2])); d->_l[3] = (((d->_l[3]) < (s->_l[3])) ? (d->_l[3]) : (s->_l[3]));}
28884 void helper_pmaxsb_xmm (XMMReg *d, XMMReg *s){ d->_b[0] = ((((int8_t) d->_b[0]) > ((int8_t) s->_b[0])) ? ((int8_t) d->_b[0]) : ((int8_t) s->_b[0])); d->_b[1] = ((((int8_t) d->_b[1]) > ((int8_t) s->_b[1])) ? ((int8_t) d->_b[1]) : ((int8_t) s->_b[1])); d->_b[2] = ((((int8_t) d->_b[2]) > ((int8_t) s->_b[2])) ? ((int8_t) d->_b[2]) : ((int8_t) s->_b[2])); d->_b[3] = ((((int8_t) d->_b[3]) > ((int8_t) s->_b[3])) ? ((int8_t) d->_b[3]) : ((int8_t) s->_b[3])); d->_b[4] = ((((int8_t) d->_b[4]) > ((int8_t) s->_b[4])) ? ((int8_t) d->_b[4]) : ((int8_t) s->_b[4])); d->_b[5] = ((((int8_t) d->_b[5]) > ((int8_t) s->_b[5])) ? ((int8_t) d->_b[5]) : ((int8_t) s->_b[5])); d->_b[6] = ((((int8_t) d->_b[6]) > ((int8_t) s->_b[6])) ? ((int8_t) d->_b[6]) : ((int8_t) s->_b[6])); d->_b[7] = ((((int8_t) d->_b[7]) > ((int8_t) s->_b[7])) ? ((int8_t) d->_b[7]) : ((int8_t) s->_b[7])); d->_b[8] = ((((int8_t) d->_b[8]) > ((int8_t) s->_b[8])) ? ((int8_t) d->_b[8]) : ((int8_t) s->_b[8])); d->_b[9] = ((((int8_t) d->_b[9]) > ((int8_t) s->_b[9])) ? ((int8_t) d->_b[9]) : ((int8_t) s->_b[9])); d->_b[10] = ((((int8_t) d->_b[10]) > ((int8_t) s->_b[10])) ? ((int8_t) d->_b[10]) : ((int8_t) s->_b[10])); d->_b[11] = ((((int8_t) d->_b[11]) > ((int8_t) s->_b[11])) ? ((int8_t) d->_b[11]) : ((int8_t) s->_b[11])); d->_b[12] = ((((int8_t) d->_b[12]) > ((int8_t) s->_b[12])) ? ((int8_t) d->_b[12]) : ((int8_t) s->_b[12])); d->_b[13] = ((((int8_t) d->_b[13]) > ((int8_t) s->_b[13])) ? ((int8_t) d->_b[13]) : ((int8_t) s->_b[13])); d->_b[14] = ((((int8_t) d->_b[14]) > ((int8_t) s->_b[14])) ? ((int8_t) d->_b[14]) : ((int8_t) s->_b[14])); d->_b[15] = ((((int8_t) d->_b[15]) > ((int8_t) s->_b[15])) ? ((int8_t) d->_b[15]) : ((int8_t) s->_b[15]));}
28885 void helper_pmaxsd_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = ((((int32_t) d->_l[0]) > ((int32_t) s->_l[0])) ? ((int32_t) d->_l[0]) : ((int32_t) s->_l[0])); d->_l[1] = ((((int32_t) d->_l[1]) > ((int32_t) s->_l[1])) ? ((int32_t) d->_l[1]) : ((int32_t) s->_l[1])); d->_l[2] = ((((int32_t) d->_l[2]) > ((int32_t) s->_l[2])) ? ((int32_t) d->_l[2]) : ((int32_t) s->_l[2])); d->_l[3] = ((((int32_t) d->_l[3]) > ((int32_t) s->_l[3])) ? ((int32_t) d->_l[3]) : ((int32_t) s->_l[3]));}
28886 void helper_pmaxuw_xmm (XMMReg *d, XMMReg *s){ d->_w[0] = (((d->_w[0]) > (s->_w[0])) ? (d->_w[0]) : (s->_w[0])); d->_w[1] = (((d->_w[1]) > (s->_w[1])) ? (d->_w[1]) : (s->_w[1])); d->_w[2] = (((d->_w[2]) > (s->_w[2])) ? (d->_w[2]) : (s->_w[2])); d->_w[3] = (((d->_w[3]) > (s->_w[3])) ? (d->_w[3]) : (s->_w[3])); d->_w[4] = (((d->_w[4]) > (s->_w[4])) ? (d->_w[4]) : (s->_w[4])); d->_w[5] = (((d->_w[5]) > (s->_w[5])) ? (d->_w[5]) : (s->_w[5])); d->_w[6] = (((d->_w[6]) > (s->_w[6])) ? (d->_w[6]) : (s->_w[6])); d->_w[7] = (((d->_w[7]) > (s->_w[7])) ? (d->_w[7]) : (s->_w[7]));}
28887 void helper_pmaxud_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (((d->_l[0]) > (s->_l[0])) ? (d->_l[0]) : (s->_l[0])); d->_l[1] = (((d->_l[1]) > (s->_l[1])) ? (d->_l[1]) : (s->_l[1])); d->_l[2] = (((d->_l[2]) > (s->_l[2])) ? (d->_l[2]) : (s->_l[2])); d->_l[3] = (((d->_l[3]) > (s->_l[3])) ? (d->_l[3]) : (s->_l[3]));}
28890 void helper_pmulld_xmm (XMMReg *d, XMMReg *s){ d->_l[0] = (int32_t) d->_l[0] * (int32_t) s->_l[0]; d->_l[1] = (int32_t) d->_l[1] * (int32_t) s->_l[1]; d->_l[2] = (int32_t) d->_l[2] * (int32_t) s->_l[2]; d->_l[3] = (int32_t) d->_l[3] * (int32_t) s->_l[3];}
28892 void helper_phminposuw_xmm (XMMReg *d, XMMReg *s)
28896 if (s->_w[1] < s->_w[idx])
28898 if (s->_w[2] < s->_w[idx])
28900 if (s->_w[3] < s->_w[idx])
28902 if (s->_w[4] < s->_w[idx])
28904 if (s->_w[5] < s->_w[idx])
28906 if (s->_w[6] < s->_w[idx])
28908 if (s->_w[7] < s->_w[idx])
28914 d->_w[0] = s->_w[idx];
28917 void helper_roundps_xmm (XMMReg *d, XMMReg *s, uint32_t mode)
28919 signed char prev_rounding_mode;
28921 prev_rounding_mode = env->sse_status.float_rounding_mode;
28922 if (!(mode & (1 << 2)))
28923 switch (mode & 3) {
28925 set_float_rounding_mode(float_round_nearest_even, &env->sse_status);
28928 set_float_rounding_mode(float_round_down, &env->sse_status);
28931 set_float_rounding_mode(float_round_up, &env->sse_status);
28934 set_float_rounding_mode(float_round_to_zero, &env->sse_status);
28938 d->_s[0] = float32_round_to_int(s->_s[0], &env->sse_status);
28939 d->_s[1] = float32_round_to_int(s->_s[1], &env->sse_status);
28940 d->_s[2] = float32_round_to_int(s->_s[2], &env->sse_status);
28941 d->_s[3] = float32_round_to_int(s->_s[3], &env->sse_status);
28942 # 1668 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28943 env->sse_status.float_rounding_mode = prev_rounding_mode;
28946 void helper_roundpd_xmm (XMMReg *d, XMMReg *s, uint32_t mode)
28948 signed char prev_rounding_mode;
28950 prev_rounding_mode = env->sse_status.float_rounding_mode;
28951 if (!(mode & (1 << 2)))
28952 switch (mode & 3) {
28954 set_float_rounding_mode(float_round_nearest_even, &env->sse_status);
28957 set_float_rounding_mode(float_round_down, &env->sse_status);
28960 set_float_rounding_mode(float_round_up, &env->sse_status);
28963 set_float_rounding_mode(float_round_to_zero, &env->sse_status);
28967 d->_d[0] = float64_round_to_int(s->_d[0], &env->sse_status);
28968 d->_d[1] = float64_round_to_int(s->_d[1], &env->sse_status);
28969 # 1702 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28970 env->sse_status.float_rounding_mode = prev_rounding_mode;
28973 void helper_roundss_xmm (XMMReg *d, XMMReg *s, uint32_t mode)
28975 signed char prev_rounding_mode;
28977 prev_rounding_mode = env->sse_status.float_rounding_mode;
28978 if (!(mode & (1 << 2)))
28979 switch (mode & 3) {
28981 set_float_rounding_mode(float_round_nearest_even, &env->sse_status);
28984 set_float_rounding_mode(float_round_down, &env->sse_status);
28987 set_float_rounding_mode(float_round_up, &env->sse_status);
28990 set_float_rounding_mode(float_round_to_zero, &env->sse_status);
28994 d->_s[0] = float32_round_to_int(s->_s[0], &env->sse_status);
28995 # 1735 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
28996 env->sse_status.float_rounding_mode = prev_rounding_mode;
28999 void helper_roundsd_xmm (XMMReg *d, XMMReg *s, uint32_t mode)
29001 signed char prev_rounding_mode;
29003 prev_rounding_mode = env->sse_status.float_rounding_mode;
29004 if (!(mode & (1 << 2)))
29005 switch (mode & 3) {
29007 set_float_rounding_mode(float_round_nearest_even, &env->sse_status);
29010 set_float_rounding_mode(float_round_down, &env->sse_status);
29013 set_float_rounding_mode(float_round_up, &env->sse_status);
29016 set_float_rounding_mode(float_round_to_zero, &env->sse_status);
29020 d->_d[0] = float64_round_to_int(s->_d[0], &env->sse_status);
29021 # 1768 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/ops_sse.h"
29022 env->sse_status.float_rounding_mode = prev_rounding_mode;
29026 void helper_blendps_xmm (XMMReg *d, XMMReg *s, uint32_t imm){ d->_l[0] = ((imm >> 0) & 1) ? s->_l[0] : d->_l[0]; d->_l[1] = ((imm >> 1) & 1) ? s->_l[1] : d->_l[1]; if (4 > 2) { d->_l[2] = ((imm >> 2) & 1) ? s->_l[2] : d->_l[2]; d->_l[3] = ((imm >> 3) & 1) ? s->_l[3] : d->_l[3]; if (4 > 4) { d->_l[4] = ((imm >> 4) & 1) ? s->_l[4] : d->_l[4]; d->_l[5] = ((imm >> 5) & 1) ? s->_l[5] : d->_l[5]; d->_l[6] = ((imm >> 6) & 1) ? s->_l[6] : d->_l[6]; d->_l[7] = ((imm >> 7) & 1) ? s->_l[7] : d->_l[7]; if (4 > 8) { d->_l[8] = ((imm >> 8) & 1) ? s->_l[8] : d->_l[8]; d->_l[9] = ((imm >> 9) & 1) ? s->_l[9] : d->_l[9]; d->_l[10] = ((imm >> 10) & 1) ? s->_l[10] : d->_l[10]; d->_l[11] = ((imm >> 11) & 1) ? s->_l[11] : d->_l[11]; d->_l[12] = ((imm >> 12) & 1) ? s->_l[12] : d->_l[12]; d->_l[13] = ((imm >> 13) & 1) ? s->_l[13] : d->_l[13]; d->_l[14] = ((imm >> 14) & 1) ? s->_l[14] : d->_l[14]; d->_l[15] = ((imm >> 15) & 1) ? s->_l[15] : d->_l[15]; } } }}
29027 void helper_blendpd_xmm (XMMReg *d, XMMReg *s, uint32_t imm){ d->_q[0] = ((imm >> 0) & 1) ? s->_q[0] : d->_q[0]; d->_q[1] = ((imm >> 1) & 1) ? s->_q[1] : d->_q[1]; if (2 > 2) { d->_q[2] = ((imm >> 2) & 1) ? s->_q[2] : d->_q[2]; d->_q[3] = ((imm >> 3) & 1) ? s->_q[3] : d->_q[3]; if (2 > 4) { d->_q[4] = ((imm >> 4) & 1) ? s->_q[4] : d->_q[4]; d->_q[5] = ((imm >> 5) & 1) ? s->_q[5] : d->_q[5]; d->_q[6] = ((imm >> 6) & 1) ? s->_q[6] : d->_q[6]; d->_q[7] = ((imm >> 7) & 1) ? s->_q[7] : d->_q[7]; if (2 > 8) { d->_q[8] = ((imm >> 8) & 1) ? s->_q[8] : d->_q[8]; d->_q[9] = ((imm >> 9) & 1) ? s->_q[9] : d->_q[9]; d->_q[10] = ((imm >> 10) & 1) ? s->_q[10] : d->_q[10]; d->_q[11] = ((imm >> 11) & 1) ? s->_q[11] : d->_q[11]; d->_q[12] = ((imm >> 12) & 1) ? s->_q[12] : d->_q[12]; d->_q[13] = ((imm >> 13) & 1) ? s->_q[13] : d->_q[13]; d->_q[14] = ((imm >> 14) & 1) ? s->_q[14] : d->_q[14]; d->_q[15] = ((imm >> 15) & 1) ? s->_q[15] : d->_q[15]; } } }}
29028 void helper_pblendw_xmm (XMMReg *d, XMMReg *s, uint32_t imm){ d->_w[0] = ((imm >> 0) & 1) ? s->_w[0] : d->_w[0]; d->_w[1] = ((imm >> 1) & 1) ? s->_w[1] : d->_w[1]; if (8 > 2) { d->_w[2] = ((imm >> 2) & 1) ? s->_w[2] : d->_w[2]; d->_w[3] = ((imm >> 3) & 1) ? s->_w[3] : d->_w[3]; if (8 > 4) { d->_w[4] = ((imm >> 4) & 1) ? s->_w[4] : d->_w[4]; d->_w[5] = ((imm >> 5) & 1) ? s->_w[5] : d->_w[5]; d->_w[6] = ((imm >> 6) & 1) ? s->_w[6] : d->_w[6]; d->_w[7] = ((imm >> 7) & 1) ? s->_w[7] : d->_w[7]; if (8 > 8) { d->_w[8] = ((imm >> 8) & 1) ? s->_w[8] : d->_w[8]; d->_w[9] = ((imm >> 9) & 1) ? s->_w[9] : d->_w[9]; d->_w[10] = ((imm >> 10) & 1) ? s->_w[10] : d->_w[10]; d->_w[11] = ((imm >> 11) & 1) ? s->_w[11] : d->_w[11]; d->_w[12] = ((imm >> 12) & 1) ? s->_w[12] : d->_w[12]; d->_w[13] = ((imm >> 13) & 1) ? s->_w[13] : d->_w[13]; d->_w[14] = ((imm >> 14) & 1) ? s->_w[14] : d->_w[14]; d->_w[15] = ((imm >> 15) & 1) ? s->_w[15] : d->_w[15]; } } }}
29030 void helper_dpps_xmm (XMMReg *d, XMMReg *s, uint32_t mask)
29032 float32 iresult = (0);
29034 if (mask & (1 << 4))
29035 iresult = float32_add(iresult,
29036 float32_mul(d->_s[0], s->_s[0], &env->sse_status),
29038 if (mask & (1 << 5))
29039 iresult = float32_add(iresult,
29040 float32_mul(d->_s[1], s->_s[1], &env->sse_status),
29042 if (mask & (1 << 6))
29043 iresult = float32_add(iresult,
29044 float32_mul(d->_s[2], s->_s[2], &env->sse_status),
29046 if (mask & (1 << 7))
29047 iresult = float32_add(iresult,
29048 float32_mul(d->_s[3], s->_s[3], &env->sse_status),
29050 d->_s[0] = (mask & (1 << 0)) ? iresult : (0);
29051 d->_s[1] = (mask & (1 << 1)) ? iresult : (0);
29052 d->_s[2] = (mask & (1 << 2)) ? iresult : (0);
29053 d->_s[3] = (mask & (1 << 3)) ? iresult : (0);
29056 void helper_dppd_xmm (XMMReg *d, XMMReg *s, uint32_t mask)
29058 float64 iresult = (0);
29060 if (mask & (1 << 4))
29061 iresult = float64_add(iresult,
29062 float64_mul(d->_d[0], s->_d[0], &env->sse_status),
29064 if (mask & (1 << 5))
29065 iresult = float64_add(iresult,
29066 float64_mul(d->_d[1], s->_d[1], &env->sse_status),
29068 d->_d[0] = (mask & (1 << 0)) ? iresult : (0);
29069 d->_d[1] = (mask & (1 << 1)) ? iresult : (0);
29072 void helper_mpsadbw_xmm (XMMReg *d, XMMReg *s, uint32_t offset)
29074 int s0 = (offset & 3) << 2;
29075 int d0 = (offset & 4) << 0;
29079 for (i = 0; i < 8; i++, d0++) {
29081 r._w[i] += abs1(d->_b[d0 + 0] - s->_b[s0 + 0]);
29082 r._w[i] += abs1(d->_b[d0 + 1] - s->_b[s0 + 1]);
29083 r._w[i] += abs1(d->_b[d0 + 2] - s->_b[s0 + 2]);
29084 r._w[i] += abs1(d->_b[d0 + 3] - s->_b[s0 + 3]);
29093 void helper_pcmpgtq_xmm (XMMReg *d, XMMReg *s){ d->_q[0] = d->_q[0] > s->_q[0] ? -1 : 0; d->_q[1] = d->_q[1] > s->_q[1] ? -1 : 0;}
29095 static __attribute__ (( always_inline )) __inline__ int pcmp_elen(int reg, uint32_t ctrl)
29101 val = abs1((int64_t) env->regs[reg]);
29103 val = abs1((int32_t) env->regs[reg]);
29115 static __attribute__ (( always_inline )) __inline__ int pcmp_ilen(XMMReg *r, uint8_t ctrl)
29120 while (val < 8 && r->_w[val])
29123 while (val < 16 && r->_b[val])
29129 static __attribute__ (( always_inline )) __inline__ int pcmp_val(XMMReg *r, uint8_t ctrl, int i)
29131 switch ((ctrl >> 0) & 3) {
29137 return (int8_t) r->_b[i];
29140 return (int16_t) r->_w[i];
29144 static __attribute__ (( always_inline )) __inline__ unsigned pcmpxstrx(XMMReg *d, XMMReg *s,
29145 int8_t ctrl, int valids, int validd)
29147 unsigned int res = 0;
29150 int upper = (ctrl & 1) ? 7 : 15;
29155 (env->cc_src) = (valids < upper ? 0x0040 : 0) | (validd < upper ? 0x0080 : 0);
29157 switch ((ctrl >> 2) & 3) {
29159 for (j = valids; j >= 0; j--) {
29161 v = pcmp_val(s, ctrl, j);
29162 for (i = validd; i >= 0; i--)
29163 res |= (v == pcmp_val(d, ctrl, i));
29167 for (j = valids; j >= 0; j--) {
29169 v = pcmp_val(s, ctrl, j);
29170 for (i = ((validd - 1) | 1); i >= 0; i -= 2)
29171 res |= (pcmp_val(d, ctrl, i - 0) <= v &&
29172 pcmp_val(d, ctrl, i - 1) >= v);
29176 res = (2 << (upper - (((valids) > (validd)) ? (valids) : (validd)))) - 1;
29177 res <<= (((valids) > (validd)) ? (valids) : (validd)) - (((valids) < (validd)) ? (valids) : (validd));
29178 for (i = (((valids) < (validd)) ? (valids) : (validd)); i >= 0; i--) {
29180 v = pcmp_val(s, ctrl, i);
29181 res |= (v == pcmp_val(d, ctrl, i));
29185 for (j = valids - validd; j >= 0; j--) {
29188 for (i = (((upper - j) < (validd)) ? (upper - j) : (validd)); i >= 0; i--)
29189 res &= (pcmp_val(s, ctrl, i + j) == pcmp_val(d, ctrl, i));
29194 switch ((ctrl >> 4) & 3) {
29196 res ^= (2 << upper) - 1;
29199 res ^= (2 << valids) - 1;
29204 (env->cc_src) |= 0x0001;
29206 (env->cc_src) |= 0x0800;
29211 static __attribute__ (( always_inline )) __inline__ int rffs1(unsigned int val)
29215 for (hi = sizeof(val) * 4; hi; hi /= 2)
29224 static __attribute__ (( always_inline )) __inline__ int ffs1(unsigned int val)
29228 for (hi = sizeof(val) * 4; hi; hi /= 2)
29237 void helper_pcmpestri_xmm (XMMReg *d, XMMReg *s, uint32_t ctrl)
29239 unsigned int res = pcmpxstrx(d, s, ctrl,
29240 pcmp_elen(2, ctrl),
29241 pcmp_elen(0, ctrl));
29244 env->regs[1] = ((ctrl & (1 << 6)) ? rffs1 : ffs1)(res) - 1;
29246 env->regs[1] = 16 >> (ctrl & (1 << 0));
29249 void helper_pcmpestrm_xmm (XMMReg *d, XMMReg *s, uint32_t ctrl)
29252 unsigned int res = pcmpxstrx(d, s, ctrl,
29253 pcmp_elen(2, ctrl),
29254 pcmp_elen(0, ctrl));
29256 if ((ctrl >> 6) & 1) {
29258 for (i = 0; i < 8; i++, res >>= 1) {
29259 d->_w[i] = (res & 1) ? ~0 : 0;
29262 for (i = 0; i < 16; i++, res >>= 1) {
29263 d->_b[i] = (res & 1) ? ~0 : 0;
29271 void helper_pcmpistri_xmm (XMMReg *d, XMMReg *s, uint32_t ctrl)
29273 unsigned int res = pcmpxstrx(d, s, ctrl,
29274 pcmp_ilen(s, ctrl),
29275 pcmp_ilen(d, ctrl));
29278 env->regs[1] = ((ctrl & (1 << 6)) ? rffs1 : ffs1)(res) - 1;
29280 env->regs[1] = 16 >> (ctrl & (1 << 0));
29283 void helper_pcmpistrm_xmm (XMMReg *d, XMMReg *s, uint32_t ctrl)
29286 unsigned int res = pcmpxstrx(d, s, ctrl,
29287 pcmp_ilen(s, ctrl),
29288 pcmp_ilen(d, ctrl));
29290 if ((ctrl >> 6) & 1) {
29292 for (i = 0; i < 8; i++, res >>= 1) {
29293 d->_w[i] = (res & 1) ? ~0 : 0;
29296 for (i = 0; i < 16; i++, res >>= 1) {
29297 d->_b[i] = (res & 1) ? ~0 : 0;
29307 target_ulong helper_crc32(uint32_t crc1, target_ulong msg, uint32_t len)
29309 target_ulong crc = (msg & ((target_ulong) -1 >>
29310 (32 - len))) ^ crc1;
29313 crc = (crc >> 1) ^ ((crc & 1) ? 0x82f63b78 : 0);
29320 target_ulong helper_popcnt(target_ulong n, uint32_t type)
29322 (env->cc_src) = n ? 0 : 0x0040;
29324 n = (n & ((target_ulong) -1 / ((1LL << (1 << 0)) + 1))) + ((n >> (1 << 0)) & ((target_ulong) -1 / ((1LL << (1 << 0)) + 1)));
29325 n = (n & ((target_ulong) -1 / ((1LL << (1 << 1)) + 1))) + ((n >> (1 << 1)) & ((target_ulong) -1 / ((1LL << (1 << 1)) + 1)));
29326 n = (n & ((target_ulong) -1 / ((1LL << (1 << 2)) + 1))) + ((n >> (1 << 2)) & ((target_ulong) -1 / ((1LL << (1 << 2)) + 1)));
29327 n = (n & ((target_ulong) -1 / ((1LL << (1 << 3)) + 1))) + ((n >> (1 << 3)) & ((target_ulong) -1 / ((1LL << (1 << 3)) + 1)));
29331 n = (n & ((target_ulong) -1 / ((1LL << (1 << 4)) + 1))) + ((n >> (1 << 4)) & ((target_ulong) -1 / ((1LL << (1 << 4)) + 1)));
29341 # 5698 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
29344 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h" 1
29345 # 54 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29346 static int compute_all_addb(void)
29348 int cf, pf, af, zf, sf, of;
29349 target_long src1, src2;
29350 src1 = (env->cc_src);
29351 src2 = (env->cc_dst) - (env->cc_src);
29352 cf = (uint8_t)(env->cc_dst) < (uint8_t)src1;
29353 pf = parity_table[(uint8_t)(env->cc_dst)];
29354 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29355 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29356 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29357 of = lshift((src1 ^ src2 ^ -1) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 0))) & 0x0800;
29358 return cf | pf | af | zf | sf | of;
29361 static int compute_c_addb(void)
29365 src1 = (env->cc_src);
29366 cf = (uint8_t)(env->cc_dst) < (uint8_t)src1;
29370 static int compute_all_adcb(void)
29372 int cf, pf, af, zf, sf, of;
29373 target_long src1, src2;
29374 src1 = (env->cc_src);
29375 src2 = (env->cc_dst) - (env->cc_src) - 1;
29376 cf = (uint8_t)(env->cc_dst) <= (uint8_t)src1;
29377 pf = parity_table[(uint8_t)(env->cc_dst)];
29378 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29379 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29380 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29381 of = lshift((src1 ^ src2 ^ -1) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 0))) & 0x0800;
29382 return cf | pf | af | zf | sf | of;
29385 static int compute_c_adcb(void)
29389 src1 = (env->cc_src);
29390 cf = (uint8_t)(env->cc_dst) <= (uint8_t)src1;
29394 static int compute_all_subb(void)
29396 int cf, pf, af, zf, sf, of;
29397 target_long src1, src2;
29398 src1 = (env->cc_dst) + (env->cc_src);
29399 src2 = (env->cc_src);
29400 cf = (uint8_t)src1 < (uint8_t)src2;
29401 pf = parity_table[(uint8_t)(env->cc_dst)];
29402 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29403 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29404 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29405 of = lshift((src1 ^ src2) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 0))) & 0x0800;
29406 return cf | pf | af | zf | sf | of;
29409 static int compute_c_subb(void)
29412 target_long src1, src2;
29413 src1 = (env->cc_dst) + (env->cc_src);
29414 src2 = (env->cc_src);
29415 cf = (uint8_t)src1 < (uint8_t)src2;
29419 static int compute_all_sbbb(void)
29421 int cf, pf, af, zf, sf, of;
29422 target_long src1, src2;
29423 src1 = (env->cc_dst) + (env->cc_src) + 1;
29424 src2 = (env->cc_src);
29425 cf = (uint8_t)src1 <= (uint8_t)src2;
29426 pf = parity_table[(uint8_t)(env->cc_dst)];
29427 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29428 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29429 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29430 of = lshift((src1 ^ src2) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 0))) & 0x0800;
29431 return cf | pf | af | zf | sf | of;
29434 static int compute_c_sbbb(void)
29437 target_long src1, src2;
29438 src1 = (env->cc_dst) + (env->cc_src) + 1;
29439 src2 = (env->cc_src);
29440 cf = (uint8_t)src1 <= (uint8_t)src2;
29444 static int compute_all_logicb(void)
29446 int cf, pf, af, zf, sf, of;
29448 pf = parity_table[(uint8_t)(env->cc_dst)];
29450 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29451 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29453 return cf | pf | af | zf | sf | of;
29456 static int compute_c_logicb(void)
29461 static int compute_all_incb(void)
29463 int cf, pf, af, zf, sf, of;
29464 target_long src1, src2;
29465 src1 = (env->cc_dst) - 1;
29467 cf = (env->cc_src);
29468 pf = parity_table[(uint8_t)(env->cc_dst)];
29469 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29470 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29471 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29472 of = (((env->cc_dst) & 0xff) == (((target_ulong)1) << ((1 << (3 + 0)) - 1))) << 11;
29473 return cf | pf | af | zf | sf | of;
29475 # 191 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29476 static int compute_all_decb(void)
29478 int cf, pf, af, zf, sf, of;
29479 target_long src1, src2;
29480 src1 = (env->cc_dst) + 1;
29482 cf = (env->cc_src);
29483 pf = parity_table[(uint8_t)(env->cc_dst)];
29484 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29485 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29486 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29487 of = (((env->cc_dst) & 0xff) == ((target_ulong)(((target_ulong)1) << ((1 << (3 + 0)) - 1)) - 1)) << 11;
29488 return cf | pf | af | zf | sf | of;
29491 static int compute_all_shlb(void)
29493 int cf, pf, af, zf, sf, of;
29494 cf = ((env->cc_src) >> ((1 << (3 + 0)) - 1)) & 0x0001;
29495 pf = parity_table[(uint8_t)(env->cc_dst)];
29497 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29498 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29500 of = lshift((env->cc_src) ^ (env->cc_dst), 12 - (1 << (3 + 0))) & 0x0800;
29501 return cf | pf | af | zf | sf | of;
29504 static int compute_c_shlb(void)
29506 return ((env->cc_src) >> ((1 << (3 + 0)) - 1)) & 0x0001;
29508 # 231 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29509 static int compute_all_sarb(void)
29511 int cf, pf, af, zf, sf, of;
29512 cf = (env->cc_src) & 1;
29513 pf = parity_table[(uint8_t)(env->cc_dst)];
29515 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29516 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29518 of = lshift((env->cc_src) ^ (env->cc_dst), 12 - (1 << (3 + 0))) & 0x0800;
29519 return cf | pf | af | zf | sf | of;
29521 # 255 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29522 static int compute_all_mulb(void)
29524 int cf, pf, af, zf, sf, of;
29525 cf = ((env->cc_src) != 0);
29526 pf = parity_table[(uint8_t)(env->cc_dst)];
29528 zf = ((uint8_t)(env->cc_dst) == 0) << 6;
29529 sf = lshift((env->cc_dst), 8 - (1 << (3 + 0))) & 0x80;
29531 return cf | pf | af | zf | sf | of;
29536 target_ulong helper_rclb(target_ulong t0, target_ulong t1)
29546 count = rclb_table[count];
29549 eflags = helper_cc_compute_all((env->cc_op));
29552 res = (t0 << count) | ((target_ulong)(eflags & 0x0001) << (count - 1));
29554 res |= t0 >> ((1 << (3 + 0)) + 1 - count);
29556 env->cc_tmp = (eflags & ~(0x0001 | 0x0800)) |
29557 (lshift(src ^ t0, 11 - ((1 << (3 + 0)) - 1)) & 0x0800) |
29558 ((src >> ((1 << (3 + 0)) - count)) & 0x0001);
29565 target_ulong helper_rcrb(target_ulong t0, target_ulong t1)
29575 count = rclb_table[count];
29578 eflags = helper_cc_compute_all((env->cc_op));
29581 res = (t0 >> count) | ((target_ulong)(eflags & 0x0001) << ((1 << (3 + 0)) - count));
29583 res |= t0 << ((1 << (3 + 0)) + 1 - count);
29585 env->cc_tmp = (eflags & ~(0x0001 | 0x0800)) |
29586 (lshift(src ^ t0, 11 - ((1 << (3 + 0)) - 1)) & 0x0800) |
29587 ((src >> (count - 1)) & 0x0001);
29593 # 5701 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
29597 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h" 1
29598 # 54 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29599 static int compute_all_addw(void)
29601 int cf, pf, af, zf, sf, of;
29602 target_long src1, src2;
29603 src1 = (env->cc_src);
29604 src2 = (env->cc_dst) - (env->cc_src);
29605 cf = (uint16_t)(env->cc_dst) < (uint16_t)src1;
29606 pf = parity_table[(uint8_t)(env->cc_dst)];
29607 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29608 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29609 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29610 of = lshift((src1 ^ src2 ^ -1) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 1))) & 0x0800;
29611 return cf | pf | af | zf | sf | of;
29614 static int compute_c_addw(void)
29618 src1 = (env->cc_src);
29619 cf = (uint16_t)(env->cc_dst) < (uint16_t)src1;
29623 static int compute_all_adcw(void)
29625 int cf, pf, af, zf, sf, of;
29626 target_long src1, src2;
29627 src1 = (env->cc_src);
29628 src2 = (env->cc_dst) - (env->cc_src) - 1;
29629 cf = (uint16_t)(env->cc_dst) <= (uint16_t)src1;
29630 pf = parity_table[(uint8_t)(env->cc_dst)];
29631 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29632 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29633 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29634 of = lshift((src1 ^ src2 ^ -1) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 1))) & 0x0800;
29635 return cf | pf | af | zf | sf | of;
29638 static int compute_c_adcw(void)
29642 src1 = (env->cc_src);
29643 cf = (uint16_t)(env->cc_dst) <= (uint16_t)src1;
29647 static int compute_all_subw(void)
29649 int cf, pf, af, zf, sf, of;
29650 target_long src1, src2;
29651 src1 = (env->cc_dst) + (env->cc_src);
29652 src2 = (env->cc_src);
29653 cf = (uint16_t)src1 < (uint16_t)src2;
29654 pf = parity_table[(uint8_t)(env->cc_dst)];
29655 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29656 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29657 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29658 of = lshift((src1 ^ src2) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 1))) & 0x0800;
29659 return cf | pf | af | zf | sf | of;
29662 static int compute_c_subw(void)
29665 target_long src1, src2;
29666 src1 = (env->cc_dst) + (env->cc_src);
29667 src2 = (env->cc_src);
29668 cf = (uint16_t)src1 < (uint16_t)src2;
29672 static int compute_all_sbbw(void)
29674 int cf, pf, af, zf, sf, of;
29675 target_long src1, src2;
29676 src1 = (env->cc_dst) + (env->cc_src) + 1;
29677 src2 = (env->cc_src);
29678 cf = (uint16_t)src1 <= (uint16_t)src2;
29679 pf = parity_table[(uint8_t)(env->cc_dst)];
29680 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29681 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29682 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29683 of = lshift((src1 ^ src2) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 1))) & 0x0800;
29684 return cf | pf | af | zf | sf | of;
29687 static int compute_c_sbbw(void)
29690 target_long src1, src2;
29691 src1 = (env->cc_dst) + (env->cc_src) + 1;
29692 src2 = (env->cc_src);
29693 cf = (uint16_t)src1 <= (uint16_t)src2;
29697 static int compute_all_logicw(void)
29699 int cf, pf, af, zf, sf, of;
29701 pf = parity_table[(uint8_t)(env->cc_dst)];
29703 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29704 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29706 return cf | pf | af | zf | sf | of;
29709 static int compute_c_logicw(void)
29714 static int compute_all_incw(void)
29716 int cf, pf, af, zf, sf, of;
29717 target_long src1, src2;
29718 src1 = (env->cc_dst) - 1;
29720 cf = (env->cc_src);
29721 pf = parity_table[(uint8_t)(env->cc_dst)];
29722 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29723 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29724 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29725 of = (((env->cc_dst) & 0xffff) == (((target_ulong)1) << ((1 << (3 + 1)) - 1))) << 11;
29726 return cf | pf | af | zf | sf | of;
29728 # 191 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29729 static int compute_all_decw(void)
29731 int cf, pf, af, zf, sf, of;
29732 target_long src1, src2;
29733 src1 = (env->cc_dst) + 1;
29735 cf = (env->cc_src);
29736 pf = parity_table[(uint8_t)(env->cc_dst)];
29737 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29738 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29739 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29740 of = (((env->cc_dst) & 0xffff) == ((target_ulong)(((target_ulong)1) << ((1 << (3 + 1)) - 1)) - 1)) << 11;
29741 return cf | pf | af | zf | sf | of;
29744 static int compute_all_shlw(void)
29746 int cf, pf, af, zf, sf, of;
29747 cf = ((env->cc_src) >> ((1 << (3 + 1)) - 1)) & 0x0001;
29748 pf = parity_table[(uint8_t)(env->cc_dst)];
29750 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29751 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29753 of = lshift((env->cc_src) ^ (env->cc_dst), 12 - (1 << (3 + 1))) & 0x0800;
29754 return cf | pf | af | zf | sf | of;
29757 static int compute_c_shlw(void)
29759 return ((env->cc_src) >> ((1 << (3 + 1)) - 1)) & 0x0001;
29761 # 231 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29762 static int compute_all_sarw(void)
29764 int cf, pf, af, zf, sf, of;
29765 cf = (env->cc_src) & 1;
29766 pf = parity_table[(uint8_t)(env->cc_dst)];
29768 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29769 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29771 of = lshift((env->cc_src) ^ (env->cc_dst), 12 - (1 << (3 + 1))) & 0x0800;
29772 return cf | pf | af | zf | sf | of;
29774 # 255 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29775 static int compute_all_mulw(void)
29777 int cf, pf, af, zf, sf, of;
29778 cf = ((env->cc_src) != 0);
29779 pf = parity_table[(uint8_t)(env->cc_dst)];
29781 zf = ((uint16_t)(env->cc_dst) == 0) << 6;
29782 sf = lshift((env->cc_dst), 8 - (1 << (3 + 1))) & 0x80;
29784 return cf | pf | af | zf | sf | of;
29789 target_ulong helper_rclw(target_ulong t0, target_ulong t1)
29797 count = rclw_table[count];
29802 eflags = helper_cc_compute_all((env->cc_op));
29805 res = (t0 << count) | ((target_ulong)(eflags & 0x0001) << (count - 1));
29807 res |= t0 >> ((1 << (3 + 1)) + 1 - count);
29809 env->cc_tmp = (eflags & ~(0x0001 | 0x0800)) |
29810 (lshift(src ^ t0, 11 - ((1 << (3 + 1)) - 1)) & 0x0800) |
29811 ((src >> ((1 << (3 + 1)) - count)) & 0x0001);
29818 target_ulong helper_rcrw(target_ulong t0, target_ulong t1)
29826 count = rclw_table[count];
29831 eflags = helper_cc_compute_all((env->cc_op));
29834 res = (t0 >> count) | ((target_ulong)(eflags & 0x0001) << ((1 << (3 + 1)) - count));
29836 res |= t0 << ((1 << (3 + 1)) + 1 - count);
29838 env->cc_tmp = (eflags & ~(0x0001 | 0x0800)) |
29839 (lshift(src ^ t0, 11 - ((1 << (3 + 1)) - 1)) & 0x0800) |
29840 ((src >> (count - 1)) & 0x0001);
29846 # 5705 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
29850 # 1 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h" 1
29851 # 54 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/helper_template.h"
29852 static int compute_all_addl(void)
29854 int cf, pf, af, zf, sf, of;
29855 target_long src1, src2;
29856 src1 = (env->cc_src);
29857 src2 = (env->cc_dst) - (env->cc_src);
29858 cf = (uint32_t)(env->cc_dst) < (uint32_t)src1;
29859 pf = parity_table[(uint8_t)(env->cc_dst)];
29860 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29861 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29862 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
29863 of = lshift((src1 ^ src2 ^ -1) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 2))) & 0x0800;
29864 return cf | pf | af | zf | sf | of;
29867 static int compute_c_addl(void)
29871 src1 = (env->cc_src);
29872 cf = (uint32_t)(env->cc_dst) < (uint32_t)src1;
29876 static int compute_all_adcl(void)
29878 int cf, pf, af, zf, sf, of;
29879 target_long src1, src2;
29880 src1 = (env->cc_src);
29881 src2 = (env->cc_dst) - (env->cc_src) - 1;
29882 cf = (uint32_t)(env->cc_dst) <= (uint32_t)src1;
29883 pf = parity_table[(uint8_t)(env->cc_dst)];
29884 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29885 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29886 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
29887 of = lshift((src1 ^ src2 ^ -1) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 2))) & 0x0800;
29888 return cf | pf | af | zf | sf | of;
29891 static int compute_c_adcl(void)
29895 src1 = (env->cc_src);
29896 cf = (uint32_t)(env->cc_dst) <= (uint32_t)src1;
29900 static int compute_all_subl(void)
29902 int cf, pf, af, zf, sf, of;
29903 target_long src1, src2;
29904 src1 = (env->cc_dst) + (env->cc_src);
29905 src2 = (env->cc_src);
29906 cf = (uint32_t)src1 < (uint32_t)src2;
29907 pf = parity_table[(uint8_t)(env->cc_dst)];
29908 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29909 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29910 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
29911 of = lshift((src1 ^ src2) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 2))) & 0x0800;
29912 return cf | pf | af | zf | sf | of;
29915 static int compute_c_subl(void)
29918 target_long src1, src2;
29919 src1 = (env->cc_dst) + (env->cc_src);
29920 src2 = (env->cc_src);
29921 cf = (uint32_t)src1 < (uint32_t)src2;
29925 static int compute_all_sbbl(void)
29927 int cf, pf, af, zf, sf, of;
29928 target_long src1, src2;
29929 src1 = (env->cc_dst) + (env->cc_src) + 1;
29930 src2 = (env->cc_src);
29931 cf = (uint32_t)src1 <= (uint32_t)src2;
29932 pf = parity_table[(uint8_t)(env->cc_dst)];
29933 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29934 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29935 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
29936 of = lshift((src1 ^ src2) & (src1 ^ (env->cc_dst)), 12 - (1 << (3 + 2))) & 0x0800;
29937 return cf | pf | af | zf | sf | of;
29940 static int compute_c_sbbl(void)
29943 target_long src1, src2;
29944 src1 = (env->cc_dst) + (env->cc_src) + 1;
29945 src2 = (env->cc_src);
29946 cf = (uint32_t)src1 <= (uint32_t)src2;
29950 static int compute_all_logicl(void)
29952 int cf, pf, af, zf, sf, of;
29954 pf = parity_table[(uint8_t)(env->cc_dst)];
29956 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29957 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
29959 return cf | pf | af | zf | sf | of;
29962 static int compute_c_logicl(void)
29967 static int compute_all_incl(void)
29969 int cf, pf, af, zf, sf, of;
29970 target_long src1, src2;
29971 src1 = (env->cc_dst) - 1;
29973 cf = (env->cc_src);
29974 pf = parity_table[(uint8_t)(env->cc_dst)];
29975 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29976 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29977 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
29978 of = (((env->cc_dst) & 0xffffffff) == (((target_ulong)1) << ((1 << (3 + 2)) - 1))) << 11;
29979 return cf | pf | af | zf | sf | of;
29983 static int compute_c_incl(void)
29985 return (env->cc_src);
29989 static int compute_all_decl(void)
29991 int cf, pf, af, zf, sf, of;
29992 target_long src1, src2;
29993 src1 = (env->cc_dst) + 1;
29995 cf = (env->cc_src);
29996 pf = parity_table[(uint8_t)(env->cc_dst)];
29997 af = ((env->cc_dst) ^ src1 ^ src2) & 0x10;
29998 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
29999 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
30000 of = (((env->cc_dst) & 0xffffffff) == ((target_ulong)(((target_ulong)1) << ((1 << (3 + 2)) - 1)) - 1)) << 11;
30001 return cf | pf | af | zf | sf | of;
30004 static int compute_all_shll(void)
30006 int cf, pf, af, zf, sf, of;
30007 cf = ((env->cc_src) >> ((1 << (3 + 2)) - 1)) & 0x0001;
30008 pf = parity_table[(uint8_t)(env->cc_dst)];
30010 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
30011 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
30013 of = lshift((env->cc_src) ^ (env->cc_dst), 12 - (1 << (3 + 2))) & 0x0800;
30014 return cf | pf | af | zf | sf | of;
30017 static int compute_c_shll(void)
30019 return ((env->cc_src) >> ((1 << (3 + 2)) - 1)) & 0x0001;
30023 static int compute_c_sarl(void)
30025 return (env->cc_src) & 1;
30029 static int compute_all_sarl(void)
30031 int cf, pf, af, zf, sf, of;
30032 cf = (env->cc_src) & 1;
30033 pf = parity_table[(uint8_t)(env->cc_dst)];
30035 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
30036 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
30038 of = lshift((env->cc_src) ^ (env->cc_dst), 12 - (1 << (3 + 2))) & 0x0800;
30039 return cf | pf | af | zf | sf | of;
30043 static int compute_c_mull(void)
30046 cf = ((env->cc_src) != 0);
30053 static int compute_all_mull(void)
30055 int cf, pf, af, zf, sf, of;
30056 cf = ((env->cc_src) != 0);
30057 pf = parity_table[(uint8_t)(env->cc_dst)];
30059 zf = ((uint32_t)(env->cc_dst) == 0) << 6;
30060 sf = lshift((env->cc_dst), 8 - (1 << (3 + 2))) & 0x80;
30062 return cf | pf | af | zf | sf | of;
30067 target_ulong helper_rcll(target_ulong t0, target_ulong t1)
30080 eflags = helper_cc_compute_all((env->cc_op));
30083 res = (t0 << count) | ((target_ulong)(eflags & 0x0001) << (count - 1));
30085 res |= t0 >> ((1 << (3 + 2)) + 1 - count);
30087 env->cc_tmp = (eflags & ~(0x0001 | 0x0800)) |
30088 (lshift(src ^ t0, 11 - ((1 << (3 + 2)) - 1)) & 0x0800) |
30089 ((src >> ((1 << (3 + 2)) - count)) & 0x0001);
30096 target_ulong helper_rcrl(target_ulong t0, target_ulong t1)
30109 eflags = helper_cc_compute_all((env->cc_op));
30112 res = (t0 >> count) | ((target_ulong)(eflags & 0x0001) << ((1 << (3 + 2)) - count));
30114 res |= t0 << ((1 << (3 + 2)) + 1 - count);
30116 env->cc_tmp = (eflags & ~(0x0001 | 0x0800)) |
30117 (lshift(src ^ t0, 11 - ((1 << (3 + 2)) - 1)) & 0x0800) |
30118 ((src >> (count - 1)) & 0x0001);
30124 # 5709 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c" 2
30125 # 5720 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
30126 target_ulong helper_bsf(target_ulong t0)
30133 while ((res & 1) == 0) {
30140 target_ulong helper_lzcnt(target_ulong t0, int wordsize)
30143 target_ulong res, mask;
30145 if (wordsize > 0 && t0 == 0) {
30150 mask = (target_ulong)1 << (32 - 1);
30151 while ((res & mask) == 0) {
30155 if (wordsize > 0) {
30156 return wordsize - 1 - count;
30161 target_ulong helper_bsr(target_ulong t0)
30163 return helper_lzcnt(t0, 0);
30166 static int compute_all_eflags(void)
30168 return (env->cc_src);
30171 static int compute_c_eflags(void)
30173 return (env->cc_src) & 0x0001;
30176 uint32_t helper_cc_compute_all(int op)
30181 case CC_OP_EFLAGS: return compute_all_eflags();
30183 case CC_OP_MULB: return compute_all_mulb();
30184 case CC_OP_MULW: return compute_all_mulw();
30185 case CC_OP_MULL: return compute_all_mull();
30187 case CC_OP_ADDB: return compute_all_addb();
30188 case CC_OP_ADDW: return compute_all_addw();
30189 case CC_OP_ADDL: return compute_all_addl();
30191 case CC_OP_ADCB: return compute_all_adcb();
30192 case CC_OP_ADCW: return compute_all_adcw();
30193 case CC_OP_ADCL: return compute_all_adcl();
30195 case CC_OP_SUBB: return compute_all_subb();
30196 case CC_OP_SUBW: return compute_all_subw();
30197 case CC_OP_SUBL: return compute_all_subl();
30199 case CC_OP_SBBB: return compute_all_sbbb();
30200 case CC_OP_SBBW: return compute_all_sbbw();
30201 case CC_OP_SBBL: return compute_all_sbbl();
30203 case CC_OP_LOGICB: return compute_all_logicb();
30204 case CC_OP_LOGICW: return compute_all_logicw();
30205 case CC_OP_LOGICL: return compute_all_logicl();
30207 case CC_OP_INCB: return compute_all_incb();
30208 case CC_OP_INCW: return compute_all_incw();
30209 case CC_OP_INCL: return compute_all_incl();
30211 case CC_OP_DECB: return compute_all_decb();
30212 case CC_OP_DECW: return compute_all_decw();
30213 case CC_OP_DECL: return compute_all_decl();
30215 case CC_OP_SHLB: return compute_all_shlb();
30216 case CC_OP_SHLW: return compute_all_shlw();
30217 case CC_OP_SHLL: return compute_all_shll();
30219 case CC_OP_SARB: return compute_all_sarb();
30220 case CC_OP_SARW: return compute_all_sarw();
30221 case CC_OP_SARL: return compute_all_sarl();
30222 # 5838 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"
30226 uint32_t cpu_cc_compute_all(CPUX86State *env1, int op)
30228 CPUX86State *saved_env;
30233 ret = helper_cc_compute_all(op);
30238 uint32_t helper_cc_compute_c(int op)
30243 case CC_OP_EFLAGS: return compute_c_eflags();
30245 case CC_OP_MULB: return compute_c_mull();
30246 case CC_OP_MULW: return compute_c_mull();
30247 case CC_OP_MULL: return compute_c_mull();
30249 case CC_OP_ADDB: return compute_c_addb();
30250 case CC_OP_ADDW: return compute_c_addw();
30251 case CC_OP_ADDL: return compute_c_addl();
30253 case CC_OP_ADCB: return compute_c_adcb();
30254 case CC_OP_ADCW: return compute_c_adcw();
30255 case CC_OP_ADCL: return compute_c_adcl();
30257 case CC_OP_SUBB: return compute_c_subb();
30258 case CC_OP_SUBW: return compute_c_subw();
30259 case CC_OP_SUBL: return compute_c_subl();
30261 case CC_OP_SBBB: return compute_c_sbbb();
30262 case CC_OP_SBBW: return compute_c_sbbw();
30263 case CC_OP_SBBL: return compute_c_sbbl();
30265 case CC_OP_LOGICB: return compute_c_logicb();
30266 case CC_OP_LOGICW: return compute_c_logicw();
30267 case CC_OP_LOGICL: return compute_c_logicl();
30269 case CC_OP_INCB: return compute_c_incl();
30270 case CC_OP_INCW: return compute_c_incl();
30271 case CC_OP_INCL: return compute_c_incl();
30273 case CC_OP_DECB: return compute_c_incl();
30274 case CC_OP_DECW: return compute_c_incl();
30275 case CC_OP_DECL: return compute_c_incl();
30277 case CC_OP_SHLB: return compute_c_shlb();
30278 case CC_OP_SHLW: return compute_c_shlw();
30279 case CC_OP_SHLL: return compute_c_shll();
30281 case CC_OP_SARB: return compute_c_sarl();
30282 case CC_OP_SARW: return compute_c_sarl();
30283 case CC_OP_SARL: return compute_c_sarl();
30284 # 5921 "/var/tmp/portage/app-emulation/qemu-kvm-1.1.1-r3/work/qemu-kvm-1.1.1/target-i386/op_helper.c"