From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 58528 invoked by alias); 24 May 2017 14:55:17 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 58519 invoked by uid 89); 24 May 2017 14:55:16 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-23.6 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=ham version=3.3.2 spammy=2147, Hx-languages-length:2826 X-HELO: mail-ua0-f195.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=FJ2ewrjlZlUtWbkEADr2OEzTT4J3rwj6eSpAL42aEgE=; b=BP1szPkBhuy2y1sDYnXu7Q4AOZPLRoo73IP/w7y4kkbY9o0x7ek+gLlQ0vQI0EzaVA XnTzKtDpi4q3zfdcLJBSvsp2bfiGkuMHvkG/NQz1I93IcQ5V0tsPi1pYJ9YjcU1nXJAK P7AlD77KJOQD0i4AE3Uj/VstMtI3IsZKBh9cqgROyKZP/IxegZEsFB/bS1/nej5WyqVY k+wwIKel8JoGyGgzgJwbhyIBQ2PTEVlckktI3q6QyZMhGWRk0xknG6ifHo229xrnTSLF 0pTaVf5qvgvRxJbnyxPcm3HRrrljbRIruU+XY0TIPPRTRSZDHYGE/WszwKgY2HMi7Ona zXKg== X-Gm-Message-State: AODbwcDJiiLTnZ9ZUceTQ84txhFOmfbaKOovrsdkYWz5qhxYr4cbIDK2 L/YCN/9U0O34kchficGc7kSex8uzRg== X-Received: by 10.159.37.150 with SMTP id 22mr15499366uaf.72.1495637716908; Wed, 24 May 2017 07:55:16 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <20170520145006.GA19672@lucon.org> From: "H.J. Lu" Date: Wed, 24 May 2017 14:55:00 -0000 Message-ID: Subject: Re: [PATCH] x86_64: Remove 9 REX bytes from memchr.S To: Zack Weinberg Cc: GNU C Library Content-Type: multipart/mixed; boundary="001a113c8236d45f8b0550464abc" X-SW-Source: 2017-05/txt/msg00721.txt.bz2 --001a113c8236d45f8b0550464abc Content-Type: text/plain; charset="UTF-8" Content-length: 734 On Sat, May 20, 2017 at 12:58 PM, H.J. Lu wrote: > On Sat, May 20, 2017 at 7:59 AM, Zack Weinberg wrote: >> On Sat, May 20, 2017 at 10:50 AM, H.J. Lu wrote: >>> There is no need to use 64-bit registers when only the lower 32 bits >>> are non-zero. >> >> This code is used generically for x86-64, not for a specific >> microarchitecture. Is there a reason why this will never cause partial >> register stalls, now or in the future? > > By x86-64 specification, 32-bit destination registers in these instructions > are zero-extended to 64 bits and there is register stall at all. > Here is the updated patch with one more REX byte removed. Any other comments? -- H.J. --001a113c8236d45f8b0550464abc Content-Type: text/x-patch; charset="US-ASCII"; name="0001-x86_64-Remove-redundant-REX-bytes-from-memchr.S.patch" Content-Disposition: attachment; filename="0001-x86_64-Remove-redundant-REX-bytes-from-memchr.S.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_j334297l0 Content-length: 2884 RnJvbSAyZGIzNmI1NDMzOGY2NWE4MDMwODBjZTgwODU5NzcyOTlhNGY1MmEw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhq bC50b29sc0BnbWFpbC5jb20+CkRhdGU6IFRodSwgMTggTWF5IDIwMTcgMTI6 MjI6MzEgLTA3MDAKU3ViamVjdDogW1BBVENIXSB4ODZfNjQ6IFJlbW92ZSBy ZWR1bmRhbnQgUkVYIGJ5dGVzIGZyb20gbWVtY2hyLlMKCkJ5IHg4Ni02NCBz cGVjaWZpY2F0aW9uLCAzMi1iaXQgZGVzdGluYXRpb24gcmVnaXN0ZXJzIGFy ZSB6ZXJvLWV4dGVuZGVkCnRvIDY0IGJpdHMuICBUaGVyZSBpcyBubyBuZWVk IHRvIHVzZSA2NC1iaXQgcmVnaXN0ZXJzIHdoZW4gb25seSB0aGUgbG93ZXIK MzIgYml0cyBhcmUgbm9uLXplcm8uCgoJKiBzeXNkZXBzL3g4Nl82NC9tZW1j aHIuUyAoTUVNQ0hSKTogVXNlIDMyLWJpdCByZWdpc3RlcnMgZm9yCgl0aGUg bG93ZXIgMzIgYml0cy4KLS0tCiBzeXNkZXBzL3g4Nl82NC9tZW1jaHIuUyB8 IDIwICsrKysrKysrKystLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTAg aW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3lzZGVwcy94ODZfNjQvbWVtY2hyLlMgYi9zeXNkZXBzL3g4Nl82NC9tZW1j aHIuUwppbmRleCA4MjQyZjJkLi43N2E3MWFlIDEwMDY0NAotLS0gYS9zeXNk ZXBzL3g4Nl82NC9tZW1jaHIuUworKysgYi9zeXNkZXBzL3g4Nl82NC9tZW1j aHIuUwpAQCAtMzEsNyArMzEsNyBAQAogCS50ZXh0CiBFTlRSWShNRU1DSFIp CiAJbW92ZAklZXNpLCAleG1tMQotCW1vdgklcmRpLCAlcmN4CisJbW92CSVl ZGksICVlY3gKIAogI2lmZGVmIFVTRV9BU19XTUVNQ0hSCiAJdGVzdAklcmR4 LCAlcmR4CkBAIC00NCwxMCArNDQsMTAgQEAgRU5UUlkoTUVNQ0hSKQogCXB1 bnBja2xidyAleG1tMSwgJXhtbTEKICNlbmRpZgogCi0JYW5kCSQ2MywgJXJj eAorCWFuZAkkNjMsICVlY3gKIAlwc2h1ZmQJJDAsICV4bW0xLCAleG1tMQog Ci0JY21wCSQ0OCwgJXJjeAorCWNtcAkkNDgsICVlY3gKIAlqYQlMKGNyb3Nz Y2FjaGUpCiAKIAltb3ZkcXUJKCVyZGkpLCAleG1tMApAQCAtNTksNyArNTks NyBAQCBFTlRSWShNRU1DSFIpCiAJc3ViCSQxNiwgJXJkeAogCWpiZQlMKHJl dHVybl9udWxsKQogCWFkZAkkMTYsICVyZGkKLQlhbmQJJDE1LCAlcmN4CisJ YW5kCSQxNSwgJWVjeAogCWFuZAkkLTE2LCAlcmRpCiAJYWRkCSVyY3gsICVy ZHgKIAlzdWIJJDY0LCAlcmR4CkBAIC02OCw3ICs2OCw3IEBAIEVOVFJZKE1F TUNIUikKIAogCS5wMmFsaWduIDQKIEwoY3Jvc3NjYWNoZSk6Ci0JYW5kCSQx NSwgJXJjeAorCWFuZAkkMTUsICVlY3gKIAlhbmQJJC0xNiwgJXJkaQogCW1v dmRxYQkoJXJkaSksICV4bW0wCiAKQEAgLTE2Miw3ICsxNjIsNyBAQCBMKGxv b3BfcHJvbG9nKToKIAogCW1vdgklcmRpLCAlcmN4CiAJYW5kCSQtNjQsICVy ZGkKLQlhbmQJJDYzLCAlcmN4CisJYW5kCSQ2MywgJWVjeAogCWFkZAklcmN4 LCAlcmR4CiAKIAkucDJhbGlnbiA0CkBAIC0yMTQsNyArMjE0LDcgQEAgTChh bGlnbjY0X2xvb3ApOgogCiAJLnAyYWxpZ24gNAogTChleGl0X2xvb3ApOgot CWFkZAkkMzIsICVyZHgKKwlhZGQJJDMyLCAlZWR4CiAJamxlCUwoZXhpdF9s b29wXzMyKQogCiAJbW92ZHFhCSglcmRpKSwgJXhtbTAKQEAgLTIzNCw3ICsy MzQsNyBAQCBMKGV4aXRfbG9vcCk6CiAJcG1vdm1za2IgJXhtbTMsICVlYXgK IAl0ZXN0CSVlYXgsICVlYXgKIAlqbnoJTChtYXRjaGVzMzJfMSkKLQlzdWIJ JDE2LCAlcmR4CisJc3ViCSQxNiwgJWVkeAogCWpsZQlMKHJldHVybl9udWxs KQogCiAJUENNUEVRCTQ4KCVyZGkpLCAleG1tMQpAQCAtMjQ2LDEzICsyNDYs MTMgQEAgTChleGl0X2xvb3ApOgogCiAJLnAyYWxpZ24gNAogTChleGl0X2xv b3BfMzIpOgotCWFkZAkkMzIsICVyZHgKKwlhZGQJJDMyLCAlZWR4CiAJbW92 ZHFhCSglcmRpKSwgJXhtbTAKIAlQQ01QRVEJJXhtbTEsICV4bW0wCiAJcG1v dm1za2IgJXhtbTAsICVlYXgKIAl0ZXN0CSVlYXgsICVlYXgKIAlqbnoJTCht YXRjaGVzXzEpCi0Jc3ViCSQxNiwgJXJkeAorCXN1YgkkMTYsICVlZHgKIAlq YmUJTChyZXR1cm5fbnVsbCkKIAogCVBDTVBFUQkxNiglcmRpKSwgJXhtbTEK LS0gCjIuOS40Cgo= --001a113c8236d45f8b0550464abc--