c/5482: ICE compiling cyclone-0.2

pcarlini@unitus.it pcarlini@unitus.it
Thu Jan 24 13:48:00 GMT 2002


>Number:         5482
>Category:       c
>Synopsis:       ICE compiling cyclone-0.2
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jan 24 13:06:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Paolo Carlini
>Release:        3.1 20020123 (experimental)
>Organization:
>Environment:
i686-pc-linux-gnu (PII, glibc2.2.5)
>Description:
ICE during the compilation of execinfo.c:

gcc -save-temps -O3 -c -o i686-unknown-linux/lib/execinfo.o i686-unknown-linux/lib/execinfo.c
i686-unknown-linux/lib/execinfo.c: In function `Cyc_Execinfo_bt':
i686-unknown-linux/lib/execinfo.c:349: Internal compiler error in emit_move_insn, at expr.c:2746
>How-To-Repeat:

>Fix:

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

IyAxICJpNjg2LXVua25vd24tbGludXgvbGliL2V4ZWNpbmZvLmMiCiMgMSAiPGJ1aWx0LWluPiIK
IyAxICI8Y29tbWFuZCBsaW5lPiIKIyAxICJpNjg2LXVua25vd24tbGludXgvbGliL2V4ZWNpbmZv
LmMiCgoKCgoKCgojIDEgIi91c3IvaW5jbHVkZS9zZXRqbXAuaCIgMSAzCiMgMjYgIi91c3IvaW5j
bHVkZS9zZXRqbXAuaCIgMwojIDEgIi91c3IvaW5jbHVkZS9mZWF0dXJlcy5oIiAxIDMKIyAyODMg
Ii91c3IvaW5jbHVkZS9mZWF0dXJlcy5oIiAzCiMgMSAiL3Vzci9pbmNsdWRlL3N5cy9jZGVmcy5o
IiAxIDMKIyAyODQgIi91c3IvaW5jbHVkZS9mZWF0dXJlcy5oIiAyIDMKIyAzMTIgIi91c3IvaW5j
bHVkZS9mZWF0dXJlcy5oIiAzCiMgMSAiL3Vzci9pbmNsdWRlL2dudS9zdHVicy5oIiAxIDMKIyAz
MTMgIi91c3IvaW5jbHVkZS9mZWF0dXJlcy5oIiAyIDMKIyAyNyAiL3Vzci9pbmNsdWRlL3NldGpt
cC5oIiAyIDMKCgoKIyAxICIvdXNyL2luY2x1ZGUvYml0cy9zZXRqbXAuaCIgMSAzCiMgMzYgIi91
c3IvaW5jbHVkZS9iaXRzL3NldGptcC5oIiAzCnR5cGVkZWYgaW50IF9fam1wX2J1Zls2XTsKIyAz
MSAiL3Vzci9pbmNsdWRlL3NldGptcC5oIiAyIDMKIyAxICIvdXNyL2luY2x1ZGUvYml0cy9zaWdz
ZXQuaCIgMSAzCiMgMjMgIi91c3IvaW5jbHVkZS9iaXRzL3NpZ3NldC5oIiAzCnR5cGVkZWYgaW50
IF9fc2lnX2F0b21pY190OwoKCgoKdHlwZWRlZiBzdHJ1Y3QKICB7CiAgICB1bnNpZ25lZCBsb25n
IGludCBfX3ZhbFsoMTAyNCAvICg4ICogc2l6ZW9mICh1bnNpZ25lZCBsb25nIGludCkpKV07CiAg
fSBfX3NpZ3NldF90OwojIDMyICIvdXNyL2luY2x1ZGUvc2V0am1wLmgiIDIgMwoKCnR5cGVkZWYg
c3RydWN0IF9fam1wX2J1Zl90YWcKICB7CgoKCgogICAgX19qbXBfYnVmIF9fam1wYnVmOwogICAg
aW50IF9fbWFza193YXNfc2F2ZWQ7CiAgICBfX3NpZ3NldF90IF9fc2F2ZWRfbWFzazsKICB9IGpt
cF9idWZbMV07CgoKCgpleHRlcm4gaW50IHNldGptcCAoam1wX2J1ZiBfX2VudikgOwoKCgpleHRl
cm4gaW50IF9zZXRqbXAgKGptcF9idWYgX19lbnYpIDsKCgoKCmV4dGVybiBpbnQgX19zaWdzZXRq
bXAgKGptcF9idWYgX19lbnYsIGludCBfX3NhdmVtYXNrKSA7CiMgNzMgIi91c3IvaW5jbHVkZS9z
ZXRqbXAuaCIgMwpleHRlcm4gdm9pZCBsb25nam1wIChqbXBfYnVmIF9fZW52LCBpbnQgX192YWwp
CiAgICAgX19hdHRyaWJ1dGVfXyAoKF9fbm9yZXR1cm5fXykpOwoKCgoKZXh0ZXJuIHZvaWQgX2xv
bmdqbXAgKGptcF9idWYgX19lbnYsIGludCBfX3ZhbCkKICAgICBfX2F0dHJpYnV0ZV9fICgoX19u
b3JldHVybl9fKSk7CgoKCgoKCgp0eXBlZGVmIGptcF9idWYgc2lnam1wX2J1ZjsKIyA5OCAiL3Vz
ci9pbmNsdWRlL3NldGptcC5oIiAzCmV4dGVybiB2b2lkIHNpZ2xvbmdqbXAgKHNpZ2ptcF9idWYg
X19lbnYsIGludCBfX3ZhbCkKICAgICBfX2F0dHJpYnV0ZV9fICgoX19ub3JldHVybl9fKSk7CgoK
CiMgOSAiaTY4Ni11bmtub3duLWxpbnV4L2xpYi9leGVjaW5mby5jIiAyCiMgMjIgImk2ODYtdW5r
bm93bi1saW51eC9saWIvZXhlY2luZm8uYyIKc3RydWN0IF90YWdnZWRfYXJyIHsKICB1bnNpZ25l
ZCBjaGFyICpjdXJyOwogIHVuc2lnbmVkIGNoYXIgKmJhc2U7CiAgdW5zaWduZWQgY2hhciAqbGFz
dF9wbHVzX29uZTsKfTsKc3RydWN0IF90YWdnZWRfc3RyaW5nIHsKICB1bnNpZ25lZCBjaGFyICpj
dXJyOwogIHVuc2lnbmVkIGNoYXIgKmJhc2U7CiAgdW5zaWduZWQgY2hhciAqbGFzdF9wbHVzX29u
ZTsKfTsKCgpzdHJ1Y3QgX3h0dW5pb25fc3RydWN0IHsgY2hhciAqdGFnOyB9OwoKCgoKc3RydWN0
IF9SdW50aW1lU3RhY2sgewogIGludCB0YWc7CiAgc3RydWN0IF9SdW50aW1lU3RhY2sgKm5leHQ7
Cn07CgoKc3RydWN0IF9SZWdpb25QYWdlIHsKCgoKCiAgc3RydWN0IF9SZWdpb25QYWdlICpuZXh0
OwogIGNoYXIgZGF0YVswXTsKfTsKCnN0cnVjdCBfUmVnaW9uSGFuZGxlIHsKICBzdHJ1Y3QgX1J1
bnRpbWVTdGFjayBzOwogIHN0cnVjdCBfUmVnaW9uUGFnZSAqY3VycjsKICBjaGFyICpvZmZzZXQ7
CiAgY2hhciAqbGFzdF9wbHVzX29uZTsKCgoKfTsKCmV4dGVybiBzdHJ1Y3QgX1JlZ2lvbkhhbmRs
ZSBfbmV3X3JlZ2lvbihjb25zdCBjaGFyICopOwoKZXh0ZXJuIHZvaWQgKiBfcmVnaW9uX21hbGxv
YyhzdHJ1Y3QgX1JlZ2lvbkhhbmRsZSAqLCB1bnNpZ25lZCBpbnQpOwpleHRlcm4gdm9pZCBfZnJl
ZV9yZWdpb24oc3RydWN0IF9SZWdpb25IYW5kbGUgKik7CgoKc3RydWN0IF9oYW5kbGVyX2NvbnMg
ewogIHN0cnVjdCBfUnVudGltZVN0YWNrIHM7CiAgam1wX2J1ZiBoYW5kbGVyOwp9OwpleHRlcm4g
dm9pZCBfcHVzaF9oYW5kbGVyKHN0cnVjdCBfaGFuZGxlcl9jb25zICopOwpleHRlcm4gdm9pZCBf
cHVzaF9yZWdpb24oc3RydWN0IF9SZWdpb25IYW5kbGUgKik7CmV4dGVybiB2b2lkIF9ucG9wX2hh
bmRsZXIoaW50KTsKZXh0ZXJuIHZvaWQgX3BvcF9oYW5kbGVyKCk7CmV4dGVybiB2b2lkIF9wb3Bf
cmVnaW9uKCk7CgoKZXh0ZXJuIGludCBfdGhyb3dfbnVsbCgpOwpleHRlcm4gaW50IF90aHJvd19h
cnJheWJvdW5kcygpOwpleHRlcm4gaW50IF90aHJvd19iYWRhbGxvYygpOwpleHRlcm4gaW50IF90
aHJvdyh2b2lkICogZSk7CgoKZXh0ZXJuIHN0cnVjdCBfeHR1bmlvbl9zdHJ1Y3QgKl9leG5fdGhy
b3duOwoKCmV4dGVybiBzdHJ1Y3QgX3h0dW5pb25fc3RydWN0IEN5Y19OdWxsX0V4Y2VwdGlvbl9z
dHJ1Y3Q7CmV4dGVybiBzdHJ1Y3QgX3h0dW5pb25fc3RydWN0ICogQ3ljX051bGxfRXhjZXB0aW9u
OwpleHRlcm4gc3RydWN0IF94dHVuaW9uX3N0cnVjdCBDeWNfQXJyYXlfYm91bmRzX3N0cnVjdDsK
ZXh0ZXJuIHN0cnVjdCBfeHR1bmlvbl9zdHJ1Y3QgKiBDeWNfQXJyYXlfYm91bmRzOwpleHRlcm4g
c3RydWN0IF94dHVuaW9uX3N0cnVjdCBDeWNfTWF0Y2hfRXhjZXB0aW9uX3N0cnVjdDsKZXh0ZXJu
IHN0cnVjdCBfeHR1bmlvbl9zdHJ1Y3QgKiBDeWNfTWF0Y2hfRXhjZXB0aW9uOwpleHRlcm4gc3Ry
dWN0IF94dHVuaW9uX3N0cnVjdCBDeWNfQmFkX2FsbG9jX3N0cnVjdDsKZXh0ZXJuIHN0cnVjdCBf
eHR1bmlvbl9zdHJ1Y3QgKiBDeWNfQmFkX2FsbG9jOwoKCnN0YXRpYyBpbmxpbmUKdm9pZCAqIF9j
aGVja19udWxsKHZvaWQgKiBwdHIpIHsKCiAgaWYoIXB0cikKICAgIF90aHJvd19udWxsKCk7Cgog
IHJldHVybiBwdHI7Cn0Kc3RhdGljIGlubGluZQpjaGFyICogX2NoZWNrX2tub3duX3N1YnNjcmlw
dF9udWxsKHZvaWQgKiBwdHIsIHVuc2lnbmVkIGJvdW5kLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGVsdF9zeiwgdW5zaWduZWQgaW5kZXgpIHsKCiAgaWYoIXB0
cikKICAgIF90aHJvd19udWxsKCk7CgoKICBpZihpbmRleCA+PSBib3VuZCkKICAgIF90aHJvd19h
cnJheWJvdW5kcygpOwoKICByZXR1cm4gKChjaGFyICopcHRyKSArIGVsdF9zeippbmRleDsKfQpz
dGF0aWMgaW5saW5lCnVuc2lnbmVkIF9jaGVja19rbm93bl9zdWJzY3JpcHRfbm90bnVsbCh1bnNp
Z25lZCBib3VuZCwgdW5zaWduZWQgaW5kZXgpIHsKCiAgaWYoaW5kZXggPj0gYm91bmQpCiAgICBf
dGhyb3dfYXJyYXlib3VuZHMoKTsKCiAgcmV0dXJuIGluZGV4Owp9CnN0YXRpYyBpbmxpbmUKY2hh
ciAqIF9jaGVja191bmtub3duX3N1YnNjcmlwdChzdHJ1Y3QgX3RhZ2dlZF9hcnIgYXJyLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGVsdF9zeiwgdW5zaWduZWQgaW5k
ZXgpIHsKCgoKICB1bnNpZ25lZCBjaGFyICogYW5zID0gYXJyLmN1cnIgKyBlbHRfc3ogKiBpbmRl
eDsKCgoKICBpZighYXJyLmJhc2UpCiAgICBfdGhyb3dfbnVsbCgpOwoKCiAgaWYoYW5zIDwgYXJy
LmJhc2UgfHwgYW5zID49IGFyci5sYXN0X3BsdXNfb25lKQogICAgX3Rocm93X2FycmF5Ym91bmRz
KCk7CgogIHJldHVybiBhbnM7Cn0Kc3RhdGljIGlubGluZQpzdHJ1Y3QgX3RhZ2dlZF9hcnIgX3Rh
Z19hcnIoY29uc3Qgdm9pZCAqIGN1cnIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp
Z25lZCBlbHRfc3osIHVuc2lnbmVkIG51bV9lbHRzKSB7CgogIHN0cnVjdCBfdGFnZ2VkX2FyciBh
bnM7CiAgYW5zLmJhc2UgPSAodm9pZCAqKWN1cnI7CiAgYW5zLmN1cnIgPSAodm9pZCAqKWN1cnI7
CiAgYW5zLmxhc3RfcGx1c19vbmUgPSAoKGNoYXIgKiljdXJyKSArIGVsdF9zeiAqIG51bV9lbHRz
OwogIHJldHVybiBhbnM7Cn0Kc3RhdGljIGlubGluZQpzdHJ1Y3QgX3RhZ2dlZF9hcnIgKiBfaW5p
dF90YWdfYXJyKHN0cnVjdCBfdGFnZ2VkX2FyciAqIGFycl9wdHIsIHZvaWQgKiBhcnIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgZWx0X3N6LCB1bnNpZ25lZCBu
dW1fZWx0cykgewoKICBhcnJfcHRyLT5iYXNlID0gYXJyX3B0ci0+Y3VyciA9IGFycjsKICBhcnJf
cHRyLT5sYXN0X3BsdXNfb25lID0gKChjaGFyICopYXJyKSArIGVsdF9zeiAqIG51bV9lbHRzOwog
IHJldHVybiBhcnJfcHRyOwp9CgpzdGF0aWMgaW5saW5lCmNoYXIgKiBfdW50YWdfYXJyKHN0cnVj
dCBfdGFnZ2VkX2FyciBhcnIsIHVuc2lnbmVkIGVsdF9zeiwgdW5zaWduZWQgbnVtX2VsdHMpIHsK
CgoKCiAgaWYoYXJyLmN1cnIgPCBhcnIuYmFzZSB8fCBhcnIuY3VyciArIGVsdF9zeiAqIG51bV9l
bHRzID4gYXJyLmxhc3RfcGx1c19vbmUpCiAgICBfdGhyb3dfYXJyYXlib3VuZHMoKTsKCiAgcmV0
dXJuIGFyci5jdXJyOwp9CnN0YXRpYyBpbmxpbmUKdW5zaWduZWQgX2dldF9hcnJfc2l6ZShzdHJ1
Y3QgX3RhZ2dlZF9hcnIgYXJyLCB1bnNpZ25lZCBlbHRfc3opIHsKICByZXR1cm4gKGFyci5sYXN0
X3BsdXNfb25lIC0gYXJyLmN1cnIpIC8gZWx0X3N6Owp9CnN0YXRpYyBpbmxpbmUKc3RydWN0IF90
YWdnZWRfYXJyIF90YWdnZWRfYXJyX3BsdXMoc3RydWN0IF90YWdnZWRfYXJyIGFyciwgdW5zaWdu
ZWQgZWx0X3N6LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgY2hhbmdl
KSB7CiAgc3RydWN0IF90YWdnZWRfYXJyIGFucyA9IGFycjsKICBhbnMuY3VyciArPSAoKGludCll
bHRfc3opKmNoYW5nZTsKICByZXR1cm4gYW5zOwp9CnN0YXRpYyBpbmxpbmUKc3RydWN0IF90YWdn
ZWRfYXJyIF90YWdnZWRfYXJyX2lucGxhY2VfcGx1cyhzdHJ1Y3QgX3RhZ2dlZF9hcnIgKiBhcnJf
cHRyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGVsdF9zeiwgaW50IGNoYW5nZSkgewogIGFycl9wdHItPmN1cnIgKz0gKChpbnQpZWx0X3N6KSpj
aGFuZ2U7CiAgcmV0dXJuICphcnJfcHRyOwp9CnN0YXRpYyBpbmxpbmUKc3RydWN0IF90YWdnZWRf
YXJyIF90YWdnZWRfYXJyX2lucGxhY2VfcGx1c19wb3N0KHN0cnVjdCBfdGFnZ2VkX2FyciAqIGFy
cl9wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBlbHRfc3osIGludCBjaGFuZ2UpIHsKICBzdHJ1Y3QgX3RhZ2dlZF9hcnIgYW5zID0g
KmFycl9wdHI7CiAgYXJyX3B0ci0+Y3VyciArPSAoKGludCllbHRfc3opKmNoYW5nZTsKICByZXR1
cm4gYW5zOwp9CgoKZXh0ZXJuIHZvaWQgKiBHQ19tYWxsb2MoaW50KTsKZXh0ZXJuIHZvaWQgKiBH
Q19tYWxsb2NfYXRvbWljKGludCk7CgpzdGF0aWMgaW5saW5lIHZvaWQgKiBfY3ljYWxsb2MoaW50
IG4pIHsKICB2b2lkICogYW5zID0gR0NfbWFsbG9jKG4pOwogIGlmKCFhbnMpCiAgICBfdGhyb3df
YmFkYWxsb2MoKTsKICByZXR1cm4gYW5zOwp9CnN0YXRpYyBpbmxpbmUgdm9pZCAqIF9jeWNhbGxv
Y19hdG9taWMoaW50IG4pIHsKICB2b2lkICogYW5zID0gR0NfbWFsbG9jKG4pOwogIGlmKCFhbnMp
CiAgICBfdGhyb3dfYmFkYWxsb2MoKTsKICByZXR1cm4gYW5zOwp9CgpzdGF0aWMgaW5saW5lIHVu
c2lnbmVkIGludCBfY2hlY2tfdGltZXModW5zaWduZWQgaW50IHgsIHVuc2lnbmVkIGludCB5KSB7
CiAgdW5zaWduZWQgbG9uZyBsb25nIHdob2xlX2FucyA9CiAgICAoKHVuc2lnbmVkIGxvbmcgbG9u
Zyl4KSooKHVuc2lnbmVkIGxvbmcgbG9uZyl5KTsKICB1bnNpZ25lZCBpbnQgd29yZF9hbnMgPSAo
dW5zaWduZWQgaW50KXdob2xlX2FuczsKICBpZih3b3JkX2FucyA8IHdob2xlX2FucyB8fCB3b3Jk
X2FucyA+ICgxIDw8IDI4KSkKICAgIF90aHJvd19iYWRhbGxvYygpOwogIHJldHVybiB3b3JkX2Fu
czsKfQojIDI0OCAiaTY4Ni11bmtub3duLWxpbnV4L2xpYi9leGVjaW5mby5jIgogZXh0ZXJuIHZv
aWQgZXhpdCggaW50KTsgZXh0ZXJuIHZvaWQqIGFib3J0KCk7IHN0cnVjdCBDeWNfQ29yZV9PcHR7
IHZvaWQqIHY7IH0gOwpleHRlcm4gdW5zaWduZWQgY2hhciBDeWNfQ29yZV9JbnZhbGlkX2FyZ3Vt
ZW50WyAyMXVdOyBzdHJ1Y3QgQ3ljX0NvcmVfSW52YWxpZF9hcmd1bWVudF9zdHJ1Y3R7CnVuc2ln
bmVkIGNoYXIqIHRhZzsgc3RydWN0IF90YWdnZWRfYXJyIGYxOyB9IDsgZXh0ZXJuIHVuc2lnbmVk
IGNoYXIgQ3ljX0NvcmVfRmFpbHVyZVsKMTJ1XTsgc3RydWN0IEN5Y19Db3JlX0ZhaWx1cmVfc3Ry
dWN0eyB1bnNpZ25lZCBjaGFyKiB0YWc7IHN0cnVjdCBfdGFnZ2VkX2FyciBmMTsKfSA7IGV4dGVy
biB1bnNpZ25lZCBjaGFyIEN5Y19Db3JlX0ltcG9zc2libGVbIDE1dV07IHN0cnVjdCBDeWNfQ29y
ZV9JbXBvc3NpYmxlX3N0cnVjdHsKdW5zaWduZWQgY2hhciogdGFnOyBzdHJ1Y3QgX3RhZ2dlZF9h
cnIgZjE7IH0gOyBleHRlcm4gdW5zaWduZWQgY2hhciBDeWNfQ29yZV9Ob3RfZm91bmRbCjE0dV07
IGV4dGVybiB1bnNpZ25lZCBjaGFyIEN5Y19Db3JlX1VucmVhY2hhYmxlWyAxNnVdOyBzdHJ1Y3Qg
Q3ljX0NvcmVfVW5yZWFjaGFibGVfc3RydWN0ewp1bnNpZ25lZCBjaGFyKiB0YWc7IHN0cnVjdCBf
dGFnZ2VkX2FyciBmMTsgfSA7IGV4dGVybiB1bnNpZ25lZCBjaGFyKgpzdHJpbmdfdG9fQ3N0cmlu
Zyggc3RydWN0IF90YWdnZWRfYXJyKTsgZXh0ZXJuIHVuc2lnbmVkIGNoYXIqIHVuZGVybHlpbmdf
Q3N0cmluZygKc3RydWN0IF90YWdnZWRfYXJyKTsgZXh0ZXJuIHN0cnVjdCBfdGFnZ2VkX2FyciBD
c3RyaW5nX3RvX3N0cmluZyggdW5zaWduZWQgY2hhciopOwpleHRlcm4gc3RydWN0IF90YWdnZWRf
YXJyIHdyYXBfQ3N0cmluZ19hc19zdHJpbmcoIHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBpbnQp
OwpleHRlcm4gc3RydWN0IF90YWdnZWRfYXJyIG50Q3NsX3RvX250c2woIHVuc2lnbmVkIGNoYXIq
Kik7IGludCBDeWNfRXhlY2luZm9fYmFja3RyYWNlKApzdHJ1Y3QgX3RhZ2dlZF9hcnIsIGludCk7
IGludCBDeWNfRXhlY2luZm9fYnQoKTsgc3RydWN0IEN5Y19Dc3RkaW9fX19zRklMRTsKc3RydWN0
IEN5Y19TdGRfX19zRklMRTsgZXh0ZXJuIHN0cnVjdCBDeWNfU3RkX19fc0ZJTEUqIEN5Y19TdGRf
c3Rkb3V0OyBleHRlcm4KaW50IEN5Y19TdGRfZmNsb3NlKCBzdHJ1Y3QgQ3ljX1N0ZF9fX3NGSUxF
Kik7IGV4dGVybiBpbnQgQ3ljX1N0ZF9mZmx1c2goIHN0cnVjdApDeWNfU3RkX19fc0ZJTEUqKTsg
ZXh0ZXJuIGludCBDeWNfU3RkX2dldGMoIHN0cnVjdCBDeWNfU3RkX19fc0ZJTEUqIF9fc3RyZWFt
KTsKZXh0ZXJuIGludCBDeWNfU3RkX3B1dGMoIGludCBfX2MsIHN0cnVjdCBDeWNfU3RkX19fc0ZJ
TEUqIF9fc3RyZWFtKTsgZXh0ZXJuCnN0cnVjdCBDeWNfU3RkX19fc0ZJTEUqIEN5Y19TdGRfZmRv
cGVuKCBpbnQgX19mZCwgc3RydWN0IF90YWdnZWRfYXJyIF9fbW9kZXMpOwpleHRlcm4gdW5zaWdu
ZWQgY2hhciBDeWNfU3RkX0ZpbGVDbG9zZUVycm9yWyAxOXVdOyBleHRlcm4gdW5zaWduZWQgY2hh
ciBDeWNfU3RkX0ZpbGVPcGVuRXJyb3JbCjE4dV07IHN0cnVjdCBDeWNfU3RkX0ZpbGVPcGVuRXJy
b3Jfc3RydWN0eyB1bnNpZ25lZCBjaGFyKiB0YWc7IHN0cnVjdApfdGFnZ2VkX2FyciBmMTsgfSA7
IHN0YXRpYyBjb25zdCBpbnQgQ3ljX1N0ZF9TdHJpbmdfcGE9IDA7IHN0cnVjdCBDeWNfU3RkX1N0
cmluZ19wYV9zdHJ1Y3R7CmludCB0YWc7IHN0cnVjdCBfdGFnZ2VkX2FyciBmMTsgfSA7IHN0YXRp
YyBjb25zdCBpbnQgQ3ljX1N0ZF9JbnRfcGE9IDE7IHN0cnVjdApDeWNfU3RkX0ludF9wYV9zdHJ1
Y3R7IGludCB0YWc7IHVuc2lnbmVkIGludCBmMTsgfSA7IHN0YXRpYyBjb25zdCBpbnQgQ3ljX1N0
ZF9Eb3VibGVfcGE9CjI7IHN0cnVjdCBDeWNfU3RkX0RvdWJsZV9wYV9zdHJ1Y3R7IGludCB0YWc7
IGRvdWJsZSBmMTsgfSA7IHN0YXRpYyBjb25zdCBpbnQgQ3ljX1N0ZF9TaG9ydFB0cl9wYT0KMzsg
c3RydWN0IEN5Y19TdGRfU2hvcnRQdHJfcGFfc3RydWN0eyBpbnQgdGFnOyBzaG9ydCogZjE7IH0g
OyBzdGF0aWMgY29uc3QgaW50CkN5Y19TdGRfSW50UHRyX3BhPSA0OyBzdHJ1Y3QgQ3ljX1N0ZF9J
bnRQdHJfcGFfc3RydWN0eyBpbnQgdGFnOyB1bnNpZ25lZCBpbnQqIGYxOwp9IDsgZXh0ZXJuIGlu
dCBDeWNfU3RkX2ZwcmludGYoIHN0cnVjdCBDeWNfU3RkX19fc0ZJTEUqLCBzdHJ1Y3QgX3RhZ2dl
ZF9hcnIgZm10LApzdHJ1Y3QgX3RhZ2dlZF9hcnIpOyBleHRlcm4gaW50IEN5Y19TdGRfcHJpbnRm
KCBzdHJ1Y3QgX3RhZ2dlZF9hcnIgZm10LCBzdHJ1Y3QKX3RhZ2dlZF9hcnIpOyBleHRlcm4gc3Ry
dWN0IF90YWdnZWRfYXJyIEN5Y19TdGRfYXByaW50Ziggc3RydWN0IF90YWdnZWRfYXJyIGZtdCwK
c3RydWN0IF90YWdnZWRfYXJyKTsgc3RhdGljIGNvbnN0IGludCBDeWNfU3RkX1Nob3J0UHRyX3Nh
PSAwOyBzdHJ1Y3QgQ3ljX1N0ZF9TaG9ydFB0cl9zYV9zdHJ1Y3R7CmludCB0YWc7IHNob3J0KiBm
MTsgfSA7IHN0YXRpYyBjb25zdCBpbnQgQ3ljX1N0ZF9VU2hvcnRQdHJfc2E9IDE7IHN0cnVjdCBD
eWNfU3RkX1VTaG9ydFB0cl9zYV9zdHJ1Y3R7CmludCB0YWc7IHVuc2lnbmVkIHNob3J0KiBmMTsg
fSA7IHN0YXRpYyBjb25zdCBpbnQgQ3ljX1N0ZF9JbnRQdHJfc2E9IDI7IHN0cnVjdApDeWNfU3Rk
X0ludFB0cl9zYV9zdHJ1Y3R7IGludCB0YWc7IGludCogZjE7IH0gOyBzdGF0aWMgY29uc3QgaW50
IEN5Y19TdGRfVUludFB0cl9zYT0KMzsgc3RydWN0IEN5Y19TdGRfVUludFB0cl9zYV9zdHJ1Y3R7
IGludCB0YWc7IHVuc2lnbmVkIGludCogZjE7IH0gOyBzdGF0aWMgY29uc3QKaW50IEN5Y19TdGRf
U3RyaW5nUHRyX3NhPSA0OyBzdHJ1Y3QgQ3ljX1N0ZF9TdHJpbmdQdHJfc2Ffc3RydWN0eyBpbnQg
dGFnOyBzdHJ1Y3QKX3RhZ2dlZF9hcnIgZjE7IH0gOyBzdGF0aWMgY29uc3QgaW50IEN5Y19TdGRf
RG91YmxlUHRyX3NhPSA1OyBzdHJ1Y3QgQ3ljX1N0ZF9Eb3VibGVQdHJfc2Ffc3RydWN0ewppbnQg
dGFnOyBkb3VibGUqIGYxOyB9IDsgc3RhdGljIGNvbnN0IGludCBDeWNfU3RkX0Zsb2F0UHRyX3Nh
PSA2OyBzdHJ1Y3QgQ3ljX1N0ZF9GbG9hdFB0cl9zYV9zdHJ1Y3R7CmludCB0YWc7IGZsb2F0KiBm
MTsgfSA7IHN0cnVjdCBDeWNfU3RkX3RpbWV2YWx7IGludCB0dl9zZWM7IGludCB0dl91c2VjOyB9
IDsKc3RydWN0IEN5Y19TdGRfdGltZXpvbmV7IGludCB0el9taW51dGVzd2VzdDsgaW50IHR6X2Rz
dHRpbWU7IH0gOyBleHRlcm4gaW50CmdldHRpbWVvZmRheSggc3RydWN0IEN5Y19TdGRfdGltZXZh
bCogX19wLCBzdHJ1Y3QgQ3ljX1N0ZF90aW1lem9uZSogX196KTsgc3RydWN0CkN5Y19TdGRfaXRp
bWVydmFseyBzdHJ1Y3QgQ3ljX1N0ZF90aW1ldmFsIGl0X2ludGVydmFsOyBzdHJ1Y3QgQ3ljX1N0
ZF90aW1ldmFsCml0X3ZhbHVlOyB9IDsgZXh0ZXJuIGludCBnZXRpdGltZXIoIGludCwgc3RydWN0
IEN5Y19TdGRfaXRpbWVydmFsKik7IGV4dGVybiBpbnQKc2V0aXRpbWVyKCBpbnQsIGNvbnN0IHN0
cnVjdCBDeWNfU3RkX2l0aW1lcnZhbCosIHN0cnVjdCBDeWNfU3RkX2l0aW1lcnZhbCopOwp0eXBl
ZGVmIHN0cnVjdCB7IHVuc2lnbmVkIGludCBfX3ZhbFsgNjR1XTsgfSBDeWNfU3RkX19fc2lnc2V0
X3Q7IHR5cGVkZWYgQ3ljX1N0ZF9fX3NpZ3NldF90CkN5Y19TdGRfc2lnc2V0X3Q7IHN0cnVjdCBD
eWNfU3RkX3RpbWVzcGVjeyBpbnQgdHZfc2VjOyBpbnQgdHZfbnNlYzsgfSA7IHN0cnVjdApDeWNf
U3RkX3RpbWV2YWw7IHN0cnVjdCBDeWNfU3RkX19fZmRfc2V0eyBpbnQgX19mZHNfYml0c1sgMzJ1
XTsgfSA7IGV4dGVybiBpbnQKc2VsZWN0KCBpbnQsIHN0cnVjdCBDeWNfU3RkX19fZmRfc2V0Kiwg
c3RydWN0IEN5Y19TdGRfX19mZF9zZXQqLCBzdHJ1Y3QgQ3ljX1N0ZF9fX2ZkX3NldCosCnN0cnVj
dCBDeWNfU3RkX3RpbWV2YWwqKTsgc3RydWN0IEN5Y19TdGRfcmxpbWl0eyB1bnNpZ25lZCBpbnQg
cmxpbV9jdXI7CnVuc2lnbmVkIGludCBybGltX21heDsgfSA7IHN0cnVjdCBDeWNfU3RkX3J1c2Fn
ZXsgc3RydWN0IEN5Y19TdGRfdGltZXZhbApydV91dGltZTsgc3RydWN0IEN5Y19TdGRfdGltZXZh
bCBydV9zdGltZTsgaW50IHJ1X21heHJzczsgaW50IHJ1X2l4cnNzOyBpbnQKcnVfaWRyc3M7IGlu
dCBydV9pc3JzczsgaW50IHJ1X21pbmZsdDsgaW50IHJ1X21hamZsdDsgaW50IHJ1X25zd2FwOyBp
bnQKcnVfaW5ibG9jazsgaW50IHJ1X291YmxvY2s7IGludCBydV9tc2dzbmQ7IGludCBydV9tc2dy
Y3Y7IGludCBydV9uc2lnbmFsczsgaW50CnJ1X252Y3N3OyBpbnQgcnVfbml2Y3N3OyB9IDsgZXh0
ZXJuIGludCBnZXRybGltaXQoIGludCByZXNvdXJjZSwgc3RydWN0IEN5Y19TdGRfcmxpbWl0Kgpy
bGltKTsgZXh0ZXJuIGludCBzZXRybGltaXQoIGludCByZXNvdXJjZSwgY29uc3Qgc3RydWN0IEN5
Y19TdGRfcmxpbWl0KiBybGltKTsKZXh0ZXJuIGludCBnZXRydXNhZ2UoIGludCB3aG8sIHN0cnVj
dCBDeWNfU3RkX3J1c2FnZSogcnVzYWdlKTsgZXh0ZXJuIGludCB3YWl0KAppbnQqIHN0YXR1cyk7
IGV4dGVybiBpbnQgd2FpdHBpZCggaW50IHBpZCwgaW50KiBzdGF0dXMsIGludCBvcHRpb25zKTsg
ZXh0ZXJuIGludAp3YWl0MyggaW50KiBzdGF0dXMsIGludCBvcHRpb25zLCBzdHJ1Y3QgQ3ljX1N0
ZF9ydXNhZ2UqIHJ1c2FnZSk7IHZvaWQoKiBDeWNfU3RkX3NpZ25hbCgKaW50IHNpZywgdm9pZCgq
IGZ1bmMpKCBpbnQpKSkoIGludCk7IGV4dGVybiBpbnQgcmFpc2UoIGludCBzaWcpOyBleHRlcm4g
aW50IGtpbGwoCmludCwgaW50KTsgc3RydWN0IEN5Y19TdGRfb3B0aW9ueyBzdHJ1Y3QgX3RhZ2dl
ZF9hcnIgbmFtZTsgaW50IGhhc19hcmc7IGludCoKZmxhZzsgaW50IHZhbDsgfSA7IGV4dGVybiB1
bnNpZ25lZCBpbnQgYWxhcm0oIHVuc2lnbmVkIGludCBzZWNvbmRzKTsgZXh0ZXJuIGludApjbG9z
ZSggaW50KTsgZXh0ZXJuIHZvaWQgX2V4aXQoIGludCk7IGV4dGVybiBpbnQgZ2V0cGlkKCk7IGV4
dGVybiBpbnQgZ2V0cHBpZCgpOwpleHRlcm4gaW50IGZvcmsoKTsgZXh0ZXJuIGludCBmY2hkaXIo
IGludCk7IGV4dGVybiBpbnQgZmNob3duKCBpbnQsIHVuc2lnbmVkIGludCwKdW5zaWduZWQgaW50
KTsgZXh0ZXJuIGludCBmc3luYyggaW50KTsgZXh0ZXJuIGludCBmdHJ1bmNhdGUoIGludCwgaW50
KTsgZXh0ZXJuCmludCBkdXAoIGludCk7IGV4dGVybiBpbnQgZHVwMiggaW50LCBpbnQpOyBleHRl
cm4gaW50IHNldHNpZCgpOyBleHRlcm4gaW50CmdldHNpZCggaW50IHBpZCk7IGV4dGVybiB1bnNp
Z25lZCBpbnQgZ2V0dWlkKCk7IGV4dGVybiBpbnQgc2V0dWlkKCB1bnNpZ25lZCBpbnQKdWlkKTsg
ZXh0ZXJuIHVuc2lnbmVkIGludCBnZXRldWlkKCk7IGV4dGVybiBpbnQgc2V0ZXVpZCggdW5zaWdu
ZWQgaW50IGV1aWQpOwpleHRlcm4gdW5zaWduZWQgaW50IGdldGdpZCgpOyBleHRlcm4gaW50IHNl
dGdpZCggdW5zaWduZWQgaW50IGdpZCk7IGV4dGVybgp1bnNpZ25lZCBpbnQgZ2V0ZWdpZCgpOyBl
eHRlcm4gaW50IHNldGVnaWQoIHVuc2lnbmVkIGludCBlZ2lkKTsgZXh0ZXJuIGludCBuaWNlKApp
bnQpOyBleHRlcm4gaW50IHBhdXNlKCk7IGV4dGVybiBpbnQgcGlwZSggaW50KiBmaWxlZGVzKTsg
ZXh0ZXJuIGludCBsc2VlayggaW50CmZpbGVkZXMsIGludCBvZmZzZXQsIGludCB3aGVuY2UpOyBl
eHRlcm4gdW5zaWduZWQgaW50IHNsZWVwKCB1bnNpZ25lZCBpbnQpOwpleHRlcm4gaW50IGlzYXR0
eSggaW50KTsgZXh0ZXJuIGludCBkYWVtb24oIGludCBub2NoZGlyLCBpbnQgbm9jbG9zZSk7IGlu
dCBDeWNfU3RkX2FjY2VzcygKc3RydWN0IF90YWdnZWRfYXJyLCBpbnQpOyBpbnQgQ3ljX1N0ZF9j
aGRpciggc3RydWN0IF90YWdnZWRfYXJyKTsgaW50IEN5Y19TdGRfY2hvd24oCnN0cnVjdCBfdGFn
Z2VkX2FyciwgdW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQpOyBzdHJ1Y3QgX3RhZ2dlZF9hcnIg
Q3ljX1N0ZF9nZXRjd2QoCnN0cnVjdCBfdGFnZ2VkX2FyciBidWYsIHVuc2lnbmVkIGludCBzaXpl
KTsgaW50IEN5Y19TdGRfZXhlY2woIHN0cnVjdApfdGFnZ2VkX2FyciBwYXRoLCBzdHJ1Y3QgX3Rh
Z2dlZF9hcnIgYXJnMCwgc3RydWN0IF90YWdnZWRfYXJyIGFyZ3YpOyBpbnQgQ3ljX1N0ZF9leGVj
bHAoCnN0cnVjdCBfdGFnZ2VkX2FyciBmaWxlLCBzdHJ1Y3QgX3RhZ2dlZF9hcnIgYXJnMCwgc3Ry
dWN0IF90YWdnZWRfYXJyIGFyZ3YpOyBpbnQKQ3ljX1N0ZF9leGVjdmUoIHN0cnVjdCBfdGFnZ2Vk
X2FyciBmaWxlbmFtZSwgc3RydWN0IF90YWdnZWRfYXJyIGFyZ3YsIHN0cnVjdApfdGFnZ2VkX2Fy
ciBlbnZwKTsgaW50IEN5Y19TdGRfbGluayggc3RydWN0IF90YWdnZWRfYXJyLCBzdHJ1Y3QgX3Rh
Z2dlZF9hcnIpOwppbnQgQ3ljX1N0ZF9yZWFkKCBpbnQgZmQsIHN0cnVjdCBfdGFnZ2VkX2FyciBi
dWYsIHVuc2lnbmVkIGludCBjb3VudCk7IGludCBDeWNfU3RkX3JtZGlyKApzdHJ1Y3QgX3RhZ2dl
ZF9hcnIpOyBpbnQgQ3ljX1N0ZF9zeW1saW5rKCBzdHJ1Y3QgX3RhZ2dlZF9hcnIsIHN0cnVjdCBf
dGFnZ2VkX2Fycik7CmludCBDeWNfU3RkX3RydW5jYXRlKCBzdHJ1Y3QgX3RhZ2dlZF9hcnIsIGlu
dCk7IGludCBDeWNfU3RkX3dyaXRlKCBpbnQgZmQsCnN0cnVjdCBfdGFnZ2VkX2FyciBidWYsIHVu
c2lnbmVkIGludCBjb3VudCk7IGludCBDeWNfU3RkX3VubGluayggc3RydWN0Cl90YWdnZWRfYXJy
IHBhdGhuYW1lKTsgaW50IEN5Y19TdGRfZ2V0aG9zdG5hbWUoIHN0cnVjdCBfdGFnZ2VkX2Fyciwg
dW5zaWduZWQgaW50KTsKaW50IEN5Y19TdGRfY2hyb290KCBzdHJ1Y3QgX3RhZ2dlZF9hcnIpOyBz
dHJ1Y3QgX3RhZ2dlZF9hcnIgQ3ljX1N0ZF9nZXRwYXNzKApzdHJ1Y3QgX3RhZ2dlZF9hcnIgcHJv
bXB0KTsgZXh0ZXJuIGludCBiYWNrdHJhY2UoIGludCosIGludCk7IGludCBDeWNfRXhlY2luZm9f
YmFja3RyYWNlKApzdHJ1Y3QgX3RhZ2dlZF9hcnIgYXJyYXksIGludCBzaXplKXsgaWYoIHNpemUg
PiBfZ2V0X2Fycl9zaXplKCBhcnJheSwgc2l6ZW9mKAppbnQpKSl7KCBpbnQpIF90aHJvdygoIHZv
aWQqKSh7IHN0cnVjdCBDeWNfQ29yZV9GYWlsdXJlX3N0cnVjdCogX3RlbXAwPSggc3RydWN0CkN5
Y19Db3JlX0ZhaWx1cmVfc3RydWN0KikgX2N5Y2FsbG9jKCBzaXplb2YoIHN0cnVjdCBDeWNfQ29y
ZV9GYWlsdXJlX3N0cnVjdCkpOwpfdGVtcDBbIDBdPSh7IHN0cnVjdCBDeWNfQ29yZV9GYWlsdXJl
X3N0cnVjdCBfdGVtcDE7IF90ZW1wMS50YWc9IEN5Y19Db3JlX0ZhaWx1cmU7Cl90ZW1wMS5mMT0g
X3RhZ19hcnIoImJhY2t0cmFjZTogc2l6ZSA+IGFycmF5LnNpemUiLCBzaXplb2YoIHVuc2lnbmVk
IGNoYXIpLCAyOXUpOwpfdGVtcDE7fSk7IF90ZW1wMDt9KSk7fSByZXR1cm4gYmFja3RyYWNlKCgg
aW50KikgX2NoZWNrX251bGwoIF91bnRhZ19hcnIoIGFycmF5LApzaXplb2YoIGludCksIDF1KSks
IHNpemUpO30gaW50IEN5Y19FeGVjaW5mb19idCgpeyBpbnQgYnRbIDIwdV07eyB1bnNpZ25lZCBp
bnQKX3RlbXAxMD0gMjB1OyB1bnNpZ25lZCBpbnQgaTsgZm9yKCBpPSAwOyBpIDwgX3RlbXAxMDsg
aSArKyl7IGJ0WyBpXT0gMDt9fXsgaW50CnRvY2hpbGRbIDJ1XT17IDAsIDB9OyBpbnQgZnJvbWNo
aWxkWyAydV09eyAwLCAwfTsgaW50IHBpZDsgaW50IHNlbGZfcGlkOyBpZigKcGlwZSggdG9jaGls
ZCk/IDE6IHBpcGUoIGZyb21jaGlsZCkpeyByZXR1cm4gMTt9IHNlbGZfcGlkPSBnZXRwaWQoKTsg
aWYoKCBwaWQ9CmZvcmsoKSkgPT0gMCl7IGlmKCBkdXAyKCB0b2NoaWxkWyBfY2hlY2tfa25vd25f
c3Vic2NyaXB0X25vdG51bGwoIDJ1LCAwKV0sIDApCj09IC0gMT8gMTogZHVwMiggZnJvbWNoaWxk
WyBfY2hlY2tfa25vd25fc3Vic2NyaXB0X25vdG51bGwoIDJ1LCAxKV0sIDEpID09IC0gMSl7CnJl
dHVybiAxO30oeyBzdHJ1Y3QgX3RhZ2dlZF9hcnIgX3RlbXAyWyA0dV07IF90ZW1wMlsgM3VdPSgg
c3RydWN0IF90YWdnZWRfYXJyKQpfdGFnX2FyciggMHUsIDB1LCAwdSk7IF90ZW1wMlsgMnVdPSgg
c3RydWN0IF90YWdnZWRfYXJyKSh7IHN0cnVjdCBDeWNfU3RkX0ludF9wYV9zdHJ1Y3QKX3RlbXA0
OyBfdGVtcDQudGFnPSBDeWNfU3RkX0ludF9wYTsgX3RlbXA0LmYxPSggaW50KSgoIHVuc2lnbmVk
IGludCkgc2VsZl9waWQpO3sKdm9pZCogX3RlbXAzWyAxdV09eyYgX3RlbXA0fTsgQ3ljX1N0ZF9h
cHJpbnRmKCBfdGFnX2FycigiL3Byb2MvJWQvZXhlIiwgc2l6ZW9mKAp1bnNpZ25lZCBjaGFyKSwg
MTN1KSwgX3RhZ19hcnIoIF90ZW1wMywgc2l6ZW9mKCB2b2lkKiksIDF1KSk7fX0pOyBfdGVtcDJb
IDF1XT0KX3RhZ19hcnIoIi1lIiwgc2l6ZW9mKCB1bnNpZ25lZCBjaGFyKSwgM3UpOyBfdGVtcDJb
IDB1XT0gX3RhZ19hcnIoIi0tZnVuY3Rpb25zIiwKc2l6ZW9mKCB1bnNpZ25lZCBjaGFyKSwgMTJ1
KTsgQ3ljX1N0ZF9leGVjbHAoIF90YWdfYXJyKCJhZGRyMmxpbmUiLCBzaXplb2YoCnVuc2lnbmVk
IGNoYXIpLCAxMHUpLCBfdGFnX2FycigiYWRkcjJsaW5lIiwgc2l6ZW9mKCB1bnNpZ25lZCBjaGFy
KSwgMTB1KSwKX3RhZ19hcnIoIF90ZW1wMiwgc2l6ZW9mKCBzdHJ1Y3QgX3RhZ2dlZF9hcnIpLCA0
dSkpO30pOyByZXR1cm4gMTt9IGVsc2V7IGlmKCBwaWQKPCAwKXsgY2xvc2UoIHRvY2hpbGRbIF9j
aGVja19rbm93bl9zdWJzY3JpcHRfbm90bnVsbCggMnUsIDApXSk7IGNsb3NlKCB0b2NoaWxkWwpf
Y2hlY2tfa25vd25fc3Vic2NyaXB0X25vdG51bGwoIDJ1LCAxKV0pOyBjbG9zZSggZnJvbWNoaWxk
WwpfY2hlY2tfa25vd25fc3Vic2NyaXB0X25vdG51bGwoIDJ1LCAwKV0pOyBjbG9zZSggZnJvbWNo
aWxkWwpfY2hlY2tfa25vd25fc3Vic2NyaXB0X25vdG51bGwoIDJ1LCAxKV0pOyByZXR1cm4gMTt9
fXsgc3RydWN0IEN5Y19TdGRfX19zRklMRSogdz0oewpzdHJ1Y3QgQ3ljX1N0ZF9fX3NGSUxFKiBm
PSBDeWNfU3RkX2Zkb3BlbiggdG9jaGlsZFsKX2NoZWNrX2tub3duX3N1YnNjcmlwdF9ub3RudWxs
KCAydSwgMSldLCBfdGFnX2FycigidyIsIHNpemVvZiggdW5zaWduZWQgY2hhciksIDJ1KSk7Cmlm
KCAhKCggdW5zaWduZWQgaW50KSBmKSl7IHJldHVybiAxO30oIHN0cnVjdCBDeWNfU3RkX19fc0ZJ
TEUqKSBfY2hlY2tfbnVsbCggZik7fSk7CnN0cnVjdCBDeWNfU3RkX19fc0ZJTEUqIHI9KHsgc3Ry
dWN0IEN5Y19TdGRfX19zRklMRSogZj0gQ3ljX1N0ZF9mZG9wZW4oCmZyb21jaGlsZFsgX2NoZWNr
X2tub3duX3N1YnNjcmlwdF9ub3RudWxsKCAydSwgMCldLCBfdGFnX2FycigiciIsIHNpemVvZigK
dW5zaWduZWQgY2hhciksIDJ1KSk7IGlmKCAhKCggdW5zaWduZWQgaW50KSBmKSl7IEN5Y19TdGRf
ZmNsb3NlKCB3KTsgcmV0dXJuIDE7fSgKc3RydWN0IEN5Y19TdGRfX19zRklMRSopIF9jaGVja19u
dWxsKCBmKTt9KTsgaW50IG49IEN5Y19FeGVjaW5mb19iYWNrdHJhY2UoCl90YWdfYXJyKCBidCwg
c2l6ZW9mKCBpbnQpLCAyMHUpLCggaW50KSAyMHUpO3sgaW50IGM9IDA7IGZvciggMDsgYyA8IG47
IGMgKyspeyh7CnN0cnVjdCBDeWNfU3RkX0ludF9wYV9zdHJ1Y3QgX3RlbXA2OyBfdGVtcDYudGFn
PSBDeWNfU3RkX0ludF9wYTsgX3RlbXA2LmYxPSgKdW5zaWduZWQgaW50KSBidFsgX2NoZWNrX2tu
b3duX3N1YnNjcmlwdF9ub3RudWxsKCAyMHUsIGMpXTt7IHZvaWQqIF90ZW1wNVsgMXVdPXsmCl90
ZW1wNn07IEN5Y19TdGRfZnByaW50ZiggdywgX3RhZ19hcnIoIiUjeFxuIiwgc2l6ZW9mKCB1bnNp
Z25lZCBjaGFyKSwgNXUpLApfdGFnX2FyciggX3RlbXA1LCBzaXplb2YoIHZvaWQqKSwgMXUpKTt9
fSk7fX0gQ3ljX1N0ZF9mZmx1c2goKCBzdHJ1Y3QgQ3ljX1N0ZF9fX3NGSUxFKikKdyk7KHsgdm9p
ZCogX3RlbXA3WyAwdV09e307IEN5Y19TdGRfcHJpbnRmKCBfdGFnX2FycigiQmFja3RyYWNlOlxu
ICBGdW5jdGlvbiAgICAgICAgICBMb2NhdGlvblxuICAtLS0tLS0tLS0tLS0tLS0tICAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIiwKc2l6ZW9mKCB1bnNpZ25lZCBjaGFyKSwgOTR1
KSwgX3RhZ19hcnIoIF90ZW1wNywgc2l6ZW9mKCB2b2lkKiksIDB1KSk7fSk7eyBpbnQgYz0KMDsg
Zm9yKCAwOyBjIDwgbjsgYyArKyl7IGludCBkOyBpbnQgcG9zPSAwOyh7IHZvaWQqIF90ZW1wOFsg
MHVdPXt9OyBDeWNfU3RkX3ByaW50ZigKX3RhZ19hcnIoIiAgIiwgc2l6ZW9mKCB1bnNpZ25lZCBj
aGFyKSwgM3UpLCBfdGFnX2FyciggX3RlbXA4LCBzaXplb2YoIHZvaWQqKSwgMHUpKTt9KTsKd2hp
bGUoKCBkPSBDeWNfU3RkX2dldGMoIHIpKSAhPSAnXG4nKSB7KCBDeWNfU3RkX3B1dGMoIGQsIEN5
Y19TdGRfc3Rkb3V0KSwgcG9zCisrKTt9IHdoaWxlKCBwb3MgKysgPCAxNikgeyBDeWNfU3RkX3B1
dGMoKCBpbnQpJyAnLCBDeWNfU3RkX3N0ZG91dCk7fSh7IHZvaWQqCl90ZW1wOVsgMHVdPXt9OyBD
eWNfU3RkX3ByaW50ZiggX3RhZ19hcnIoIiAgIiwgc2l6ZW9mKCB1bnNpZ25lZCBjaGFyKSwgM3Up
LApfdGFnX2FyciggX3RlbXA5LCBzaXplb2YoIHZvaWQqKSwgMHUpKTt9KTsgd2hpbGUoKCBkPSBD
eWNfU3RkX2dldGMoIHIpKSAhPSAnXG4nKSB7CkN5Y19TdGRfcHV0YyggZCwgQ3ljX1N0ZF9zdGRv
dXQpO30gQ3ljX1N0ZF9wdXRjKCggaW50KSdcbicsIEN5Y19TdGRfc3Rkb3V0KTt9fQpDeWNfU3Rk
X2ZjbG9zZSggcik7IEN5Y19TdGRfZmNsb3NlKCB3KTsga2lsbCggcGlkLCAxNSk7IHdhaXRwaWQo
IHBpZCwgMCwgMCk7CnJldHVybiAwO319fQo=



More information about the Gcc-bugs mailing list