From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29272 invoked by alias); 4 Oct 2008 06:34:05 -0000 Received: (qmail 29254 invoked by uid 22791); 4 Oct 2008 06:34:02 -0000 X-Spam-Check-By: sourceware.org Received: from ti-out-0910.google.com (HELO ti-out-0910.google.com) (209.85.142.184) by sourceware.org (qpsmtpd/0.31) with ESMTP; Sat, 04 Oct 2008 06:33:27 +0000 Received: by ti-out-0910.google.com with SMTP id d10so1154036tib.12 for ; Fri, 03 Oct 2008 23:33:23 -0700 (PDT) Received: by 10.110.109.12 with SMTP id h12mr2029045tic.52.1223102003486; Fri, 03 Oct 2008 23:33:23 -0700 (PDT) Received: by 10.110.42.9 with HTTP; Fri, 3 Oct 2008 23:33:23 -0700 (PDT) Message-ID: Date: Sat, 04 Oct 2008 06:34:00 -0000 From: teawater To: "gdb-patches@sourceware.org" , "Michael Snyder" Subject: [reverse RFA] Change from "to_prepare_to_store" to "to_store_registers" MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_29798_4292884.1223102003488" X-IsSubscribed: yes 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: 2008-10/txt/msg00100.txt.bz2 ------=_Part_29798_4292884.1223102003488 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Content-length: 1157 Hi, To_prepare_to_store can make process record control the register change operation before set the value of regcache in function "regcache_raw_write". But it can't get the regnum. So I change it to "to_store_registers". It can get the regnum. And if record want cancel the operation the operation. It can invalidate the value with itself. 2008-10-04 Hui Zhu Change from "to_prepare_to_store" to "to_store_registers". * record.c (record_beneath_to_prepare_to_store): Removed. (record_beneath_to_store_registers): New function pointer. Instead "record_beneath_to_prepare_to_store". Will point to the low strata target "to_store_registers" function. (record_prepare_to_store): Removed. (record_store_registers): New function. Instead "record_prepare_to_store". Record the change of registers from GDB. (init_record_ops): Change record_prepare_to_store to record_store_registers. * record.h (record_beneath_to_prepare_to_store): Removed. (record_beneath_to_store_registers): New extern. * target.c (update_current_target): Change record_beneath_to_prepare_to_store to record_beneath_to_store_registers. Thanks, Hui ------=_Part_29798_4292884.1223102003488 Content-Type: text/x-diff; name=change_prepare_to_store_to_to_store_registers.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_flvvcgdn0 Content-Disposition: attachment; filename=change_prepare_to_store_to_to_store_registers.patch Content-length: 8028 LS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIz IEBACisyMDA4LTEwLTA0ICBIdWkgWmh1ICA8dGVhd2F0ZXJAZ21haWwuY29t PgorCisJQ2hhbmdlIGZyb20gInRvX3ByZXBhcmVfdG9fc3RvcmUiIHRvICJ0 b19zdG9yZV9yZWdpc3RlcnMiLgorCisJKiByZWNvcmQuYyAocmVjb3JkX2Jl bmVhdGhfdG9fcHJlcGFyZV90b19zdG9yZSk6IFJlbW92ZWQuCisJKHJlY29y ZF9iZW5lYXRoX3RvX3N0b3JlX3JlZ2lzdGVycyk6IE5ldyBmdW5jdGlvbiBw b2ludGVyLgorCUluc3RlYWQgInJlY29yZF9iZW5lYXRoX3RvX3ByZXBhcmVf dG9fc3RvcmUiLiBXaWxsIHBvaW50CisJdG8gdGhlIGxvdyBzdHJhdGEgdGFy Z2V0ICJ0b19zdG9yZV9yZWdpc3RlcnMiIGZ1bmN0aW9uLgorCShyZWNvcmRf cHJlcGFyZV90b19zdG9yZSk6IFJlbW92ZWQuCisJKHJlY29yZF9zdG9yZV9y ZWdpc3RlcnMpOiBOZXcgZnVuY3Rpb24uCisJSW5zdGVhZCAicmVjb3JkX3By ZXBhcmVfdG9fc3RvcmUiLiBSZWNvcmQgdGhlIGNoYW5nZSBvZgorCXJlZ2lz dGVycyBmcm9tIEdEQi4KKwkoaW5pdF9yZWNvcmRfb3BzKTogQ2hhbmdlIHJl Y29yZF9wcmVwYXJlX3RvX3N0b3JlIHRvCisJcmVjb3JkX3N0b3JlX3JlZ2lz dGVycy4KKwkqIHJlY29yZC5oIChyZWNvcmRfYmVuZWF0aF90b19wcmVwYXJl X3RvX3N0b3JlKTogUmVtb3ZlZC4KKwkocmVjb3JkX2JlbmVhdGhfdG9fc3Rv cmVfcmVnaXN0ZXJzKTogTmV3IGV4dGVybi4KKwkqIHRhcmdldC5jICh1cGRh dGVfY3VycmVudF90YXJnZXQpOiBDaGFuZ2UKKwlyZWNvcmRfYmVuZWF0aF90 b19wcmVwYXJlX3RvX3N0b3JlIHRvCisJcmVjb3JkX2JlbmVhdGhfdG9fc3Rv cmVfcmVnaXN0ZXJzLgorCiAyMDA4LTEwLTAyICBNaWNoYWVsIFNueWRlciAg PG1zbnlkZXJAdm13YXJlLmNvbT4KIAogCSogcmV2ZXJzZS5jIChyZXZlcnNl LWNvbnRpbnVlKTogUmVtb3ZlIGEgY29tbWEgZnJvbSBkb2NzIHN0cmluZywK LS0tIGEvcmVjb3JkLmMKKysrIGIvcmVjb3JkLmMKQEAgLTU2LDcgKzU2LDcg QEAgZXh0ZXJuIHN0cnVjdCBicF9sb2NhdGlvbiAqYnBfbG9jYXRpb25fYwog LyogVGhlIHJlYWwgYmVuZWF0aCBmdW5jdGlvbiBwb2ludGVycy4gICovCiB2 b2lkICgqcmVjb3JkX2JlbmVhdGhfdG9fcmVzdW1lKSAocHRpZF90LCBpbnQs IGVudW0gdGFyZ2V0X3NpZ25hbCk7CiBwdGlkX3QgKCpyZWNvcmRfYmVuZWF0 aF90b193YWl0KSAocHRpZF90LCBzdHJ1Y3QgdGFyZ2V0X3dhaXRzdGF0dXMg Kik7Ci12b2lkICgqcmVjb3JkX2JlbmVhdGhfdG9fcHJlcGFyZV90b19zdG9y ZSkgKHN0cnVjdCByZWdjYWNoZSAqKTsKK3ZvaWQgKCpyZWNvcmRfYmVuZWF0 aF90b19zdG9yZV9yZWdpc3RlcnMpIChzdHJ1Y3QgcmVnY2FjaGUgKiwgaW50 IHJlZ25vKTsKIExPTkdFU1QgKCpyZWNvcmRfYmVuZWF0aF90b194ZmVyX3Bh cnRpYWwpIChzdHJ1Y3QgdGFyZ2V0X29wcyAqIG9wcywKIAkJCQkJICAgZW51 bSB0YXJnZXRfb2JqZWN0IG9iamVjdCwKIAkJCQkJICAgY29uc3QgY2hhciAq YW5uZXgsCkBAIC04MDUsMjMgKzgwNSw1MSBAQCByZWNvcmRfcmVnaXN0ZXJz X2NoYW5nZSAoc3RydWN0IHJlZ2NhY2hlCiAgICAgfQogfQogCi0vKiBYWFg6 IEkgZG9uJ3Qga25vdyBob3cgdG8gZG8gaWYgR0RCIGNhbGwgZnVuY3Rpb24g dGFyZ2V0X3N0b3JlX3JlZ2lzdGVycwotICAgd2l0aG91dCBjYWxsIGZ1bmN0 aW9uIHRhcmdldF9wcmVwYXJlX3RvX3N0b3JlLiAgKi8KLQogc3RhdGljIHZv aWQKLXJlY29yZF9wcmVwYXJlX3RvX3N0b3JlIChzdHJ1Y3QgcmVnY2FjaGUg KnJlZ2NhY2hlKQorcmVjb3JkX3N0b3JlX3JlZ2lzdGVycyAoc3RydWN0IHJl Z2NhY2hlICpyZWdjYWNoZSwgaW50IHJlZ25vKQogewogICBpZiAoIXJlY29y ZF9ub3RfcmVjb3JkKQogICAgIHsKICAgICAgIGlmIChSRUNPUkRfSVNfUkVQ TEFZKQogCXsKKwkgIGludCBuOwogCSAgc3RydWN0IGNsZWFudXAgKm9sZF9j bGVhbnVwczsKKwogCSAgLyogTGV0IHVzZXIgY2hvaWNlIGlmIGhlIHdhbnQg dG8gd3JpdGUgcmVnaXN0ZXIgb3Igbm90LiAgKi8KLQkgIGlmICghbnF1ZXJ5 IChfKCJCZWN1c2UgR0RCIGlzIGluIHJlcGxheSBtb2RlLCBjaGFuZ2luZyB0 aGUgdmFsdWUgb2YgYSByZWdpc3RlciB3aWxsIGRlc3Ryb3kgdGhlIHJlY29y ZCBmcm9tIHRoaXMgcG9pbnQgZm9yd2FyZC4gIENoYW5nZSByZWdpc3RlciAl cz8iKSwKLQkJICAgICAgIGdkYmFyY2hfcmVnaXN0ZXJfbmFtZSAoZ2V0X3Jl Z2NhY2hlX2FyY2gKLQkJCQkJICAgICAgKHJlZ2NhY2hlKSwKLQkJCQkJICAg ICAgcmVjb3JkX3JlZ2NhY2hlX3Jhd193cml0ZV9yZWdudW0pKSkKKwkgIGlm IChyZWdubyA8IDApCisJICAgIHsKKwkgICAgICBuID0KKwkJbnF1ZXJ5IChf CisJCQkoIkJlY3VzZSBHREIgaXMgaW4gcmVwbGF5IG1vZGUsIGNoYW5naW5n IHRoZSB2YWx1ZSBvZiBhIHJlZ2lzdGVyIHdpbGwgZGVzdHJveSB0aGUgcmVj b3JkIGZyb20gdGhpcyBwb2ludCBmb3J3YXJkLiBDaGFuZ2UgYWxsIHJlZ2lz dGVyPyIpKTsKKwkgICAgfQorCSAgZWxzZQorCSAgICB7CisJICAgICAgbiA9 CisJCW5xdWVyeSAoXworCQkJKCJCZWN1c2UgR0RCIGlzIGluIHJlcGxheSBt b2RlLCBjaGFuZ2luZyB0aGUgdmFsdWUgb2YgYSByZWdpc3RlciB3aWxsIGRl c3Ryb3kgdGhlIHJlY29yZCBmcm9tIHRoaXMgcG9pbnQgZm9yd2FyZC4gQ2hh bmdlIHJlZ2lzdGVyICVzPyIpLAorCQkJZ2RiYXJjaF9yZWdpc3Rlcl9uYW1l IChnZXRfcmVnY2FjaGVfYXJjaCAocmVnY2FjaGUpLAorCQkJCQkgICAgICAg cmVnbm8pKTsKKwkgICAgfQorCisJICBpZiAoIW4pCiAJICAgIHsKKwkgICAg ICAvKiBJbnZhbGlkYXRlIHRoZSB2YWx1ZSBvZiByZWdjYWNoZSB0aGF0IHNl dCBpbiBmdW5jdGlvbgorCSAgICAgICAgICJyZWdjYWNoZV9yYXdfd3JpdGUi LiAqLworCSAgICAgIGlmIChyZWdubyA8IDApCisJCXsKKwkJICBpbnQgaTsK KwkJICBmb3IgKGkgPSAwOworCQkgICAgICAgaSA8IGdkYmFyY2hfbnVtX3Jl Z3MgKGdldF9yZWdjYWNoZV9hcmNoIChyZWdjYWNoZSkpOworCQkgICAgICAg aSsrKQorCQkgICAgeworCQkgICAgICByZWdjYWNoZV9pbnZhbGlkYXRlIChy ZWdjYWNoZSwgaSk7CisJCSAgICB9CisJCX0KKwkgICAgICBlbHNlCisJCXsK KwkJICByZWdjYWNoZV9pbnZhbGlkYXRlIChyZWdjYWNoZSwgcmVnbm8pOwor CQl9CisKIAkgICAgICBlcnJvciAoXygiUmVjb3JkOiByZWNvcmQgY2FuY2Vs IHRoZSBvcGVyYXRpb24uIikpOwogCSAgICB9CiAKQEAgLTgyOSw5ICs4NTcs OSBAQCByZWNvcmRfcHJlcGFyZV90b19zdG9yZSAoc3RydWN0IHJlZ2NhY2hl CiAJICByZWNvcmRfbGlzdF9yZWxlYXNlX25leHQgKCk7CiAJfQogCi0gICAg ICByZWNvcmRfcmVnaXN0ZXJzX2NoYW5nZSAocmVnY2FjaGUsIHJlY29yZF9y ZWdjYWNoZV9yYXdfd3JpdGVfcmVnbnVtKTsKKyAgICAgIHJlY29yZF9yZWdp c3RlcnNfY2hhbmdlIChyZWdjYWNoZSwgcmVnbm8pOwogICAgIH0KLSAgcmVj b3JkX2JlbmVhdGhfdG9fcHJlcGFyZV90b19zdG9yZSAocmVnY2FjaGUpOwor ICByZWNvcmRfYmVuZWF0aF90b19zdG9yZV9yZWdpc3RlcnMgKHJlZ2NhY2hl LCByZWdubyk7CiB9CiAKIC8qIHJlY29yZF94ZmVyX3BhcnRpYWwgLS0gYmVo YXZpb3IgaXMgY29uZGl0aW9uYWwgb24gUkVDT1JEX0lTX1JFUExBWS4KQEAg LTk2NCw3ICs5OTIsNyBAQCBpbml0X3JlY29yZF9vcHMgKHZvaWQpCiAgIHJl Y29yZF9vcHMudG9fbW91cm5faW5mZXJpb3IgPSByZWNvcmRfbW91cm5faW5m ZXJpb3I7CiAgIHJlY29yZF9vcHMudG9fa2lsbCA9IHJlY29yZF9raWxsOwog ICByZWNvcmRfb3BzLnRvX2NyZWF0ZV9pbmZlcmlvciA9IGZpbmRfZGVmYXVs dF9jcmVhdGVfaW5mZXJpb3I7CS8qIE1ha2UgcmVjb3JkIHN1cHBwb3J0IGNv bW1hbmQgInJ1biIuICAqLwotICByZWNvcmRfb3BzLnRvX3ByZXBhcmVfdG9f c3RvcmUgPSByZWNvcmRfcHJlcGFyZV90b19zdG9yZTsKKyAgcmVjb3JkX29w cy50b19zdG9yZV9yZWdpc3RlcnMgPSByZWNvcmRfc3RvcmVfcmVnaXN0ZXJz OwogICByZWNvcmRfb3BzLnRvX3hmZXJfcGFydGlhbCA9IHJlY29yZF94ZmVy X3BhcnRpYWw7CiAgIHJlY29yZF9vcHMudG9faW5zZXJ0X2JyZWFrcG9pbnQg PSByZWNvcmRfaW5zZXJ0X2JyZWFrcG9pbnQ7CiAgIHJlY29yZF9vcHMudG9f cmVtb3ZlX2JyZWFrcG9pbnQgPSByZWNvcmRfcmVtb3ZlX2JyZWFrcG9pbnQ7 Ci0tLSBhL3JlY29yZC5oCisrKyBiL3JlY29yZC5oCkBAIC03NSw3ICs3NSw2 IEBAIGV4dGVybiBzdHJ1Y3QgcmVnY2FjaGUgKnJlY29yZF9yZWdjYWNoZTsK IAogZXh0ZXJuIHN0cnVjdCB0YXJnZXRfb3BzIHJlY29yZF9vcHM7CiBleHRl cm4gaW50IHJlY29yZF9yZXN1bWVfc3RlcDsKLWV4dGVybiBpbnQgcmVjb3Jk X3JlZ2NhY2hlX3Jhd193cml0ZV9yZWdudW07CiBleHRlcm4gZW51bSBleGVj X2RpcmVjdGlvbl9raW5kIHJlY29yZF9leGVjZGlyOwogCiBleHRlcm4gaW50 IHJlY29yZF9hcmNoX2xpc3RfYWRkX3JlZyAoaW50IG51bSk7CkBAIC04Niw3 ICs4NSw3IEBAIGV4dGVybiB2b2lkIHJlY29yZF9ub3RfcmVjb3JkX3NldCAo dm9pZCkKIAogZXh0ZXJuIHZvaWQgKCpyZWNvcmRfYmVuZWF0aF90b19yZXN1 bWUpIChwdGlkX3QsIGludCwgZW51bSB0YXJnZXRfc2lnbmFsKTsKIGV4dGVy biBwdGlkX3QgKCpyZWNvcmRfYmVuZWF0aF90b193YWl0KSAocHRpZF90LCBz dHJ1Y3QgdGFyZ2V0X3dhaXRzdGF0dXMgKik7Ci1leHRlcm4gdm9pZCAoKnJl Y29yZF9iZW5lYXRoX3RvX3ByZXBhcmVfdG9fc3RvcmUpIChzdHJ1Y3QgcmVn Y2FjaGUgKik7CitleHRlcm4gdm9pZCAoKnJlY29yZF9iZW5lYXRoX3RvX3N0 b3JlX3JlZ2lzdGVycykgKHN0cnVjdCByZWdjYWNoZSAqLCBpbnQgcmVnbm8p OwogZXh0ZXJuIExPTkdFU1QgKCpyZWNvcmRfYmVuZWF0aF90b194ZmVyX3Bh cnRpYWwpIChzdHJ1Y3QgdGFyZ2V0X29wcyAqIG9wcywKIAkJCQkJCSAgZW51 bSB0YXJnZXRfb2JqZWN0IG9iamVjdCwKIAkJCQkJCSAgY29uc3QgY2hhciAq YW5uZXgsCi0tLSBhL3RhcmdldC5jCisrKyBiL3RhcmdldC5jCkBAIC0zODAs NyArMzgwLDcgQEAgdXBkYXRlX2N1cnJlbnRfdGFyZ2V0ICh2b2lkKQogCWN1 cnJlbnRfdGFyZ2V0LkZJRUxEID0gKFRBUkdFVCktPkZJRUxECiAKICAgcmVj b3JkX2JlbmVhdGhfdG9fcmVzdW1lID0gTlVMTDsKLSAgcmVjb3JkX2JlbmVh dGhfdG9fcHJlcGFyZV90b19zdG9yZSA9IE5VTEw7CisgIHJlY29yZF9iZW5l YXRoX3RvX3N0b3JlX3JlZ2lzdGVycyA9IE5VTEw7CiAgIHJlY29yZF9iZW5l YXRoX3RvX3hmZXJfcGFydGlhbCA9IE5VTEw7CiAgIHJlY29yZF9iZW5lYXRo X3RvX2luc2VydF9icmVha3BvaW50ID0gTlVMTDsKICAgcmVjb3JkX2JlbmVh dGhfdG9fcmVtb3ZlX2JyZWFrcG9pbnQgPSBOVUxMOwpAQCAtNDg1LDkgKzQ4 NSw5IEBAIHVwZGF0ZV9jdXJyZW50X3RhcmdldCAodm9pZCkKICAgICAgICAg ICAgICB7CiAgICAgICAgICAgICAgICByZWNvcmRfYmVuZWF0aF90b193YWl0 ID0gdC0+dG9fd2FpdDsKICAgICAgICAgICAgICB9Ci0gICAgICAgICAgIGlm ICghcmVjb3JkX2JlbmVhdGhfdG9fcHJlcGFyZV90b19zdG9yZSkKKyAgICAg ICAgICAgaWYgKCFyZWNvcmRfYmVuZWF0aF90b19zdG9yZV9yZWdpc3RlcnMp CiAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgcmVjb3JkX2JlbmVh dGhfdG9fcHJlcGFyZV90b19zdG9yZSA9IHQtPnRvX3ByZXBhcmVfdG9fc3Rv cmU7CisgICAgICAgICAgICAgICByZWNvcmRfYmVuZWF0aF90b19zdG9yZV9y ZWdpc3RlcnMgPSB0LT50b19zdG9yZV9yZWdpc3RlcnM7CiAgICAgICAgICAg ICAgfQogICAgICAgICAgICBpZiAoIXJlY29yZF9iZW5lYXRoX3RvX3hmZXJf cGFydGlhbCkKICAgICAgICAgICAgICB7Cg== ------=_Part_29798_4292884.1223102003488--