From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25885 invoked by alias); 8 Aug 2009 18:08:53 -0000 Received: (qmail 25877 invoked by uid 22791); 8 Aug 2009 18:08:52 -0000 X-SWARE-Spam-Status: No, hits=-0.2 required=5.0 tests=AWL,BAYES_50,J_CHICKENPOX_31,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.33.17) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 08 Aug 2009 18:08:45 +0000 Received: from wpaz33.hot.corp.google.com (wpaz33.hot.corp.google.com [172.24.198.97]) by smtp-out.google.com with ESMTP id n78I8e4O032630 for ; Sat, 8 Aug 2009 19:08:41 +0100 Received: from qw-out-1920.google.com (qwa14.prod.google.com [10.241.193.14]) by wpaz33.hot.corp.google.com with ESMTP id n78I8cEQ032099 for ; Sat, 8 Aug 2009 11:08:38 -0700 Received: by qw-out-1920.google.com with SMTP id 14so772552qwa.48 for ; Sat, 08 Aug 2009 11:08:38 -0700 (PDT) MIME-Version: 1.0 Received: by 10.224.20.74 with SMTP id e10mr2058635qab.73.1249754918287; Sat, 08 Aug 2009 11:08:38 -0700 (PDT) In-Reply-To: <8ac60eac0908071529j5be2241bjf7fac5cbf55168a9@mail.gmail.com> References: <8ac60eac0907161724v40e5bd8bg7877d8901b8d7b6e@mail.gmail.com> <8ac60eac0908040806g4f0495f6gc24ae4d6e440e7e6@mail.gmail.com> <8ac60eac0908042358q4d2061d2md3c49cf4aab26398@mail.gmail.com> <8ac60eac0908050940we3dc478rd182f4367a650f1b@mail.gmail.com> <8ac60eac0908052259l7b1c21d1t212991886a5f8b18@mail.gmail.com> <8ac60eac0908070030g7500a5ack3fcc81862e2a5b0a@mail.gmail.com> <8ac60eac0908071529j5be2241bjf7fac5cbf55168a9@mail.gmail.com> Date: Sun, 09 Aug 2009 21:37:00 -0000 Message-ID: <8ac60eac0908081108nd118424l7a1c88b87130bb78@mail.gmail.com> Subject: Re: [patch] Speed up find_pc_section From: Paul Pluzhnikov To: Tom Tromey Cc: gdb-patches ml Content-Type: multipart/mixed; boundary=000e0ce04a3af5fb9a0470a53d99 X-System-Of-Record: true 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: 2009-08/txt/msg00131.txt.bz2 --000e0ce04a3af5fb9a0470a53d99 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-length: 647 On Fri, Aug 7, 2009 at 3:29 PM, Paul Pluzhnikov wrote: > I was able to reproduce the failed assert on F11/i586, but only after the > system ran for a while. Update: running 'make check' on F11 after prelinking shows many similar failures. The "java setup" in Tom's repro instructions doesn't appear necessary. Here is a fix. Tested on F11/i586 (with prelinking) and Linux/x86_64 (without). Thanks, -- Paul Pluzhnikov 2009-08-08 Paul Pluzhnikov * objfiles.c (qsort_cmp): Remove assert. (preferred_obj_section): New function. (update_section_map): Filter duplicates. --000e0ce04a3af5fb9a0470a53d99 Content-Type: text/plain; charset=US-ASCII; name="gdb-find_pc_section-20090808.txt" Content-Disposition: attachment; filename="gdb-find_pc_section-20090808.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_fy4nn8wf0 Content-length: 3900 SW5kZXg6IG9iamZpbGVzLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1Mg ZmlsZTogL2N2cy9zcmMvc3JjL2dkYi9vYmpmaWxlcy5jLHYKcmV0cmlldmlu ZyByZXZpc2lvbiAxLjg5CmRpZmYgLXAgLXUgLXIxLjg5IG9iamZpbGVzLmMK LS0tIG9iamZpbGVzLmMJNCBBdWcgMjAwOSAxODo0NjowNSAtMDAwMAkxLjg5 CisrKyBvYmpmaWxlcy5jCTggQXVnIDIwMDkgMTc6NTU6NTQgLTAwMDAKQEAg LTc5NywxOCArNzk3LDM2IEBAIHFzb3J0X2NtcCAoY29uc3Qgdm9pZCAqYSwg Y29uc3Qgdm9pZCAqYikKICAgICAgIGdkYl9hc3NlcnQgKHNlY3QxX2FkZHIg Pj0gb2JqX3NlY3Rpb25fZW5kYWRkciAoc2VjdDIpKTsKICAgICAgIHJldHVy biAxOwogICAgIH0KLSAgLyogVGhpcyBjYW4gaGFwcGVuIGZvciBzZXBhcmF0 ZSBkZWJ1Zy1pbmZvIGZpbGVzLiAgKi8KLSAgZ2RiX2Fzc2VydCAob2JqX3Nl Y3Rpb25fZW5kYWRkciAoc2VjdDEpID09IG9ial9zZWN0aW9uX2VuZGFkZHIg KHNlY3QyKSk7CiAKICAgcmV0dXJuIDA7CiB9CiAKKy8qIFNlbGVjdCAiYmV0 dGVyIiBvYmpfc2VjdGlvbiB0byBrZWVwLiAgV2UgcHJlZmVyIHRoZSBvbmUg dGhhdCBjYW1lIGZyb20KKyAgIHRoZSByZWFsIG9iamVjdCwgcmF0aGVyIHRo YW4gdGhlIG9uZSBmcm9tIHNlcGFyYXRlIGRlYnVnaW5mby4KKyAgIE1vc3Qg b2YgdGhlIHRpbWUgdGhlIHR3byBzZWN0aW9ucyBhcmUgZXhhY3RseSBpZGVu dGljYWwsIGJ1dCB3aXRoCisgICBwcmVsaW5raW5nIHRoZSAucmVsLmR5biBz ZWN0aW9uIGluIHRoZSByZWFsIG9iamVjdCBtYXkgaGF2ZSBkaWZmZXJlbnQK KyAgIHNpemUuICAqLworCitzdGF0aWMgc3RydWN0IG9ial9zZWN0aW9uICoK K3ByZWZlcnJlZF9vYmpfc2VjdGlvbiAoc3RydWN0IG9ial9zZWN0aW9uICph LCBzdHJ1Y3Qgb2JqX3NlY3Rpb24gKmIpCit7CisgIGdkYl9hc3NlcnQgKG9i al9zZWN0aW9uX2FkZHIgKGEpID09IG9ial9zZWN0aW9uX2FkZHIgKGIpKTsK KyAgZ2RiX2Fzc2VydCAoKGEtPm9iamZpbGUtPnNlcGFyYXRlX2RlYnVnX29i amZpbGUgPT0gYi0+b2JqZmlsZSkKKwkgICAgICB8fCAoYi0+b2JqZmlsZS0+ c2VwYXJhdGVfZGVidWdfb2JqZmlsZSA9PSBhLT5vYmpmaWxlKSk7CisgIGdk Yl9hc3NlcnQgKChhLT5vYmpmaWxlLT5zZXBhcmF0ZV9kZWJ1Z19vYmpmaWxl X2JhY2tsaW5rID09IGItPm9iamZpbGUpCisJICAgICAgfHwgKGItPm9iamZp bGUtPnNlcGFyYXRlX2RlYnVnX29iamZpbGVfYmFja2xpbmsgPT0gYS0+b2Jq ZmlsZSkpOworCisgIGlmIChhLT5vYmpmaWxlLT5zZXBhcmF0ZV9kZWJ1Z19v YmpmaWxlICE9IE5VTEwpCisgICAgcmV0dXJuIGE7CisgIHJldHVybiBiOwor fQorCiAvKiBVcGRhdGUgUE1BUCwgUE1BUF9TSVpFIHdpdGggbm9uLVRMUyBz ZWN0aW9ucyBmcm9tIGFsbCBvYmpmaWxlcy4gICovCiAKIHN0YXRpYyB2b2lk CiB1cGRhdGVfc2VjdGlvbl9tYXAgKHN0cnVjdCBvYmpfc2VjdGlvbiAqKipw bWFwLCBpbnQgKnBtYXBfc2l6ZSkKIHsKLSAgaW50IG1hcF9zaXplLCBpZHg7 CisgIGludCBtYXBfc2l6ZSwgaSwgajsKICAgc3RydWN0IG9ial9zZWN0aW9u ICpzLCAqKm1hcDsKICAgc3RydWN0IG9iamZpbGUgKm9iamZpbGU7CiAKQEAg LTgyOCwxNSArODQ2LDQ1IEBAIHVwZGF0ZV9zZWN0aW9uX21hcCAoc3RydWN0 IG9ial9zZWN0aW9uICoKIAogICBtYXAgPSB4bWFsbG9jIChtYXBfc2l6ZSAq IHNpemVvZiAoKm1hcCkpOwogCi0gIGlkeCA9IDA7CisgIGkgPSAwOwogICBB TExfT0JKU0VDVElPTlMgKG9iamZpbGUsIHMpCiAgICAgaWYgKGluc2VydF9w IChvYmpmaWxlLCBzKSkKLSAgICAgIG1hcFtpZHgrK10gPSBzOworICAgICAg bWFwW2krK10gPSBzOwogCiAjdW5kZWYgaW5zZXJ0X3AKIAogICBxc29ydCAo bWFwLCBtYXBfc2l6ZSwgc2l6ZW9mICgqbWFwKSwgcXNvcnRfY21wKTsKIAor ICAvKiBXaXRoIHNlcGFyYXRlIGRlYnVnaW5mbyBmaWxlcywgd2UgbWF5IGhh dmUgdXAgdG8gdHdvIChhbG1vc3QpCisgICAgIGlkZW50aWNhbCBjb3BpZXMg b2Ygc29tZSBvYmpfc2VjdGlvbnMgaW4gdGhlIG1hcC4KKyAgICAgRmlsdGVy IG91dCBkdXBsaWNhdGVzLiAgKi8KKyAgZm9yIChpID0gMCwgaiA9IDA7IGkg PCBtYXBfc2l6ZTsgKytpKQorICAgIHsKKyAgICAgIHN0cnVjdCBvYmpfc2Vj dGlvbiAqc2VjdDEgPSBtYXBbaV07CisgICAgICBzdHJ1Y3Qgb2JqX3NlY3Rp b24gKnNlY3QyID0gKGkgKyAxIDwgbWFwX3NpemUpID8gbWFwW2kgKyAxXSA6 IE5VTEw7CisKKyAgICAgIGlmIChzZWN0MiA9PSBOVUxMCisJICB8fCBvYmpf c2VjdGlvbl9hZGRyIChzZWN0MSkgIT0gb2JqX3NlY3Rpb25fYWRkciAoc2Vj dDIpKQorCW1hcFtqKytdID0gc2VjdDE7CisgICAgICBlbHNlCisJeworCSAg bWFwW2orK10gPSBwcmVmZXJyZWRfb2JqX3NlY3Rpb24gKHNlY3QxLCBzZWN0 Mik7CisJICArK2k7CisJfQorICAgIH0KKworICBpZiAoaiA8IG1hcF9zaXpl KQorICAgIHsKKyAgICAgIC8qIFNvbWUgZHVwbGljYXRlcyB3ZXJlIGVsaW1p bmF0ZWQuCisJIFRoZSBuZXcgc2l6ZSBzaG91bGRuJ3QgYmUgbGVzcyB0aGFu IGhhbGYgb2YgdGhlIG9yaWdpbmFsLiAqLworICAgICAgZ2RiX2Fzc2VydCAo bWFwX3NpemUgLyAyIDw9IGopOworICAgICAgbWFwX3NpemUgPSBqOworCisg ICAgICBtYXAgPSB4cmVhbGxvYyAobWFwLCBtYXBfc2l6ZSAqIHNpemVvZiAo Km1hcCkpOyAgLyogVHJpbSBleGNlc3Mgc3BhY2UuICAqLworICAgIH0KKyAg ZWxzZQorICAgIGdkYl9hc3NlcnQgKGogPT0gbWFwX3NpemUpOworCiAgICpw bWFwID0gbWFwOwogICAqcG1hcF9zaXplID0gbWFwX3NpemU7CiB9Cg== --000e0ce04a3af5fb9a0470a53d99--