From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2071.outbound.protection.outlook.com [40.107.21.71]) by sourceware.org (Postfix) with ESMTPS id 1A5073857C5F for ; Thu, 28 Jul 2022 16:44:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1A5073857C5F ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=E4plVvOksaM3hL9OoIggUhwY0/IesuCq6pdsxELtqWxB2w+80YiHnbyjUawR8Mfw3histwpWHqT+gqW90UPdkiYQ5oymxwnD8Udtm2ZJWDpijZcjvGcHKGRjOE/d9h6/bMT3ROMPOqchnHlnT96KOPfUraLKBY0FshBoWY3h3N18wL8fa0o+ZKzHHV4AYLWHPl9pSLGl5TFV3/2lFUO0c7u+row32BoPLaPWWPZXYJ2N0SB4mJX36wmzHw2pVy5a8GfK8uGwhB69ydCXx4mokZrBpTxEymiKL+Py5V0nsojylqtztShgpZYBCpvoVbQzwzRJJ8Nshcgqn7oUBRFiGg== ARC-Message-Signature: i=2; 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=NJHbht9pP/WMzdlLpiCe/BwfGUYC7vrDV522c0bCFsk=; b=dMHhYOQyBXbu3YEs13YXUmw+GX9J2K110ST482/feO6O6sS98/P0Nvjop718GWT1NlQ09oOtbcjjEWRS927ePRlwpulXgC9w51wcf3gqY+ivolic+o8a0H4LayVUcgNJz+rAJIpuRVNjMctRXYh6RlQn1f1s5PmwGBLg7d+ThvoX8C6Ru9WrImwuJEbLBD2N+3sOF5ttKARuperMDPrcSd30hKyVlrhvNi0JgbrwKlMYMK/91+eAMIjRf2yckfhM7L3Neg61wMfaMkcVtkJR491gv/5DjAObLyiuW28y7xeULkok3d9dl4L/uo+iyKwdKH7olQCUsbV0rzlpg3aA6A== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) Received: from AS8P189CA0017.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:31f::12) by DB9PR08MB6443.eurprd08.prod.outlook.com (2603:10a6:10:261::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.10; Thu, 28 Jul 2022 16:44:17 +0000 Received: from AM5EUR03FT032.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:31f:cafe::ab) by AS8P189CA0017.outlook.office365.com (2603:10a6:20b:31f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.10 via Frontend Transport; Thu, 28 Jul 2022 16:44:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT032.mail.protection.outlook.com (10.152.16.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.12 via Frontend Transport; Thu, 28 Jul 2022 16:44:17 +0000 Received: ("Tessian outbound 73dd6a25223d:v123"); Thu, 28 Jul 2022 16:44:17 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: f3f376b28bb20cfa X-CR-MTA-TID: 64aa7808 Received: from a1aa067f88d0.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id ACD978FC-629E-4B72-ACF5-CCB5A8CC0463.1; Thu, 28 Jul 2022 16:44:10 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a1aa067f88d0.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 28 Jul 2022 16:44:10 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IDxcBzG80Px60xlNVeL8Oaw+n6d8ppXXXtGfjwoxXz0+sCp1gaiQwPaIK7zgHlkXHOYAm2O/WW5P2bLJposXO8swPtHqlMMAdcmUFvP8B/rueW0IHZu7G/99AhKSf/OoZOG0SKWxWXH2fhGOstj136dbViq6v75FQAFvLLoVh9jzvu+T8AEAkh6Boasn+L1+bA9fsCoqW+pK/Ktks2CVrMj+mA+mUcpAz4LAiJnUK+1Lulvjxhnf5GJ5i8facRMqCJA3SXCINNBUu7tEepsAC33CrAVGVtLs/2849O7T58+yqAzFImndFxPKlKv8SelqYFNawt37x7IMJ/TtyHIojw== 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=NJHbht9pP/WMzdlLpiCe/BwfGUYC7vrDV522c0bCFsk=; b=RmUl6QtjoX1yIiG6kA+GsVzKzhKMOQSeAsGd4WT7Gh0c3MA7Srm5UsqbVruxM7m1ES7JIdqWa7AlYi+CNAjKZPR9pZdn2BlGAVsDNQFZ1pEdhqWwUXLTk3kwZJZCVO8eHq0ZzJxQ+FQWdRe7hirGx1ElZ39WNXs+AMd2dywoyeJzBMikarTLqQVCZBgRwvOqDQocw0gKWMQgnHLo3f1bDUnT30L1Un7AqZJ83C/HHsM06S5nN1D9xKWczW1lc5iIZIw3L8G2ipHNxPRhWPDdks+JbGhyP/nHyK3iNp+LZKqqJ2DReh3BTouurEawfAz/sFFsZ5ibHjLwMSYoLmGhaQ== 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 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DB9PR08MB7115.eurprd08.prod.outlook.com (2603:10a6:10:2c8::5) by AM0PR08MB3587.eurprd08.prod.outlook.com (2603:10a6:208:dd::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.10; Thu, 28 Jul 2022 16:44:09 +0000 Received: from DB9PR08MB7115.eurprd08.prod.outlook.com ([fe80::583a:e544:1057:9d7b]) by DB9PR08MB7115.eurprd08.prod.outlook.com ([fe80::583a:e544:1057:9d7b%8]) with mapi id 15.20.5482.010; Thu, 28 Jul 2022 16:44:09 +0000 Content-Type: multipart/mixed; boundary="------------z2mNAUHkVMQWyb9hoAd3xKFp" Message-ID: <8e1a0791-70f7-c9c9-5f3f-1645bb6aaa47@arm.com> Date: Thu, 28 Jul 2022 17:44:06 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Content-Language: en-GB To: "gcc-patches@gcc.gnu.org" , Richard Biener From: Richard Earnshaw Subject: http://pdtlreviewboard.cambridge.arm.com/r/16099/ Organization: Arm Ltd X-ClientProxiedBy: LO4P265CA0058.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2af::8) To DB9PR08MB7115.eurprd08.prod.outlook.com (2603:10a6:10:2c8::5) MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 156dcbcf-644c-46eb-1c25-08da70b86995 X-MS-TrafficTypeDiagnostic: AM0PR08MB3587:EE_|AM5EUR03FT032:EE_|DB9PR08MB6443:EE_ x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Yl5uckXOXAfXxpL8yxrL0KjQuUlW20rWXzGhPHd0VFihaFPxS4wkHPoLlRW7CkUQ8yQ5TTtbYU5Oc9ZA+lN0zhNDEP+KBWibaJ/gOdeFyNfjg2JxmOZCvsK/CorAQmrwnA03Lzi+8Y/TTG42qhvy+w8MapZzrTrzQoL9iZuIlo5AO8K7oVMU0icgdkHOVeIdHHY1Sn/EUgFSQtKqdZ/K3YOHW568DMGQan8MTSWEPGm1Tbl5WWI+56DKWtWPvTD2UL5iMVOxDJ6JJZS/cjH8sq87vQBU7HME/bfGJ80ELofe+lZIxw0lwSDq7HzfglA48WiuN6zwt4p/pOtU8Y2hpzyeze1tpmbyEXsAXangWJAcFWrcjHbslx13qd+0mgSr9jyVwwT57awc/L5EpwK7wcLbv5nMdHhChdBReUko1Nl9OVu/f8C1Oj2hObXKWw8hX5jQPXmZKEk8rEfqJwJzFVvfW4mijxnpfpDRLDo4Vy1m+KpE0dWiorBwL0YTv5eir7UAPkVSQfrKqouz8iCdN+hfT5tryMAz/B1ocO2Ro7NWs1XL5qwO5phuV/hNoaE8Hs81MUb2JfU7J7Lmk94CuTAd8o4KbYt28o00mlOfHuUaUsCUridnqpW9Cfjze6/qHK6JpsORcMvPjLcN+6tQJeJnLM8WkpzVZNw8z6pAQAyWj0DDKyTpC6hZD3eFWHHoGpIo2frNvA+DV3kr5efXzzlWEO0uumh0hutIxLphL+RqAc1IfnYtg1Qw/l03dM2O36XZoGAK0XisqNiUiuCQALEGteBD/vZFT2tdqpVhCpa/sf9n4H24+eIutptolgdqYDQXQoz0WmE+S3pWaH/T3+v66UZuDwND9cM/pqk046rnaLGOOMc1Wb92PF2grb7rklhLtltJKN7Egq7jdXZj0w== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9PR08MB7115.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(39860400002)(366004)(376002)(346002)(396003)(136003)(38100700002)(36916002)(6506007)(33964004)(41300700001)(2906002)(83380400001)(6666004)(6512007)(186003)(2616005)(26005)(316002)(36756003)(66946007)(8676002)(110136005)(478600001)(66476007)(66556008)(31686004)(31696002)(6486002)(86362001)(5660300002)(235185007)(8936002)(232243001)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3587 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b5bea4af-5f68-4d5e-b52b-08da70b86466 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9fuLTB8oIUCdY8D9Ta740b20BG1aw2P9MwFGjSxW/PB0wqczQvFhFHZsDe3Bc/Q8MLy/GYPo6+82J+gy0/Y/TlW8CEcxSIFsYd7rUOo/x8q765sUOY8Jtai/ugqJ1APnp8bXmsUKueJ/uHLlNbRv8Vyl8YEfL+yy1YnzhsA92HwbvNs6njerG+ktL5bsD8ruFSnNAHCw0vY1ne+u3+Z2Nyv6coKb+how2kuRPV4ZV8oahHuIJqaIZlTsk+s125P0jAKbX8tkyBswqUJgatl13+aoDkrixn+gvc49d37DURSD6598zAgJKiuHUClQVxlD7irVpmNWlEELrgAom/GIWF7iWkoCoJUQWQ138oJz9SZKGuNDft8aBcrfQUodTSNsN8AXljUvNtol/YX0IbJSVN9ZIetQ5W3lMZ/CnZZHfZyPOmcBipTt2jc2PXxvk6k7DjAkUVh232V5IW4KOUXX7BXmHWZ6GElptEWtLM08Hbga1OtKv4z5PwIseYf4vgUQJfa3jpQH1cUC1Jn1CRKAlQFYk5DuqiYpJ12zgcm+2e7mQMytoS+wtm2VDF4+NuBFKOIsVeFP6hP0yRvlUI0iV+dx7cGRGyL1qmrOI982K7pQWNgJffV8AnYxeZyRnhwTqbC00HQ2Lwd6AXe4Gskeft/ElLdzp/gAIQXivYh6Ns/CNJ0DyKw0esZIgN+aPCTaxs4d+XYChpuHU5laAy8nNV52q3TlOr/DhOkZJszuN6GvX0zTRJkpo4/4dZMP+/ez9YmYVoMKJzmny2b3yzZMgicRgz4vLWqaTvHeNbMfiQ1xv9bNsUWE9eHZ68eYOT/G1QANL/EBdDCJJwjSHt4GxaIHLpG8TQt0Jc/0Jk4EXDRrd7Gt4OxN2T94CKQeOWW1K4ZITH3hCyxvguPlmYK/8Q== X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230016)(4636009)(396003)(39860400002)(136003)(376002)(346002)(40470700004)(46966006)(36840700001)(36860700001)(81166007)(31686004)(110136005)(6486002)(356005)(82740400003)(41300700001)(36756003)(86362001)(316002)(40480700001)(6666004)(31696002)(82310400005)(83380400001)(235185007)(2906002)(47076005)(6512007)(70586007)(8676002)(33964004)(70206006)(6506007)(336012)(5660300002)(40460700003)(36916002)(186003)(478600001)(2616005)(26005)(8936002)(232243001)(43740500002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jul 2022 16:44:17.3082 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 156dcbcf-644c-46eb-1c25-08da70b86995 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-AuthSource: AM5EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6443 X-Spam-Status: No, score=-11.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_NONE, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) 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: Thu, 28 Jul 2022 16:44:23 -0000 --------------z2mNAUHkVMQWyb9hoAd3xKFp Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit A SET operation that writes memory may have the same value as an earlier store but if the alias sets of the new and earlier store do not conflict then the set is not truly redundant. This can happen, for example, if objects of different types share a stack slot. To fix this we define a new function in cselib that first checks for equality and if that is successful then finds the earlier store in the value history and checks the alias sets. The routine is used in two places elsewhere in the compiler. Firstly in cfgcleanup and secondly in postreload. gcc/ChangeLog: * cselib.h (cselib_redundant_set_p): Declare. * cselib.cc: Include alias.h (cselib_redundant_set_p): New function. * cfgcleanup.cc: (mark_effect): Use cselib_redundant_set_p instead of rtx_equal_for_cselib_p. * postreload.c (reload_cse_simplify): Use cselib_redundant_set_p. (reload_cse_noop_set_p): Delete. --------------z2mNAUHkVMQWyb9hoAd3xKFp Content-Type: text/x-patch; charset=UTF-8; name="pr106187-master.patch" Content-Disposition: attachment; filename="pr106187-master.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9jZmdjbGVhbnVwLmNjIGIvZ2NjL2NmZ2NsZWFudXAuY2MKaW5kZXgg MTgwNDdkYTdiMjQuLmE4YjAxMzliYjRkIDEwMDY0NAotLS0gYS9nY2MvY2ZnY2xlYW51cC5jYwor KysgYi9nY2MvY2ZnY2xlYW51cC5jYwpAQCAtMjA4LDcgKzIwOCw3IEBAIG1hcmtfZWZmZWN0IChy dHggZXhwLCByZWdzZXQgbm9uZXF1YWwpCiAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBjYXNl IFNFVDoKLSAgICAgIGlmIChydHhfZXF1YWxfZm9yX2NzZWxpYl9wIChTRVRfREVTVCAoZXhwKSwg U0VUX1NSQyAoZXhwKSkpCisgICAgICBpZiAoY3NlbGliX3JlZHVuZGFudF9zZXRfcCAoZXhwKSkK IAlyZXR1cm4gZmFsc2U7CiAgICAgICBkZXN0ID0gU0VUX0RFU1QgKGV4cCk7CiAgICAgICBpZiAo ZGVzdCA9PSBwY19ydHgpCmRpZmYgLS1naXQgYS9nY2MvY3NlbGliLmNjIGIvZ2NjL2NzZWxpYi5j YwppbmRleCA2NzY5YmVlZWFmOC4uZmNmZDgzNDBhNGEgMTAwNjQ0Ci0tLSBhL2djYy9jc2VsaWIu Y2MKKysrIGIvZ2NjL2NzZWxpYi5jYwpAQCAtMzIsNiArMzIsNyBAQCBhbG9uZyB3aXRoIEdDQzsg c2VlIHRoZSBmaWxlIENPUFlJTkczLiAgSWYgbm90IHNlZQogI2luY2x1ZGUgImR1bXBmaWxlLmgi CiAjaW5jbHVkZSAiY3NlbGliLmgiCiAjaW5jbHVkZSAiZnVuY3Rpb24tYWJpLmgiCisjaW5jbHVk ZSAiYWxpYXMuaCIKIAogLyogQSBsaXN0IG9mIGNzZWxpYl92YWwgc3RydWN0dXJlcy4gICovCiBz dHJ1Y3QgZWx0X2xpc3QKQEAgLTExNTcsNiArMTE1OCw3NSBAQCBydHhfZXF1YWxfZm9yX2NzZWxp Yl8xIChydHggeCwgcnR4IHksIG1hY2hpbmVfbW9kZSBtZW1tb2RlLCBpbnQgZGVwdGgpCiAgIHJl dHVybiAxOwogfQogCisvKiBXcmFwcGVyIGZvciBydHhfZXF1YWxfZm9yX2NzZWxpYl9wIHRvIGRl dGVybWluZSB3aGV0aGVyIGEgU0VUIGlzCisgICB0cnVseSByZWR1bmRhbnQsIHRha2luZyBpbnRv IGFjY291bnQgYWxpYXNpbmcgaW5mb3JtYXRpb24uICAqLworYm9vbAorY3NlbGliX3JlZHVuZGFu dF9zZXRfcCAocnR4IHNldCkKK3sKKyAgZ2NjX2Fzc2VydCAoR0VUX0NPREUgKHNldCkgPT0gU0VU KTsKKyAgcnR4IGRlc3QgPSBTRVRfREVTVCAoc2V0KTsKKyAgaWYgKGNzZWxpYl9yZWdfc2V0X21v ZGUgKGRlc3QpICE9IEdFVF9NT0RFIChkZXN0KSkKKyAgICByZXR1cm4gZmFsc2U7CisKKyAgaWYg KCFydHhfZXF1YWxfZm9yX2NzZWxpYl9wIChkZXN0LCBTRVRfU1JDIChzZXQpKSkKKyAgICByZXR1 cm4gZmFsc2U7CisKKyAgd2hpbGUgKEdFVF9DT0RFIChkZXN0KSA9PSBTVUJSRUcKKwkgfHwgR0VU X0NPREUgKGRlc3QpID09IFpFUk9fRVhUUkFDVAorCSB8fCBHRVRfQ09ERSAoZGVzdCkgPT0gU1RS SUNUX0xPV19QQVJUKQorICAgIGRlc3QgPSBYRVhQIChkZXN0LCAwKTsKKworICBpZiAoIWZsYWdf c3RyaWN0X2FsaWFzaW5nIHx8ICFNRU1fUCAoZGVzdCkpCisgICAgcmV0dXJuIHRydWU7CisKKyAg LyogRm9yIGEgc3RvcmUgd2UgbmVlZCB0byBjaGVjayB0aGF0IHN1cHByZXNzaW5nIGl0IHdpbGwg bm90IGNoYW5nZQorICAgICB0aGUgZWZmZWN0aXZlIGFsaWFzIHNldC4gICovCisgIHJ0eCBkZXN0 X2FkZHIgPSBYRVhQIChkZXN0LCAwKTsKKworICAvKiBMb29rdXAgdGhlIGVxdWl2YWxlbnRzIHRv IHRoZSBkZXN0LiAgVGhpcyBpcyBtb3JlIGxpa2VseSB0byBzdWNjZWVkCisgICAgIHRoYW4gbG9v a2luZyB1cCB0aGUgZXF1aXZhbGVudHMgdG8gdGhlIHNvdXJjZSAoZm9yIGV4YW1wbGUsIHdoZW4g dGhlCisgICAgIHNyYyBpcyBzb21lIGZvcm0gb2YgY29uc3RhbnQpLiAgKi8KKyAgY3NlbGliX3Zh bCAqc3JjX3ZhbCA9IGNzZWxpYl9sb29rdXAgKFNFVF9ERVNUIChzZXQpLAorCQkJCSAgICAgICBH RVRfTU9ERSAoU0VUX0RFU1QgKHNldCkpLAorCQkJCSAgICAgICAwLCBWT0lEbW9kZSk7CisKKyAg aWYgKHNyY192YWwpCisgICAgeworICAgICAgLyogV2FsayB0aGUgbGlzdCBvZiBzb3VyY2UgZXF1 aXZhbGVudHMgdG8gZmluZCB0aGUgTUVNIGFjY2Vzc2luZyB0aGUgc2FtZQorCSBsb2NhdGlvbi4g ICovCisgICAgICBmb3IgKGVsdF9sb2NfbGlzdCAqbCA9IHNyY192YWwtPmxvY3M7IGw7IGwgPSBs LT5uZXh0KQorCXsKKwkgIHJ0eCBzcmNfZXF1aXYgPSBsLT5sb2M7CisJICB3aGlsZSAoR0VUX0NP REUgKHNyY19lcXVpdikgPT0gU1VCUkVHCisJCSB8fCBHRVRfQ09ERSAoc3JjX2VxdWl2KSA9PSBa RVJPX0VYVFJBQ1QKKwkJIHx8IEdFVF9DT0RFIChzcmNfZXF1aXYpID09IFNUUklDVF9MT1dfUEFS VCkKKwkgICAgc3JjX2VxdWl2ID0gWEVYUCAoc3JjX2VxdWl2LCAwKTsKKworCSAgaWYgKE1FTV9Q IChzcmNfZXF1aXYpKQorCSAgICB7CisJICAgICAgLyogTWF0Y2ggdGhlIE1FTXMgYnkgY29tcGFy aW5nIHRoZSBhZGRyZXNzZXMuICAqLworCSAgICAgIGlmIChydHhfZXF1YWxfZm9yX2NzZWxpYl8x IChkZXN0X2FkZHIsIFhFWFAgKHNyY19lcXVpdiwgMCksCisJCQkJCSAgR0VUX01PREUgKGRlc3Qp LCAwKSkKKwkJcmV0dXJuIGFsaWFzX3NldHNfY29uZmxpY3RfcCAoTUVNX0FMSUFTX1NFVCAoZGVz dCksCisJCQkJCSAgICAgIE1FTV9BTElBU19TRVQgKHNyY19lcXVpdikpOworCSAgICB9CisJfQor ICAgIH0KKworICAvKiBXZSBmYWlsZWQgdG8gZmluZCBhIHJlY29yZGVkIHZhbHVlIGluIHRoZSBj c2VsaWIgaGlzdG9yeSwgc28gdHJ5IHRoZQorICAgICBzb3VyY2Ugb2YgdGhpcyBzZXQuICAqLwor ICBydHggc3JjID0gU0VUX1NSQyAoc2V0KTsKKyAgd2hpbGUgKEdFVF9DT0RFIChzcmMpID09IFNV QlJFRykKKyAgICBzcmMgPSBYRVhQIChzcmMsIDApOworCisgIGlmIChNRU1fUCAoc3JjKSAmJiBy dHhfZXF1YWxfZm9yX2NzZWxpYl8xIChkZXN0X2FkZHIsIFhFWFAgKHNyYywgMCksCisJCQkJCSAg ICAgR0VUX01PREUgKGRlc3QpLCAwKSkKKyAgICByZXR1cm4gYWxpYXNfc2V0c19jb25mbGljdF9w IChNRU1fQUxJQVNfU0VUIChkZXN0KSwKKwkJCQkgIE1FTV9BTElBU19TRVQgKHNyYykpOworCisg IHJldHVybiBmYWxzZTsKK30KKwogLyogSGVscGVyIGZ1bmN0aW9uIGZvciBjc2VsaWJfaGFzaF9y dHguICBBcmd1bWVudHMgbGlrZSBmb3IgY3NlbGliX2hhc2hfcnR4LAogICAgZXhjZXB0IHRoYXQg aXQgaGFzaGVzIChwbHVzOlAgeCBjKS4gICovCiAKZGlmZiAtLWdpdCBhL2djYy9jc2VsaWIuaCBi L2djYy9jc2VsaWIuaAppbmRleCA5YWU2NWU2NDU5ZS4uYjA5MDUwNTNlYTUgMTAwNjQ0Ci0tLSBh L2djYy9jc2VsaWIuaAorKysgYi9nY2MvY3NlbGliLmgKQEAgLTgzLDYgKzgzLDcgQEAgZXh0ZXJu IHZvaWQgY3NlbGliX3Byb2Nlc3NfaW5zbiAocnR4X2luc24gKik7CiBleHRlcm4gYm9vbCBmcF9z ZXR0ZXJfaW5zbiAocnR4X2luc24gKik7CiBleHRlcm4gbWFjaGluZV9tb2RlIGNzZWxpYl9yZWdf c2V0X21vZGUgKGNvbnN0X3J0eCk7CiBleHRlcm4gaW50IHJ0eF9lcXVhbF9mb3JfY3NlbGliXzEg KHJ0eCwgcnR4LCBtYWNoaW5lX21vZGUsIGludCk7CitleHRlcm4gYm9vbCBjc2VsaWJfcmVkdW5k YW50X3NldF9wIChydHgpOwogZXh0ZXJuIGludCByZWZlcmVuY2VzX3ZhbHVlX3AgKGNvbnN0X3J0 eCwgaW50KTsKIGV4dGVybiBydHggY3NlbGliX2V4cGFuZF92YWx1ZV9ydHggKHJ0eCwgYml0bWFw LCBpbnQpOwogdHlwZWRlZiBydHggKCpjc2VsaWJfZXhwYW5kX2NhbGxiYWNrKShydHgsIGJpdG1h cCwgaW50LCB2b2lkICopOwpkaWZmIC0tZ2l0IGEvZ2NjL3Bvc3RyZWxvYWQuY2MgYi9nY2MvcG9z dHJlbG9hZC5jYwppbmRleCBkMWM5OWZlNmRjOS4uNDFmNjFkMzI2NDggMTAwNjQ0Ci0tLSBhL2dj Yy9wb3N0cmVsb2FkLmNjCisrKyBiL2djYy9wb3N0cmVsb2FkLmNjCkBAIC00Myw3ICs0Myw2IEBA IGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qgc2VlCiAjaW5j bHVkZSAiZnVuY3Rpb24tYWJpLmgiCiAjaW5jbHVkZSAicnRsLWl0ZXIuaCIKIAotc3RhdGljIGlu dCByZWxvYWRfY3NlX25vb3Bfc2V0X3AgKHJ0eCk7CiBzdGF0aWMgYm9vbCByZWxvYWRfY3NlX3Np bXBsaWZ5IChydHhfaW5zbiAqLCBydHgpOwogc3RhdGljIHZvaWQgcmVsb2FkX2NzZV9yZWdzXzEg KHZvaWQpOwogc3RhdGljIGludCByZWxvYWRfY3NlX3NpbXBsaWZ5X3NldCAocnR4LCBydHhfaW5z biAqKTsKQEAgLTc0LDE2ICs3Myw2IEBAIHJlbG9hZF9jc2VfcmVncyAocnR4X2luc24gKmZpcnN0 IEFUVFJJQlVURV9VTlVTRUQpCiAgICAgfQogfQogCi0vKiBTZWUgd2hldGhlciBhIHNpbmdsZSBz ZXQgU0VUIGlzIGEgbm9vcC4gICovCi1zdGF0aWMgaW50Ci1yZWxvYWRfY3NlX25vb3Bfc2V0X3Ag KHJ0eCBzZXQpCi17Ci0gIGlmIChjc2VsaWJfcmVnX3NldF9tb2RlIChTRVRfREVTVCAoc2V0KSkg IT0gR0VUX01PREUgKFNFVF9ERVNUIChzZXQpKSkKLSAgICByZXR1cm4gMDsKLQotICByZXR1cm4g cnR4X2VxdWFsX2Zvcl9jc2VsaWJfcCAoU0VUX0RFU1QgKHNldCksIFNFVF9TUkMgKHNldCkpOwot fQotCiAvKiBUcnkgdG8gc2ltcGxpZnkgSU5TTi4gIFJldHVybiB0cnVlIGlmIHRoZSBDRkcgbWF5 IGhhdmUgY2hhbmdlZC4gICovCiBzdGF0aWMgYm9vbAogcmVsb2FkX2NzZV9zaW1wbGlmeSAocnR4 X2luc24gKmluc24sIHJ0eCB0ZXN0cmVnKQpAQCAtMTE4LDcgKzEwNyw3IEBAIHJlbG9hZF9jc2Vf c2ltcGxpZnkgKHJ0eF9pbnNuICppbnNuLCBydHggdGVzdHJlZykKICAgICAgICAgIHRoaXMgb3V0 LCBzbyBpdCdzIHNhZmVyIHRvIHNpbXBsaWZ5IGJlZm9yZSB3ZSBkZWxldGUuICAqLwogICAgICAg Y291bnQgKz0gcmVsb2FkX2NzZV9zaW1wbGlmeV9zZXQgKGJvZHksIGluc24pOwogCi0gICAgICBp ZiAoIWNvdW50ICYmIHJlbG9hZF9jc2Vfbm9vcF9zZXRfcCAoYm9keSkpCisgICAgICBpZiAoIWNv dW50ICYmIGNzZWxpYl9yZWR1bmRhbnRfc2V0X3AgKGJvZHkpKQogCXsKIAkgIGlmIChjaGVja19m b3JfaW5jX2RlYyAoaW5zbikpCiAJICAgIGRlbGV0ZV9pbnNuX2FuZF9lZGdlcyAoaW5zbik7CkBA IC0xNTcsNyArMTQ2LDcgQEAgcmVsb2FkX2NzZV9zaW1wbGlmeSAocnR4X2luc24gKmluc24sIHJ0 eCB0ZXN0cmVnKQogCSAgcnR4IHBhcnQgPSBYVkVDRVhQIChib2R5LCAwLCBpKTsKIAkgIGlmIChH RVRfQ09ERSAocGFydCkgPT0gU0VUKQogCSAgICB7Ci0JICAgICAgaWYgKCEgcmVsb2FkX2NzZV9u b29wX3NldF9wIChwYXJ0KSkKKwkgICAgICBpZiAoISBjc2VsaWJfcmVkdW5kYW50X3NldF9wIChw YXJ0KSkKIAkJYnJlYWs7CiAJICAgICAgaWYgKFJFR19QIChTRVRfREVTVCAocGFydCkpCiAJCSAg JiYgUkVHX0ZVTkNUSU9OX1ZBTFVFX1AgKFNFVF9ERVNUIChwYXJ0KSkpCg== --------------z2mNAUHkVMQWyb9hoAd3xKFp--