From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.9]) by sourceware.org (Postfix) with ESMTPS id 9286E3864879 for ; Wed, 22 May 2024 14:33:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9286E3864879 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 9286E3864879 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.198.163.9 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1716388428; cv=pass; b=LcxOVfJZyomiejNEYZmullRg5jDEWiPoEoqXLJARuxDLfNNL+62z8PEukX+8sQG3nP/i6WFFd1SfVemwhVQpEQnHVkdfr29qPCnkXGNdcylUwMmP6zRHFxC9V0pZ5FKDHd5Z3utQgw+8CU3o4NG8AUnk0CBMtmhGMO2u8jtSLI8= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1716388428; c=relaxed/simple; bh=iEiJTpnBG5oKCysD8Iu5PjWyKFAC6vGr4jDrWyqDQsE=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=LIH/CEtYHp48N55hn1RCxS9YZeGVpZ0kGxsWMx21PQLufGH/8CaNEa/4kW63X4dPDzvLrcTzw7+HpfoC4Dvr7PD6/IdrOcNXtrEjXtmE0DLHnMB7l04nuC5i1Z+xX49KjHtl0La24FBncKe/8bTa+kB9um2w1cplEuAuRDHO/8w= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1716388426; x=1747924426; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=iEiJTpnBG5oKCysD8Iu5PjWyKFAC6vGr4jDrWyqDQsE=; b=ePi6s6n1HFtJOGV5lHadxfBx13vtQYc86NhfYlOpIOnaXt1gSz0cD8a1 nTGtXKRkXQcRaE6gysWEYEMK1rEQDDj4TkPk9K8F0CVGp2LsZrUaNQ+OI Lve90xjElVnMYVs6PGRWIS29fWZDwV2TzlMiZX4TmSfk8lI50RKZ1Nn7N Y6I1PFJwQ9P/bsjfwGbInNBR7RF79MLfDoRZDQHog9lF9K3zYWI5LkdiP C97WG4o/kV20S294d2+xkWN8dqqa3CSXZKGVtMfKr0YXG/y97K4a4WoGT yi4HYnHXZo/SPh9OekZFqm2YGbVk24ehRxdwZza/N9dDLpvO97csyfRx+ w==; X-CSE-ConnectionGUID: NOMKcsUmRbyxIpQURV68EA== X-CSE-MsgGUID: lAbdNd5GQ1ObftS/TdUxfg== X-IronPort-AV: E=McAfee;i="6600,9927,11079"; a="23312354" X-IronPort-AV: E=Sophos;i="6.08,181,1712646000"; d="scan'208";a="23312354" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 May 2024 07:33:44 -0700 X-CSE-ConnectionGUID: FaE+s4MaTum6w5jnW4xU4Q== X-CSE-MsgGUID: I0t3JFHFQAOWXE6aH//9zQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,181,1712646000"; d="scan'208";a="33298231" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmviesa008.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 22 May 2024 07:33:43 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 22 May 2024 07:33:42 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Wed, 22 May 2024 07:33:42 -0700 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.168) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Wed, 22 May 2024 07:33:42 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NbhtKUkQdvNS/+0WV/gfu2gvwnLxKFuswZvKedNywDii3wQB008P5qINSndX9b+2EdBy+yYp4dgwTgVT3M3ylZcIbED9rlr1CgCzzLmqMkpacILRglddvDOqOPOFTX1dXP1cUVXa6fXeOt8L98pGoN0Ckm9Sm0M4E2aJOfnmx4gfW9DtZMizyBULT9HaQmGGhGu7Cf+/LCoheC61OfqcbBRJTflhzrnmV53Z2qTUrcUWy/8ns+dFdmRp0v6eDKYo19xWYNjHrMCPMAyUjJtk4RPsce0eTYDRn9wmsiAzauXORrAu+5/rE7G4BXlf1k4Kz7AewCUqUA8fm4AKk0WFqw== 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=iEiJTpnBG5oKCysD8Iu5PjWyKFAC6vGr4jDrWyqDQsE=; b=KJf25D8LF0EEJQLQQK0Le+hNgDDfXU4so2vXn1AIr2prJZJsBHTNnM5cnd387TvJQOcgiVlJ1dypZ8EcQYY5SXToSXsqQ7X6Tk+lXUv7FGSFVAvgNExp/KDON35wqbit2Wmqv3svzJOzYpdxaQJ02GXONvhg6pbLuQh1G4+0mCognxTv/itxky+Hmk7JCjiNmUZMwsqvL6UEaOE76pjOasUa0FszkXxi37H8BS5DjTtqI1ODUWP1YE2RkKUZWzU9DvAfwqI8OAKM0SRRfnw0XY9oBpDmWn7anLOZ5QcjYbxL7AIqrk2vtMgmt4oClg1Ps6zdl1/uSiosQTIaPm9OkQ== 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 DM4PR11MB6382.namprd11.prod.outlook.com (2603:10b6:8:be::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.19; Wed, 22 May 2024 14:33:37 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::c798:ab3c:1a03:af59]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::c798:ab3c:1a03:af59%3]) with mapi id 15.20.7611.016; Wed, 22 May 2024 14:33:37 +0000 From: "Li, Pan2" To: Richard Biener CC: "gcc-patches@gcc.gnu.org" , "juzhe.zhong@rivai.ai" , "kito.cheng@gmail.com" , "tamar.christina@arm.com" Subject: RE: [PATCH v1 1/2] Match: Support __builtin_add_overflow for branchless unsigned SAT_ADD Thread-Topic: [PATCH v1 1/2] Match: Support __builtin_add_overflow for branchless unsigned SAT_ADD Thread-Index: AQHaqbcB4q3APjLa0EiQkmsTD0x1V7GjQN8AgAAUr3A= Date: Wed, 22 May 2024 14:33:37 +0000 Message-ID: References: <20240519063708.1847699-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_|DM4PR11MB6382:EE_ x-ms-office365-filtering-correlation-id: 788e94b1-a80a-4108-14a5-08dc7a6c2b1d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230031|366007|376005|1800799015|38070700009; x-microsoft-antispam-message-info: =?utf-8?B?amZvamZRRnZyYkp0ZzNsazZKT0VHNkNEVWpkb1ZTOVVGaWxyMkhYaFhKOXZI?= =?utf-8?B?Y3ZPblZRN1VaTW1CVm4vaDhpbnluYUs4ajgzaklGRXVYeDljVHpIZ1ZaVVdW?= =?utf-8?B?cU80L0ZndFIybFhRcjJHd28zU2Z4SmkveWhyNGV3d1pud1I4Z1c2L2RXM3NV?= =?utf-8?B?elVoanZWeHJhM29uWVVHZmdRTkZoYThnR3U0eitadEFxMElZdTBKZVlONG5L?= =?utf-8?B?TjcwRHc2Rk5pdm1iOExiZGplK0xQcnB4Q21YRjZnL05DWExsRGRscFNaelNj?= =?utf-8?B?aHQ1bFlJSWFONnpQZmh4VGFSWkk0ZW9Ib21uSnQ5ejJCWWhWOWxheExPQUtD?= =?utf-8?B?OFhZU3BaNzR4K0E4SEZKV2VZdmluVy9LUzZRTytPaDhZRUN4MDl0cFc5UkNM?= =?utf-8?B?ak1GbStjTmFoaldva2srcEZhVzJYL3RJY3NOb2p5N3NuZXV3WlZXcjVocW8r?= =?utf-8?B?dnhnQkc5dDNWVjlXT0dHU2JXZHlsekdzNGphV0R3R1k1NXJVNHFXSzYvU1Zo?= =?utf-8?B?Tng2MHJ4K2ROK1VIeW1mcnZ6RmZvaGpXSmtVbE5TeEE4OG9sRGJSa3FiZVl1?= =?utf-8?B?bzB3M3djMG5GL1VxTXVLek91YWtneTRyZG1HTVdHUVV0ZVN1NnpMNFc0M1lF?= =?utf-8?B?L2s5T0JGT3U1a0p5WG1nWkdLemwvY0JTSzA2UzI1NGI3cXdLaTkzWE40dkl4?= =?utf-8?B?TkxWeFBrY1ZOZmNpUTIrc0l2eUZJM2ZIOHc4VmxWZzlPRTBVN3B1Tmt1TFVl?= =?utf-8?B?WmdlTE5hTlFqbVNlYTJaRERrQ1dmVWNFV01aWFp1QVBuaHBPb2ZGeUlkSDF6?= =?utf-8?B?KzYzOC9MUForcllsWXova0w3YW93bmh5RWc0SnlnVHBSYXBkbEFIRVkvSEty?= =?utf-8?B?UFNHd3VsalhBaG5sS3JaUmU3QWRkUXIveXdOcmxZNUhmZnhzTnBVL2RCaUZ2?= =?utf-8?B?YW1EQm03dk52YzNiSklzRlNSVDhTV3hhWnFSdVUzbmR3Z2xNNHBiYks1MEp0?= =?utf-8?B?MjhJb0Y1cTMzeHpORStvbit4NlFFTW5MNzNUdE9VZWp0dGEwODloc2J4Wmoz?= =?utf-8?B?RkVYUDN2NTAreDMwRmRpaGNhMjB0Z240TjRwdStZRGNzL1NGbTh0OVp6R3BV?= =?utf-8?B?Q2V6cWE5THpNSmlhM1V5Vnorek9MeFdNdG1yeWJRK1pCenlTdGNKK2F0Nzcx?= =?utf-8?B?ZjVnQWloQ0NJanNqcVBhb3FhN1FvbTR6dVBsNWdrYkVqdkR3N2t5cmlEK3dl?= =?utf-8?B?ZW9aa1dEUzg4dHZZS2ZkM0NnTWlvTzQvRk4xdnpqZTVNR0JQU3JUSitHY1d3?= =?utf-8?B?dEpoYzRKNGgwWVJCdVhsb1FkWU5kUDYxLzJNMXBsNUxpL1oxa2xoQVN0V3Av?= =?utf-8?B?VURTS2hqcHgrS3hmRkVtbUhmRFE2azEzL3BpMHJtZTF1Nk0xZFdCYkFyZTVX?= =?utf-8?B?WC9GMS8zeG1pOUVnYUwvS1N5bk05cnhZNlRTQjl4WllIWnpvT3I3dnpTVGZH?= =?utf-8?B?d1FidGlyTXNXQUNzZXQrY0R4VkozVVBHUXMxd3hYdXpCaDQzS3U5UmVpa0dv?= =?utf-8?B?TGVzSk5iY0YrRTZGUy9UazlZWlU3ejZBeThicC91Y0F2SU9ld01pUHIzOWRi?= =?utf-8?B?MHhOTXAzejhZSi9lZFhLZlZDR1hrUTRGMTJ2alIyVmtYNVpWRUFkTng4dUlr?= =?utf-8?B?WTVKRi9PYTdRMlJjS0U2ZStsR1UvblUrSllSS1pqK3pvWk9RZlpydzZsUERw?= =?utf-8?B?K1ZNUzZzTnEvZkc2R3ZVdlQvU2Q1YlJVN0pXMUdqb1hYWlFjZmlYY0IvclZs?= =?utf-8?B?V3lqUnR3ZWlIUFhlaTJGdz09?= 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:(13230031)(366007)(376005)(1800799015)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MTlRVVF3T1VUQjJpclAwaTNJVDBaZlRnRE03ZFFIcnF3UnJpWlhsbFJVelU5?= =?utf-8?B?MXZzNTgva050dU9qTHlSMVNSSWMxbGFwK1VDOVRoODlDT0dFMjFJVUJUdTdq?= =?utf-8?B?Vlc3ZnRSa3JFeWVJZTZESVRlK2U5OTdtNW9Vd3FTbEw1RjNPV0Y0THo4ZU1H?= =?utf-8?B?UUpSWHoyeS9HK3B2WHBGa1B1VkdzYnlSMUhZY2FyS013VE1qdm5BWWJLbVBY?= =?utf-8?B?eWxZc09lbkEzNmJEaDhXWmJHZHZyWWxXNzZUMlBvK0Fiem1zSjMyZ3lZUFFj?= =?utf-8?B?eHJkRUs2Uzl4NnM4SFNvSmoxZkROVFpNKzNKOWJCVlBxd2IrbmVEcDFlR29Y?= =?utf-8?B?MXgzVjBoSHJxRHlWQmNFaDU5SWt3VUJvVEtETVRmbXg1VjBmWmlaUzVrL0JC?= =?utf-8?B?bHY1SEszR2JGSHVubXgvSjh6cS9MbFN1SUxJbllUYlB6WFVvMHFDMlJNc2VT?= =?utf-8?B?dG5ubENUQ3FCZTNNeForT01lNGkxejN1WVlRVlZZdGU0bHBwV1JwaFhBN1pF?= =?utf-8?B?cGtRVDU0WjlyU2g1d3dUanU2OWJkdTk5ZTRob0lLRFh0aXZBOGs1VUU3ZTVC?= =?utf-8?B?anZpNXZOWVN6UW5wRjRMVEtvM1RYVTBmdnJPMjhFbEtxd01rV2NlRUtZVktm?= =?utf-8?B?bXVzM21wTHBwd240OE9wZkl2akhDTHdEc3dhTFV0YTR4RFB6bUR0alJIbXpY?= =?utf-8?B?Q3pLTHg0dWFJM2V1RjVFbmIzZWdTbUZjTmZJNGM4OUJxR2hhYTBrMndqdjJV?= =?utf-8?B?bWZQUXNGWTRNZ0E0aklWdFN5MXl1VjFrOUhPYndoVU9DNWt2ZnFxaXg3V1BD?= =?utf-8?B?bjhUcGJnWHNiQ29rd2xKcTEvZ1NycG5LTGJVQjE0RnJPVzdscWR1RS9SQ3Fy?= =?utf-8?B?dHRtVEtsSW5PYUoyNFo4TXUxZVRYayt5QXRuODdvR0ppY1ZLcmRSejlrbjZ6?= =?utf-8?B?Ly9IaHVFcDVXRnV0ZTh2alNlLytubE9lWDk1dzJmc1pmQVR2QTB6dDRFazlt?= =?utf-8?B?RzBxNXBFTm5RZkhVODFoODBKWHl3YThvbzQ1djFlb25jbkVBcStUWkxHMUN6?= =?utf-8?B?K1VTMWp3ZFNteHBqendvTzFIdlY0UmJXd1BUK1UxNVNSZkREYksrYjUxMVNx?= =?utf-8?B?UXdhUzNYVHZWMHk0ZVdEZFJOanpkS1hsQlg4OG8vMHFvZHhDdjlsRTBRN2Nq?= =?utf-8?B?V2c5N1BjNXN6RnNVODNJODlaZk9HZ1YxK1N0Q2JaNCt1R1A1NERtOEdwaXlU?= =?utf-8?B?VlRFcmgzcHFjV0dDQTRJVEwyYUU5WkZ1ZEVmTFUvVmpYQTRobkZ3WUlMTi80?= =?utf-8?B?Rm1EUENnNVhKWlh3VURMRUl5WGczMXFuRXB5VTNMK0E1TnUvYWtURFIwS0d1?= =?utf-8?B?ZndRNzU3WUFOWk5lYkZCQ0taeDZDcWhpWHV4VzQ5enV5SmNEeDNBWGpoYlpN?= =?utf-8?B?aFhuWDlRZm5rdUMwNk9OdHFzU1JMSC8vODhPSVRITy9sLzROYThzRG92TE52?= =?utf-8?B?NXNlZTA1cERraDJ4UGExeU5nYmxkYWxFRHdBaCt0TG94QkdCS1E3RzVsa2ZG?= =?utf-8?B?bVdWUHUyQ0EzQUxJNlErM0ZoRC8wbXloVnVVcWh0LzBxMkQ0NmUvdU9weklm?= =?utf-8?B?eUxReUJ2T0JTVkVxZVhLc0FEQjM0Y3g2M29aamhDSVRZVVN2OHdieFFYVWlk?= =?utf-8?B?dURjL3oyOVNlU1c0VkUwS0lGbXhjL2Jyc0JtZXZxMVlQSDNZaW0xNUNNL3lE?= =?utf-8?B?TnU5Z2NUMkNrcHNzTGorNElOd3A1OURpZGZEamVhU1hOb0l0QVk5cVh4M0lN?= =?utf-8?B?WVNURTZhNEpSTVdFdjdOYmNZUHpubVNhTFgwVDVJWXBobFVhbzJNY2NRZ0pH?= =?utf-8?B?RGdWNTNtQzVIaUI3VUVkZ21EUTdPd09xQVNrSWlFZ3NjUXRjMjZYSDY5QzNY?= =?utf-8?B?QzdDbFNIOFgzaS9uKzFMQkY1Z3ZDK3JMc0dRQTg4c2xWNlZIVEs2OXpWN1ov?= =?utf-8?B?em9hbVZlcmhmWjFSVVFtNnlWd1VEQ216WktmNzI2VXdxVFFuRStYdFROL2ZX?= =?utf-8?B?MjFDUmVhYzFjLzNtT01tYTY3eUlNNGtHSWp1aVVIaGVjeUtqRXhnMGlQMXUz?= =?utf-8?Q?KM0g=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: 788e94b1-a80a-4108-14a5-08dc7a6c2b1d X-MS-Exchange-CrossTenant-originalarrivaltime: 22 May 2024 14:33:37.7904 (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: tgpu7OPWpsjsNNOy1vj9DRouGwdCbIjeLA8/RB7Pqdmze+jshgf/loe/MOG4lG5YcHIYpQvovXPPDh6JI7hCxQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB6382 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-12.2 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,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: VGhhbmtzIFJpY2hhcmQgZm9yIGNvbW1lbnRzLCB3aWxsIG1lcmdlIHRoZSByZXN0IGZvcm0gb2Yg LlNBVF9BREQgaW4gb25lIG1pZGRsZSBlbmQgcGF0Y2ggZm9yIGZ1bGx5IHBpY3R1cmUsIGFzIHdl bGwgYXMgY29tbWVudHMgYWRkcmVzc2luZy4NCg0KUGFuDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQpGcm9tOiBSaWNoYXJkIEJpZW5lciA8cmljaGFyZC5ndWVudGhlckBnbWFpbC5jb20+ IA0KU2VudDogV2VkbmVzZGF5LCBNYXkgMjIsIDIwMjQgOToxNiBQTQ0KVG86IExpLCBQYW4yIDxw YW4yLmxpQGludGVsLmNvbT4NCkNjOiBnY2MtcGF0Y2hlc0BnY2MuZ251Lm9yZzsganV6aGUuemhv bmdAcml2YWkuYWk7IGtpdG8uY2hlbmdAZ21haWwuY29tOyB0YW1hci5jaHJpc3RpbmFAYXJtLmNv bQ0KU3ViamVjdDogUmU6IFtQQVRDSCB2MSAxLzJdIE1hdGNoOiBTdXBwb3J0IF9fYnVpbHRpbl9h ZGRfb3ZlcmZsb3cgZm9yIGJyYW5jaGxlc3MgdW5zaWduZWQgU0FUX0FERA0KDQpPbiBTdW4sIE1h eSAxOSwgMjAyNCBhdCA4OjM34oCvQU0gPHBhbjIubGlAaW50ZWwuY29tPiB3cm90ZToNCj4NCj4g RnJvbTogUGFuIExpIDxwYW4yLmxpQGludGVsLmNvbT4NCj4NCj4gVGhpcyBwYXRjaCB3b3VsZCBs aWtlIHRvIHN1cHBvcnQgdGhlIGJyYW5jaGxlc3MgZm9ybSBmb3IgdW5zaWduZWQNCj4gU0FUX0FE RCB3aGVuIGxldmVyYWdlIF9fYnVpbHRpbl9hZGRfb3ZlcmZsb3cuICBGb3IgZXhhbXBsZSBhcyBi ZWxvdzoNCj4NCj4gdWludDY0X3Qgc2F0X2FkZF91KHVpbnQ2NF90IHgsIHVpbnQ2NF90IHkpDQo+ IHsNCj4gICB1aW50NjRfdCByZXQ7DQo+ICAgdWludDY0X3Qgb3ZlcmZsb3cgPSBfX2J1aWx0aW5f YWRkX292ZXJmbG93ICh4LCB5LCAmcmV0KTsNCj4NCj4gICByZXR1cm4gKFQpKC1vdmVyZmxvdykg fCByZXQ7DQo+IH0NCj4NCj4gQmVmb3JlIHRoaXMgcGF0Y2g6DQo+DQo+IHVpbnQ2NF90IHNhdF9h ZGRfdSAodWludDY0X3QgeCwgdWludDY0X3QgeSkNCj4gew0KPiAgIGxvbmcgdW5zaWduZWQgaW50 IF8xOw0KPiAgIGxvbmcgdW5zaWduZWQgaW50IF8yOw0KPiAgIGxvbmcgdW5zaWduZWQgaW50IF8z Ow0KPiAgIF9fY29tcGxleF9fIGxvbmcgdW5zaWduZWQgaW50IF82Ow0KPiAgIHVpbnQ2NF90IF84 Ow0KPg0KPiA7OyAgIGJhc2ljIGJsb2NrIDIsIGxvb3AgZGVwdGggMA0KPiA7OyAgICBwcmVkOiAg ICAgICBFTlRSWQ0KPiAgIF82ID0gLkFERF9PVkVSRkxPVyAoeF80KEQpLCB5XzUoRCkpOw0KPiAg IF8xID0gUkVBTFBBUlRfRVhQUiA8XzY+Ow0KPiAgIF8yID0gSU1BR1BBUlRfRVhQUiA8XzY+Ow0K PiAgIF8zID0gLV8yOw0KPiAgIF84ID0gXzEgfCBfMzsNCj4gICByZXR1cm4gXzg7DQo+IDs7ICAg IHN1Y2M6ICAgICAgIEVYSVQNCj4NCj4gfQ0KPg0KPiBBZnRlciB0aGlzIHBhdGNoOg0KPg0KPiB1 aW50NjRfdCBzYXRfYWRkX3UgKHVpbnQ2NF90IHgsIHVpbnQ2NF90IHkpDQo+IHsNCj4gICB1aW50 NjRfdCBfODsNCj4NCj4gOzsgICBiYXNpYyBibG9jayAyLCBsb29wIGRlcHRoIDANCj4gOzsgICAg cHJlZDogICAgICAgRU5UUlkNCj4gICBfOCA9IC5TQVRfQUREICh4XzQoRCksIHlfNShEKSk7IFt0 YWlsIGNhbGxdDQo+ICAgcmV0dXJuIF84Ow0KPiA7OyAgICBzdWNjOiAgICAgICBFWElUDQo+DQo+ IH0NCj4NCj4gVGhlIGJlbG93IHRlc3RzIHN1aXRlIGFyZSBwYXNzZWQgZm9yIHRoaXMgcGF0Y2gu DQo+ICogVGhlIHJ2NjRnY3YgZnVsbHkgcmVncmVzc2lvbiB0ZXN0Lg0KPiAqIFRoZSB4ODYgYm9v dHN0cmFwIHRlc3QuDQo+ICogVGhlIHg4NiBmdWxseSByZWdyZXNzaW9uIHRlc3QuDQo+DQo+IGdj Yy9DaGFuZ2VMb2c6DQo+DQo+ICAgICAgICAgKiBtYXRjaC5wZDogQWRkIFNBVF9BREQgcmlnaHQg cGFydCAyIGZvciBfX2J1aWx0aW5fYWRkX292ZXJmbG93Lg0KPg0KPiBTaWduZWQtb2ZmLWJ5OiBQ YW4gTGkgPHBhbjIubGlAaW50ZWwuY29tPg0KPiAtLS0NCj4gIGdjYy9tYXRjaC5wZCB8IDQgKysr Kw0KPiAgMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKQ0KPg0KPiBkaWZmIC0tZ2l0IGEv Z2NjL21hdGNoLnBkIGIvZ2NjL21hdGNoLnBkDQo+IGluZGV4IGIyOTFlMzRiYmU0Li41MzI4ZTg0 NmFmZiAxMDA2NDQNCj4gLS0tIGEvZ2NjL21hdGNoLnBkDQo+ICsrKyBiL2djYy9tYXRjaC5wZA0K PiBAQCAtMzA2NCw2ICszMDY0LDEwIEBAIERFRklORV9JTlRfQU5EX0ZMT0FUX1JPVU5EX0ZOIChS SU5UKQ0KPiAgIChuZWdhdGUgKGNvbnZlcnQgKG5lIChpbWFncGFydCAoSUZOX0FERF9PVkVSRkxP VzpjIEAwIEAxKSkgaW50ZWdlcl96ZXJvcCkpKQ0KPiAgIChpZiAoVFlQRV9VTlNJR05FRCAodHlw ZSkgJiYgaW50ZWdlcl90eXBlc190ZXJuYXJ5X21hdGNoICh0eXBlLCBAMCwgQDEpKSkpDQo+DQo+ ICsobWF0Y2ggKHVzYWRkX3JpZ2h0X3BhcnRfMiBAMCBAMSkNCj4gKyAobmVnYXRlIChpbWFncGFy dCAoSUZOX0FERF9PVkVSRkxPVzpjIEAwIEAxKSkpDQo+ICsgKGlmIChUWVBFX1VOU0lHTkVEICh0 eXBlKSAmJiBpbnRlZ2VyX3R5cGVzX3Rlcm5hcnlfbWF0Y2ggKHR5cGUsIEAwLCBAMSkpKSkNCj4g Kw0KDQpDYW4geW91IG1lcmdlIHRoaXMgd2l0aCB0aGUgcGF0Y2ggdGhhdCBtYWtlcyB1c2Ugb2Yg dGhlDQp1c2FkZF9yaWdodF9wYXJ0XzIgbWF0Y2g/DQpJdCdzIGRpZmZpY3VsdCB0byByZXZpZXcg b24gaXRzIG93bi4NCg0KPiAgLyogV2UgY2Fubm90IG1lcmdlIG9yIG92ZXJsb2FkIHVzYWRkX2xl ZnRfcGFydF8xIGFuZCB1c2FkZF9sZWZ0X3BhcnRfMg0KPiAgICAgYmVjYXVzZSB0aGUgc3ViIHBh cnQgb2YgbGVmdF9wYXJ0XzIgY2Fubm90IHdvcmsgd2l0aCByaWdodF9wYXJ0XzEuDQo+ICAgICBG b3IgZXhhbXBsZSwgbGVmdF9wYXJ0XzIgcGF0dGVybiBmb2N1cyBvbmUgLkFERF9PVkVSRkxPVyBi dXQgdGhlDQo+IC0tDQo+IDIuMzQuMQ0KPg0K