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]

tdep/1291: backtrace for sh3 does not work for local variables with more than 256 bytes


>Number:         1291
>Category:       tdep
>Synopsis:       backtrace for sh3 does not work for local variables with more than 256 bytes
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          patch
>Submitter-Id:   net
>Arrival-Date:   Sat Jul 19 15:38:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     inaba@src.ricoh.co.jp
>Release:        unknown-1.0
>Organization:
>Environment:
sh3-linux with gcc-3.0.3 but can be repeated with other
sh3 based environment.
>Description:
New (I think) gcc uses 'mov @(disp,pc),r1' and 'sub r1,r15'
instructions when constructing frames with more than 256
bytes local variables. This makes backtracing of gdb does
not properly display with these functions.
>How-To-Repeat:
By using example progmram, you can display proper backtrace
in sub1 but not in sub2.
-----------------------------------------------------------
#include <stdio.h>

main()
{
        printf("hello world\n");
        sub1();
        sub2();
}

sub1()
{
        int buf[64];

}

sub2()
{
        int buf[65];

}
>Fix:
Attached patch fixes this problem.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="patch-gdb-5.2.1"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="patch-gdb-5.2.1"

LS0tIGdkYi01LjIuMS9nZGIvc2gtdGRlcC5jCVR1ZSBKdWwgIDggMTg6NDQ6MzIgMjAwMworKysg
Z2RiLTUuMi4xLW5ldy9nZGIvc2gtdGRlcC5jCVRodSBKdWwgMTcgMTc6NDk6MTMgMjAwMwpAQCAt
MzEzLDEzICszMTMsMjcgQEAKICAgIHIxNStpbW0tLT5yMTUgKi8KICNkZWZpbmUgSVNfQUREX1NQ
KHgpIAkJKCgoeCkgJiAweGZmMDApID09IDB4N2YwMCkKIAotI2RlZmluZSBJU19NT1ZfUjMoeCkg
CQkoKCh4KSAmIDB4ZmYwMCkgPT0gMHgxYTAwKQorLyogTU9WICNpbW0scjMgICAgIDExMTAwMDEx
aWlpaWlpaWkKKyAgIGltbS0tPnIzICovCisjZGVmaW5lIElTX01PVl9SMyh4KSAJCSgoKHgpICYg
MHhmZjAwKSA9PSAweGUzMDApCiAjZGVmaW5lIElTX1NITExfUjMoeCkJCSgoeCkgPT0gMHg0MzAw
KQogCiAvKiBBREQgcjMscjE1ICAgICAgMDAxMTExMTEwMDExMTEwMAogICAgcjE1K3IzLS0+cjE1
ICovCiAjZGVmaW5lIElTX0FERF9SM1NQKHgpCQkoKHgpID09IDB4M2YzYykKIAorLyogTU9WLlcg
QChkaXNwLCBwYyksIHIxICAgICAxMDAxMDAwMWRkZGRkZGRkCisgICAoZGlzcCAqIDIgKyBwYyAr
IDQpLS0+cjEgKi8KKyNkZWZpbmUgSVNfTU9WV19SMSh4KQkJKCgoeCkgJiAweGZmMDApID09IDB4
OTEwMCkKKworLyogTU9WLkwgQChkaXNwLCBwYyksIHIxICAgICAxMTAxMDAwMWRkZGRkZGRkCisg
ICAoZGlzcCAqIDQgKyBwYyArIDQpLS0+cjEgKi8KKyNkZWZpbmUgSVNfTU9WTF9SMSh4KQkJKCgo
eCkgJiAweGZmMDApID09IDB4ZDEwMCkKKworLyogU1VCIHIxLHIxNQkJICAgICAwMDExMTExMTEw
MDAxMTAwMAorICAgcjE1LXIxLS0+cjE1ICovCisjZGVmaW5lIElTX1NVQl9SMVNQKHgpCQkoKHgp
ID09IDB4M2YxOCkKKwogLyogRk1PVi5TIEZSbSxALVJuICBSbi00LS0+Um4sIEZSbS0tPihSbikg
ICAgIDExMTFubm5ubW1tbTEwMTEKICAgIEZNT1YgRFJtLEAtUm4gICAgUm4tOC0tPlJuLCBEUm0t
LT4oUm4pICAgICAxMTExbm5ubm1tbTAxMDExCiAgICBGTU9WIFhEbSxALVJuICAgIFJuLTgtLT5S
biwgWERtLS0+KFJuKSAgICAgMTExMW5ubm5tbW0xMTAxMSAqLwpAQCAtNTIxLDYgKzUzNSw3IEBA
CiAgIGludCBwYzsKICAgaW50IG9wYzsKICAgaW50IGluc247CisgIGludCByMV92YWwgPSAwOwog
ICBpbnQgcjNfdmFsID0gMDsKICAgY2hhciAqZHVtbXlfcmVncyA9IGdlbmVyaWNfZmluZF9kdW1t
eV9mcmFtZSAoZmktPnBjLCBmaS0+ZnJhbWUpOwogICAKQEAgLTU4Niw2ICs2MDEsMTggQEAKIAl7
CiAJICBkZXB0aCArPSAtcjNfdmFsOwogCX0KKyAgICAgIGVsc2UgaWYgKElTX01PVldfUjEgKGlu
c24pKQorCXsKKwkgIHIxX3ZhbCA9IHJlYWRfbWVtb3J5X2ludGVnZXIgKHBjICsgNCArIChpbnNu
ICYgMHhmZikgKiAyLCAyKTsKKwl9CisgICAgICBlbHNlIGlmIChJU19NT1ZMX1IxIChpbnNuKSkK
Kwl7CisJICByMV92YWwgPSByZWFkX21lbW9yeV9pbnRlZ2VyIChwYyArIDQgKyAoaW5zbiAmIDB4
ZmYpICogNCwgNCk7CisJfQorICAgICAgZWxzZSBpZiAoSVNfU1VCX1IxU1AgKGluc24pKQorCXsK
KwkgIGRlcHRoICs9IHIxX3ZhbDsKKwl9CiAgICAgICBlbHNlIGlmIChJU19BRERfU1AgKGluc24p
KQogCXsKIAkgIGRlcHRoIC09ICgoaW5zbiAmIDB4ZmYpIF4gMHg4MCkgLSAweDgwOwpAQCAtNjYz
LDYgKzY5MCw3IEBACiAgIGludCBwYzsKICAgaW50IG9wYzsKICAgaW50IGluc247CisgIGludCBy
MV92YWwgPSAwOwogICBpbnQgcjNfdmFsID0gMDsKICAgY2hhciAqZHVtbXlfcmVncyA9IGdlbmVy
aWNfZmluZF9kdW1teV9mcmFtZSAoZmktPnBjLCBmaS0+ZnJhbWUpOwogICBzdHJ1Y3QgZ2RiYXJj
aF90ZGVwICp0ZGVwID0gZ2RiYXJjaF90ZGVwIChjdXJyZW50X2dkYmFyY2gpOyAKQEAgLTcyOSw2
ICs3NTcsMTggQEAKIAl7CiAJICBkZXB0aCArPSAtcjNfdmFsOwogCX0KKyAgICAgIGVsc2UgaWYg
KElTX01PVldfUjEgKGluc24pKQorCXsKKwkgIHIxX3ZhbCA9IHJlYWRfbWVtb3J5X2ludGVnZXIg
KHBjICsgNCArIChpbnNuICYgMHhmZikgKiAyLCAyKTsKKwl9CisgICAgICBlbHNlIGlmIChJU19N
T1ZMX1IxIChpbnNuKSkKKwl7CisJICByMV92YWwgPSByZWFkX21lbW9yeV9pbnRlZ2VyIChwYyAr
IDQgKyAoaW5zbiAmIDB4ZmYpICogNCwgNCk7CisJfQorICAgICAgZWxzZSBpZiAoSVNfU1VCX1Ix
U1AgKGluc24pKQorCXsKKwkgIGRlcHRoICs9IHIxX3ZhbDsKKwl9CiAgICAgICBlbHNlIGlmIChJ
U19BRERfU1AgKGluc24pKQogCXsKIAkgIGRlcHRoIC09ICgoaW5zbiAmIDB4ZmYpIF4gMHg4MCkg
LSAweDgwOwo=


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