From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10069.outbound.protection.outlook.com [40.107.1.69]) by sourceware.org (Postfix) with ESMTPS id 7CE903858C62 for ; Wed, 21 Sep 2022 09:08:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7CE903858C62 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=no4vLx816Gw4QhH1KCWy7X4wWAe+vaIXBkX+JJmAgjEKPxY5/+x5qGEZWhu9hIad1WsW1ouR71z8VArmdyCD3ujJyMHe+YtLzzSyphw4JUBLoh8FPCqOjJv4nKHCHN2O12fXKuM+moY0J+s7jXULvB20+vl8fyX8805V4P7p+8WuyoObpvTYAOl8dcYLqiePwz9jk8bBS2frcCLNJqwrba/ouzAL2nfcFzeKz08+8CW92qi2rSHEJF+gvryb+HS52xLNeaFrPqkp7fI/gO49UOr03ex09X+92Muzg8dJrxOmNGUW8krpkahZO6t+q9D/MlB10PykUh6mff7U+vAUIA== 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=bdD5hYYx3CdQJ0vEAMRnEMwTa4Lo3d3/eN3QQ854g2s=; b=YaWx5zsYw9j94Ujn86qkQnS/prAyjxOzhRVFuChEFVa9jQNCKr6v74HSCHbECyKzyXkjbrbnLYaoG2d/FkWlOk4EXuEL/FwlTsg/oOtM+8XKG5JGnaI8IVOwCmNMRgo+rN6jN4kIjsUgLl/zNzqCcBT4irbVyAwzB8h+GCiTUiY9iZhXu/xC+Khm26EqF23iBRsZQxWd4K+G+FPM6tA8RAbiRuooePAvrZfA+ejImhUafIxT56o3n2Up0dzPTb+JgXMLNuvsdtIvf2sxbYNa8Jk7hTgNqydOCRmaGemIOVQSlC8wWSOc3PRbHahFu/e5/ukEp3/+NQpuUOtF3lYcEg== 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]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bdD5hYYx3CdQJ0vEAMRnEMwTa4Lo3d3/eN3QQ854g2s=; b=RN+v1d9VfqbotDrqG0qRvubdjF4RiuT6j2wfkkAGSPhixbvbuwjdCpn/m0zESaKnGKsGXHaCSa9LHaxhUYeTH4Cd9YCsh3JvCoHm6wkijZ/zwmmB9Ks1tOXUbCG/KfS1ehSLhk+X5iwiKLJV1QV0Ys1z57jK+tKUdaG4cdjeFcc= Received: from AM6P192CA0060.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:82::37) by AS4PR08MB8094.eurprd08.prod.outlook.com (2603:10a6:20b:589::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5632.21; Wed, 21 Sep 2022 09:08:40 +0000 Received: from VE1EUR03FT032.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:82:cafe::60) by AM6P192CA0060.outlook.office365.com (2603:10a6:209:82::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5632.14 via Frontend Transport; Wed, 21 Sep 2022 09:08:39 +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 VE1EUR03FT032.mail.protection.outlook.com (10.152.18.121) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5654.14 via Frontend Transport; Wed, 21 Sep 2022 09:08:39 +0000 Received: ("Tessian outbound 88978e6d60db:v124"); Wed, 21 Sep 2022 09:08:38 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: d52cad82538ce779 X-CR-MTA-TID: 64aa7808 Received: from dac8de3b00a3.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 34606656-2457-4313-BCC1-80C235DB6B5E.1; Wed, 21 Sep 2022 09:08:31 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id dac8de3b00a3.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 21 Sep 2022 09:08:31 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BrZuz6F9Op/Mk9Vadh1xhnGRvHQGGf2HviyHrwZ9SE+bl6Dg2LbHoD5S64eEIdznqHjDHjIlYY1BZMuOCESwydXUuclksb4DbjFc4UFUvPiy4mXsw8KPRDVNHwEZzvh3H/44z3ySczJP8+r0SHr4MaXgBmxhwgereVzqNEQrUog19WmM8Jj8fD1m7uPdKyFhM4S0AIAFVL7LhSMOhML8frqeXd+YuxzpgquUK1aQkBIoD7zk5tk9Or4USxQ3Rde86cwjuBox3bMuWD4oycquK/ShxZGb+KFmW7JkTMGz1Me6UPz4jRvtOvDp8MjwC247Y1WL7vbpSeJzW04fwtVsKA== 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=bdD5hYYx3CdQJ0vEAMRnEMwTa4Lo3d3/eN3QQ854g2s=; b=lAekHPs2v9yrNmpADpiox/NkkNYmK8uCsw4NS5CQ9CLqoJB0nSELX5ogsJbjSUDnqF/Pm/fGkeGfJXzI3d6Ap/q9eKdwXSuHnij57mPU/XyIORotzn3Xq8FmKp0Afio9tm91OMaLpSIes254iPAhVjpK6NBYye/BG0NVk0RlDTutc/aqhLPHnKW+GBnaLSOd+JDgOWbhzM+vtaPafBS6QvmAb1rUFqIWe9bi5aUKjhTDsobHAcPhYe/Pp1bp9oDub+Zn2ti0j9pIcM/VHwCjf7sp5591mhLFyC0ORRRtGl/O/pZLYe44FlNWjM+2VPp3xPZkbkYuAc+VZhJS0ci4gw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bdD5hYYx3CdQJ0vEAMRnEMwTa4Lo3d3/eN3QQ854g2s=; b=RN+v1d9VfqbotDrqG0qRvubdjF4RiuT6j2wfkkAGSPhixbvbuwjdCpn/m0zESaKnGKsGXHaCSa9LHaxhUYeTH4Cd9YCsh3JvCoHm6wkijZ/zwmmB9Ks1tOXUbCG/KfS1ehSLhk+X5iwiKLJV1QV0Ys1z57jK+tKUdaG4cdjeFcc= Received: from PAXPR08MB6926.eurprd08.prod.outlook.com (2603:10a6:102:138::24) by PA4PR08MB5920.eurprd08.prod.outlook.com (2603:10a6:102:ea::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5654.14; Wed, 21 Sep 2022 09:08:29 +0000 Received: from PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::f0a0:ab7d:81bb:aff8]) by PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::f0a0:ab7d:81bb:aff8%7]) with mapi id 15.20.5654.016; Wed, 21 Sep 2022 09:08:29 +0000 From: Kyrylo Tkachov To: "gcc-patches@gcc.gnu.org" Subject: [PATCH] aarch64: Rewrite -march=native to -mcpu if no other -mcpu or -mtune is given Thread-Topic: [PATCH] aarch64: Rewrite -march=native to -mcpu if no other -mcpu or -mtune is given Thread-Index: AdjNmWAgxVMxG0pjRFKN6+S9tMJXlw== Date: Wed, 21 Sep 2022 09:08:28 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: yes 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-traffictypediagnostic: PAXPR08MB6926:EE_|PA4PR08MB5920:EE_|VE1EUR03FT032:EE_|AS4PR08MB8094:EE_ X-MS-Office365-Filtering-Correlation-Id: ade65fc0-dd60-4c53-79a4-08da9bb0df7e 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: HFsnIpS3eZ6sjSpsY2pYczJWKnjCR4dRnjLhrX802T56d5MaaeJ9WESGgyk7J11JDN/5GkGy3NaB18dVCcHwksq7/U3ivy1pDyi8HOAmBsFTakAP/RmtS7yMmEA9MpUJmLzZ4Ym03mp6crCQztZF7MyW69MOxBhhtmQXcVONqzvneuUO87VybLPBdMYR/TVuTWV4UrFrV5KDHEXww6oRNwDtT/g6gQqtsDu0n+/Dd75Lo7Xs9lpKo2+yhRzIvLKbS/tQxSyq0HlKw9GoMIkmWEUzMR8pEVn+OTQfnv9a0mY3xc2/IbNwWUdw99cNMhN0VFUvpPjkcYrhJGNCuuMviy5JlnIuRopXJ66gYUKDBnueTTGj6B0+SdJmJROcSOQQwpX0Y8RU8U5/+3fSIHpEX+PPegjmK5nDXM+gj8FhGhy+WL6i5njxv3/GT7sRtxKikw0mcD9lSQERqK4ulIZNgInqgz0KEL7HZojmKsQNg7gCAnCQGZZ+1p54rqb3mB6qlmIvuL9EYY4eGLu/NMEqKj+qvOaXJRvH0/Tc14v65kTDmgJUnT7hb/aYFOLHeqfpVqvCqtguU1qh90uavrAylkL3U63eZV0joP0ZcX86uMkAHBSixSk4yUPQppyAuEZZOcR4HTVBgFPVVZuwRUEXpJnm3+0uWPEvKBKV1aZal7fS7v9w5k37Li0N5vNCiz2pYo0d9WCiavuZ3xpJ+lZrHsdc4aFjRjHKmOHiEEawh1C5mOybH7rVW8Y8GCNxGAE6NfwQ/VcudU4i6hihoEnWjw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB6926.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(396003)(346002)(366004)(136003)(39860400002)(376002)(451199015)(86362001)(7696005)(66476007)(6506007)(64756008)(52536014)(8936002)(26005)(99936003)(55016003)(38070700005)(66556008)(478600001)(41300700001)(8676002)(66946007)(76116006)(71200400001)(6916009)(66446008)(33656002)(186003)(2906002)(316002)(9686003)(83380400001)(122000001)(5660300002)(38100700002);DIR:OUT;SFP:1101; Content-Type: multipart/mixed; boundary="_002_PAXPR08MB69268E54FB0740944699A950934F9PAXPR08MB6926eurp_" MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5920 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: VE1EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9e77292b-7da0-4d73-e668-08da9bb0d971 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LhhzAs4t/s6PrNDNjUbWWr4DxABrJIdzpOz5UpMZ9SwobOykQNgE2piyPuGD/mvHzPWZZFKLq9Vi7YNDXey6blPdO3GVzVBaTyvHluVKtP3Weppop0oSlry9+h2kzcbqBegrN//q6apVS3fyGSC9D6gm+kbomW04FY8fU9KBiabuYmZHnF+vphICReSb/+cQiC1dnBhqeYWcwFbzhIlcvWElyfi/vl8dSsmtZftZzjpGX0VjCbq9/6MHOoVj1cVWelpKuSXWysvZSLQwhp+hDB7jym4KetgetD2Isi09p4e4AUyiPQwYDzbuC1AGh5d7KsopsgSwvQT6knzkf4C0lybRLw95XBitIr8GAC0jdNGdx2V9MZoAbGYpE+XDiUhOoctjiytneSzipPMGbnCbJUdQOrQWLRRJl+ipUVdcYAs0p9OmYcgM4R2hipnPaccUKabN8bb8Ez8lOkv/Am0PYD1R2teeowqOJAA+8DZUjaDAwpq8K90k1hUFtSLdtz4IBn1sHj1+WJyXJKHoav08XSk4dH7MiNhyJRHrxz4KQZLp9A6oqg6BaqRjxzf9sngGvBeuf/6n59fa4HhsrixtQ2vDrR1SEQP0SyThpYHcKTwri2BskVBTTZQzS3c6DqXLgQczti0LhDV9lQCRovbjVHON61jfaTdQ2qWBebzIAhQsO5JeGl6IxoK+Alrnicg10cpDe8/Pd4JaoHcQJ5oMNzgFe53+dtBgcVz7JjEukMifGmtXOxoBrwYeEa0jEEb9wU3NzzZm/19ocR8oUQQAWw== 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:(13230022)(4636009)(396003)(136003)(39860400002)(376002)(346002)(451199015)(40470700004)(46966006)(36840700001)(81166007)(82740400003)(356005)(99936003)(33656002)(86362001)(36860700001)(83380400001)(2906002)(55016003)(186003)(47076005)(7696005)(82310400005)(40480700001)(40460700003)(9686003)(6506007)(336012)(478600001)(26005)(41300700001)(70206006)(8936002)(5660300002)(70586007)(316002)(6916009)(8676002)(52536014)(235185007);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2022 09:08:39.1056 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ade65fc0-dd60-4c53-79a4-08da9bb0df7e 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: VE1EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8094 X-Spam-Status: No, score=-5.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,KAM_DMARC_NONE,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 List-Id: --_002_PAXPR08MB69268E54FB0740944699A950934F9PAXPR08MB6926eurp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi all, We have received requests to improve the out-of-the box experience and performance of AArch64 GCC users, particularly those porting software from = other architectures. This has many aspects. One such aspect are apps built native= ly with an -march=3Dnative used as a tuning flag in the Makefile. On AArch64 this selects the right architecture features on GNU+Linux for th= e host system but tunes for the "generic" CPU target. This patch makes GCC also tune for the host CPU, as well as selecting its architecture. That is, it translates -march=3Dnative into -mcpu=3Dnative. This maintains the documentation that it "causes the compiler to pick the architecture of the host system" since -mcpu=3Dnative does that, but it als= o gives a better performance experience for the user. If the user explicitly asked for a particular CPU tuning through -mcpu or -mtune then we don't do this rewriting so that the user option is honoured. This would have been a one-line patch if it wasn't for --with-tune configure-time arguments. When GCC is configured with --with-tune=3D = the OPTION_DEFAULT_SPECS will insert an -mtune=3D in the options if no ot= her -mcpu or -mtune options were given. This will spook the aforementioned desi= red rewriting of -march=3Dnative into -mcpu=3Dnative, though I'd argue that we = want to do the rewrite even then. Therefore, this patch moves some specs in aarch64= .h around and refactors the --with-tune rewriting into CONFIG_TUNE_SPEC so tha= t the materialization of the implicit -mtune=3D does not happen if -mar= ch=3Dnative is used. Bootstrapped and tested on aarch64-none-linux-gnu and checked with the outp= ut of -### from the driver that the option rewriting works as expected on aarch64-linux-gnu. Pushing to trunk. Thanks, Kyrill gcc/ChangeLog: * config/aarch64/aarch64.h (HAVE_LOCAL_CPU_DETECT, EXTRA_SPEC_FUNCTIONS, MCPU_MTUNE_NATIVE_SPECS): Move definitions up before OPTION_DEFAULT_SPECS. (MCPU_MTUNE_NATIVE_SPECS): Pass "cpu" to local_cpu_detect when rewriting -march=3Dnative and no -mcpu or -mtune is given. (CONFIG_TUNE_SPEC): Define. (OPTION_DEFAULT_SPECS): Use CONFIG_TUNE_SPEC for "tune". --_002_PAXPR08MB69268E54FB0740944699A950934F9PAXPR08MB6926eurp_ Content-Type: application/octet-stream; name="march-mcpu.patch" Content-Description: march-mcpu.patch Content-Disposition: attachment; filename="march-mcpu.patch"; size=3413; creation-date="Wed, 21 Sep 2022 09:05:49 GMT"; modification-date="Wed, 21 Sep 2022 09:08:28 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYWFyY2g2NC9hYXJjaDY0LmggYi9nY2MvY29uZmlnL2Fh cmNoNjQvYWFyY2g2NC5oCmluZGV4IDJlZWQ2ZThmNmYwNWU3NDgzNzIyNTdmZjg5ZDMzOGQzNzc3 ZGRiYmIuLjZmNmJiNzBmZGU5NTVmNjY2NGU3Y2Q0ODIzNmVmNzlkMGVlMzMwZDUgMTAwNjQ0Ci0t LSBhL2djYy9jb25maWcvYWFyY2g2NC9hYXJjaDY0LmgKKysrIGIvZ2NjL2NvbmZpZy9hYXJjaDY0 L2FhcmNoNjQuaApAQCAtMTI2MCwxNCArMTI2MCw0NCBAQCBleHRlcm4gZW51bSBhYXJjaDY0X2Nv ZGVfbW9kZWwgYWFyY2g2NF9jbW9kZWw7CiAjZGVmaW5lIEVORElBTl9MQU5FX04oTlVOSVRTLCBO KSBcCiAgIChCWVRFU19CSUdfRU5ESUFOID8gTlVOSVRTIC0gMSAtIE4gOiBOKQogCisvKiBFeHRy YSBzcGVjcyB3aGVuIGJ1aWxkaW5nIGEgbmF0aXZlIEFBcmNoNjQtaG9zdGVkIGNvbXBpbGVyLgor ICAgT3B0aW9uIHJld3JpdGluZyBydWxlcyBiYXNlZCBvbiBob3N0IHN5c3RlbS4gICovCisjaWYg ZGVmaW5lZChfX2FhcmNoNjRfXykKK2V4dGVybiBjb25zdCBjaGFyICpob3N0X2RldGVjdF9sb2Nh bF9jcHUgKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CisjZGVmaW5lIEhBVkVfTE9DQUxf Q1BVX0RFVEVDVAorIyBkZWZpbmUgRVhUUkFfU1BFQ19GVU5DVElPTlMgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB7ICJsb2NhbF9jcHVfZGV0ZWN0IiwgaG9z dF9kZXRlY3RfbG9jYWxfY3B1IH0sICAgICAgICAgICAgICAgICAgICAgICAgXAorICBNQ1BVX1RP X01BUkNIX1NQRUNfRlVOQ1RJT05TCisKKy8qIFJld3JpdGUgLW17YXJjaCxjcHUsdHVuZX09bmF0 aXZlIGJhc2VkIG9uIHRoZSBob3N0IHN5c3RlbSBpbmZvcm1hdGlvbi4KKyAgIFdoZW4gcmV3cml0 aW5nIC1tYXJjaD1uYXRpdmUgY29udmVydCBpdCBpbnRvIGFuIC1tY3B1IG9wdGlvbiBpZiBubyBv dGhlcgorICAgLW1jcHUgb3IgLW10dW5lIHdhcyBnaXZlbi4gICovCisjIGRlZmluZSBNQ1BVX01U VU5FX05BVElWRV9TUEVDUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CisgICAiICV7bWFyY2g9bmF0aXZlOiU8bWFyY2g9bmF0aXZlICU6bG9jYWxfY3B1X2RldGVjdCgl e21jcHU9KnxtdHVuZT0qOmFyY2g7OmNwdX0pfSIgICAgICAgICAgICBcCisgICAiICV7bWNwdT1u YXRpdmU6JTxtY3B1PW5hdGl2ZSAlOmxvY2FsX2NwdV9kZXRlY3QoY3B1KX0iICAgICAgICAgICAg ICBcCisgICAiICV7bXR1bmU9bmF0aXZlOiU8bXR1bmU9bmF0aXZlICU6bG9jYWxfY3B1X2RldGVj dCh0dW5lKX0iCisvKiBUaGlzIHdpbGwgYmUgdXNlZCBpbiBPUFRJT05fREVGQVVMVF9TUEVDUyBi ZWxvdy4KKyAgIFdoZW4gR0NDIGlzIGNvbmZpZ3VyZWQgd2l0aCAtLXdpdGgtdHVuZSB3ZSBkb24n dCB3YW50IHRvIG1hdGVyaWFsaXplIGFuCisgICBpbXBsaWNpdCAtbXR1bmUgd291bGQgcHJldmVu dCB0aGUgcmV3cml0aW5nIG9mIC1tYXJjaD1uYXRpdmUgaW50bworICAgLW1jcHU9bmF0aXZlIGFz IHBlciB0aGUgYWJvdmUgcnVsZXMuICAqLworI2RlZmluZSBDT05GSUdfVFVORV9TUEVDCQkJCQkJ XAorIHsgInR1bmUiLCAiJXshbWNwdT0qOiV7IW10dW5lPSo6JXshbWFyY2g9bmF0aXZlOi1tdHVu ZT0lKFZBTFVFKX19fSIgfSwKKyNlbHNlCisjIGRlZmluZSBNQ1BVX01UVU5FX05BVElWRV9TUEVD UyAiIgorIyBkZWZpbmUgRVhUUkFfU1BFQ19GVU5DVElPTlMgTUNQVV9UT19NQVJDSF9TUEVDX0ZV TkNUSU9OUworIyBkZWZpbmUgQ09ORklHX1RVTkVfU1BFQyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgeyJ0dW5lIiwgIiV7IW1jcHU9KjoleyFtdHVu ZT0qOi1tdHVuZT0lKFZBTFVFKX19In0sCisjZW5kaWYKKwogLyogU3VwcG9ydCBmb3IgY29uZmln dXJlLXRpbWUgLS13aXRoLWFyY2gsIC0td2l0aC1jcHUgYW5kIC0td2l0aC10dW5lLgogICAgLS13 aXRoLWFyY2ggYW5kIC0td2l0aC1jcHUgYXJlIGlnbm9yZWQgaWYgZWl0aGVyIC1tY3B1IG9yIC1t YXJjaCBpcyB1c2VkLgogICAgLS13aXRoLXR1bmUgaXMgaWdub3JlZCBpZiBlaXRoZXIgLW10dW5l IG9yIC1tY3B1IGlzIHVzZWQgKGJ1dCBpcyBub3QKLSAgIGFmZmVjdGVkIGJ5IC1tYXJjaCkuICAq LworICAgYWZmZWN0ZWQgYnkgLW1hcmNoLCBleGNlcHQgaW4gdGhlIC1tYXJjaD1uYXRpdmUgY2Fz ZSBhcyBwZXIgdGhlCisgICBDT05GSUdfVFVORV9TUEVDIGFib3ZlKS4gICovCiAjZGVmaW5lIE9Q VElPTl9ERUZBVUxUX1NQRUNTCQkJCVwKICAgeyJhcmNoIiwgIiV7IW1hcmNoPSo6JXshbWNwdT0q Oi1tYXJjaD0lKFZBTFVFKX19IiB9LAlcCiAgIHsiY3B1IiwgICIleyFtYXJjaD0qOiV7IW1jcHU9 KjotbWNwdT0lKFZBTFVFKX19IiB9LCAgIFwKLSAgeyJ0dW5lIiwgIiV7IW1jcHU9KjoleyFtdHVu ZT0qOi1tdHVuZT0lKFZBTFVFKX19In0sCisgIENPTkZJR19UVU5FX1NQRUMKIAogI2RlZmluZSBN Q1BVX1RPX01BUkNIX1NQRUMgXAogICAgIiAle21jcHU9KjotbWFyY2g9JTpyZXdyaXRlX21jcHUo JXttY3B1PSo6JSp9KX0iCkBAIC0xMjc2LDIyICsxMzA2LDYgQEAgZXh0ZXJuIGNvbnN0IGNoYXIg KmFhcmNoNjRfcmV3cml0ZV9tY3B1IChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogI2Rl ZmluZSBNQ1BVX1RPX01BUkNIX1NQRUNfRlVOQ1RJT05TIFwKICAgeyAicmV3cml0ZV9tY3B1Iiwg YWFyY2g2NF9yZXdyaXRlX21jcHUgfSwKIAotI2lmIGRlZmluZWQoX19hYXJjaDY0X18pCi1leHRl cm4gY29uc3QgY2hhciAqaG9zdF9kZXRlY3RfbG9jYWxfY3B1IChpbnQgYXJnYywgY29uc3QgY2hh ciAqKmFyZ3YpOwotI2RlZmluZSBIQVZFX0xPQ0FMX0NQVV9ERVRFQ1QKLSMgZGVmaW5lIEVYVFJB X1NQRUNfRlVOQ1RJT05TCQkJCQkJXAotICB7ICJsb2NhbF9jcHVfZGV0ZWN0IiwgaG9zdF9kZXRl Y3RfbG9jYWxfY3B1IH0sCQkJXAotICBNQ1BVX1RPX01BUkNIX1NQRUNfRlVOQ1RJT05TCi0KLSMg ZGVmaW5lIE1DUFVfTVRVTkVfTkFUSVZFX1NQRUNTCQkJCQlcCi0gICAiICV7bWFyY2g9bmF0aXZl OiU8bWFyY2g9bmF0aXZlICU6bG9jYWxfY3B1X2RldGVjdChhcmNoKX0iCQlcCi0gICAiICV7bWNw dT1uYXRpdmU6JTxtY3B1PW5hdGl2ZSAlOmxvY2FsX2NwdV9kZXRlY3QoY3B1KX0iCQlcCi0gICAi ICV7bXR1bmU9bmF0aXZlOiU8bXR1bmU9bmF0aXZlICU6bG9jYWxfY3B1X2RldGVjdCh0dW5lKX0i Ci0jZWxzZQotIyBkZWZpbmUgTUNQVV9NVFVORV9OQVRJVkVfU1BFQ1MgIiIKLSMgZGVmaW5lIEVY VFJBX1NQRUNfRlVOQ1RJT05TIE1DUFVfVE9fTUFSQ0hfU1BFQ19GVU5DVElPTlMKLSNlbmRpZgot CiAjZGVmaW5lIEFTTV9DUFVfU1BFQyBcCiAgICBNQ1BVX1RPX01BUkNIX1NQRUMKIAo= --_002_PAXPR08MB69268E54FB0740944699A950934F9PAXPR08MB6926eurp_--