From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 52885 invoked by alias); 4 Jan 2016 08:01:19 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 52870 invoked by uid 89); 4 Jan 2016 08:01:18 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.3 required=5.0 tests=AWL,BAYES_50,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=HX-HELO:sk:DVREDG0, H*RU:sk:DVREDG0, Hx-spam-relays-external:sk:DVREDG0, Hx-spam-relays-external:192.199.1.245 X-HELO: DVREDG01.corp.atmel.com Received: from nasmtp01.atmel.com (HELO DVREDG01.corp.atmel.com) (192.199.1.245) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Mon, 04 Jan 2016 08:01:17 +0000 Received: from apsmtp01.atmel.com (10.168.254.31) by DVREDG01.corp.atmel.com (10.42.103.30) with Microsoft SMTP Server (TLS) id 14.3.235.1; Mon, 4 Jan 2016 01:01:12 -0700 Received: from PENCHT01.corp.atmel.com (10.168.5.161) by apsmtp01.atmel.com (10.168.254.31) with Microsoft SMTP Server (TLS) id 14.3.235.1; Mon, 4 Jan 2016 16:03:31 +0800 Received: from penmbx02.corp.atmel.com ([fe80::b4e4:e0f6:b17c:e55f]) by PENCHT01.corp.atmel.com ([fe80::95df:d3d0:4452:28e3%12]) with mapi id 14.03.0235.001; Mon, 4 Jan 2016 16:01:11 +0800 From: "Sivanupandi, Pitchumani" To: "troth@openavr.org" , "brobecker@adacore.com" , "palves@redhat.com" , "gdb-patches@sourceware.org" Subject: [patch] Enable dwarf unwind for AVR target Date: Mon, 04 Jan 2016 08:01:00 -0000 Message-ID: Content-Type: multipart/mixed; boundary="_002_CAC140656783604CABA6AE60C2A6D5A4CA3B38C1penmbx02corpatm_" MIME-Version: 1.0 X-SW-Source: 2016-01/txt/msg00027.txt.bz2 --_002_CAC140656783604CABA6AE60C2A6D5A4CA3B38C1penmbx02corpatm_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 1101 Hi All, When analyzing regression failures for AVR target I found one unwinder issue with. Example: gdb.base/break.exp: step over breakpoint AVR target in gdb has avr-frame unwinder and it doesn't enable dwarf unwind= er. Without dwarf unwinder, gdb could not unwind the stack and PC reliably. Example: 1 int volatile a; 2 void main () 3 { 4 a =3D 10; 5 printf ("%d\n", a); 6 a =3D 12; 7 } avr-gcc test.c -mmcu=3Datmega1280 -g When next command on line 5, gdb should move pc to line 6. But it stops at printf function. GDB could not unwind frame from which the call printf initiated and stops at printf as the source line changed. CFA information is part of dwarf debug information that can be used to unwi= nd the stack and PC. But avr target do not enable the dwarf unwinder. Attached patch enables the dwarf unwinder for avr target. Reported test case and many 'step over' tests (such as break.exp) are passed now. There are few regressions that are not analyzed. Before that I want to get the community opinion about this fix. Could you please review the patch? Regards, Pitchumani --_002_CAC140656783604CABA6AE60C2A6D5A4CA3B38C1penmbx02corpatm_ Content-Type: application/octet-stream; name="avr-enable-dwarf-unwind.patch" Content-Description: avr-enable-dwarf-unwind.patch Content-Disposition: attachment; filename="avr-enable-dwarf-unwind.patch"; size=5771; creation-date="Mon, 04 Jan 2016 07:51:05 GMT"; modification-date="Mon, 04 Jan 2016 07:51:53 GMT" Content-Transfer-Encoding: base64 Content-length: 7825 ZGlmZiAtLWdpdCBhL2dkYi9hdnItdGRlcC5jIGIvZ2RiL2F2ci10ZGVwLmMK aW5kZXggY2NjOGI0NS4uNzMyNzJjOCAxMDA2NDQKLS0tIGEvZ2RiL2F2ci10 ZGVwLmMKKysrIGIvZ2RiL2F2ci10ZGVwLmMKQEAgLTI5LDYgKzI5LDcgQEAK ICNpbmNsdWRlICJ0cmFkLWZyYW1lLmgiCiAjaW5jbHVkZSAiZ2RiY21kLmgi CiAjaW5jbHVkZSAiZ2RiY29yZS5oIgorI2luY2x1ZGUgImR3YXJmMi1mcmFt ZS5oIgogI2luY2x1ZGUgImdkYnR5cGVzLmgiCiAjaW5jbHVkZSAiaW5mZXJp b3IuaCIKICNpbmNsdWRlICJzeW1maWxlLmgiCkBAIC05Nyw3ICs5OCw4IEBA IGVudW0KIAogICAvKiBQc2V1ZG8gcmVnaXN0ZXJzLiAgKi8KICAgQVZSX1BT RVVET19QQ19SRUdOVU0gPSAzNSwKLSAgQVZSX05VTV9QU0VVRE9fUkVHUyA9 IDEsCisgIEFWUl9EV0FSRjJfUENfUkVHTlVNID0gMzYgLypMUiovLAorICBB VlJfTlVNX1BTRVVET19SRUdTID0gMiwKIAogICBBVlJfUENfUkVHX0lOREVY ID0gMzUsCS8qIGluZGV4IGludG8gYXJyYXkgb2YgcmVnaXN0ZXJzICovCiAK QEAgLTIxMSw3ICsyMTMsNyBAQCBhdnJfcmVnaXN0ZXJfbmFtZSAoc3RydWN0 IGdkYmFyY2ggKmdkYmFyY2gsIGludCByZWdudW0pCiAgICAgInIxNiIsICJy MTciLCAicjE4IiwgInIxOSIsICJyMjAiLCAicjIxIiwgInIyMiIsICJyMjMi LAogICAgICJyMjQiLCAicjI1IiwgInIyNiIsICJyMjciLCAicjI4IiwgInIy OSIsICJyMzAiLCAicjMxIiwKICAgICAiU1JFRyIsICJTUCIsICJQQzIiLAot ICAgICJwYyIKKyAgICAicGMiLCAiTFIiCiAgIH07CiAgIGlmIChyZWdudW0g PCAwKQogICAgIHJldHVybiBOVUxMOwpAQCAtMjMwLDYgKzIzMiw4IEBAIGF2 cl9yZWdpc3Rlcl90eXBlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgaW50 IHJlZ19ucikKICAgICByZXR1cm4gYnVpbHRpbl90eXBlIChnZGJhcmNoKS0+ YnVpbHRpbl91aW50MzI7CiAgIGlmIChyZWdfbnIgPT0gQVZSX1BTRVVET19Q Q19SRUdOVU0pCiAgICAgcmV0dXJuIGdkYmFyY2hfdGRlcCAoZ2RiYXJjaCkt PnBjX3R5cGU7CisgIGlmIChyZWdfbnIgPT0gQVZSX0RXQVJGMl9QQ19SRUdO VU0pCisgICAgcmV0dXJuIGdkYmFyY2hfdGRlcCAoZ2RiYXJjaCktPnBjX3R5 cGU7CiAgIGlmIChyZWdfbnIgPT0gQVZSX1NQX1JFR05VTSkKICAgICByZXR1 cm4gYnVpbHRpbl90eXBlIChnZGJhcmNoKS0+YnVpbHRpbl9kYXRhX3B0cjsK ICAgcmV0dXJuIGJ1aWx0aW5fdHlwZSAoZ2RiYXJjaCktPmJ1aWx0aW5fdWlu dDg7CkBAIC0zOTUsNiArMzk5LDggQEAgYXZyX3BzZXVkb19yZWdpc3Rlcl9y ZWFkIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHJlZ2NhY2hl ICpyZWdjYWNoZSwKICAgICAgIHZhbCA+Pj0gMTsKICAgICAgIHN0b3JlX3Vu c2lnbmVkX2ludGVnZXIgKGJ1ZiwgNCwgZ2RiYXJjaF9ieXRlX29yZGVyIChn ZGJhcmNoKSwgdmFsKTsKICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgY2Fz ZSBBVlJfRFdBUkYyX1BDX1JFR05VTToKKyAgICAgIHJldHVybiBSRUdfVU5B VkFJTEFCTEU7CiAgICAgZGVmYXVsdDoKICAgICAgIGludGVybmFsX2Vycm9y IChfX0ZJTEVfXywgX19MSU5FX18sIF8oImludmFsaWQgcmVnbnVtIikpOwog ICAgIH0KQEAgLTQxMyw2ICs0MTksOSBAQCBhdnJfcHNldWRvX3JlZ2lzdGVy X3dyaXRlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHJlZ2Nh Y2hlICpyZWdjYWNoZSwKICAgICAgIHZhbCA8PD0gMTsKICAgICAgIHJlZ2Nh Y2hlX3Jhd193cml0ZV91bnNpZ25lZCAocmVnY2FjaGUsIEFWUl9QQ19SRUdO VU0sIHZhbCk7CiAgICAgICBicmVhazsKKyAgICBjYXNlIEFWUl9EV0FSRjJf UENfUkVHTlVNOgorICAgICAgLyogRG8gbm90aGluZy4gICovCisgICAgICBi cmVhazsKICAgICBkZWZhdWx0OgogICAgICAgaW50ZXJuYWxfZXJyb3IgKF9f RklMRV9fLCBfX0xJTkVfXywgXygiaW52YWxpZCByZWdudW0iKSk7CiAgICAg fQpAQCAtMTM1NSw2ICsxMzY0LDM0IEBAIGF2cl9wdXNoX2R1bW15X2NhbGwg KHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBzdHJ1Y3QgdmFsdWUgKmZ1bmN0 aW9uLAogICByZXR1cm4gc3AgKyBjYWxsX2xlbmd0aDsKIH0KIAorc3RhdGlj IHN0cnVjdCB2YWx1ZSAqCithdnJfZHdhcmYyX3ByZXZfcmVnaXN0ZXIgKHN0 cnVjdCBmcmFtZV9pbmZvICp0aGlzX2ZyYW1lLCB2b2lkICoqdGhpc19jYWNo ZSwKKwkJCSAgaW50IHJlZ251bSkKK3sKKyAgc3RydWN0IGdkYmFyY2ggKiBn ZGJhcmNoID0gZ2V0X2ZyYW1lX2FyY2ggKHRoaXNfZnJhbWUpOworICBzdHJ1 Y3QgZ2RiYXJjaF90ZGVwICogdGRlcCA9IGdkYmFyY2hfdGRlcCAoZ2RiYXJj aCk7CisgIENPUkVfQUREUiBhZGRyOworICBVTE9OR0VTVCBwYzsKKyAgaW50 IGk7CisgIGdkYl9ieXRlIGJ1ZlszXTsKKworICBzd2l0Y2ggKHJlZ251bSkK KyAgICB7CisgICAgY2FzZSBBVlJfUENfUkVHTlVNOgorICAgICAgYWRkciA9 IGR3YXJmMl9mcmFtZV9hZGRyICh0aGlzX2NhY2hlLCBBVlJfRFdBUkYyX1BD X1JFR05VTSk7CisgICAgICByZWFkX21lbW9yeSAoYWRkciwgYnVmLCB0ZGVw LT5jYWxsX2xlbmd0aCk7CisgICAgICBwYyA9IDA7CisgICAgICBmb3IgKGkg PSAwOyBpIDwgdGRlcC0+Y2FsbF9sZW5ndGg7IGkrKykKKyAgICAgICAgcGMg PSAocGMgPDwgOCkgfCBidWZbaV07CisgICAgICAvKiBDaGFuZ2UgaXQgdG8g Ynl0ZSBhZGRyZXNzLiAqLworICAgICAgcGMgPDw9IDE7CisgICAgICByZXR1 cm4gZnJhbWVfdW53aW5kX2dvdF9jb25zdGFudCAodGhpc19mcmFtZSwgcmVn bnVtLCBwYyk7CisgICAgZGVmYXVsdDoKKyAgICAgIGludGVybmFsX2Vycm9y IChfX0ZJTEVfXywgX19MSU5FX18sCisJCSAgICAgIF8oIlVuZXhwZWN0ZWQg cmVnaXN0ZXIgJWQiKSwgcmVnbnVtKTsKKyAgICB9Cit9CisKIC8qIFVuZm9y dHVuYXRlbHkgZHdhcmYyIHJlZ2lzdGVyIGZvciBTUCBpcyAzMi4gICovCiAK IHN0YXRpYyBpbnQKQEAgLTEzNjIsMTEgKzEzOTksMzQgQEAgYXZyX2R3YXJm X3JlZ190b19yZWdudW0gKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBpbnQg cmVnKQogewogICBpZiAocmVnID49IDAgJiYgcmVnIDwgMzIpCiAgICAgcmV0 dXJuIHJlZzsKLSAgaWYgKHJlZyA9PSAzMikKLSAgICByZXR1cm4gQVZSX1NQ X1JFR05VTTsKKyAgc3dpdGNoIChyZWcpCisgIHsKKyAgICBjYXNlIDMyOgor ICAgICAgcmV0dXJuIEFWUl9TUF9SRUdOVU07CisgICAgY2FzZSAzNDogLy8g QVZSX1BDX1JFR05VTQorICAgIGNhc2UgMzY6IC8vIEFWUl9EV0FSRjJfUENf UkVHTlVNCisgICAgICByZXR1cm4gcmVnOworICB9CiAgIHJldHVybiAtMTsK IH0KIAorc3RhdGljIHZvaWQKK2F2cl9kd2FyZjJfZnJhbWVfaW5pdF9yZWcg KHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBpbnQgcmVnbnVtLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGR3YXJmMl9mcmFtZV9zdGF0 ZV9yZWcgKnJlZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCBmcmFtZV9pbmZvICp0aGlzX2ZyYW1lKQoreworICBzd2l0Y2ggKHJlZ251 bSkKKyAgeworICAgIGNhc2UgQVZSX1BDX1JFR05VTToKKyAgICAgIHJlZy0+ aG93ID0gRFdBUkYyX0ZSQU1FX1JFR19GTjsKKyAgICAgIHJlZy0+bG9jLmZu ID0gYXZyX2R3YXJmMl9wcmV2X3JlZ2lzdGVyOworICAgICAgYnJlYWs7Cisg ICAgY2FzZSBBVlJfU1BfUkVHTlVNOgorICAgICAgcmVnLT5ob3cgPSBEV0FS RjJfRlJBTUVfUkVHX0NGQTsKKyAgICAgIGJyZWFrOworICB9Cit9CisKIC8q IEltcGxlbWVudGF0aW9uIG9mIGBhZGRyZXNzX2NsYXNzX3R5cGVfZmxhZ3Mn IGdkYmFyY2ggbWV0aG9kLgogCiAgICBUaGlzIG1ldGhvZCBtYXBzIERXX0FU X2FkZHJlc3NfY2xhc3MgYXR0cmlidXRlcyB0byBhCkBAIC0xNDc4LDYgKzE1 MzgsOCBAQCBhdnJfZ2RiYXJjaF9pbml0IChzdHJ1Y3QgZ2RiYXJjaF9pbmZv IGluZm8sIHN0cnVjdCBnZGJhcmNoX2xpc3QgKmFyY2hlcykKICAgc2V0X2dk YmFyY2hfcHRyX2JpdCAoZ2RiYXJjaCwgMiAqIFRBUkdFVF9DSEFSX0JJVCk7 CiAgIHNldF9nZGJhcmNoX2FkZHJfYml0IChnZGJhcmNoLCAzMik7CiAKKyAg c2V0X2dkYmFyY2hfZHdhcmYyX2FkZHJfc2l6ZSAoZ2RiYXJjaCwgNCk7CisK ICAgc2V0X2dkYmFyY2hfZmxvYXRfYml0IChnZGJhcmNoLCA0ICogVEFSR0VU X0NIQVJfQklUKTsKICAgc2V0X2dkYmFyY2hfZG91YmxlX2JpdCAoZ2RiYXJj aCwgNCAqIFRBUkdFVF9DSEFSX0JJVCk7CiAgIHNldF9nZGJhcmNoX2xvbmdf ZG91YmxlX2JpdCAoZ2RiYXJjaCwgNCAqIFRBUkdFVF9DSEFSX0JJVCk7CkBA IC0xNTE3LDYgKzE1NzksOSBAQCBhdnJfZ2RiYXJjaF9pbml0IChzdHJ1Y3Qg Z2RiYXJjaF9pbmZvIGluZm8sIHN0cnVjdCBnZGJhcmNoX2xpc3QgKmFyY2hl cykKIAogICBzZXRfZ2RiYXJjaF9icmVha3BvaW50X2Zyb21fcGMgKGdkYmFy Y2gsIGF2cl9icmVha3BvaW50X2Zyb21fcGMpOwogCisgIGR3YXJmMl9mcmFt ZV9zZXRfaW5pdF9yZWcgKGdkYmFyY2gsIGF2cl9kd2FyZjJfZnJhbWVfaW5p dF9yZWcpOworICBkd2FyZjJfYXBwZW5kX3Vud2luZGVycyAoZ2RiYXJjaCk7 CisKICAgZnJhbWVfdW53aW5kX2FwcGVuZF91bndpbmRlciAoZ2RiYXJjaCwg JmF2cl9mcmFtZV91bndpbmQpOwogICBmcmFtZV9iYXNlX3NldF9kZWZhdWx0 IChnZGJhcmNoLCAmYXZyX2ZyYW1lX2Jhc2UpOwogCmRpZmYgLS1naXQgYS9n ZGIvZHdhcmYyLWZyYW1lLmMgYi9nZGIvZHdhcmYyLWZyYW1lLmMKaW5kZXgg YTY0MGMyNi4uNTRiYWIxNyAxMDA2NDQKLS0tIGEvZ2RiL2R3YXJmMi1mcmFt ZS5jCisrKyBiL2dkYi9kd2FyZjItZnJhbWUuYwpAQCAtMTUyNCw2ICsxNTI0 LDIxIEBAIGR3YXJmMl9mcmFtZV9jZmEgKHN0cnVjdCBmcmFtZV9pbmZvICp0 aGlzX2ZyYW1lKQogCiAgIHJldHVybiBnZXRfZnJhbWVfYmFzZSAodGhpc19m cmFtZSk7CiB9CisKKy8qIENvbXB1dGUgdGhlIGZyYW1lIGFkZHJlc3MuICAq LworQ09SRV9BRERSCitkd2FyZjJfZnJhbWVfYWRkciAodm9pZCAqKiB0aGlz X2NhY2hlLCBpbnQgcmVnbnVtKQoreworICBzdHJ1Y3QgZHdhcmYyX2ZyYW1l X2NhY2hlICpjYWNoZSA9ICp0aGlzX2NhY2hlOworICBDT1JFX0FERFIgYWRk cjsKKworICBnZGJfYXNzZXJ0IChjYWNoZSAhPSBOVUxMKTsKKyAgZ2RiX2Fz c2VydCAoY2FjaGUtPnJlZ1tyZWdudW1dLmhvdyA9PSBEV0FSRjJfRlJBTUVf UkVHX1NBVkVEX09GRlNFVCk7CisKKyAgYWRkciA9IGNhY2hlLT5jZmEgKyBj YWNoZS0+cmVnW3JlZ251bV0ubG9jLm9mZnNldDsKKworICByZXR1cm4gYWRk cjsKK30KIAwKIGNvbnN0IHN0cnVjdCBvYmpmaWxlX2RhdGEgKmR3YXJmMl9m cmFtZV9vYmpmaWxlX2RhdGE7CiAKZGlmZiAtLWdpdCBhL2dkYi9kd2FyZjIt ZnJhbWUuaCBiL2dkYi9kd2FyZjItZnJhbWUuaAppbmRleCBiNzM5NzQ0Li5j ZGU4OGU1IDEwMDY0NAotLS0gYS9nZGIvZHdhcmYyLWZyYW1lLmgKKysrIGIv Z2RiL2R3YXJmMi1mcmFtZS5oCkBAIC0xMTksNiArMTE5LDcgQEAgZXh0ZXJu IGNvbnN0IHN0cnVjdCBmcmFtZV9iYXNlICoKIC8qIENvbXB1dGUgdGhlIERX QVJGIENGQSBmb3IgYSBmcmFtZS4gICovCiAKIENPUkVfQUREUiBkd2FyZjJf ZnJhbWVfY2ZhIChzdHJ1Y3QgZnJhbWVfaW5mbyAqdGhpc19mcmFtZSk7CitD T1JFX0FERFIgZHdhcmYyX2ZyYW1lX2FkZHIgKHZvaWQgKiogdGhpc19jYWNo ZSwgaW50IHJlZ251bSk7CiAKIC8qIEZpbmQgdGhlIENGQSBpbmZvcm1hdGlv biBmb3IgUEMuCiA= --_002_CAC140656783604CABA6AE60C2A6D5A4CA3B38C1penmbx02corpatm_--