From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15118 invoked by alias); 27 Feb 2019 09:09:38 -0000 Mailing-List: contact dwz-help@sourceware.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Subscribe: Sender: dwz-owner@sourceware.org Received: (qmail 15049 invoked by uid 48); 27 Feb 2019 09:09:34 -0000 From: "vries at gcc dot gnu.org" To: dwz@sourceware.org Subject: [Bug default/24274] New: low-mem files processed in multifile mode Date: Tue, 01 Jan 2019 00:00:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: dwz X-Bugzilla-Component: default X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: vries at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: nobody at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter cc target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2019-q1/txt/msg00045.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=3D24274 Bug ID: 24274 Summary: low-mem files processed in multifile mode Product: dwz Version: unspecified Status: NEW Severity: normal Priority: P2 Component: default Assignee: nobody at sourceware dot org Reporter: vries at gcc dot gnu.org CC: dwz at sourceware dot org Target Milestone: --- Consider four executables, a.out and b.out a hello world example, and c.out= and d.out copied from the dwz executable itself: ... $ gcc hello.c -g ; cp a.out b.out $ cp dwz c.out ; cp c.out d.out ... This gives us two executables with 130 DIEs, and two executables with 5356 DIEs: ... $ readelf -w a.out | grep '(DW_TAG' | wc -l 130 $ readelf -w b.out | grep '(DW_TAG' | wc -l 130 $ readelf -w c.out | grep '(DW_TAG' | wc -l 5356 $ readelf -w d.out | grep '(DW_TAG' | wc -l 5356 ... Now consider a gdb script that traces the dwz invocations: ... $ cat gdb.script b dwz commands continue end run ... We run in multifile mode, with a low-mem limit of 1000 dies, and trace into LOG: ... $ gdb \ -batch \ -x gdb.script \ --args dwz -m3 -l1000 a.out b.out c.out d.out \ > LOG 2>&1 ... which we then summarize as follows: ... $ grep 'dwz (' LOG | awk '{print $5}' "a.out", "b.out", "c.out", "c.out", "d.out", "d.out", "a.out", "b.out", "c.out", "d.out", ... The first 6 invocations are according to plan: - a.out and b.out have fewer DIEs than 1000, and are processed. - c.out and d.out have more DIEs than 1000, and are each processed twice: - once in regular mode (where dwz stops at a 1000 processed DIEs and retu= rns 2), and=20 - once in low-mem mode. However, then all 4 files are once more processed in fi_multifile mode, whi= le the intention is that c.out and d.out (being bigger than the low-mem limit)= are not processed anymore. --=20 You are receiving this mail because: You are on the CC list for the bug.