This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gdb/870: gdb incorrectly interprets function prologues on the v850


>Number:         870
>Category:       gdb
>Synopsis:       gdb incorrectly interprets function prologues on the v850
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Dec 05 00:38:03 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     miles@gnu.org
>Release:        GNU gdb v850-021026
>Organization:
>Environment:
Debian GNU/linux testing/unstable
>Description:
The function `v850_scan_prologue' in v850-tdep.c incorrectly processes some instructions (at least on the v850e).  The result is that it almost never correctly interprets function prologues, and stack backtraces etc., don't work.
>How-To-Repeat:
Run gdb, break in some function, try to get a stack backtrace using the `backtrace' command.  It will only show the current frame.  If you try to move up to the callers frame using the `up' command, it will fail with the error `Initial frame selected; you cannot go up.'
>Fix:
I've attached a patch to fix this bug.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="gdb-021026-v850-funprologue-20021205.patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="gdb-021026-v850-funprologue-20021205.patch"

MjAwMi0xMi0wNSAgTWlsZXMgQmFkZXIgIDxtaWxlc0BnbnUub3JnPgoKCSogdjg1MC10ZGVwLmMg
KHY4NTBfc2Nhbl9wcm9sb2d1ZSk6IENvcnJlY3RseSBzaWduLWV4dGVuZCBpbnNuMi4KCVJlY29n
bml6ZSBgbW92IGVwLHIxJyByYXRoZXIgdGhhbiBgbW92IHIxLGVwJy4gIFVzZSBpbnNuMiBhcyB3
ZWxsCglhcyBpbnNuIHRvIHJlY29nbml6ZSBpbnNucyB3aGVyZSBhcHByb3ByaWF0ZSAoc29tZSBp
bnNucyBvbmx5CglkaWZmZXIgaW4gdGhlIHNlY29uZCAxNi1iaXQgd29yZCkuICBCcmVhayBvdXQg
b2YgdGhlIGxvb3AgYXMgc29vbgoJYXMgd2UgaGl0IF9hbnlfIHVucmVjb2duaXplZCBpbnNuLgoK
LS0tIGdkYi92ODUwLXRkZXAuYy5+MX4JMjAwMi0wOC0wOCAxNjo1Njo0MS4wMDAwMDAwMDAgKzA5
MDAKKysrIGdkYi92ODUwLXRkZXAuYwkyMDAyLTEyLTA1IDE3OjE0OjQ4LjAwMDAwMDAwMCArMDkw
MApAQCAtNjMxLDEzICs2MzEsMTkgQEAKIAl7CiAJICBpbnNuMiA9IHJlYWRfbWVtb3J5X3Vuc2ln
bmVkX2ludGVnZXIgKGN1cnJlbnRfcGMsIDIpOwogCSAgY3VycmVudF9wYyArPSAyOworCisJICAv
KiBNb3N0IHVzZXMgb2YgaW5zbjIgYmVsb3cgaW50ZXJwcmV0IGl0IGFzIGEgc2lnbi1leHRlbmRl
ZAorCSAgICAgMTYtYml0IGZpZWxkLCBzbyBzaWduLWV4dGVuZCBpdCBoZXJlLiAgKi8KKwkgIGlu
c24yID0gKGluc24yIF4gMHg4MDAwKSAtIDB4ODAwMDsKIAl9CiAKLSAgICAgIGlmICgoaW5zbiAm
IDB4ZmZjMCkgPT0gKCgxMCA8PCAxMSkgfCAweDA3ODApICYmICFyZWdzYXZlX2Z1bmNfcCkKKyAg
ICAgIGlmICgoaW5zbiAmIDB4ZmZjMCkgPT0gKCgxMCA8PCAxMSkgfCAweDA3ODApCisJICAmJiAo
aW5zbjIgJiAxKSA9PSAwCisJICAmJiAhcmVnc2F2ZV9mdW5jX3ApCiAJewkJCS8qIGphcmwgPGZ1
bmM+LDEwICovCi0JICBsb25nIGxvd19kaXNwID0gaW5zbjIgJiB+KGxvbmcpIDE7Ci0JICBsb25n
IGRpc3AgPSAoKCgoKGluc24gJiAweDNmKSA8PCAxNikgKyBsb3dfZGlzcCkKLQkJCSYgfihsb25n
KSAxKSBeIDB4MDAyMDAwMDApIC0gMHgwMDIwMDAwMDsKKwkgIGxvbmcgbG93X2Rpc3AgPSBpbnNu
MiAmIDB4ZmZmZTsKKwkgIGxvbmcgZGlzcCA9ICgoKCgoaW5zbiAmIDB4M2YpIDw8IDE2KSB8IGxv
d19kaXNwKSBeIDB4MDAyMDAwMDApCisJCSAgICAgICAtIDB4MDAyMDAwMDApOwogCiAJICBzYXZl
X3BjID0gY3VycmVudF9wYzsKIAkgIHNhdmVfZW5kID0gcHJvbG9ndWVfZW5kOwpAQCAtNjc2LDgg
KzY4Miw5IEBACiAjZW5kaWYKIAkgIGNvbnRpbnVlOwogCX0KLSAgICAgIGVsc2UgaWYgKChpbnNu
ICYgMHhmZmMwKSA9PSAweDA3ODApCS8qIHByZXBhcmUgbGlzdDIsaW1tNSAqLwotCXsKKyAgICAg
IGVsc2UgaWYgKChpbnNuICYgMHhmZmMwKSA9PSAweDA3ODAKKwkgICAgICAgJiYgKChpbnNuMiAm
IDB4MWYpID09IDB4MDEgfHwgKGluc24yICYgMHgwMykgPT0gMHgwMykpCisJewkJCS8qIHByZXBh
cmUgbGlzdDIsaW1tNSAqLwogCSAgaGFuZGxlX3ByZXBhcmUgKGluc24sIGluc24yLCAmY3VycmVu
dF9wYywgcGksICZwaWZzcik7CiAJICBjb250aW51ZTsKIAl9CkBAIC03MDYsMTYgKzcxMyw2IEBA
CiAjZW5kaWYKIAkgIGNvbnRpbnVlOwogCX0KLSAgICAgIGVsc2UgaWYgKChpbnNuICYgMHgwN2Mw
KSA9PSAweDA3ODAJLyogamFybCBvciBqciAqLwotCSAgICAgICB8fCAoaW5zbiAmIDB4ZmZlMCkg
PT0gMHgwMDYwCS8qIGptcCAqLwotCSAgICAgICB8fCAoaW5zbiAmIDB4MDc4MCkgPT0gMHgwNTgw
KQkvKiBicmFuY2ggKi8KLQl7Ci0jaWZkZWYgREVCVUcKLQkgIHByaW50Zl9maWx0ZXJlZCAoIlxu
Iik7Ci0jZW5kaWYKLQkgIGJyZWFrOwkJLyogUmFuIGludG8gZW5kIG9mIHByb2xvZ3VlICovCi0J
fQotCiAgICAgICBlbHNlIGlmICgoaW5zbiAmIDB4ZmZlMCkgPT0gKChFX1NQX1JFR05VTSA8PCAx
MSkgfCAweDAyNDApKQkJLyogYWRkIDxpbW0+LHNwICovCiAJcGktPmZyYW1lb2Zmc2V0ICs9ICgo
aW5zbiAmIDB4MWYpIF4gMHgxMCkgLSAweDEwOwogICAgICAgZWxzZSBpZiAoaW5zbiA9PSAoKEVf
U1BfUkVHTlVNIDw8IDExKSB8IDB4MDYwMCB8IEVfU1BfUkVHTlVNKSkJLyogYWRkaSA8aW1tPixz
cCxzcCAqLwpAQCAtNzM0LDcgKzczMSw3IEBACiAJcGktPmZyYW1lb2Zmc2V0ID0gcjEyX3RtcDsK
ICAgICAgIGVsc2UgaWYgKGluc24gPT0gKChFX0VQX1JFR05VTSA8PCAxMSkgfCAweDAwMDAgfCBF
X1NQX1JFR05VTSkpCS8qIG1vdiBzcCxlcCAqLwogCWVwX3VzZWQgPSAxOwotICAgICAgZWxzZSBp
ZiAoaW5zbiA9PSAoKEVfRVBfUkVHTlVNIDw8IDExKSB8IDB4MDAwMCB8IEVfUjFfUkVHTlVNKSkJ
LyogbW92IHIxLGVwICovCisgICAgICBlbHNlIGlmIChpbnNuID09ICgoRV9SMV9SRUdOVU0gPDwg
MTEpIHwgMHgwMDAwIHwgRV9FUF9SRUdOVU0pKQkvKiBtb3YgZXAscjEgKi8KIAllcF91c2VkID0g
MDsKICAgICAgIGVsc2UgaWYgKCgoaW5zbiAmIDB4MDdmZikgPT0gKDB4MDc2MCB8IEVfU1BfUkVH
TlVNKQkJLyogc3QudyA8cmVnPiw8b2Zmc2V0PltzcF0gKi8KIAkJfHwgKGZwX3VzZWQKQEAgLTc2
OCw2ICs3NjQsOSBAQAogI2VuZGlmCiAJICBwaWZzcisrOwogCX0KKyAgICAgIGVsc2UKKwkvKiBV
bnJlY29nbml6ZWQgaW5zbjsgcHJvYmFibHkgd2UgcmFuIG9mZiB0aGUgZW5kIG9mIHRoZSBwcm9s
b2d1ZS4gICovCisJYnJlYWs7CiAKICNpZmRlZiBERUJVRwogICAgICAgcHJpbnRmX2ZpbHRlcmVk
ICgiXG4iKTsK


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