From: Chris Faylor <cgf@cygnus.com>
To: Elena Zannoni <ezannoni@cygnus.com>
Cc: gdb-patches@sourceware.cygnus.com, jimb@cygnus.com
Subject: Re: [PATCH] Cleanup some more section_addr_info structs
Date: Thu, 20 Apr 2000 12:41:00 -0000 [thread overview]
Message-ID: <20000420154107.A1862@cygnus.com> (raw)
In-Reply-To: <14591.20957.40807.102577@kwikemart.cygnus.com>
The win32-nat.c part of this change is approved.
cgf
On Thu, Apr 20, 2000 at 02:52:13PM -0400, Elena Zannoni wrote:
>2000-04-20 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
>
> * win32-nat.c (handle_load_dll): Don't treat .text as a special
> section anymore.
> * somread.c (som_symfile_offsets): Ditto.
> * somsolib.c (som_solib_add_solib_objfile): Ditto.
From scottb@netwinder.org Thu Apr 20 14:21:00 2000
From: Scott Bambrough <scottb@netwinder.org>
To: GDB Patches Mail List <gdb-patches@sourceware.cygnus.com>
Subject: FYI: Changes to ARM Linux code...
Date: Thu, 20 Apr 2000 14:21:00 -0000
Message-id: <38FF73CD.1C542B7D@netwinder.org>
X-SW-Source: 2000-04/msg00398.html
Content-type: multipart/mixed; boundary="----------=_1583534348-29877-8"
This is a multi-part message in MIME format...
------------=_1583534348-29877-8
Content-length: 1635
I've checked the following in on the 5.0 branch and the mainline. It implements
support for LinuxThreads and fixes most of the bugs with core files.
2000-04-19 Scott Bambrough <scottb@netwinder.org>
* arm-linux-nat.c (PIDGET, TIDGET): New.
(get_thread_id, GET_THREAD_ID): New.
(fetch_nwfpe_register, store_nwfpe_register): New.
(fetch_register, store_register): New.
(fetch_fpregister, store_fpregister): New.
(fill_gregset, supply_gregset): New.
(fill_fpregset, supply_fpregset): New.
(fetch_fpregs): Modified to use thread id's.
(store_fpregs): Modified to use thread id's and
fetch_nwfpe_register.
(fetch_regs): Modified to use thread id's.
(store_regs): Modified to use thread id's.
(fetch_inferior_registers): Modified to handle single register
fetches.
(store_inferior_registers): Modified to handle single register
stores.
(arm_linux_register_u_addr): Removed.
* configure.tgt: Added gdbserver to configdirs for arm*-*-linux*.
* config/arm/linux.mh
(NATDEPFILES): Removed core-aout.o. Added core-regset.o.
(LOADLIBES): Define.
* config/arm/nm-linux.h: Include config/nm-linux.h.
(ATTACH_DETACH): Removed. Defined in config/nm-linux.h.
(REGISTER_U_ADDR): Removed.
(SVR4_SHARED_LIBS): Removed. Defined in config/nm-linux.h.
(#include "solib.h"): Removed. Included via config/nm-linux.h.
--
Scott Bambrough - Software Engineer
REBEL.COM http://www.rebel.com
NetWinder http://www.netwinder.org
gdb.patch
------------=_1583534348-29877-8
Content-Type: text/x-diff; charset=us-ascii; name="gdb.patch"
Content-Disposition: inline; filename="gdb.patch"
Content-Transfer-Encoding: base64
Content-Length: 22176
SW5kZXg6IGFybS1saW51eC1uYXQuYw0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQ0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvYXJtLWxpbnV4LW5hdC5j
LHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS40LjIuMQ0KZGlmZiAtdSAtcCAt
cjEuNC4yLjEgYXJtLWxpbnV4LW5hdC5jDQotLS0gYXJtLWxpbnV4LW5hdC5j
CTIwMDAvMDQvMTAgMjE6MDc6MzgJMS40LjIuMQ0KKysrIGFybS1saW51eC1u
YXQuYwkyMDAwLzA0LzIwIDE5OjEwOjI5DQpAQCAtMjYsNiArMjYsNyBAQA0K
ICNpbmNsdWRlIDxzeXMvdXNlci5oPg0KICNpbmNsdWRlIDxzeXMvcHRyYWNl
Lmg+DQogI2luY2x1ZGUgPHN5cy91dHNuYW1lLmg+DQorI2luY2x1ZGUgPHN5
cy9wcm9jZnMuaD4NCiANCiBleHRlcm4gaW50IGFybV9hcGNzXzMyOw0KIA0K
QEAgLTcxLDYgKzcyLDI3IEBAIEZQQTExOw0KIA0KIHN0YXRpYyB1bnNpZ25l
ZCBpbnQgb3NfdmVyc2lvbiwgb3NfbWFqb3IsIG9zX21pbm9yLCBvc19yZWxl
YXNlOw0KIA0KKy8qIE9uIExpbnV4LCB0aHJlYWRzIGFyZSBpbXBsZW1lbnRl
ZCBhcyBwc2V1ZG8tcHJvY2Vzc2VzLCBpbiB3aGljaA0KKyAgIGNhc2Ugd2Ug
bWF5IGJlIHRyYWNpbmcgbW9yZSB0aGFuIG9uZSBwcm9jZXNzIGF0IGEgdGlt
ZS4gIEluIHRoYXQNCisgICBjYXNlLCBpbmZlcmlvcl9waWQgd2lsbCBjb250
YWluIHRoZSBtYWluIHByb2Nlc3MgSUQgYW5kIHRoZQ0KKyAgIGluZGl2aWR1
YWwgdGhyZWFkIChwcm9jZXNzKSBJRCBtYXNoZWQgdG9nZXRoZXIuICBUaGVz
ZSBtYWNyb3MgYXJlDQorICAgdXNlZCB0byBzZXBhcmF0ZSB0aGVtIG91dC4g
IFRoZXNlIGRlZmluaXRpb25zIHNob3VsZCBiZSBvdmVycmlkZGVuDQorICAg
aWYgdGhyZWFkIHN1cHBvcnQgaXMgaW5jbHVkZWQuICAqLw0KKw0KKyNpZiAh
ZGVmaW5lZCAoUElER0VUKQkvKiBEZWZhdWx0IGRlZmluaXRpb24gZm9yIFBJ
REdFVC9USURHRVQuICAqLw0KKyNkZWZpbmUgUElER0VUKFBJRCkJUElEDQor
I2RlZmluZSBUSURHRVQoUElEKQkwDQorI2VuZGlmDQorDQoraW50DQorZ2V0
X3RocmVhZF9pZCAoaW50IGluZmVyaW9yX3BpZCkNCit7DQorICBpbnQgdGlk
ID0gVElER0VUIChpbmZlcmlvcl9waWQpOw0KKyAgaWYgKDAgPT0gdGlkKSB0
aWQgPSBpbmZlcmlvcl9waWQ7DQorICByZXR1cm4gdGlkOw0KK30NCisjZGVm
aW5lIEdFVF9USFJFQURfSUQoUElEKQlnZXRfdGhyZWFkX2lkICgoUElEKSk7
DQorDQogc3RhdGljIHZvaWQNCiBmZXRjaF9ud2ZwZV9zaW5nbGUgKHVuc2ln
bmVkIGludCBmbiwgRlBBMTEgKiBmcGExMSkNCiB7DQpAQCAtMTE0LDYgKzEz
NiwzMCBAQCBmZXRjaF9ud2ZwZV9leHRlbmRlZCAodW5zaWduZWQgaW50IGZu
LCBGDQogfQ0KIA0KIHN0YXRpYyB2b2lkDQorZmV0Y2hfbndmcGVfcmVnaXN0
ZXIgKGludCByZWdubywgRlBBMTEgKiBmcGExMSkNCit7DQorICAgaW50IGZu
ID0gcmVnbm8gLSBGMF9SRUdOVU07DQorDQorICAgc3dpdGNoIChmcGExMS0+
ZlR5cGVbZm5dKQ0KKyAgICAgew0KKyAgICAgY2FzZSB0eXBlU2luZ2xlOg0K
KyAgICAgICBmZXRjaF9ud2ZwZV9zaW5nbGUgKGZuLCBmcGExMSk7DQorICAg
ICAgIGJyZWFrOw0KKw0KKyAgICAgY2FzZSB0eXBlRG91YmxlOg0KKyAgICAg
ICBmZXRjaF9ud2ZwZV9kb3VibGUgKGZuLCBmcGExMSk7DQorICAgICAgIGJy
ZWFrOw0KKw0KKyAgICAgY2FzZSB0eXBlRXh0ZW5kZWQ6DQorICAgICAgIGZl
dGNoX253ZnBlX2V4dGVuZGVkIChmbiwgZnBhMTEpOw0KKyAgICAgICBicmVh
azsNCisNCisgICAgIGRlZmF1bHQ6DQorICAgICAgIGZldGNoX253ZnBlX25v
bmUgKGZuKTsNCisgICAgIH0NCit9DQorDQorc3RhdGljIHZvaWQNCiBzdG9y
ZV9ud2ZwZV9zaW5nbGUgKHVuc2lnbmVkIGludCBmbiwgRlBBMTEgKiBmcGEx
MSkNCiB7DQogICB1bnNpZ25lZCBpbnQgbWVtWzNdOw0KQEAgLTE0NSwyMSAr
MTkxLDk3IEBAIHN0b3JlX253ZnBlX2V4dGVuZGVkICh1bnNpZ25lZCBpbnQg
Zm4sIEYNCiAgIGZwYTExLT5mcHJlZ1tmbl0uZkV4dGVuZGVkWzFdID0gbWVt
WzJdOwkvKiBtcyBiaXRzICovDQogICBmcGExMS0+ZlR5cGVbZm5dID0gdHlw
ZURvdWJsZTsNCiB9DQorDQordm9pZA0KK3N0b3JlX253ZnBlX3JlZ2lzdGVy
IChpbnQgcmVnbm8sIEZQQTExICogZnBhMTEpDQorew0KKyAgaWYgKHJlZ2lz
dGVyX3ZhbGlkW3JlZ25vXSkNCisgICAgew0KKyAgICAgICB1bnNpZ25lZCBp
bnQgZm4gPSByZWdubyAtIEYwX1JFR05VTTsNCisgICAgICAgc3dpdGNoIChm
cGExMS0+ZlR5cGVbZm5dKQ0KKyAgICAgICAgIHsNCisJIGNhc2UgdHlwZVNp
bmdsZToNCisJICAgc3RvcmVfbndmcGVfc2luZ2xlIChmbiwgZnBhMTEpOw0K
KwkgICBicmVhazsNCisNCisJIGNhc2UgdHlwZURvdWJsZToNCisJICAgc3Rv
cmVfbndmcGVfZG91YmxlIChmbiwgZnBhMTEpOw0KKwkgICBicmVhazsNCisN
CisJIGNhc2UgdHlwZUV4dGVuZGVkOg0KKwkgICBzdG9yZV9ud2ZwZV9leHRl
bmRlZCAoZm4sIGZwYTExKTsNCisJICAgYnJlYWs7DQorCSB9DQorICAgIH0N
Cit9DQorDQogDQotLyogR2V0IHRoZSB3aG9sZSBmbG9hdGluZyBwb2ludCBz
dGF0ZSBvZiB0aGUgcHJvY2VzcyBhbmQgc3RvcmUgdGhlDQotICAgZmxvYXRp
bmcgcG9pbnQgc3RhY2sgaW50byByZWdpc3RlcnNbXS4gICovDQorLyogR2V0
IHRoZSB2YWx1ZSBvZiBhIHBhcnRpY3VsYXIgcmVnaXN0ZXIgZnJvbSB0aGUg
ZmxvYXRpbmcgcG9pbnQNCisgICBzdGF0ZSBvZiB0aGUgcHJvY2VzcyBhbmQg
c3RvcmUgaXQgaW50byByZWdpc3RlcnNbXS4gICovDQogDQogc3RhdGljIHZv
aWQNCitmZXRjaF9mcHJlZ2lzdGVyIChpbnQgcmVnbm8pDQorew0KKyAgaW50
IHJldCwgdGlkOw0KKyAgRlBBMTEgZnA7DQorICANCisgIC8qIEdldCB0aGUg
dGhyZWFkIGlkIGZvciB0aGUgcHRyYWNlIGNhbGwuICAqLw0KKyAgdGlkID0g
R0VUX1RIUkVBRF9JRCAoaW5mZXJpb3JfcGlkKTsNCisNCisgIC8qIFJlYWQg
dGhlIGZsb2F0aW5nIHBvaW50IHN0YXRlLiAgKi8NCisgIHJldCA9IHB0cmFj
ZSAoUFRfR0VURlBSRUdTLCB0aWQsIDAsICZmcCk7DQorICBpZiAocmV0IDwg
MCkNCisgICAgew0KKyAgICAgIHdhcm5pbmcgKCJVbmFibGUgdG8gZmV0Y2gg
ZmxvYXRpbmcgcG9pbnQgcmVnaXN0ZXIuIik7DQorICAgICAgcmV0dXJuOw0K
KyAgICB9DQorDQorICAvKiBGZXRjaCBmcHNyLiAgKi8NCisgIGlmIChGUFNf
UkVHTlVNID09IHJlZ25vKQ0KKyAgICBzdXBwbHlfcmVnaXN0ZXIgKEZQU19S
RUdOVU0sIChjaGFyICopICZmcC5mcHNyKTsNCisNCisgIC8qIEZldGNoIHRo
ZSBmbG9hdGluZyBwb2ludCByZWdpc3Rlci4gICovDQorICBpZiAocmVnbm8g
Pj0gRjBfUkVHTlVNICYmIHJlZ25vIDw9IEY3X1JFR05VTSkNCisgICAgew0K
KyAgICAgIGludCBmbiA9IHJlZ25vIC0gRjBfUkVHTlVNOw0KKw0KKyAgICAg
IHN3aXRjaCAoZnAuZlR5cGVbZm5dKQ0KKwl7DQorCWNhc2UgdHlwZVNpbmds
ZToNCisJICBmZXRjaF9ud2ZwZV9zaW5nbGUgKGZuLCAmZnApOw0KKwkgIGJy
ZWFrOw0KKw0KKwljYXNlIHR5cGVEb3VibGU6DQorCSAgICBmZXRjaF9ud2Zw
ZV9kb3VibGUgKGZuLCAmZnApOw0KKwkgIGJyZWFrOw0KKw0KKwljYXNlIHR5
cGVFeHRlbmRlZDoNCisJICAgIGZldGNoX253ZnBlX2V4dGVuZGVkIChmbiwg
JmZwKTsNCisJICBicmVhazsNCisNCisJZGVmYXVsdDoNCisJICAgIGZldGNo
X253ZnBlX25vbmUgKGZuKTsNCisJfQ0KKyAgICB9DQorfQ0KKw0KKy8qIEdl
dCB0aGUgd2hvbGUgZmxvYXRpbmcgcG9pbnQgc3RhdGUgb2YgdGhlIHByb2Nl
c3MgYW5kIHN0b3JlIGl0DQorICAgaW50byByZWdpc3RlcnNbXS4gICovDQor
DQorc3RhdGljIHZvaWQNCiBmZXRjaF9mcHJlZ3MgKHZvaWQpDQogew0KLSAg
aW50IHJldCwgcmVnbm87DQorICBpbnQgcmV0LCByZWdubywgdGlkOw0KICAg
RlBBMTEgZnA7DQogDQorICAvKiBHZXQgdGhlIHRocmVhZCBpZCBmb3IgdGhl
IHB0cmFjZSBjYWxsLiAgKi8NCisgIHRpZCA9IEdFVF9USFJFQURfSUQgKGlu
ZmVyaW9yX3BpZCk7DQorICANCiAgIC8qIFJlYWQgdGhlIGZsb2F0aW5nIHBv
aW50IHN0YXRlLiAgKi8NCi0gIHJldCA9IHB0cmFjZSAoUFRfR0VURlBSRUdT
LCBpbmZlcmlvcl9waWQsIDAsICZmcCk7DQorICByZXQgPSBwdHJhY2UgKFBU
X0dFVEZQUkVHUywgdGlkLCAwLCAmZnApOw0KICAgaWYgKHJldCA8IDApDQog
ICAgIHsNCi0gICAgICB3YXJuaW5nICgiVW5hYmxlIHRvIGZldGNoIHRoZSBm
bG9hdGluZyBwb2ludCBzdGF0ZS4iKTsNCisgICAgICB3YXJuaW5nICgiVW5h
YmxlIHRvIGZldGNoIHRoZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMuIik7
DQogICAgICAgcmV0dXJuOw0KICAgICB9DQogDQpAQCAtMTkxLDE1ICszMTMs
NjQgQEAgZmV0Y2hfZnByZWdzICh2b2lkKQ0KICAgICB9DQogfQ0KIA0KKy8q
IFNhdmUgYSBwYXJ0aWN1bGFyIHJlZ2lzdGVyIGludG8gdGhlIGZsb2F0aW5n
IHBvaW50IHN0YXRlIG9mIHRoZQ0KKyAgIHByb2Nlc3MgdXNpbmcgdGhlIGNv
bnRlbnRzIGZyb20gcmVnaXN0ZXJzW10uICAqLw0KKw0KK3N0YXRpYyB2b2lk
DQorc3RvcmVfZnByZWdpc3RlciAoaW50IHJlZ25vKQ0KK3sNCisgIGludCBy
ZXQsIHRpZDsNCisgIEZQQTExIGZwOw0KKw0KKyAgLyogR2V0IHRoZSB0aHJl
YWQgaWQgZm9yIHRoZSBwdHJhY2UgY2FsbC4gICovDQorICB0aWQgPSBHRVRf
VEhSRUFEX0lEIChpbmZlcmlvcl9waWQpOw0KKyAgDQorICAvKiBSZWFkIHRo
ZSBmbG9hdGluZyBwb2ludCBzdGF0ZS4gICovDQorICByZXQgPSBwdHJhY2Ug
KFBUX0dFVEZQUkVHUywgdGlkLCAwLCAmZnApOw0KKyAgaWYgKHJldCA8IDAp
DQorICAgIHsNCisgICAgICB3YXJuaW5nICgiVW5hYmxlIHRvIGZldGNoIHRo
ZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMuIik7DQorICAgICAgcmV0dXJu
Ow0KKyAgICB9DQorDQorICAvKiBTdG9yZSBmcHNyLiAgKi8NCisgIGlmIChG
UFNfUkVHTlVNID09IHJlZ25vICYmIHJlZ2lzdGVyX3ZhbGlkW0ZQU19SRUdO
VU1dKQ0KKyAgICByZWFkX3JlZ2lzdGVyX2dlbiAoRlBTX1JFR05VTSwgKGNo
YXIgKikgJmZwLmZwc3IpOw0KKw0KKyAgLyogU3RvcmUgdGhlIGZsb2F0aW5n
IHBvaW50IHJlZ2lzdGVyLiAgKi8NCisgIGlmIChyZWdubyA+PSBGMF9SRUdO
VU0gJiYgcmVnbm8gPD0gRjdfUkVHTlVNKQ0KKyAgICB7DQorICAgICAgc3Rv
cmVfbndmcGVfcmVnaXN0ZXIgKHJlZ25vLCAmZnApOw0KKyAgICB9DQorDQor
ICByZXQgPSBwdHJhY2UgKFBUUkFDRV9TRVRGUFJFR1MsIHRpZCwgMCwgJmZw
KTsNCisgIGlmIChyZXQgPCAwKQ0KKyAgICB7DQorICAgICAgd2FybmluZyAo
IlVuYWJsZSB0byBzdG9yZSBmbG9hdGluZyBwb2ludCByZWdpc3Rlci4iKTsN
CisgICAgICByZXR1cm47DQorICAgIH0NCit9DQorDQogLyogU2F2ZSB0aGUg
d2hvbGUgZmxvYXRpbmcgcG9pbnQgc3RhdGUgb2YgdGhlIHByb2Nlc3MgdXNp
bmcNCiAgICB0aGUgY29udGVudHMgZnJvbSByZWdpc3RlcnNbXS4gICovDQog
DQogc3RhdGljIHZvaWQNCiBzdG9yZV9mcHJlZ3MgKHZvaWQpDQogew0KLSAg
aW50IHJldCwgcmVnbm87DQorICBpbnQgcmV0LCByZWdubywgdGlkOw0KICAg
RlBBMTEgZnA7DQogDQorICAvKiBHZXQgdGhlIHRocmVhZCBpZCBmb3IgdGhl
IHB0cmFjZSBjYWxsLiAgKi8NCisgIHRpZCA9IEdFVF9USFJFQURfSUQgKGlu
ZmVyaW9yX3BpZCk7DQorICANCisgIC8qIFJlYWQgdGhlIGZsb2F0aW5nIHBv
aW50IHN0YXRlLiAgKi8NCisgIHJldCA9IHB0cmFjZSAoUFRfR0VURlBSRUdT
LCB0aWQsIDAsICZmcCk7DQorICBpZiAocmV0IDwgMCkNCisgICAgew0KKyAg
ICAgIHdhcm5pbmcgKCJVbmFibGUgdG8gZmV0Y2ggdGhlIGZsb2F0aW5nIHBv
aW50IHJlZ2lzdGVycy4iKTsNCisgICAgICByZXR1cm47DQorICAgIH0NCisN
CiAgIC8qIFN0b3JlIGZwc3IuICAqLw0KICAgaWYgKHJlZ2lzdGVyX3ZhbGlk
W0ZQU19SRUdOVU1dKQ0KICAgICByZWFkX3JlZ2lzdGVyX2dlbiAoRlBTX1JF
R05VTSwgKGNoYXIgKikgJmZwLmZwc3IpOw0KQEAgLTIwNyw0NCArMzc4LDY3
IEBAIHN0b3JlX2ZwcmVncyAodm9pZCkNCiAgIC8qIFN0b3JlIHRoZSBmbG9h
dGluZyBwb2ludCByZWdpc3RlcnMuICAqLw0KICAgZm9yIChyZWdubyA9IEYw
X1JFR05VTTsgcmVnbm8gPD0gRjdfUkVHTlVNOyByZWdubysrKQ0KICAgICB7
DQotICAgICAgaWYgKHJlZ2lzdGVyX3ZhbGlkW3JlZ25vXSkNCi0Jew0KLQkg
IHVuc2lnbmVkIGludCBmbiA9IHJlZ25vIC0gRjBfUkVHTlVNOw0KLQkgIHN3
aXRjaCAoZnAuZlR5cGVbZm5dKQ0KLQkgICAgew0KLQkgICAgY2FzZSB0eXBl
U2luZ2xlOg0KLQkgICAgICBzdG9yZV9ud2ZwZV9zaW5nbGUgKGZuLCAmZnAp
Ow0KLQkgICAgICBicmVhazsNCi0NCi0JICAgIGNhc2UgdHlwZURvdWJsZToN
Ci0JICAgICAgc3RvcmVfbndmcGVfZG91YmxlIChmbiwgJmZwKTsNCi0JICAg
ICAgYnJlYWs7DQotDQotCSAgICBjYXNlIHR5cGVFeHRlbmRlZDoNCi0JICAg
ICAgc3RvcmVfbndmcGVfZXh0ZW5kZWQgKGZuLCAmZnApOw0KLQkgICAgICBi
cmVhazsNCi0JICAgIH0NCi0JfQ0KKyAgICAgIGZldGNoX253ZnBlX3JlZ2lz
dGVyIChyZWdubywgJmZwKTsNCiAgICAgfQ0KIA0KLSAgcmV0ID0gcHRyYWNl
IChQVFJBQ0VfU0VURlBSRUdTLCBpbmZlcmlvcl9waWQsIDAsICZmcCk7DQor
ICByZXQgPSBwdHJhY2UgKFBUUkFDRV9TRVRGUFJFR1MsIHRpZCwgMCwgJmZw
KTsNCiAgIGlmIChyZXQgPCAwKQ0KICAgICB7DQotICAgICAgd2FybmluZyAo
IlVuYWJsZSB0byBzdG9yZSBmbG9hdGluZyBwb2ludCBzdGF0ZS4iKTsNCisg
ICAgICB3YXJuaW5nICgiVW5hYmxlIHRvIHN0b3JlIGZsb2F0aW5nIHBvaW50
IHJlZ2lzdGVycy4iKTsNCiAgICAgICByZXR1cm47DQogICAgIH0NCiB9DQog
DQorLyogRmV0Y2ggYSBnZW5lcmFsIHJlZ2lzdGVyIG9mIHRoZSBwcm9jZXNz
IGFuZCBzdG9yZSBpbnRvDQorICAgcmVnaXN0ZXJzW10uICAqLw0KKw0KK3N0
YXRpYyB2b2lkDQorZmV0Y2hfcmVnaXN0ZXIgKGludCByZWdubykNCit7DQor
ICBpbnQgcmV0LCB0aWQ7DQorICBzdHJ1Y3QgcHRfcmVncyByZWdzOw0KKw0K
KyAgLyogR2V0IHRoZSB0aHJlYWQgaWQgZm9yIHRoZSBwdHJhY2UgY2FsbC4g
ICovDQorICB0aWQgPSBHRVRfVEhSRUFEX0lEIChpbmZlcmlvcl9waWQpOw0K
KyAgDQorICByZXQgPSBwdHJhY2UgKFBUUkFDRV9HRVRSRUdTLCB0aWQsIDAs
ICZyZWdzKTsNCisgIGlmIChyZXQgPCAwKQ0KKyAgICB7DQorICAgICAgd2Fy
bmluZyAoIlVuYWJsZSB0byBmZXRjaCBnZW5lcmFsIHJlZ2lzdGVyLiIpOw0K
KyAgICAgIHJldHVybjsNCisgICAgfQ0KKw0KKyAgaWYgKHJlZ25vID49IEEx
X1JFR05VTSAmJiByZWdubyA8IFBDX1JFR05VTSkNCisgICAgc3VwcGx5X3Jl
Z2lzdGVyIChyZWdubywgKGNoYXIgKikgJnJlZ3MudXJlZ3NbcmVnbm9dKTsN
CisNCisgIGlmIChQU19SRUdOVU0gPT0gcmVnbm8pDQorICAgIHsNCisgICAg
ICBpZiAoYXJtX2FwY3NfMzIpDQorICAgICAgICBzdXBwbHlfcmVnaXN0ZXIg
KFBTX1JFR05VTSwgKGNoYXIgKikgJnJlZ3MudXJlZ3NbQ1BTUl9SRUdOVU1d
KTsNCisgICAgICBlbHNlDQorICAgICAgICBzdXBwbHlfcmVnaXN0ZXIgKFBT
X1JFR05VTSwgKGNoYXIgKikgJnJlZ3MudXJlZ3NbUENfUkVHTlVNXSk7DQor
ICAgIH0NCisgICAgDQorICBpZiAoUENfUkVHTlVNID09IHJlZ25vKQ0KKyAg
ICB7IA0KKyAgICAgIHJlZ3MudXJlZ3NbUENfUkVHTlVNXSA9IEFERFJfQklU
U19SRU1PVkUgKHJlZ3MudXJlZ3NbUENfUkVHTlVNXSk7DQorICAgICAgc3Vw
cGx5X3JlZ2lzdGVyIChQQ19SRUdOVU0sIChjaGFyICopICZyZWdzLnVyZWdz
W1BDX1JFR05VTV0pOw0KKyAgICB9DQorfQ0KKw0KIC8qIEZldGNoIGFsbCBn
ZW5lcmFsIHJlZ2lzdGVycyBvZiB0aGUgcHJvY2VzcyBhbmQgc3RvcmUgaW50
bw0KICAgIHJlZ2lzdGVyc1tdLiAgKi8NCiANCiBzdGF0aWMgdm9pZA0KIGZl
dGNoX3JlZ3MgKHZvaWQpDQogew0KLSAgaW50IHJldCwgcmVnbm87DQorICBp
bnQgcmV0LCByZWdubywgdGlkOw0KICAgc3RydWN0IHB0X3JlZ3MgcmVnczsN
CiANCi0gIHJldCA9IHB0cmFjZSAoUFRSQUNFX0dFVFJFR1MsIGluZmVyaW9y
X3BpZCwgMCwgJnJlZ3MpOw0KKyAgLyogR2V0IHRoZSB0aHJlYWQgaWQgZm9y
IHRoZSBwdHJhY2UgY2FsbC4gICovDQorICB0aWQgPSBHRVRfVEhSRUFEX0lE
IChpbmZlcmlvcl9waWQpOw0KKyAgDQorICByZXQgPSBwdHJhY2UgKFBUUkFD
RV9HRVRSRUdTLCB0aWQsIDAsICZyZWdzKTsNCiAgIGlmIChyZXQgPCAwKQ0K
ICAgICB7DQogICAgICAgd2FybmluZyAoIlVuYWJsZSB0byBmZXRjaCBnZW5l
cmFsIHJlZ2lzdGVycy4iKTsNCkBAIC0yNjcsMTIgKzQ2MSw0NyBAQCBmZXRj
aF9yZWdzICh2b2lkKQ0KICAgIHJlZ2lzdGVyc1tdLiAgKi8NCiANCiBzdGF0
aWMgdm9pZA0KK3N0b3JlX3JlZ2lzdGVyIChpbnQgcmVnbm8pDQorew0KKyAg
aW50IHJldCwgdGlkOw0KKyAgc3RydWN0IHB0X3JlZ3MgcmVnczsNCisgIA0K
KyAgaWYgKCFyZWdpc3Rlcl92YWxpZFtyZWdub10pDQorICAgIHJldHVybjsN
CisNCisgIC8qIEdldCB0aGUgdGhyZWFkIGlkIGZvciB0aGUgcHRyYWNlIGNh
bGwuICAqLw0KKyAgdGlkID0gR0VUX1RIUkVBRF9JRCAoaW5mZXJpb3JfcGlk
KTsNCisgIA0KKyAgLyogR2V0IHRoZSBnZW5lcmFsIHJlZ2lzdGVycyBmcm9t
IHRoZSBwcm9jZXNzLiAgKi8NCisgIHJldCA9IHB0cmFjZSAoUFRSQUNFX0dF
VFJFR1MsIHRpZCwgMCwgJnJlZ3MpOw0KKyAgaWYgKHJldCA8IDApDQorICAg
IHsNCisgICAgICB3YXJuaW5nICgiVW5hYmxlIHRvIGZldGNoIGdlbmVyYWwg
cmVnaXN0ZXJzLiIpOw0KKyAgICAgIHJldHVybjsNCisgICAgfQ0KKw0KKyAg
aWYgKHJlZ25vID49IEExX1JFR05VTSAmJiByZWdubyA8PSBQQ19SRUdOVU0p
DQorICAgIHJlYWRfcmVnaXN0ZXJfZ2VuIChyZWdubywgKGNoYXIgKikgJnJl
Z3MudXJlZ3NbcmVnbm9dKTsNCisNCisgIHJldCA9IHB0cmFjZSAoUFRSQUNF
X1NFVFJFR1MsIHRpZCwgMCwgJnJlZ3MpOw0KKyAgaWYgKHJldCA8IDApDQor
ICAgIHsNCisgICAgICB3YXJuaW5nICgiVW5hYmxlIHRvIHN0b3JlIGdlbmVy
YWwgcmVnaXN0ZXIuIik7DQorICAgICAgcmV0dXJuOw0KKyAgICB9DQorfQ0K
Kw0KK3N0YXRpYyB2b2lkDQogc3RvcmVfcmVncyAodm9pZCkNCiB7DQotICBp
bnQgcmV0LCByZWdubzsNCisgIGludCByZXQsIHJlZ25vLCB0aWQ7DQogICBz
dHJ1Y3QgcHRfcmVncyByZWdzOw0KIA0KLSAgcmV0ID0gcHRyYWNlIChQVFJB
Q0VfR0VUUkVHUywgaW5mZXJpb3JfcGlkLCAwLCAmcmVncyk7DQorICAvKiBH
ZXQgdGhlIHRocmVhZCBpZCBmb3IgdGhlIHB0cmFjZSBjYWxsLiAgKi8NCisg
IHRpZCA9IEdFVF9USFJFQURfSUQgKGluZmVyaW9yX3BpZCk7DQorICANCisg
IC8qIEZldGNoIHRoZSBnZW5lcmFsIHJlZ2lzdGVycy4gICovDQorICByZXQg
PSBwdHJhY2UgKFBUUkFDRV9HRVRSRUdTLCB0aWQsIDAsICZyZWdzKTsNCiAg
IGlmIChyZXQgPCAwKQ0KICAgICB7DQogICAgICAgd2FybmluZyAoIlVuYWJs
ZSB0byBmZXRjaCBnZW5lcmFsIHJlZ2lzdGVycy4iKTsNCkBAIC0yODUsNyAr
NTE0LDcgQEAgc3RvcmVfcmVncyAodm9pZCkNCiAJcmVhZF9yZWdpc3Rlcl9n
ZW4gKHJlZ25vLCAoY2hhciAqKSAmcmVncy51cmVnc1tyZWdub10pOw0KICAg
ICB9DQogDQotICByZXQgPSBwdHJhY2UgKFBUUkFDRV9TRVRSRUdTLCBpbmZl
cmlvcl9waWQsIDAsICZyZWdzKTsNCisgIHJldCA9IHB0cmFjZSAoUFRSQUNF
X1NFVFJFR1MsIHRpZCwgMCwgJnJlZ3MpOw0KIA0KICAgaWYgKHJldCA8IDAp
DQogICAgIHsNCkBAIC0zMDEsMTEgKzUzMCwxOSBAQCBzdG9yZV9yZWdzICh2
b2lkKQ0KIHZvaWQNCiBmZXRjaF9pbmZlcmlvcl9yZWdpc3RlcnMgKGludCBy
ZWdubykNCiB7DQotICBpZiAoKHJlZ25vIDwgRjBfUkVHTlVNKSB8fCAocmVn
bm8gPiBGUFNfUkVHTlVNKSkNCi0gICAgZmV0Y2hfcmVncyAoKTsNCisgIGlm
ICgtMSA9PSByZWdubykNCisgICAgew0KKyAgICAgIGZldGNoX3JlZ3MgKCk7
DQorICAgICAgZmV0Y2hfZnByZWdzICgpOw0KKyAgICB9DQorICBlbHNlIA0K
KyAgICB7DQorICAgICAgaWYgKHJlZ25vIDwgRjBfUkVHTlVNIHx8IHJlZ25v
ID4gRlBTX1JFR05VTSkNCisgICAgICAgIGZldGNoX3JlZ2lzdGVyIChyZWdu
byk7DQogDQotICBpZiAoKChyZWdubyA+PSBGMF9SRUdOVU0pICYmIChyZWdu
byA8PSBGUFNfUkVHTlVNKSkgfHwgKHJlZ25vID09IC0xKSkNCi0gICAgZmV0
Y2hfZnByZWdzICgpOw0KKyAgICAgIGlmIChyZWdubyA+PSBGMF9SRUdOVU0g
JiYgcmVnbm8gPD0gRlBTX1JFR05VTSkNCisgICAgICAgIGZldGNoX2ZwcmVn
aXN0ZXIgKHJlZ25vKTsNCisgICAgfQ0KIH0NCiANCiAvKiBTdG9yZSByZWdp
c3RlcnMgYmFjayBpbnRvIHRoZSBpbmZlcmlvci4gIFN0b3JlIGFsbCByZWdp
c3RlcnMgaWYNCkBAIC0zMTUsMTcgKzU1MiwxMTggQEAgZmV0Y2hfaW5mZXJp
b3JfcmVnaXN0ZXJzIChpbnQgcmVnbm8pDQogdm9pZA0KIHN0b3JlX2luZmVy
aW9yX3JlZ2lzdGVycyAoaW50IHJlZ25vKQ0KIHsNCi0gIGlmICgocmVnbm8g
PCBGMF9SRUdOVU0pIHx8IChyZWdubyA+IEZQU19SRUdOVU0pKQ0KLSAgICBz
dG9yZV9yZWdzICgpOw0KKyAgaWYgKC0xID09IHJlZ25vKQ0KKyAgICB7DQor
ICAgICAgc3RvcmVfcmVncyAoKTsNCisgICAgICBzdG9yZV9mcHJlZ3MgKCk7
DQorICAgIH0NCisgIGVsc2UNCisgICAgew0KKyAgICAgIGlmICgocmVnbm8g
PCBGMF9SRUdOVU0pIHx8IChyZWdubyA+IEZQU19SRUdOVU0pKQ0KKyAgICAg
ICAgc3RvcmVfcmVnaXN0ZXIgKHJlZ25vKTsNCiANCi0gIGlmICgoKHJlZ25v
ID49IEYwX1JFR05VTSkgJiYgKHJlZ25vIDw9IEZQU19SRUdOVU0pKSB8fCAo
cmVnbm8gPT0gLTEpKQ0KLSAgICBzdG9yZV9mcHJlZ3MgKCk7DQorICAgICAg
aWYgKChyZWdubyA+PSBGMF9SRUdOVU0pICYmIChyZWdubyA8PSBGUFNfUkVH
TlVNKSkNCisgICAgICAgIHN0b3JlX2ZwcmVnaXN0ZXIgKHJlZ25vKTsNCisg
ICAgfQ0KIH0NCiANCi1pbnQNCi1hcm1fbGludXhfcmVnaXN0ZXJfdV9hZGRy
IChpbnQgYmxvY2tlbmQsIGludCByZWdudW0pDQorLyogRmlsbCByZWdpc3Rl
ciByZWdubyAoaWYgaXQgaXMgYSBnZW5lcmFsLXB1cnBvc2UgcmVnaXN0ZXIp
IGluDQorICAgKmdyZWdzZXRwIHdpdGggdGhlIGFwcHJvcHJpYXRlIHZhbHVl
IGZyb20gR0RCJ3MgcmVnaXN0ZXIgYXJyYXkuDQorICAgSWYgcmVnbm8gaXMg
LTEsIGRvIHRoaXMgZm9yIGFsbCByZWdpc3RlcnMuICAqLw0KKw0KK3ZvaWQN
CitmaWxsX2dyZWdzZXQgKGdyZWdzZXRfdCAqZ3JlZ3NldHAsIGludCByZWdu
bykNCit7DQorICBpZiAoLTEgPT0gcmVnbm8pDQorICAgIHsNCisgICAgICBp
bnQgcmVnbnVtOw0KKyAgICAgIGZvciAocmVnbnVtID0gQTFfUkVHTlVNOyBy
ZWdudW0gPD0gUENfUkVHTlVNOyByZWdudW0rKykgDQorICAgICAgICBpZiAo
cmVnaXN0ZXJfdmFsaWRbcmVnbnVtXSkNCisJICByZWFkX3JlZ2lzdGVyX2dl
biAocmVnbnVtLCAoY2hhciAqKSAmKCpncmVnc2V0cClbcmVnbnVtXSk7DQor
ICAgIH0NCisgIGVsc2UgaWYgKHJlZ25vID49IEExX1JFR05VTSAmJiByZWdu
byA8PSBQQ19SRUdOVU0pDQorICAgIHsNCisgICAgICBpZiAocmVnaXN0ZXJf
dmFsaWRbcmVnbm9dKQ0KKwlyZWFkX3JlZ2lzdGVyX2dlbiAocmVnbm8sIChj
aGFyICopICYoKmdyZWdzZXRwKVtyZWdub10pOw0KKyAgICB9DQorDQorICBp
ZiAoUFNfUkVHTlVNID09IHJlZ25vIHx8IC0xID09IHJlZ25vKQ0KKyAgICB7
DQorICAgICAgaWYgKHJlZ2lzdGVyX3ZhbGlkW3JlZ25vXSB8fCAtMSA9PSBy
ZWdubykNCisgICAgICAgIHsNCisgICAgICAgICAgaWYgKGFybV9hcGNzXzMy
KQ0KKwkgICAgcmVhZF9yZWdpc3Rlcl9nZW4gKFBTX1JFR05VTSwgKGNoYXIg
KikgJigqZ3JlZ3NldHApW0NQU1JfUkVHTlVNXSk7DQorCSAgZWxzZQ0KKwkg
ICAgcmVhZF9yZWdpc3Rlcl9nZW4gKFBDX1JFR05VTSwgKGNoYXIgKikgJigq
Z3JlZ3NldHApW1BDX1JFR05VTV0pOw0KKwl9DQorICAgIH0NCisgICAgICAg
IA0KK30NCisNCisvKiBGaWxsIEdEQidzIHJlZ2lzdGVyIGFycmF5IHdpdGgg
dGhlIGdlbmVyYWwtcHVycG9zZSByZWdpc3RlciB2YWx1ZXMNCisgICBpbiAq
Z3JlZ3NldHAuICAqLw0KKw0KK3ZvaWQNCitzdXBwbHlfZ3JlZ3NldCAoZ3Jl
Z3NldF90ICpncmVnc2V0cCkNCiB7DQotICByZXR1cm4gYmxvY2tlbmQgKyBS
RUdJU1RFUl9CWVRFIChyZWdudW0pOw0KKyAgaW50IHJlZ25vLCByZWdfcGM7
DQorDQorICBmb3IgKHJlZ25vID0gQTFfUkVHTlVNOyByZWdubyA8IFBDX1JF
R05VTTsgcmVnbm8rKykNCisgICAgc3VwcGx5X3JlZ2lzdGVyIChyZWdubywg
KGNoYXIgKikgJigqZ3JlZ3NldHApW3JlZ25vXSk7DQorDQorICBpZiAoYXJt
X2FwY3NfMzIpDQorICAgIHN1cHBseV9yZWdpc3RlciAoUFNfUkVHTlVNLCAo
Y2hhciAqKSAmKCpncmVnc2V0cClbQ1BTUl9SRUdOVU1dKTsNCisgIGVsc2UN
CisgICAgc3VwcGx5X3JlZ2lzdGVyIChQU19SRUdOVU0sIChjaGFyICopICYo
KmdyZWdzZXRwKVtQQ19SRUdOVU1dKTsNCisNCisgIHJlZ19wYyA9IEFERFJf
QklUU19SRU1PVkUgKChDT1JFX0FERFIpKCpncmVnc2V0cClbUENfUkVHTlVN
XSk7DQorICBzdXBwbHlfcmVnaXN0ZXIgKFBDX1JFR05VTSwgKGNoYXIgKikg
JnJlZ19wYyk7DQorfQ0KKw0KKy8qIEZpbGwgcmVnaXN0ZXIgcmVnbm8gKGlm
IGl0IGlzIGEgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXIpIGluDQorICAgKmZw
cmVnc2V0cCB3aXRoIHRoZSBhcHByb3ByaWF0ZSB2YWx1ZSBmcm9tIEdEQidz
IHJlZ2lzdGVyIGFycmF5Lg0KKyAgIElmIHJlZ25vIGlzIC0xLCBkbyB0aGlz
IGZvciBhbGwgcmVnaXN0ZXJzLiAgKi8NCisNCit2b2lkDQorZmlsbF9mcHJl
Z3NldCAoZnByZWdzZXRfdCAqZnByZWdzZXRwLCBpbnQgcmVnbm8pDQorew0K
KyAgRlBBMTEgKmZwID0gKEZQQTExICopIGZwcmVnc2V0cDsNCisgIA0KKyAg
aWYgKC0xID09IHJlZ25vKQ0KKyAgICB7DQorICAgICAgIGludCByZWdudW07
DQorICAgICAgIGZvciAocmVnbnVtID0gRjBfUkVHTlVNOyByZWdudW0gPD0g
RjdfUkVHTlVNOyByZWdudW0rKykNCisgICAgICAgICBzdG9yZV9ud2ZwZV9y
ZWdpc3RlciAocmVnbnVtLCBmcCk7DQorICAgIH0NCisgIGVsc2UgaWYgKHJl
Z25vID49IEYwX1JFR05VTSAmJiByZWdubyA8PSBGN19SRUdOVU0pDQorICAg
IHsNCisgICAgICBzdG9yZV9ud2ZwZV9yZWdpc3RlciAocmVnbm8sIGZwKTsN
CisgICAgICByZXR1cm47DQorICAgIH0NCisNCisgIC8qIFN0b3JlIGZwc3Iu
ICAqLw0KKyAgaWYgKHJlZ2lzdGVyX3ZhbGlkW0ZQU19SRUdOVU1dKQ0KKyAg
ICBpZiAoRlBTX1JFR05VTSA9PSByZWdubyB8fCAtMSA9PSByZWdubykNCisg
ICAgICByZWFkX3JlZ2lzdGVyX2dlbiAoRlBTX1JFR05VTSwgKGNoYXIgKikg
JmZwLT5mcHNyKTsNCit9DQorDQorLyogRmlsbCBHREIncyByZWdpc3RlciBh
cnJheSB3aXRoIHRoZSBmbG9hdGluZy1wb2ludCByZWdpc3RlciB2YWx1ZXMN
CisgICBpbiAqZnByZWdzZXRwLiAgKi8NCisNCit2b2lkDQorc3VwcGx5X2Zw
cmVnc2V0IChmcHJlZ3NldF90ICpmcHJlZ3NldHApDQorew0KKyAgaW50IHJl
Z25vOw0KKyAgRlBBMTEgKmZwID0gKEZQQTExICopIGZwcmVnc2V0cDsNCisN
CisgIC8qIEZldGNoIGZwc3IuICAqLw0KKyAgc3VwcGx5X3JlZ2lzdGVyIChG
UFNfUkVHTlVNLCAoY2hhciAqKSAmZnAtPmZwc3IpOw0KKw0KKyAgLyogRmV0
Y2ggdGhlIGZsb2F0aW5nIHBvaW50IHJlZ2lzdGVycy4gICovDQorICBmb3Ig
KHJlZ25vID0gRjBfUkVHTlVNOyByZWdubyA8PSBGN19SRUdOVU07IHJlZ25v
KyspDQorICAgIHsNCisgICAgICBmZXRjaF9ud2ZwZV9yZWdpc3RlciAocmVn
bm8sIGZwKTsNCisgICAgfQ0KIH0NCiANCiBpbnQNCkluZGV4OiBjb25maWd1
cmUudGd0DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2N2
cy9zcmMvc3JjL2dkYi9jb25maWd1cmUudGd0LHYNCnJldHJpZXZpbmcgcmV2
aXNpb24gMS41DQpkaWZmIC11IC1wIC1yMS41IGNvbmZpZ3VyZS50Z3QNCi0t
LSBjb25maWd1cmUudGd0CTIwMDAvMDMvMjEgMDU6MjY6MzEJMS41DQorKysg
Y29uZmlndXJlLnRndAkyMDAwLzA0LzIwIDE5OjEwOjI5DQpAQCAtNTIsNyAr
NTIsOSBAQCBhbHBoYSotKi1saW51eCopCWdkYl90YXJnZXQ9YWxwaGEtbGlu
dXggDQogYXJjLSotKikJCWdkYl90YXJnZXQ9YXJjIDs7DQogDQogYXJtKi13
aW5jZS1wZSkJCWdkYl90YXJnZXQ9d2luY2UgOzsNCi1hcm0qLSotbGludXgq
KQkJZ2RiX3RhcmdldD1saW51eCA7Ow0KK2FybSotKi1saW51eCopCQlnZGJf
dGFyZ2V0PWxpbnV4IA0KKwkJCWNvbmZpZ2RpcnM9IiRjb25maWdkaXJzIGdk
YnNlcnZlciINCisJCQk7Ow0KIGFybSotKi0qIHwgdGh1bWIqLSotKiB8IHN0
cm9uZ2FybSotKi0qKQ0KIAkJCWdkYl90YXJnZXQ9ZW1iZWQNCiAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25maWdkaXJzPSIkY29uZmlnZGlycyByZGkt
c2hhcmUiDQpJbmRleDogY29uZmlnL2FybS9saW51eC5taA0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvY29u
ZmlnL2FybS9saW51eC5taCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMg0K
ZGlmZiAtdSAtcCAtcjEuMiBsaW51eC5taA0KLS0tIGxpbnV4Lm1oCTIwMDAv
MDIvMjggMjA6Mjg6MTAJMS4yDQorKysgbGludXgubWgJMjAwMC8wNC8yMCAx
OToxMDozMA0KQEAgLTUsNCArNSw3IEBAIFhERVBGSUxFUz0gc2VyLXRjcC5v
DQogDQogTkFUX0ZJTEU9IG5tLWxpbnV4LmgNCiBOQVRERVBGSUxFUz0gaW5m
cHRyYWNlLm8gc29saWIubyBpbmZ0YXJnLm8gZm9yay1jaGlsZC5vIGNvcmVs
b3cubyBcDQotCSAgICAgY29yZS1hb3V0Lm8gYXJtLWxpbnV4LW5hdC5vDQor
CSAgICAgY29yZS1yZWdzZXQubyBhcm0tbGludXgtbmF0Lm8gbGludXgtdGhy
ZWFkLm8gbGluLXRocmVhZC5vDQorDQorTE9BRExJQkVTPSAtbGRsIC1yZHlu
YW1pYw0KKw0KSW5kZXg6IGNvbmZpZy9hcm0vbm0tbGludXguaA0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIv
Y29uZmlnL2FybS9ubS1saW51eC5oLHYNCnJldHJpZXZpbmcgcmV2aXNpb24g
MS4xLjEuMQ0KZGlmZiAtdSAtcCAtcjEuMS4xLjEgbm0tbGludXguaA0KLS0t
IG5tLWxpbnV4LmgJMTk5OS8xMi8yMiAyMTo0NToxMgkxLjEuMS4xDQorKysg
bm0tbGludXguaAkyMDAwLzA0LzIwIDE5OjEwOjMwDQpAQCAtMjEsMjYgKzIx
LDEzIEBADQogI2lmbmRlZiBOTV9BUk1MSU5VWF9IDQogI2RlZmluZSBOTV9B
Uk1MSU5VWF9IDQogDQorI2luY2x1ZGUgIm5tLWxpbnV4LmgiDQorDQogLyog
UmV0dXJuIHNpemVvZiB1c2VyIHN0cnVjdCB0byBjYWxsZXJzIGluIGxlc3Mg
bWFjaGluZSBkZXBlbmRlbnQgcm91dGluZXMgKi8NCiBleHRlcm4gaW50IGtl
cm5lbF91X3NpemUgKHZvaWQpOw0KICNkZWZpbmUgS0VSTkVMX1VfU0laRQlh
cm1fbGludXhfa2VybmVsX3Vfc2l6ZSgpDQogDQogLyogT3ZlcnJpZGUgY29w
aWVzIG9mIHtmZXRjaCxzdG9yZX1faW5mZXJpb3JfcmVnaXN0ZXJzIGluIGlu
ZnB0cmFjZS5jLiAgKi8NCiAjZGVmaW5lIEZFVENIX0lORkVSSU9SX1JFR0lT
VEVSUw0KLQ0KLS8qIFRlbGwgZ2RiIHRoYXQgd2UgY2FuIGF0dGFjaCBhbmQg
ZGV0YWNoIG90aGVyIHByb2Nlc3Nlcy4gICovDQotI2RlZmluZSBBVFRBQ0hf
REVUQUNIDQotDQotZXh0ZXJuIGludCBhcm1fcmVnaXN0ZXJfdV9hZGRyIChp
bnQsIGludCk7DQotI2RlZmluZSBSRUdJU1RFUl9VX0FERFIoYWRkciwgYmxv
Y2tlbmQsIHJlZ25vKSBcDQotCXsgKGFkZHIpID0gYXJtX2xpbnV4X3JlZ2lz
dGVyX3VfYWRkcigoYmxvY2tlbmQpLCAocmVnbm8pKTsgfQ0KLQ0KLS8qIFdl
IGRlZmluZSB0aGlzIGlmIGxpbmsuaCBpcyBhdmFpbGFibGUsIGJlY2F1c2Ug
d2l0aCBFTEYgd2UgdXNlIFNWUjQgc3R5bGUNCi0gICBzaGFyZWQgbGlicmFy
aWVzLiAqLw0KLQ0KLSNpZmRlZiBIQVZFX0xJTktfSA0KLSNkZWZpbmUgU1ZS
NF9TSEFSRURfTElCUw0KLSNpbmNsdWRlICJzb2xpYi5oIgkJLyogU3VwcG9y
dCBmb3Igc2hhcmVkIGxpYnJhcmllcy4gKi8NCi0jZW5kaWYNCiANCiAjZW5k
aWYgLyogTk1fQVJNTElOVVhfSCAqLw0K
------------=_1583534348-29877-8--
From scottb@netwinder.org Thu Apr 20 14:32:00 2000
From: Scott Bambrough <scottb@netwinder.org>
To: GDB Patches Mail List <gdb-patches@sourceware.cygnus.com>
Subject: RFC: Testsuite patches, a few comments and questions...
Date: Thu, 20 Apr 2000 14:32:00 -0000
Message-id: <38FF766A.9C4989F2@netwinder.org>
X-SW-Source: 2000-04/msg00399.html
Content-type: multipart/mixed; boundary="----------=_1583534348-29877-9"
This is a multi-part message in MIME format...
------------=_1583534348-29877-9
Content-length: 7273
I spent most of today running the testsuite on the 5.0 branch on a NetWinder.
My goal was to get rid of all XPASS and UNTESTED results. I also took the time
to examine which tests were not being run on my platform and why. In many cases
that boiled down to which tests ran only on HP platforms.
Using the attached patches to the test suite I can achieve the appended results
on ARM Linux in the GDB 5.0 branch. Most of the patches remove setup_xfails or
simple enable the tests to be run on ARM Linux. The lone exception is:
* testsuite/gdb.base/so-impl-ld.exp: Fixed typo in triplet for
linux. Added wildcard to handle gnu-oldld case on ARM.
I had to remove a leading space in the triplet to get the test to run. I also
added a wildcard ("*") after the gnu to handle the arm*-*-linux-gnuoldld target.
I enabled the following tests to run on ARM Linux. For the most part, the
previously they only ran on HP configurations. They are included in the
appended results. For the most part they seem to be useful tests for Linux in
general, but are just run for HP configurations. I'd appreciate comments if
someone thinks they are not. I only gave them a cursory once over during my
tests today.
gdb.base/environ.exp 23/26 tests pass
gdb.base/recurse.exp 19/19 tests pass
gdb.base/sect-cmd.exp 3/4 tests pass
gdb.base/so-indr-cl.exp 1/2 tests pass
I also tried the following tests on ARM Linux. None of these run on anything
but HP configurations. They are NOT included in the attached results. These
seem like they would be useful, but for the most part more than 50% of the tests
fail. I've spent no time following these up. Some of the results are
surprising; completion.exp tests command line completion. I'd expect it to work
on any machine. Comments would interest me.
gdb.base/attach.exp 15/23 tests pass
gdb.base/completion.exp 4/23 tests pass
gdb.base/foll-exec.exp 12/27 tests pass
gdb.base/foll-fork.exp 15/26 tests pass
gdb.base/foll-vfork.exp 6/15 tests pass
gdb.base/member-ptr.exp 12/39 tests pass
gdb.base/solib.exp 0/26 tests pass
I also tried the following tests on ARM Linux. None of these compiled for me.
gdb.c++/ambiguous.exp
gdb.c++/ctti.exp
gdb.threads/step.exp
gdb.threads/step2.exp
I don't understand the following code from pthreads.exp:
proc test_startup {} {
global srcdir srcfile gdb_prompt expect_out
global horiz
global main_id thread1_id thread2_id
# We should be able to do an info threads before starting any others.
send_gdb "info threads\n"
gdb_expect {
-re ".*Thread.*LWP.*main.*$gdb_prompt $" {
pass "info threads"
}
-re "\r\n$gdb_prompt $" {
pass "info threads"
setup_xfail "*-*-*"
fail "gdb does not support pthreads for this machine"
return 0
...
The last expect case is very odd. It succeeds, sets up an xfail, fails and
exits deliberately as it is starting the tests. Why? Is there some reason for
this?
While I did this work in the branch, I'm not convinced the patch is suitable for
it. Any comments?
The results follow:
Native configuration is armv4l-unknown-linux-gnu
=== gdb tests ===
Running target unix
FAIL: gdb.base/annota1.exp: run until main breakpoint
FAIL: gdb.base/annota1.exp: backtrace from shlibrary
FAIL: gdb.base/annota1.exp: backtrace @ signal handler
FAIL: gdb.base/break.exp: break main #1
FAIL: gdb.base/break.exp: break main #2
FAIL: gdb.base/break.exp: clear main
FAIL: gdb.base/break.exp: breakpoint function, optimized file
FAIL: gdb.base/break.exp: run until function breakpoint, optimized file
FAIL: gdb.base/break.exp: run until breakpoint set at small function, optimized
file
FAIL: gdb.base/commands.exp: continue in infrun_breakpoint_command_test
FAIL: gdb.base/corefile.exp: args: -core=corefile
FAIL: gdb.base/environ.exp: info program
FAIL: gdb.base/environ.exp: info program after step
FAIL: gdb.base/environ.exp: info program after deleted breakpoint
FAIL: gdb.base/interrupt.exp: continue
FAIL: gdb.base/interrupt.exp: send end of file
FAIL: gdb.base/return.exp: correct value returned double test (known problem
with i*86 and sparc solaris
FAIL: gdb.base/sect-cmd.exp: set section command
FAIL: gdb.base/selftest.exp: backtrace through signal handler
FAIL: gdb.base/sigall.exp: get signal CHLD
FAIL: gdb.base/sigall.exp: advance to TTIN
FAIL: gdb.base/sigall.exp: get signal TTIN
FAIL: gdb.base/signals.exp: 'next' behaved as 'continue (known SVR4 bug)'
FAIL: gdb.base/signals.exp: bt in signals.exp
FAIL: gdb.base/so-impl-ld.exp: step into solib call
FAIL: gdb.base/so-impl-ld.exp: step in solib call
FAIL: gdb.base/so-impl-ld.exp: step out of solib call
FAIL: gdb.base/so-indr-cl.exp: break on indirect solib call before running
FAIL: gdb.base/step-test.exp: large struct by value
FAIL: gdb.base/step-test.exp: continue until exit at step-test.exp: the program
is no longer running
FAIL: gdb.base/structs2.exp: structs2 continue2 (PRMS 13536)
FAIL: gdb.c++/annota2.exp: delete bps
FAIL: gdb.c++/annota2.exp: annotate-quit
FAIL: gdb.c++/virtfunc.exp: print pEe->vvb()
FAIL: gdb.mi/mi-console.exp: Hello message (timeout)
FAIL: gdb.mi/mi-stack.exp: stack args listing 0
FAIL: gdb.mi/mi-stack.exp: stack args listing 1
FAIL: gdb.mi/mi-stack.exp: stack info-depth
FAIL: gdb.mi/mi-stack.exp: stack info-depth 99
FAIL: gdb.stabs/weird.exp: p v_comb
=== gdb Summary ===
# of expected passes 6929
# of unexpected failures 40
# of expected failures 175
2000-04-19 Scott Bambrough <scottb@netwinder.org>
* testsuite/gdb.base/environ.exp: Run tests for arm*-*-linux-gnu*.
* testsuite/gdb.base/recurse.exp: Run tests for arm*-*-linux-gnu*.
* testsuite/gdb.base/sect-cmd.exp: Run tests for arm*-*-linux-gnu*.
* testsuite/gdb.base/so-impl-ld.exp: Fixed typo in triplet for
linux. Added wildcard to handle gnu-oldld case on ARM.
* testsuite/gdb.base/so-indr-cl.exp: Run tests for arm*-*-linux-gnu*.
* testsuite/gdb.base/watchpoint.exp (test_stepping): Clear xfail.
* testsuite/gdb.c++/derivation.exp
(print g_instance.afoo): Remove setup_xfail "*-*-*".
(print g_instance.bfoo): Remove setup_xfail "*-*-*".
(print g_instance.cfoo): Remove setup_xfail "*-*-*".
* testsuite/gdb.c++/overload.exp
(print foo_instance1.overload_args()): Remove setup_xfail "*-*-*"
on all tests (1-11 arguments).
(print foo_instance1.overload1arg()): Remove setup_xfail "*-*-*"
on all tests (none, char, signed char, unsigned char, short,
unsigned short, int, unsigned int, long, unsigned long, float
and double arguments).
* testsuite/gdb.c++/virtfunc.exp
(print pAa->f()): Remove setup_xfail "*-*-*".
(print pDe->vg()): Remove setup_xfail "*-*-*".
(print pADe->vg()): Remove setup_xfail "*-*-*".
(print pDd->vg()): Remove setup_xfail "*-*-*".
(print pEe->vvb()): Remove setup_xfail "*-*-*".
(print pVb->vvb()): Remove setup_xfail "*-*-*".
--
Scott Bambrough - Software Engineer
REBEL.COM http://www.rebel.com
NetWinder http://www.netwinder.org
testsuite.patch
------------=_1583534348-29877-9
Content-Type: text/x-diff; charset=us-ascii; name="testsuite.patch"
Content-Disposition: inline; filename="testsuite.patch"
Content-Transfer-Encoding: base64
Content-Length: 17398
SW5kZXg6IGdkYi5iYXNlL2Vudmlyb24uZXhwDQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09DQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi90ZXN0c3VpdGUv
Z2RiLmJhc2UvZW52aXJvbi5leHAsdg0KcmV0cmlldmluZyByZXZpc2lvbiAx
LjEuMS4xDQpkaWZmIC11IC1wIC1yMS4xLjEuMSBlbnZpcm9uLmV4cA0KLS0t
IGVudmlyb24uZXhwCTE5OTkvMDQvMTYgMDE6MzQ6MzAJMS4xLjEuMQ0KKysr
IGVudmlyb24uZXhwCTIwMDAvMDQvMjAgMTk6MDk6MDANCkBAIC0zMyw3ICsz
Myw3IEBAIHNldCBidWdfaWQgMA0KICMgVGhpcyB0ZXN0IGV4aXN0cyBzb2xl
bHkgdG8gZXhlcmNpc2UgdGhlICJlbnZpcm9ubWVudCIgY29tbWFuZHMgZm9y
DQogIyBjb2RlLWNvdmVyYWdlIG9uIEhQLVVYLg0KICMNCi1pZiAhW2lzdGFy
Z2V0ICJocHBhKi0qLWhwdXgqIl0gdGhlbiB7DQoraWYgeyAhKFtpc3Rhcmdl
dCAiaHBwYSotKi1ocHV4KiJdIHx8IFtpc3RhcmdldCAiYXJtKi0qLWxpbnV4
LWdudSoiXSl9IHRoZW4gew0KICAgcmV0dXJuDQogfQ0KIA0KSW5kZXg6IGdk
Yi5iYXNlL3JlY3Vyc2UuZXhwDQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS
Q1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uv
cmVjdXJzZS5leHAsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjEuMS4xDQpk
aWZmIC11IC1wIC1yMS4xLjEuMSByZWN1cnNlLmV4cA0KLS0tIHJlY3Vyc2Uu
ZXhwCTE5OTkvMDQvMTYgMDE6MzQ6MzEJMS4xLjEuMQ0KKysrIHJlY3Vyc2Uu
ZXhwCTIwMDAvMDQvMjAgMTk6MDk6MDENCkBAIC0xMjksNyArMTI5LDcgQEAg
cHJvYyByZWN1cnNlX3Rlc3RzIHt9IHsNCiANCiAjIE9ubHkgZW5hYmxlZCBm
b3Igc29tZSB0YXJnZXRzIG1lcmVseSBiZWNhdXNlIGl0IGhhcyBub3QgYmVl
biB0ZXN0ZWQgDQogIyBlbHNld2hlcmUuDQotaWYge1tpc3RhcmdldCAic3Bh
cmMqLSotc3Vub3M0KiJdIHx8IFtpc3RhcmdldCAiaHBwYSotKi1ic2QqIl0g
fHwgW2lzdGFyZ2V0ICJocHBhKi0qLWhwdXgqIl0gfHwgW2lzdGFyZ2V0ICJz
cGFyY2xldC0qLSoiXSB8fCBbaXN0YXJnZXQgIm0zMnItKi1lbGYiXSB8fCBb
aXN0YXJnZXQgIm1uMTAyMDAtKi0qIl0gfHwgW2lzdGFyZ2V0ICJtbjEwMzAw
LSotKiJdfSB0aGVuIHsNCitpZiB7W2lzdGFyZ2V0ICJzcGFyYyotKi1zdW5v
czQqIl0gfHwgW2lzdGFyZ2V0ICJocHBhKi0qLWJzZCoiXSB8fCBbaXN0YXJn
ZXQgImhwcGEqLSotaHB1eCoiXSB8fCBbaXN0YXJnZXQgInNwYXJjbGV0LSot
KiJdIHx8IFtpc3RhcmdldCAibTMyci0qLWVsZiJdIHx8IFtpc3RhcmdldCAi
bW4xMDIwMC0qLSoiXSB8fCBbaXN0YXJnZXQgIm1uMTAzMDAtKi0qIl0gfHwg
W2lzdGFyZ2V0ICJhcm12Ki0qLWxpbnV4LWdudSoiXX0gdGhlbiB7DQogDQog
ICAgICMgUHJlc2VydmUgdGhlIG9sZCB0aW1lb3V0LCBhbmQgc2V0IGEgbmV3
IG9uZSB0aGF0IHNob3VsZCBiZQ0KICAgICAjIHN1ZmZpY2llbnQgdG8gYXZv
aWQgdGltaW5nIG91dCBkdXJpbmcgdGhpcyB0ZXN0Lg0KSW5kZXg6IGdkYi5i
YXNlL3NlY3QtY21kLmV4cA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNT
IGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL3Nl
Y3QtY21kLmV4cCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMS4xLjINCmRp
ZmYgLXUgLXAgLXIxLjEuMS4yIHNlY3QtY21kLmV4cA0KLS0tIHNlY3QtY21k
LmV4cAkxOTk5LzA2LzI4IDE2OjAzOjUzCTEuMS4xLjINCisrKyBzZWN0LWNt
ZC5leHAJMjAwMC8wNC8yMCAxOTowOTowMQ0KQEAgLTM0LDcgKzM0LDcgQEAg
c2V0IGJ1Z19pZCAwDQogIyBjb21tYW5kIGlzbid0IG5lZWRlZCBvbiBIUC1V
WCwgYnV0IHByb2JhYmx5IGlzIGZvciBlbWJlZGRlZA0KICMgYXBwcy4pDQog
Iw0KLWlmICFbaXN0YXJnZXQgImhwcGEqLSotaHB1eCoiXSB0aGVuIHsNCitp
ZiB7ICEoW2lzdGFyZ2V0ICJocHBhKi0qLWhwdXgqIl0gfHwgW2lzdGFyZ2V0
ICJhcm0qLSotbGludXgtZ251KiJdKX0gdGhlbiB7DQogICByZXR1cm4NCiB9
DQogDQpJbmRleDogZ2RiLmJhc2Uvc28taW1wbC1sZC5leHANCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL3Rl
c3RzdWl0ZS9nZGIuYmFzZS9zby1pbXBsLWxkLmV4cCx2DQpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuMS4xLjMNCmRpZmYgLXUgLXAgLXIxLjEuMS4zIHNvLWlt
cGwtbGQuZXhwDQotLS0gc28taW1wbC1sZC5leHAJMjAwMC8wMS8xMSAwMzow
NzozNAkxLjEuMS4zDQorKysgc28taW1wbC1sZC5leHAJMjAwMC8wNC8yMCAx
OTowOTowMQ0KQEAgLTM2LDcgKzM2LDcgQEAgaWYgIVtpc25hdGl2ZV0gdGhl
biB7DQogIA0KIGlmIHshIChbaXN0YXJnZXQgImhwcGEqLSotKmhwdXgqIl0N
CiAgICAgICAgfHwgW2lzdGFyZ2V0ICJzcGFyYy1zdW4tc29sYXJpcyoiXQ0K
LSAgICAgICB8fCBbaXN0YXJnZXQgIiAqLSotbGludXgtZ251Il0pIH0gew0K
KyAgICAgICB8fCBbaXN0YXJnZXQgIiotKi1saW51eC1nbnUqIl0pIH0gew0K
IAkgcmV0dXJuDQogfQ0KIA0KSW5kZXg6IGdkYi5iYXNlL3NvLWluZHItY2wu
ZXhwDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2N2cy9z
cmMvc3JjL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uvc28taW5kci1jbC5leHAs
dg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjEuMS4zDQpkaWZmIC11IC1wIC1y
MS4xLjEuMyBzby1pbmRyLWNsLmV4cA0KLS0tIHNvLWluZHItY2wuZXhwCTIw
MDAvMDEvMTEgMDM6MDc6MzQJMS4xLjEuMw0KKysrIHNvLWluZHItY2wuZXhw
CTIwMDAvMDQvMjAgMTk6MDk6MDENCkBAIC0zMyw3ICszMyw3IEBAIGlmICFb
aXNuYXRpdmVdIHRoZW4gew0KICMgdGhhdCB3ZSB1c2UgSFAtVVgtc3BlY2lm
aWMgY29tcGlsZXIgJiBsaW5rZXIgb3B0aW9ucyB0byBidWlsZA0KICMgdGhl
IHRlc3RjYXNlLg0KICMNCi1pZiB7ISBbaXN0YXJnZXQgImhwcGEqLSotKmhw
dXgqIl0gfSB7DQoraWYgeyAhKFtpc3RhcmdldCAiaHBwYSotKi0qaHB1eCoi
XSB8fCBbaXN0YXJnZXQgImFybSotKi1saW51eC1nbnUqIl0pfSB7DQogICAg
IHJldHVybg0KIH0NCiANCkluZGV4OiBnZGIuYmFzZS93YXRjaHBvaW50LmV4
cA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnMvc3Jj
L3NyYy9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL3dhdGNocG9pbnQuZXhwLHYN
CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xLjEuOA0KZGlmZiAtdSAtcCAtcjEu
MS4xLjggd2F0Y2hwb2ludC5leHANCi0tLSB3YXRjaHBvaW50LmV4cAkyMDAw
LzAyLzA1IDA3OjMwOjAwCTEuMS4xLjgNCisrKyB3YXRjaHBvaW50LmV4cAky
MDAwLzA0LzIwIDE5OjA5OjAzDQpAQCAtMzc2LDYgKzM3Niw3IEBAIHByb2Mg
dGVzdF9zdGVwcGluZyB7fSB7DQogCSMgVGhpcyBkb2Vzbid0IG9jY3VyIGlm
IHRoZSBjYWxsIGR1bW15IHN0YXJ0cyB3aXRoIGEgY2FsbCwNCiAJIyBiZWNh
dXNlIHdlIGFyZSBvdXQgb2YgdGhlIGR1bW15IGJ5IHRoZSBmaXJzdCB0aW1l
IHRoZSBpbmZlcmlvcg0KIAkjIHN0b3BzLg0KKyAgICAgICAgY2xlYXJfeGZh
aWwgImFybSotKi0qIg0KIAljbGVhcl94ZmFpbCAiZDEwdiotKi0qIg0KIAlj
bGVhcl94ZmFpbCAibTY4Ki0qLSoiDQogCWNsZWFyX3hmYWlsICJpKjg2Ki0q
LSoiDQpJbmRleDogZ2RiLmMrKy9kZXJpdmF0aW9uLmV4cA0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvdGVz
dHN1aXRlL2dkYi5jKysvZGVyaXZhdGlvbi5leHAsdg0KcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjEuMS44DQpkaWZmIC11IC1wIC1yMS4xLjEuOCBkZXJpdmF0
aW9uLmV4cA0KLS0tIGRlcml2YXRpb24uZXhwCTE5OTkvMTIvMDcgMDM6NTY6
MTcJMS4xLjEuOA0KKysrIGRlcml2YXRpb24uZXhwCTIwMDAvMDQvMjAgMTk6
MDk6MDMNCkBAIC0zMDEsNyArMzAxLDYgQEAgZ2RiX2V4cGVjdCB7DQogIyBU
aGUgZm9sbG93aW5nIGNhc2VzIGFsd2F5cyBmYWlsIHdpdGggZysrIG91dHB1
dCwgYW5kIHNob3VsZCBiZSBmaXhlZA0KICMgc29tZWRheS4gLXN0cyAxOTk5
LTA4LTI1DQogDQotaWYgeyAkZ2NjX2NvbXBpbGVkIH0geyBzZXR1cF94ZmFp
bCAiKi0qLSoiIH0NCiBzZW5kX2dkYiAicHJpbnQgZ19pbnN0YW5jZS5hZm9v
KClcbiINCiBnZGJfZXhwZWN0IHsNCiAgICAgLXJlICIuXFswLTlcXSogPSAx
LiokZ2RiX3Byb21wdCAkIiB7DQpAQCAtMzExLDcgKzMxMCw2IEBAIGdkYl9l
eHBlY3Qgew0KICAgICB0aW1lb3V0ICAgICAgICAgICB7IGZhaWwgIih0aW1l
b3V0KSBwcmludCB2YWx1ZSBvZiBnX2luc3RhbmNlLmFmb28oKSIgfQ0KICAg
fQ0KIA0KLWlmIHsgJGdjY19jb21waWxlZCB9IHsgc2V0dXBfeGZhaWwgIiot
Ki0qIiB9DQogc2VuZF9nZGIgInByaW50IGdfaW5zdGFuY2UuYmZvbygpXG4i
DQogZ2RiX2V4cGVjdCB7DQogICAgIC1yZSAiLlxbMC05XF0qID0gMi4qJGdk
Yl9wcm9tcHQgJCIgew0KQEAgLTMyMSw3ICszMTksNiBAQCBnZGJfZXhwZWN0
IHsNCiAgICAgdGltZW91dCAgICAgICAgICAgeyBmYWlsICIodGltZW91dCkg
cHJpbnQgdmFsdWUgb2YgZ19pbnN0YW5jZS5iZm9vKCkiIH0NCiAgIH0NCiAN
Ci1pZiB7ICRnY2NfY29tcGlsZWQgfSB7IHNldHVwX3hmYWlsICIqLSotKiIg
fQ0KIHNlbmRfZ2RiICJwcmludCBnX2luc3RhbmNlLmNmb28oKVxuIg0KIGdk
Yl9leHBlY3Qgew0KICAgICAtcmUgIi5cWzAtOVxdKiA9IDMuKiRnZGJfcHJv
bXB0ICQiIHsNCkluZGV4OiBnZGIuYysrL292ZXJsb2FkLmV4cA0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIv
dGVzdHN1aXRlL2dkYi5jKysvb3ZlcmxvYWQuZXhwLHYNCnJldHJpZXZpbmcg
cmV2aXNpb24gMS4xLjEuNQ0KZGlmZiAtdSAtcCAtcjEuMS4xLjUgb3Zlcmxv
YWQuZXhwDQotLS0gb3ZlcmxvYWQuZXhwCTE5OTkvMDkvMjIgMDM6MjY6MjMJ
MS4xLjEuNQ0KKysrIG92ZXJsb2FkLmV4cAkyMDAwLzA0LzIwIDE5OjA5OjA0
DQpAQCAtMTI0LDcgKzEyNCw2IEBAIGdkYl9leHBlY3Qgew0KICMgYmUgZmls
bGVkIGluIGNvcnJlY3RseS4gIFVudGlsIHRoaXMgZ2V0cyBmaXhlZCwgZG9u
J3QgZXhwZWN0IHRvIHBhc3MNCiAjIHRoZXNlIHRlc3RzLg0KIA0KLXNldHVw
X3hmYWlsICIqLSotKiIgQ0xMYnMxNjkwMQ0KIHNlbmRfZ2RiICJwcmludCBm
b29faW5zdGFuY2UxLm92ZXJsb2FkYXJncygxKVxuIg0KIGdkYl9leHBlY3Qg
ew0KICAgICAtcmUgIi5cWzAtOVxdKiA9IDFcclxuJGdkYl9wcm9tcHQgJCIg
ew0KQEAgLTEzNSw4ICsxMzQsNiBAQCBnZGJfZXhwZWN0IHsNCiAgIH0NCiAN
CiANCi1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJzMTY5MDENCi0NCiBzZW5k
X2dkYiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVybG9hZGFyZ3MoMSwgMilc
biINCiBnZGJfZXhwZWN0IHsNCiAgICAgLXJlICIuXFswLTlcXSogPSAyXHJc
biRnZGJfcHJvbXB0ICQiIHsNCkBAIC0xNDcsOCArMTQ0LDYgQEAgZ2RiX2V4
cGVjdCB7DQogICB9DQogDQogDQotc2V0dXBfeGZhaWwgIiotKi0qIiBDTExi
czE2OTAxDQotDQogc2VuZF9nZGIgInByaW50IGZvb19pbnN0YW5jZTEub3Zl
cmxvYWRhcmdzKDEsIDIsIDMpXG4iDQogZ2RiX2V4cGVjdCB7DQogICAgIC1y
ZSAiLlxbMC05XF0qID0gM1xyXG4kZ2RiX3Byb21wdCAkIiB7DQpAQCAtMTU5
LDggKzE1NCw2IEBAIGdkYl9leHBlY3Qgew0KICAgfQ0KIA0KIA0KLXNldHVw
X3hmYWlsICIqLSotKiIgQ0xMYnMxNjkwMQ0KLQ0KIHNlbmRfZ2RiICJwcmlu
dCBmb29faW5zdGFuY2UxLm92ZXJsb2FkYXJncygxLCAyLCAzLCA0KVxuIg0K
IGdkYl9leHBlY3Qgew0KICAgICAtcmUgIi5cWzAtOVxdKiA9IDRcclxuJGdk
Yl9wcm9tcHQgJCIgew0KQEAgLTE3MSw4ICsxNjQsNiBAQCBnZGJfZXhwZWN0
IHsNCiAgIH0NCiANCiANCi1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJzMTY5
MDENCi0NCiBzZW5kX2dkYiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVybG9h
ZGFyZ3MoMSwgMiwgMywgNCwgNSlcbiINCiBnZGJfZXhwZWN0IHsNCiAgICAg
LXJlICIuXFswLTlcXSogPSA1XHJcbiRnZGJfcHJvbXB0ICQiIHsNCkBAIC0x
ODMsOCArMTc0LDYgQEAgZ2RiX2V4cGVjdCB7DQogICB9DQogDQogDQotc2V0
dXBfeGZhaWwgIiotKi0qIiBDTExiczE2OTAxDQotDQogc2VuZF9nZGIgInBy
aW50IGZvb19pbnN0YW5jZTEub3ZlcmxvYWRhcmdzKDEsIDIsIDMsIDQsIDUs
IDYpXG4iDQogZ2RiX2V4cGVjdCB7DQogICAgIC1yZSAiLlxbMC05XF0qID0g
NlxyXG4kZ2RiX3Byb21wdCAkIiB7DQpAQCAtMTk1LDggKzE4NCw2IEBAIGdk
Yl9leHBlY3Qgew0KICAgfQ0KIA0KIA0KLXNldHVwX3hmYWlsICIqLSotKiIg
Q0xMYnMxNjkwMQ0KLQ0KIHNlbmRfZ2RiICJwcmludCBmb29faW5zdGFuY2Ux
Lm92ZXJsb2FkYXJncygxLCAyLCAzLCA0LCA1LCA2LCA3KVxuIg0KIGdkYl9l
eHBlY3Qgew0KICAgICAtcmUgIi5cWzAtOVxdKiA9IDdcclxuJGdkYl9wcm9t
cHQgJCIgew0KQEAgLTIwNyw4ICsxOTQsNiBAQCBnZGJfZXhwZWN0IHsNCiAg
IH0NCiANCiANCi1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJzMTY5MDENCi0N
CiBzZW5kX2dkYiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVybG9hZGFyZ3Mo
MSwgMiwgMywgNCwgNSwgNiwgNywgOClcbiINCiBnZGJfZXhwZWN0IHsNCiAg
ICAgLXJlICIuXFswLTlcXSogPSA4XHJcbiRnZGJfcHJvbXB0ICQiIHsNCkBA
IC0yMTksOCArMjA0LDYgQEAgZ2RiX2V4cGVjdCB7DQogICB9DQogDQogDQot
c2V0dXBfeGZhaWwgIiotKi0qIiBDTExiczE2OTAxDQotDQogc2VuZF9nZGIg
InByaW50IGZvb19pbnN0YW5jZTEub3ZlcmxvYWRhcmdzKDEsIDIsIDMsIDQs
IDUsIDYsIDcsIDgsIDkpXG4iDQogZ2RiX2V4cGVjdCB7DQogICAgIC1yZSAi
LlxbMC05XF0qID0gOVxyXG4kZ2RiX3Byb21wdCAkIiB7DQpAQCAtMjMxLDgg
KzIxNCw2IEBAIGdkYl9leHBlY3Qgew0KICAgfQ0KIA0KIA0KLXNldHVwX3hm
YWlsICIqLSotKiIgQ0xMYnMxNjkwMQ0KLQ0KIHNlbmRfZ2RiICJwcmludCBm
b29faW5zdGFuY2UxLm92ZXJsb2FkYXJncygxLCAyLCAzLCA0LCA1LCA2LCA3
LCA4LCA5LCAxMClcbiINCiBnZGJfZXhwZWN0IHsNCiAgICAgLXJlICIuXFsw
LTlcXSogPSAxMFxyXG4kZ2RiX3Byb21wdCAkIiB7DQpAQCAtMjQzLDggKzIy
NCw2IEBAIGdkYl9leHBlY3Qgew0KICAgfQ0KIA0KIA0KLXNldHVwX3hmYWls
ICIqLSotKiIgQ0xMYnMxNjkwMQ0KLQ0KIHNlbmRfZ2RiICJwcmludCBmb29f
aW5zdGFuY2UxLm92ZXJsb2FkYXJncygxLCAyLCAzLCA0LCA1LCA2LCA3LCA4
LCA5LCAxMCwgMTEpXG4iDQogZ2RiX2V4cGVjdCB7DQogICAgIC1yZSAiLlxb
MC05XF0qID0gMTFcclxuJGdkYl9wcm9tcHQgJCIgew0KQEAgLTI1NSw4ICsy
MzQsNiBAQCBnZGJfZXhwZWN0IHsNCiAgIH0NCiANCiANCi1zZXR1cF94ZmFp
bCAiKi0qLSoiIENMTGJzMTY5MDENCi0NCiBzZW5kX2dkYiAicHJpbnQgZm9v
X2luc3RhbmNlMS5vdmVybG9hZDFhcmcoKVxuIg0KIGdkYl9leHBlY3Qgew0K
ICAgICAtcmUgIi5cWzAtOVxdKiA9IDFcclxuJGdkYl9wcm9tcHQgJCIgew0K
QEAgLTI2Nyw4ICsyNDQsNiBAQCBnZGJfZXhwZWN0IHsNCiAgIH0NCiANCiAN
Ci1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJzMTY5MDENCi0NCiBzZW5kX2dk
YiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVybG9hZDFhcmcoKGNoYXIpYXJn
MilcbiINCiBnZGJfZXhwZWN0IHsNCiAgICAgLXJlICIuXFswLTlcXSogPSAy
XHJcbiRnZGJfcHJvbXB0ICQiIHsNCkBAIC0yNzksOCArMjU0LDYgQEAgZ2Ri
X2V4cGVjdCB7DQogICB9DQogDQogDQotc2V0dXBfeGZhaWwgIiotKi0qIiBD
TExiczE2OTAxDQotDQogc2VuZF9nZGIgInByaW50IGZvb19pbnN0YW5jZTEu
b3ZlcmxvYWQxYXJnKChzaWduZWQgY2hhcilhcmczKVxuIg0KIGdkYl9leHBl
Y3Qgew0KICAgICAtcmUgIi5cWzAtOVxdKiA9IDNcclxuJGdkYl9wcm9tcHQg
JCIgew0KQEAgLTI5MSw4ICsyNjQsNiBAQCBnZGJfZXhwZWN0IHsNCiAgIH0N
CiANCiANCi1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJzMTY5MDENCi0NCiBz
ZW5kX2dkYiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVybG9hZDFhcmcoKHVu
c2lnbmVkIGNoYXIpYXJnNClcbiINCiBnZGJfZXhwZWN0IHsNCiAgICAgLXJl
ICIuXFswLTlcXSogPSA0XHJcbiRnZGJfcHJvbXB0ICQiIHsNCkBAIC0zMDMs
OCArMjc0LDYgQEAgZ2RiX2V4cGVjdCB7DQogICB9DQogDQogDQotc2V0dXBf
eGZhaWwgIiotKi0qIiBDTExiczE2OTAxDQotDQogc2VuZF9nZGIgInByaW50
IGZvb19pbnN0YW5jZTEub3ZlcmxvYWQxYXJnKChzaG9ydClhcmc1KVxuIg0K
IGdkYl9leHBlY3Qgew0KICAgICAtcmUgIi5cWzAtOVxdKiA9IDVcclxuJGdk
Yl9wcm9tcHQgJCIgew0KQEAgLTMxNSw4ICsyODQsNiBAQCBnZGJfZXhwZWN0
IHsNCiAgIH0NCiANCiANCi1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJzMTY5
MDENCi0NCiBzZW5kX2dkYiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVybG9h
ZDFhcmcoKHVuc2lnbmVkIHNob3J0KWFyZzYpXG4iDQogZ2RiX2V4cGVjdCB7
DQogICAgIC1yZSAiLlxbMC05XF0qID0gNlxyXG4kZ2RiX3Byb21wdCAkIiB7
DQpAQCAtMzI3LDggKzI5NCw2IEBAIGdkYl9leHBlY3Qgew0KICAgfQ0KIA0K
IA0KLXNldHVwX3hmYWlsICIqLSotKiIgQ0xMYnMxNjkwMQ0KLQ0KIHNlbmRf
Z2RiICJwcmludCBmb29faW5zdGFuY2UxLm92ZXJsb2FkMWFyZygoaW50KWFy
ZzcpXG4iDQogZ2RiX2V4cGVjdCB7DQogICAgIC1yZSAiLlxbMC05XF0qID0g
N1xyXG4kZ2RiX3Byb21wdCAkIiB7DQpAQCAtMzM5LDggKzMwNCw2IEBAIGdk
Yl9leHBlY3Qgew0KICAgfQ0KIA0KIA0KLXNldHVwX3hmYWlsICIqLSotKiIg
Q0xMYnMxNjkwMQ0KLQ0KIHNlbmRfZ2RiICJwcmludCBmb29faW5zdGFuY2Ux
Lm92ZXJsb2FkMWFyZygodW5zaWduZWQgaW50KWFyZzgpXG4iDQogZ2RiX2V4
cGVjdCB7DQogICAgIC1yZSAiLlxbMC05XF0qID0gOFxyXG4kZ2RiX3Byb21w
dCAkIiB7DQpAQCAtMzUxLDggKzMxNCw2IEBAIGdkYl9leHBlY3Qgew0KICAg
fQ0KIA0KIA0KLXNldHVwX3hmYWlsICIqLSotKiIgQ0xMYnMxNjkwMQ0KLQ0K
IHNlbmRfZ2RiICJwcmludCBmb29faW5zdGFuY2UxLm92ZXJsb2FkMWFyZygo
bG9uZylhcmc5KVxuIg0KIGdkYl9leHBlY3Qgew0KICAgICAtcmUgIi5cWzAt
OVxdKiA9IDlcclxuJGdkYl9wcm9tcHQgJCIgew0KQEAgLTM2Myw4ICszMjQs
NiBAQCBnZGJfZXhwZWN0IHsNCiAgIH0NCiANCiANCi1zZXR1cF94ZmFpbCAi
Ki0qLSoiIENMTGJzMTY5MDENCi0NCiBzZW5kX2dkYiAicHJpbnQgZm9vX2lu
c3RhbmNlMS5vdmVybG9hZDFhcmcoKHVuc2lnbmVkIGxvbmcpYXJnMTApXG4i
DQogZ2RiX2V4cGVjdCB7DQogICAgIC1yZSAiLlxbMC05XF0qID0gMTBcclxu
JGdkYl9wcm9tcHQgJCIgew0KQEAgLTM3NSw4ICszMzQsNiBAQCBnZGJfZXhw
ZWN0IHsNCiAgIH0NCiANCiANCi1zZXR1cF94ZmFpbCAiKi0qLSoiIENMTGJz
MTY5MDENCi0NCiBzZW5kX2dkYiAicHJpbnQgZm9vX2luc3RhbmNlMS5vdmVy
bG9hZDFhcmcoKGZsb2F0KWFyZzExKVxuIg0KIGdkYl9leHBlY3Qgew0KICAg
ICAtcmUgIi5cWzAtOVxdKiA9IDExXHJcbiRnZGJfcHJvbXB0ICQiIHsNCkBA
IC0zODYsOCArMzQzLDYgQEAgZ2RiX2V4cGVjdCB7DQogICAgIHRpbWVvdXQg
ICAgICAgICAgIHsgZmFpbCAiKHRpbWVvdXQpIHByaW50IGNhbGwgb3Zlcmxv
YWRlZCBmdW5jIGZsb2F0IGFyZyIgfQ0KICAgfQ0KIA0KLQ0KLXNldHVwX3hm
YWlsICIqLSotKiIgQ0xMYnMxNjkwMQ0KIA0KIHNlbmRfZ2RiICJwcmludCBm
b29faW5zdGFuY2UxLm92ZXJsb2FkMWFyZygoZG91YmxlKWFyZzEyKVxuIg0K
IGdkYl9leHBlY3Qgew0KSW5kZXg6IGdkYi5jKysvdmlydGZ1bmMuZXhwDQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2N2cy9zcmMvc3Jj
L2dkYi90ZXN0c3VpdGUvZ2RiLmMrKy92aXJ0ZnVuYy5leHAsdg0KcmV0cmll
dmluZyByZXZpc2lvbiAxLjEuMS41DQpkaWZmIC11IC1wIC1yMS4xLjEuNSB2
aXJ0ZnVuYy5leHANCi0tLSB2aXJ0ZnVuYy5leHAJMTk5OS8xMi8wNyAwMzo1
NjoxNwkxLjEuMS41DQorKysgdmlydGZ1bmMuZXhwCTIwMDAvMDQvMjAgMTk6
MDk6MDUNCkBAIC02OTIsOCArNjkyLDYgQEAgcHJvYyB0ZXN0X3ZpcnR1YWxf
Y2FsbHMge30gew0KICAgICAjIHdoaWNoIGNhdXNlcyBHREIgdG8gYmUgdW5h
YmxlIHRvIHJlc29sdmUgdGhlc2UgY2FsbHMuICBVbnRpbCB0aGUNCiAgICAg
IyBwcm9ibGVtIGlzIGZpeGVkLCBYRkFJTCB0aGVzZSB0ZXN0cy4gLXN0cyAx
OTk5LTA4LTAyDQogDQotICAgIGlmIHskZ2NjX2NvbXBpbGVkfSB0aGVuIHsg
c2V0dXBfeGZhaWwgIiotKi0qIiB9DQotDQogICAgIHNlbmRfZ2RiICJwcmlu
dCBwQWUtPmYoKVxuIg0KICAgICBnZGJfZXhwZWN0IHsNCiAJLXJlICIuKiA9
IDIwJG5sJGdkYl9wcm9tcHQgJCIgeyBwYXNzICJwcmludCBwQWUtPmYoKSIg
fQ0KQEAgLTcxNSw4ICs3MTMsNiBAQCBwcm9jIHRlc3RfdmlydHVhbF9jYWxs
cyB7fSB7DQogCWVvZiB7IGZhaWwgInByaW50IHBBZS0+ZigpICgkR0RCIGR1
bXBlZCBjb3JlKSAoRklYTUUpIiA7IGdkYl92aXJ0ZnVuY19yZXN0YXJ0OyBy
ZXR1cm4gfQ0KICAgICB9DQogDQotICAgIGlmIHskZ2NjX2NvbXBpbGVkfSB0
aGVuIHsgc2V0dXBfeGZhaWwgIiotKi0qIiB9DQotDQogICAgIHNlbmRfZ2Ri
ICJwcmludCBwQWEtPmYoKVxuIg0KICAgICBnZGJfZXhwZWN0IHsNCiAJLXJl
ICIuKiA9IDEkbmwkZ2RiX3Byb21wdCAkIiB7IHBhc3MgInByaW50IHBBYS0+
ZigpIiB9DQpAQCAtNzI5LDggKzcyNSw2IEBAIHByb2MgdGVzdF92aXJ0dWFs
X2NhbGxzIHt9IHsNCiAJZW9mIHsgZmFpbCAicHJpbnQgcEFhLT5mKCkgKCRH
REIgZHVtcGVkIGNvcmUpIChGSVhNRSkiIDsgZ2RiX3ZpcnRmdW5jX3Jlc3Rh
cnQ7IHJldHVybiB9DQogICAgIH0NCiANCi0gICAgaWYgeyRnY2NfY29tcGls
ZWR9IHRoZW4geyBzZXR1cF94ZmFpbCAiKi0qLSoiIH0NCi0NCiAgICAgc2Vu
ZF9nZGIgInByaW50IHBEZS0+dmcoKVxuIg0KICAgICBnZGJfZXhwZWN0IHsN
CiAJLXJlICIuKiA9IDIwMiRubCRnZGJfcHJvbXB0ICQiIHsgcGFzcyAicHJp
bnQgcERlLT52ZygpIiB9DQpAQCAtNzQzLDggKzczNyw2IEBAIHByb2MgdGVz
dF92aXJ0dWFsX2NhbGxzIHt9IHsNCiAJZW9mIHsgZmFpbCAicHJpbnQgcERl
LT52ZygpICgkR0RCIGR1bXBlZCBjb3JlKSAoRklYTUUpIiA7IGdkYl92aXJ0
ZnVuY19yZXN0YXJ0OyByZXR1cm4gfQ0KICAgICB9DQogDQotICAgIGlmIHsk
Z2NjX2NvbXBpbGVkfSB0aGVuIHsgc2V0dXBfeGZhaWwgIiotKi0qIiB9DQot
DQogICAgIHNlbmRfZ2RiICJwcmludCBwQURlLT52ZygpXG4iDQogICAgIGdk
Yl9leHBlY3Qgew0KIAktcmUgIi4qID0gMjAyJG5sJGdkYl9wcm9tcHQgJCIg
eyBwYXNzICJwcmludCBwQURlLT52ZygpIiB9DQpAQCAtNzU3LDggKzc0OSw2
IEBAIHByb2MgdGVzdF92aXJ0dWFsX2NhbGxzIHt9IHsNCiAJZW9mIHsgZmFp
bCAicHJpbnQgcEFEZS0+dmcoKSAoJEdEQiBkdW1wZWQgY29yZSkgKEZJWE1F
KSIgOyBnZGJfdmlydGZ1bmNfcmVzdGFydDsgcmV0dXJuIH0NCiAgICAgfQ0K
IA0KLSAgICBpZiB7JGdjY19jb21waWxlZH0gdGhlbiB7IHNldHVwX3hmYWls
ICIqLSotKiIgfQ0KLQ0KICAgICBzZW5kX2dkYiAicHJpbnQgcERkLT52Zygp
XG4iDQogICAgIGdkYl9leHBlY3Qgew0KIAktcmUgIi4qID0gMTAxJG5sJGdk
Yl9wcm9tcHQgJCIgeyBwYXNzICJwcmludCBwRGQtPnZnKCkiIH0NCkBAIC03
NzEsOCArNzYxLDYgQEAgcHJvYyB0ZXN0X3ZpcnR1YWxfY2FsbHMge30gew0K
IAllb2YgeyBmYWlsICJwcmludCBwRGQtPnZnKCkgKCRHREIgZHVtcGVkIGNv
cmUpIChGSVhNRSkiIDsgZ2RiX3ZpcnRmdW5jX3Jlc3RhcnQ7IHJldHVybiB9
DQogICAgIH0NCiANCi0gICAgaWYgeyRnY2NfY29tcGlsZWR9IHRoZW4geyBz
ZXR1cF94ZmFpbCAiKi0qLSoiIH0NCi0NCiAgICAgc2VuZF9nZGIgInByaW50
IHBFZS0+dnZiKClcbiINCiAgICAgZ2RiX2V4cGVjdCB7DQogCS1yZSAiLiog
PSA0MTEkbmwkZ2RiX3Byb21wdCAkIiB7IHBhc3MgInByaW50IHBFZS0+dnZi
KCkiIH0NCkBAIC03ODQsOCArNzcyLDYgQEAgcHJvYyB0ZXN0X3ZpcnR1YWxf
Y2FsbHMge30gew0KIAl0aW1lb3V0IHsgZmFpbCAicHJpbnQgcEVlLT52dmIo
KSAodGltZW91dCkiIH0NCiAJZW9mIHsgZmFpbCAicHJpbnQgcEVlLT52dmIo
KSAoJEdEQiBkdW1wZWQgY29yZSkgKEZJWE1FKSIgOyBnZGJfdmlydGZ1bmNf
cmVzdGFydDsgcmV0dXJuIH0NCiAgICAgfQ0KLQ0KLSAgICBpZiB7JGdjY19j
b21waWxlZH0gdGhlbiB7IHNldHVwX3hmYWlsICIqLSotKiIgfQ0KIA0KICAg
ICBzZW5kX2dkYiAicHJpbnQgcFZCLT52dmIoKVxuIg0KICAgICBnZGJfZXhw
ZWN0IHsNCg==
------------=_1583534348-29877-9--
From dan@cgsoftware.com Thu Apr 20 14:39:00 2000
From: Daniel Berlin <dan@cgsoftware.com>
To: Scott Bambrough <scottb@netwinder.org>
Cc: GDB Patches Mail List <gdb-patches@sourceware.cygnus.com>
Subject: Re: RFC: Testsuite patches, a few comments and questions...
Date: Thu, 20 Apr 2000 14:39:00 -0000
Message-id: <Pine.LNX.4.10.10004201438320.6908-100000@propylaea.anduin.com>
References: <38FF766A.9C4989F2@netwinder.org>
X-SW-Source: 2000-04/msg00400.html
Content-length: 7814
Pleaes don't remove the xfails from virtfunc.exp, they only pass by
accident right now.
I'm working on it as we speak, it's taking a while, with finals and all.
--Dan
On Thu, 20 Apr 2000, Scott Bambrough wrote:
> I spent most of today running the testsuite on the 5.0 branch on a NetWinder.
> My goal was to get rid of all XPASS and UNTESTED results. I also took the time
> to examine which tests were not being run on my platform and why. In many cases
> that boiled down to which tests ran only on HP platforms.
>
> Using the attached patches to the test suite I can achieve the appended results
> on ARM Linux in the GDB 5.0 branch. Most of the patches remove setup_xfails or
> simple enable the tests to be run on ARM Linux. The lone exception is:
>
> * testsuite/gdb.base/so-impl-ld.exp: Fixed typo in triplet for
> linux. Added wildcard to handle gnu-oldld case on ARM.
>
> I had to remove a leading space in the triplet to get the test to run. I also
> added a wildcard ("*") after the gnu to handle the arm*-*-linux-gnuoldld target.
>
> I enabled the following tests to run on ARM Linux. For the most part, the
> previously they only ran on HP configurations. They are included in the
> appended results. For the most part they seem to be useful tests for Linux in
> general, but are just run for HP configurations. I'd appreciate comments if
> someone thinks they are not. I only gave them a cursory once over during my
> tests today.
>
> gdb.base/environ.exp 23/26 tests pass
> gdb.base/recurse.exp 19/19 tests pass
> gdb.base/sect-cmd.exp 3/4 tests pass
> gdb.base/so-indr-cl.exp 1/2 tests pass
>
> I also tried the following tests on ARM Linux. None of these run on anything
> but HP configurations. They are NOT included in the attached results. These
> seem like they would be useful, but for the most part more than 50% of the tests
> fail. I've spent no time following these up. Some of the results are
> surprising; completion.exp tests command line completion. I'd expect it to work
> on any machine. Comments would interest me.
>
> gdb.base/attach.exp 15/23 tests pass
> gdb.base/completion.exp 4/23 tests pass
> gdb.base/foll-exec.exp 12/27 tests pass
> gdb.base/foll-fork.exp 15/26 tests pass
> gdb.base/foll-vfork.exp 6/15 tests pass
> gdb.base/member-ptr.exp 12/39 tests pass
> gdb.base/solib.exp 0/26 tests pass
>
> I also tried the following tests on ARM Linux. None of these compiled for me.
>
> gdb.c++/ambiguous.exp
> gdb.c++/ctti.exp
> gdb.threads/step.exp
> gdb.threads/step2.exp
>
> I don't understand the following code from pthreads.exp:
>
> proc test_startup {} {
> global srcdir srcfile gdb_prompt expect_out
> global horiz
> global main_id thread1_id thread2_id
>
> # We should be able to do an info threads before starting any others.
> send_gdb "info threads\n"
> gdb_expect {
> -re ".*Thread.*LWP.*main.*$gdb_prompt $" {
> pass "info threads"
> }
> -re "\r\n$gdb_prompt $" {
> pass "info threads"
> setup_xfail "*-*-*"
> fail "gdb does not support pthreads for this machine"
> return 0
> ...
>
> The last expect case is very odd. It succeeds, sets up an xfail, fails and
> exits deliberately as it is starting the tests. Why? Is there some reason for
> this?
>
> While I did this work in the branch, I'm not convinced the patch is suitable for
> it. Any comments?
>
> The results follow:
>
> Native configuration is armv4l-unknown-linux-gnu
>
> === gdb tests ===
>
>
> Running target unix
> FAIL: gdb.base/annota1.exp: run until main breakpoint
> FAIL: gdb.base/annota1.exp: backtrace from shlibrary
> FAIL: gdb.base/annota1.exp: backtrace @ signal handler
> FAIL: gdb.base/break.exp: break main #1
> FAIL: gdb.base/break.exp: break main #2
> FAIL: gdb.base/break.exp: clear main
> FAIL: gdb.base/break.exp: breakpoint function, optimized file
> FAIL: gdb.base/break.exp: run until function breakpoint, optimized file
> FAIL: gdb.base/break.exp: run until breakpoint set at small function, optimized
> file
> FAIL: gdb.base/commands.exp: continue in infrun_breakpoint_command_test
> FAIL: gdb.base/corefile.exp: args: -core=corefile
> FAIL: gdb.base/environ.exp: info program
> FAIL: gdb.base/environ.exp: info program after step
> FAIL: gdb.base/environ.exp: info program after deleted breakpoint
> FAIL: gdb.base/interrupt.exp: continue
> FAIL: gdb.base/interrupt.exp: send end of file
> FAIL: gdb.base/return.exp: correct value returned double test (known problem
> with i*86 and sparc solaris
> FAIL: gdb.base/sect-cmd.exp: set section command
> FAIL: gdb.base/selftest.exp: backtrace through signal handler
> FAIL: gdb.base/sigall.exp: get signal CHLD
> FAIL: gdb.base/sigall.exp: advance to TTIN
> FAIL: gdb.base/sigall.exp: get signal TTIN
> FAIL: gdb.base/signals.exp: 'next' behaved as 'continue (known SVR4 bug)'
> FAIL: gdb.base/signals.exp: bt in signals.exp
> FAIL: gdb.base/so-impl-ld.exp: step into solib call
> FAIL: gdb.base/so-impl-ld.exp: step in solib call
> FAIL: gdb.base/so-impl-ld.exp: step out of solib call
> FAIL: gdb.base/so-indr-cl.exp: break on indirect solib call before running
> FAIL: gdb.base/step-test.exp: large struct by value
> FAIL: gdb.base/step-test.exp: continue until exit at step-test.exp: the program
> is no longer running
> FAIL: gdb.base/structs2.exp: structs2 continue2 (PRMS 13536)
> FAIL: gdb.c++/annota2.exp: delete bps
> FAIL: gdb.c++/annota2.exp: annotate-quit
> FAIL: gdb.c++/virtfunc.exp: print pEe->vvb()
> FAIL: gdb.mi/mi-console.exp: Hello message (timeout)
> FAIL: gdb.mi/mi-stack.exp: stack args listing 0
> FAIL: gdb.mi/mi-stack.exp: stack args listing 1
> FAIL: gdb.mi/mi-stack.exp: stack info-depth
> FAIL: gdb.mi/mi-stack.exp: stack info-depth 99
> FAIL: gdb.stabs/weird.exp: p v_comb
>
> === gdb Summary ===
>
> # of expected passes 6929
> # of unexpected failures 40
> # of expected failures 175
>
>
> 2000-04-19 Scott Bambrough <scottb@netwinder.org>
>
> * testsuite/gdb.base/environ.exp: Run tests for arm*-*-linux-gnu*.
> * testsuite/gdb.base/recurse.exp: Run tests for arm*-*-linux-gnu*.
> * testsuite/gdb.base/sect-cmd.exp: Run tests for arm*-*-linux-gnu*.
>
> * testsuite/gdb.base/so-impl-ld.exp: Fixed typo in triplet for
> linux. Added wildcard to handle gnu-oldld case on ARM.
>
> * testsuite/gdb.base/so-indr-cl.exp: Run tests for arm*-*-linux-gnu*.
> * testsuite/gdb.base/watchpoint.exp (test_stepping): Clear xfail.
>
> * testsuite/gdb.c++/derivation.exp
> (print g_instance.afoo): Remove setup_xfail "*-*-*".
> (print g_instance.bfoo): Remove setup_xfail "*-*-*".
> (print g_instance.cfoo): Remove setup_xfail "*-*-*".
>
> * testsuite/gdb.c++/overload.exp
> (print foo_instance1.overload_args()): Remove setup_xfail "*-*-*"
> on all tests (1-11 arguments).
> (print foo_instance1.overload1arg()): Remove setup_xfail "*-*-*"
> on all tests (none, char, signed char, unsigned char, short,
> unsigned short, int, unsigned int, long, unsigned long, float
> and double arguments).
>
> * testsuite/gdb.c++/virtfunc.exp
> (print pAa->f()): Remove setup_xfail "*-*-*".
> (print pDe->vg()): Remove setup_xfail "*-*-*".
> (print pADe->vg()): Remove setup_xfail "*-*-*".
> (print pDd->vg()): Remove setup_xfail "*-*-*".
> (print pEe->vvb()): Remove setup_xfail "*-*-*".
> (print pVb->vvb()): Remove setup_xfail "*-*-*".
>
> --
> Scott Bambrough - Software Engineer
> REBEL.COM http://www.rebel.com
> NetWinder http://www.netwinder.org
next prev parent reply other threads:[~2000-04-20 12:41 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-04-20 11:52 Elena Zannoni
2000-04-20 12:41 ` Chris Faylor [this message]
[not found] ` <38FFC38B.552164F6@cygnus.com>
2000-04-21 7:13 ` Elena Zannoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20000420154107.A1862@cygnus.com \
--to=cgf@cygnus.com \
--cc=ezannoni@cygnus.com \
--cc=gdb-patches@sourceware.cygnus.com \
--cc=jimb@cygnus.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox