From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dedi548.your-server.de (dedi548.your-server.de [85.10.215.148]) by sourceware.org (Postfix) with ESMTPS id 9D6BD3858405 for ; Wed, 30 Mar 2022 13:30:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9D6BD3858405 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embedded-brains.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embedded-brains.de Received: from sslproxy01.your-server.de ([78.46.139.224]) by dedi548.your-server.de with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1nZYP2-000Mgy-9A; Wed, 30 Mar 2022 15:30:24 +0200 Received: from [82.100.198.138] (helo=mail.embedded-brains.de) by sslproxy01.your-server.de with esmtpsa (TLSv1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nZYP2-000C00-6X; Wed, 30 Mar 2022 15:30:24 +0200 Received: from localhost (localhost [127.0.0.1]) by mail.embedded-brains.de (Postfix) with ESMTP id DF7E8480067; Wed, 30 Mar 2022 15:30:23 +0200 (CEST) Received: from mail.embedded-brains.de ([127.0.0.1]) by localhost (zimbra.eb.localhost [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id N6Ktb7IevFkU; Wed, 30 Mar 2022 15:30:23 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.embedded-brains.de (Postfix) with ESMTP id 995B84800DB; Wed, 30 Mar 2022 15:30:23 +0200 (CEST) X-Virus-Scanned: amavisd-new at zimbra.eb.localhost Received: from mail.embedded-brains.de ([127.0.0.1]) by localhost (zimbra.eb.localhost [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id N_lS_WkLa1Ex; Wed, 30 Mar 2022 15:30:23 +0200 (CEST) Received: from [10.10.171.14] (unknown [10.10.171.14]) by mail.embedded-brains.de (Postfix) with ESMTPSA id 6AEA7480067; Wed, 30 Mar 2022 15:30:23 +0200 (CEST) Message-ID: Date: Wed, 30 Mar 2022 15:30:22 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH] gcov-tool: Allow merging of empty profile lists Content-Language: en-US To: =?UTF-8?Q?Martin_Li=c5=a1ka?= , gcc-patches@gcc.gnu.org References: <20220323093404.13225-1-sebastian.huber@embedded-brains.de> <0b4c9c67-0810-4521-2cca-522dbed52bb8@suse.cz> <76777016-d1d4-6e44-59f6-fbe3ff8249ac@embedded-brains.de> <930c7bec-aea5-9491-94cd-a4e8c86f9bfe@suse.cz> <262bfcbc-dfd7-722f-e06a-b7fb7dbbe977@embedded-brains.de> <9b3bc65d-be92-0a99-d5c3-c96b9fec881c@embedded-brains.de> <4c890c8b-4665-41ab-c584-6f25aac01e04@suse.cz> From: Sebastian Huber In-Reply-To: <4c890c8b-4665-41ab-c584-6f25aac01e04@suse.cz> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Authenticated-Sender: smtp-embedded@poldinet.de X-Virus-Scanned: Clear (ClamAV 0.103.5/26497/Wed Mar 30 10:19:51 2022) X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, NICE_REPLY_A, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Mar 2022 13:30:28 -0000 On 30/03/2022 13:56, Martin Li=C5=A1ka wrote: >> Example: >> >> base64 -d log.txt | gcov-tool merge-stream >> >> The gcov-tool uses a new tag which contains the filename of the=20 >> associated gcov info file: >> >> gcov-dump b-xilinx_zynq_a9_qemu/init.gcda >> b-xilinx_zynq_a9_qemu/init.gcda:data:magic `gcda':version `B20 ' >> b-xilinx_zynq_a9_qemu/init.gcda:stamp 3496756572 >> b-xilinx_zynq_a9_qemu/init.gcda:checksum 137326246 >> b-xilinx_zynq_a9_qemu/init.gcda:=C2=A0 a5000000:=C2=A0 62:FILENAME=20 >> `/home/EB/sebastian_h/src/lwip/b-xilinx_zynq_a9_qemu/init.gcda' >> b-xilinx_zynq_a9_qemu/init.gcda:=C2=A0 a1000000:=C2=A0=C2=A0 8:OBJECT_= SUMMARY runs=3D0,=20 >> sum_max=3D0 >> b-xilinx_zynq_a9_qemu/init.gcda:=C2=A0 01000000:=C2=A0 12:FUNCTION=20 >> ident=3D1016818396, lineno_checksum=3D0xd31791e7, cfg_checksum=3D0x452= 9789a >> b-xilinx_zynq_a9_qemu/init.gcda:=C2=A0=C2=A0=C2=A0 01a10000: 232:COUNT= ERS arcs 29 counts >> >> Should I generate this filename tag to all configurations or just in=20 >> case inhibit_libc is defined? >=20 > I would emit it unconditionally. Btw. why do you need the tag? The tag was the easiest way to add the filename to the gcov information. We need some gcov defined way to get the filename associated with a gcov=20 information, so that the gcov-tool can generate the gcov files from the=20 gcov information itself. In a hosted environment, it is not necessary to=20 include the filename in the gcov information, since the instrumented=20 executable already creates the gcov files. In a freestanding=20 environment, the gcov information is not automatically stored to files=20 since no file system may be available. Here, we can dump the gcov=20 information through __gcov_info_to_gcda(). This dump is basically a=20 concatenation of several gcov files. An alternative to a tag inside the gcov data would be a header which is=20 dumped before the gcov data and understood by the gcov-tool: header : int32:filename-magic int32:version string #define GCOV_FILENAME_MAGIC ((gcov_unsigned_t)0x6763666e) /* "gcfn" */ --=20 embedded brains GmbH Herr Sebastian HUBER Dornierstr. 4 82178 Puchheim Germany email: sebastian.huber@embedded-brains.de phone: +49-89-18 94 741 - 16 fax: +49-89-18 94 741 - 08 Registergericht: Amtsgericht M=C3=BCnchen Registernummer: HRB 157899 Vertretungsberechtigte Gesch=C3=A4ftsf=C3=BChrer: Peter Rasmussen, Thomas= D=C3=B6rfler Unsere Datenschutzerkl=C3=A4rung finden Sie hier: https://embedded-brains.de/datenschutzerklaerung/