From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf1-x432.google.com (mail-pf1-x432.google.com [IPv6:2607:f8b0:4864:20::432]) by sourceware.org (Postfix) with ESMTPS id F1FEC383D803 for ; Fri, 24 Jun 2022 16:42:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org F1FEC383D803 Received: by mail-pf1-x432.google.com with SMTP id x138so353960pfc.3 for ; Fri, 24 Jun 2022 09:42:19 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=9ocjDiTtgV6YZqE+chd4YMqme2mUcwDfO6LQD0LiyZ8=; b=MklSvdw3UV1LORTXhTDvyVMsdP6pcKTqZrTZkk2GamYhkDFWEpvrqvWthU7UiwPUQJ Cj5ZI33/+04WEe64to51U3DMmXyfd4Es6dcvkr+9aR/SF4nPOyWGxaMvdl86ZIKIaEW7 xMTkyj62UpKjfvpnl9W8lH/y+tRW77GQ4Fl94DkmwQ0P7CAwiM5f7tfRf8fMg8dEmw5K PE+cpnvgqXVwa3N0tTuAP4SOyol/EgvzauvIzXX9QSR+d+RtA400K3yJv3fBovTiA91x mFWiigW1la8h7C6lrZ7oovgv7MsDRl9+JIHLS9wcmE7RuVwg5upxbAgQ23/2Px5dCub1 +62g== X-Gm-Message-State: AJIora8qW0ahvO/CBwQ3V9zDHDjTjjD5IOOgp8H8qU7MbrV8MdBBR4bz IXkWw9qoFBJMrRTXahv53cViBM+v5KA= X-Google-Smtp-Source: AGRyM1vCagJ5ld5oC52uWvtQNglEQNkFi083xC7w9vFHBuzFRbxuD/GVZVvOQSLlXA32JmO7Ya2DbQ== X-Received: by 2002:a63:e705:0:b0:3fd:fb59:bd7f with SMTP id b5-20020a63e705000000b003fdfb59bd7fmr12325336pgi.505.1656088938918; Fri, 24 Jun 2022 09:42:18 -0700 (PDT) Received: from noah-tgl.. ([192.55.60.37]) by smtp.gmail.com with ESMTPSA id q18-20020a63e952000000b00408b8d98c23sm1840326pgj.78.2022.06.24.09.42.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Jun 2022 09:42:18 -0700 (PDT) From: Noah Goldstein To: libc-alpha@sourceware.org Subject: [PATCH v2] x86: Align entry for memrchr to 64-bytes. Date: Fri, 24 Jun 2022 09:42:12 -0700 Message-Id: <20220624164216.2129400-1-goldstein.w.n@gmail.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, 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 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: Fri, 24 Jun 2022 16:42:21 -0000 The function was tuned around 64-byte entry alignment and performs better for all sizes with it. As well different code boths where explicitly written to touch the minimum number of cache line i.e sizes <= 32 touch only the entry cache line. --- sysdeps/x86_64/multiarch/memrchr-avx2.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysdeps/x86_64/multiarch/memrchr-avx2.S b/sysdeps/x86_64/multiarch/memrchr-avx2.S index 9c83c76d3c..f300d7daf4 100644 --- a/sysdeps/x86_64/multiarch/memrchr-avx2.S +++ b/sysdeps/x86_64/multiarch/memrchr-avx2.S @@ -35,7 +35,7 @@ # define VEC_SIZE 32 # define PAGE_SIZE 4096 .section SECTION(.text), "ax", @progbits -ENTRY(MEMRCHR) +ENTRY_P2ALIGN(MEMRCHR, 6) # ifdef __ILP32__ /* Clear upper bits. */ and %RDX_LP, %RDX_LP -- 2.34.1