From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id E9E453840035 for ; Tue, 10 Aug 2021 15:55:54 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E9E453840035 Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17AFpewD026133; Tue, 10 Aug 2021 15:55:52 GMT Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3aav18mh87-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Aug 2021 15:55:52 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17AFoQ8C142425; Tue, 10 Aug 2021 15:55:51 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2046.outbound.protection.outlook.com [104.47.66.46]) by aserp3020.oracle.com with ESMTP id 3a9vv4xju4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Aug 2021 15:55:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YjMjMZxc4yF7F2GQkc8n+KcUMSTZl4NoFDCAEhLm2dVi7IdJQZ+2n8F93I3GiXU8rxLJG6JXMdjjgs1c1O0sCRsKkOegAYKICJMZIYzyPGUHCEgHFC/nNuwKGqihay5MwhyPtNS5KMiGhuLRDre6ks1s13QhLCgoMyeumDENjqmrHRfsK/Wrzbw6d40vGd9Ove3CcrqKNWAR+ty7vjhNIvw/4tu5+7z/vaDUgByyCiQjTHIUy1fDA2NodayiHfp3EkBgwj4NH86SQfD8XJVGc7zDJ93l8BRIdGONNvFZeSpl5dOn3BabGFNxznJOikOG2734Z2PzFycpKaghfLln/A== 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-SenderADCheck; bh=pHm164oSNHkjH/q9NVZn9jcRBHIyFGkBnT/sEEOe+Fk=; b=ZPoq8olA1il4oOZ6tBES3/FIzNv7d7ORA5VbHFEFPO5O6EbZAIS0Ooo17CcZVrbP6n+mdX5f/TDBkL+OOC+wpPWCjU1wKHfmTMAbUSwcqsnpndHjjMlOF0O0/83Pg5zK9ApFlRo1kGmKuM3b6BYxnvXSonYg0OFwAVyzemDV0VcZ1G/2THDmC+IpGvejyjCxNpcAIn6ng8P8pBqq7KOZANMN21LT+mSXqtYtrSTQyQvYkBJJSkl3QULOLZ6Qhdq2A4Vg0SGsCF1H9mFuMhL882eom7GoT1LOPaL1aO0tW8RS5yiJYJs2oi2SPyK60RyJAzNf7b+7UYs+vABzJk417w== 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 Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by CH0PR10MB5164.namprd10.prod.outlook.com (2603:10b6:610:da::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4394.20; Tue, 10 Aug 2021 15:55:49 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f463:6b71:2491:d547]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f463:6b71:2491:d547%9]) with mapi id 15.20.4415.014; Tue, 10 Aug 2021 15:55:49 +0000 From: Qing Zhao To: Richard Biener CC: Martin Jambor , Jakub Jelinek , Kees Cook , Nick Alcock via Gcc-patches , Richard Biener Subject: Re: [patch][version 6] add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Topic: [patch][version 6] add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Index: AQHXgpcfj6SO0Rka1UmU0GU91mFncqtrSzIAgAApjACAAPr8gIAAZYMAgAAKVgCAAAy9gIAABZoAgAAJRgA= Date: Tue, 10 Aug 2021 15:55:49 +0000 Message-ID: <804DFB20-DC0D-4156-BDAA-E34CC4CD2069@oracle.com> References: <52E29277-1403-4755-901A-528116C43FB8@oracle.com> <58ADBC0C-9D44-485B-BB5A-B072664B9C4F@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.3608.120.23.2.7) x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a54ed902-c32d-457f-1709-08d95c1752c4 x-ms-traffictypediagnostic: CH0PR10MB5164: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Y/Gp4VZ1Ad08n5BkHhv4/G9IJMRg313Y4OJbLwOGmzr7elIpX3l3AQLPtQUniaPkR6uAuQM78HdgLmmiiQh1XluA0HjZgtSowrie/LSBBBiE8P6ZyJKA2OgPD6giiGXpRDOQSQ45t6zvJzP8DwaGAEW3RsyRNrv96PY+qVImKjrGl/6QqHCn7BEDb07vR61ZN1j28PSCqGgxn8XfCAhQZH59FY0BYqui+TiZ1DOeguDx6LKZTmSwjK3xmzfrzAjNtVzeNkYUtPt2ZkJmzKSFJR3FWg/9AWvVHz/BlxX5KMgenYPyi323rqNNcSiCWOIvWFLkumTimg/ToOx0HbxTzoypppO02hDjlCg0nJ6+EgQQ0h3I7eVH4FryoNlZnT9pKPmI0tgaPWMmNHNUPkyuVlFo3HaHiun0EP/kkyezlIW/bhvrzYsN9osnduar14AqvXq10woppRHhy8DrlVd/Dx1sEtI5cr6GSsyZ9NVgNBRF7KHjWNHrfmHpLp0jDn71hMPJK8GWZdHAfgYiUvhnWNGnNFPueEIe/E2LCShsY6Ukv0535R9VA/RCcKo+xeiXeMZ5OvaPROw8i07MGkAf6rmiDsAA/Amf6q66dLsGm4RdwJMT7u3qYl3sals4Ma1JV9hy6v7cDSCI9Nh+EQ/+oMsLw+1ARClfVdywE+zZYIH7qjVIa7A/Iy5SDQ+sAhUKrDs7/rqb3qtPMlM8K6AGKUIhYOjIdA0C8zMWklt34EssZfl4/f5ePmC0N8HaWaO/aJcYhlDXEtkF4o0ipTITRg== 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:(346002)(366004)(39860400002)(376002)(396003)(136003)(6506007)(4326008)(53546011)(8676002)(2616005)(64756008)(66946007)(66476007)(2906002)(83380400001)(5660300002)(6512007)(71200400001)(6486002)(91956017)(6916009)(76116006)(44832011)(8936002)(66446008)(186003)(66556008)(122000001)(38100700002)(33656002)(316002)(86362001)(54906003)(36756003)(478600001)(38070700005)(45980500001)(266184004); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RlJFMHBiRENUMDFKTSszSUdDU1JPTEZVcW44VlhCWjdCWW04TmdicWpvSG9i?= =?utf-8?B?Z0lNSDNCSStob3FtR1dxS0JmZkJEbVpCSGR3cWRQVnllU3hzaXovVFVJRFdj?= =?utf-8?B?c0p1M3BkaVlJYmV5eXBpZFAwME5YeUdESVU1SElheHVoeklNSmN4c1ZHbFBs?= =?utf-8?B?TVk4c2NheGltK0JvdDF1dXJ4Vlg2am5leTVXeStyZ05UU1RKVWRycWU1QWJx?= =?utf-8?B?aCtveEZVaVM1MHpkKy9xZk9EK0tESVZNd2hmQW1PbEtOQ1BqYlh3ZnhJQnE2?= =?utf-8?B?bjF0ZjVRM3BQdnpzNGduTnZST0kxbnppcWU3VUlNejkrOG5xdWZkYlRHZWh4?= =?utf-8?B?NU13OXgwbnB0QVQ1Y3ZwVGZUd0ZtczFDTy9XMEpsbmw5NlNaMVN6aUZPREJU?= =?utf-8?B?MVcyZWhsV3I5RmQrS2pBQzJkWkdDaExISUdaeENXNEJLWW5WL2ZsRDkySHFC?= =?utf-8?B?N0RuUzN5U3dBYi9wV0V4VVljK0hsOXRQMmY0U29hZFl6VXluL3Q5bndEWkxa?= =?utf-8?B?d0YzdEl2enpraXFUZ0FkVk1KdUNCWndQb2tFS29rOEpteDViU2FlVjJoWS96?= =?utf-8?B?TzdnancxQW5HbGVMbzgzM0dWdVRqdjV5QVFoWkZhYjJiZHZlcFhBSEpLU0hp?= =?utf-8?B?NXBzRWVLVm50d1BsVFZKaXFXWFp3eW04aXBCQW1TUW9TbWdWTU11Y1R4SlZy?= =?utf-8?B?M0kzaFhpU3BwQkJ5M0FhZXlPbllISElDNk5ueHJoVkQrdGdyYlBPUDl2a3lz?= =?utf-8?B?M3E4dnhya1ZPaXBtU1Y2aXpuM1VoU0M3YWczaW1BUi9GbnVOcEZ1VlZaSzhH?= =?utf-8?B?OURFSHI1aEpmaEEwT3JqS0doU1BQZFJBWEIrZ1hTcnZZbC94T2ltaCtGdzIx?= =?utf-8?B?STRiTjhsWVp5MUlJeE1xOXZDNzlEdnVzTG81UjAyU2tjLyt1NXRWK2kwMlYr?= =?utf-8?B?ZE5GUEhNYXpnakRjV3lLSkxSSlRiOExBMUdMNzNuSytLUEZ3T1Z3cTFwK1di?= =?utf-8?B?TkFBV0tXUlh3WEcybVQzelRoaFlNbmZ3Qkd5dnlOWjhkMnFGK3IyOHJucitH?= =?utf-8?B?OTdwY1oyUEhJcklNTDFVK3k2TTg0Nk9EWTlwSExxOW40YjhrR1lNUjAyL1hD?= =?utf-8?B?S1RMUG9HWUx6dHBNeThwUTZWcEEvenFKdmxJYzF4M0FZdXFKdUk3UnFMU05Q?= =?utf-8?B?VEk3SG40ZUt6VHdOTTEvb245V012ZlRseHNpUnBBbGdKdDhWdTAzRWI0bXhP?= =?utf-8?B?QmhPWVcydVFKbEp3SUdjdWJGSVBhWE9ENnF4WWJmMElMOEhHZTZOK1VzdkY1?= =?utf-8?B?NnY4WXQzUldpQWFadmpnY2ovYXF1YzlyS3dvNTVMZGVoUFBpWG5Eb3psZ0RG?= =?utf-8?B?bkptWCtBN0NZYzNDQ1BRck9PLzhlOENnQmc3ZWJETXFJSnlSWGhPcEJzQVhm?= =?utf-8?B?MGFkRlF0VXFRMUVhbGY5OWQ1S3loeEtJTEdxRVlrcnA3UEl6SGNhNUIzVmx0?= =?utf-8?B?cWplZTZ0ajlicm5CS3BTYXVwZXowbjNWTythNDdrblVXcU9mczk4NE1ad0ts?= =?utf-8?B?OFpZc1hKaWJ6NjlXTlNPQzJmSmxpZWE5L1RXVkNaZDFIbk1lNUFRdkdwamw4?= =?utf-8?B?WW5UZ21GWExxaVpvcHBrUFo3enl2aTYzSjdlcWZMaGprUzBZODdnNUFUOEdi?= =?utf-8?B?SjdBU2pUV3hJbEVEVDhIQ08wMDh3UjhVeDNQWXVPK2RqaGtIRjNRaFpObDVs?= =?utf-8?B?clJNclJFNzNJb3R1aGViaDI1a2NsRzFjVUZSakFXdDZ5bnlLT242QUQyU2tL?= =?utf-8?B?QnVON1Q5T1kzVDFiZUxlb1g3MExiemJaclV2YmRnY1VObVN5SEVxT1NQZXFZ?= =?utf-8?Q?4Kw4e+oC05JIL?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <975BF8A733418F488D61FBA9C1E67F55@namprd10.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 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: a54ed902-c32d-457f-1709-08d95c1752c4 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Aug 2021 15:55:49.1524 (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: Mxz5TkI8PQmpsBpwsdUEpCYP+JyIlkXb1lLsismp9W5GddSEjZUJ8xjInR7HYjXOICmkYuAVh2IP3KDjtbkL2Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB5164 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10072 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 mlxscore=0 phishscore=0 spamscore=0 mlxlogscore=999 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108100101 X-Proofpoint-ORIG-GUID: MIQ61HTB53GIEbd3PxTANzCPKGTGnEVc X-Proofpoint-GUID: MIQ61HTB53GIEbd3PxTANzCPKGTGnEVc X-Spam-Status: No, score=-10.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Aug 2021 15:56:05 -0000 DQoNCj4gT24gQXVnIDEwLCAyMDIxLCBhdCAxMDoyMiBBTSwgUmljaGFyZCBCaWVuZXIgPHJndWVu dGhlckBzdXNlLmRlPiB3cm90ZToNCj4gDQo+IE9uIFR1ZSwgMTAgQXVnIDIwMjEsIFFpbmcgWmhh byB3cm90ZToNCj4gDQo+PiBIaSwNCj4+IA0KPj4+IE9uIEF1ZyAxMCwgMjAyMSwgYXQgOToxNiBB TSwgUmljaGFyZCBCaWVuZXIgPHJndWVudGhlckBzdXNlLmRlPiB3cm90ZToNCj4+PiANCj4+PiBP biBUdWUsIDEwIEF1ZyAyMDIxLCBRaW5nIFpoYW8gd3JvdGU6DQo+Pj4gDQo+Pj4+Pj4+IA0KPj4+ Pj4+PiArc3RhdGljIHZvaWQNCj4+Pj4+Pj4gK2V4cGFuZF9ERUZFUlJFRF9JTklUIChpbnRlcm5h bF9mbiwgZ2NhbGwgKnN0bXQpDQo+Pj4+Pj4+ICt7DQo+Pj4+Pj4+ICsgIHRyZWUgdmFyID0gZ2lt cGxlX2NhbGxfbGhzIChzdG10KTsNCj4+Pj4+Pj4gKyAgdHJlZSBzaXplX29mX3ZhciA9IGdpbXBs ZV9jYWxsX2FyZyAoc3RtdCwgMCk7DQo+Pj4+Pj4+ICsgIHRyZWUgdmxhYWRkciA9IE5VTExfVFJF RTsNCj4+Pj4+Pj4gKyAgdHJlZSB2YXJfdHlwZSA9IFRSRUVfVFlQRSAodmFyKTsNCj4+Pj4+Pj4g KyAgYm9vbCBpc192bGEgPSAoYm9vbCkgVFJFRV9JTlRfQ1NUX0xPVyAoZ2ltcGxlX2NhbGxfYXJn IChzdG10LCAyKSk7DQo+Pj4+Pj4+ICsgIGVudW0gYXV0b19pbml0X3R5cGUgaW5pdF90eXBlDQo+ Pj4+Pj4+ICsgICAgPSAoZW51bSBhdXRvX2luaXRfdHlwZSkgVFJFRV9JTlRfQ1NUX0xPVyAoZ2lt cGxlX2NhbGxfYXJnIChzdG10LCAxKSk7DQo+Pj4+Pj4+ICsNCj4+Pj4+Pj4gKyAgZ2NjX2Fzc2Vy dCAoaW5pdF90eXBlID4gQVVUT19JTklUX1VOSU5JVElBTElaRUQpOw0KPj4+Pj4+PiArDQo+Pj4+ Pj4+ICsgIC8qIGlmIHRoaXMgdmFyaWFibGUgaXMgYSBWTEEsIGdldCBpdHMgU0laRSBhbmQgQURE UiBmaXJzdC4gICovDQo+Pj4+Pj4+ICsgIGlmIChpc192bGEpDQo+Pj4+Pj4+ICsgICAgew0KPj4+ Pj4+PiArICAgICAgLyogVGhlIHRlbXBvcmFyeSBhZGRyZXNzIHZhcmlhYmxlIGZvciB0aGlzIHZs YSBzaG91bGQgaGF2ZSBiZWVuDQo+Pj4+Pj4+ICsgICAgICAgIGNyZWF0ZWQgZHVyaW5nIGdpbXBs aWZpY2F0aW9uIHBoYXNlLiAgUmVmZXIgdG8gZ2ltcGxpZnlfdmxhX2RlY2wNCj4+Pj4+Pj4gKyAg ICAgICAgZm9yIGRldGFpbHMuICAqLw0KPj4+Pj4+PiArICAgICAgdHJlZSB2YXJfZGVjbCA9IChU UkVFX0NPREUgKHZhcikgPT0gU1NBX05BTUUpID8NCj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAg ICAgICBTU0FfTkFNRV9WQVIgKHZhcikgOiB2YXI7DQo+Pj4+Pj4+ICsgICAgICBnY2NfYXNzZXJ0 IChERUNMX0hBU19WQUxVRV9FWFBSX1AgKHZhcl9kZWNsKSk7DQo+Pj4+Pj4+ICsgICAgICBnY2Nf YXNzZXJ0IChUUkVFX0NPREUgKERFQ0xfVkFMVUVfRVhQUiAodmFyX2RlY2wpKSA9PSANCj4+Pj4+ Pj4gSU5ESVJFQ1RfUkVGKTsNCj4+Pj4+Pj4gKyAgICAgIC8qIEdldCB0aGUgYWRkcmVzcyBvZiB0 aGlzIHZsYSB2YXJpYWJsZS4gICovDQo+Pj4+Pj4+ICsgICAgICB2bGFhZGRyID0gVFJFRV9PUEVS QU5EIChERUNMX1ZBTFVFX0VYUFIgKHZhcl9kZWNsKSwgMCk7DQo+Pj4+Pj4+IA0KPj4+Pj4+PiBl cnIgLSBpc24ndCB0aGUgYWRkcmVzcyBvZiB0aGUgZGVjbCByZXByZXNlbnRlZCBieSB0aGUgTEhT IA0KPj4+Pj4+PiByZWdhcmRsZXNzIHdoZXRoZXIgdGhpcyBpcyBhIFZMQSBvciBub3Q/DQo+Pj4+ Pj4gDQo+Pj4+Pj4gVGhlIExIUyBvZiB0aGUgY2FsbCB0byAuREVGRVJSRURfSU5JVCBpcyB0aGUg REVDTCBpdHNlbGYgd2hhdGV2ZXIgaXTigJlzIGEgVkxBIG9yIG5vdC4gDQo+Pj4+Pj4gDQo+Pj4+ Pj4gSW4gb3JkZXIgdG8gY3JlYXRlIGEgbWVtc2V0IGNhbGwsIHdlIG5lZWQgdGhlIEFkZHJlc3Mg b2YgdGhpcyBERUNMIGFzIHRoZSBmaXJzdCBhcmd1bWVudC4gDQo+Pj4+Pj4gSWYgdGhlIERFQ0wg aXMgbm90IGEgVkxBLCB3ZSBqdXN0IHNpbXBseSBhcHBseSDigJxidWlsZF9mb2xkX2FkZHJfZXhw cuKAnSBvbiB0aGlzIERFQ0wgdG8gZ2V0IGl0cyBhZGRyZXNzLA0KPj4+Pj4+IEhvd2V2ZXIsIGZv ciBWTEEsIGR1cmluZyBnaW1wbGlmaWNhdGlvbiBwaGFzZSDigJxnaW1wbGlmeV92bGFfZGVjbOKA nSwgd2UgaGF2ZSBhbHJlYWR5IGNyZWF0ZWQgYSB0ZW1wb3JhcnkNCj4+Pj4+PiBhZGRyZXNzIHZh cmlhYmxlIGZvciB0aGlzIERFQ0wsIGFuZCByZWNvcmRlZCB0aGlzIGFkZHJlc3MgdmFyaWFibGUg d2l0aCDigJxERUNMX1ZBTFVFX0VYUFIoREVDTCksIA0KPj4+Pj4+IFdlIHNob3VsZCB1c2UgdGhp cyBhbHJlYWR5IGNyZWF0ZWQgYWRkcmVzcyB2YXJpYWJsZSAgZm9yIFZMQXMuIA0KPj4+Pj4gDQo+ Pj4+PiBTbyB0aGUgaXNzdWUgaXMgdGhhdCB0aGUgTEhTIG9mIHRoZSAuREVGRVJSRURfSU5JVCBj YWxsIGlzIG5vdCBwcm9wZXJseQ0KPj4+Pj4gZ2ltcGxpZmllZC4gIFdlIHNob3VsZCBub3QgaGF2 ZSBzdWNoIGRlY2wgdGhlcmUgYnV0IEkgc2VlIHdlIGRvIG5vdA0KPj4+Pj4gaGF2ZSBJTCB2ZXJp ZmljYXRpb24gdGhhdCBjb3ZlcnMgdGhpcy4NCj4+Pj4gDQo+Pj4+IERvbuKAmXQgcXVpdGUgdW5k ZXJzdGFuZCBoZXJlOiAgZG8geW91IG1lYW4gYWxsIHRoZSBMSFMgb2YgLkRFRkVSUkVEX0lOSVQg Y2FsbCBhcmUgbm90IHByb3Blcmx5IGdpbXBsaWZpZWQsIG9yDQo+Pj4+IE9ubHkgdGhlIExIUyBv ZiAuREVGRVJSRURfSU5JVCBjYWxsIGZvciBWTEEgYXJlIG5vdCBwcm9wZXJseSBnaW1wbGlmaWVk Pw0KPj4+IA0KPj4+IEVzcGVjaWFsbHkgaW4gdGhlIFZMQSBjYXNlIGJ1dCBsaWtlbHkgYWxzbyBp biBnZW5lcmFsICh0aG91Z2ggdW5saWtlbHkNCj4+PiBzaW5jZSB1c3VhbGx5IHRoZSByZWNlaXZl ciBvZiBpbml0aWFsaXphdGlvbnMgYXJlIHNpbXBsZSBlbm91Z2gpLiAgSSdkDQo+Pj4gZXhwZWN0 IHRoZSBWTEEgY2FzZSBlbmQgdXAgYXMNCj4+PiANCj4+PiAqcHRyX3RvX2RlY2wgPSAuREVGRVJS RURfSU5JVCAoLi4uKTsNCj4+PiANCj4+PiB3aGVyZSAqcHRyX3RvX2RlY2wgaXMgdGhlIERFQ0xf VkFMVUVfRVhQUiBvZiB0aGUgZGVjbC4NCj4+IA0KPj4gU28sIGZvciB0aGUgZm9sbG93aW5nIHNt YWxsIHRlc3RpbmcgY2FzZToNCj4+IA0KPj4gPT09PQ0KPj4gZXh0ZXJuIHZvaWQgYmFyIChpbnQp Ow0KPj4gDQo+PiB2b2lkIGZvbyhpbnQgbikNCj4+IHsNCj4+ICBpbnQgYXJyW25dOw0KPj4gIGJh ciAoYXJyWzJdKTsNCj4+ICByZXR1cm47DQo+PiB9DQo+PiA9PT09PQ0KPj4gDQo+PiBJZiBJIGNv bXBpbGUgaXQgd2l0aCAtZnRyaXZpYWwtYXV0by12YXItaW5pdD16ZXJvIC1mZHVtcC10cmVlLWdp bXBsZSAtUyAtbyBhdXRvLWluaXQtMTEucyAtZmR1bXAtcnRsLWV4cGFuZCwgdGhlICouZ2ltcGxl IGR1bXAgaXM6DQo+PiANCj4+ID09PT09DQo+PiB2b2lkIGZvbyAoaW50IG4pDQo+PiB7DQo+PiAg aW50IG4uMDsNCj4+ICBzaXpldHlwZSBELjE5NTA7DQo+PiAgYml0c2l6ZXR5cGUgRC4xOTUxOw0K Pj4gIHNpemV0eXBlIEQuMTk1MjsNCj4+ICBiaXRzaXpldHlwZSBELjE5NTM7DQo+PiAgc2l6ZXR5 cGUgRC4xOTU0Ow0KPj4gIGludFswOkQuMTk1MF0gKiBhcnIuMTsNCj4+ICB2b2lkICogc2F2ZWRf c3RhY2suMjsNCj4+ICBpbnQgYXJyWzA6RC4xOTUwXSBbdmFsdWUtZXhwcjogKmFyci4xXTsNCj4+ IA0KPj4gIHNhdmVkX3N0YWNrLjIgPSBfX2J1aWx0aW5fc3RhY2tfc2F2ZSAoKTsNCj4+ICB0cnkN Cj4+ICAgIHsNCj4+ICAgICAgbi4wID0gbjsNCj4+ICAgICAgXzEgPSAobG9uZyBpbnQpIG4uMDsN Cj4+ICAgICAgXzIgPSBfMSArIC0xOw0KPj4gICAgICBfMyA9IChzaXpldHlwZSkgXzI7DQo+PiAg ICAgIEQuMTk1MCA9IF8zOw0KPj4gICAgICBfNCA9IChzaXpldHlwZSkgbi4wOw0KPj4gICAgICBf NSA9IChiaXRzaXpldHlwZSkgXzQ7DQo+PiAgICAgIF82ID0gXzUgKiAzMjsNCj4+ICAgICAgRC4x OTUxID0gXzY7DQo+PiAgICAgIF83ID0gKHNpemV0eXBlKSBuLjA7DQo+PiAgICAgIF84ID0gXzcg KiA0Ow0KPj4gICAgICBELjE5NTIgPSBfODsNCj4+ICAgICAgXzkgPSAoc2l6ZXR5cGUpIG4uMDsN Cj4+ICAgICAgXzEwID0gKGJpdHNpemV0eXBlKSBfOTsNCj4+ICAgICAgXzExID0gXzEwICogMzI7 DQo+PiAgICAgIEQuMTk1MyA9IF8xMTsNCj4+ICAgICAgXzEyID0gKHNpemV0eXBlKSBuLjA7DQo+ PiAgICAgIF8xMyA9IF8xMiAqIDQ7DQo+PiAgICAgIEQuMTk1NCA9IF8xMzsNCj4+ICAgICAgYXJy LjEgPSBfX2J1aWx0aW5fYWxsb2NhX3dpdGhfYWxpZ24gKEQuMTk1NCwgMzIpOw0KPj4gICAgICBh cnIgPSAuREVGRVJSRURfSU5JVCAoRC4xOTUyLCAyLCAxKTsNCj4+ICAgICAgXzE0ID0gKCphcnIu MSlbMl07DQo+PiAgICAgIGJhciAoXzE0KTsNCj4+ICAgICAgcmV0dXJuOw0KPj4gICAgfQ0KPj4g IGZpbmFsbHkNCj4+ICAgIHsNCj4+ICAgICAgX19idWlsdGluX3N0YWNrX3Jlc3RvcmUgKHNhdmVk X3N0YWNrLjIpOw0KPj4gICAgfQ0KPj4gfQ0KPj4gDQo+PiA9PT09DQo+PiANCj4+IFlvdSB0aGlu ayB0aGF0IHRoZSBhYm92ZSAuREVGRUVSRURfSU5JVCBpcyBub3QgY29ycmVjdD8NCj4+IEl0IHNo b3VsZCBiZToNCj4+IA0KPj4gKmFyci4xID0gLkRFRkVSUkVEX0lOSVQgKEQuMTk1Mi4gMiwgMSk7 DQo+PiANCj4+ID8NCj4gDQo+IFllcy4NCj4gDQo+Pj4gDQo+Pj4+IFdoYXQgZG8geW91IG1lYW4g Ynkg4oCcc3VjaOKAnSBkZWNsPyBBIGRlY2wgd2hvbGUg4oCcREVDTF9WQUxVRV9FWFBSKERFQ0wp 4oCdIGlzIHZhbGlkPw0KPj4+IA0KPj4+IEEgJ2RlY2wnIHRoYXQgaGFzIGEgREVDTF9WQUxVRV9F WFBSIHNob3VsZCBub3QgYXBwZWFyIGluIHRoZSBJTCwgaXQgc2hvdWxkDQo+Pj4gYWx3YXlzIGJl IHJlZmVyZWQgdG8gYXMgaXRzIERFQ0xfVkFMVUVfRVhQUi4NCj4+IA0KPj4gT2theS4NCj4gDQo+ IEknbSBnb2luZyB0byB0ZXN0DQo+IA0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtc3NhLW9wZXJh bmRzLmMgYi9nY2MvdHJlZS1zc2Etb3BlcmFuZHMuYw0KPiBpbmRleCBlYmY3ZWVhM2IwNC4uMTVj NzNiNmQ2ZjQgMTAwNjQ0DQo+IC0tLSBhL2djYy90cmVlLXNzYS1vcGVyYW5kcy5jDQo+ICsrKyBi L2djYy90cmVlLXNzYS1vcGVyYW5kcy5jDQo+IEBAIC03OTksMTAgKzc5OSwxMSBAQCBvcGVyYW5k c19zY2FubmVyOjpnZXRfZXhwcl9vcGVyYW5kcyAodHJlZSAqZXhwcl9wLCANCj4gaW50IGZsYWdz KQ0KPiAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyB8IG9wZl9ub3Rfbm9uX2FkZHJlc3Nh YmxlIHwgDQo+IG9wZl9hZGRyZXNzX3Rha2VuKTsNCj4gICAgICAgcmV0dXJuOw0KPiANCj4gLSAg ICBjYXNlIFNTQV9OQU1FOg0KPiAgICAgY2FzZSBWQVJfREVDTDoNCj4gICAgIGNhc2UgUEFSTV9E RUNMOg0KPiAgICAgY2FzZSBSRVNVTFRfREVDTDoNCj4gKyAgICAgIGdjY19jaGVja2luZ19hc3Nl cnQgKCFERUNMX0hBU19WQUxVRV9FWFBSX1AgKGV4cHIpKTsNCj4gKyAgICBjYXNlIFNTQV9OQU1F Og0KPiAgICAgY2FzZSBTVFJJTkdfQ1NUOg0KPiAgICAgY2FzZSBDT05TVF9ERUNMOg0KPiAgICAg ICBpZiAoIShmbGFncyAmIG9wZl9hZGRyZXNzX3Rha2VuKSkNCj4gDQo+IHdoaWNoIHNob3VsZCBw YXNzIG9uIHVubW9kaWZpZWQgdHJ1bmsgKGZpbmdlcnMgY3Jvc3NpbmcgOykpLCBidXQNCj4gaXQg d291bGQgbGlrZWx5IHRyaXAgb24gdGhlIGN1cnJlbnQgLWZ0cml2aWFsLWF1dG8taW5pdCBwYXRj aC4NCkkgd2lsbCB0cnkgdGhpcy4gDQo+IA0KPiBUaGUgaXNzdWUgd2l0aCB0aGUgY3VycmVudCBJ TCBpcyB0aGF0IG5vdGhpbmcga2VlcHMgYXJyLjEgbGl2ZQ0KPiBhbmQgdGh1cyB0aGUgYWxsb2Nh dGlvbiBjb3VsZCBiZSBEQ0VkIGJ1dCB0aGUgLkRFRkVSUkVEX0lOSVQNCj4gY2FsbCB3b3VsZCBy ZW1haW4sIGV2ZW50dWFsbHkgYmVpbmcgZXhwYW5kZWQgdG8gemVybyBzdG9yYWdlDQo+IHRoYXQg aXNuJ3QgdGhlcmUuDQoNCk9rYXksIEkgc2VlIG5vdy4NCldpbGwgdXBkYXRlZCB0aGUgVkxBIHBh cnQgaW4gZ2ltcGxpZnkuYyBhbmQgaW50ZXJuYWwtZm4uYy4NCg0KUWluZw0KDQo+IA0KPiBSaWNo YXJkLg0KDQo=