From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9263 invoked by alias); 9 Jun 2014 21:16:24 -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 9250 invoked by uid 89); 9 Jun 2014 21:16:23 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-ob0-f170.google.com Received: from mail-ob0-f170.google.com (HELO mail-ob0-f170.google.com) (209.85.214.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Mon, 09 Jun 2014 21:16:22 +0000 Received: by mail-ob0-f170.google.com with SMTP id uz6so1744100obc.1 for ; Mon, 09 Jun 2014 14:16:20 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=ltDgea5Ec00Qanqj1C56EBsRBsh69sv1oSdKqgaimgQ=; b=I9wu4FFVMYmQsHs/D0JXnrnS7mVDWiwxGMijd8YTUb2zAHxFuN0Q/A7wNjfIHXXwuy /tLd2/BZW/HWSAJzmx8/6+RXcXt8dBqM2vyGGatWizJ/gVjFPyrRzuoSbTEdX1sDWEv0 6uS+dE/ka77Rs7DhDFqE8vNQMjqBf/9BZ9bxKaT2A+7IjVuxo1uuUkPTUr0hH7kG+eB4 x1eKnKgm8aShtWFPnbFaLXSqo62pq8Z86hz4gUqkNBYACpa/t0REBYEXYEx+Yqi6r0+g /ZwQ7uFnknnrFxBklzmW4Muqk1dfqEePhiiQlWsItlVtctrfuc1y50J8dBNV0qz10rTn A3rQ== X-Gm-Message-State: ALoCoQncAoywDSFSfx2/Z0L9Hy3UocAz9lvW4t7WFguh3vjUJBUIJxTDR0RWrUBylR5C334t4Wa8 MIME-Version: 1.0 X-Received: by 10.60.175.163 with SMTP id cb3mr28513588oec.29.1402348580545; Mon, 09 Jun 2014 14:16:20 -0700 (PDT) Received: by 10.182.144.133 with HTTP; Mon, 9 Jun 2014 14:16:20 -0700 (PDT) In-Reply-To: <83oay128ca.fsf@gnu.org> References: <83oay128ca.fsf@gnu.org> Date: Mon, 09 Jun 2014 21:16:00 -0000 Message-ID: Subject: Re: [PATCH] Add Frame.read_register to Python API From: Alexander Smundak To: Eli Zaretskii Cc: gdb-patches Content-Type: multipart/mixed; boundary=047d7bd75f24ff71d504fb6db896 X-SW-Source: 2014-06/txt/msg00408.txt.bz2 --047d7bd75f24ff71d504fb6db896 Content-Type: text/plain; charset=UTF-8 Content-length: 1326 On Mon, Jun 9, 2014 at 12:25 PM, Eli Zaretskii wrote: > When 2 changes are in the same node, write them one after the other, > and have only one "(Node Name)" thing. Done. >> +* Python Scripting >> + Access frame registers > > This is an incomplete sentence. I guess you meant something like > You can now access frame registers from Python scripts. Done. >> +Return the value of @var{register} in this frame. The @var{register} >> +argument must be a string (e.g., 'rsp' or 'r1'), or a register number. > ^^^^^^^^^^^^^ > These should be in @code instead of quotes. Added the code but retained the quotes, because it's string literal. >> +Returns @code{Gdb.Value} object. > ^ > "a" missing here. Done. Here it is again: The ability to read registers is needed to use Frame Filter API to display the frames created by JIT compilers. gdb/Changelog 2014-06-09 Sasha Smundak * python/py-frame.c (frapy_read_register): New function. 2014-06-09 Sasha Smundak * python.texi (Writing a Frame Filter): Fix example code. (Frames in Python): Fix reference in find_sal description. Add read_register description. 2014-06-09 Sasha Smundak * gdb.python/py-frame.exp: Test Frame.read_register. --047d7bd75f24ff71d504fb6db896 Content-Type: text/plain; charset=US-ASCII; name="frame-read-register-patch-2.txt" Content-Disposition: attachment; filename="frame-read-register-patch-2.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hw8a35s60 Content-length: 6096 ZGlmZiAtLWdpdCBhL2dkYi9ORVdTIGIvZ2RiL05FV1MKaW5kZXggMTM5N2U4 Yi4uM2RiNDU4YiAxMDA2NDQKLS0tIGEvZ2RiL05FV1MKKysrIGIvZ2RiL05F V1MKQEAgLTMsNiArMyw5IEBACiAKICoqKiBDaGFuZ2VzIHNpbmNlIEdEQiA3 LjcKIAorKiBQeXRob24gU2NyaXB0aW5nCisgIFlvdSBjYW4gbm93IGFjY2Vz cyBmcmFtZSByZWdpc3RlcnMgZnJvbSBQeXRob24gc2NyaXB0cy4KKwogKiBO ZXcgY29tbWFuZCBsaW5lIG9wdGlvbnMKIAogLUQgZGF0YS1kaXJlY3RvcnkK ZGlmZiAtLWdpdCBhL2dkYi9kb2MvcHl0aG9uLnRleGkgYi9nZGIvZG9jL3B5 dGhvbi50ZXhpCmluZGV4IDQ2ODg3ODMuLjE0NTY0ZWIgMTAwNjQ0Ci0tLSBh L2dkYi9kb2MvcHl0aG9uLnRleGkKKysrIGIvZ2RiL2RvYy9weXRob24udGV4 aQpAQCAtMjA0Niw5ICsyMDQ2LDEwIEBAIGNsYXNzIElubGluZWRGcmFtZURl Y29yYXRvcihGcmFtZURlY29yYXRvcik6CiAKICAgICBkZWYgX19pbml0X18o c2VsZiwgZm9iaik6CiAgICAgICAgIHN1cGVyKElubGluZWRGcmFtZURlY29y YXRvciwgc2VsZikuX19pbml0X18oZm9iaikKKyAgICAgICAgc2VsZi5mb2Jq ID0gZm9iagogCiAgICAgZGVmIGZ1bmN0aW9uKHNlbGYpOgotICAgICAgICBm cmFtZSA9IGZvYmouaW5mZXJpb3JfZnJhbWUoKQorICAgICAgICBmcmFtZSA9 IHNlbGYuZm9iai5pbmZlcmlvcl9mcmFtZSgpCiAgICAgICAgIG5hbWUgPSBz dHIoZnJhbWUubmFtZSgpKQogCiAgICAgICAgIGlmIGZyYW1lLnR5cGUoKSA9 PSBnZGIuSU5MSU5FX0ZSQU1FOgpAQCAtMzU4NSwxMCArMzU4NiwxNiBAQCBS ZXR1cm4gdGhlIGZyYW1lIGNhbGxlZCBieSB0aGlzIGZyYW1lLgogQGVuZCBk ZWZ1bgogCiBAZGVmdW4gRnJhbWUuZmluZF9zYWwgKCkKLVJldHVybiB0aGUg ZnJhbWUncyBzeW10YWIgYW5kIGxpbmUgb2JqZWN0LgorUmV0dXJuIHRoZSBm cmFtZSdzIEBjb2Rle2dkYi5TeW10YWJfYW5kX2xpbmV9IG9iamVjdC4KIEB4 cmVme1N5bWJvbCBUYWJsZXMgSW4gUHl0aG9ufS4KIEBlbmQgZGVmdW4KIAor QGRlZnVuIEZyYW1lLnJlYWRfcmVnaXN0ZXIgKHJlZ2lzdGVyKQorUmV0dXJu IHRoZSB2YWx1ZSBvZiBAdmFye3JlZ2lzdGVyfSBpbiB0aGlzIGZyYW1lLiBU aGUgQHZhcntyZWdpc3Rlcn0KK2FyZ3VtZW50IG11c3QgYmUgYSBzdHJpbmcg KGUuZy4sIEBjb2Rleydyc3AnfSBvciBAY29kZXsncjEnfSksIG9yIGEKK3Jl Z2lzdGVyIG51bWJlci4gUmV0dXJucyBhIEBjb2Rle0dkYi5WYWx1ZX0gb2Jq ZWN0LgorQGVuZCBkZWZ1bgorCiBAZGVmdW4gRnJhbWUucmVhZF92YXIgKHZh cmlhYmxlIEBye1t9LCBibG9ja0Bye119KQogUmV0dXJuIHRoZSB2YWx1ZSBv ZiBAdmFye3ZhcmlhYmxlfSBpbiB0aGlzIGZyYW1lLiAgSWYgdGhlIG9wdGlv bmFsCiBhcmd1bWVudCBAdmFye2Jsb2NrfSBpcyBwcm92aWRlZCwgc2VhcmNo IGZvciB0aGUgdmFyaWFibGUgZnJvbSB0aGF0CmRpZmYgLS1naXQgYS9nZGIv cHl0aG9uL3B5LWZyYW1lLmMgYi9nZGIvcHl0aG9uL3B5LWZyYW1lLmMKaW5k ZXggNzcwNzdkMy4uNDM3NTU0MSAxMDA2NDQKLS0tIGEvZ2RiL3B5dGhvbi9w eS1mcmFtZS5jCisrKyBiL2dkYi9weXRob24vcHktZnJhbWUuYwpAQCAtMjgs NiArMjgsNyBAQAogI2luY2x1ZGUgInB5dGhvbi1pbnRlcm5hbC5oIgogI2lu Y2x1ZGUgInN5bWZpbGUuaCIKICNpbmNsdWRlICJvYmpmaWxlcy5oIgorI2lu Y2x1ZGUgInVzZXItcmVncy5oIgogCiB0eXBlZGVmIHN0cnVjdCB7CiAgIFB5 T2JqZWN0X0hFQUQKQEAgLTIzNSw2ICsyMzYsMzggQEAgZnJhcHlfcGMgKFB5 T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKICAgcmV0dXJuIGdkYl9w eV9sb25nX2Zyb21fdWxvbmdlc3QgKHBjKTsKIH0KIAorLyogSW1wbGVtZW50 YXRpb24gb2YgZ2RiLkZyYW1lLnJlYWRfcmVnaXN0ZXIgKHNlbGYsIHJlZ2lz dGVyKSAtPiBnZGIuVmFsdWUuCisgICBSZXR1cm5zIHRoZSB2YWx1ZSBvZiBh IHJlZ2lzdGVyIGluIHRoaXMgZnJhbWUuICAqLworc3RhdGljIFB5T2JqZWN0 ICoKK2ZyYXB5X3JlYWRfcmVnaXN0ZXIgKFB5T2JqZWN0ICpzZWxmLCBQeU9i amVjdCAqYXJncykKK3sKKyAgc3RydWN0IGZyYW1lX2luZm8gKmZyYW1lOwor ICB2b2xhdGlsZSBzdHJ1Y3QgZ2RiX2V4Y2VwdGlvbiBleGNlcHQ7CisgIGlu dCByZWdudW0gPSAtMTsKKyAgc3RydWN0IHZhbHVlICp2YWwgPSBOVUxMOwor ICBUUllfQ0FUQ0ggKGV4Y2VwdCwgUkVUVVJOX01BU0tfQUxMKQorICAgIHsK KyAgICAgIEZSQVBZX1JFUVVJUkVfVkFMSUQgKHNlbGYsIGZyYW1lKTsKKyAg ICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZSAoYXJncywgImkiLCAmcmVnbnVt KSkKKwl7CisJICBjb25zdCBjaGFyICpyZWdudW1fc3RyOworCSAgUHlFcnJf Q2xlYXIoKTsgIC8qIENsZWFyIFB5QXJnX1BhcnNlVHVwbGUgZmFpbHVyZSBh Ym92ZS4gICovCisJICBpZiAoUHlBcmdfUGFyc2VUdXBsZSAoYXJncywgInMi LCAmcmVnbnVtX3N0cikpCisJICAgIHsKKwkgICAgICByZWdudW0gPSB1c2Vy X3JlZ19tYXBfbmFtZV90b19yZWdudW0gKGdldF9mcmFtZV9hcmNoIChmcmFt ZSksCisJCQkJCQkgICAgcmVnbnVtX3N0ciwKKwkJCQkJCSAgICBzdHJsZW4g KHJlZ251bV9zdHIpKTsKKwkgICAgfQorCX0KKyAgICAgIGlmIChyZWdudW0g Pj0gMCkKKwl7CisJICB2YWwgPSB2YWx1ZV9vZl9yZWdpc3RlciAocmVnbnVt LCBmcmFtZSk7CisJfQorICAgIH0KKyAgR0RCX1BZX0hBTkRMRV9FWENFUFRJ T04gKGV4Y2VwdCk7CisgIHJldHVybiB2YWwgPyB2YWx1ZV90b192YWx1ZV9v YmplY3QgKHZhbCkgOiBOVUxMOworfQorCiAvKiBJbXBsZW1lbnRhdGlvbiBv ZiBnZGIuRnJhbWUuYmxvY2sgKHNlbGYpIC0+IGdkYi5CbG9jay4KICAgIFJl dHVybnMgdGhlIGZyYW1lJ3MgY29kZSBibG9jay4gICovCiAKQEAgLTY3NCw2 ICs3MDcsOSBAQCBSZXR1cm4gdGhlIHJlYXNvbiB3aHkgaXQncyBub3QgcG9z c2libGUgdG8gZmluZCBmcmFtZXMgb2xkZXIgdGhhbiB0aGlzLiIgfSwKICAg eyAicGMiLCBmcmFweV9wYywgTUVUSF9OT0FSR1MsCiAgICAgInBjICgpIC0+ IExvbmcuXG5cCiBSZXR1cm4gdGhlIGZyYW1lJ3MgcmVzdW1lIGFkZHJlc3Mu IiB9LAorICB7ICJyZWFkX3JlZ2lzdGVyIiwgZnJhcHlfcmVhZF9yZWdpc3Rl ciwgTUVUSF9WQVJBUkdTLAorICAgICJyZWFkX3JlZ2lzdGVyIChyZWdpc3Rl cikgLT4gZ2RiLlZhbHVlXG5cCitSZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSBy ZWdpc3RlciBpbiB0aGUgZnJhbWUuIiB9LAogICB7ICJibG9jayIsIGZyYXB5 X2Jsb2NrLCBNRVRIX05PQVJHUywKICAgICAiYmxvY2sgKCkgLT4gZ2RiLkJs b2NrLlxuXAogUmV0dXJuIHRoZSBmcmFtZSdzIGNvZGUgYmxvY2suIiB9LApk aWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LWZyYW1l LmV4cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1mcmFtZS5leHAK aW5kZXggMzUxNzgyNC4uNjAzNGZmZiAxMDA2NDQKLS0tIGEvZ2RiL3Rlc3Rz dWl0ZS9nZGIucHl0aG9uL3B5LWZyYW1lLmV4cAorKysgYi9nZGIvdGVzdHN1 aXRlL2dkYi5weXRob24vcHktZnJhbWUuZXhwCkBAIC05NCwzICs5NCwxNiBA QCBnZGJfdGVzdCAicHl0aG9uIHByaW50ICgncmVzdWx0ID0gJXMnICUgZjAu cmVhZF92YXIgKCd2YXJpYWJsZV93aGljaF9zdXJlbHlfZG9lcwogZ2RiX3Rl c3QgInB5dGhvbiBwcmludCAoJ3Jlc3VsdCA9ICVzJyAlIGYwLnJlYWRfdmFy ICgnYScpKSIgIiA9IDEiICJ0ZXN0IEZyYW1lLnJlYWRfdmFyIC0gc3VjY2Vz cyIKIAogZ2RiX3Rlc3QgInB5dGhvbiBwcmludCAoJ3Jlc3VsdCA9ICVzJyAl IChnZGIuc2VsZWN0ZWRfZnJhbWUgKCkgPT0gZjEpKSIgIiA9IFRydWUiICJ0 ZXN0IGdkYi5zZWxlY3RlZF9mcmFtZSIKKworIyBDYW4gcmVhZCBTUCByZWdp c3Rlci4KK2dkYl90ZXN0ICJweXRob24gcHJpbnQgKCdyZXN1bHQgPSAlcycg JSBmMC5yZWFkX3JlZ2lzdGVyKCdzcCcpKSIgXAorICAiID0gMHhcWzAtOWEt ZkEtRlxdKyIgXAorICAidGVzdCBGcmFtZS5yZWFkX3JlZ2lzdGVyKGZwKSIK KyMgUEMgdmFsdWUgb2J0YWluZWQgdmlhIHJlYWRfcmVnaXN0ZXIgaXMgYXMg ZXhwZWN0ZWQuCitnZGJfdGVzdCAicHl0aG9uIHByaW50ICgncmVzdWx0ID0g JXMnICUgKGYwLnJlYWRfcmVnaXN0ZXIoJ3BjJykuY2FzdChnZGIubG9va3Vw X3R5cGUoJ3Vuc2lnbmVkIGxvbmcnKSkgPT0gZjAucGMoKSkpIiBcCisgICJU cnVlIiBcCisgICJ0ZXN0IEZyYW1lLnJlYWRfcmVnaXN0ZXIocGMpIgorIyBP biB4ODYtNjQsIFBDIGlzIHJlZ2lzdGVyIDE2LgorZ2RiX3Rlc3QgInB5dGhv biBwcmludCAoJ3Jlc3VsdCA9ICVzJyAlICgoZjAuYXJjaGl0ZWN0dXJlKCku bmFtZSgpICE9ICdpMzg2Ong4Ni02NCcpIG9yIGYwLnJlYWRfcmVnaXN0ZXIo J3BjJykgPT0gZjAucmVhZF9yZWdpc3RlcigxNikpKSIgXAorICAiVHJ1ZSIg XAorICAidGVzdCBGcmFtZS5yZWFkX3JlZ2lzdGVyKHJlZ251bSkiCg== --047d7bd75f24ff71d504fb6db896--