From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by sourceware.org (Postfix) with ESMTPS id C813E3858291 for ; Thu, 10 Aug 2023 12:39:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C813E3858291 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1691671173; x=1723207173; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=jNVtDKT9zwXc3LiVnuYBUzjhDJ2mRvA3mzprGvhUZ48=; b=GYTL05vjJ5iJgmCTEFbeVP28ZCtE7nGWu3MIz0ygHaaSLnUXLMp2sMUR 7WrB+CcO2S2K+Nx51AuyNAHgwWWIE+gHkDrHIzYSPkYyTVQI6m7y4Y21Q Ww6vBZRwDHSTV/d5HPAfeaRtZW2CdGaLnaa54/8hSw1aQwjUd9Ss6TuD0 z80EZpCA1LI659FWF6sy1Ey7gYjXDWPm77qvMAcUHhuQpwy0Rr4nNTP2X ZQO8cA/Sulq9yI5ihiRunOwj96/PEgc7t1cShJKD0cV8vkS1UvbRJQ1n+ XNStv2h+Hk8sewpcaOSM4CiHW6qm//DKD54aRNwVlHHFzFY7kPxeLXHvg g==; X-IronPort-AV: E=McAfee;i="6600,9927,10797"; a="356353034" X-IronPort-AV: E=Sophos;i="6.01,162,1684825200"; d="scan'208";a="356353034" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Aug 2023 05:39:32 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10797"; a="978780834" X-IronPort-AV: E=Sophos;i="6.01,162,1684825200"; d="scan'208";a="978780834" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga006.fm.intel.com with ESMTP; 10 Aug 2023 05:39:32 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 10 Aug 2023 05:39:31 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Thu, 10 Aug 2023 05:39:31 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Thu, 10 Aug 2023 05:39:31 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eJEB5M9sQdOvF+b+YohE6tL9Imnw6kLTDSashoNa4+7+UlNL9x0R6FFPgYiAK3RzgYlIQ7gQU2IcX0CX7tofWTX0RPPJvMaWaiHzMXIMY94G0mc9wQ4V4scPQQ1Zi/syIgkMlqGzX3eRLMjwbr23HOD1CqRuwu5hgAiqCsW238pbWms8FbaxY9mdOGTR+VS3Ez0d2QYe+gyBPmEF6SCV3Ih4trX2qeHjRD9mCRdCtG4+CuoIMiwdcJpHK4eL+DxZrhGRp3GEae6oeKytw+grkPQAOvjUwNN1IRPQSLfdEnk+vHoEMbX4O0D7K3hMp4ztI8zGFQvU6OouKctHNbfDFA== 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=jNVtDKT9zwXc3LiVnuYBUzjhDJ2mRvA3mzprGvhUZ48=; b=awYClyLwR8c1mtvw4onYmAKNasHDY+CBJYL4kzh391mqPp4OcMk03MZkpzTN5S4K1n2SHsijZtQ1UqNLYeRm/XXoiUiaRzlnhWvZYxPzVEO33PDfOipgnTgFPxFdgcb3e+ald9qbCMfU34mkXfpxS7jWVJiF960nHFfhhINaJ3iSmpreCWBa+t1lTUwRyOkALHDy53SLAzp7rCVd175bvhZSOplk02ZwTBfpjA9h23bf/MW8S2DjZyAddjd8EnFpRlTAfPXuNi3del9fF4iGuTYEgM655hc3iJTCRINAJoz2bNgV/Qohgkj4sg7a23Bz+E+aqVK9etPlHxKn40ZIvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW5PR11MB5908.namprd11.prod.outlook.com (2603:10b6:303:194::10) by CY5PR11MB6161.namprd11.prod.outlook.com (2603:10b6:930:2a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.30; Thu, 10 Aug 2023 12:39:27 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::6ff9:5a3d:4981:3476]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::6ff9:5a3d:4981:3476%4]) with mapi id 15.20.6652.029; Thu, 10 Aug 2023 12:39:27 +0000 From: "Li, Pan2" To: Kito Cheng CC: "gcc-patches@gcc.gnu.org" , "juzhe.zhong@rivai.ai" , "jeffreyalaw@gmail.com" , "Wang, Yanzhang" Subject: RE: [PATCH v1] RISC-V: Support RVV VFNMACC rounding mode intrinsic API Thread-Topic: [PATCH v1] RISC-V: Support RVV VFNMACC rounding mode intrinsic API Thread-Index: AQHZy2N3qZ919a1glEOOkBma2Ymo0a/jOayAgAA+4jA= Date: Thu, 10 Aug 2023 12:39:27 +0000 Message-ID: References: <20230810081954.1899125-1-pan2.li@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW5PR11MB5908:EE_|CY5PR11MB6161:EE_ x-ms-office365-filtering-correlation-id: a73e73bc-1970-4aa3-0151-08db999ed5ca x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: sry8HYCOQ0OJTApuJj7Sr3iiqWLoZZjvWYz46ntSd++5CRIG6zovBN/Ag4vGOnWDv+5rdaoW87wE+4rg1MoA7Gy1esH4SeJLNjN3o1Pmy/62pUOTD2bXHh3SyfgPkIuhnSTOSb/0RoNea9z5v0bmlFh5gBjZMaHizeVEFgeNh9Kx3UDNyvRdEx6F1cFzn4fnXQKJvc5Pc3YhNESucExcDDrHGd0nLw/DHZ4NT4N3GCFphXevKzJx6w+H7XYiFo/1TE8BMZV9VW8p/NYs7t9bZfMhXa7rU/r2ch1+wJKQseKf3bMVWm5O3F49JDZ/OEV7uIbpnfsVlvFoJ+CqTtaNtZmnE+IeibjbZLlZcyCUMxAS89Oy0KzWWqY3SkKceXQ4dEpwyU3aTLaNjqno99++LV6n8XJROLwetWds0qOOnZPjalOiy+wOKC21KsyM4mRejR8UQA9u5tBNR2r/1WOwodIjizB6prW2ZB12TltdhmOF2XNtYCLezbg5CbWG/kSp1eWTgwBJIoV1O0EHGGPPRc7JIqfpBMzfTW10mCWCUE+PimBCij96hmz1VTc8P2tTzKmHO0Y4n11jD3Q6AvEQpBnx9pPqRS9fOE3vjLNun2c= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5908.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(346002)(366004)(376002)(39860400002)(451199021)(186006)(1800799006)(26005)(5660300002)(53546011)(6506007)(8936002)(8676002)(41300700001)(107886003)(33656002)(2906002)(83380400001)(122000001)(38100700002)(38070700005)(86362001)(82960400001)(55016003)(52536014)(66946007)(66556008)(66476007)(66446008)(64756008)(76116006)(4326008)(6916009)(9686003)(54906003)(71200400001)(478600001)(7696005)(84970400001)(316002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?N3FyVlBobVJ5NTliQSt1UXZ2bFIxL0hKU1Z4KzRFT3l2eEI1ZVZJN3hQZC9i?= =?utf-8?B?TStmL2FFMmo1L1RQek9DWnd0Mm93cUFra1lYb3ljMjl1UHdtVlhWNnZxUHRj?= =?utf-8?B?M1E3MVp0MFhSSEdqRlJSQUxUMHQyMjdBNm5GNTJlNmNxVVBNNjZTMDgxRW9M?= =?utf-8?B?SFpOZEQybnZwM0VlMXpUcHVVVjBVVDdOQ2x0RmNYbkNDbFhqaldVaXhvSHl6?= =?utf-8?B?QTJyQzVEM09jVFRWMnIxSmVid3dwWEpaajllSzB3cFFPZXc0anNiSllBd2cx?= =?utf-8?B?eFN0QTZYUitScEFNbW45MzBpUVZmM1FqWjMzNnAyM1dUR0FrT1F4QWU0QzRQ?= =?utf-8?B?OS9DaUlpKzJEVGwyOUJDcUFQa2dDeFpXMzJ5My9QbWxvTlF4RnlFV1QvajNV?= =?utf-8?B?THVCcE9sS0RzRDN5L0ZvWXBPcmZGYWZtam14N0wvR2F1UGY0MFNQQk5sTUpI?= =?utf-8?B?eUhCWTJYVFhVL2lLQU1CZ0tEUGlZenQxRG0zd1JTQkkrTG5NMm9DMDc2N3RE?= =?utf-8?B?dHJydDBkb0dNcEJ5Y1JMdkJrbHZrTFpGL1NUT0VlM3E5R2g1RU9sMWxhNXZ5?= =?utf-8?B?OUx4aXZVR1FaV0RQcncrNDA4Rkl1UnFtd0V5eDZGS0I4ZDZ4c2VEY0pCM0Ex?= =?utf-8?B?N0ZzaGlOV25uNm5QcGZhTXp3ZkJ6OTlMMWhUS0Y1WnFIZUVQQ0U0SjZFN2R1?= =?utf-8?B?bkVZZUJyeXdQTFRIbnYyME96SzMvVVh2b0drU2s5TVBmc2g0dnJhNnZrcVFz?= =?utf-8?B?ZjNzZ2lBSm5qblNSY3JVUlpCam96TDVvQWphQ1I0aHVaZk9Ddy9MR2trbWRo?= =?utf-8?B?RGJPU0tKTzFSbCtpSHRoVVVRYVBXaTdoaXQ5Sk5IYXNkdWhabzlLT0JvRmpP?= =?utf-8?B?YVlNR0lqeGFZWVlaUzBxVEhuUUJlWVZvOFJ0cHhOVXE0N0phSjhPR0RKYkFF?= =?utf-8?B?dE9KczU3SGZQUTRIeTNRUTdBL3FsY2NJZWc1aEc0Z29qdElyWEd0eE5PTWdF?= =?utf-8?B?SFRJeHpQNzIvcUVuamp1TlhDYTVROGN1QmFrSEVDcG9iMWd4UTB6aFllc0JT?= =?utf-8?B?RjdEL0tWTG1seDdUMUdYd3RVc2dHZFZtaXFDVTVXRHJZUTRaNnJ5SGRDVVZM?= =?utf-8?B?VCt2ZDE0dzVvZUFnRElzaHBZU0hBT3VWSnBkamFPUm5ZRzJVaTZMUWJDbkQ3?= =?utf-8?B?RllMRmlUK2tkZVFwTWhIU0RaNFVkS1ptaU9MYUVzeU16M1NRUGhiMjIva0tz?= =?utf-8?B?UzVPN0JmZmwrTDVyTkgxSkl1ZUdSOEIvVnRRcjI4dTJtTTFjZjBER3FwWG5h?= =?utf-8?B?K1RTRS9Xd0laem9iSzJvbEV4c0tEeEozS2tQTFN3c0psd3hTNVNVVUttcnVu?= =?utf-8?B?bC9tbnZ1RGRtUEJhVWFoZk5aU1RobUVMZUxpN09XMmQ5L2ZoVGNrOGVNM3pS?= =?utf-8?B?K043ZUgzMVRCVFZwVjFSc3ZvY1lsNWRBeXE5TFBBM2lGajdSNmtFMmh5NEk0?= =?utf-8?B?VnZVY1ZzajJQYzg4bm9FWDRXbG1MVVBPSmFTVFdBTDdscURycjkwa3E0cEdH?= =?utf-8?B?bzBPK2Z5dmJrNjRoWW51YmthNDE4VGw4UXBLUUJ3V2NQenB6a09yc2VZVlNZ?= =?utf-8?B?bmJOcjJIQVFvUVF6TDAzdlhaUVE4SjF2UitZY1dXck5DMmFjZ0EzQTVWa3FX?= =?utf-8?B?UW82NCtabWM4QzlqUVZZemVqUGtYSi9aYkhqV1F2eXJGNHJUUGJiR0xGcW5T?= =?utf-8?B?ZzFmeTNoZld3UHhpbmx6bWp2ZjRjL0xZekUzYlVZV3lvNnVuVEFkTXVpZERv?= =?utf-8?B?WHg1MDBoTzFTRGJVaC81MDEySnN5NmRHRWFKMXA5K1oranROTFE2VStyY2wz?= =?utf-8?B?eG9aVDZqUEJ0NUFNMjZSN3k4MUh2S3ZpdzRkRnVHRjFTYUFaVnVqNmR2TGhH?= =?utf-8?B?RDNjUVhhMUV6ckRYc1d4SkNxSk12Q2Y0QXVTdjBCL2lETzVvd2NyTFRvRGtw?= =?utf-8?B?RTRxMitweHhCS2liSkZDbGVBTjZuZ0c2ZDJXS3ZSMjZucGIzUml2RGdOa2lx?= =?utf-8?B?YWhncjU1WFhhNkZXTEtVSGJrQkU5L3pHQzFvd05lNk80QXVaMGFhQmI4MllG?= =?utf-8?Q?BI6c=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW5PR11MB5908.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a73e73bc-1970-4aa3-0151-08db999ed5ca X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Aug 2023 12:39:27.3646 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: BfMFe0l2BielsSCy+Oz7i9rvZNPXj4tyNfLVRhVV02ee6lMQiUemVvnq5hHobgoaXzlmznQ4abPOR8UkzKphxg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR11MB6161 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-11.9 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Q29tbWl0dGVkLCB0aGFua3MgS2l0by4NCg0KUGFuDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQpGcm9tOiBLaXRvIENoZW5nIDxraXRvLmNoZW5nQGdtYWlsLmNvbT4gDQpTZW50OiBUaHVy c2RheSwgQXVndXN0IDEwLCAyMDIzIDQ6NTQgUE0NClRvOiBMaSwgUGFuMiA8cGFuMi5saUBpbnRl bC5jb20+DQpDYzogZ2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc7IGp1emhlLnpob25nQHJpdmFpLmFp OyBqZWZmcmV5YWxhd0BnbWFpbC5jb207IFdhbmcsIFlhbnpoYW5nIDx5YW56aGFuZy53YW5nQGlu dGVsLmNvbT4NClN1YmplY3Q6IFJlOiBbUEFUQ0ggdjFdIFJJU0MtVjogU3VwcG9ydCBSVlYgVkZO TUFDQyByb3VuZGluZyBtb2RlIGludHJpbnNpYyBBUEkNCg0KTEdUTQ0KDQpPbiBUaHUsIEF1ZyAx MCwgMjAyMyBhdCA0OjIw4oCvUE0gUGFuIExpIHZpYSBHY2MtcGF0Y2hlcw0KPGdjYy1wYXRjaGVz QGdjYy5nbnUub3JnPiB3cm90ZToNCj4NCj4gRnJvbTogUGFuIExpIDxwYW4yLmxpQGludGVsLmNv bT4NCj4NCj4gVGhpcyBwYXRjaCB3b3VsZCBsaWtlIHRvIHN1cHBvcnQgdGhlIHJvdW5kaW5nIG1v ZGUgQVBJIGZvciB0aGUNCj4gVkZOTUFDQyBmb3IgdGhlIGJlbG93IHNhbXBsZXMuDQo+DQo+ICog X19yaXNjdl92Zm5tYWNjX3Z2X2YzMm0xX3JtDQo+ICogX19yaXNjdl92Zm5tYWNjX3Z2X2YzMm0x X3JtX20NCj4gKiBfX3Jpc2N2X3Zmbm1hY2NfdmZfZjMybTFfcm0NCj4gKiBfX3Jpc2N2X3Zmbm1h Y2NfdmZfZjMybTFfcm1fbQ0KPg0KPiBTaWduZWQtb2ZmLWJ5OiBQYW4gTGkgPHBhbjIubGlAaW50 ZWwuY29tPg0KPg0KPiBnY2MvQ2hhbmdlTG9nOg0KPg0KPiAgICAgICAgICogY29uZmlnL3Jpc2N2 L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1iYXNlcy5jYw0KPiAgICAgICAgIChjbGFzcyB2Zm5tYWNj X2ZybSk6IE5ldyBjbGFzcyBmb3IgdmZubWFjYy4NCj4gICAgICAgICAodmZubWFjY19mcm1fb2Jq KTogTmV3IGRlY2xhcmF0aW9uLg0KPiAgICAgICAgIChCQVNFKTogRGl0dG8uDQo+ICAgICAgICAg KiBjb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmg6IERpdHRvLg0KPiAg ICAgICAgICogY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1mdW5jdGlvbnMuZGVm DQo+ICAgICAgICAgKHZmbm1hY2NfZnJtKTogTmV3IGZ1bmN0aW9uIGRlZmluaXRpb24uDQo+DQo+ IGdjYy90ZXN0c3VpdGUvQ2hhbmdlTG9nOg0KPg0KPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS9mbG9hdC1wb2ludC1ubWFjYy5jOiBOZXcgdGVzdC4NCj4gLS0tDQo+ICAuLi4v cmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmNjICAgICAgfCAyNCArKysrKysrKysr DQo+ICAuLi4vcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmggICAgICAgfCAgMSAr DQo+ICAuLi4vcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWZ1bmN0aW9ucy5kZWYgfCAgMiAr DQo+ICAuLi4vcmlzY3YvcnZ2L2Jhc2UvZmxvYXQtcG9pbnQtbm1hY2MuYyAgICAgICAgfCA0NyAr KysrKysrKysrKysrKysrKysrDQo+ICA0IGZpbGVzIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKykN Cj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvZmxvYXQtcG9pbnQtbm1hY2MuYw0KPg0KPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9y aXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtYmFzZXMuY2MgYi9nY2MvY29uZmlnL3Jpc2N2L3Jp c2N2LXZlY3Rvci1idWlsdGlucy1iYXNlcy5jYw0KPiBpbmRleCAxNjk1ZDc3ZThiZC4uMWQ0YTVh MThiZjkgMTAwNjQ0DQo+IC0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0 aW5zLWJhc2VzLmNjDQo+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0 aW5zLWJhc2VzLmNjDQo+IEBAIC0zNzksNiArMzc5LDI4IEBAIHB1YmxpYzoNCj4gICAgfQ0KPiAg fTsNCj4NCj4gKy8qIEltcGxlbWVudHMgYmVsb3cgaW5zdHJ1Y3Rpb25zIGZvciBmcm0NCj4gKyAg IC0gdmZubWFjYw0KPiArKi8NCj4gK2NsYXNzIHZmbm1hY2NfZnJtIDogcHVibGljIGZ1bmN0aW9u X2Jhc2UNCj4gK3sNCj4gK3B1YmxpYzoNCj4gKyAgYm9vbCBoYXNfcm91bmRpbmdfbW9kZV9vcGVy YW5kX3AgKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQ0KPiArDQo+ICsgIGJvb2wg aGFzX21lcmdlX29wZXJhbmRfcCAoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQ0K PiArDQo+ICsgIHJ0eCBleHBhbmQgKGZ1bmN0aW9uX2V4cGFuZGVyICZlKSBjb25zdCBvdmVycmlk ZQ0KPiArICB7DQo+ICsgICAgaWYgKGUub3BfaW5mby0+b3AgPT0gT1BfVFlQRV92ZikNCj4gKyAg ICAgIHJldHVybiBlLnVzZV90ZXJub3BfaW5zbiAoDQo+ICsgICAgICAgdHJ1ZSwgY29kZV9mb3Jf cHJlZF9tdWxfbmVnX3NjYWxhciAoTUlOVVMsIGUudmVjdG9yX21vZGUgKCkpKTsNCj4gKyAgICBp ZiAoZS5vcF9pbmZvLT5vcCA9PSBPUF9UWVBFX3Z2KQ0KPiArICAgICAgcmV0dXJuIGUudXNlX3Rl cm5vcF9pbnNuICgNCj4gKyAgICAgICB0cnVlLCBjb2RlX2Zvcl9wcmVkX211bF9uZWcgKE1JTlVT LCBlLnZlY3Rvcl9tb2RlICgpKSk7DQo+ICsgICAgZ2NjX3VucmVhY2hhYmxlICgpOw0KPiArICB9 DQo+ICt9Ow0KPiArDQo+ICAvKiBJbXBsZW1lbnRzIHZyc3ViLiAgKi8NCj4gIGNsYXNzIHZyc3Vi IDogcHVibGljIGZ1bmN0aW9uX2Jhc2UNCj4gIHsNCj4gQEAgLTIxNDQsNiArMjE2Niw3IEBAIHN0 YXRpYyBDT05TVEVYUFIgY29uc3QgdmZubXNhYyB2Zm5tc2FjX29iajsNCj4gIHN0YXRpYyBDT05T VEVYUFIgY29uc3QgdmZtYWRkIHZmbWFkZF9vYmo7DQo+ICBzdGF0aWMgQ09OU1RFWFBSIGNvbnN0 IHZmbm1zdWIgdmZubXN1Yl9vYmo7DQo+ICBzdGF0aWMgQ09OU1RFWFBSIGNvbnN0IHZmbm1hY2Mg dmZubWFjY19vYmo7DQo+ICtzdGF0aWMgQ09OU1RFWFBSIGNvbnN0IHZmbm1hY2NfZnJtIHZmbm1h Y2NfZnJtX29iajsNCj4gIHN0YXRpYyBDT05TVEVYUFIgY29uc3QgdmZtc2FjIHZmbXNhY19vYmo7 DQo+ICBzdGF0aWMgQ09OU1RFWFBSIGNvbnN0IHZmbm1hZGQgdmZubWFkZF9vYmo7DQo+ICBzdGF0 aWMgQ09OU1RFWFBSIGNvbnN0IHZmbXN1YiB2Zm1zdWJfb2JqOw0KPiBAQCAtMjM4MCw2ICsyNDAz LDcgQEAgQkFTRSAodmZubXNhYykNCj4gIEJBU0UgKHZmbWFkZCkNCj4gIEJBU0UgKHZmbm1zdWIp DQo+ICBCQVNFICh2Zm5tYWNjKQ0KPiArQkFTRSAodmZubWFjY19mcm0pDQo+ICBCQVNFICh2Zm1z YWMpDQo+ICBCQVNFICh2Zm5tYWRkKQ0KPiAgQkFTRSAodmZtc3ViKQ0KPiBkaWZmIC0tZ2l0IGEv Z2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtYmFzZXMuaCBiL2djYy9jb25m aWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmgNCj4gaW5kZXggNjdkMTg0MTJi NGMuLjI0NzA3NGQwODY4IDEwMDY0NA0KPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZl Y3Rvci1idWlsdGlucy1iYXNlcy5oDQo+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtdmVj dG9yLWJ1aWx0aW5zLWJhc2VzLmgNCj4gQEAgLTE2NSw2ICsxNjUsNyBAQCBleHRlcm4gY29uc3Qg ZnVuY3Rpb25fYmFzZSAqY29uc3QgdmZubXNhYzsNCj4gIGV4dGVybiBjb25zdCBmdW5jdGlvbl9i YXNlICpjb25zdCB2Zm1hZGQ7DQo+ICBleHRlcm4gY29uc3QgZnVuY3Rpb25fYmFzZSAqY29uc3Qg dmZubXN1YjsNCj4gIGV4dGVybiBjb25zdCBmdW5jdGlvbl9iYXNlICpjb25zdCB2Zm5tYWNjOw0K PiArZXh0ZXJuIGNvbnN0IGZ1bmN0aW9uX2Jhc2UgKmNvbnN0IHZmbm1hY2NfZnJtOw0KPiAgZXh0 ZXJuIGNvbnN0IGZ1bmN0aW9uX2Jhc2UgKmNvbnN0IHZmbXNhYzsNCj4gIGV4dGVybiBjb25zdCBm dW5jdGlvbl9iYXNlICpjb25zdCB2Zm5tYWRkOw0KPiAgZXh0ZXJuIGNvbnN0IGZ1bmN0aW9uX2Jh c2UgKmNvbnN0IHZmbXN1YjsNCj4gZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3YvcmlzY3Yt dmVjdG9yLWJ1aWx0aW5zLWZ1bmN0aW9ucy5kZWYgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZl Y3Rvci1idWlsdGlucy1mdW5jdGlvbnMuZGVmDQo+IGluZGV4IDkyZWNmOGE5MDY1Li43YWFlMDY2 NTUyMCAxMDA2NDQNCj4gLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRp bnMtZnVuY3Rpb25zLmRlZg0KPiArKysgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1i dWlsdGlucy1mdW5jdGlvbnMuZGVmDQo+IEBAIC0zNTEsNiArMzUxLDggQEAgREVGX1JWVl9GVU5D VElPTiAodmZtc3ViLCBhbHUsIGZ1bGxfcHJlZHMsIGZfdnZmdl9vcHMpDQo+DQo+ICBERUZfUlZW X0ZVTkNUSU9OICh2Zm1hY2NfZnJtLCBhbHVfZnJtLCBmdWxsX3ByZWRzLCBmX3Z2dnZfb3BzKQ0K PiAgREVGX1JWVl9GVU5DVElPTiAodmZtYWNjX2ZybSwgYWx1X2ZybSwgZnVsbF9wcmVkcywgZl92 dmZ2X29wcykNCj4gK0RFRl9SVlZfRlVOQ1RJT04gKHZmbm1hY2NfZnJtLCBhbHVfZnJtLCBmdWxs X3ByZWRzLCBmX3Z2dnZfb3BzKQ0KPiArREVGX1JWVl9GVU5DVElPTiAodmZubWFjY19mcm0sIGFs dV9mcm0sIGZ1bGxfcHJlZHMsIGZfdnZmdl9vcHMpDQo+DQo+ICAvLyAxMy43LiBWZWN0b3IgV2lk ZW5pbmcgRmxvYXRpbmctUG9pbnQgRnVzZWQgTXVsdGlwbHktQWRkIEluc3RydWN0aW9ucw0KPiAg REVGX1JWVl9GVU5DVElPTiAodmZ3bWFjYywgYWx1LCBmdWxsX3ByZWRzLCBmX3d3dnZfb3BzKQ0K PiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL2Zs b2F0LXBvaW50LW5tYWNjLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvZmxvYXQtcG9pbnQtbm1hY2MuYw0KPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAw MDAwMDAwMDAwMC4uZmNhMzc4YjdhOGYNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvZmxvYXQtcG9pbnQtbm1hY2MuYw0KPiBA QCAtMCwwICsxLDQ3IEBADQo+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiArLyogeyBkZy1v cHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0IC1PMyAtV25vLXBzYWJpIiB9ICovDQo+ ICsNCj4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gKw0KPiArdHlwZWRlZiBmbG9hdCBm bG9hdDMyX3Q7DQo+ICsNCj4gK3ZmbG9hdDMybTFfdA0KPiArdGVzdF9yaXNjdl92Zm5tYWNjX3Z2 X2YzMm0xX3JtICh2ZmxvYXQzMm0xX3QgdmQsIHZmbG9hdDMybTFfdCBvcDEsDQo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdmZsb2F0MzJtMV90IG9wMiwgc2l6ZV90IHZsKSB7DQo+ ICsgIHJldHVybiBfX3Jpc2N2X3Zmbm1hY2NfdnZfZjMybTFfcm0gKHZkLCBvcDEsIG9wMiwgMCwg dmwpOw0KPiArfQ0KPiArDQo+ICt2ZmxvYXQzMm0xX3QNCj4gK3Rlc3RfdmZubWFjY192dl9mMzJt MV9ybV9tICh2Ym9vbDMyX3QgbWFzaywgdmZsb2F0MzJtMV90IHZkLCB2ZmxvYXQzMm0xX3Qgb3Ax LA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgdmZsb2F0MzJtMV90IG9wMiwgc2l6ZV90 IHZsKSB7DQo+ICsgIHJldHVybiBfX3Jpc2N2X3Zmbm1hY2NfdnZfZjMybTFfcm1fbSAobWFzaywg dmQsIG9wMSwgb3AyLCAxLCB2bCk7DQo+ICt9DQo+ICsNCj4gK3ZmbG9hdDMybTFfdA0KPiArdGVz dF92Zm5tYWNjX3ZmX2YzMm0xX3JtICh2ZmxvYXQzMm0xX3QgdmQsIGZsb2F0MzJfdCBvcDEsIHZm bG9hdDMybTFfdCBvcDIsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHZsKSB7 DQo+ICsgIHJldHVybiBfX3Jpc2N2X3Zmbm1hY2NfdmZfZjMybTFfcm0gKHZkLCBvcDEsIG9wMiwg MiwgdmwpOw0KPiArfQ0KPiArDQo+ICt2ZmxvYXQzMm0xX3QNCj4gK3Rlc3RfdmZubWFjY192Zl9m MzJtMV9ybV9tICh2ZmxvYXQzMm0xX3QgdmQsIHZib29sMzJfdCBtYXNrLCBmbG9hdDMyX3Qgb3Ax LA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgdmZsb2F0MzJtMV90IG9wMiwgc2l6ZV90 IHZsKSB7DQo+ICsgIHJldHVybiBfX3Jpc2N2X3Zmbm1hY2NfdmZfZjMybTFfcm1fbSAobWFzaywg dmQsIG9wMSwgb3AyLCAzLCB2bCk7DQo+ICt9DQo+ICsNCj4gK3ZmbG9hdDMybTFfdA0KPiArdGVz dF9yaXNjdl92Zm5tYWNjX3Z2X2YzMm0xICh2ZmxvYXQzMm0xX3QgdmQsIHZmbG9hdDMybTFfdCBv cDEsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmZsb2F0MzJtMV90IG9wMiwgc2l6 ZV90IHZsKSB7DQo+ICsgIHJldHVybiBfX3Jpc2N2X3Zmbm1hY2NfdnZfZjMybTEgKHZkLCBvcDEs IG9wMiwgdmwpOw0KPiArfQ0KPiArDQo+ICt2ZmxvYXQzMm0xX3QNCj4gK3Rlc3RfdmZubWFjY192 dl9mMzJtMV9tICh2Ym9vbDMyX3QgbWFzaywgdmZsb2F0MzJtMV90IHZkLCB2ZmxvYXQzMm0xX3Qg b3AxLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgdmZsb2F0MzJtMV90IG9wMiwgc2l6ZV90 IHZsKSB7DQo+ICsgIHJldHVybiBfX3Jpc2N2X3Zmbm1hY2NfdnZfZjMybTFfbSAobWFzaywgdmQs IG9wMSwgb3AyLCB2bCk7DQo+ICt9DQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyB7dmZubWFjY1wudlt2Zl1ccyt2WzAtOV0rLFxzKltmYXZdK1swLTldKyxccyp2 WzAtOV0rfSA2IH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz IHtmcnJtXHMrW2F4c11bMC05XSt9IDQgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMge2Zzcm1ccytbYXhzXVswLTldK30gNCB9IH0gKi8NCj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7ZnNybWlccytbMDEyMzRdfSA0IH0gfSAqLw0K PiAtLQ0KPiAyLjM0LjENCj4NCg==