From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7854 invoked by alias); 16 Nov 2011 22:47:23 -0000 Received: (qmail 7840 invoked by uid 22791); 16 Nov 2011 22:47:22 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,TW_GJ,TW_ZJ X-Spam-Check-By: sourceware.org Received: from mail-yw0-f41.google.com (HELO mail-yw0-f41.google.com) (209.85.213.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 16 Nov 2011 22:47:07 +0000 Received: by mail-yw0-f41.google.com with SMTP id 17so357169ywp.0 for ; Wed, 16 Nov 2011 14:47:07 -0800 (PST) MIME-Version: 1.0 Received: by 10.147.29.3 with SMTP id g3mr1824374yaj.30.1321483627385; Wed, 16 Nov 2011 14:47:07 -0800 (PST) Received: by 10.146.241.11 with HTTP; Wed, 16 Nov 2011 14:47:07 -0800 (PST) Date: Wed, 16 Nov 2011 22:47:00 -0000 Message-ID: Subject: [PATCH, alpha]: Handle single-stepping of atomic sequences From: Uros Bizjak To: gdb-patches@sourceware.org Content-Type: multipart/mixed; boundary=000e0cd56ab42fd3ce04b1e1e218 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 X-SW-Source: 2011-11/txt/msg00457.txt.bz2 --000e0cd56ab42fd3ce04b1e1e218 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 757 Hello! The gcc simulate-thread.exp testsuite exposed the problem in handling of alpha atomic sequences. Single-stepping broke link in alpha's LL/SC atomic sequences. Attached patch copies handling of atomic sequences from rs6000-tdep.c and adapts the functionality for alpha. 2011-11-16 Uros Bizjak * alpha-tdep.c (beq_opcode): New. (ldl_l_opcode, ldq_l_opcode, stl_c_opcode, stq_c_opcode): Ditto. (alpha_deal_with_atomic_sequence): New function. (alpha_gdbarch_init): Handle single stepping of atomic sequences with alpha_deal_with_atomic_sequence. Patched gdb survives simulate-thread.exp testsuite on native alphaev68-pc-linux-gnu. I don't have write access, so If OK, please someone commit this patch to gdb CVS. Uros. --000e0cd56ab42fd3ce04b1e1e218 Content-Type: text/x-patch; charset=US-ASCII; name="gdb-7.3.50.20111114.diff" Content-Disposition: attachment; filename="gdb-7.3.50.20111114.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gv2x7rxd0 Content-length: 5779 LS0tIGFscGhhLXRkZXAuYwkyMDExLTExLTE2IDIzOjI3OjIwLjA4MDg5OTQ4 MCArMDEwMAorKysgYWxwaGEtdGRlcC5jLnViCTIwMTEtMTEtMTYgMjM6Mjc6 MDEuMTYwMDUxNDQ0ICswMTAwCkBAIC02NSw2ICs2NSw3IEBAIHN0YXRpYyBj b25zdCBpbnQgc3RxX29wY29kZSA9IDB4MmQ7CiAvKiBCcmFuY2ggaW5zdHJ1 Y3Rpb24gZm9ybWF0ICovCiAjZGVmaW5lIEJSX1JBKGluc24pIE1FTV9SQShp bnNuKQogCitzdGF0aWMgY29uc3QgaW50IGJlcV9vcGNvZGUgPSAweDM5Owog c3RhdGljIGNvbnN0IGludCBibmVfb3Bjb2RlID0gMHgzZDsKIAogLyogT3Bl cmF0ZSBpbnN0cnVjdGlvbiBmb3JtYXQgKi8KQEAgLTc2Miw2ICs3NjMsOTUg QEAgYWxwaGFfc2tpcF9wcm9sb2d1ZSAoc3RydWN0IGdkYmFyY2ggKmdkYgog fQogCiAMCitzdGF0aWMgY29uc3QgaW50IGxkbF9sX29wY29kZSA9IDB4MmE7 CitzdGF0aWMgY29uc3QgaW50IGxkcV9sX29wY29kZSA9IDB4MmI7CitzdGF0 aWMgY29uc3QgaW50IHN0bF9jX29wY29kZSA9IDB4MmU7CitzdGF0aWMgY29u c3QgaW50IHN0cV9jX29wY29kZSA9IDB4MmY7CisKKy8qIENoZWNrcyBmb3Ig YW4gYXRvbWljIHNlcXVlbmNlIG9mIGluc3RydWN0aW9ucyBiZWdpbm5pbmcg d2l0aCBhIExETF9ML0xEUV9MCisgICBpbnN0cnVjdGlvbiBhbmQgZW5kaW5n IHdpdGggYSBTVExfQy9TVFFfQyBpbnN0cnVjdGlvbi4gIElmIHN1Y2ggYSBz ZXF1ZW5jZQorICAgaXMgZm91bmQsIGF0dGVtcHQgdG8gc3RlcCB0aHJvdWdo IGl0LiAgQSBicmVha3BvaW50IGlzIHBsYWNlZCBhdCB0aGUgZW5kIG9mIAor ICAgdGhlIHNlcXVlbmNlLiAgKi8KKworaW50IAorYWxwaGFfZGVhbF93aXRo X2F0b21pY19zZXF1ZW5jZSAoc3RydWN0IGZyYW1lX2luZm8gKmZyYW1lKQor eworICBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCA9IGdldF9mcmFtZV9hcmNo IChmcmFtZSk7CisgIHN0cnVjdCBhZGRyZXNzX3NwYWNlICphc3BhY2UgPSBn ZXRfZnJhbWVfYWRkcmVzc19zcGFjZSAoZnJhbWUpOworICBDT1JFX0FERFIg cGMgPSBnZXRfZnJhbWVfcGMgKGZyYW1lKTsKKyAgQ09SRV9BRERSIGJyZWFr c1syXSA9IHstMSwgLTF9OworICBDT1JFX0FERFIgbG9jID0gcGM7CisgIENP UkVfQUREUiBjbG9zaW5nX2luc247IC8qIEluc3RydWN0aW9uIHRoYXQgY2xv c2VzIHRoZSBhdG9taWMgc2VxdWVuY2UuICAqLworICB1bnNpZ25lZCBpbnQg aW5zbiA9IGFscGhhX3JlYWRfaW5zbiAoZ2RiYXJjaCwgbG9jKTsKKyAgaW50 IGluc25fY291bnQ7CisgIGludCBpbmRleDsKKyAgaW50IGxhc3RfYnJlYWtw b2ludCA9IDA7IC8qIERlZmF1bHRzIHRvIDAgKG5vIGJyZWFrcG9pbnRzIHBs YWNlZCkuICAqLyAgCisgIGNvbnN0IGludCBhdG9taWNfc2VxdWVuY2VfbGVu Z3RoID0gMTY7IC8qIEluc3RydWN0aW9uIHNlcXVlbmNlIGxlbmd0aC4gICov CisgIGludCBiY19pbnNuX2NvdW50ID0gMDsgLyogQ29uZGl0aW9uYWwgYnJh bmNoIGluc3RydWN0aW9uIGNvdW50LiAgKi8KKworICAvKiBBc3N1bWUgYWxs IGF0b21pYyBzZXF1ZW5jZXMgc3RhcnQgd2l0aCBhIExETF9ML0xEUV9MIGlu c3RydWN0aW9uLiAgKi8KKyAgaWYgKElOU05fT1BDT0RFIChpbnNuKSAhPSBs ZGxfbF9vcGNvZGUKKyAgICAgICYmIElOU05fT1BDT0RFIChpbnNuKSAhPSBs ZHFfbF9vcGNvZGUpCisgICAgcmV0dXJuIDA7CisKKyAgLyogQXNzdW1lIHRo YXQgbm8gYXRvbWljIHNlcXVlbmNlIGlzIGxvbmdlciB0aGFuICJhdG9taWNf c2VxdWVuY2VfbGVuZ3RoIiAKKyAgICAgaW5zdHJ1Y3Rpb25zLiAgKi8KKyAg Zm9yIChpbnNuX2NvdW50ID0gMDsgaW5zbl9jb3VudCA8IGF0b21pY19zZXF1 ZW5jZV9sZW5ndGg7ICsraW5zbl9jb3VudCkKKyAgICB7CisgICAgICBsb2Mg Kz0gQUxQSEFfSU5TTl9TSVpFOworICAgICAgaW5zbiA9IGFscGhhX3JlYWRf aW5zbiAoZ2RiYXJjaCwgbG9jKTsKKworICAgICAgLyogQXNzdW1lIHRoYXQg dGhlcmUgaXMgYXQgbW9zdCBvbmUgY29uZGl0aW9uYWwgYnJhbmNoIGluIHRo ZSBhdG9taWMKKyAgICAgICAgIHNlcXVlbmNlLiAgSWYgYSBjb25kaXRpb25h bCBicmFuY2ggaXMgZm91bmQsIHB1dCBhIGJyZWFrcG9pbnQgaW4gCisgICAg ICAgICBpdHMgZGVzdGluYXRpb24gYWRkcmVzcy4gICovCisgICAgICBpZiAo SU5TTl9PUENPREUgKGluc24pID49IGJlcV9vcGNvZGUpCisgICAgICAgIHsK KyAgICAgICAgICBpbnQgaW1tZWRpYXRlID0gKGluc24gJiAweDAwMWZmZmZm KSA8PCAyOworCisJICBpbW1lZGlhdGUgPSAoaW1tZWRpYXRlIF4gMHg0MDAw MDApIC0gMHg0MDAwMDA7CisKKyAgICAgICAgICBpZiAoYmNfaW5zbl9jb3Vu dCA+PSAxKQorICAgICAgICAgICAgcmV0dXJuIDA7IC8qIE1vcmUgdGhhbiBv bmUgY29uZGl0aW9uYWwgYnJhbmNoIGZvdW5kLCBmYWxsYmFjayAKKyAgICAg ICAgICAgICAgICAgICAgICAgICB0byB0aGUgc3RhbmRhcmQgc2luZ2xlLXN0 ZXAgY29kZS4gICovCisgCisJICBicmVha3NbMV0gPSBsb2MgKyBBTFBIQV9J TlNOX1NJWkUgKyBpbW1lZGlhdGU7CisKKwkgIGJjX2luc25fY291bnQrKzsK KwkgIGxhc3RfYnJlYWtwb2ludCsrOworICAgICAgICB9CisKKyAgICAgIGlm IChJTlNOX09QQ09ERSAoaW5zbikgPT0gc3RsX2Nfb3Bjb2RlCisJICB8fCBJ TlNOX09QQ09ERSAoaW5zbikgPT0gc3RxX2Nfb3Bjb2RlKQorCWJyZWFrOwor ICAgIH0KKworICAvKiBBc3N1bWUgdGhhdCB0aGUgYXRvbWljIHNlcXVlbmNl IGVuZHMgd2l0aCBhIFNUTF9DL1NUUV9DIGluc3RydWN0aW9uLiAgKi8KKyAg aWYgKElOU05fT1BDT0RFIChpbnNuKSAhPSBzdGxfY19vcGNvZGUKKyAgICAg ICYmIElOU05fT1BDT0RFIChpbnNuKSAhPSBzdHFfY19vcGNvZGUpCisgICAg cmV0dXJuIDA7CisKKyAgY2xvc2luZ19pbnNuID0gbG9jOworICBsb2MgKz0g QUxQSEFfSU5TTl9TSVpFOworCisgIC8qIEluc2VydCBhIGJyZWFrcG9pbnQg cmlnaHQgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUgYXRvbWljIHNlcXVlbmNlLiAg Ki8KKyAgYnJlYWtzWzBdID0gbG9jOworCisgIC8qIENoZWNrIGZvciBkdXBs aWNhdGVkIGJyZWFrcG9pbnRzLiAgQ2hlY2sgYWxzbyBmb3IgYSBicmVha3Bv aW50CisgICAgIHBsYWNlZCAoYnJhbmNoIGluc3RydWN0aW9uJ3MgZGVzdGlu YXRpb24pIGF0IHRoZSBTVExfQy9TVFFfQyAKKyAgICAgaW5zdHJ1Y3Rpb24s IHRoaXMgcmVzZXRzIHRoZSByZXNlcnZhdGlvbiBhbmQgdGFrZSB1cyBiYWNr IHRvIHRoZSAKKyAgICAgTERMX0wvTERRX0wgaW5zdHJ1Y3Rpb24gYXQgdGhl IGJlZ2lubmluZyBvZiB0aGUgYXRvbWljIHNlcXVlbmNlLiAgKi8KKyAgaWYg KGxhc3RfYnJlYWtwb2ludCAmJiAoKGJyZWFrc1sxXSA9PSBicmVha3NbMF0p IAorICAgICAgfHwgKGJyZWFrc1sxXSA9PSBjbG9zaW5nX2luc24pKSkKKyAg ICBsYXN0X2JyZWFrcG9pbnQgPSAwOworCisgIC8qIEVmZmVjdGl2ZWx5IGlu c2VydHMgdGhlIGJyZWFrcG9pbnRzLiAgKi8KKyAgZm9yIChpbmRleCA9IDA7 IGluZGV4IDw9IGxhc3RfYnJlYWtwb2ludDsgaW5kZXgrKykKKyAgICBpbnNl cnRfc2luZ2xlX3N0ZXBfYnJlYWtwb2ludCAoZ2RiYXJjaCwgYXNwYWNlLCBi cmVha3NbaW5kZXhdKTsKKworICByZXR1cm4gMTsKK30KKworDAogLyogRmln dXJlIG91dCB3aGVyZSB0aGUgbG9uZ2ptcCB3aWxsIGxhbmQuCiAgICBXZSBl eHBlY3QgdGhlIGZpcnN0IGFyZyB0byBiZSBhIHBvaW50ZXIgdG8gdGhlIGpt cF9idWYgc3RydWN0dXJlIGZyb20KICAgIHdoaWNoIHdlIGV4dHJhY3QgdGhl IFBDIChKQl9QQykgdGhhdCB3ZSB3aWxsIGxhbmQgYXQuICBUaGUgUEMgaXMg Y29waWVkCkBAIC0xNzQ5LDYgKzE4MzksOSBAQCBhbHBoYV9nZGJhcmNoX2lu aXQgKHN0cnVjdCBnZGJhcmNoX2luZm8gCiAgIHNldF9nZGJhcmNoX2RlY3Jf cGNfYWZ0ZXJfYnJlYWsgKGdkYmFyY2gsIEFMUEhBX0lOU05fU0laRSk7CiAg IHNldF9nZGJhcmNoX2Nhbm5vdF9zdGVwX2JyZWFrcG9pbnQgKGdkYmFyY2gs IDEpOwogCisgIC8qIEhhbmRsZXMgc2luZ2xlIHN0ZXBwaW5nIG9mIGF0b21p YyBzZXF1ZW5jZXMuICAqLworICBzZXRfZ2RiYXJjaF9zb2Z0d2FyZV9zaW5n bGVfc3RlcCAoZ2RiYXJjaCwgYWxwaGFfZGVhbF93aXRoX2F0b21pY19zZXF1 ZW5jZSk7CisKICAgLyogSG9vayBpbiBBQkktc3BlY2lmaWMgb3ZlcnJpZGVz LCBpZiB0aGV5IGhhdmUgYmVlbiByZWdpc3RlcmVkLiAgKi8KICAgZ2RiYXJj aF9pbml0X29zYWJpIChpbmZvLCBnZGJhcmNoKTsKIAo= --000e0cd56ab42fd3ce04b1e1e218--