From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20087.outbound.protection.outlook.com [40.107.2.87]) by sourceware.org (Postfix) with ESMTPS id 0BF0E3858D28 for ; Tue, 8 Feb 2022 22:30:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 0BF0E3858D28 Received: from AM6P192CA0045.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:82::22) by AM6PR08MB4950.eurprd08.prod.outlook.com (2603:10a6:20b:ea::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Tue, 8 Feb 2022 22:30:26 +0000 Received: from AM5EUR03FT052.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:82:cafe::54) by AM6P192CA0045.outlook.office365.com (2603:10a6:209:82::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12 via Frontend Transport; Tue, 8 Feb 2022 22:30:26 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT052.mail.protection.outlook.com (10.152.17.161) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12 via Frontend Transport; Tue, 8 Feb 2022 22:30:26 +0000 Received: ("Tessian outbound 826a6d8e58c3:v113"); Tue, 08 Feb 2022 22:30:26 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: acb2cb98eaad0b39 X-CR-MTA-TID: 64aa7808 Received: from afe2892bd500.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 954301E3-FB1A-4F97-B50C-2E09A695C4E7.1; Tue, 08 Feb 2022 22:30:19 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id afe2892bd500.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 08 Feb 2022 22:30:19 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hcON97b5Rrro/y6tFLuJFinvSahj+9FAIr6uRRFAOeDR7h+5TsAvyYcgw2AuNSwbketYK30shIpceFXpqpBz0+AUKcfzKFaLAscH0KThpYLjOlmjgPvZpVijH0vlAhw7f/p9SqVwciXBLRA5qz4gXA+SI6koGlJCFHAk1N7/pslTVhn1L+PMzy07VGIb3Tzrd7t8ekwX5X/AaxU/IOXw69d0ctTE8hwN/WMKAU9NqZC02pM+ApqLEvW+Hc50dMhBafVZFXpWAQkNj1uLdbkQnik/Ifkphs1Kvkv/FkxtIs/V4xS3Mlqx41DV/nW2jaquocWKMBvycK2qO3VRCTbnsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fl1+vB/DUmwF83Ob2TEtZaOboRxl7tmS+d0W4s18uBw=; b=JnQNOejqFxvf+cVaNOGfQ+fhZlmzNvD20dnd178XMluVzFJm8NYaCSRpDk4G0gbs1UIlHdSZR6iQcQT/a5fe9RunVsF149NPgAS7xlwPgnHBRiGQGXnXzfSXjJwfMTIvdQyVS+5bsYx4Xho1ovPmUF8LUiDo/IoWaxAtazEs5J5KHo/B43eObyOzHRhTTCswUlwdbRgVOa+sjwhRtqzq76Qc2Fw9I9Yj2Uoww8kArSVazOdEfrBb5+UYLPbGalZmK2lH7y1eD5dE3tswyJ8ec94FAyTU/AwHVbb90pkmkIM+KGG2FrF82UH8xFjq1rm3bR+T7BfV/Dwyv8omLTRu8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from AS8PR08MB6534.eurprd08.prod.outlook.com (2603:10a6:20b:31c::10) by AM5PR0802MB2404.eurprd08.prod.outlook.com (2603:10a6:203:a0::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Tue, 8 Feb 2022 22:30:17 +0000 Received: from AS8PR08MB6534.eurprd08.prod.outlook.com ([fe80::4c4f:f584:ce98:e21d]) by AS8PR08MB6534.eurprd08.prod.outlook.com ([fe80::4c4f:f584:ce98:e21d%5]) with mapi id 15.20.4951.019; Tue, 8 Feb 2022 22:30:17 +0000 From: Wilco Dijkstra To: "H.J. Lu" CC: 'GNU C Library' , Noah Goldstein Subject: [PATCH] elf: Replace memcmp with __memcmpeq for variable size Thread-Topic: [PATCH] elf: Replace memcmp with __memcmpeq for variable size Thread-Index: AQHYHTfugdOmBHPAhkWwwK81i9Fnmw== Date: Tue, 8 Feb 2022 22:30:17 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-MS-Office365-Filtering-Correlation-Id: 7c0a3fa8-c011-4d36-d9ea-08d9eb529a9f x-ms-traffictypediagnostic: AM5PR0802MB2404:EE_|AM5EUR03FT052:EE_|AM6PR08MB4950:EE_ X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: RCD2RFdFbgZRSlcWQYMCc7rJ9RsM1eBjrYGGxZSElpZhcwO3jlR2JUbG7FXn9CqyVzh6I4/h204y7zpzKoR3CU6Q9vtgFgvVl98Hqfc9fg5FdHSttrKpyoPPlnDjcgyQSSxV/e6OGd5TZnE5gcOzgVgt1xC2B/OvNLZ/sOntxd2GxOZ65K6BjGMX4QyFVSxs0R7kqOP+2nZuzGXmTpKILsjfIzTHTO9S2wlFY+Enn245Xa/LTAZw7hJNTttgIopQKtS6dnMhENDraD6fW14U10N5JwNLdXXkPQeRS+RldRM95TBmUPFnScE+ykkQ2EbLE/n+Lq7b49a25tp/MV9JB/ZzyYYKvC0vYQyGfznYlUgn4cgkVtembWPrNPtkOcu2rKHoh4/4tA43rP8aivksr5RvFD/oeBRJ2XOFGB2jCIEzKzyA4m+ePXmyi8fedoD9EZaSKT6kEhH1a6AIA206pdUTWFpQzNpZPGup42wfvrr8UBE+ZvumdluzVkGzWdfdAWuX0MsyV6zZj5xEd0hgll7LNWGe0o4QNJ0SAFrQL6kajH+TwdgxnQk1TvWlTNFiKNY3mqXcYhK/D/OhIrWlmtclNJLt0cF/krY8DNRbqgflKc+vC345I7AVZfxH6YhdY951cW8NMGP2uq9c7YCcIx7EuUtP3J/XrVsU/LsRFtgnQMGJmYhByBqJu+TCiX1OskWa7Yuw1FXdH37irZSHvQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6534.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(38070700005)(55016003)(508600001)(4744005)(5660300002)(26005)(186003)(38100700002)(9686003)(66946007)(86362001)(66446008)(66476007)(66556008)(64756008)(71200400001)(83380400001)(316002)(91956017)(52536014)(54906003)(33656002)(8676002)(8936002)(6916009)(4326008)(122000001)(7696005)(2906002)(6506007)(76116006); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2404 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4cf8decc-41b2-4636-9029-08d9eb529557 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8Ubr6RxKKGtwL+WzezwIirGp3DR8u43s1vtm9bqV/U1OeBnRX1spzwRJd7VYiPUkzh+i57B2ZZkhbMY/Ei0AR3g7zh+B6pz0rhJoYw2m7/uqj3GdfP2i1Q3kl1n5+dZfSZB1ReHGubLo7GPvridAogxQOkUxoetnYEDLWCT3c4HB+5v5scj9Cmxy8R4hSDKuQLKAWo/ByPk9l3ZArj7THFF0jC98RXN2Zl3PYSgt2vt2TXyxbjD/mTIEVi7oa2CqIRRr60RW5jEDzr/CYTRRxYJq8RnrXWdPbEC32mwDvKeh6pFQiwWvb3QK3lVMD88aQnAUzRRDBF79ltXY2syOOmJQ7Ous9ZeyyU1L+nHqQkryfUoH60kxa973ZDja+hZUnV16Za3gaUyeyehec6gTvoJtIzhh2hVoY+L6Jewu7lUneZacj8GjJyQtfXFqeYZSgHG4dRUKK/L2+2w5PxM4czzdlqa8IXs4nsD/kApZURV9zdj2C2unkwM7WWubeB3HUSQNFXRnCTNxLrY1mV8XIoNVffAvkNyMTX8k15CN/8AD1g+Q6roDOk45FnCk/xoo+YVCy+XVQ545DRJsSJFdouNd0t5UZb+OJuLnu/Yc8cThkyKJPo3OTZOs4TD/ND4pePL3WXPGB2gtYyXFcu8g+hlKeYtALBb9FMRWWR8XtS4BbFeu0PSdxd3/XihUCwo2 X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230001)(4636009)(40470700004)(46966006)(36840700001)(107886003)(83380400001)(2906002)(52536014)(4744005)(7696005)(336012)(186003)(26005)(33656002)(6506007)(47076005)(9686003)(5660300002)(508600001)(86362001)(36860700001)(6862004)(316002)(82310400004)(4326008)(54906003)(55016003)(40460700003)(8936002)(70586007)(81166007)(356005)(8676002)(70206006); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Feb 2022 22:30:26.3023 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7c0a3fa8-c011-4d36-d9ea-08d9eb529a9f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM5EUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4950 X-Spam-Status: No, score=-6.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY 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: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Feb 2022 22:30:33 -0000 Hi,=0A= =0A= >>=A0My understanding is this optimization would eventually be implemented = by=0A= >=0A= > What kinds of codes should compilers generate? =A0For glibc internal=0A= > usage, we can write codes in such a way that the generated codes=0A= > are very similar to what compilers should generate.=0A= >=0A= >>=A0the compiler, so maybe it would be better to let it optimize if suitab= le=0A= >>=A0(similar to what we are aiming for math code).=0A= =0A= I agree with Joseph that these kind of micro-optimizations are generally co= unter productive -=0A= we've removed many similar hacks from math libraries resulting in good spee= dups (they=0A= almost always work against you, blocking compiler optimizations such as inl= ining, constant=0A= propagation etc). It's much better to improve code via algorithm or impleme= ntation=0A= optimizations rather than focus on these micro-optimizations.=0A= =0A= As mentioned, codesize will increase since many applications now use both m= emcmp and=0A= __memcmpeq, and the extra I-cache misses may wipe out any savings.=0A= =0A= Cheers,=0A= Wilco=