From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2056.outbound.protection.outlook.com [40.107.21.56]) by sourceware.org (Postfix) with ESMTPS id 808F13952DBB for ; Tue, 4 May 2021 10:43:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 808F13952DBB Received: from AM6P192CA0006.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:83::19) by DB7PR08MB4219.eurprd08.prod.outlook.com (2603:10a6:10:34::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.38; Tue, 4 May 2021 10:43:15 +0000 Received: from AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:83:cafe::3a) by AM6P192CA0006.outlook.office365.com (2603:10a6:209:83::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.25 via Frontend Transport; Tue, 4 May 2021 10:43:15 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; sourceware.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;sourceware.org; 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 AM5EUR03FT028.mail.protection.outlook.com (10.152.16.118) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend Transport; Tue, 4 May 2021 10:43:15 +0000 Received: ("Tessian outbound 13cdc29c30b8:v91"); Tue, 04 May 2021 10:43:14 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 3f597aafe0acdf76 X-CR-MTA-TID: 64aa7808 Received: from b022b21d4f53.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id DB4B2DB2-F155-427E-BDC3-3FE3F2FD03EC.1; Tue, 04 May 2021 10:42:47 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b022b21d4f53.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 04 May 2021 10:42:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BsQUEc/b77mRLFJIm5IZ4fbLoqQxsbQ3l6rCQD+X/r8okDVUH/6eh29TlqCibqAEOdzTUGlVXoEhHXjbhdDICyr+uaw/sOeXjgHq3Hdwd1mucqjtRa/x2/DoW3eeJkJG8Hhj+5CRy0HXi3LcE8xat+d3Jgw3YPjHPHMv+XzHH7q2yjENqf5iCr4ysKsQtC580lXQVkhMXm98BCox38m/o4g1HC90nHe6dkTqRF6kNid05lzcQdVoUIzEJG1ELTkw39EbLmy+v1cujeUMTZg0NKy1zLY8aG48G5U/dFhhMelAl5/kCPCOH1DI11a7VzaYrI49peUouUiaTVocUBprVQ== 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-SenderADCheck; bh=UdqiqYDV6q0aCaIf3qzHfi9KEZ3vdprNpG0Vvsj/8qM=; b=FkvMx1meOGC7vtgh7iP9GLbjFSTSUudGEAlT3GSLzI90g6veVFA5CfPBne0xVyCblyVbvEt2YuQjKfzpj1pXCKSbj1vUATUTFDKN7CZHpGo82ZYKqAZ7IHr4Sd/yVVOXJE7fHf+dclmsIxq07upZBF4BjE/Q5IEvtFaJENFKAb9MqAWJ3s7mbhth8LmWHZHB/zNpRAE/cA5ED/XQL5RcaBd/J2Nltm0nx5CVoc0+xyaheQwu4yZAa8ELRNwHWcg4DCC7hyrnEooG1b6XI7uyGAIt8Kw8jTyW+AOxLaTKOaNkH8/VNjKs7013f8TBEC1M7rc0aLWScReygyb1baK5cg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none Authentication-Results-Original: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; Received: from PA4PR08MB6320.eurprd08.prod.outlook.com (2603:10a6:102:e5::9) by PR3PR08MB5722.eurprd08.prod.outlook.com (2603:10a6:102:8f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.38; Tue, 4 May 2021 10:42:45 +0000 Received: from PA4PR08MB6320.eurprd08.prod.outlook.com ([fe80::c99f:671d:bb2c:f20b]) by PA4PR08MB6320.eurprd08.prod.outlook.com ([fe80::c99f:671d:bb2c:f20b%7]) with mapi id 15.20.4087.044; Tue, 4 May 2021 10:42:45 +0000 Date: Tue, 4 May 2021 11:42:44 +0100 From: Szabolcs Nagy To: Florian Weimer Cc: Wilco Dijkstra , Wilco Dijkstra via Libc-alpha Subject: Re: [PATCH 0/5] Added optimized memcpy/memmove/memset for A64FX Message-ID: <20210504104243.GY9028@arm.com> References: <20210430150127.GV9028@arm.com> <87eeer4woe.fsf@oldenburg.str.redhat.com> <20210504075643.GX9028@arm.com> <87a6pan6pr.fsf@oldenburg.str.redhat.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <87a6pan6pr.fsf@oldenburg.str.redhat.com> User-Agent: Mutt/1.9.4 (2018-02-28) X-Originating-IP: [217.140.106.55] X-ClientProxiedBy: LO4P123CA0399.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:189::8) To PA4PR08MB6320.eurprd08.prod.outlook.com (2603:10a6:102:e5::9) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from arm.com (217.140.106.55) by LO4P123CA0399.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:189::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend Transport; Tue, 4 May 2021 10:42:45 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8f583777-ecdf-43f1-7a37-08d90ee96c14 X-MS-TrafficTypeDiagnostic: PR3PR08MB5722:|DB7PR08MB4219: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: ZI0llUWqmCEwgge3kO3HrLJKnS5VLNhy9JpOh9hE6bowB68EdGz3Xri4RJ2mFy3gQ1Zo5vS8Zn5TWLSJhaFMeMKZxuSBOk8ZJ+BaiRSg7aUdGMCIreadJz6BN2/DmIsafUQ6wVM8hZWbjxuw9irocjXXYgT7+Fc8dO+PYMQI0WHduIpYTSIrDSFpTA2FH6aVUS77enGSFxEkHiaXmv9UdzL9YuMWY5AasG9uvDDtQryQzNHC2kwZ7BSLmZHeHfvQ6ncI4stsi4h2akmXbhORXmJtYgMa4QVGoPR7JFyYIfLDa1coUhM/qTceua6EVaL6GGrjCXoyf9D+3Z4A9DE7XF561FfflJj767qQmZ3jPczJt76/gm3sEgDSLo9jfG/QHCfoBozLyVcBN/fCsL1lN5DfbBKwtY3L/R/5dnj33fBxro3TwRg+qv/T3oO0dBVY1GNOSfoB3XA6IK8Jmskw0+wp3/Urxt39rrpAPKpwPsiYeRX0wQP5xrPaR8q8iaaEmcV0jbSrlqsuJmqeK9uELxaxfnhv4Pk7g8AC0JjHJBLAZ4kS5CvmYQnr1k/ehmSkbx1VpGDWLd9sWrsZ3WFn5P/ejTWO5OODrbSwWp5s+pKX/7wNH+pelQ2rPZgBoKU8Xo+W5ZHSpUtNOr0nlPp4I1wDxQuN26dFsrXbTKUbBhA= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR08MB6320.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(346002)(39850400004)(366004)(376002)(136003)(8936002)(8676002)(16526019)(8886007)(83380400001)(36756003)(186003)(38350700002)(54906003)(316002)(4326008)(478600001)(38100700002)(55016002)(956004)(2616005)(86362001)(2906002)(33656002)(26005)(66556008)(66476007)(7696005)(52116002)(66946007)(5660300002)(6916009)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?WkdzYkRLQjVXY3J1OXh3K1VKK3ZydmxiUEtoMjVPcGtzNERYTEFwWVhVOUV2?= =?utf-8?B?UktxSHBrM01TYmxkL1lOTlBBazB2aFAwSjBiVEhxK2VUQmZhazhnV0hFMENK?= =?utf-8?B?WVp0RWhLM1cySHlTL2RvQjBVWnJnNlVJcWRqb0tXRnBtb0VrU0ZZYUJNaExB?= =?utf-8?B?VDUzMEZsQ3JUMHZ0UVFYVGVMWktZSE5Ha3phYmR6RkZIeUk4SS9QMW96Rk5L?= =?utf-8?B?Z2NUUGtZeU1jNER2K1l1TGdQOXJyYnRWeFpJTnpuUFY0ZGNibWVTdGt2bC9M?= =?utf-8?B?NGFEejZvaTFhN2Q4S1I3VDRiR00zTXVBVStzTElzc0c3TFVyeUs3WHdTZkFP?= =?utf-8?B?M21rTm5kNDhTQytucnJodFNzcktQQkRFVVdibGhNakZ4eWxtallUR1ppVDBW?= =?utf-8?B?WW5sUmUydDdIOXZDRXAzNDhvSlZFV0VkMVhZbUNSNjY0TmtlSXFBZmdvcVNN?= =?utf-8?B?YTQzd1gvTlRaWGdrMU9vS01KSnhkNHhTWVhIRmg3K29wSEhidG5uNkwwSWJC?= =?utf-8?B?WkJnRjlpWTdxT0tUbzVWbnhnN3ZSY1hSZkZrVTVlUisrRFQxYWhuUUFiTktR?= =?utf-8?B?aGdqMFIvNFZvaTVDa1RmWWZnQVZ3ZXNZck9Ib2ZQWlUwOUs2MVpYY0N5Z3Ft?= =?utf-8?B?eUJicmsydVl1dHNlTktFSDU2aWNUS0ZiMk1oSHFSdERSUlNHaGVsakN2SGR1?= =?utf-8?B?Rmx0azJ5T3FaSWcyUjJWUUxGdmRUeFBZTTdmVGhmdUx6UTBGRFRzemtHTHNR?= =?utf-8?B?TzdIU2NaL2dzZ0p3YnVqSkRKS1QzeERZY0xYa3lBb1lCRGRFZ3NITVdDYkw5?= =?utf-8?B?RVpTY0k3Tk9YRUpkZ1NiZk1jNEtKaDFFMnZVSjh4R2ZWZkdZSUdYaythUkY2?= =?utf-8?B?Y0t6Mm5HaGM1MDBDL0ZmdGM4YWV5R3dia21UNG5uTGtPeWRsR3B4MzJlaDFG?= =?utf-8?B?VS9TV1RhMFo3MkFBc3lYOGR0UG5RSldSSXhydGFKd0NsemllVmZnUklRM1Bt?= =?utf-8?B?R203WEt4eUN1ZGdBdDBwcnp3eUFhQTFTT1NITzhwZ2xDWWxNaGVtYUQ0emV5?= =?utf-8?B?RDdNV2JUQ1Z4NmFRdU1RMHhLWkNQOER1b1UyaWhsR0xnY09OT0FqL3plcHpY?= =?utf-8?B?K254MVFXK2ZuVVozMVhZaG03MmtWNzdBR2NQbUt2OHl2RnVsanJWUE9qb0JI?= =?utf-8?B?ZHRhYlpLcU1FdWRBaGJWeVQrYkNwT0RtU0dPZVVMNUJZMTA2Z3lYSkxSN2ZO?= =?utf-8?B?ZXFmemloekhiY05GQ3NmeEFQT25DaE1MbWUxN0RvSmhicE1hZU1WUGhpRUdu?= =?utf-8?B?Yk1HeThnd1ZvV0dYRTVtZTNWUXVaMGxIU3VKOVRGSFhLYUNtNmxiZ01XZ2Qw?= =?utf-8?B?a2EyNkllY1lhbGpYR1V3SnR6UmowTWxSM2JDRGtIcStQUHVVNTJQVGg0SEZ2?= =?utf-8?B?SE5pUkkrdDN2eFVvaUpJbkJycTQ3NUp6dzdoeGlpYjBzZEJzczMwOE9waXVW?= =?utf-8?B?N0syV1JaS1d3elk1Q3RETGRsTWxUWEJOVjdNT3FMTllicG9qejZycytDNm1Q?= =?utf-8?B?cmhlNVZaVWFPaVRtWVdtYmJnTk9MeEcxTTZHODFNZE81Wkh1dHZLTkVpK25k?= =?utf-8?B?ZTlrYkl4R1JKZFYxZDFmQVlwZHNsbGdnUkJtTlZybEhuemFNTnlLeWZtamcv?= =?utf-8?B?RkRkL2VRNDJmRXR5ajdMNkx2Rjlaa3k4Ti9BVHlFR0NGS2twcXFwRGg2UGJO?= =?utf-8?Q?7UxdDTwhJxlTj8pFbV4Gb/YpGu4tqnjx1vtpjz6?= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5722 Original-Authentication-Results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 055a9c77-47bd-459d-e52e-08d90ee95a66 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kBHrwQpWthzauRQAfXHeHdBO08PltMjpVMmAZBylRuX7Gi/Ers52UBh2mK9zv8KZr+HlZXGqpQrMqOMlyilyO5br8Z+47zu9rzIe2BAzdGw3AGUqm+64qrUba79a7h6R3HJ9dJ8XO5HWjyonbmC/xhVWujK2AkBnFF4CQqaum4Ab0EOVUCnlGZQOU3NNvOOuJlG93eKXUUCdE9CO44CeBPSbFsoxwBC+p6K5hMoItGYVQxQyjfryVlN1EBgZiItNspsirBDUuHNfrl7HiqexTazhpu+DXBW/dVeFyc1Ndw3L6dNKCfds8F29TxT9ER1Xn4SzRwPqv23Szmvmxhqm8ei4F/RD4KoTGbTfe9DJAgzYbcZEq4k5A2laPBpyKCEuAamUFThzhyJnhNsrJ0W3eoHzluTYQeyOA7DPOxcghgcwum4bWpJikI6taRC/JJ40zYM1HDOpdGX3BwIC1nSyi/uoFdEt6QQAh9UuqBOmX3lVVVWOef0HP7ip0v8SbxwQqn1RrpNYYK48lDs4RbPSqLWN28qsjjysknLb0K3aIjHh6u/B/yb8f6u61vFFq4F9SvIbt/uQICzozRH4jrA2V3RZlvmyBMUQTs1++HcRN8JPPOj99cdYMstCcfANkUH1EYcMb9Xg7K1zADv41Ts5vsXLOHG6B+7MX3GxUL18V38= 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:(4636009)(346002)(396003)(136003)(376002)(39850400004)(36840700001)(46966006)(478600001)(8886007)(8676002)(82740400003)(81166007)(55016002)(5660300002)(2616005)(47076005)(336012)(956004)(7696005)(33656002)(70206006)(70586007)(83380400001)(26005)(1076003)(54906003)(36756003)(6862004)(356005)(316002)(186003)(8936002)(2906002)(16526019)(82310400003)(4326008)(86362001)(36860700001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2021 10:43:15.2536 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8f583777-ecdf-43f1-7a37-08d90ee96c14 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: AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB4219 X-Spam-Status: No, score=-7.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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, 04 May 2021 10:43:22 -0000 The 05/04/2021 12:17, Florian Weimer wrote: > * Szabolcs Nagy: > > > The 04/30/2021 16:40, Wilco Dijkstra wrote: > >> >> Well it doesn't seem to behave like a NOP. So to avoid slowing down > >> >> all string functions, bti c must be removed completely, not just from > >> >> A64FX memcpy. Using a real NOP is fine in all cases as long as > >> >> HAVE_AARCH64_BTI is not defined. > >> > > >> > I'm probably confused, but: If BTI is active, many more glibc functions > >> > will have BTI markers. What makes the string functions special? > >> > >> Exactly. And at that point trying to remove it from memcpy is just pointless. > >> > >> The case we are discussing is where BTI is not turned on in GLIBC but we still > >> emit a BTI at the start of assembler functions for simplicity. By using a NOP > >> instead, A64FX will not execute BTI anywhere in GLIBC. > > > > the asm ENTRY was written with the assumption that bti c > > behaves like a nop when bti is disabled, so we don't have > > to make the asm conditional based on cflags. > > > > if that's not the case i agree with the patch, however we > > will have to review some other code (e.g. libgcc outline > > atomics asm) where we made the same assumption. > > I find this discussion extremely worrisome. If bti c does not behave > like a nop, then we need a new AArch64 ABI variant to enable BTI. > > That being said, a distribution with lots of bti c instructions in > binaries seems to run on A64FX CPUs, so I'm not sure what is going on. this does not have correctness impact, only performance impact. hint space instructions are seem slower than expected on a64fx. which means unconditionally adding bti c to asm entry code is not ideal if somebody tries to build a system without branch-protection. distros that build all binaries with branch protection will just take a performance hit on a64fx, we cant fix that easily.