From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 103766 invoked by alias); 2 Sep 2019 09:16:53 -0000 Mailing-List: contact jit-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Subscribe: Sender: jit-owner@gcc.gnu.org Received: (qmail 103748 invoked by uid 89); 2 Sep 2019 09:16:53 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.100.3 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-21.9 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LOTSOFHASH,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 spammy=blk, yesterday, HTo:U*jit, recording X-Spam-Status: No, score=-21.9 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LOTSOFHASH,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on sourceware.org X-Spam-Level: X-Spam-User: qpsmtpd, 2 recipients X-HELO: EUR03-DB5-obe.outbound.protection.outlook.com Received: from mail-eopbgr40068.outbound.protection.outlook.com (HELO EUR03-DB5-obe.outbound.protection.outlook.com) (40.107.4.68) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 02 Sep 2019 09:16:50 +0000 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=WEBB75T0fF/aV5hcIEzYAGYzymC8ZYnWGrM8nxOJON4=; b=GwDZXT/MhxHEIIn+wi6V4SGA6uwoSaxhmKWYPoNoRZnrJR8c0hQJzJ6z4g65M1qvbKUJFe2X5wkU7h2P39l/QxTnC6/wuRpYWW0u1VkUkJQ2AfsRs9WSwBRjvsaqExQ7bbFUy7vLqKrG2haoJH/zpaoNoNqYmII4hz3DBG0Hlok= Received: from DB7PR08CA0033.eurprd08.prod.outlook.com (2603:10a6:5:16::46) by HE1PR0801MB1851.eurprd08.prod.outlook.com (2603:10a6:3:7b::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2220.20; Mon, 2 Sep 2019 09:16:45 +0000 Received: from DB5EUR03FT029.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e0a::205) by DB7PR08CA0033.outlook.office365.com (2603:10a6:5:16::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2220.19 via Frontend Transport; Mon, 2 Sep 2019 09:16:45 +0000 Authentication-Results: spf=temperror (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; gcc.gnu.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;gcc.gnu.org; dmarc=temperror action=none header.from=arm.com; Received-SPF: TempError (protection.outlook.com: error in processing during lookup of arm.com: DNS Timeout) Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT029.mail.protection.outlook.com (10.152.20.131) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2220.16 via Frontend Transport; Mon, 2 Sep 2019 09:16:43 +0000 Received: ("Tessian outbound d33df262a6a7:v27"); Mon, 02 Sep 2019 09:16:41 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 41f784a6ed1b8c4b X-CR-MTA-TID: 64aa7808 Received: from 652692d890cb.1 (ip-172-16-0-2.eu-west-1.compute.internal [104.47.12.51]) by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6D96EB4D-AA6E-4FF6-9EE7-68E8973D0B8B.1; Mon, 02 Sep 2019 09:16:36 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04lp2051.outbound.protection.outlook.com [104.47.12.51]) by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 652692d890cb.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 02 Sep 2019 09:16:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FnAGSw2ZsU69Qucq2p9LzrQ3AX4H/l1deVXSXp8jkSU+d/a/BhcfGBTYNOLxbH0RrEM2ZL4A329Vfyfrje1kJrU+GWoxdB/ygIk0YOhDbYdtN13fLctUNQpgqaUGqU8r4VJrulCA4e62F71w8SHMBjHDlX3iGlicG28vP+/tmo1tWJYZkA6x4yHArbxLQd/qpLAg53jEGMeD0rA0trMt3s1pxspnNjv2pJOGD+wJxDeDc2oc4dDOw1XS0e2PsiKYK7a6cLkxhwTpBZBSwrh/el+m/d9MEBZmTHa3RFTa8sLqpgYJoY8GnUdPbFW8pyY+FngORHUYDRCXdC6nZBpvwA== 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=WEBB75T0fF/aV5hcIEzYAGYzymC8ZYnWGrM8nxOJON4=; b=kST7N/z8bCJccVVcHOBYL6nLXesymH3OuW4r5MpRsrAoUfs3DoftuWh0cB9IkZtFNTsT84nr+3MySE7Lt1o4DqMRIyGXYCkIm3E6WDyih3+SfZ2Xz/hUgkG2D7pCCL2DzBm0bAKVt17w9tRTO5Ezj+7Ya8abiyuvsHVuzhts16np41jCnXXP6yRwgwqOyP4UNzvsdzlBPUbs9oopHRL4MFDC8mkVz3rdWTj+ecYZEFcuPH2cl/DiryYStUhOwvaA5fobjQauh9YKFPTo54QtTQaE5uBFhseNSdHukWwhjk0HuVhx84Fh0m0Up2ovkBUGQalEw2WM5JeUmYFmUVeisA== 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=WEBB75T0fF/aV5hcIEzYAGYzymC8ZYnWGrM8nxOJON4=; b=GwDZXT/MhxHEIIn+wi6V4SGA6uwoSaxhmKWYPoNoRZnrJR8c0hQJzJ6z4g65M1qvbKUJFe2X5wkU7h2P39l/QxTnC6/wuRpYWW0u1VkUkJQ2AfsRs9WSwBRjvsaqExQ7bbFUy7vLqKrG2haoJH/zpaoNoNqYmII4hz3DBG0Hlok= Received: from VE1PR08MB5070.eurprd08.prod.outlook.com (20.179.29.148) by VE1PR08MB4959.eurprd08.prod.outlook.com (10.255.158.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2220.18; Mon, 2 Sep 2019 09:16:35 +0000 Received: from VE1PR08MB5070.eurprd08.prod.outlook.com ([fe80::dad:f49f:c8d3:faf5]) by VE1PR08MB5070.eurprd08.prod.outlook.com ([fe80::dad:f49f:c8d3:faf5%7]) with mapi id 15.20.2220.021; Mon, 2 Sep 2019 09:16:35 +0000 From: Andrea Corallo To: "jit@gcc.gnu.org" , "gcc-patches@gcc.gnu.org" CC: nd Subject: [PATCH][gcc] libgccjit: handle long literals in playback::context::new_string_literal Thread-Topic: [PATCH][gcc] libgccjit: handle long literals in playback::context::new_string_literal Thread-Index: AQHVYW8dCMmJW7HrCU6PDNsvcxXHiA== Date: Tue, 01 Jan 2019 00:00:00 -0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-clientproxiedby: LO2P265CA0012.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:62::24) To VE1PR08MB5070.eurprd08.prod.outlook.com (2603:10a6:803:105::20) Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Andrea.Corallo@arm.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [217.140.96.140] x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: 8fa178b4-d517-4885-78c9-08d72f864583 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam-Untrusted: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(4618075)(2017052603328)(49563074)(7193020);SRVR:VE1PR08MB4959; X-MS-TrafficTypeDiagnostic: VE1PR08MB4959:|HE1PR0801MB1851: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:6790;OLM:6790; x-forefront-prvs: 01480965DA X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(4636009)(376002)(346002)(39860400002)(396003)(136003)(366004)(54534003)(199004)(53754006)(189003)(52116002)(14454004)(71200400001)(71190400001)(7736002)(8676002)(6506007)(5024004)(14444005)(256004)(386003)(486006)(44832011)(81156014)(110136005)(26005)(81166006)(305945005)(6512007)(66066001)(36756003)(2616005)(2906002)(102836004)(6486002)(186003)(476003)(86362001)(53936002)(8936002)(99936001)(66476007)(66946007)(5660300002)(2501003)(3846002)(316002)(64756008)(66446008)(66556008)(66616009)(6116002)(4326008)(99286004)(450100002)(6436002)(478600001)(25786009)(4226003);DIR:OUT;SFP:1101;SCL:1;SRVR:VE1PR08MB4959;H:VE1PR08MB5070.eurprd08.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info-Original: 0xw9KryTIgLPJFhlLwZa4I/dR0owJwijZERPpkCKzx3G/RpLDqbONACwUaPz3t35aepl9enQsVm4nt4NXod4AL3j8ZsxOWEn8Kz5Urvb8yQGBFqU9G51LWLidibhSWGQ2gJBfKs345y2ubyQWHaLclg/di3dz4iPHvanR+o+VNhWZnKcM7WFAuZZYvK2E+qwFmULPSgfTsk9ZE2g6Xy+UCjlJmJmcGh78bOlRRRfshg5iB8DxoJ9Uakcz7+num5VPKA00MaRcPC53r3MJrCmL2gEQsEYWOAj1P8rLZ1ZEsvnLcd5zM5GXQVW6u7f+WR+bgUgUHDNN4lm6Aa5YY+SRqWf1a9MXFO9eEwPLCgtBYZVz8tvvFgFQ88Wkj/uz75/IW7f//7o8gbMffLjN9itLTKHP1UVbDdxslApDjvfdyQ= x-ms-exchange-transport-forked: True Content-Type: multipart/mixed; boundary="_002_gkrwoernjnjfsfarmcom_" MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB4959 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Andrea.Corallo@arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT029.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123;IPV:CAL;SCL:-1;CTRY:IE;EFV:NLI;SFV:NSPM;SFS:(10009020)(4636009)(376002)(346002)(136003)(39860400002)(396003)(2980300002)(199004)(53754006)(189003)(54534003)(8936002)(86362001)(3846002)(6116002)(81166006)(81156014)(486006)(8676002)(305945005)(14454004)(6512007)(336012)(63350400001)(66066001)(568964002)(76130400001)(476003)(126002)(2616005)(2476003)(110136005)(26826003)(16586007)(5660300002)(36756003)(63370400001)(235185007)(316002)(2906002)(102836004)(99286004)(186003)(26005)(478600001)(22756006)(7736002)(2501003)(45080400002)(25786009)(6506007)(386003)(5024004)(6486002)(356004)(450100002)(71190400001)(4326008)(99936001)(14444005)(66616009)(70206006)(70586007)(4226003);DIR:OUT;SFP:1101;SCL:1;SRVR:HE1PR0801MB1851;H:64aa7808-outbound-1.mta.getcheckrecipient.com;FPR:;SPF:TempError;LANG:en;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;A:1;MX:1; X-MS-Office365-Filtering-Correlation-Id-Prvs: 39457a4b-312a-4bff-3b36-08d72f864043 X-Microsoft-Antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(710020)(711020)(4605104)(1401327)(4618075)(2017052603328)(49563074)(7193020);SRVR:HE1PR0801MB1851; NoDisclaimer: True X-Forefront-PRVS: 01480965DA X-Microsoft-Antispam-Message-Info: 6almS6fGWU8GFWsgp+SVKpgTzp6BHsfE3KnUCnxfBKGOwskpn4/rrPBSs7oUctJoPmRVf1lWA08/867vbyp/d5JAQMilWylhTxFtyXObI3aGu1ospo1OTdFzcdIiPjBkJ5cfLVTZG2zzWKFEB5EO7l+iNMVLHovD+73EfsbGOfAuKOhL3QFRSsBBKIgziycZQxLObsp9Iflwtn5MXFHhmuoP7Ex67Vhvry++9irzqV5Nd80FPZODu89idmRe52wJriZ5lW+8ahnIdtbS/IOc6QEytzUWVCTTnansnzzkfVbIrlFlxjuHGcmTaYreFsvf7WLIRc4sa4KV40f3lTWrgsZy61Q2yRRQiP25Mwf9d5+03/MECxFnmVxyt+f7B/6QphB28/WJT7VpF4Q49kkazYDWWDa9ftPnIQq2Py8s9UM= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2019 09:16:43.3821 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8fa178b4-d517-4885-78c9-08d72f864583 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-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1851 X-SW-Source: 2019-q3/txt/msg00013.txt.bz2 --_002_gkrwoernjnjfsfarmcom_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-length: 1453 Hi all, yesterday I've found an interesting bug in libgccjit. Seems we have an hard limitation of 200 characters for literal strings. Attempting to create longer strings lead to ICE during pass_expand while performing a sanity check in get_constant_size. Tracking down the issue seems the code we have was inspired from c-family/c-common.c:c_common_nodes_and_builtins were array_domain_type is actually defined with a size of 200. The comment that follows that point sounded premonitory :) :) /* Make a type for arrays of characters. With luck nothing will ever really depend on the length of this array type. */ At least in the current implementation the type is set by fix_string_type were the actual string length is taken in account. I attach a patch updating the logic accordingly and a new testcase for that. make check-jit is passing clean. Best Regards Andrea gcc/jit/ChangeLog 2019-??-?? Andrea Corallo * jit-playback.h (gcc::jit::recording::context m_recording_ctxt): Remove m_char_array_type_node field. * jit-playback.c (playback::context::context) Remove m_char_array_type_node from member initializer list. (playback::context::new_string_literal) Fix logic to handle string length > 200. gcc/testsuite/ChangeLog 2019-??-?? Andrea Corallo * jit.dg/all-non-failing-tests.h: Add test-long-string-literal.c. * jit.dg/test-long-string-literal.c: New testcase. --_002_gkrwoernjnjfsfarmcom_ Content-Type: text/x-diff; name="str.patch" Content-Description: str.patch Content-Disposition: attachment; filename="str.patch"; size=4245; creation-date="Mon, 02 Sep 2019 09:16:34 GMT"; modification-date="Mon, 02 Sep 2019 09:16:34 GMT" Content-ID: <8020893535C82B4DB9B00B31F866FEAC@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 Content-length: 5755 ZGlmZiAtLWdpdCBhL2djYy9qaXQvaml0LXBsYXliYWNrLmMgYi9nY2Mvaml0 L2ppdC1wbGF5YmFjay5jDQppbmRleCA5ZWViMmE3Li5hMjZiOGQzIDEwMDY0 NA0KLS0tIGEvZ2NjL2ppdC9qaXQtcGxheWJhY2suYw0KKysrIGIvZ2NjL2pp dC9qaXQtcGxheWJhY2suYw0KQEAgLTg4LDcgKzg4LDYgQEAgcGxheWJhY2s6 OmNvbnRleHQ6OmNvbnRleHQgKHJlY29yZGluZzo6Y29udGV4dCAqY3R4dCkN CiAgIDogbG9nX3VzZXIgKGN0eHQtPmdldF9sb2dnZXIgKCkpLA0KICAgICBt X3JlY29yZGluZ19jdHh0IChjdHh0KSwNCiAgICAgbV90ZW1wZGlyIChOVUxM KSwNCi0gICAgbV9jaGFyX2FycmF5X3R5cGVfbm9kZSAoTlVMTCksDQogICAg IG1fY29uc3RfY2hhcl9wdHIgKE5VTEwpDQogew0KICAgSklUX0xPR19TQ09Q RSAoZ2V0X2xvZ2dlciAoKSk7DQpAQCAtNjcwLDkgKzY2OSwxMiBAQCBwbGF5 YmFjazo6cnZhbHVlICoNCiBwbGF5YmFjazo6Y29udGV4dDo6DQogbmV3X3N0 cmluZ19saXRlcmFsIChjb25zdCBjaGFyICp2YWx1ZSkNCiB7DQotICB0cmVl IHRfc3RyID0gYnVpbGRfc3RyaW5nIChzdHJsZW4gKHZhbHVlKSwgdmFsdWUp Ow0KLSAgZ2NjX2Fzc2VydCAobV9jaGFyX2FycmF5X3R5cGVfbm9kZSk7DQot ICBUUkVFX1RZUEUgKHRfc3RyKSA9IG1fY2hhcl9hcnJheV90eXBlX25vZGU7 DQorICAvKiBDb21wYXJlIHdpdGggYy1mYW1pbHkvYy1jb21tb24uYzogZml4 X3N0cmluZ190eXBlLiAgKi8NCisgIHNpemVfdCBsZW4gPSBzdHJsZW4gKHZh bHVlKTsNCisgIHRyZWUgaV90eXBlID0gYnVpbGRfaW5kZXhfdHlwZSAoc2l6 ZV9pbnQgKGxlbikpOw0KKyAgdHJlZSBhX3R5cGUgPSBidWlsZF9hcnJheV90 eXBlIChjaGFyX3R5cGVfbm9kZSwgaV90eXBlKTsNCisgIHRyZWUgdF9zdHIg PSBidWlsZF9zdHJpbmcgKGxlbiwgdmFsdWUpOw0KKyAgVFJFRV9UWVBFICh0 X3N0cikgPSBhX3R5cGU7DQogDQogICAvKiBDb252ZXJ0IHRvIChjb25zdCBj aGFyKiksIGxvb3NlbHkgYmFzZWQgb24NCiAgICAgIGMvYy10eXBlY2suYzog YXJyYXlfdG9fcG9pbnRlcl9jb252ZXJzaW9uLA0KQEAgLTI3MDMsMTAgKzI3 MDUsNiBAQCBwbGF5YmFjazo6Y29udGV4dDo6DQogcmVwbGF5ICgpDQogew0K ICAgSklUX0xPR19TQ09QRSAoZ2V0X2xvZ2dlciAoKSk7DQotICAvKiBBZGFw dGVkIGZyb20gYy1jb21tb24uYzpjX2NvbW1vbl9ub2Rlc19hbmRfYnVpbHRp bnMuICAqLw0KLSAgdHJlZSBhcnJheV9kb21haW5fdHlwZSA9IGJ1aWxkX2lu ZGV4X3R5cGUgKHNpemVfaW50ICgyMDApKTsNCi0gIG1fY2hhcl9hcnJheV90 eXBlX25vZGUNCi0gICAgPSBidWlsZF9hcnJheV90eXBlIChjaGFyX3R5cGVf bm9kZSwgYXJyYXlfZG9tYWluX3R5cGUpOw0KIA0KICAgbV9jb25zdF9jaGFy X3B0cg0KICAgICA9IGJ1aWxkX3BvaW50ZXJfdHlwZSAoYnVpbGRfcXVhbGlm aWVkX3R5cGUgKGNoYXJfdHlwZV9ub2RlLA0KZGlmZiAtLWdpdCBhL2djYy9q aXQvaml0LXBsYXliYWNrLmggYi9nY2Mvaml0L2ppdC1wbGF5YmFjay5oDQpp bmRleCBkNGIxNDhlLi44MDFmNjEwIDEwMDY0NA0KLS0tIGEvZ2NjL2ppdC9q aXQtcGxheWJhY2suaA0KKysrIGIvZ2NjL2ppdC9qaXQtcGxheWJhY2suaA0K QEAgLTMyMiw3ICszMjIsNiBAQCBwcml2YXRlOg0KIA0KICAgYXV0b192ZWM8 ZnVuY3Rpb24gKj4gbV9mdW5jdGlvbnM7DQogICBhdXRvX3ZlYzx0cmVlPiBt X2dsb2JhbHM7DQotICB0cmVlIG1fY2hhcl9hcnJheV90eXBlX25vZGU7DQog ICB0cmVlIG1fY29uc3RfY2hhcl9wdHI7DQogDQogICAvKiBTb3VyY2UgbG9j YXRpb24gaGFuZGxpbmcuICAqLw0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvaml0LmRnL2FsbC1ub24tZmFpbGluZy10ZXN0cy5oIGIvZ2NjL3Rlc3Rz dWl0ZS9qaXQuZGcvYWxsLW5vbi1mYWlsaW5nLXRlc3RzLmgNCmluZGV4IDAy NzJlNmY4Li4xYjNkNTYxIDEwMDY0NA0KLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9q aXQuZGcvYWxsLW5vbi1mYWlsaW5nLXRlc3RzLmgNCisrKyBiL2djYy90ZXN0 c3VpdGUvaml0LmRnL2FsbC1ub24tZmFpbGluZy10ZXN0cy5oDQpAQCAtMjIw LDYgKzIyMCwxMyBAQA0KICN1bmRlZiBjcmVhdGVfY29kZQ0KICN1bmRlZiB2 ZXJpZnlfY29kZQ0KIA0KKy8qIHRlc3QtbG9uZy1zdHJpbmctbGl0ZXJhbC5j ICovDQorI2RlZmluZSBjcmVhdGVfY29kZSBjcmVhdGVfY29kZV9sb25nX3N0 cmluZ19saXRlcmFsDQorI2RlZmluZSB2ZXJpZnlfY29kZSB2ZXJpZnlfY29k ZV9sb25nX3N0cmluZ19saXRlcmFsDQorI2luY2x1ZGUgInRlc3QtbG9uZy1z dHJpbmctbGl0ZXJhbC5jIg0KKyN1bmRlZiBjcmVhdGVfY29kZQ0KKyN1bmRl ZiB2ZXJpZnlfY29kZQ0KKw0KIC8qIHRlc3Qtc3VtLW9mLXNxdWFyZXMuYyAq Lw0KICNkZWZpbmUgY3JlYXRlX2NvZGUgY3JlYXRlX2NvZGVfc3VtX29mX3Nx dWFyZXMNCiAjZGVmaW5lIHZlcmlmeV9jb2RlIHZlcmlmeV9jb2RlX3N1bV9v Zl9zcXVhcmVzDQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9qaXQuZGcv dGVzdC1sb25nLXN0cmluZy1saXRlcmFsLmMgYi9nY2MvdGVzdHN1aXRlL2pp dC5kZy90ZXN0LWxvbmctc3RyaW5nLWxpdGVyYWwuYw0KbmV3IGZpbGUgbW9k ZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAuLjg4MjU2N2MNCi0tLSAvZGV2L251 bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvaml0LmRnL3Rlc3QtbG9uZy1zdHJp bmctbGl0ZXJhbC5jDQpAQCAtMCwwICsxLDQ4IEBADQorI2luY2x1ZGUgPHN0 ZGxpYi5oPg0KKyNpbmNsdWRlIDxzdGRpby5oPg0KKyNpbmNsdWRlIDxzdHJp bmcuaD4NCisNCisjaW5jbHVkZSAibGliZ2Njaml0LmgiDQorDQorI2luY2x1 ZGUgImhhcm5lc3MuaCINCisNCitjb25zdCBjaGFyIHZlcnlfbG9uZ19zdHJp bmdbXSA9DQorICAiYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJj YWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjYWJjIg0K KyAgImFiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2Fi Y2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiY2FiYyINCisgICJhYmNh YmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNh YmNhYmNhYmNhYmNhYmNhYmNhYmNhYmNhYmMiDQorICAiYWJjYWJjYWJjYWJj YWJjYWJjYWJjYWJjYWJjYWJjYSI7DQorDQordm9pZA0KK2NyZWF0ZV9jb2Rl IChnY2Nfaml0X2NvbnRleHQgKmN0eHQsIHZvaWQgKnVzZXJfZGF0YSkNCit7 DQorICAvKiBCdWlsZCB0aGUgdGVzdF9mbi4gICovDQorICBnY2Nfaml0X2Z1 bmN0aW9uICpmID0NCisgICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlv biAoDQorICAgICAgY3R4dCwgTlVMTCwNCisgICAgICBHQ0NfSklUX0ZVTkNU SU9OX0VYUE9SVEVELA0KKyAgICAgIGdjY19qaXRfY29udGV4dF9nZXRfdHlw ZShjdHh0LA0KKwkJCSAgICAgICBHQ0NfSklUX1RZUEVfQ09OU1RfQ0hBUl9Q VFIpLA0KKwkJCQkidGVzdF9sb25nX3N0cmluZ19saXRlcmFsIiwNCisJCQkJ MCwgTlVMTCwgMCk7DQorICBnY2Nfaml0X2Jsb2NrICpibGsgPQ0KKyAgICBn Y2Nfaml0X2Z1bmN0aW9uX25ld19ibG9jayAoZiwgImluaXRfYmxvY2siKTsN CisgIGdjY19qaXRfcnZhbHVlICpyZXMgPQ0KKyAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X3N0cmluZ19saXRlcmFsIChjdHh0LCB2ZXJ5X2xvbmdfc3RyaW5n KTsNCisNCisgIGdjY19qaXRfYmxvY2tfZW5kX3dpdGhfcmV0dXJuIChibGss IE5VTEwsIHJlcyk7DQorfQ0KKw0KK3ZvaWQNCit2ZXJpZnlfY29kZSAoZ2Nj X2ppdF9jb250ZXh0ICpjdHh0LCBnY2Nfaml0X3Jlc3VsdCAqcmVzdWx0KQ0K K3sNCisgIHR5cGVkZWYgY29uc3QgY2hhciAqKCpmbl90eXBlKSAodm9pZCk7 DQorICBDSEVDS19OT05fTlVMTCAocmVzdWx0KTsNCisgIGZuX3R5cGUgdGVz dF9sb25nX3N0cmluZ19saXRlcmFsID0NCisgICAgKGZuX3R5cGUpZ2NjX2pp dF9yZXN1bHRfZ2V0X2NvZGUgKHJlc3VsdCwgInRlc3RfbG9uZ19zdHJpbmdf bGl0ZXJhbCIpOw0KKyAgQ0hFQ0tfTk9OX05VTEwgKHRlc3RfbG9uZ19zdHJp bmdfbGl0ZXJhbCk7DQorDQorICAvKiBDYWxsIHRoZSBKSVQtZ2VuZXJhdGVk IGZ1bmN0aW9uLiAgKi8NCisgIGNvbnN0IGNoYXIgKnN0ciA9IHRlc3RfbG9u Z19zdHJpbmdfbGl0ZXJhbCAoKTsNCisgIENIRUNLX05PTl9OVUxMIChzdHIp Ow0KKyAgQ0hFQ0tfVkFMVUUgKHN0cmNtcCAoc3RyLCB2ZXJ5X2xvbmdfc3Ry aW5nKSwgMCk7DQorfQ0K --_002_gkrwoernjnjfsfarmcom_--