From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 124998 invoked by alias); 2 Aug 2016 09:43:06 -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 124983 invoked by uid 89); 2 Aug 2016 09:43:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.8 required=5.0 tests=BAYES_50,SPF_PASS autolearn=ham version=3.3.2 spammy=H*UA:Build, Hx-spam-relays-external:sk:2016080, H*RU:sk:2016080, H*UA:Domino X-HELO: mail2.securitas-direct.com Received: from mail2.securitas-direct.com (HELO mail2.securitas-direct.com) (195.170.189.96) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 02 Aug 2016 09:42:55 +0000 Received: from mail.securitas-direct.com (unknown [91.199.64.45]) by Websense Email with ESMTPS id 4BE81A5ADC56D for ; Tue, 2 Aug 2016 11:42:51 +0200 (CEST) Received: from smtp.notes.na.collabserv.com ([192.155.248.66]) by mail.securitas-direct.com with ESMTP; 02 Aug 2016 11:42:51 +0200 Received: from localhost by smtp.notes.na.collabserv.com with smtp.notes.na.collabserv.com ESMTP for from ; Tue, 2 Aug 2016 09:42:38 -0000 Received: from us1a3-smtp02.a3.dal06.isc4sb.com (10.106.154.159) by smtp.notes.na.collabserv.com (10.106.227.127) with smtp.notes.na.collabserv.com ESMTP; Tue, 2 Aug 2016 09:42:37 -0000 X-IBM-Helo: us1a3-smtp02.a3.dal06.isc4sb.com X-IBM-MailFrom: fredrik.hederstierna@verisure.com X-IBM-RcptTo: qiyaoltc@gmail.com;gdb-patches@sourceware.org Received: from us1a3-mail13.a3.dal06.isc4sb.com ([10.146.77.97]) by us1a3-smtp02.a3.dal06.isc4sb.com with ESMTP id 2016080209423640-133903 ; Tue, 2 Aug 2016 09:42:36 +0000 MIME-Version: 1.0 Sensitivity: In-Reply-To: <868twkekf1.fsf@gmail.com> References: <868twkekf1.fsf@gmail.com>, Subject: Re: [PATCH] Fix exception unwinding for ARM Cortex-M From: "Fredrik Hederstierna" To: gdb-patches@sourceware.org Cc: Yao Qi Date: Tue, 02 Aug 2016 09:43:00 -0000 X-LLNOutbound: False X-TNEFEvaluated: 1 Content-Type: multipart/mixed; boundary="=_mixed 003556E900258003_=" x-cbid: 16080209-6357-0000-0000-0000000953E7 X-IBM-ISS-SpamDetectors: Score=0.40962; BY=0; FL=0; FP=0; FZ=0; HX=0; KW=0; PH=0; SC=0.40962; ST=0; TS=0; UL=0; ISC= X-IBM-ISS-DetailInfo: BY=3.00005545; HX=3.00000240; KW=3.00000007; PH=3.00000004; SC=3.00000177; SDB=6.00738867; UDB=6.00347306; UTC=2016-08-02 09:42:38 x-cbparentid: 16080209-6358-0000-0000-00000013942B Message-Id: X-SW-Source: 2016-08/txt/msg00024.txt.bz2 --=_mixed 003556E900258003_= Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Content-length: 968 -----Yao Qi wrote: ----- >Fredrik, >A general comment to this patch is that you need to split it. Each >patch only addresses one issue or adds one support. Ok, I send you first patch, this one fix EXC_RETURN values. >We need to consider ARMv6-M as well, >> + switch (pc) >> + { >> + /* From Table B1-8 and B1-9 the EXC_RETURN definition of >> + the exception return behavior. */ >> + >> + /* Return to Handler mode. Return stack Main. Frame type >Extended. */ > >I don't see anything useful the comment has. We can remove it. >Instead, we need to document, on ARMv6-M and ARMv7-M without FP >extension, the exc_return is 0xfffffff{1,9,d}. On ARMv7-M with FP >extension, exc_return can be 0xffffff{e,f}{1,9,d}. Ok, I documented also ARMv6-M in new patch. >Please post the patch only for magic pc handling, then I can review >and approve it. Ok, done. Attached first patch. I will submit next when it is ready. Thanks & Kind Regards, Fredrik --=_mixed 003556E900258003_= Content-Type: application/octet-stream; name="gdb-cortex-m-exc-return-values.patch" Content-Disposition: attachment; filename="gdb-cortex-m-exc-return-values.patch" Content-Transfer-Encoding: base64 Content-length: 5015 ZGlmZiAtLWdpdCBhL2dkYi9DaGFuZ2VMb2cgYi9nZGIvQ2hhbmdlTG9nCmlu ZGV4IDc4MjAzMDIuLjJjODU3M2MgMTAwNjQ0Ci0tLSBhL2dkYi9DaGFuZ2VM b2cKKysrIGIvZ2RiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcgQEAKKzIwMTYt MDgtMDIgIEZyZWRyaWsgSGVkZXJzdGllcm5hICA8ZnJlZHJpay5oZWRlcnN0 aWVybmFAdmVyaXN1cmUuY29tPgorCisJKiBhcm0tdGRlcC5jOiBGaXggRVhD X1JFVFVSTiB2YWx1ZXMgZm9yIEFSTXY2LU0gYW5kIEFSTXY3LU0uCisKIDIw MTYtMDgtMDEgIEpvZWwgQnJvYmVja2VyICA8YnJvYmVja2VyQGFkYWNvcmUu Y29tPgogCiAJKiBORVdTOiBDcmVhdGUgYSBuZXcgc2VjdGlvbiBmb3IgdGhl IG5leHQgcmVsZWFzZSBicmFuY2guCmRpZmYgLS1naXQgYS9nZGIvYXJtLXRk ZXAuYyBiL2dkYi9hcm0tdGRlcC5jCmluZGV4IGQyNjYxY2IuLjQzNDM2ZGYg MTAwNjQ0Ci0tLSBhL2dkYi9hcm0tdGRlcC5jCisrKyBiL2dkYi9hcm0tdGRl cC5jCkBAIC00NjksOSArNDY5LDExIEBAIHN0YXRpYyBDT1JFX0FERFIKIGFy bV9hZGRyX2JpdHNfcmVtb3ZlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwg Q09SRV9BRERSIHZhbCkKIHsKICAgLyogT24gTS1wcm9maWxlIGRldmljZXMs IGRvIG5vdCBzdHJpcCB0aGUgbG93IGJpdCBmcm9tIEVYQ19SRVRVUk4KLSAg ICAgKHRoZSBtYWdpYyBleGNlcHRpb24gcmV0dXJuIGFkZHJlc3MpLiAgKi8K KyAgICAgKHRoZSBtYWdpYyBleGNlcHRpb24gcmV0dXJuIGFkZHJlc3MpLgor ICAgICBBY2NvcmRpbmcgdG8gQjEuNS44IG9mIGJvdGggdGhlIEFSTXY2LU0g YW5kIEFSTXY3LU0gUmVmZXJlbmNlIE1hbnVhbHMKKyAgICAgdGhlIEVYQ19S RVRVUk4gdmFsdWUgaXMgMHhGIGluIEJpdHNbMzE6MjhdLiAgKi8KICAgaWYg KGdkYmFyY2hfdGRlcCAoZ2RiYXJjaCktPmlzX20KLSAgICAgICYmICh2YWwg JiAweGZmZmZmZmYwKSA9PSAweGZmZmZmZmYwKQorICAgICAgJiYgKHZhbCAm IDB4ZjAwMDAwMDApID09IDB4ZjAwMDAwMDApCiAgICAgcmV0dXJuIHZhbDsK IAogICBpZiAoYXJtX2FwY3NfMzIpCkBAIC0yOTc3LDYgKzI5NzksNjEgQEAg YXJtX21fZXhjZXB0aW9uX3ByZXZfcmVnaXN0ZXIgKHN0cnVjdCBmcmFtZV9p bmZvICp0aGlzX2ZyYW1lLAogCQkJCSAgICAgICBwcmV2X3JlZ251bSk7CiB9 CiAKKy8qIERldGVybWluZSBpZiB0aGUgcHJvZ3JhbSBjb3VudGVyIHNwZWNp ZmllZCBlcXVhbHMgYW55IG9mCisgIHRoZXNlIG1hZ2ljIHJldHVybiB2YWx1 ZXMsIGNhbGxlZCBFWENfUkVUVVJOLCBkZWZpbmVkIGJ5IHRoZQorICBBUk0g djYtTSBhbmQgdjctTSBhcmNoaXRlY3R1cmVzLgorCisgIEZyb20gQVJNdjYt TSBSZWZlcmVuY2UgTWFudWFsIEIxLjUuOAorICBUYWJsZSBCMS01IEV4Y2Vw dGlvbiByZXR1cm4gYmVoYXZpb3IKKworICBFWENfUkVUVVJOICAgIFJldHVy biBUbyAgICAgICAgUmV0dXJuIFN0YWNrCisgIDB4RkZGRkZGRjEgICAgSGFu ZGxlciBtb2RlICAgICBNYWluCisgIDB4RkZGRkZGRjkgICAgVGhyZWFkIG1v ZGUgICAgICBNYWluCisgIDB4RkZGRkZGRkQgICAgVGhyZWFkIG1vZGUgICAg ICBQcm9jZXNzCisKKyAgRnJvbSBBUk12Ny1NIFJlZmVyZW5jZSBNYW51YWwg QjEuNS44CisgIFRhYmxlIEIxLTggRVhDX1JFVFVSTiBkZWZpbml0aW9uIG9m IGV4Y2VwdGlvbiByZXR1cm4gYmVoYXZpb3IsIG5vIEZQCisKKyAgRVhDX1JF VFVSTiAgICBSZXR1cm4gVG8gICAgICAgIFJldHVybiBTdGFjaworICAweEZG RkZGRkYxICAgIEhhbmRsZXIgbW9kZSAgICAgTWFpbgorICAweEZGRkZGRkY5 ICAgIFRocmVhZCBtb2RlICAgICAgTWFpbgorICAweEZGRkZGRkZEICAgIFRo cmVhZCBtb2RlICAgICAgUHJvY2VzcworCisgIFRhYmxlIEIxLTkgRVhDX1JF VFVSTiBkZWZpbml0aW9uIG9mIGV4Y2VwdGlvbiByZXR1cm4gYmVoYXZpb3Is IHdpdGggRlAKKworICBFWENfUkVUVVJOICAgIFJldHVybiBUbyAgICAgICAg UmV0dXJuIFN0YWNrICAgIEZyYW1lIFR5cGUKKyAgMHhGRkZGRkZFMSAgICBI YW5kbGVyIG1vZGUgICAgIE1haW4gICAgICAgICAgICBFeHRlbmRlZAorICAw eEZGRkZGRkU5ICAgIFRocmVhZCBtb2RlICAgICAgTWFpbiAgICAgICAgICAg IEV4dGVuZGVkCisgIDB4RkZGRkZGRUQgICAgVGhyZWFkIG1vZGUgICAgICBQ cm9jZXNzICAgICAgICAgRXh0ZW5kZWQKKyAgMHhGRkZGRkZGMSAgICBIYW5k bGVyIG1vZGUgICAgIE1haW4gICAgICAgICAgICBCYXNpYworICAweEZGRkZG RkY5ICAgIFRocmVhZCBtb2RlICAgICAgTWFpbiAgICAgICAgICAgIEJhc2lj CisgIDB4RkZGRkZGRkQgICAgVGhyZWFkIG1vZGUgICAgICBQcm9jZXNzICAg ICAgICAgQmFzaWMKKworICBGb3IgbW9yZSBkZXRhaWxzIHNlZSAiQjEuNS44 IEV4Y2VwdGlvbiByZXR1cm4gYmVoYXZpb3IiCisgIGluIGJvdGggQVJNdjYt TSBhbmQgQVJNdjctTSBBcmNoaXRlY3R1cmUgUmVmZXJlbmNlIE1hbnVhbHMu ICAqLworCitzdGF0aWMgaW50Cithcm1fbV9wY19pc19tYWdpYyAoQ09SRV9B RERSIHBjKQoreworICBzd2l0Y2ggKHBjKQorICAgIHsKKyAgICAgIC8qIFZh bHVlcyBmcm9tIFRhYmxlcyBpbiBCMS41LjggdGhlIEVYQ19SRVRVUk4gZGVm aW5pdGlvbnMgb2YKKyAgICAgICAgIHRoZSBleGNlcHRpb24gcmV0dXJuIGJl aGF2aW9yLiAgKi8KKyAgICAgIGNhc2UgMHhmZmZmZmZlMToKKyAgICAgIGNh c2UgMHhmZmZmZmZlOToKKyAgICAgIGNhc2UgMHhmZmZmZmZlZDoKKyAgICAg IGNhc2UgMHhmZmZmZmZmMToKKyAgICAgIGNhc2UgMHhmZmZmZmZmOToKKyAg ICAgIGNhc2UgMHhmZmZmZmZmZDoKKyAgICAgICAgLyogUEMgaXMgbWFnaWMu ICAqLworICAgICAgICByZXR1cm4gMTsKKworICAgICAgZGVmYXVsdDoKKyAg ICAgICAgLyogUEMgaXMgbm90IG1hZ2ljLiAgKi8KKyAgICAgICAgcmV0dXJu IDA7CisgICAgfQorfQorCiAvKiBJbXBsZW1lbnRhdGlvbiBvZiBmdW5jdGlv biBob29rICdzbmlmZmVyJyBpbgogICAgJ3N0cnVjdCBmcmFtZV91d25pbmQn LiAgKi8KIApAQCAtMjk5MCwxNCArMzA0Nyw4IEBAIGFybV9tX2V4Y2VwdGlv bl91bndpbmRfc25pZmZlciAoY29uc3Qgc3RydWN0IGZyYW1lX3Vud2luZCAq c2VsZiwKICAgLyogTm8gbmVlZCB0byBjaGVjayBpc19tOyB0aGlzIHNuaWZm ZXIgaXMgb25seSByZWdpc3RlcmVkIGZvcgogICAgICBNLXByb2ZpbGUgYXJj aGl0ZWN0dXJlcy4gICovCiAKLSAgLyogRXhjZXB0aW9uIGZyYW1lcyByZXR1 cm4gdG8gb25lIG9mIHRoZXNlIG1hZ2ljIFBDcy4gIE90aGVyIHZhbHVlcwot ICAgICBhcmUgbm90IGRlZmluZWQgYXMgb2YgdjctTS4gIFNlZSBkZXRhaWxz IGluICJCMS41LjggRXhjZXB0aW9uCi0gICAgIHJldHVybiBiZWhhdmlvciIg aW4gIkFSTXY3LU0gQXJjaGl0ZWN0dXJlIFJlZmVyZW5jZSBNYW51YWwiLiAg Ki8KLSAgaWYgKHRoaXNfcGMgPT0gMHhmZmZmZmZmMSB8fCB0aGlzX3BjID09 IDB4ZmZmZmZmZjkKLSAgICAgIHx8IHRoaXNfcGMgPT0gMHhmZmZmZmZmZCkK LSAgICByZXR1cm4gMTsKLQotICByZXR1cm4gMDsKKyAgLyogQ2hlY2sgaWYg ZXhjZXB0aW9uIGZyYW1lIHJldHVybnMgdG8gYSBtYWdpYyBQQyB2YWx1ZS4g ICovCisgIHJldHVybiBhcm1fbV9wY19pc19tYWdpYyAodGhpc19wYyk7CiB9 CiAKIC8qIEZyYW1lIHVud2luZGVyIGZvciBNLXByb2ZpbGUgZXhjZXB0aW9u cy4gICovCg== --=_mixed 003556E900258003_=--