From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 1128F3858CDA for ; Thu, 14 Sep 2023 21:41:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1128F3858CDA Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 38EKxSDn032048; Thu, 14 Sep 2023 21:41:38 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=F7kLvnUP8WgDbX2ECSdR8NtZUM4k2BzEunsQoKBuHQI=; b=zID2uqU4i4FZx5zwAOW2huKv4bSDD+1kwfg0sLn9zAXLfjJFyibtn94ZBNrUjjaUQLVH f889TB3AQhuueTlm5v/hdRj726Ecyk2UvBJ4TwKaMMmahsBe3Wgt1sqO05Vn1XzwLvd4 eS3/ITi58JCxwk4fwz1EiLfkN3QdtvP5LwXmHcmNwaVE6PCveHvYVAFxT9kYWdKBYO4b n7Q1GS5XtqTfzGc7NCrpjoBLF+IKHG1h7iexorm16KYpIo8g86znNeeePSsY4qsVUiQR tcNP4hjqG6eZpWGn6DQxa2mqFy3cFueEMfATI8pIt+j/TMha/Jeh07fcQPRmyBYJHYXA Qg== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3t2y7heh6n-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Sep 2023 21:41:38 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 38EK50Sq028295; Thu, 14 Sep 2023 21:41:37 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2043.outbound.protection.outlook.com [104.47.66.43]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3t0f5fjbmr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Sep 2023 21:41:37 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ClFL7FP7+4vpUW97GRjUcTse8ks3zV2ddtezhOYe0Rg6Hu2HkAqaUOtNsa7lGN7pB92RaT4kxyxbUXIdQetjpidPbgL7ehk1f8tyP3Tyz5qzOjGCUACK+T0ZaFl4AHjMRLabDdW0gHCxXNNop0JV38S+C5jaDpS5oPUmHzY6k0S6lPmDf0VF+twswTgUL+Sh5Es3evFAxTw2Z6fTkMC8U0l3/o1FOm74B5D/ACExnm76vJHkxFBYaHkTQ1MEfS6pEAYGkjEf9s0MOdhPzRdu4rcT9bB3w5nu2rKV0A/VeNea6MW5Rm6GD7Ty0r4APoJagOKdvQTrqi8uu2vA4E3tog== 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=F7kLvnUP8WgDbX2ECSdR8NtZUM4k2BzEunsQoKBuHQI=; b=euabB2keg5V2CIQ+cRCz4EtEXhL9NwLv/SU9KfNH1y6FkreeSC6pBC8lsohY0vpgS8lm0QXblr5PcOEEqJKzf2dHoq+/Lu6CWH9IPjn3CsQtxjkKBAmOpQ50HWQKcP4tTIzRCvzmP7RY8ImvQgfQme0D2IvrdHjKYexPNm8TrBHcfhyAlFAnAo1FCrbTjuOfiDLzMHBWllCqkU5BvtQR0BsHPAjx/6DlsoYy9s6FecrlXp/OKZSK/bU8WaibIl1noa0yPqSEMR6ZfhmMasrC6WE7vaAJJ+azDN1DlaO0ahYNCzGihaM8U4Vj8yY6YGZNGHTnaeTilcUyBeNrRkj8ig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F7kLvnUP8WgDbX2ECSdR8NtZUM4k2BzEunsQoKBuHQI=; b=Mp63yatohF0f+GQfoKAe7NIBJPJNjY6zD0pHn3+spBX7uZdGtTEaWXQ/JVMMV4fsOtL3A5T6IV7c9ncLzbJ2lx+SJgevDS6pToK1fJWby6lmwAHBTXAwnyCX39sCKkggJRYpb5FdFs8NK4ChRdLd/9KfoZg0PVHu5cxaUSAUNYE= Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by IA1PR10MB6784.namprd10.prod.outlook.com (2603:10b6:208:428::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Thu, 14 Sep 2023 21:41:35 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::5afd:d02a:38ef:94ba]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::5afd:d02a:38ef:94ba%7]) with mapi id 15.20.6768.029; Thu, 14 Sep 2023 21:41:34 +0000 From: Qing Zhao To: Andrew Pinski CC: Xi Ruoyao , Richard Biener , gcc Patches , kees Cook Subject: Re: Question on -fwrapv and -fwrapv-pointer Thread-Topic: Question on -fwrapv and -fwrapv-pointer Thread-Index: AQHZ5xEp/9JO1JaiH0CGva91CmQbOrAaWz0AgAAPLgCAAAMfAIAADIsAgAAF7QCAAEuXgIAAAniAgAAMQYA= Date: Thu, 14 Sep 2023 21:41:34 +0000 Message-ID: <4A05D2C5-352F-4B13-8CCE-50EB7D0B93FA@oracle.com> References: <5E83778D-E24C-4B9A-90C8-42DE5F26AA17@oracle.com> <9D17171F-5E62-4822-B245-04FB1C7B2739@gmail.com> <288732AC-20C3-4CEF-B412-E8259E2D4011@oracle.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.120.41.1.3) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH2PR10MB4344:EE_|IA1PR10MB6784:EE_ x-ms-office365-filtering-correlation-id: ea022ff1-57e7-4b22-6e1b-08dbb56b5e21 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: oxULvWlJxdpRhDJNeg9npk1bNeMQA5r3Yux8bARMELf37wF3XghV2PfjFlFuPa1K2HWZXxwQP+cNmXVhWLgwmaVI2RNYoortztzefzXgUKDgqLEn/i3+fF/QQRHNqwg7/vDu8RIFjCr5z7AAyuO2CGDZ1HdiYMNCD4FtYcx+aDxYXNCVsBOSQXCBv0WWEID8GWeRMixOGoHUJi2Oo90lMovaOipj3Ihqheh2cnikwVAgD0WLYVSExjlNoeTRTu9BomMyp/NyW37QaB3f27GN39FaodXUP5jCTUweDskvIEcuGLf4OKbfz8JcOHQ4G2xAeUkwk0G930CnuY8fWzgntCcpSQLBMCX9EyekGTFZHJ8He/KLBnUxde0I4AmhppzFrcG4GALwf59tROqh6k50KSx6Dhzi15P+fjtnQVd1/dN/5V62SpFuduIJyHXfN9sz+4cxTiiq5Q9VXGINrZ3zp27t0wO7te6bNb5UhRclJ0/e02yW+IazuPXh4HwzMKHbqKItC/HeG3H7k8Pf9A9TJvlljGgYveVWjxIdk0MMA1n7CC4hDjbl7B2ADp0jGQDdgW438bQNmZH9/wt89QHoeznDKbYj0J9rCA3hhsT7u5ia9HkEDMjnUIFE6/Yec8MIxfV91MBIaSZ87DhqBwSOqw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH2PR10MB4344.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(396003)(136003)(376002)(39860400002)(451199024)(1800799009)(186009)(6916009)(316002)(53546011)(64756008)(66946007)(54906003)(91956017)(66476007)(76116006)(33656002)(66446008)(71200400001)(66556008)(4326008)(8676002)(8936002)(44832011)(966005)(6512007)(41300700001)(2616005)(478600001)(6486002)(6506007)(86362001)(36756003)(38070700005)(38100700002)(5660300002)(2906002)(122000001)(83380400001)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ck1Ta1pHR1poMEJzTVpGaDBTRFNUNWhVSGlGTmhHbUZqNitXc2NGU09KOXlL?= =?utf-8?B?OTFjbVlnNXlkZVpobG90TzYvVE1kbE9vTUZkRDQrM0lnT2RPYUdieGtwNHhB?= =?utf-8?B?SnBreEVyYnYxSmlSNlhsdDhpNG05OUhYMXlkOCt3RTNkSVZjeTl5bm0rdFdy?= =?utf-8?B?eDJ6cWhLckpQYnByenYvcEJwc2oyQ010Y1JzaU1nblFUTEFWdldBS21zS1Vs?= =?utf-8?B?Z0wyQVJWL05MTWc3WTdzSEVnWkZ6TlBXWDltVTMvVzVGUmQ5OXR0cnExVC9Z?= =?utf-8?B?MVZpdWkxMC9iVlplRmhmNDJ4TjRqbGc1eXdmcXRpTGNsdGRTeENLdmFIbWFq?= =?utf-8?B?YTZJdURVbWg2VnE3U25hcDgwSlNFVFZoYjBvYnZUOVd5QnA5aGhDWVVOVTl0?= =?utf-8?B?THl1NlZld3k5eFJXeUVLQU5mTHdxU092MlZCb0ptbHpQbjhSbG5TSkM1NDR3?= =?utf-8?B?elk1WU1xU3NIelJVSm9PNlljM1RGZ0tya1M3WDR1K0ZFbnJKelhDY1hnYzB1?= =?utf-8?B?c1E5ZWZrYjBHYkNlci84QzVmRnZEdFVpTW9NQTN1Vyt0d3FaZ1FEcXNJVGpL?= =?utf-8?B?bTRoVEx6RkJsam53YkpiRFpOOU8xb3oxTUI2bGx4bXFoeTdTNmN6WDVNdFQ4?= =?utf-8?B?WC9tY0RDMzBzN1hLdUZOenJZWDBobXlENFd6MmhDMlBBc3F6L0gyVmdTN0Y5?= =?utf-8?B?N1drMEFTWDJlUEtpN1JEYVYzOHREOE5GV25STmJNN0h5T3BOakFhdmpjODdn?= =?utf-8?B?byt4MmJUQ29McTIrRDFEaDVSQXpmaWRNdVVtRWVFWGxJM1lzSjNTRzVBNmFp?= =?utf-8?B?SEpod0lNRFpTWVg3WjFpRExrSHV1SGZmcThXMEN1RWYyOVk5Q0lPeGFFTXF2?= =?utf-8?B?VVB4YmF5Wnh1bG5hd3ZLLzdUQmxlV2pra3M2N09NRWRoWHZ1eEU1UkFQWHZV?= =?utf-8?B?bmZZQ0pTRDNyKzB1NG1KZ3NxQjJBUVF2dmU5SjRlVnV0Y3BuTDI2QVhvTkVx?= =?utf-8?B?S0ZzU0Foa0RDUE5IVnNoYWFPZS9nTjBIeGt3RGxPWjJ0SUdxT0RJVTRTUTAx?= =?utf-8?B?T01hSDMrbm5rZ0t0MjMyRGE3ZzhCOXY1eXB5QmVDWmUyVVlxdXA0eldDNG1I?= =?utf-8?B?RGhQM2FCK2JzOUlFWjk3dGxNbnczTEV6SEZSbC93NmxEZzdVNzd5RTcvSlBv?= =?utf-8?B?d2pMNGxkK0VkaFhCUVh1RDRneTZsWEVRYjBTTGs5V1M4dmtrWEpPWGxIMFNZ?= =?utf-8?B?WXVkWUE4WDdZcXR1ZENneWU0WElEdjE5Q1JRemY0UGJ6ejZuT3JlaTlEYjNB?= =?utf-8?B?WDNqY2Q1b1h6YThWVU51N0h2bHFPcGpUV01naW5wNVFKNjBCVE9DOGRMYkl6?= =?utf-8?B?ek1qYzJJZjYrd1BXd0pic21IVUl5aEtaWkV0Skl0bWtiWkRQODI4enVsLzFS?= =?utf-8?B?cUY3Wk01OTVzMHc5TVQxY3l0eHhuN1d4SFRHYmxGb3RVbWF0VTdCczA4dVk5?= =?utf-8?B?bnZBMkhuTjkwb0V0bnBTLzlkcFNXSHREa3VHcVU2STZ2aFptTzNlN2V0MHB5?= =?utf-8?B?ZHVLb3k1azdFb2VKREhxL3FGTmttL3NhWlVkdjY3a2N4ZURaUmhkdnZKYVo1?= =?utf-8?B?SFdvV0JBeWI2TjY3UG8wUVVzMjJUU1dndXYyZzZkek1SdUNkZ0R4TGhZbVp1?= =?utf-8?B?WVpGVHlvOU5tbTZNZkQ0MS94Zzh2WWl5NU81ci9jd2krWDUydDJDdWprcVpp?= =?utf-8?B?MDRUb1Q3R1BvMzN1eUp3cXg5ZmFPNE0zQ3BBeGlsRlNKQjZaQTBIR1VIY1Y1?= =?utf-8?B?SjBabWZVUmdnYi9OTjl4NUo5Y09RcjNBRndWelQvckpNYUduOW11OG45YWll?= =?utf-8?B?WlprU0hPSEdOd3RBZldmb2dSakpnREFMNFZlSXhjVXYrdHI3RW5DdzFRZWdD?= =?utf-8?B?cU1UTWxGOW55WlFGamFobDNIN0xHSlBUbHczc2lJSGxDZzV0R3VxNnljZUZn?= =?utf-8?B?V0RXNVBidWMxQlU1Rlp3L1BOQzFHeEU2Ukl5WWJIZWFBTnE1ZmM5QWNzd09Y?= =?utf-8?B?RnpDY0x4UGNhaStEOERBU0JzM1VXSmJ3MVhOK2NzeFNyQ3dvNE02LzFTNCtx?= =?utf-8?B?VWNTdng5TTdyTTVjcXo1NUtuaUI0T0lxSk9EUHZCNFNDVE9zUnNKYWk3SzEy?= =?utf-8?Q?rlsdHXVCxFk1/qA2OaR3Fi0=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <2A903B342AF8B6449F80FBFCBDB6EB15@namprd10.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: QDc21WNTFrIRZ3sGU/S4YilYFPqjqCZVKdtRjZ04rAmOEUZbZP3iqZfcMOzFtxbn+82kOx6vBnYSWi9Awt/mK8YoEXDxPrN+NfROgFjYtJaq1gyUZCmrYYEOrfzJsmlovh0CF60E3IHryekdqqgiV1rUfN7u0vn1cx05TbCdN19tH+T4G5jRXPiEqBc2zshMIg/2d9ohWhoIniFjSVM65nNFOqXEbhoJoCtIAGAiGthET7jhOvIzUrRS2RXweeflIzgYeXCqKgam2YyXksF+iigckbPt2Zw5sOsxnhZC/lO3mIkysOiGQQCHBDioMfjGsxziEPSg0uB8mUNb59LU6a37tZ+wZRfUweGqf22MVCsGwM5NJxCFOOXPK9gSjUmLHoRViVk//Nj4WwskBpiduEHUiqbzfIxJRyFWnYVN9MNNd7JuVHQf60WEmMxfUQSSXZfuBZ1J7biik9FWkI0weprireNpF9bCwZXx1AonhuafkT00Nfzn9f/LX1KFrdHqM/G31+kiBov9nlOP9RLBpvHLcq8rPD296eH+pATPIKtVWYOkdJ+NbyooM79EqZ6iMV2TUJzVxd1sRZkuiaoiAjNnGtgVi4zZvlY9GOTPngFot0T89LMFGxdFFvhUbI9zmX/M47A20aG643Kn6Evna8ZcYCt2BGKt8FWEBdKNbpSJOTkfNL2UQUYUrbg2NIj5CPNJkXT/274iifOgGDAdMrCDPXYtgLEONo4J0CPLot+lYQWsQ8hwn93cYw3Ds8aU0YjADdJYroE+bAMqiLIZgg7jARq3x/We/kZOgzXekrPQtanyRlU6Jv0GEWzWX4FGez2/GoYhmdkATlOfJ2pyTg== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR10MB4344.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ea022ff1-57e7-4b22-6e1b-08dbb56b5e21 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Sep 2023 21:41:34.8309 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: pGBqhd/FVyB0Tdff+gN3LUPb7TxhagUuvPY82ulTgWXb45NE/erqBg+mGBhtUbWOyuzNkd4x//3LkEKLXHVapw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB6784 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26 definitions=2023-09-14_12,2023-09-14_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 malwarescore=0 mlxlogscore=999 mlxscore=0 spamscore=0 adultscore=0 bulkscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2308100000 definitions=main-2309140190 X-Proofpoint-ORIG-GUID: olKgT5nD2S6tIjOZlODphlwNfKNSzBz6 X-Proofpoint-GUID: olKgT5nD2S6tIjOZlODphlwNfKNSzBz6 X-Spam-Status: No, score=-5.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_SHORT,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,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: DQoNCj4gT24gU2VwIDE0LCAyMDIzLCBhdCA0OjU3IFBNLCBBbmRyZXcgUGluc2tpIDxwaW5za2lh QGdtYWlsLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiBUaHUsIFNlcCAxNCwgMjAyMyBhdCAxOjUw4oCv UE0gUWluZyBaaGFvIHZpYSBHY2MtcGF0Y2hlcw0KPiA8Z2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc+ IHdyb3RlOg0KPj4gDQo+PiANCj4+IA0KPj4+IE9uIFNlcCAxNCwgMjAyMywgYXQgMTI6MTggUE0s IFhpIFJ1b3lhbyA8eHJ5MTExQHhyeTExMS5zaXRlPiB3cm90ZToNCj4+PiANCj4+PiBPbiBUaHUs IDIwMjMtMDktMTQgYXQgMTU6NTcgKzAwMDAsIFFpbmcgWmhhbyB2aWEgR2NjLXBhdGNoZXMgd3Jv dGU6DQo+Pj4+IEN1cnJlbnRseSwgR0NDIGJlaGF2ZXMgYXMgZm9sbG93aW5nOg0KPj4+PiANCj4+ Pj4gLyogVHJ1ZSBpZiBvdmVyZmxvdyB3cmFwcyBhcm91bmQgZm9yIHRoZSBnaXZlbiBpbnRlZ3Jh bCBvciBwb2ludGVyIHR5cGUuICBUaGF0DQo+Pj4+ICAgaXMsIFRZUEVfTUFYICsgMSA9PSBUWVBF X01JTi4gICovDQo+Pj4+ICNkZWZpbmUgVFlQRV9PVkVSRkxPV19XUkFQUyhUWVBFKSBcDQo+Pj4+ ICAoUE9JTlRFUl9UWVBFX1AgKFRZUEUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwNCj4+Pj4gICA/IGZsYWdfd3JhcHZfcG9pbnRlciAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXA0KPj4+PiAgIDogKEFOWV9JTlRFR1JBTF9UWVBFX0NIRUNL KFRZUEUpLT5iYXNlLnUuYml0cy51bnNpZ25lZF9mbGFnICBcDQo+Pj4+ICAgICAgfHwgZmxhZ193 cmFwdikpDQo+Pj4+IA0KPj4+PiAvKiBUcnVlIGlmIG92ZXJmbG93IGlzIHVuZGVmaW5lZCBmb3Ig dGhlIGdpdmVuIGludGVncmFsIG9yIHBvaW50ZXIgdHlwZS4NCj4+Pj4gICBXZSBtYXkgb3B0aW1p emUgb24gdGhlIGFzc3VtcHRpb24gdGhhdCB2YWx1ZXMgaW4gdGhlIHR5cGUgbmV2ZXIgb3ZlcmZs b3cuDQo+Pj4+IA0KPj4+PiAgIElNUE9SVEFOVCBOT1RFOiBBbnkgb3B0aW1pemF0aW9uIGJhc2Vk IG9uIFRZUEVfT1ZFUkZMT1dfVU5ERUZJTkVEDQo+Pj4+ICAgbXVzdCBpc3N1ZSBhIHdhcm5pbmcg YmFzZWQgb24gd2Fybl9zdHJpY3Rfb3ZlcmZsb3cuICBJbiBzb21lIGNhc2VzDQo+Pj4+ICAgaXQg d2lsbCBiZSBhcHByb3ByaWF0ZSB0byBpc3N1ZSB0aGUgd2FybmluZyBpbW1lZGlhdGVseSwgYW5k IGluDQo+Pj4+ICAgb3RoZXIgY2FzZXMgaXQgd2lsbCBiZSBhcHByb3ByaWF0ZSB0byBzaW1wbHkg c2V0IGEgZmxhZyBhbmQgbGV0IHRoZQ0KPj4+PiAgIGNhbGxlciBkZWNpZGUgd2hldGhlciBhIHdh cm5pbmcgaXMgYXBwcm9wcmlhdGUgb3Igbm90LiAgKi8NCj4+Pj4gI2RlZmluZSBUWVBFX09WRVJG TE9XX1VOREVGSU5FRChUWVBFKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4+Pj4gIChQ T0lOVEVSX1RZUEVfUCAoVFlQRSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXA0KPj4+PiAgID8gIWZsYWdfd3JhcHZfcG9pbnRlciAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcDQo+Pj4+ICAgOiAoIUFOWV9JTlRFR1JBTF9UWVBFX0NIRUNLKFRZ UEUpLT5iYXNlLnUuYml0cy51bnNpZ25lZF9mbGFnIFwNCj4+Pj4gICAgICAmJiAhZmxhZ193cmFw diAmJiAhZmxhZ190cmFwdikpDQo+Pj4+IA0KPj4+PiBUaGUgbG9naWMgYWJvdmUgc2VlbXMgdHJl YXRpbmcgdGhlIHBvaW50ZXIgZGVmYXVsdCBhcyBzaWduZWQgaW50ZWdlciwgcmlnaHQ/DQo+Pj4g DQo+Pj4gSXQgb25seSBzYXlzIHRoZSBwb2ludGVycyBjYW5ub3Qgb3ZlcmZsb3csIG5vdCB0aGUg cG9pbnRlcnMgYXJlIHNpZ25lZC4NCj4+PiANCj4+PiBwcmludGYoIiVkXG4iLCAoY2hhciAqKShp bnRwdHJfdCktMSA+IChjaGFyICopKGludHB0cl90KTEpOw0KPj4+IA0KPj4+IHByb2R1Y2VzIDEg aW5zdGVhZCBvZiAwLiAgVGVjaG5pY2FsbHkgdGhpcyBpcyBpbnZva2luZyB1bmRlZmluZWQNCj4+ PiBiZWhhdmlvciBhbmQgYSBjb25mb3JtaW5nIGltcGxlbWVudGF0aW9uIGNhbiBvdXRwdXQgYW55 dGhpbmcuICBCdXQNCj4+PiBjb25zaWRlciBhIDMyLWJpdCBiYXJlIG1ldGFsIHRhcmdldCB3aGVy ZSB0aGUgbGlua2VyIGNhbiBsb2NhdGUgYSAiY2hhcg0KPj4+IHhbNTEyXSIgYXQgWzB4N2ZmZmZm MDAsIDB4ODAwMDAxMDApLiAgVGhlIHN0YW5kYXJkIHRoZW4gcmVxdWlyZXMgJnhbNTEyXQ0KPj4+ PiAmeFswXSwgYnV0IGlmIHdlIGRvIGEgc2lnbmVkIGNvbXBhcmlzb24gaGVyZSB3ZSdsbCBlbmQg dXAgIiZ4WzUxMl0gPA0KPj4+ICZ4WzBdIiwgdGhpcyBpcyBub24tY29uZm9ybWluZy4NCj4+IA0K Pj4gU28sIGFyZSBib3RoIHRoZSBhYm92ZSBleGFtcGxlcyBzaG93aW5nIHRoYXQgcG9pbnRlciBi YXNlZCBjb21wYXJpc29ucyBhcmUgc2ltaWxhciBhcyB1bnNpZ25lZCBpbnRlZ2VyIGNvbXBhcmlz b24/ICAtOikNCj4+IERvIHdlIGhhdmUgZXhhbXBsZXMgb24gdHJlYXRpbmcgdGhlIHBvaW50ZXIg YXJpdGhtZXRpYyBhcyBzaWduZWQgaW50ZWdlciBhcml0aG1ldGljPyAoUmVhbGx5IGN1cmlvdXMg b24gdGhpc+KApi4pDQo+PiANCj4+IEJ1dCBhbnl3YXksIGlmIHdlIGNhbm5vdCB0cmVhdCBwb2lu dGVyIHR5cGUgY29uc2lzdGVudGx5IGFzIHNpZ25lZCBvciB1bnNpZ25lZCwgc2hhbGwgd2Ugc3Rp bGwgbmVlZCB0byBjYXRjaCBwb2ludGVyIG92ZXJmbG93Pw0KPj4gDQo+PiBDdXJyZW50bHksIElu IEdDQywgd2UgaGF2ZSAtZnNhbml0aXplPXNpZ25lZC1pbnRlZ2VyLW92ZXJmbG93IHRvIGNhdGNo IHNpZ25lZCBpbnRlZ2VyIG92ZXJmbG93Lg0KPj4gQnV0IHdlIGRvbuKAmXQgaGF2ZSBvcHRpb25z IHRvIGNhdGNoIHVuc2lnbmVkIGludGVnZXIgb3ZlcmZsb3cgYW5kIHBvaW50ZXIgb3ZlcmZsb3cu DQo+PiANCj4+IFNoYWxsIHdlIGFkZCB0d28gbW9yZSBvcHRpb25zIHRvIGNhdGNoIHVuc2lnbmVk IGludGVnZXIgb3ZlcmZsb3cgYW5kIHBvaW50ZXIgb3ZlcmZsb3csIGxpa2U6DQo+PiANCj4+IC1m c2FuaXRpemU9dW5zaWduZWQtaW50ZWdlci1vdmVyZmxvdw0KPj4gLWZzYW5pdGl6ZT1wb2ludGVy LW92ZXJmbG93DQo+PiANCj4+IENMQU5HIGFscmVhZHkgcHJvdmlkZWQgLWZzYW5pdGl6ZT11bnNp Z25lZC1pbnRlZ2VyLW92ZXJmbG93LiBHQ0MgbWlnaHQgbmVlZCB0byBkbyB0aGUgc2FtZS4NCj4g DQo+IE5PLiBUaGVyZSBpcyBubyBzdWNoIHRoaW5nIGFzIHVuc2lnbmVkIGludGVnZXIgb3ZlcmZs b3cuIFRoYXQgb3B0aW9uDQo+IGlzIGJhZGx5IGRlc2lnbmVkIGFuZCB0aGUgR0NDIGNvbW11bml0 eSBoYXMgcmVqZWN0ZWQgYSBmZXcgdGltZXMgbm93DQo+IGhhdmluZyB0aGF0IHNhbml0aXplciBi ZWZvcmUuIEl0IGlzIGJhZCBmb3JtIHRvIGhhdmUgYSBzYW5pdGl6ZXIgZm9yDQo+IHdlbGwgZGVm aW5lZCBjb2RlLg0KDQpFdmVuIHRob3VnaCB1bnNpZ25lZCBpbnRlZ2VyIG92ZXJmbG93IGlzIHdl bGwgZGVmaW5lZCwgaXQgbWlnaHQgYmUgdW5pbnRlbnRpb25hbCwgc2hhbGwgd2Ugd2FybiB1c2Vy IGFib3V0IHRoaXM/DQoNCj4gDQo+IE5vdyAtZnNhbml0aXplPXBvaW50ZXItb3ZlcmZsb3cgaXMg YWxyZWFkeSB0aGVyZSBmb3IgR0NDIHdoaWNoIHdhcw0KPiBhZGRlZCBpbiByOC0yMjM4LWdjOWIz OWE0OTU1ZjU2ZmU2MDllZjU0NzggLiBMTFZNL2NsYW5nIGFsc28gcHJvdmlkZXMNCj4gaXQgaW4g dGhlIHNhbWUgdGltZWZyYW1lIHRvbyAuDQo+IGh0dHBzOi8vZ2NjLmdudS5vcmcvYnVnemlsbGEv c2hvd19idWcuY2dpP2lkPTgwOTk4DQoNCkdvdCBpdC4gVGhhbmtzIGEgbG90IGZvciB0aGUgaW5m by4NCg0KUWluZw0KPiANCj4gVGhhbmtzLA0KPiBBbmRyZXcNCj4gDQo+PiANCj4+IEFuZCBib3Ro IENsYW5nIGFuZCBHQ0MgbWlnaHQgYWxzbyBuZWVkIHRvIGFkZCAtZnNhbml0aXplPXBvaW50ZXIt b3ZlcmZsb3c/DQo+PiANCj4+PiBJSVVDLCBwb2ludGVycyBhcmUgbm90IGludGVnZXJzLCBhdCBh bGwuICBJZiB3ZSB0cmVhdCB0aGVtIGFzIGludGVnZXJzDQo+Pj4gaW4gdGhlIGJyYWluIHdlJ2xs IGVuZCB1cCBpbnZva2luZyB1bmRlZmluZWQgYmVoYXZpb3Igc29vbmVyIG9yIGxhdGVyLg0KPj4+ IFRodXMgdGhlIHdyYXBwaW5nL292ZXJmbG93aW5nIGJlaGF2aW9yIG9mIHBvaW50ZXIgaXMgY29u dHJvbGxlZCBieSBhDQo+Pj4gZGlmZmVyZW50IG9wdGlvbiB0aGFuIGludGVnZXJzLg0KPj4gDQo+ PiBIb3dldmVyLCB0aGUgd3JhcHBpbmcvb3ZlcmZsb3dpbmcgYmVoYXZpb3Igb2YgcG9pbnRlcnMg aXMgc3RpbGwgYmFzZWQgb24gdGhlIGNvcnJlc3BvbmRpbmcgaW50ZWdlcihvciB1bnNpZ25lZCBp bnRlZ2VyKSB3cmFwcGluZy9vdmVyZmxvd2luZywgcmlnaHQ/DQo+PiBEbyB3ZSBoYXZlIHNwZWNp YWwgcG9pbnRlciB3cmFwcGluZy9vdmVyZmxvd2luZz8NCj4+IA0KPj4gUWluZw0KPj4gDQo+Pj4g DQo+Pj4gLS0NCj4+PiBYaSBSdW95YW8gPHhyeTExMUB4cnkxMTEuc2l0ZT4NCj4+PiBTY2hvb2wg b2YgQWVyb3NwYWNlIFNjaWVuY2UgYW5kIFRlY2hub2xvZ3ksIFhpZGlhbiBVbml2ZXJzaXR5DQoN Cg==