This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

c/2165: Make on plotutils-2.4 causes gcc to gives segmentation fault



>Number:         2165
>Category:       c
>Synopsis:       Make on plotutils-2.4 causes gcc to gives segmentation fault
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Mar 03 15:26:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Krishna Kant
>Release:        unknown-1.0
>Organization:
>Environment:
Red-hat Linux 7.0 on PIII-750 MHz dual processor system
>Description:
Got GNU plotutils-2.4 on March 1, 2001 and followed 
installation instructions (no changes to anything). The "make"
command fails with segmentation fault on libplot/g_range.c.
Here is the output from make.

make[2]: Entering directory `/usr/local/src/plotutils-2.4/libplot'
/bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/X11R6/include -I./../include -DLIBPLOT    -O2 -c g_range.c
rm -f .libs/g_range.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/X11R6/include -I./../include -DLIBPLOT -O2 -c g_range.c  -fPIC -DPIC -o .libs/g_range.lo
g_range.c: In function `_set_bezier3_bbox':
g_range.c:390: Internal error: Segmentation fault.
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
make[2]: *** [g_range.lo] Error 1
make[2]: Leaving directory `/usr/local/src/plotutils-2.4/libplot'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/plotutils-2.4'
make: *** [all-recursive-am] Error 2
>How-To-Repeat:
Just get plotutils-2.4 and compile it
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="g_range.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="g_range.c"

LyogVGhpcyBmaWxlIGNvbnRhaW5zIGZ1bmN0aW9ucyB0aGF0IHVwZGF0ZSB0aGUgYm91bmRpbmcg
Ym94IGluZm9ybWF0aW9uCiAgIGZvciBhIHBhZ2Ugd2hlbmV2ZXIgYSBuZXcgb2JqZWN0IChlbGxp
cHNlLCBsaW5lIHNlZ21lbnQsIG9yIEJlemllcgogICBzZWdtZW50KSBpcyBwbG90dGVkLiAgVXBk
YXRpbmcgdGFrZXMgdGhlIGxpbmUgd2lkdGggaW50byBhY2NvdW50LCBtb3JlCiAgIG9yIGxlc3Mu
ICBUaGUgYm91bmRpbmcgYm94IGluZm9ybWF0aW9uIGlzIHN0b3JlZCBpbiB0ZXJtcyBvZiBkZXZp
Y2UKICAgdW5pdHMsIGluIHRoZSBwYWdlJ3MgcGxPdXRidWYgc3RydWN0dXJlLiAqLwoKI2luY2x1
ZGUgInN5cy1kZWZpbmVzLmgiCiNpbmNsdWRlICJleHRlcm4uaCIKCiNkZWZpbmUgVkxFTkdUSCh2
KSBzcXJ0KCAodikueCAqICh2KS54ICsgKHYpLnkgKiAodikueSApCgovKiB1cGRhdGUgYm91bmRp
bmcgYm94IGR1ZSB0byBkcmF3aW5nIG9mIGVsbGlwc2UgKGFyZ3MgYXJlIGluIHVzZXIgY29vcnMp
ICovCgovKiBXQVJOSU5HOiBUaGlzIGlzIG5vdCBjb21wbGV0ZWx5IGFjY3VyYXRlLCBkdWUgdG8g
dGhlIG5vbnplcm8gd2lkdGggb2YKICAgdGhlIHBlbiB1c2VkIHRvIGRyYXcgdGhlIGVsbGlwc2Uu
ICBOb3RvcmlvdXNseSwgdGhlIG91dGVyIGJvdW5kYXJ5IG9mIGEKICAgYHdpZGUgZWxsaXBzZScg
aXNuJ3QgYW4gZWxsaXBzZSBhdCBhbGw6IGluIGdlbmVyYWwgaXQncyBhbiBlaWdodGgtb3JkZXIK
ICAgY3VydmUgKHNlZSBGb2xleSBhbmQgdmFuIERhbW0pLCB0aG91Z2ggaXQncyBhIGZvdXJ0aC1v
cmRlciBjdXJ2ZSBpZiB0aGUKICAgYXhlcyBhcmUgYWxpZ25lZCB3aXRoIHRoZSBjb29yZGluYXRl
IGF4ZXMuICBIZXJlIHdlIGFwcHJveGltYXRlIGl0IGFzIGFuCiAgIGVsbGlwc2UsIHdpdGggc2Vt
aW1ham9yIGFuZCBzZW1pbWlub3IgYXhlcyBpbiB0aGUgdXNlciBmcmFtZSBpbmNyZWFzZWQKICAg
Ynkgb25lLWhhbGYgb2YgdGhlIGxpbmUgd2lkdGguICBUaGlzIGFwcHJveGltYXRpb24gaXMgZ29v
ZCB1bmxlc3MgdGhlCiAgIGxpbmUgd2lkdGggaXMgbGFyZ2UuICovCnZvaWQKI2lmZGVmIF9IQVZF
X1BST1RPUwpfc2V0X2VsbGlwc2VfYmJveCAocGxPdXRidWYgKmJ1ZnAsIGRvdWJsZSB4LCBkb3Vi
bGUgeSwgZG91YmxlIHJ4LCBkb3VibGUgcnksIGRvdWJsZSBjb3N0aGV0YSwgZG91YmxlIHNpbnRo
ZXRhLCBkb3VibGUgbGluZXdpZHRoLCBkb3VibGUgbVs2XSkKI2Vsc2UKX3NldF9lbGxpcHNlX2Ji
b3ggKGJ1ZnAsIHgsIHksIHJ4LCByeSwgY29zdGhldGEsIHNpbnRoZXRhLCBsaW5ld2lkdGgsIG0p
CiAgICAgcGxPdXRidWYgKmJ1ZnA7CiAgICAgZG91YmxlIHgsIHk7CiAgICAgZG91YmxlIHJ4LCBy
eTsKICAgICBkb3VibGUgY29zdGhldGEsIHNpbnRoZXRhOwogICAgIGRvdWJsZSBsaW5ld2lkdGg7
CiAgICAgZG91YmxlIG1bNl07CiNlbmRpZgp7CiAgZG91YmxlIHV4LCB1eSwgdngsIHZ5OwogIGRv
dWJsZSBtaXhpbmdfYW5nbGU7CiAgZG91YmxlIHNlbWlfYXhpc18xX3gsIHNlbWlfYXhpc18xX3ks
IHNlbWlfYXhpc18yX3gsIHNlbWlfYXhpc18yX3k7CiAgZG91YmxlIHJ4X2RldmljZSwgcnlfZGV2
aWNlOwogIGRvdWJsZSB0aGV0YV9kZXZpY2UsIGNvc3RoZXRhX2RldmljZSwgc2ludGhldGFfZGV2
aWNlOwogIGRvdWJsZSB4ZGV2aWF0aW9uLCB5ZGV2aWF0aW9uOwoKICAvKiB0YWtlIHVzZXItZnJh
bWUgbGluZSB3aWR0aCBpbnRvIGFjY291bnQgKGFwcHJveGltYXRlbHkhIHNlZSBhYm92ZSkgKi8K
ICByeCArPSAwLjUgKiBsaW5ld2lkdGg7CiAgcnkgKz0gMC41ICogbGluZXdpZHRoOyAgCgogIC8q
IHBlcmZvcm0gYWZmaW5lIHVzZXItPmRldmljZSBjb29yIHRyYW5zZm9ybWF0aW9uOyAodXgsdXkp
IGFuZCAodngsdnkpCiAgICAgYXJlIGZvcndhcmQgaW1hZ2VzIG9mIHRoZSBzZW1pYXhlcywgaS5l
LiB0aGV5IGFyZSBjb25qdWdhdGUgcmFkaWFsCiAgICAgdmVjdG9ycyBpbiB0aGUgZGV2aWNlIGZy
YW1lICovCgogIHV4ID0gWERWX0lOVEVSTkFMKHJ4ICogY29zdGhldGEsIHJ4ICogc2ludGhldGEs
IG0pOwogIHV5ID0gWURWX0lOVEVSTkFMKHJ4ICogY29zdGhldGEsIHJ4ICogc2ludGhldGEsIG0p
OwoKICB2eCA9IFhEVl9JTlRFUk5BTCgtcnkgKiBzaW50aGV0YSwgcnkgKiBjb3N0aGV0YSwgbSk7
CiAgdnkgPSBZRFZfSU5URVJOQUwoLXJ5ICogc2ludGhldGEsIHJ5ICogY29zdGhldGEsIG0pOwoK
ICAvKiBhbmdsZSBieSB3aGljaCB0aGUgY29uanVnYXRlIHJhZGlhbCB2ZWN0b3JzIHNob3VsZCBi
ZSBtaXhlZCwgaW4gb3JkZXIKICAgICB0byB5aWVsZCB2ZWN0b3JzIGFsb25nIHRoZSBtYWpvciBh
bmQgbWlub3IgYXhlcyBpbiB0aGUgZGV2aWNlIGZyYW1lICovCiAgbWl4aW5nX2FuZ2xlID0gMC41
ICogX3hhdGFuMiAoMi4wICogKHV4ICogdnggKyB1eSAqIHZ5KSwKCQkJCXV4ICogdXggKyB1eSAq
IHV5IC0gdnggKiB2eCArIHZ5ICogdnkpOwogIAogIC8qIHNlbWktYXhpcyB2ZWN0b3JzIGluIGRl
dmljZSBjb29yZGluYXRlcyAqLwogIHNlbWlfYXhpc18xX3ggPSB1eCAqIGNvcyhtaXhpbmdfYW5n
bGUpICsgdnggKiBzaW4obWl4aW5nX2FuZ2xlKTsKICBzZW1pX2F4aXNfMV95ID0gdXkgKiBjb3Mo
bWl4aW5nX2FuZ2xlKSArIHZ5ICogc2luKG1peGluZ19hbmdsZSk7ICAKICBzZW1pX2F4aXNfMl94
ID0gdXggKiBjb3MobWl4aW5nX2FuZ2xlICsgTV9QSV8yKSAKICAgICsgdnggKiBzaW4obWl4aW5n
X2FuZ2xlICsgTV9QSV8yKTsKICBzZW1pX2F4aXNfMl95ID0gdXkgKiBjb3MobWl4aW5nX2FuZ2xl
ICsgTV9QSV8yKSAKICAgICsgdnkgKiBzaW4obWl4aW5nX2FuZ2xlICsgTV9QSV8yKTsgIAoKICAv
KiBzZW1pLWF4aXMgbGVuZ3RocyBpbiBkZXZpY2UgY29vcmRpbmF0ZXMgKi8KICByeF9kZXZpY2Ug
PSBzcXJ0IChzZW1pX2F4aXNfMV94ICogc2VtaV9heGlzXzFfeAoJCSAgICArIHNlbWlfYXhpc18x
X3kgKiBzZW1pX2F4aXNfMV95KTsKICByeV9kZXZpY2UgPSBzcXJ0IChzZW1pX2F4aXNfMl94ICog
c2VtaV9heGlzXzJfeAoJCSAgICArIHNlbWlfYXhpc18yX3kgKiBzZW1pX2F4aXNfMl95KTsKCiAg
LyogYW5nbGUgb2YgaW5jbGluYXRpb24gb2YgdGhlIGZpcnN0IHNlbWktYXhpcywgaW4gZGV2aWNl
IGZyYW1lICovCiAgdGhldGFfZGV2aWNlID0gLSBfeGF0YW4yIChzZW1pX2F4aXNfMV95LCBzZW1p
X2F4aXNfMV94KTsKICBjb3N0aGV0YV9kZXZpY2UgPSBjb3MgKHRoZXRhX2RldmljZSk7CiAgc2lu
dGhldGFfZGV2aWNlID0gc2luICh0aGV0YV9kZXZpY2UpOyAgCgogIC8qIG1heGltdW0gZGlzcGxh
Y2VtZW50IGluIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIGRpcmVjdGlvbnMKICAgICB3aGlsZSBk
cmF3aW5nIGVsbGlwc2UsIGluIGRldmljZSBmcmFtZSAqLwogIHhkZXZpYXRpb24gPSBzcXJ0IChy
eF9kZXZpY2UgKiByeF9kZXZpY2UgKiBjb3N0aGV0YV9kZXZpY2UgKiBjb3N0aGV0YV9kZXZpY2UK
CQkgICAgICsgcnlfZGV2aWNlICogcnlfZGV2aWNlICogc2ludGhldGFfZGV2aWNlICogc2ludGhl
dGFfZGV2aWNlKTsKICB5ZGV2aWF0aW9uID0gc3FydCAocnhfZGV2aWNlICogcnhfZGV2aWNlICog
c2ludGhldGFfZGV2aWNlICogc2ludGhldGFfZGV2aWNlCgkJICAgICArIHJ5X2RldmljZSAqIHJ5
X2RldmljZSAqIGNvc3RoZXRhX2RldmljZSAqIGNvc3RoZXRhX2RldmljZSk7CgogIC8qIHJlY29y
ZCB0aGVzZSBkaXNwbGFjZW1lbnRzLCBmb3IgYm91bmRpbmcgYm94ICovCiAgX3VwZGF0ZV9iYm94
IChidWZwLCAKCQlYRF9JTlRFUk5BTCh4LHksbSkgKyB4ZGV2aWF0aW9uLCAKCQlZRF9JTlRFUk5B
TCh4LHksbSkgKyB5ZGV2aWF0aW9uKTsKICBfdXBkYXRlX2Jib3ggKGJ1ZnAsIAoJCVhEX0lOVEVS
TkFMKHgseSxtKSArIHhkZXZpYXRpb24sIAoJCVlEX0lOVEVSTkFMKHgseSxtKSAtIHlkZXZpYXRp
b24pOwogIF91cGRhdGVfYmJveCAoYnVmcCwgCgkJWERfSU5URVJOQUwoeCx5LG0pIC0geGRldmlh
dGlvbiwgCgkJWURfSU5URVJOQUwoeCx5LG0pICsgeWRldmlhdGlvbik7CiAgX3VwZGF0ZV9iYm94
IChidWZwLCAKCQlYRF9JTlRFUk5BTCh4LHksbSkgLSB4ZGV2aWF0aW9uLCAKCQlZRF9JTlRFUk5B
TCh4LHksbSkgLSB5ZGV2aWF0aW9uKTsKfQoKLyogdXBkYXRlIGJvdW5kaW5nIGJveCBkdWUgdG8g
ZHJhd2luZyBvZiBhIGxpbmUgZW5kIChhcmdzIGFyZSBpbiB1c2VyIGNvb3JzKSAqLwp2b2lkCiNp
ZmRlZiBfSEFWRV9QUk9UT1MKX3NldF9saW5lX2VuZF9iYm94IChwbE91dGJ1ZiAqYnVmcCwgZG91
YmxlIHgsIGRvdWJsZSB5LCBkb3VibGUgeG90aGVyLCBkb3VibGUgeW90aGVyLCBkb3VibGUgbGlu
ZXdpZHRoLCBpbnQgY2Fwc3R5bGUsIGRvdWJsZSBtWzZdKQojZWxzZQpfc2V0X2xpbmVfZW5kX2Ji
b3ggKGJ1ZnAsIHgsIHksIHhvdGhlciwgeW90aGVyLCBsaW5ld2lkdGgsIGNhcHN0eWxlLCBtKQog
ICAgIHBsT3V0YnVmICpidWZwOwogICAgIGRvdWJsZSB4LCB5LCB4b3RoZXIsIHlvdGhlciwgbGlu
ZXdpZHRoOwogICAgIGludCBjYXBzdHlsZTsKICAgICBkb3VibGUgbVs2XTsKI2VuZGlmCnsKICBw
bFZlY3RvciB2LCB2cm90OwogIGRvdWJsZSB4cywgeXM7CiAgZG91YmxlIGhhbGZ3aWR0aCA9IDAu
NSAqIGxpbmV3aWR0aDsKCiAgc3dpdGNoIChjYXBzdHlsZSkKICAgIHsKICAgIGNhc2UgQ0FQX0JV
VFQ6CiAgICBkZWZhdWx0OgogICAgICB2cm90LnggPSB5b3RoZXIgLSB5OwogICAgICB2cm90Lnkg
PSB4IC0geG90aGVyOwogICAgICBfdnNjYWxlICgmdnJvdCwgaGFsZndpZHRoKTsKICAgICAgeHMg
PSB4ICsgdnJvdC54OwogICAgICB5cyA9IHkgKyB2cm90Lnk7CiAgICAgIF91cGRhdGVfYmJveCAo
YnVmcCwgWERfSU5URVJOQUwoeHMseXMsbSksIFlEX0lOVEVSTkFMKHhzLHlzLG0pKTsKICAgICAg
eHMgPSB4IC0gdnJvdC54OwogICAgICB5cyA9IHkgLSB2cm90Lnk7CiAgICAgIF91cGRhdGVfYmJv
eCAoYnVmcCwgWERfSU5URVJOQUwoeHMseXMsbSksIFlEX0lOVEVSTkFMKHhzLHlzLG0pKTsKICAg
ICAgYnJlYWs7CiAgICBjYXNlIENBUF9QUk9KRUNUOgogICAgICB2LnggPSB4b3RoZXIgLSB4Owog
ICAgICB2LnkgPSB5b3RoZXIgLSB5OwogICAgICBfdnNjYWxlICgmdiwgaGFsZndpZHRoKTsKICAg
ICAgdnJvdC54ID0geW90aGVyIC0geTsKICAgICAgdnJvdC55ID0geCAtIHhvdGhlcjsKICAgICAg
X3ZzY2FsZSAoJnZyb3QsIGhhbGZ3aWR0aCk7CiAgICAgIHhzID0geCAtIHYueCArIHZyb3QueDsK
ICAgICAgeXMgPSB5IC0gdi55ICsgdnJvdC55OwogICAgICBfdXBkYXRlX2Jib3ggKGJ1ZnAsIFhE
X0lOVEVSTkFMKHhzLHlzLG0pLCBZRF9JTlRFUk5BTCh4cyx5cyxtKSk7CiAgICAgIHhzID0geCAt
IHYueCAtIHZyb3QueDsKICAgICAgeXMgPSB5IC0gdi55IC0gdnJvdC55OwogICAgICBfdXBkYXRl
X2Jib3ggKGJ1ZnAsIFhEX0lOVEVSTkFMKHhzLHlzLG0pLCBZRF9JTlRFUk5BTCh4cyx5cyxtKSk7
CiAgICAgIGJyZWFrOwogICAgY2FzZSBDQVBfUk9VTkQ6CiAgICAgIF9zZXRfZWxsaXBzZV9iYm94
IChidWZwLCB4LCB5LCBoYWxmd2lkdGgsIGhhbGZ3aWR0aCwgMS4wLCAwLjAsIDAuMCwgbSk7CiAg
ICAgIGJyZWFrOwogICAgY2FzZSBDQVBfVFJJQU5HVUxBUjoKICAgICAgLyogYWRkIHByb2plY3Rp
bmcgdmVydGV4ICovCiAgICAgIHYueCA9IHhvdGhlciAtIHg7CiAgICAgIHYueSA9IHlvdGhlciAt
IHk7CiAgICAgIF92c2NhbGUgKCZ2LCBoYWxmd2lkdGgpOwogICAgICB4cyA9IHggKyB2Lng7CiAg
ICAgIHlzID0geSArIHYueTsKICAgICAgX3VwZGF0ZV9iYm94IChidWZwLCBYRF9JTlRFUk5BTCh4
cyx5cyxtKSwgWURfSU5URVJOQUwoeHMseXMsbSkpOwogICAgICAvKiBhZGQgb3RoZXIgdHdvIHZl
cnRpY2VzICovCiAgICAgIHZyb3QueCA9IHlvdGhlciAtIHk7CiAgICAgIHZyb3QueSA9IHggLSB4
b3RoZXI7CiAgICAgIF92c2NhbGUgKCZ2cm90LCBoYWxmd2lkdGgpOwogICAgICB4cyA9IHggKyB2
cm90Lng7CiAgICAgIHlzID0geSArIHZyb3QueTsKICAgICAgX3VwZGF0ZV9iYm94IChidWZwLCBY
RF9JTlRFUk5BTCh4cyx5cyxtKSwgWURfSU5URVJOQUwoeHMseXMsbSkpOwogICAgICB4cyA9IHgg
LSB2cm90Lng7CiAgICAgIHlzID0geSAtIHZyb3QueTsKICAgICAgX3VwZGF0ZV9iYm94IChidWZw
LCBYRF9JTlRFUk5BTCh4cyx5cyxtKSwgWURfSU5URVJOQUwoeHMseXMsbSkpOwogICAgICBicmVh
azsKICAgIH0KfQoKLyogdXBkYXRlIGJvdW5kaW5nIGJveCBkdWUgdG8gZHJhd2luZyBvZiBhIGxp
bmUgam9pbiAoYXJncyBhcmUgaW4gdXNlciBjb29ycykqLwp2b2lkCiNpZmRlZiBfSEFWRV9QUk9U
T1MKX3NldF9saW5lX2pvaW5fYmJveCAocGxPdXRidWYgKmJ1ZnAsIGRvdWJsZSB4bGVmdCwgZG91
YmxlIHlsZWZ0LCBkb3VibGUgeCwgZG91YmxlIHksIGRvdWJsZSB4cmlnaHQsIGRvdWJsZSB5cmln
aHQsIGRvdWJsZSBsaW5ld2lkdGgsIGludCBqb2luc3R5bGUsIGRvdWJsZSBtaXRlcmxpbWl0LCBk
b3VibGUgbVs2XSkKI2Vsc2UKX3NldF9saW5lX2pvaW5fYmJveCAoYnVmcCwgeGxlZnQsIHlsZWZ0
LCB4LCB5LCB4cmlnaHQsIHlyaWdodCwgbGluZXdpZHRoLCBqb2luc3R5bGUsIG1pdGVybGltaXQs
IG0pCiAgICAgcGxPdXRidWYgKmJ1ZnA7CiAgICAgZG91YmxlIHhsZWZ0LCB5bGVmdCwgeCwgeSwg
eHJpZ2h0LCB5cmlnaHQsIGxpbmV3aWR0aDsKICAgICBpbnQgam9pbnN0eWxlOwogICAgIGRvdWJs
ZSBtaXRlcmxpbWl0OwogICAgIGRvdWJsZSBtWzZdOwojZW5kaWYKewogIHBsVmVjdG9yIHYxLCB2
MiwgdnN1bTsKICBkb3VibGUgdjFsZW4sIHYybGVuOwogIGRvdWJsZSBoYWxmd2lkdGg7CiAgZG91
YmxlIG1pdHJlbGVuOwoKICBzd2l0Y2ggKGpvaW5zdHlsZSkKICAgIHsKICAgIGNhc2UgSk9JTl9N
SVRFUjoKICAgIGRlZmF1bHQ6CiAgICAgIHYxLnggPSB4bGVmdCAtIHg7CiAgICAgIHYxLnkgPSB5
bGVmdCAtIHk7CiAgICAgIHYyLnggPSB4cmlnaHQgLSB4OwogICAgICB2Mi55ID0geXJpZ2h0IC0g
eTsKICAgICAgdjFsZW4gPSBWTEVOR1RIKHYxKTsKICAgICAgdjJsZW4gPSBWTEVOR1RIKHYyKTsK
ICAgICAgaWYgKHYxbGVuID09IDAuMCB8fCB2MmxlbiA9PSAwLjApCglfdXBkYXRlX2Jib3ggKGJ1
ZnAsIFhEX0lOVEVSTkFMKHgseSxtKSwgWURfSU5URVJOQUwoeCx5LG0pKTsKICAgICAgZWxzZQoJ
ewoJICBkb3VibGUgY29zcGhpOwoJICAKCSAgLyogVGhlIG1heGltdW0gdmFsdWUgdGhlIGNvc2lu
ZSBvZiB0aGUgYW5nbGUgYmV0d2VlbiB0d28gam9pbmluZwoJICAgICBsaW5lcyBtYXkgaGF2ZSwg
aWYgdGhlIGpvaW4gaXMgdG8gYmUgbWl0ZXJlZCByYXRoZXIgdGhhbgoJICAgICBiZXZlbGVkLCBp
cyAxLTIvKE0qTSksIHdoZXJlIE0gaXMgdGhlIG1pdHJlbGltaXQuICBUaGlzIGlzCgkgICAgIGJl
Y2F1c2UgTSBlcXVhbHMgdGhlIGNvc2VjYW50IG9mIG9uZS1oYWxmIHRoZSBtaW5pbXVtIGFuZ2xl
LiAqLwoJICBjb3NwaGkgPSAoKHYxLnggKiB2Mi54ICsgdjEueSAqIHYyLnkpIC8gdjFsZW4pIC8g
djJsZW47CgkgIGlmIChtaXRlcmxpbWl0IDw9IDEuMAoJICAgICAgfHwgKGNvc3BoaSA+ICgxLjAg
LSAyLjAgLyAobWl0ZXJsaW1pdCAqIG1pdGVybGltaXQpKSkpCgkgICAgLyogYmV2ZWwgcmF0aGVy
IHRoYW4gbWl0ZXIgKi8KCSAgICB7CgkgICAgICBfc2V0X2xpbmVfZW5kX2Jib3ggKGJ1ZnAsIHgs
IHksIHhsZWZ0LCB5bGVmdCwgbGluZXdpZHRoLCBDQVBfQlVUVCwgbSk7CgkgICAgICBfc2V0X2xp
bmVfZW5kX2Jib3ggKGJ1ZnAseCwgeSwgeHJpZ2h0LCB5cmlnaHQsIGxpbmV3aWR0aCwgQ0FQX0JV
VFQsIG0pOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgIG1pdHJlbGVuID0gc3FydCAoMS4w
IC8gKDIuMCAtIDIuMCAqIGNvc3BoaSkpICogbGluZXdpZHRoOwoJICAgICAgdnN1bS54ID0gdjEu
eCArIHYyLng7CgkgICAgICB2c3VtLnkgPSB2MS55ICsgdjIueTsKCSAgICAgIF92c2NhbGUgKCZ2
c3VtLCBtaXRyZWxlbik7CgkgICAgICB4IC09IHZzdW0ueDsKCSAgICAgIHkgLT0gdnN1bS55OwoJ
ICAgICAgX3VwZGF0ZV9iYm94IChidWZwLCBYRF9JTlRFUk5BTCh4LHksbSksIFlEX0lOVEVSTkFM
KHgseSxtKSk7CgkgICAgfQoJfQogICAgICBicmVhazsKICAgIGNhc2UgSk9JTl9UUklBTkdVTEFS
OgogICAgICAvKiBhZGQgYSBtaXRlciB2ZXJ0ZXgsIGFuZCBzYW1lIHZlcnRpY2VzIGFzIHdoZW4g
YmV2ZWxsaW5nICovCiAgICAgIHZzdW0ueCA9IHYxLnggKyB2Mi54OwogICAgICB2c3VtLnkgPSB2
MS55ICsgdjIueTsKICAgICAgX3ZzY2FsZSAoJnZzdW0sIDAuNSAqIGxpbmV3aWR0aCk7CiAgICAg
IHggLT0gdnN1bS54OwogICAgICB5IC09IHZzdW0ueTsKICAgICAgX3VwZGF0ZV9iYm94IChidWZw
LCBYRF9JTlRFUk5BTCh4LHksbSksIFlEX0lOVEVSTkFMKHgseSxtKSk7CiAgICAgIC8qIGZhbGwg
dGhyb3VnaCAqLwogICAgY2FzZSBKT0lOX0JFVkVMOgogICAgICBfc2V0X2xpbmVfZW5kX2Jib3gg
KGJ1ZnAsIHgsIHksIHhsZWZ0LCB5bGVmdCwgbGluZXdpZHRoLCBDQVBfQlVUVCwgbSk7CiAgICAg
IF9zZXRfbGluZV9lbmRfYmJveCAoYnVmcCwgeCwgeSwgeHJpZ2h0LCB5cmlnaHQsIGxpbmV3aWR0
aCwgQ0FQX0JVVFQsIG0pOwogICAgICBicmVhazsKICAgIGNhc2UgSk9JTl9ST1VORDoKICAgICAg
aGFsZndpZHRoID0gMC41ICogbGluZXdpZHRoOwogICAgICBfc2V0X2VsbGlwc2VfYmJveCAoYnVm
cCwgeCwgeSwgaGFsZndpZHRoLCBoYWxmd2lkdGgsIDEuMCwgMC4wLCAwLjAsIG0pOwogICAgICBi
cmVhazsKICAgIH0KfQoKLyogVXBkYXRlIGJvdW5kaW5nIGJveCBkdWUgdG8gZHJhd2luZyBvZiBh
IHF1YWRyYXRpYyBCZXppZXIgc2VnbWVudC4gIFRoaXMKICAgdGFrZXMgaW50byBhY2NvdW50IG9u
bHkgZXh0cmVtYWwgeC95IHZhbHVlcyBpbiB0aGUgaW50ZXJpb3Igb2YgdGhlCiAgIHNlZ21lbnQs
IGkuZS4gaXQgZG9lc24ndCB0YWtlIHRoZSBlbmRwb2ludHMgaW50byBhY2NvdW50LiAqLwoKLyog
V0FSTklORzogTGlrZSBfc2V0X2VsbGlwc2VfYmJveCBhYm92ZSwgdGhpcyBkb2VzIG5vdCBwcm9w
ZXJseSB0YWtlIGxpbmUKICAgd2lkdGggaW50byBhY2NvdW50LiAgVGhlIGJvdW5kYXJ5IG9mIGEg
YHRoaWNrIEJlemllcicgaXMgbm90IGEgbmljZQogICBjdXJ2ZSBhdCBhbGwuICovCgojZGVmaW5l
IFFVQURfQ09PUih0LHgwLHgxLHgyKSAoKCh4MCktMiooeDEpKyh4MikpKnQqdCArIDIqKCh4MSkt
KHgyKSkqdCArICh4MikpCgp2b2lkCiNpZmRlZiBfSEFWRV9QUk9UT1MKX3NldF9iZXppZXIyX2Ji
b3ggKHBsT3V0YnVmICpidWZwLCBkb3VibGUgeDAsIGRvdWJsZSB5MCwgZG91YmxlIHgxLCBkb3Vi
bGUgeTEsIGRvdWJsZSB4MiwgZG91YmxlIHkyLCBkb3VibGUgZGV2aWNlX2xpbmVfd2lkdGgsIGRv
dWJsZSBtWzZdKQojZWxzZQpfc2V0X2JlemllcjJfYmJveCAoYnVmcCwgeDAsIHkwLCB4MSwgeTEs
IHgyLCB5MiwgZGV2aWNlX2xpbmVfd2lkdGgsIG0pCiAgICAgcGxPdXRidWYgKmJ1ZnA7CiAgICAg
ZG91YmxlIHgwLCB5MCwgeDEsIHkxLCB4MiwgeTI7CiAgICAgZG91YmxlIGRldmljZV9saW5lX3dp
ZHRoOwogICAgIGRvdWJsZSBtWzZdOwojZW5kaWYKewogIGRvdWJsZSBhX3gsIGJfeCwgdF94Owog
IGRvdWJsZSBhX3ksIGJfeSwgdF95OyAgCiAgZG91YmxlIHgsIHksIHhkZXZpY2UsIHlkZXZpY2U7
CiAgZG91YmxlIGRldmljZV9oYWxmd2lkdGggPSAwLjUgKiBkZXZpY2VfbGluZV93aWR0aDsKICAK
ICAvKiBjb21wdXRlIGNvZWZmcyBvZiBsaW5lYXIgZXF1YXRpb24gYXQrYj0wLCBmb3IgYm90aCB4
IGFuZCB5IGNvb3JzICovCiAgYV94ID0geDAgLSAyICogeDEgKyB4MjsKICBiX3ggPSAoeDEgLSB4
Mik7CiAgYV95ID0geTAgLSAyICogeTEgKyB5MjsKICBiX3kgPSAoeTEgLSB5Mik7CiAgaWYgKGFf
eCAhPSAwLjApCQkvKiBjYW4gc29sdmUgdGhlIGxpbmVhciBlcW4uICovCiAgICB7CiAgICAgIHRf
eCA9IC1iX3ggLyBhX3g7CiAgICAgIGlmICh0X3ggPiAwLjAgJiYgdF94IDwgMS4wKSAvKiByb290
IGlzIGluIG1lYW5pbmdmdWwgcmFuZ2UgKi8KCXsKCSAgeCA9IFFVQURfQ09PUih0X3gsIHgwLCB4
MSwgeDIpOwoJICB5ID0gUVVBRF9DT09SKHRfeCwgeTAsIHkxLCB5Mik7CgkgIHhkZXZpY2UgPSBY
RF9JTlRFUk5BTCh4LHksbSk7CgkgIHlkZXZpY2UgPSBZRF9JTlRFUk5BTCh4LHksbSk7CgkgIF91
cGRhdGVfYmJveCAoYnVmcCwgeGRldmljZSArIGRldmljZV9oYWxmd2lkdGgsIHlkZXZpY2UpOwoJ
ICBfdXBkYXRlX2Jib3ggKGJ1ZnAsIHhkZXZpY2UgLSBkZXZpY2VfaGFsZndpZHRoLCB5ZGV2aWNl
KTsKCX0KICAgIH0KICBpZiAoYV95ICE9IDAuMCkJCS8qIGNhbiBzb2x2ZSB0aGUgbGluZWFyIGVx
bi4gKi8KICAgIHsKICAgICAgdF95ID0gLWJfeSAvIGFfeTsKICAgICAgaWYgKHRfeSA+IDAuMCAm
JiB0X3kgPCAxLjApIC8qIHJvb3QgaXMgaW4gbWVhbmluZ2Z1bCByYW5nZSAqLwoJewoJICB4ID0g
UVVBRF9DT09SKHRfeSwgeDAsIHgxLCB4Mik7CgkgIHkgPSBRVUFEX0NPT1IodF95LCB5MCwgeTEs
IHkyKTsKCSAgeGRldmljZSA9IFhEX0lOVEVSTkFMKHgseSxtKTsKCSAgeWRldmljZSA9IFlEX0lO
VEVSTkFMKHgseSxtKTsKCSAgX3VwZGF0ZV9iYm94IChidWZwLCB4ZGV2aWNlLCB5ZGV2aWNlICsg
ZGV2aWNlX2hhbGZ3aWR0aCk7CgkgIF91cGRhdGVfYmJveCAoYnVmcCwgeGRldmljZSwgeWRldmlj
ZSAtIGRldmljZV9oYWxmd2lkdGgpOwoJfQogICAgfQp9CgovKiBVcGRhdGUgYm91bmRpbmcgYm94
IGR1ZSB0byBkcmF3aW5nIG9mIGEgY3ViaWMgQmV6aWVyIHNlZ21lbnQuICBUaGlzCiAgIHRha2Vz
IGludG8gYWNjb3VudCBvbmx5IGV4dHJlbWFsIHgveSB2YWx1ZXMgaW4gdGhlIGludGVyaW9yIG9m
IHRoZQogICBzZWdtZW50LCBpLmUuIGl0IGRvZXNuJ3QgdGFrZSB0aGUgZW5kcG9pbnRzIGludG8g
YWNjb3VudC4gKi8KCi8qIFdBUk5JTkc6IExpa2UgX3NldF9lbGxpcHNlX2Jib3ggYWJvdmUsIHRo
aXMgZG9lcyBub3QgcHJvcGVybHkgdGFrZSBsaW5lCiAgIHdpZHRoIGludG8gYWNjb3VudC4gIFRo
ZSBib3VuZGFyeSBvZiBhIGB0aGljayBCZXppZXInIGlzIG5vdCBhIG5pY2UKICAgY3VydmUgYXQg
YWxsLiAqLwoKI2RlZmluZSBDVUJJQ19DT09SKHQseDAseDEseDIseDMpICgoKHgwKS0zKih4MSkr
MyooeDIpLSh4MykpKnQqdCp0ICsgMyooKHgxKS0yKih4MikrKHgzKSkqdCp0ICsgMyooKHgyKS0o
eDMpKSp0ICsgKHgzKSkKCnZvaWQKI2lmZGVmIF9IQVZFX1BST1RPUwpfc2V0X2JlemllcjNfYmJv
eCAocGxPdXRidWYgKmJ1ZnAsIGRvdWJsZSB4MCwgZG91YmxlIHkwLCBkb3VibGUgeDEsIGRvdWJs
ZSB5MSwgZG91YmxlIHgyLCBkb3VibGUgeTIsIGRvdWJsZSB4MywgZG91YmxlIHkzLCBkb3VibGUg
ZGV2aWNlX2xpbmVfd2lkdGgsIGRvdWJsZSBtWzZdKQojZWxzZQpfc2V0X2JlemllcjNfYmJveCAo
YnVmcCwgeDAsIHkwLCB4MSwgeTEsIHgyLCB5MiwgeDMsIHkzLCBkZXZpY2VfbGluZV93aWR0aCwg
bSkKICAgICBwbE91dGJ1ZiAqYnVmcDsKICAgICBkb3VibGUgeDAsIHkwLCB4MSwgeTEsIHgyLCB5
MiwgeDMsIHkzOwogICAgIGRvdWJsZSBkZXZpY2VfbGluZV93aWR0aDsKICAgICBkb3VibGUgbVs2
XTsKI2VuZGlmCnsKICBkb3VibGUgYV94LCBiX3gsIGNfeCwgc194LCB0X3g7CiAgZG91YmxlIGFf
eSwgYl95LCBjX3ksIHNfeSwgdF95OyAgCiAgZG91YmxlIHgsIHksIHhkZXZpY2UsIHlkZXZpY2U7
CiAgZG91YmxlIGRldmljZV9oYWxmd2lkdGggPSAwLjUgKiBkZXZpY2VfbGluZV93aWR0aDsKICBk
b3VibGUgc3FydF9kaXNjOwogIAogIC8qIGNvbXB1dGUgY29lZmZzIG9mIHF1YWQuIGVxdWF0aW9u
IGF0XjIrYnQrYz0wLCBmb3IgYm90aCB4IGFuZCB5IGNvb3JzICovCiAgYV94ID0geDAgLSAzICog
eDEgKyAzICogeDIgLSB4MzsKICBiX3ggPSAyICogKHgxIC0gMiAqIHgyICsgeDMpOwogIGNfeCA9
IHgyIC0geDM7CiAgYV95ID0geTAgLSAzICogeTEgKyAzICogeTIgLSB5MzsKICBiX3kgPSAyICog
KHkxIC0gMiAqIHkyICsgeTMpOwogIGNfeSA9IHkyIC0geTM7CiAgaWYgKGFfeCAhPSAwLjApCQkv
KiBjYW4gc29sdmUgdGhlIHF1YWRyYXRpYyAqLwogICAgewogICAgICBzcXJ0X2Rpc2MgPSBzcXJ0
IChiX3ggKiBiX3ggLSA0ICogYV94ICogY194KTsKICAgICAgc194ID0gKC0gYl94ICsgc3FydF9k
aXNjKSAvICgyICogYV94KTsKICAgICAgdF94ID0gKC0gYl94IC0gc3FydF9kaXNjKSAvICgyICog
YV94KTsKICAgICAgaWYgKHNfeCA+IDAuMCAmJiBzX3ggPCAxLjApIC8qIHJvb3QgaXMgaW4gbWVh
bmluZ2Z1bCByYW5nZSAqLwoJewoJICB4ID0gQ1VCSUNfQ09PUihzX3gsIHgwLCB4MSwgeDIsIHgz
KTsKCSAgeSA9IENVQklDX0NPT1Ioc194LCB5MCwgeTEsIHkyLCB5Myk7CgkgIHhkZXZpY2UgPSBY
RF9JTlRFUk5BTCh4LHksbSk7CgkgIHlkZXZpY2UgPSBZRF9JTlRFUk5BTCh4LHksbSk7CgkgIF91
cGRhdGVfYmJveCAoYnVmcCwgeGRldmljZSArIGRldmljZV9oYWxmd2lkdGgsIHlkZXZpY2UpOwoJ
ICBfdXBkYXRlX2Jib3ggKGJ1ZnAsIHhkZXZpY2UgLSBkZXZpY2VfaGFsZndpZHRoLCB5ZGV2aWNl
KTsKCX0KICAgICAgaWYgKHRfeCA+IDAuMCAmJiB0X3ggPCAxLjApIC8qIHJvb3QgaXMgaW4gbWVh
bmluZ2Z1bCByYW5nZSAqLwoJewoJICB4ID0gQ1VCSUNfQ09PUih0X3gsIHgwLCB4MSwgeDIsIHgz
KTsKCSAgeSA9IENVQklDX0NPT1IodF94LCB5MCwgeTEsIHkyLCB5Myk7CgkgIHhkZXZpY2UgPSBY
RF9JTlRFUk5BTCh4LHksbSk7CgkgIHlkZXZpY2UgPSBZRF9JTlRFUk5BTCh4LHksbSk7CgkgIF91
cGRhdGVfYmJveCAoYnVmcCwgeGRldmljZSArIGRldmljZV9oYWxmd2lkdGgsIHlkZXZpY2UpOwoJ
ICBfdXBkYXRlX2Jib3ggKGJ1ZnAsIHhkZXZpY2UgLSBkZXZpY2VfaGFsZndpZHRoLCB5ZGV2aWNl
KTsKCX0KICAgIH0KICBpZiAoYV95ICE9IDAuMCkJCS8qIGNhbiBzb2x2ZSB0aGUgcXVhZHJhdGlj
ICovCiAgICB7CiAgICAgIHNxcnRfZGlzYyA9IHNxcnQgKGJfeSAqIGJfeSAtIDQgKiBhX3kgKiBj
X3kpOwogICAgICBzX3kgPSAoLSBiX3kgKyBzcXJ0X2Rpc2MpIC8gKDIgKiBhX3kpOwogICAgICB0
X3kgPSAoLSBiX3kgLSBzcXJ0X2Rpc2MpIC8gKDIgKiBhX3kpOwogICAgICBpZiAoc195ID4gMC4w
ICYmIHNfeSA8IDEuMCkgLyogcm9vdCBpcyBpbiBtZWFuaW5nZnVsIHJhbmdlICovCgl7CgkgIHgg
PSBDVUJJQ19DT09SKHNfeSwgeDAsIHgxLCB4MiwgeDMpOwoJICB5ID0gQ1VCSUNfQ09PUihzX3ks
IHkwLCB5MSwgeTIsIHkzKTsKCSAgeGRldmljZSA9IFhEX0lOVEVSTkFMKHgseSxtKTsKCSAgeWRl
dmljZSA9IFlEX0lOVEVSTkFMKHgseSxtKTsKCSAgX3VwZGF0ZV9iYm94IChidWZwLCB4ZGV2aWNl
LCB5ZGV2aWNlICsgZGV2aWNlX2hhbGZ3aWR0aCk7CgkgIF91cGRhdGVfYmJveCAoYnVmcCwgeGRl
dmljZSwgeWRldmljZSAtIGRldmljZV9oYWxmd2lkdGgpOwoJfQogICAgICBpZiAodF95ID4gMC4w
ICYmIHRfeSA8IDEuMCkgLyogcm9vdCBpcyBpbiBtZWFuaW5nZnVsIHJhbmdlICovCgl7CgkgIHgg
PSBDVUJJQ19DT09SKHRfeSwgeDAsIHgxLCB4MiwgeDMpOwoJICB5ID0gQ1VCSUNfQ09PUih0X3ks
IHkwLCB5MSwgeTIsIHkzKTsKCSAgeGRldmljZSA9IFhEX0lOVEVSTkFMKHgseSxtKTsKCSAgeWRl
dmljZSA9IFlEX0lOVEVSTkFMKHgseSxtKTsKCSAgX3VwZGF0ZV9iYm94IChidWZwLCB4ZGV2aWNl
LCB5ZGV2aWNlICsgZGV2aWNlX2hhbGZ3aWR0aCk7CgkgIF91cGRhdGVfYmJveCAoYnVmcCwgeGRl
dmljZSwgeWRldmljZSAtIGRldmljZV9oYWxmd2lkdGgpOwoJfQogICAgfQp9Cg==


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]