From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) by sourceware.org (Postfix) with ESMTPS id 40F423858C1F for ; Thu, 15 Jun 2023 12:11:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 40F423858C1F Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-ed1-x52b.google.com with SMTP id 4fb4d7f45d1cf-5187aa18410so3745511a12.0 for ; Thu, 15 Jun 2023 05:11:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686831059; x=1689423059; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=tsPBHDwNohz+kU0Qa5DI0CAb6Qpv8xDnzhaR2QaWM9s=; b=JOr4hb2y7TuYrBXhQKEuxEgvQaVwTW8XUVcFq4Bf3/8NxMZWQEsKd++NYMqUQRc7R2 fi1XcPv3uvHIFPkzx2pITxg4JT1fMxYEkYZ8uFGurbsQO9nLK0wif7jC26QRacV4vWC9 8wZfcE52cU8F7l0WGgOmAkm+ZNOQ5BGYU8soSOPGeW/gVbulJdSn5ktLZWsQHORcW1kO ZTGHOF81M80VhqkK7Q5yziAAnzcLwtjOAPhgV1csN1pSf4+W4mseTIoFwyxxfMpiIcud eDuNUc/o3fWmg9nOb70/P9plhNHChTfRfhckbxcIgWtEkJBJxTNDjVKVp4N4eslcxc39 wAsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686831059; x=1689423059; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=tsPBHDwNohz+kU0Qa5DI0CAb6Qpv8xDnzhaR2QaWM9s=; b=YJ39vyaW0f3oSCPYCgHMqaW704Eb3u0usAo5gXEm4kfnG842QDstriaMHyoTX+paPp soL6VL0xOasIlhgCdot1QhF2fvUe/R+2toJcFiNtNhOVcpWtjemjFMNN1aF3SEYq92ud v93KN2XJY3be0vXyMIyZoOAZd8mHzAdBKLCEJNEO45uRzne+qHjDj+dGIMWtBBwDdSDw dC2tpHkW90zvOqCn5gV7Rfc+VQvjVz3teJBKBRj3npDTyYqaMNQb++7NtiFmIW9bji0/ EDhw+yK+E9eo9phR+xcflK5BssuO58lsACxffd7f72LAMwAVMlVjVWew0sVmAv+Aroon KLow== X-Gm-Message-State: AC+VfDxE35cD8u0Eixfe786zXYfeo5NJMombC03YPhmZvpqDD2vXsYoG pcQbc8eeF9wvU0iIYw74ccucd2mieFLvni4R7KpPWmPGDT0tag== X-Google-Smtp-Source: ACHHUZ5XNt6tmyGT4ptieWU7uJCyHdGh8SK2gvN606TfDL1vlZE09gxcg1Sxg9Ws8KQyNVKepirfNaiWgKd6mt+OyKU= X-Received: by 2002:aa7:c553:0:b0:508:3b1f:e6b5 with SMTP id s19-20020aa7c553000000b005083b1fe6b5mr10981605edr.15.1686831059132; Thu, 15 Jun 2023 05:10:59 -0700 (PDT) MIME-Version: 1.0 From: Costas Argyris Date: Thu, 15 Jun 2023 13:10:47 +0100 Message-ID: Subject: [PATCH] gcc-ar: Remove code duplication. To: gcc-patches@gcc.gnu.org Content-Type: multipart/mixed; boundary="00000000000013cf4d05fe29f6aa" X-Spam-Status: No, score=-8.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,HTML_MESSAGE,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --00000000000013cf4d05fe29f6aa Content-Type: multipart/alternative; boundary="00000000000013cf4a05fe29f6a8" --00000000000013cf4a05fe29f6a8 Content-Type: text/plain; charset="UTF-8" Some refactoring I thought would be useful while looking at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77576 I think some duplicated code can go away by doing this, while also saving a bit of memory. --00000000000013cf4a05fe29f6a8-- --00000000000013cf4d05fe29f6aa Content-Type: text/x-patch; charset="US-ASCII"; name="0001-gcc-ar-Remove-code-duplication.patch" Content-Disposition: attachment; filename="0001-gcc-ar-Remove-code-duplication.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lix3i9ah0 RnJvbSBjM2YzYjJmZDUzMjkxODA1YjVkMGJlMTlkZjZkMWEzNDhjNTg4OWVj IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDb3N0YXMgQXJneXJp cyA8Y29zdGFzLmFyZ3lyaXNAZ21haWwuY29tPgpEYXRlOiBUaHUsIDE1IEp1 biAyMDIzIDEyOjM3OjM1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gZ2NjLWFy OiBSZW1vdmUgY29kZSBkdXBsaWNhdGlvbi4KClByZXBhcmF0b3J5IHJlZmFj dG9yaW5nIHRoYXQgc2ltcGxpZmllcyBieSBlbGltaW5hdGluZwpzb21lIGR1 cGxpY2F0ZWQgY29kZSwgYmVmb3JlIHRyeWluZyB0byBmaXggNzc1NzYuCkkg YmVsaWV2ZSB0aGlzIHN0YW5kcyBvbiBpdHMgb3duIHJlZ2FyZGxlc3Mgb2Yg dGhlIFBSLgpJdCBhbHNvIHNhdmVzIGEgbmFyZ3YgZWxlbWVudCB3aGVuIHdl IGhhdmUgYSBwbHVnaW4gYW5kCnRocmVlIHdoZW4gbm90LgoKU2lnbmVkLW9m Zi1ieTogQ29zdGFzIEFyZ3lyaXMgPGNvc3Rhcy5hcmd5cmlzQGdtYWlsLmNv bT4KLS0tCiBnY2MvZ2NjLWFyLmNjIHwgMjMgKysrKysrKysrKystLS0tLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9nY2MvZ2NjLWFyLmNjIGIvZ2Nj L2djYy1hci5jYwppbmRleCA1ZTViNjNlMTk4OC4uNGU0YzUyNTkyN2QgMTAw NjQ0Ci0tLSBhL2djYy9nY2MtYXIuY2MKKysrIGIvZ2NjL2djYy1hci5jYwpA QCAtMTI4LDYgKzEyOCw5IEBAIG1haW4gKGludCBhYywgY2hhciAqKmF2KQog ICBjb25zdCBjaGFyICpleGVfbmFtZTsKICNpZiBIQVZFX0xUT19QTFVHSU4g PiAwCiAgIGNoYXIgKnBsdWdpbjsKKyAgY29uc3QgaW50IGogPSAyOyAvKiBU d28gZXh0cmEgYXJncywgLS1wbHVnaW4gPHBsdWdpbj4gICovCisjZWxzZQor ICBjb25zdCBpbnQgaiA9IDA7IC8qIE5vIGV4dHJhIGFyZ3MuICAqLwogI2Vu ZGlmCiAgIGludCBrLCBzdGF0dXMsIGVycjsKICAgY29uc3QgY2hhciAqZXJy X21zZzsKQEAgLTIwNiwyNSArMjA5LDIxIEBAIG1haW4gKGludCBhYywgY2hh ciAqKmF2KQogCX0KICAgICB9CiAKKyAgLyogUHJlcGVuZCAtIGlmIG5lY2Vz c2FyeS4gICovCisgIGlmIChpc19hciAmJiBhdlsxXSAmJiBhdlsxXVswXSAh PSAnLScpCisgICAgYXZbMV0gPSBjb25jYXQgKCItIiwgYXZbMV0sIE5VTEwp OworICAKICAgLyogQ3JlYXRlIG5ldyBjb21tYW5kIGxpbmUgd2l0aCBwbHVn aW4gLSBpZiB3ZSBoYXZlIG9uZSwgb3RoZXJ3aXNlIGp1c3QKICAgICAgY29w eSB0aGUgY29tbWFuZCB0aHJvdWdoLiAgKi8KLSAgbmFyZ3YgPSBYQ05FV1ZF QyAoY29uc3QgY2hhciAqLCBhYyArIDQpOworICBuYXJndiA9IFhDTkVXVkVD IChjb25zdCBjaGFyICosIGFjICsgaiArIDEpOyAvKiAraiBwbHVnaW4gYXJn cyArMSBmb3IgTlVMTC4gICovCiAgIG5hcmd2WzBdID0gZXhlX25hbWU7CiAj aWYgSEFWRV9MVE9fUExVR0lOID4gMAogICBuYXJndlsxXSA9ICItLXBsdWdp biI7CiAgIG5hcmd2WzJdID0gcGx1Z2luOwotICBpZiAoaXNfYXIgJiYgYXZb MV0gJiYgYXZbMV1bMF0gIT0gJy0nKQotICAgIGF2WzFdID0gY29uY2F0ICgi LSIsIGF2WzFdLCBOVUxMKTsKLSAgZm9yIChrID0gMTsgayA8IGFjOyBrKysp Ci0gICAgbmFyZ3ZbMiArIGtdID0gYXZba107Ci0gIG5hcmd2WzIgKyBrXSA9 IE5VTEw7Ci0jZWxzZQotICBpZiAoaXNfYXIgJiYgYXZbMV0gJiYgYXZbMV1b MF0gIT0gJy0nKQotICAgIGF2WzFdID0gY29uY2F0ICgiLSIsIGF2WzFdLCBO VUxMKTsKLSAgZm9yIChrID0gMTsgayA8IGFjOyBrKyspCi0gICAgbmFyZ3Zb a10gPSBhdltrXTsKLSAgbmFyZ3Zba10gPSBOVUxMOwogI2VuZGlmCisgIGZv ciAoayA9IDE7IGsgPCBhYzsgaysrKQorICAgIG5hcmd2W2ogKyBrXSA9IGF2 W2tdOworICBuYXJndltqICsga10gPSBOVUxMOwogCiAgIC8qIFJ1biB1dGls aXR5ICovCiAgIC8qID8/PyB0aGUgY29uc3QgaXMgbWlzcGxhY2VkIGluIHBl eF9vbmUncyBhcmd2PyAqLwotLSAKMi4zMC4yCgo= --00000000000013cf4d05fe29f6aa--