From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2072.outbound.protection.outlook.com [40.107.21.72]) by sourceware.org (Postfix) with ESMTPS id 91B833858C74 for ; Fri, 22 Jul 2022 08:41:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 91B833858C74 ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=NtOpRYJHKsA+cpVcE/MjX1pjR4ImawsGCa3bnR2+JGgElbLkVehcTtOkbCztVa3rLPf954yImWnuC3FkXJ/VF5nI1/FtwyYRtaKSKQgzeY79Ust6tO3CGmLL5n47qhNVD54ttYZa6Hk9mMPf24+8+A0K/+ceSc6ZN2pfCBalXQLdh9/zf7RKdZRkvCgpEl/e1jtkRScdliCAuIWNZWgTOZ0y+gROVvsUMIkcRnIUsu2eEqqN+toXozoMBWtOV/Pn+X0K2d68wi93PFpTM+ZSlV9unY1UBpEfFXB47cGLEwEddILAPY5YYNZsw9JjjB3J3OOlkH7WG/ulYkq87TOEBg== ARC-Message-Signature: i=2; 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=LdemhbrQcHWuklk0x7d1z4/ozYmIxSZ04VtiuTpbMuU=; b=DT7GEN9fLPskEKgTLp6wQtvz/VGIWNq7t2mMw/fEj2d9WtQd3SlntD8wQ+ROSqKNnuwpEeE1lGpe/Im5NMZSHrZJvbF0xcgwBd78CBF9B3sT7W16fqWD4VfKY28b4JZdI0oLEza+UXrN7ftvHM/PSlo+Ij5YK4YzfEFM59v2P/fqLMH/TJaXmu2qX6elJc5pGRQSwaYeV0c8Lx5Yg6KccYjbXve4cg3yMOkbIDwJ1bQdxc0XAqzxmp43IT8IjlHd+bXrovOMRQTK0h0gSDddG4YEaHR7KqUU/D79YsdurI7XqIIQ91L2+EUy5K7fTNOX6+q55WlczCAn5Va4/Y8ZQA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) Received: from FR0P281CA0006.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:15::11) by AS8PR08MB6646.eurprd08.prod.outlook.com (2603:10a6:20b:350::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.19; Fri, 22 Jul 2022 08:41:04 +0000 Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com (2603:10a6:d10:15:cafe::fb) by FR0P281CA0006.outlook.office365.com (2603:10a6:d10:15::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.1 via Frontend Transport; Fri, 22 Jul 2022 08:41:03 +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; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.17 via Frontend Transport; Fri, 22 Jul 2022 08:41:03 +0000 Received: ("Tessian outbound 73dd6a25223d:v123"); Fri, 22 Jul 2022 08:41:03 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 792a4e5c7fdc970a X-CR-MTA-TID: 64aa7808 Received: from 76309f5ea5de.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id D2F17DDC-1590-4E87-BBFF-47CA62A975BA.1; Fri, 22 Jul 2022 08:40:56 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 76309f5ea5de.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 22 Jul 2022 08:40:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=je6kVgjGCZpKD4ZJQLwK1xrbbSGCy/sEpD6lFMV+y9IQHHnMl94qxGSruVz5JpdUTPc/uwYlS2JLqyHvOL+AG8DGhqJcJ2MZSkJA+i+VQLFIzIpFy6DAVwbafST3Vw+5eApElxwKDLEJ9xA1MwRmCDdW+3Joy18Yksy0t6d3TAoLGgbafHqXZ+663tH5CS0ifwaPv8vGspaUVTbd2s/k6+6ViRfLRhjBnvE70xtkNvVAo8/c/fZFxqbC6HpO0UPcLZ/XX5EcFl72RfVFPbcET9uS4Rbxz6J9dXOPlNddr2aaiJVGzCSz2YMEET8wfeMggbB4/f+n0PCOkdaPykaIdA== 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=LdemhbrQcHWuklk0x7d1z4/ozYmIxSZ04VtiuTpbMuU=; b=jO1n+j3Hzd77ClKW3TCBVQSUDg+QllwvJh2fL4fWQnaRECRsvS6DhXp+iSNtw/hUS/pGV3wXQk4Je4jvftfjpGFN2WuXH+peLqYMRc3RTUSBe6JOI4CMssGHpQ6VxwmH9eBFFWkoqevPAZWARgRMBMPT1/bFw03/VcV1V4JJa4eUfHS8tWvOalywzDL/u1DAxNPcm+z9Ekdp7mJzWUag1bkBYXYYqwx7sRlY7OUSlJmc1hefC7tQCgwwYsMhQB1UHKALUEruI9lGQSOlAvhpqsLFVOpp2ZGWp/nfcVK1oEvgXmQT1OBXasuGTAeduL/GUiIDoroTc4luZnL8y6NDZw== 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 Received: from GV1PR08MB7681.eurprd08.prod.outlook.com (2603:10a6:150:60::21) by DBAPR08MB5768.eurprd08.prod.outlook.com (2603:10a6:10:1b1::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.19; Fri, 22 Jul 2022 08:40:53 +0000 Received: from GV1PR08MB7681.eurprd08.prod.outlook.com ([fe80::2dfe:b461:128a:4543]) by GV1PR08MB7681.eurprd08.prod.outlook.com ([fe80::2dfe:b461:128a:4543%8]) with mapi id 15.20.5458.019; Fri, 22 Jul 2022 08:40:53 +0000 From: Daniel Kiss To: =?utf-8?B?TWFydGluIExpxaFrYQ==?= CC: "gcc@gcc.gnu.org" , Pavel Iliin Subject: Re: [RFC] Function Multi Versioning on Arm Thread-Topic: [RFC] Function Multi Versioning on Arm Thread-Index: AQHYmpJP27YNZBWMIUGX7D5BDWdZFa2Fd8uAgAOnaACAAPEjAIAACAaA Date: Fri, 22 Jul 2022 08:40:53 +0000 Message-ID: <5BCE75F6-5FBB-4FDF-AAB4-A2898147B66A@arm.com> References: <45073915-9D33-4097-9CFD-FFBCB9CE1A44@arm.com> <285FC35B-89C4-405B-AA87-21E838B58F60@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3696.100.31) 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: d178626c-4179-487e-6dec-08da6bbde972 x-ms-traffictypediagnostic: DBAPR08MB5768:EE_|VE1EUR03FT059:EE_|AS8PR08MB6646:EE_ x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: GWumV+xkSyMmeqeFMlfHeAPi+WO20xBqDuf8BZitmyofVhmsXSJloQe8kE4SY/HWuAwM+uhkNc56g8anYLNAGoGcIfRw7BUc7Bg8hqCHhGowmo1C68S4NTrY+2mCgs/AZhNC3cAdETdNIQu5AygQzKZInhS/0KLthquqHtJpl//EzoFsgk7sWNzHsHKSNMSAvQOPtrDP2TMFIBA3/ZurWxG2RrSRPvPF8ZxzI7hbWRlB6xTChvmWuGzDK2BI7s27RH67S2Rwy5qqiPF4KOQ+vGkVLBQ+351egmdoRsAjHk6bSzNITL2kfM2YaydBe5oc1nYAt8fwtB81UOFYeKzR+ahm/t5Ov7Sv/6Oi5xNyZTekA32JvFogObYFcd2CDIU7lAusArZJeiFMVw/OzkCmVZbr/J9VZ2dMza3ySVvbBgsZsfkXLllr3LYOIX6wbFI8612KtYQ+bhuTjf707bo2xecUIeNsOMMGOyM2PckClipKbFgZHSP+rfs7PdPs9Xp3HneqERUN3WDDFV/257blTpmIq2lusmAebDYRlfgzIfrARa6IAeLCwgeW5C5lUei/MiNLYwFd4uSMLVcSUbX6inJ8p92JscDUXX+9kVJ9RLPbSQdC0gF/Wc1fokS5WuWE5zSTAM5Ig3W2QdjhAMXLlspkMc8i3Qg0/hCZ8EAGWG+xDqAyUveGrxSw3TeNeuN7zG8cjI5gKgIEKQl53Zd9MV6kEnBVLl2WdFJAC9hj4wUB2uAw6bdprcWiUsa/2AABIl0FNCggjitGpMPZWj2U8Pd2h70JosUECLwctYOyKpS5g++4h4F422nJHeIayJv7BDHWmLioyFgLSUGqVE/ICGsU3SbFD7sf8eic/7o3HhVSIVBs91uh90waOb+iiVpy1ByyUzn4lYycBv3nUhOm0g== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:GV1PR08MB7681.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(39860400002)(366004)(376002)(396003)(346002)(136003)(8936002)(36756003)(2906002)(186003)(66556008)(66446008)(66946007)(64756008)(66476007)(91956017)(41300700001)(76116006)(83380400001)(966005)(8676002)(316002)(5660300002)(6486002)(2616005)(166002)(6506007)(122000001)(38070700005)(53546011)(6916009)(478600001)(54906003)(86362001)(33656002)(21615005)(4326008)(71200400001)(66574015)(26005)(6512007)(38100700002)(45980500001); DIR:OUT; SFP:1101; MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5768 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: VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 47844f4c-40d6-4a6e-4ed7-08da6bbde385 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: MmEyoW4ufrnQ5yWEcBRmL0gYEgh1yYS7P4VYxe/BKWsPlisnUH4vdvtsUvceQGOcRnaaf3oRjxHkvbEp/LOTExoIuEUW8VxOgXDTiADDKlERracGABO2M4uH9itmPZy/fESuYcETMVay9xpLW8tDZ+bpzR1Y2BbCDNGPLoOzP0Sava3kwQh7o+Y5TG7BhVW5juXnoJII0v+wxrS6/0o6vaD6umsADq7WgQiikS1WfuXTzeC9XP3Qgtzbo3nifpsVIb/y6LDcyUUmijLkIVehjX0HYnRbrOgN/BkbchlzPaoRHgKv7UkoQ7rvFK5xlrxL85/DZjGSFx6C0QojRJy106QDhlnY4csAlsE0Thql7HB95nLjfWFAA9563eRtGHbVDyFUJnef1P0naA1t45idyJ3BLYbJhZEKtDECnr4PFn3stFexVWi0V7ZvRshtqQAHL9rv0QCyvFL+u+BGgzeoRdxPIpLA+bTlrrbJt77ADwn9xVH5feOIy0wEACa9dINGobUMkcwV9ZNP6Xckesr2eUB8NdK9Vm9dQoP7IfVB9bbrxJdjQ3wCZHNB+i/SlyJOPtrP9kL8g9uO4Nw5v6cXQE9fsl9u8jkd5ezjM+OsNxaQEMreRp9r0/b21nHW2VX/gX0of51eqoqVu5Z3u9Xg/1hKA/XJGKFAD8gq0NRrUu2QnJxOkFMCLD0QRqoYPgPMj5CPkjM704YTP2Y0Y3x+0UrbDIaizLUctB345UwfBHvZgAyX0C7klL27Me0NVhmvOHyeG/b3xngdIQPQMmcobLGZwYjyAuq9gV4FfsvVqqVIICynAiysx6BsrAinYlE1sP+D0ca74RZlBtr+1mZB5CSPowgWgmnu4mvjRSe23cbuHMvjFXAHT7rCjbDEMULd 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:(13230016)(4636009)(396003)(136003)(39860400002)(376002)(346002)(40470700004)(46966006)(36840700001)(5660300002)(478600001)(86362001)(40480700001)(8936002)(6862004)(2616005)(6486002)(966005)(66574015)(47076005)(336012)(33656002)(40460700003)(41300700001)(2906002)(6512007)(30864003)(83380400001)(26005)(53546011)(33964004)(186003)(6506007)(36756003)(21615005)(82310400005)(70586007)(356005)(70206006)(45080400002)(36860700001)(82740400003)(54906003)(81166007)(166002)(4326008)(8676002)(316002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jul 2022 08:41:03.4365 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d178626c-4179-487e-6dec-08da6bbde972 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: VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6646 X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, HTML_MESSAGE, KAM_DMARC_NONE, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gcc@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jul 2022 08:41:11 -0000 DQoNCk9uIDIwMjIuIEp1bCAyMi4sIGF0IDEwOjEyLCBNYXJ0aW4gTGnFoWthIDxtbGlza2FAc3Vz ZS5jejxtYWlsdG86bWxpc2thQHN1c2UuY3o+PiB3cm90ZToNCg0KT24gNy8yMS8yMiAxOTo0OSwg RGFuaWVsIEtpc3Mgd3JvdGU6DQpIZWxsbywNCg0KVGhhbmtzIGZvciB0aGUgcXVpY2sgcmVwbHks IHNlZSBtaW5lIGlubGluZS4NCk9uIDIwMjIuIEp1bCAxOS4sIGF0IDEyOjAxLCBNYXJ0aW4gTGnF oWthIDxtbGlza2FAc3VzZS5jejxtYWlsdG86bWxpc2thQHN1c2UuY3o+PiB3cm90ZToNCg0KT24g Ny8xOC8yMiAxMjozNiwgRGFuaWVsIEtpc3MgdmlhIEdjYyB3cm90ZToNCkhlbGxvLA0KDQpXZSBh cmUgZ29pbmcgdG8gYWRkIEZ1bmN0aW9uIE11bHRpdmVyc2lvbmluZyBbMV0gc3VwcG9ydCB0byBB cm0gYXJjaGl0ZWN0dXJlcy4NClRoZSBzcGVjaWZpY2F0aW9uIGlzIG1hZGUgcHVibGljIGFzIGJl dGFbMl0gdG8gZW5zdXJlIHRvb2xjaGFpbiB0aGF0IGZvbGxvd3MgQXJtDQpDIExhbmd1YWdlIEV4 dGVuc2lvbiB3aWxsIGltcGxlbWVudCBpdCBpbiB0aGUgc2FtZSB3YXkuDQoNCkEgZmV3IHR3ZWFr cyBjb25zaWRlcmVkIHRvIG1ha2UgdGhlIGRldmVsb3BlcnMnIGxpZmUgZWFzaWVyLg0KU2luY2Ug dGhlIGB0YXJnZXRgIGF0dHJpYnV0ZSBpcyB1c2VkIHdpZGVseSBvbiBBcm0sIHdlIHdvdWxkIGxp a2UgdG8gaW50cm9kdWNlIGENCm5ldyBhdHRyaWJ1dGUgYHRhcmdldF92ZXJzaW9uYCB0byBhdm9p ZCBjb25mdXNpb24gYW5kIHBvc3NpYmxlIGRlcGxveW1lbnQNCnByb2JsZW1zLiBUaGUgYHRhcmdl dF9jbG9uZXNgIGF0dHJpYnV0ZSB3aWxsIGJlIHN1cHBvcnRlZCB0b28uIEFsc28gdGhlIOKAnGRl ZmF1bHTigJ0NCnZlcnNpb24gdG8gYmUgbWFkZSBvcHRpb25hbC4NCg0KV2UgYXJlIGxvb2tpbmcg Zm9yIGZlZWRiYWNrIG9uIHRoZSBzcGVjaWZpY2F0aW9uIChyZXBseSwgZ2l0aHViIHdvcmtzIHRv bykuDQoNClRoYW5rcyBzbyBtdWNoLA0KRGFuaWVsDQoNClsxXSBodHRwczovL2djYy5nbnUub3Jn L29ubGluZWRvY3MvZ2NjL0Z1bmN0aW9uLU11bHRpdmVyc2lvbmluZy5odG1sDQpbMl0gaHR0cHM6 Ly9naXRodWIuY29tL0FSTS1zb2Z0d2FyZS9hY2xlL2Jsb2IvbWFpbi9tYWluL2FjbGUubWQjZnVu Y3Rpb24tbXVsdGktdmVyc2lvbmluZw0KDQoNCkhlbGxvLg0KDQpUaGFua3MgZm9yIHdvcmtpbmcg b24gdGhlIGZlYXR1cmUsIGl0IHdpbGwgYmUgbmljZSB0byBjb3ZlciB0aGUgZ2FwIGluIGJldHdl ZW4geDg2XzY0IGFuZCBwb3dlcnBjLA0Kd2hpY2ggaW1wbGVtZW50IHRoZSBGTVYgZmVhdHVyZS4N Cg0KQXMgdGhlIHBlcnNvbiB3aG8ncyBiZWVuIGludm9sdmVkIHdpdGggdGhlIGN1cnJlbnQgTVZD IGNvZGUgaW4gdGhlIEdDQywgSSBoYXZlIGEgZmV3IGNvbW1lbnRzL3F1ZXN0aW9ucw0KYWJvdXQg aXQ6DQoNCjEpIGJvdGggaTM4NiBhbmQgUG93ZXJwYyBhbHNvIGFsbG93IHNwZWNpZnlpbmcgYW4g ZXF1aXZhbGVudCB0byAtbWFyY2ggKGxpa2UgYGFyY2g9YmR2ZXIyYCksDQppbiBBcm0gY2FzZSBp dCBzZWVtcyB0byBtZSBvbmx5IGluZGl2aWR1YWwgZmVhdHVyZXMgYXJlIGNvbnNpZGVyZWQNCkFy bSBhcmNoaXRlY3R1cmUgdmVyc2lvbiBpcyBub3QgZGVmaW5pdGUgZW5vdWdoIGluIHRoaXMgY2Fz ZSBiZWNhdXNlDQpjZXJ0YWluIGZlYXR1cmVzIGFyZSBvcHRpb25hbCBvbiBhIGdpdmVuIHZlcnNp b25zIGFuZCBtYXkgYmFjayBwb3J0ZWQgdG8gb2xkZXIgdmVyc2lvbnMuDQpJbXBsZW1lbnRhdGlv biBuYW1lIG9mIGEgY29yZSBhbHNvIGNvdWxkIGJlIG1pc2xlYWRpbmcgaW4gbW9zdCBvZiB0aGUg Y2FzZXMuIEFuZCB0b28gbWFueSBvdXQgdGhlcmUgaWYNCmFsbCBpbXBsZW1lbnRhdGlvbiBpcyBj b25zaWRlcmVkIG5vdCBqdXN0IEFybeKAmXMgQ29ydGV4IGNvcmVzLg0KQWxzbyB0aGUga2VybmVs IHN1cHBvcnQgdmFyaWVzIHJlZ2FyZGxlc3MgdGhlIGFjdHVhbCBoYXJkd2FyZSwgZmVhdHVyZXMg Y2FuIGJlIGRpc2FibGVkIGJ5IHRoZSBmaXJtd2FyZS9PUy4NCkkgdGhpbmsgZGV2ZWxvcGVycyB0 YXJnZXQgYSBnaXZlbiBmZWF0dXJlIGluc3RlYWQgb2YgYSBnaXZlbiB1YXJjaCBtb3N0IGNhc2Vz Lg0KDQpTdXJlLCB0aGF0IG1ha2VzIGZ1bGx5IHNlbnNlIHRvIG1lIQ0KDQoNCg0KMikgYWJvdXQg J3RhcmdldF92ZXJzaW9uJyBhdHRyaWJ1dGUgLSBJIGxpa2UgdGhlIGlkZWEgYXMgb25lIGNhbiBo YXZlIGEgY29tcGxldGVseSBpbmRlcGVuZGVudA0KZnVuY3Rpb24gaW1wbGVtZW50YXRpb24gb3B0 aW1pemVkIGZvciBhbiBJU0E7DQpub3RlIGl0J3MgdmVyeSBjbG9zZSB0byAndGFyZ2V0JyBhdHRy aWJ1dGUgKHN1cHBvcnRlZCBpbiBDKyspLCB3aGVyZSBvbmUgbmVlZHMgdG8gcHJvdmlkZQ0KYSBy ZXNvbHZlciBhbmQgaGF2ZSB0aGUgcHJldHR5IHNhbWUgZnVuY3Rpb25hbGl0eSAoc2VlIGUuZy4g Z2NjL3Rlc3RzdWl0ZS9nKysudGFyZ2V0L2kzODYvbXYxLkMpLg0KSG93ZXZlciwgdGhlIGZlYXR1 cmUgZG9lcyBub3Qgd29yayBpbiBDIGFuZCB5b3Ugd2lsbCBoYXZlIHRoZSB2ZXJ5IHNhbWUgcHJv YmxlbSB3aXRoIHRhcmdldF92ZXJzaW9uDQphdHRyaWJ1dGUgKG11bHRpcGxlIGZ1bmN0aW9ucyB3 aXRoIHRoZSBzYW1lIGRlY2xhcmF0aW9uKToNCg0KbXYxLmM6NzY6MTogZXJyb3I6IHJlZGVmaW5p dGlvbiBvZiDigJhmb2/igJkNCjc2IHwgZm9vICgpDQp8IF5+fg0KSW4gb3VyIGNsYW5nIGltcGxl bWVudGF0aW9uXHByb3RvdHlwZSBzdWNoIGEgdXNlIGNhc2UgaXMgc3VwcG9ydGVkLiBUaGUgZ29h bCB3YXMgdG8gYWJsZSB0byB3cml0ZSBsaWtlIHRoaXMgaW4gQw0KLyogZXhpc3RpbmcgY29kZSov DQpleHRlcm4gaW50IGZvbygpOw0KaW50IGZvbygpe30NCi8qIGFkZGl0aW9uICovDQojaWZkZWYg X19BUk1fRkVBVFVSRV9GVU5DVElPTl9NVUxUSV9WRVJTSU9OSU5HDQpfX2F0dHJpYnV0ZV9fKCh0 YXJnZXRfdmVyc2lvbijigJwuLi4iKSkpDQppbnQgZm9vKCl7fQ0KI2VuZGlmDQoNCkkgc2VlLCBz byB0aGVuIGl0J3MgZ29pbmcgdG8gcmVxdWlyZSBhIG1vcmUgd29yayByZWdhcmRpbmcgdGhlIEMg ZnJvbnQtZW5kLiBNYXliZSB3ZSBzaG91bGQgZW5hYmxlIHRoZSBzYW1lIHdheSB0aGUgInRhcmdl dCINCmF0dHJpYnV0ZSBmb3IgQy4NCklNSE8gaXQgd291bGQgbWFrZSBzZW5zZSBpZiB0aGUg4oCc ZGVmYXVsdCIgYXR0cmlidXRlIGJlY29tZXMgb3B0aW9uYWwgZm9yIOKAnHRhcmdldOKAnS4NCg0K DQoNCnNvIGFuIGV4aXN0aW5nIGNvZGViYXNlIGNhbiBiZSBleHRlbmRlZCB3aXRob3V0IGJyZWFr aW5nIGl0IGV2ZW4gZm9yIG9sZCBjb21waWxlcnMsIHdpdGhvdXQgaGVhdnkgY2hlY2tzIGZvciBh dHRyaWJ1dGUgc3VwcG9ydC4NCg0KWWVwLg0KDQoNCjMpIElmIHlvdSB3aWxsIGltcGxlbWVudCAn dGFyZ2V0X3ZlcnNpb24nIGF0dHJpYnV0ZSwgSSB3b3VsZCBsaWtlIHRvIHNlZSBpdCBhdmFpbGFi bGUgYWxzbyBmb3IgdGhlDQpleGlzdGluZyB0YXJnZXRzIHN1cHBvcnRpbmcgTVZDDQpZZXMsIHRo aXMgaXMgdGhlIHBsYW4gaWYgb3RoZXIgdGFyZ2V0IG1haW50YWluZXJzIHdpbGwgYWNjZXB0IGl0 Lg0KSU1ITyBhbGwgc2VtYW50aWNhbCBkaWZmZXJlbmNlcyB3b3VsZCB3b3JrIGZvciBhbGwgdGFy Z2V0cy4NCg0KU3VyZSENCg0KDQo0KSBBIHNtYWxsIG5vdGUgYWJvdXQgdGhlIG1hbmdsaW5nLCB0 aGUgZXhpc3RpbmcgaTM4NiBuYW1pbmcgc2NoZW1lIGxvb2tzIGxpa2U6DQoNCi4uLg0KX1ozZm9v di5hdngyX3Nzc2UzDQouLi4NCg0KNSkgQ2FuIHlvdSBwbGVhc2UgZGVmaW5lIGhvdyB3aWxsIHlv dSBldmFsdWF0ZSBwcmlvcml0aWVzIGZvciBhIHNpdHVhdGlvbiB3aGVyZSBtdWx0aXBsZSBmZWF0 dXJlcw0KYXJlIHVzZWQgKGUuZy4gZG90cHJvZCtzbSk/DQoNCk5vdGUgd2UgZmFjZSB0aGUgdmVy eSBzYW1lIHByb2JsZW0gb24gaTM4Niwgd2hlcmUgaXQncyB2ZXJ5IGhhcmQgdG8gc3BlY2lmeSBh IHByaW9yaXR5DQpmb3IgdGhlIGZhbWlseSBvZiBhdng1MTIgZmVhdHVyZXMuIFRoYXQgc2FpZCwg YW4gb3B0aW9uYWwgcHJpb3JpdHkgc3BlY2lmaWVyIG1pZ2h0IGJlIHBvc3NpYmxlLg0KQUNMRSBw cm92aWRlcyBhIHRhYmxlIG9mIHByaW9yaXRpZXMgZm9yIGdpdmVuIGZlYXR1cmUgYW5kIGEgc2lt cGxlIGFsZ29yaXRobSBob3cgdG8gY2hvb3NlLg0KDQpWZXJzaW9uIHdoZXJlIHRoZSBtb3N0IGZl YXR1cmVzIGFyZSByZXF1ZXN0ZWQgd2lsbCBiZSBwaWNrZWQsDQoNCk9rIQ0KDQp0aGVuIHRoZSBv bmUgd2l0aCB0aGUgaGlnaGVzdCBwcmlvcml0eS4NCmluIGNhc2Ugb2YgKGRvdHByb2Qrc20sIHN2 ZSkgc2V0IHRoZSBkb3Rwcm9kK3NtIHdpbGwgYmUgc2VsZWN0ZWQganVzdCBiZWNhdXNlIGl0IGlz IG1vcmUgc3BlY2lmaWVkLCBldmVuDQpzdmUgaGFzIGhpZ2hlciBwcmlvcml0eS4NCg0KV2UgY29u c2lkZXJlZCB0aGUgb3RoZXIgb2YgdGhlIGF0dHJpYnV0ZXMgaW4gdGhlIHNvdXJjZSwgYnV0IHRo YXQgbWlnaHQgYmUgcXVpdGUgcHJvYmxlbWF0aWMgdG8gcHJlc2VydmUgZHVyaW5nDQpjb21waWxh dGlvbi4NCg0KV2UgY2FuIHN0YXJ0IHdpdGggdGhhdCBhbmQgYWRkIHByaW9yaXRpZXMgbGF0ZXIg aWYgcmVhbGx5IG5lZWRlZC4NCg0KDQpBIG5ldyBhdHRyaWJ1dGUgb3IgdmFyaWFudCB0aGF0IHBy b3ZpZGVzIHByaW9yaXR5IGNvdWxkIHdvcmsgdG9vLCBqdXN0IHNvIGZhciB0aGUgbmV3ZXIgZmVh dHVyZSB1c3VhbGx5IGEgYmV0dGVyDQpjaG9pY2UsIGFuZCB0aG9zZSBnb3QgaGlnaGVyIHByaW9y aXR5Lg0KDQoNCjYpIE5vdGUgdGhhdCBhcyBvcHBvc2VkIHRvIGkzODUgYW5kIFBvd2VycGMsIHdl IGRvbid0IGFsbG93IGEgY29tYmluYXRpb24gb2YgSVNBIGZsYWdzIGZvciB0YXJnZXRfY2xvbmUN CmF0dHJpYnV0ZSAobGlrZSBzc2UyK2F2eDUxMmYpLg0KTm90ZWQsIEkgdGhpbmsgaW4gY2FzZSBv ZiBBcm0gaXQgbWF5IG1ha2Ugc2Vuc2UgdG8gc3VwcG9ydCBpdC4NCg0KNykgRk1WIG1heSBiZSBk aXNhYmxlZCBpbiBjb21waWxlIHRpbWUgYnkgYSBjb21waWxlciBmbGFnLiBJbiB0aGlzIGNhc2Ug dGhlIGRlZmF1bHQgdmVyc2lvbiBzaGFsbCBiZSB1c2VkLg0KDQpJIHdvdWxkIGxpa2UgdG8gc2Vl IHRoZSBmdW5jdGlvbmFsaXR5IGFsc28gdGFyZ2V0IGFnbm9zdGljLg0KU3VyZSwgSSBhZ3JlZS4g dGhlIHByb3Bvc2VkIGZsYWcgaXMgLW1uby1mbXYgKC1tZm12IGRlZmF1bHQgb24pLg0KQWxzbyBt YXliZSB0aGUgZmVhdHVyZSBpbmRpY2F0aW9uIGRlZmluZSBfX0FSTV9GRUFUVVJFX0ZVTkNUSU9O X01VTFRJX1ZFUlNJT05JTkcgY291bGQgYmUganVzdA0KX19GRUFUVVJFX0ZVTkNUSU9OX01VTFRJ X1ZFUlNJT05JTkc/DQoNCkkgd291bGQgdGFrZSBhIG5hbWUgaW5zcGlyYXRpb24gZnJvbToNCmh0 dHBzOi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9jcHAvQ29tbW9uLVByZWRlZmluZWQtTWFjcm9z Lmh0bWwNCg0Kc28gd2hhdCBhYm91dCBzb21ldGhpbmcgbGlrZSBfX0hBVkVfRlVOQ1RJT05fTVVM VElfVkVSU0lPTklORyA/DQpSaWdodCwgX19GRUFUVVJF4oCmIGlzIGZyb20gdGhlIEFDTEUgc3R5 bGUgc28gX19IQVZFX0ZVTkNUSU9OX01VTFRJX1ZFUlNJT05JTkcgaXMgYmV0dGVyIGZvciB0YXJn ZXQNCmFnbm9zdGljIGZlYXR1cmUuDQpJ4oCZbGwgd2lsbCB1cGRhdGUgQUNMRSB3aXRoIGFsbCBm ZWVkYmFjayB0aGF0IEkgZ290Lg0KDQpDaGVlcnMsDQpNYXJ0aW4NCg0KDQoNCkFueXdheSwgbG9v a2luZyBmb3J3YXJkIHRvIHRoZSBBcm0gaW1wbGVtZW50YXRpb24uDQpIb3BlIHRoZSBjb21tZW50 cyBhcmUgY29uc3RydWN0aXZlLg0KVGhhbmtzLCBoZWxwIG1lIGEgbG90Lg0KDQoNCkNoZWVycywN Ck1hcnRpbg0KDQo=