From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4148 invoked by alias); 7 Sep 2012 23:56:55 -0000 Received: (qmail 4136 invoked by uid 22791); 7 Sep 2012 23:56:54 -0000 X-SWARE-Spam-Status: No, hits=-4.8 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-qc0-f169.google.com (HELO mail-qc0-f169.google.com) (209.85.216.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 07 Sep 2012 23:56:40 +0000 Received: by qcsd16 with SMTP id d16so101899qcs.0 for ; Fri, 07 Sep 2012 16:56:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type :x-system-of-record:x-gm-message-state; bh=inGfgAAFn1T5P4lMFXHAMbrZIzvIoCz971unigQVto0=; b=Zhtvmc8movcPzwI86aQVadcjDxkPSOdeHjH5mIFZv7SQEZKXerJHJDxc+50VqEu6Xf qdRYSRduwpHj8qlxtTnU/Bi4L3yfMg8L6wCpivlBNCH7rL4CaWqI2r8IbCF9oPzrkzSM NZZPoQHOsHNGxVKQj4kXtEX8oQiUcWFGMqEYqzjgDpuh2fvTT1K4bPnK7/XG1+Vz7Wy9 2Hw8FoYHhQ854jw/wVX3lvaykAcWyIiuXuUTiw3RyOV1dTXxaKJvr5t7UA5boWEos0kM JR1Q/Jse46mhB79za260H44+Q7UANWcQXjhys4B4eV61RqgKqliUWcDFkIdNr7DXSEei 6yBw== Received: by 10.224.181.70 with SMTP id bx6mr9287677qab.79.1347062199252; Fri, 07 Sep 2012 16:56:39 -0700 (PDT) MIME-Version: 1.0 Received: by 10.224.181.70 with SMTP id bx6mr9287672qab.79.1347062199128; Fri, 07 Sep 2012 16:56:39 -0700 (PDT) Received: by 10.229.30.5 with HTTP; Fri, 7 Sep 2012 16:56:38 -0700 (PDT) Date: Fri, 07 Sep 2012 23:56:00 -0000 Message-ID: Subject: [Gold Patch] Fix Gdb Index Generation from pubnames From: Sterling Augustine To: binutils@sourceware.org Content-Type: multipart/mixed; boundary=485b397dd04fde91e604c9255b2f X-System-Of-Record: true X-Gm-Message-State: ALoCoQmXGQjJJqaIsgkhhpP8cwQC8hmxs47phJz63fPeJB+YXkemarMcfKq2Z9N69Nyyy4+nEJ6jsmhas0IjK2T/1UKYbo4J5sKJFLbBwlpGZ5GgAJfZ9UkwY41uiGGwPg+ZCGx/cfqv8Ow60yuoTv8HbuPVNmwdOhFmWrsPHBa6sAqUAmNl2btgpO48vWlOmWuWV+OXUR7F Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2012-09/txt/msg00092.txt.bz2 --485b397dd04fde91e604c9255b2f Content-Type: text/plain; charset=ISO-8859-1 Content-length: 818 The enclosed patch fixes a subtle problem with gdb_index generation from pubnames. Currently, if the pubnames or pubtypes section of two consecutive input relocatable objects just happen to have the same section index and offset, Gold will silently drop the second set. This results in an incomplete gdb index. The enclosed patch fixes that by extending the "pub[names|types]_read" functions to check if the object has changed as well as the section index and field.d OK for mainline? Sterling 2012-09-07 Sterling Augustine * gdb-index.cc (Gdb_index::pubnames_read): New parameter. (Gdb_index::pubtypes_read): New parameter. (Gdb_index_info_reader::read_pubnames_and_pubtypes): Add parameters to calls. * gdb-index.h (Gdb_index): New fields pubnames_object_ and pubtypes_object_. --485b397dd04fde91e604c9255b2f Content-Type: application/octet-stream; name="gold.object.pubnames.patch" Content-Disposition: attachment; filename="gold.object.pubnames.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h6ty1q3k0 Content-length: 5673 MjAxMi0wOS0wNyAgU3RlcmxpbmcgQXVndXN0aW5lICA8c2F1Z3VzdGluZUBn b29nbGUuY29tPgoKCSogZ2RiLWluZGV4LmNjIChHZGJfaW5kZXg6OnB1Ym5h bWVzX3JlYWQpOiBOZXcgcGFyYW1ldGVyLgoJKEdkYl9pbmRleDo6cHVidHlw ZXNfcmVhZCk6IE5ldyBwYXJhbWV0ZXIuCgkoR2RiX2luZGV4X2luZm9fcmVh ZGVyOjpyZWFkX3B1Ym5hbWVzX2FuZF9wdWJ0eXBlcyk6IEFkZCBwYXJhbWV0 ZXJzCgl0byBjYWxscy4KCSogZ2RiLWluZGV4LmggKEdkYl9pbmRleCk6IE5l dyBmaWVsZHMgcHVibmFtZXNfb2JqZWN0XyBhbmQgCglwdWJ0eXBlc19vYmpl Y3RfLgoKSW5kZXg6IGdkYi1pbmRleC5jYwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ29sZC9nZGItaW5kZXguY2Ms dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNQpkaWZmIC1kIC11IC1yMS41IGdk Yi1pbmRleC5jYwotLS0gZ2RiLWluZGV4LmNjCTEgTWF5IDIwMTIgMTk6MTI6 MjEgLTAwMDAJMS41CisrKyBnZGItaW5kZXguY2MJNyBTZXAgMjAxMiAyMzoy NDo0OSAtMDAwMApAQCAtODY0LDcgKzg2NCw4IEBACiAJCQkJCSAgICAgJnB1 Ym5hbWVzX3NobmR4KTsKICAgaWYgKHB1Ym5hbWVzX29mZnNldCAhPSAtMSkK ICAgICB7Ci0gICAgICBpZiAodGhpcy0+Z2RiX2luZGV4Xy0+cHVibmFtZXNf cmVhZChwdWJuYW1lc19zaG5keCwgcHVibmFtZXNfb2Zmc2V0KSkKKyAgICAg IGlmICh0aGlzLT5nZGJfaW5kZXhfLT5wdWJuYW1lc19yZWFkKHRoaXMtPm9i amVjdCgpLCBwdWJuYW1lc19zaG5keCwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHB1Ym5hbWVzX29mZnNldCkpCiAJcmV0 ID0gdHJ1ZTsKICAgICAgIGVsc2UKIAl7CkBAIC04OTAsNyArODkxLDggQEAK IAkJCQkJICAgICAmcHVidHlwZXNfc2huZHgpOwogICBpZiAocHVidHlwZXNf b2Zmc2V0ICE9IC0xKQogICAgIHsKLSAgICAgIGlmICh0aGlzLT5nZGJfaW5k ZXhfLT5wdWJ0eXBlc19yZWFkKHB1YnR5cGVzX3NobmR4LCBwdWJ0eXBlc19v ZmZzZXQpKQorICAgICAgaWYgKHRoaXMtPmdkYl9pbmRleF8tPnB1YnR5cGVz X3JlYWQodGhpcy0+b2JqZWN0KCksCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBwdWJ0eXBlc19zaG5keCwgcHVidHlwZXNf b2Zmc2V0KSkKIAlyZXQgPSB0cnVlOwogICAgICAgZWxzZQogCXsKQEAgLTk2 MSw4ICs5NjMsMTAgQEAKICAgICBzeW10YWJfb2Zmc2V0XygwKSwKICAgICBj dV9wb29sX29mZnNldF8oMCksCiAgICAgc3RyaW5ncG9vbF9vZmZzZXRfKDAp LAorICAgIHB1Ym5hbWVzX29iamVjdF8oTlVMTCksCiAgICAgcHVibmFtZXNf c2huZHhfKDApLAogICAgIHB1Ym5hbWVzX29mZnNldF8oMCksCisgICAgcHVi dHlwZXNfb2JqZWN0XyhOVUxMKSwKICAgICBwdWJ0eXBlc19zaG5keF8oMCks CiAgICAgcHVidHlwZXNfb2Zmc2V0XygwKQogewpAQCAtMTAzNCwxMCArMTAz OCwxMiBAQAogLy8gT0ZGU0VUIGluIHNlY3Rpb24gU0hORFgKIAogYm9vbAot R2RiX2luZGV4OjpwdWJuYW1lc19yZWFkKHVuc2lnbmVkIGludCBzaG5keCwg b2ZmX3Qgb2Zmc2V0KQorR2RiX2luZGV4OjpwdWJuYW1lc19yZWFkKGNvbnN0 IFJlbG9iaiogb2JqZWN0LCB1bnNpZ25lZCBpbnQgc2huZHgsIG9mZl90IG9m ZnNldCkKIHsKLSAgYm9vbCByZXQgPSAodGhpcy0+cHVibmFtZXNfc2huZHhf ID09IHNobmR4CisgIGJvb2wgcmV0ID0gKHRoaXMtPnB1Ym5hbWVzX29iamVj dF8gPT0gb2JqZWN0CisgICAgICAgICAgICAgICYmIHRoaXMtPnB1Ym5hbWVz X3NobmR4XyA9PSBzaG5keAogCSAgICAgICYmIHRoaXMtPnB1Ym5hbWVzX29m ZnNldF8gPT0gb2Zmc2V0KTsKKyAgdGhpcy0+cHVibmFtZXNfb2JqZWN0XyA9 IG9iamVjdDsKICAgdGhpcy0+cHVibmFtZXNfc2huZHhfID0gc2huZHg7CiAg IHRoaXMtPnB1Ym5hbWVzX29mZnNldF8gPSBvZmZzZXQ7CiAgIHJldHVybiBy ZXQ7CkBAIC0xMDQ3LDEwICsxMDUzLDEyIEBACiAvLyBPRkZTRVQgaW4gc2Vj dGlvbiBTSE5EWAogCiBib29sCi1HZGJfaW5kZXg6OnB1YnR5cGVzX3JlYWQo dW5zaWduZWQgaW50IHNobmR4LCBvZmZfdCBvZmZzZXQpCitHZGJfaW5kZXg6 OnB1YnR5cGVzX3JlYWQoY29uc3QgUmVsb2JqKiBvYmplY3QsIHVuc2lnbmVk IGludCBzaG5keCwgb2ZmX3Qgb2Zmc2V0KQogewotICBib29sIHJldCA9ICh0 aGlzLT5wdWJ0eXBlc19zaG5keF8gPT0gc2huZHgKKyAgYm9vbCByZXQgPSAo dGhpcy0+cHVidHlwZXNfb2JqZWN0XyA9PSBvYmplY3QKKyAgICAgICAgICAg ICAgJiYgdGhpcy0+cHVidHlwZXNfc2huZHhfID09IHNobmR4CiAJICAgICAg JiYgdGhpcy0+cHVidHlwZXNfb2Zmc2V0XyA9PSBvZmZzZXQpOworICB0aGlz LT5wdWJ0eXBlc19vYmplY3RfID0gb2JqZWN0OwogICB0aGlzLT5wdWJ0eXBl c19zaG5keF8gPSBzaG5keDsKICAgdGhpcy0+cHVidHlwZXNfb2Zmc2V0XyA9 IG9mZnNldDsKICAgcmV0dXJuIHJldDsKSW5kZXg6IGdkYi1pbmRleC5oCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9n b2xkL2dkYi1pbmRleC5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlm ZiAtZCAtdSAtcjEuMSBnZGItaW5kZXguaAotLS0gZ2RiLWluZGV4LmgJMjEg TWFyIDIwMTIgMTk6MDI6MjEgLTAwMDAJMS4xCisrKyBnZGItaW5kZXguaAk3 IFNlcCAyMDEyIDIzOjI0OjQ5IC0wMDAwCkBAIC05MSwxNSArOTEsMTUgQEAK ICAgdm9pZAogICBhZGRfc3ltYm9sKGludCBjdV9pbmRleCwgY29uc3QgY2hh ciogc3ltX25hbWUpOwogCi0gIC8vIFJldHVybiBUUlVFIGlmIHdlIGhhdmUg YWxyZWFkeSBwcm9jZXNzZWQgdGhlIHB1Ym5hbWVzIHNldCBhdAotICAvLyBP RkZTRVQgaW4gc2VjdGlvbiBTSE5EWAorICAvLyBSZXR1cm4gVFJVRSBpZiB3 ZSBoYXZlIGFscmVhZHkgcHJvY2Vzc2VkIHRoZSBwdWJuYW1lcyBzZXQgZm9y CisgIC8vIE9CSkVDVCBhdCBPRkZTRVQgaW4gc2VjdGlvbiBTSE5EWAogICBi b29sCi0gIHB1Ym5hbWVzX3JlYWQodW5zaWduZWQgaW50IHNobmR4LCBvZmZf dCBvZmZzZXQpOworICBwdWJuYW1lc19yZWFkKGNvbnN0IFJlbG9iaiogb2Jq ZWN0LCB1bnNpZ25lZCBpbnQgc2huZHgsIG9mZl90IG9mZnNldCk7CiAKLSAg Ly8gUmV0dXJuIFRSVUUgaWYgd2UgaGF2ZSBhbHJlYWR5IHByb2Nlc3NlZCB0 aGUgcHVidHlwZXMgc2V0IGF0Ci0gIC8vIE9GRlNFVCBpbiBzZWN0aW9uIFNI TkRYCisgIC8vIFJldHVybiBUUlVFIGlmIHdlIGhhdmUgYWxyZWFkeSBwcm9j ZXNzZWQgdGhlIHB1YnR5cGVzIHNldCBmb3IKKyAgLy8gT0JKRUNUIGF0IE9G RlNFVCBpbiBzZWN0aW9uIFNITkRYCiAgIGJvb2wKLSAgcHVidHlwZXNfcmVh ZCh1bnNpZ25lZCBpbnQgc2huZHgsIG9mZl90IG9mZnNldCk7CisgIHB1YnR5 cGVzX3JlYWQoY29uc3QgUmVsb2JqKiBvYmplY3QsICB1bnNpZ25lZCBpbnQg c2huZHgsIG9mZl90IG9mZnNldCk7CiAKICAgLy8gUHJpbnQgdXNhZ2Ugc3Rh dGlzdGljcy4KICAgc3RhdGljIHZvaWQKQEAgLTIwMCwxMCArMjAwLDEyIEBA CiAgIG9mZl90IHN5bXRhYl9vZmZzZXRfOwogICBvZmZfdCBjdV9wb29sX29m ZnNldF87CiAgIG9mZl90IHN0cmluZ3Bvb2xfb2Zmc2V0XzsKLSAgLy8gU2Vj dGlvbiBpbmRleCBhbmQgb2Zmc2V0IG9mIGxhc3QgcmVhZCBwdWJuYW1lcyBz ZWN0aW9uLgorICAvLyBPYmplY3QsIHNlY3Rpb24gaW5kZXggYW5kIG9mZnNl dCBvZiBsYXN0IHJlYWQgcHVibmFtZXMgc2VjdGlvbi4KKyAgY29uc3QgUmVs b2JqKiBwdWJuYW1lc19vYmplY3RfOwogICB1bnNpZ25lZCBpbnQgcHVibmFt ZXNfc2huZHhfOwogICBvZmZfdCBwdWJuYW1lc19vZmZzZXRfOwotICAvLyBT ZWN0aW9uIGluZGV4IGFuZCBvZmZzZXQgb2YgbGFzdCByZWFkIHB1YnR5cGVz IHNlY3Rpb24uCisgIC8vIE9iamVjdCwgc2VjdGlvbiBpbmRleCBhbmQgb2Zm c2V0IG9mIGxhc3QgcmVhZCBwdWJ0eXBlcyBzZWN0aW9uLgorICBjb25zdCBS ZWxvYmoqIHB1YnR5cGVzX29iamVjdF87CiAgIHVuc2lnbmVkIGludCBwdWJ0 eXBlc19zaG5keF87CiAgIG9mZl90IHB1YnR5cGVzX29mZnNldF87CiB9Owo= --485b397dd04fde91e604c9255b2f--