24{
27
30 sx = hx&0x80000000;
31 hx ^=sx;
32 hy &= 0x7fffffff;
33
34
35 if((hy|ly)==0||(hx>=0x7ff00000)||
36 ((hy|((ly|-(
int32_t)ly)>>31))>0x7ff00000))
38 if(hx<=hy) {
39 if((hx<hy)||(lx<ly))
return x;
40 if(lx==ly)
42 }
43
44
45 if(hx<0x00100000) {
46 if(hx==0) {
47 for (ix = -1043,
i=lx;
i>0;
i<<=1) ix -=1;
48 } else {
49 for (ix = -1022,
i=(hx<<11);
i>0;
i<<=1) ix -=1;
50 }
51 } else ix = (hx>>20)-1023;
52
53
54 if(hy<0x00100000) {
55 if(hy==0) {
56 for (iy = -1043,
i=ly;
i>0;
i<<=1) iy -=1;
57 } else {
58 for (iy = -1022,
i=(hy<<11);
i>0;
i<<=1) iy -=1;
59 }
60 } else iy = (hy>>20)-1023;
61
62
63 if(ix >= -1022)
64 hx = 0x00100000|(0x000fffff&hx);
65 else {
68 hx = (hx<<
n)|(lx>>(32-
n));
70 } else {
72 lx = 0;
73 }
74 }
75 if(iy >= -1022)
76 hy = 0x00100000|(0x000fffff&hy);
77 else {
80 hy = (hy<<
n)|(ly>>(32-
n));
82 } else {
84 ly = 0;
85 }
86 }
87
88
91 hz=hx-hy;lz=lx-ly; if(lx<ly) hz -= 1;
92 if(hz<0){hx = hx+hx+(lx>>31); lx = lx+lx;}
93 else {
94 if((hz|lz)==0)
96 hx = hz+hz+(lz>>31); lx = lz+lz;
97 }
98 }
99 hz=hx-hy;lz=lx-ly; if(lx<ly) hz -= 1;
100 if(hz>=0) {hx=hz;lx=lz;}
101
102
103 if((hx|lx)==0)
105 while(hx<0x00100000) {
106 hx = hx+hx+(lx>>31); lx = lx+lx;
107 iy -= 1;
108 }
109 if(iy>= -1022) {
110 hx = ((hx-0x00100000)|((iy+1023)<<20));
112 } else {
118 lx = (hx<<(32-
n))|(lx>>
n); hx = sx;
119 } else {
120 lx = hx>>(
n-32); hx = sx;
121 }
124 }
126}
GLint GLint GLint GLint GLint GLint y
GLint GLint GLint GLint GLint x
return Display return Display Bool Bool int int int return Display XEvent Bool(*) XPointer return Display return Display Drawable _Xconst char unsigned int unsigned int return Display Pixmap Pixmap XColor XColor unsigned int unsigned int return Display _Xconst char char int char return Display Visual unsigned int int int char unsigned int unsigned int in i)
static const double Zero[]
#define EXTRACT_WORDS(ix0, ix1, d)
#define INSERT_WORDS(d, ix0, ix1)