From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19141 invoked by alias); 13 Jan 2010 09:19:31 -0000 Received: (qmail 19057 invoked by uid 22791); 13 Jan 2010 09:19:28 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-px0-f175.google.com (HELO mail-px0-f175.google.com) (209.85.216.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 13 Jan 2010 09:19:21 +0000 Received: by pxi5 with SMTP id 5so17426179pxi.12 for ; Wed, 13 Jan 2010 01:19:20 -0800 (PST) MIME-Version: 1.0 Received: by 10.142.119.7 with SMTP id r7mr6623229wfc.261.1263374360105; Wed, 13 Jan 2010 01:19:20 -0800 (PST) From: Hui Zhu Date: Wed, 13 Jan 2010 09:19:00 -0000 Message-ID: Subject: [RFA] Add cmd "set bfd" to make gdb handle bfd_error_file_ambiguously_recognized better To: gdb-patches ml , binutils@sourceware.org Cc: Jan Kratochvil , Daniel Jacobowitz Content-Type: multipart/mixed; boundary=001636e0b6b7f3d3fa047d084351 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: 2010-01/txt/msg00327.txt.bz2 --001636e0b6b7f3d3fa047d084351 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 1149 Hello guys, As I said in http://sourceware.org/ml/gdb/2010-01/msg00122.html I make patches for them. setbfd.txt is for gdb, it add a new cmd "set bfd". It can set the default executable format when more than one executable format support for the object file. And when user load file get bfd_error_file_ambiguously_recognized, gdb will output: "/ls":Matching formats: elf32-nbigmips elf32-ntradbigmips Use command "set bfd" handle it. And I to let gdb set bfd_associated_vector, I make a patch bfd.txt. Please help me review it. Thanks, Hui 2010-01-13 Hui Zhu * arch-utils.c (libbfd.h): New include. (bfds): New variable. (set_bfd_string): New variable. (show_bfd): New function. (set_bfd): New function. (_initialize_gdbarch_utils): Add new command "set bfd". * exec.c (exec_file_attach): Output special works when bfd_get_error is bfd_error_file_ambiguously_recognized. 2010-01-13 Hui Zhu * libbfd-in.h (bfd_associated_vector): Remove second const. * libbfd.h (bfd_associated_vector): Ditto. * targets.c (bfd_associated_vector): Ditto. (_bfd_associated_vector): Add DEFAULT_VECTOR. --001636e0b6b7f3d3fa047d084351 Content-Type: text/plain; charset=US-ASCII; name="bfd.txt" Content-Disposition: attachment; filename="bfd.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g4dwlsc40 Content-length: 2282 LS0tCiBsaWJiZmQtaW4uaCB8ICAgIDIgKy0KIGxpYmJmZC5oICAgIHwgICAg MiArLQogdGFyZ2V0cy5jICAgfCAgICA3ICsrKysrLS0KIDMgZmlsZXMgY2hh bmdlZCwgNyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKLS0tIGEv bGliYmZkLWluLmgKKysrIGIvbGliYmZkLWluLmgKQEAgLTY4Niw3ICs2ODYs NyBAQCBleHRlcm4gY29uc3QgYmZkX3RhcmdldCAqIGNvbnN0ICpiZmRfdGFy CiBleHRlcm4gY29uc3QgYmZkX3RhcmdldCAqYmZkX2RlZmF1bHRfdmVjdG9y W107CiAKIC8qIExpc3Qgb2YgYXNzb2NpYXRlZCB0YXJnZXQgdmVjdG9ycy4g ICovCi1leHRlcm4gY29uc3QgYmZkX3RhcmdldCAqIGNvbnN0ICpiZmRfYXNz b2NpYXRlZF92ZWN0b3I7CitleHRlcm4gY29uc3QgYmZkX3RhcmdldCAqKmJm ZF9hc3NvY2lhdGVkX3ZlY3RvcjsKIAogLyogRnVuY3Rpb25zIHNoYXJlZCBi eSB0aGUgRUNPRkYgYW5kIE1JUFMgRUxGIGJhY2tlbmRzLCB3aGljaCBoYXZl IG5vCiAgICBvdGhlciBjb21tb24gaGVhZGVyIGZpbGVzLiAgKi8KLS0tIGEv bGliYmZkLmgKKysrIGIvbGliYmZkLmgKQEAgLTY5MSw3ICs2OTEsNyBAQCBl eHRlcm4gY29uc3QgYmZkX3RhcmdldCAqIGNvbnN0ICpiZmRfdGFyCiBleHRl cm4gY29uc3QgYmZkX3RhcmdldCAqYmZkX2RlZmF1bHRfdmVjdG9yW107CiAK IC8qIExpc3Qgb2YgYXNzb2NpYXRlZCB0YXJnZXQgdmVjdG9ycy4gICovCi1l eHRlcm4gY29uc3QgYmZkX3RhcmdldCAqIGNvbnN0ICpiZmRfYXNzb2NpYXRl ZF92ZWN0b3I7CitleHRlcm4gY29uc3QgYmZkX3RhcmdldCAqKmJmZF9hc3Nv Y2lhdGVkX3ZlY3RvcjsKIAogLyogRnVuY3Rpb25zIHNoYXJlZCBieSB0aGUg RUNPRkYgYW5kIE1JUFMgRUxGIGJhY2tlbmRzLCB3aGljaCBoYXZlIG5vCiAg ICBvdGhlciBjb21tb24gaGVhZGVyIGZpbGVzLiAgKi8KLS0tIGEvdGFyZ2V0 cy5jCisrKyBiL3RhcmdldHMuYwpAQCAtMTI4NywxMyArMTI4NywxNiBAQCBj b25zdCBiZmRfdGFyZ2V0ICpiZmRfZGVmYXVsdF92ZWN0b3JbXSA9CiAvKiBi ZmRfYXNzb2NpYXRlZF92ZWN0b3JbXSBjb250YWlucyB0aGUgYXNzb2NpYXRl ZCB0YXJnZXQgdmVjdG9ycyB1c2VkCiAgICB0byByZWR1Y2UgdGhlIGFtYmln dWl0eSBpbiBiZmRfY2hlY2tfZm9ybWF0X21hdGNoZXMuICAqLwogCi1zdGF0 aWMgY29uc3QgYmZkX3RhcmdldCAqX2JmZF9hc3NvY2lhdGVkX3ZlY3Rvcltd ID0geworc3RhdGljIGJmZF90YXJnZXQgY29uc3QgKl9iZmRfYXNzb2NpYXRl ZF92ZWN0b3JbXSA9IHsKKyNpZmRlZiBERUZBVUxUX1ZFQ1RPUgorCSZERUZB VUxUX1ZFQ1RPUiwKKyNlbmRpZgogI2lmZGVmIEFTU09DSUFURURfVkVDUwog CUFTU09DSUFURURfVkVDUywKICNlbmRpZgogCU5VTEwKIH07Ci1jb25zdCBi ZmRfdGFyZ2V0ICogY29uc3QgKmJmZF9hc3NvY2lhdGVkX3ZlY3RvciA9IF9i ZmRfYXNzb2NpYXRlZF92ZWN0b3I7Citjb25zdCBiZmRfdGFyZ2V0ICoqYmZk X2Fzc29jaWF0ZWRfdmVjdG9yID0gX2JmZF9hc3NvY2lhdGVkX3ZlY3RvcjsK IAogLyogV2hlbiB0aGVyZSBpcyBhbiBhbWJpZ3VvdXMgbWF0Y2gsIGJmZF9j aGVja19mb3JtYXRfbWF0Y2hlcyBwdXRzIHRoZQogICAgbmFtZXMgb2YgdGhl IG1hdGNoaW5nIHRhcmdldHMgaW4gYW4gYXJyYXkuICBUaGlzIHZhcmlhYmxl IGlzIHRoZSBtYXhpbXVtCg== --001636e0b6b7f3d3fa047d084351 Content-Type: text/plain; charset=US-ASCII; name="setbfd.txt" Content-Disposition: attachment; filename="setbfd.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g4dwlt8d1 Content-length: 5031 LS0tCiBhcmNoLXV0aWxzLmMgfCAgIDU2ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBleGVjLmMg ICAgICAgfCAgIDIxICsrKysrKysrKysrKysrKysrKy0tLQogMiBmaWxlcyBj aGFuZ2VkLCA3NCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKLS0t IGEvYXJjaC11dGlscy5jCisrKyBiL2FyY2gtdXRpbHMuYwpAQCAtMzIsNiAr MzIsNyBAQAogI2luY2x1ZGUgIm9zYWJpLmgiCiAjaW5jbHVkZSAidGFyZ2V0 LWRlc2NyaXB0aW9ucy5oIgogI2luY2x1ZGUgIm9iamZpbGVzLmgiCisjaW5j bHVkZSAibGliYmZkLmgiCiAKICNpbmNsdWRlICJ2ZXJzaW9uLmgiCiAKQEAg LTc3Niw2ICs3NzcsMzYgQEAgZGVmYXVsdF9mYXN0X3RyYWNlcG9pbnRfdmFs aWRfYXQgKHN0cnVjdAogICByZXR1cm4gMTsKIH0KIAorLyogRm9yIGNtZCAi c2V0IGJmZCIuICAqLworCitzdGF0aWMgY29uc3QgY2hhciAqKmJmZHM7CisK K3N0YXRpYyBjb25zdCBjaGFyICpzZXRfYmZkX3N0cmluZzsKKworc3RhdGlj IHZvaWQKK3Nob3dfYmZkIChzdHJ1Y3QgdWlfZmlsZSAqZmlsZSwgaW50IGZy b21fdHR5LAorICAgICAgICAgIHN0cnVjdCBjbWRfbGlzdF9lbGVtZW50ICpj LCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKyAgZnByaW50Zl9maWx0ZXJlZCAo ZmlsZSwgXygiXAorVGhlIGRlZmF1bHQgZXhlY3V0YWJsZSBmb3JtYXQgaXMg JXNcbiIpLCBzZXRfYmZkX3N0cmluZyk7Cit9CisKK3N0YXRpYyB2b2lkCitz ZXRfYmZkIChjaGFyICppZ25vcmVfYXJncywgaW50IGZyb21fdHR5LCBzdHJ1 Y3QgY21kX2xpc3RfZWxlbWVudCAqYykKK3sKKyAgaW50IG5yOworCisgIGZv ciAobnIgPSAwOyBiZmRfdGFyZ2V0X3ZlY3Rvcltucl07IG5yKyspCisgICAg eworICAgICAgaWYgKGJmZF90YXJnZXRfdmVjdG9yW25yXS0+bmFtZSA9PSBz ZXRfYmZkX3N0cmluZykKKyAgICAgICAgeworICAgICAgICAgIGJmZF9hc3Nv Y2lhdGVkX3ZlY3RvclswXSA9IGJmZF90YXJnZXRfdmVjdG9yW25yXTsKKyAg ICAgICAgICBzaG93X2JmZCAoZ2RiX3N0ZG91dCwgZnJvbV90dHksIE5VTEws IE5VTEwpOworICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0K K30KKwogLyogKi8KIAogZXh0ZXJuIGluaXRpYWxpemVfZmlsZV9mdHlwZSBf aW5pdGlhbGl6ZV9nZGJhcmNoX3V0aWxzOyAvKiAtV21pc3NpbmctcHJvdG90 eXBlcyAqLwpAQCAtNzkwLDQgKzgyMSwyOSBAQCBTZXQgZW5kaWFubmVzcyBv ZiB0YXJnZXQuIiksIF8oIlwKIFNob3cgZW5kaWFubmVzcyBvZiB0YXJnZXQu IiksIE5VTEwsCiAJCQlzZXRfZW5kaWFuLCBzaG93X2VuZGlhbiwKIAkJCSZz ZXRsaXN0LCAmc2hvd2xpc3QpOworCisgIC8qIEFkZCBjbWQgInNldCBiZmQi LiAgKi8KKyAgaWYgKGJmZF9hc3NvY2lhdGVkX3ZlY3RvclswXSkKKyAgICB7 CisgICAgICBpbnQgbnI7CisKKyAgICAgIC8qIEluaXRpYWxpemUgYmZkcy4g ICovCisgICAgICBmb3IgKG5yID0gMDsgYmZkX3RhcmdldF92ZWN0b3JbbnJd OyBucisrKTsKKyAgICAgIGJmZHMgPSB4Y2FsbG9jIChzaXplb2YgKGNoYXIg KiksIG5yICsgMSk7CisgICAgICBmb3IgKG5yID0gMDsgYmZkX3RhcmdldF92 ZWN0b3JbbnJdOyBucisrKQorICAgICAgICBiZmRzW25yXSA9IGJmZF90YXJn ZXRfdmVjdG9yW25yXS0+bmFtZTsKKyAgICAgIGJmZHNbbnIgKyAxXSA9IE5V TEw7CisKKyAgICAgIC8qIEluaXRpYWxpemUgc2V0X2JmZF9zdHJpbmcuICov CisgICAgICBzZXRfYmZkX3N0cmluZyA9IGJmZF9hc3NvY2lhdGVkX3ZlY3Rv clswXS0+bmFtZTsKKworICAgICAgYWRkX3NldHNob3dfZW51bV9jbWQgKCJi ZmQiLCBjbGFzc19zdXBwb3J0LAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGJmZHMsICZzZXRfYmZkX3N0cmluZywgXygiXAorU2V0IHRoZSBkZWZh dWx0IGV4ZWN1dGFibGUgZm9ybWF0IHdoZW4gbW9yZSB0aGFuIFxuXAorb25l IGV4ZWN1dGFibGUgZm9ybWF0IHN1cHBvcnQgZm9yIHRoZSBvYmplY3QgZmls ZS4iKSwgXygiXAorU2hvdyB0aGUgZGVmYXVsdCBleGVjdXRhYmxlIGZvcm1h dCB3aGVuIG1vcmUgdGhhbiBcblwKK29uZSBleGVjdXRhYmxlIGZvcm1hdCBz dXBwb3J0IGZvciB0aGUgb2JqZWN0IGZpbGUuIiksIE5VTEwsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2V0X2JmZCwgc2hvd19iZmQsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJnNldGxpc3QsICZzaG93bGlzdCk7 CisgICAgfQogfQotLS0gYS9leGVjLmMKKysrIGIvZXhlYy5jCkBAIC0yMDcs NiArMjA3LDggQEAgZXhlY19maWxlX2NsZWFyIChpbnQgZnJvbV90dHkpCiB2 b2lkCiBleGVjX2ZpbGVfYXR0YWNoIChjaGFyICpmaWxlbmFtZSwgaW50IGZy b21fdHR5KQogeworICBjaGFyICoqbWF0Y2hpbmc7CisKICAgLyogUmVtb3Zl IGFueSBwcmV2aW91cyBleGVjIGZpbGUuICAqLwogICBleGVjX2Nsb3NlICgp OwogCkBAIC0yNTksMTMgKzI2MSwyNiBAQCBleGVjX2ZpbGVfYXR0YWNoIChj aGFyICpmaWxlbmFtZSwgaW50IGZyCiAgICAgICBzY3JhdGNoX3BhdGhuYW1l ID0geHN0cmR1cCAoc2NyYXRjaF9wYXRobmFtZSk7CiAgICAgICBjbGVhbnVw cyA9IG1ha2VfY2xlYW51cCAoeGZyZWUsIHNjcmF0Y2hfcGF0aG5hbWUpOwog Ci0gICAgICBpZiAoIWJmZF9jaGVja19mb3JtYXQgKGV4ZWNfYmZkLCBiZmRf b2JqZWN0KSkKKyAgICAgIGlmICghYmZkX2NoZWNrX2Zvcm1hdF9tYXRjaGVz IChleGVjX2JmZCwgYmZkX29iamVjdCwgJm1hdGNoaW5nKSkKIAl7CiAJICAv KiBNYWtlIHN1cmUgdG8gY2xvc2UgZXhlY19iZmQsIG9yIGVsc2UgInJ1biIg bWlnaHQgdHJ5IHRvIHVzZQogCSAgICAgaXQuICAqLwogCSAgZXhlY19jbG9z ZSAoKTsKLQkgIGVycm9yIChfKCJcIiVzXCI6IG5vdCBpbiBleGVjdXRhYmxl IGZvcm1hdDogJXMiKSwKLQkJIHNjcmF0Y2hfcGF0aG5hbWUsIGJmZF9lcnJt c2cgKGJmZF9nZXRfZXJyb3IgKCkpKTsKKworICAgICAgICAgIGlmIChiZmRf Z2V0X2Vycm9yICgpID09IGJmZF9lcnJvcl9maWxlX2FtYmlndW91c2x5X3Jl Y29nbml6ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgIGNoYXIg KipwID0gbWF0Y2hpbmc7CisgICAgICAgICAgICAgIGZwcmludGZfZmlsdGVy ZWQgKGdkYl9zdGRlcnIsIF8oIlwiJXNcIjpNYXRjaGluZyBmb3JtYXRzOiIp LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JhdGNoX3Bh dGhuYW1lKTsKKyAgICAgICAgICAgICAgd2hpbGUgKCpwKQorICAgICAgICAg ICAgICAgIGZwcmludGZfZmlsdGVyZWQgKGdkYl9zdGRlcnIsICIgJXMiLCAq cCsrKTsKKyAgICAgICAgICAgICAgZnByaW50Zl9maWx0ZXJlZCAoZ2RiX3N0 ZGVyciwgIlxuIik7CisgICAgICAgICAgICAgIGZyZWUgKG1hdGNoaW5nKTsK KyAgICAgICAgICAgICAgZXJyb3IgKF8oIlVzZSBjb21tYW5kIFwic2V0IGJm ZFwiIGhhbmRsZSBpdC4iKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAg ZWxzZQorCSAgICBlcnJvciAoXygiXCIlc1wiOiBub3QgaW4gZXhlY3V0YWJs ZSBmb3JtYXQ6ICVzIiksCisJCSAgIHNjcmF0Y2hfcGF0aG5hbWUsIGJmZF9l cnJtc2cgKGJmZF9nZXRfZXJyb3IgKCkpKTsKIAl9CiAKICAgICAgIC8qIEZJ WE1FIC0gVGhpcyBzaG91bGQgb25seSBiZSBydW4gZm9yIFJTNjAwMCwgYnV0 IHRoZSBpZmRlZiBpcyBhIHBvb3IK --001636e0b6b7f3d3fa047d084351--