From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id qFTgHUuQjGhvhwEAWB0awg (envelope-from ) for ; Fri, 01 Aug 2025 06:00:43 -0400 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=aK6Kl+DT; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 75B251E089; Fri, 1 Aug 2025 06:00:43 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-10.1 required=5.0 tests=ARC_SIGNED,ARC_VALID, BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED, RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE autolearn=ham autolearn_force=no version=4.0.1 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 8B62F1E089 for ; Fri, 1 Aug 2025 06:00:40 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 37A9F3858C74 for ; Fri, 1 Aug 2025 10:00:40 +0000 (GMT) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by sourceware.org (Postfix) with ESMTPS id 05BD83858419 for ; Fri, 1 Aug 2025 09:39:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 05BD83858419 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 05BD83858419 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=192.198.163.14 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1754041159; cv=none; b=ut8qPbsrNu4/OsqjSZcTPvgkIVJW6f6mzRY9aWc+LG4Ll80aNfzPFG2fQmucIj735BVBakTZ9g5Q21OrVEJUg6oRPVCu3RB5Ficy/8Ea1mU9FlUqysbfjTPOMebnFquDzXvjAj4BM7nm+Nk2zgkb5Qvon+hFwL3vaxyB2PQhH9k= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1754041159; c=relaxed/simple; bh=uMkVbPPgmK/FklOaFL6jcE5/TEdM0vSdfkSjjCfAKyI=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=DbmPauq1QlmUPR+vvso0Y1BuEwIaAOdtjDA1nKmbSs53AEknABAOQ3oZuLzIYjNBuTu2Chn16y0VCuglPgcrefWFA1QPHPPjWCvFUw3uSucXVQjFGtTzmR2P80zjz2WwEzjdWGPltBdjLChR71Z5IuFBmRCbUMsWQJq9ZO1UAXE= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 05BD83858419 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=aK6Kl+DT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1754041159; x=1785577159; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=uMkVbPPgmK/FklOaFL6jcE5/TEdM0vSdfkSjjCfAKyI=; b=aK6Kl+DTx3aLa8nU4YEzf+ZEIYkjcG5t8/V8DQnEnxyCvElQmQo/F0rB l2F/H1CiiFfk4wl/JGF90Pvk8J1sDhDAXLFkLJFcx3KZIsS5fnVRt2Ud1 8H0wScVKnweGBvaQGdOsySTXO08IabwE8BD1+OrpUFhOJqA2bECdFVJQZ ihTuBLxVYDtVIaJDXy6Citu3DBc3F0uBNHwnRewiYrzolyOXFxbjEKrGC Ee/SQHA+p6JmSaxFxBK5ZIjrg325qm/0iheLPcwwhSgTKKj4x5m/wwBfU G2tAuaCHF3JLvAqKo1Bcr/zjLmD++QC7b60SBhZTeoaQmmmf4s2Z9gpZv g==; X-CSE-ConnectionGUID: Gyz/XmsyQZqT7P9kZM6NLQ== X-CSE-MsgGUID: XgJ1X1pHSs2Dy5yLMU8sDQ== X-IronPort-AV: E=McAfee;i="6800,10657,11508"; a="56465225" X-IronPort-AV: E=Sophos;i="6.17,255,1747724400"; d="scan'208";a="56465225" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Aug 2025 02:39:18 -0700 X-CSE-ConnectionGUID: 17wEqfI/QNqUGmKNjhU3lg== X-CSE-MsgGUID: 5VY8GygcR6WqFwg4F533vQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.17,255,1747724400"; d="scan'208";a="187196773" Received: from gkldtt-dev-004.igk.intel.com (HELO localhost) ([10.123.221.202]) by fmviesa002-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Aug 2025 02:39:17 -0700 From: Tankut Baris Aktemur To: gdb-patches@sourceware.org, Markus Metzger Subject: [PATCH v3 06/44] gdb, arch, intelgt: add intelgt arch definitions Date: Fri, 1 Aug 2025 11:37:08 +0200 Message-Id: <20250801-upstream-intelgt-mvp-v3-6-59ce0f87075b@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250801-upstream-intelgt-mvp-v3-0-59ce0f87075b@intel.com> References: <20250801-upstream-intelgt-mvp-v3-0-59ce0f87075b@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Mailer: b4 0.14.2 Content-Transfer-Encoding: base64 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org RnJvbTogTWFya3VzIE1ldHpnZXIgPG1hcmt1cy50Lm1ldHpnZXJAaW50ZWwuY29tPgoKUHJvdmlk ZSBJbnRlbCBHVCBhcmNoaXRlY3R1cmUtc3BlY2lmaWMgZGVmaW5pdGlvbnMgdGhhdCBjYW4gYmUg dXNlZCBieQpib3RoIHRoZSBsb3cgdGFyZ2V0IGF0IHRoZSBzZXJ2ZXIgc2lkZSBhbmQgdGRlcCBh dCB0aGUgR0RCIHNpZGUuCgpPdGhlciB0aGFuLCBmb3IgZXhhbXBsZSwgSUEsIEludGVsIEdUIGRv ZXMgbm90IGhhdmUgYSBkZWRpY2F0ZWQKYnJlYWtwb2ludCBpbnN0cnVjdGlvbi4gIEluc3RlYWQs IGl0IGhhcyBhIGJyZWFrcG9pbnQgYml0IGluIGVhY2gKaW5zdHJ1Y3Rpb24uICBXZSBkZWZpbmUg YXJjaCBtZXRob2RzIGZvciBkZWFsaW5nIHdpdGggaW5zdHJ1Y3Rpb24KYnJlYWtwb2ludCBiaXRz LgoKQ28tYXV0aG9yZWQtYnk6IFRhbmt1dCBCYXJpcyBBa3RlbXVyIDx0YW5rdXQuYmFyaXMuYWt0 ZW11ckBpbnRlbC5jb20+CkNvLWF1dGhvcmVkLWJ5OiBNaWhhaWxzIFN0cmFzdW5zIDxtaWhhaWxz LnN0cmFzdW5zQGludGVsLmNvbT4KQ28tYXV0aG9yZWQtYnk6IE5hdGFsaWEgU2FpYXBvdmEgPG5h dGFsaWEuc2FpYXBvdmFAaW50ZWwuY29tPgpSZXZpZXdlZC1CeTogVGhpYWdvIEp1bmcgQmF1ZXJt YW5uIDx0aGlhZ28uYmF1ZXJtYW5uQGxpbmFyby5vcmc+Ci0tLQogZ2RiL01ha2VmaWxlLmluICAg IHwgICAxICsKIGdkYi9hcmNoL2ludGVsZ3QuYyB8IDE5MSArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZ2RiL2FyY2gvaW50ZWxndC5oIHwgMTg2 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBm aWxlcyBjaGFuZ2VkLCAzNzggaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2dkYi9NYWtlZmls ZS5pbiBiL2dkYi9NYWtlZmlsZS5pbgppbmRleCBmYzBjNTY1NjRjMjMyNTIzYjU5NzRhMTI4ZGE2 YmY1OGM2YmIzMTYwLi44YWFjNzFkNzA1Nzk4MGE0NWUzY2I4OWJlMmM1ODMyMjM3NjJhMWM3IDEw MDY0NAotLS0gYS9nZGIvTWFrZWZpbGUuaW4KKysrIGIvZ2RiL01ha2VmaWxlLmluCkBAIC03NTYs NiArNzU2LDcgQEAgQUxMXzY0X1RBUkdFVF9PQlMgPSBcCiAJYXJjaC9hYXJjaDY0LXNjYWxhYmxl LWxpbnV4Lm8gXAogCWFyY2gvYW1kNjQtbGludXgtdGRlc2MubyBcCiAJYXJjaC9hbWQ2NC5vIFwK KwlhcmNoL2ludGVsZ3QubyBcCiAJYXJjaC9yaXNjdi5vIFwKIAlicGYtdGRlcC5vIFwKIAlpYTY0 LWxpbnV4LXRkZXAubyBcCmRpZmYgLS1naXQgYS9nZGIvYXJjaC9pbnRlbGd0LmMgYi9nZGIvYXJj aC9pbnRlbGd0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTg2MjA5ZmZhODM2OWZkMzY5M2I2ZGIwYjUxY2I2Zjli ODRmZTYyMgotLS0gL2Rldi9udWxsCisrKyBiL2dkYi9hcmNoL2ludGVsZ3QuYwpAQCAtMCwwICsx LDE5MSBAQAorLyogQ29weXJpZ2h0IChDKSAyMDE5LTIwMjUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBJbmMuCisKKyAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdEQi4KKworICAgVGhpcyBwcm9n cmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2Rp ZnkKKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgYXMgcHVibGlzaGVkIGJ5CisgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorICAgKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KKworICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgTUVSQ0hBTlRBQklMSVRZ IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICAgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgWW91IHNob3VsZCBo YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAg IGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9y Zy9saWNlbnNlcy8+LiAgKi8KKworI2luY2x1ZGUgImludGVsZ3QuaCIKKyNpbmNsdWRlIDxzdGRs aWIuaD4KKworbmFtZXNwYWNlIGludGVsZ3QgeworCisvKiBHZXQgdGhlIGJpdCBhdCBQT1MgaW4g SU5TVC4gICovCisKK2Jvb2wKK2dldF9pbnN0X2JpdCAoZ2RiOjphcnJheV92aWV3PGNvbnN0IGdk Yl9ieXRlPiBpbnN0LCBpbnQgcG9zKQoreworICBpZiAocG9zIDwgMCB8fCAoaW5zdC5zaXplICgp ICogOCkgPD0gcG9zKQorICAgIGludGVybmFsX2Vycm9yIChfKCJiYWQgYml0IG9mZnNldDogJWQi KSwgcG9zKTsKKworICBjb25zdCBpbnQgaWR4ID0gcG9zID4+IDM7CisgIGNvbnN0IGludCBvZmYg PSBwb3MgJiA3OworICBjb25zdCBpbnQgbWFzayA9IDEgPDwgb2ZmOworICBjb25zdCBnZGJfYnl0 ZSBieXRlID0gaW5zdFtpZHhdOworCisgIHJldHVybiAoYnl0ZSAmIG1hc2spICE9IDA7Cit9CisK Ky8qIFNldCB0aGUgYml0IGF0IFBPUyBpbiBJTlNULiAgKi8KKworYm9vbAorc2V0X2luc3RfYml0 IChnZGI6OmFycmF5X3ZpZXc8Z2RiX2J5dGU+IGluc3QsIGludCBwb3MpCit7CisgIGlmIChwb3Mg PCAwIHx8IChpbnN0LnNpemUgKCkgKiA4KSA8PSBwb3MpCisgICAgaW50ZXJuYWxfZXJyb3IgKF8o ImJhZCBiaXQgb2Zmc2V0OiAlZCIpLCBwb3MpOworCisgIGNvbnN0IGludCBpZHggPSBwb3MgPj4g MzsKKyAgY29uc3QgaW50IG9mZiA9IHBvcyAmIDc7CisgIGNvbnN0IGludCBtYXNrID0gMSA8PCBv ZmY7CisgIGNvbnN0IGdkYl9ieXRlIGJ5dGUgPSBpbnN0W2lkeF07CisKKyAgY29uc3QgYm9vbCBv bGQgPSAoYnl0ZSAmIG1hc2spICE9IDA7CisgIGluc3RbaWR4XSB8PSBtYXNrOworCisgIHJldHVy biBvbGQ7Cit9CisKKy8qIENsZWFyIHRoZSBiaXQgYXQgUE9TIGluIElOU1QuICAqLworCitib29s CitjbGVhcl9pbnN0X2JpdCAoZ2RiOjphcnJheV92aWV3PGdkYl9ieXRlPiBpbnN0LCBpbnQgcG9z KQoreworICBpZiAocG9zIDwgMCB8fCAoaW5zdC5zaXplICgpICogOCkgPD0gcG9zKQorICAgIGlu dGVybmFsX2Vycm9yIChfKCJiYWQgYml0IG9mZnNldDogJWQiKSwgcG9zKTsKKworICBjb25zdCBp bnQgaWR4ID0gcG9zID4+IDM7CisgIGNvbnN0IGludCBvZmYgPSBwb3MgJiA3OworICBjb25zdCBp bnQgbWFzayA9IDEgPDwgb2ZmOworICBjb25zdCBnZGJfYnl0ZSBieXRlID0gaW5zdFtpZHhdOwor CisgIGNvbnN0IGJvb2wgb2xkID0gKGJ5dGUgJiBtYXNrKSAhPSAwOworICBpbnN0W2lkeF0gJj0g fm1hc2s7CisKKyAgcmV0dXJuIG9sZDsKK30KKworLyogU2VlIGFyY2gvaW50ZWxndC5oLiAgKi8K KworeGVfdmVyc2lvbgorZ2V0X3hlX3ZlcnNpb24gKHVpbnQzMl90IGRldmljZV9pZCkKK3sKKyAg c3dpdGNoIChkZXZpY2VfaWQpCisgICAgeworICAgICAgY2FzZSAweDRGODA6CisgICAgICBjYXNl IDB4NEY4MToKKyAgICAgIGNhc2UgMHg0RjgyOgorICAgICAgY2FzZSAweDRGODM6CisgICAgICBj YXNlIDB4NEY4NDoKKyAgICAgIGNhc2UgMHg0Rjg1OgorICAgICAgY2FzZSAweDRGODY6CisgICAg ICBjYXNlIDB4NEY4NzoKKyAgICAgIGNhc2UgMHg0Rjg4OgorICAgICAgY2FzZSAweDU2OTA6Cisg ICAgICBjYXNlIDB4NTY5MToKKyAgICAgIGNhc2UgMHg1NjkyOgorICAgICAgY2FzZSAweDU2OTM6 CisgICAgICBjYXNlIDB4NTY5NDoKKyAgICAgIGNhc2UgMHg1Njk1OgorICAgICAgY2FzZSAweDU2 OTY6CisgICAgICBjYXNlIDB4NTY5NzoKKyAgICAgIGNhc2UgMHg1Njk4OgorICAgICAgY2FzZSAw eDU2QTA6CisgICAgICBjYXNlIDB4NTZBMToKKyAgICAgIGNhc2UgMHg1NkEyOgorICAgICAgY2Fz ZSAweDU2QTM6CisgICAgICBjYXNlIDB4NTZBNDoKKyAgICAgIGNhc2UgMHg1NkE1OgorICAgICAg Y2FzZSAweDU2QTY6CisgICAgICBjYXNlIDB4NTZBNzoKKyAgICAgIGNhc2UgMHg1NkE4OgorICAg ICAgY2FzZSAweDU2QTk6CisgICAgICBjYXNlIDB4NTZCMDoKKyAgICAgIGNhc2UgMHg1NkIxOgor ICAgICAgY2FzZSAweDU2QjI6CisgICAgICBjYXNlIDB4NTZCMzoKKyAgICAgIGNhc2UgMHg1NkJB OgorICAgICAgY2FzZSAweDU2QkI6CisgICAgICBjYXNlIDB4NTZCQzoKKyAgICAgIGNhc2UgMHg1 NkJEOgorICAgICAgY2FzZSAweDU2QzA6CisgICAgICBjYXNlIDB4NTZDMToKKyAgICAgIGNhc2Ug MHg1NkMyOgorICAgICAgY2FzZSAweDU2Q0Y6CisgICAgICBjYXNlIDB4N0Q0MDoKKyAgICAgIGNh c2UgMHg3RDQ1OgorICAgICAgY2FzZSAweDdENjc6CisgICAgICBjYXNlIDB4N0Q0MToKKyAgICAg IGNhc2UgMHg3RDU1OgorICAgICAgY2FzZSAweDdERDU6CisgICAgICBjYXNlIDB4N0Q1MToKKyAg ICAgIGNhc2UgMHg3REQxOgorCXJldHVybiBYRV9IUEc7CisKKyAgICAgIGNhc2UgMHgwMjAxOgor ICAgICAgY2FzZSAweDAyMDI6CisgICAgICBjYXNlIDB4MDIwMzoKKyAgICAgIGNhc2UgMHgwMjA0 OgorICAgICAgY2FzZSAweDAyMDU6CisgICAgICBjYXNlIDB4MDIwNjoKKyAgICAgIGNhc2UgMHgw MjA3OgorICAgICAgY2FzZSAweDAyMDg6CisgICAgICBjYXNlIDB4MDIwOToKKyAgICAgIGNhc2Ug MHgwMjBBOgorICAgICAgY2FzZSAweDAyMEI6CisgICAgICBjYXNlIDB4MDIwQzoKKyAgICAgIGNh c2UgMHgwMjBEOgorICAgICAgY2FzZSAweDAyMEU6CisgICAgICBjYXNlIDB4MDIwRjoKKyAgICAg IGNhc2UgMHgwMjEwOgorCXJldHVybiBYRV9IUDsKKworICAgICAgY2FzZSAweDBCRDA6CisgICAg ICBjYXNlIDB4MEJENDoKKyAgICAgIGNhc2UgMHgwQkQ1OgorICAgICAgY2FzZSAweDBCRDY6Cisg ICAgICBjYXNlIDB4MEJENzoKKyAgICAgIGNhc2UgMHgwQkQ4OgorICAgICAgY2FzZSAweDBCRDk6 CisgICAgICBjYXNlIDB4MEJEQToKKyAgICAgIGNhc2UgMHgwQkRCOgorICAgICAgY2FzZSAweDBC Njk6CisgICAgICBjYXNlIDB4MEI2RToKKwlyZXR1cm4gWEVfSFBDOworCisgICAgICBjYXNlIDB4 NjQyMDoKKyAgICAgIGNhc2UgMHg2NEEwOgorICAgICAgY2FzZSAweDY0QjA6CisKKyAgICAgIGNh c2UgMHhFMjAyOgorICAgICAgY2FzZSAweEUyMEI6CisgICAgICBjYXNlIDB4RTIwQzoKKyAgICAg IGNhc2UgMHhFMjBEOgorICAgICAgY2FzZSAweEUyMTI6CisJcmV0dXJuIFhFMjsKKworICAgICAg Y2FzZSAweEIwODA6CisgICAgICBjYXNlIDB4QjA4MToKKyAgICAgIGNhc2UgMHhCMDgyOgorICAg ICAgY2FzZSAweEIwODM6CisgICAgICBjYXNlIDB4QjA4RjoKKyAgICAgIGNhc2UgMHhCMDkwOgor ICAgICAgY2FzZSAweEIwQTA6CisgICAgICBjYXNlIDB4QjBCMDoKKwlyZXR1cm4gWEUzOworCisg ICAgICBkZWZhdWx0OgorCXJldHVybiBYRV9JTlZBTElEOworICAgIH0KK30KKworfSAvKiBuYW1l c3BhY2UgaW50ZWxndCAqLwpkaWZmIC0tZ2l0IGEvZ2RiL2FyY2gvaW50ZWxndC5oIGIvZ2RiL2Fy Y2gvaW50ZWxndC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI1OTA4ODdhMzBlNzRmOTc4YWM5NDFhY2NmYjkxYjUw NTIzODU1YTkKLS0tIC9kZXYvbnVsbAorKysgYi9nZGIvYXJjaC9pbnRlbGd0LmgKQEAgLTAsMCAr MSwxODYgQEAKKy8qIENvcHlyaWdodCAoQykgMjAxOS0yMDI1IEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgSW5jLgorCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiBHREIuCisKKyAgIFRoaXMgcHJv Z3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9k aWZ5CisgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQorICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKyAgIChhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAgIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQg aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisg ICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5v cmcvbGljZW5zZXMvPi4gICovCisKKyNpZm5kZWYgQVJDSF9JTlRFTEdUX0gKKyNkZWZpbmUgQVJD SF9JTlRFTEdUX0gKKworI2luY2x1ZGUgImdkYnN1cHBvcnQvdGRlc2MuaCIKKyNpbmNsdWRlIDxz dHJpbmc+CisjaW5jbHVkZSA8dmVjdG9yPgorCituYW1lc3BhY2UgaW50ZWxndCB7CisKKy8qIFZh cmlvdXMgYXJjaCBjb25zdGFudHMuICAqLworCitlbnVtIGJyZWFrcG9pbnRfa2luZAoreworICBC UF9JTlNUUlVDVElPTiA9IDEsCit9OworCisvKiBUaGUgbGVuZ3RoIG9mIGEgZnVsbCBhbmQgY29t cGFjdCBJbnRlbEdUIGluc3RydWN0aW9uIGluIGJ5dGVzLiAgKi8KKworY29uc3RleHByIGludCBN QVhfSU5TVF9MRU5HVEggPSAxNjsKK2NvbnN0ZXhwciBpbnQgQ09NUEFDVF9JTlNUX0xFTkdUSCA9 IDg7CisKKy8qIEZlYXR1cmUgbmFtZXMuCisKKyAgIFRoZXkgY29ycmVzcG9uZCB0byByZWdpc3Rl ciBzZXRzIGRlZmluZWQgaW4gemV0X2ludGVsX2dwdV9kZWJ1Zy5oLiAgV2UKKyAgIGRlY2xhcmUg ZmVhdHVyZSBuYW1lcyBpbiB0aGUgb3JkZXIgdXNlZCBpbiB0aGF0IGhlYWRlci4KKworICAgVGhl IFNCQSByZWdpc3RlciBzZXQgY29uc2lzdHMgb2YgYSBzZXQgb2YgYmFzZSByZWdpc3RlcnMgaW4g dGhlIG9yZGVyCisgICBkZWZpbmVkIGluIHRoYXQgaGVhZGVyIGZpbGUuCisKKyAgIE5vdCBhbGwg cmVnaXN0ZXJzIGhhdmUgRFdBUkYgbnVtYmVycy4gIFNlZSBEV0FSRl9SRUdTRVRTIGJlbG93IGZv ciBhCisgICBsaXN0IG9mIGZlYXR1cmVzIHRoYXQgZG8uICAqLworY29uc3RleHByIGNvbnN0IGNo YXIgKkZFQVRVUkVfR1JGID0gIm9yZy5nbnUuZ2RiLmludGVsZ3QuZ3JmIjsKK2NvbnN0ZXhwciBj b25zdCBjaGFyICpGRUFUVVJFX0FERFIgPSAib3JnLmdudS5nZGIuaW50ZWxndC5hZGRyIjsKK2Nv bnN0ZXhwciBjb25zdCBjaGFyICpGRUFUVVJFX0ZMQUcgPSAib3JnLmdudS5nZGIuaW50ZWxndC5m bGFnIjsKK2NvbnN0ZXhwciBjb25zdCBjaGFyICpGRUFUVVJFX0NFID0gIm9yZy5nbnUuZ2RiLmlu dGVsZ3QuY2UiOworY29uc3RleHByIGNvbnN0IGNoYXIgKkZFQVRVUkVfU1IgPSAib3JnLmdudS5n ZGIuaW50ZWxndC5zciI7Citjb25zdGV4cHIgY29uc3QgY2hhciAqRkVBVFVSRV9DUiA9ICJvcmcu Z251LmdkYi5pbnRlbGd0LmNyIjsKK2NvbnN0ZXhwciBjb25zdCBjaGFyICpGRUFUVVJFX1REUiA9 ICJvcmcuZ251LmdkYi5pbnRlbGd0LnRkciI7Citjb25zdGV4cHIgY29uc3QgY2hhciAqRkVBVFVS RV9BQ0MgPSAib3JnLmdudS5nZGIuaW50ZWxndC5hY2MiOworY29uc3RleHByIGNvbnN0IGNoYXIg KkZFQVRVUkVfTU1FID0gIm9yZy5nbnUuZ2RiLmludGVsZ3QubW1lIjsKK2NvbnN0ZXhwciBjb25z dCBjaGFyICpGRUFUVVJFX1NQID0gIm9yZy5nbnUuZ2RiLmludGVsZ3Quc3AiOworY29uc3RleHBy IGNvbnN0IGNoYXIgKkZFQVRVUkVfU0JBID0gIm9yZy5nbnUuZ2RiLmludGVsZ3Quc2JhIjsKK2Nv bnN0ZXhwciBjb25zdCBjaGFyICpGRUFUVVJFX0RCRyA9ICJvcmcuZ251LmdkYi5pbnRlbGd0LmRi ZyI7Citjb25zdGV4cHIgY29uc3QgY2hhciAqRkVBVFVSRV9GQyA9ICJvcmcuZ251LmdkYi5pbnRl bGd0LmZjIjsKK2NvbnN0ZXhwciBjb25zdCBjaGFyICpGRUFUVVJFX0RFQlVHR0VSID0gIm9yZy5n bnUuZ2RiLmludGVsZ3QuZGVidWdnZXIiOworCisvKiBSZWdpc3RlciBzZXRzL2dyb3VwcyBuZWVk ZWQgZm9yIERXQVJGIG1hcHBpbmcuICBVc2VkIGZvcgorICAgZGVjbGFyaW5nIHN0YXRpYyBhcnJh eXMgZm9yIHZhcmlvdXMgbWFwcGluZyB0YWJsZXMuICAqLworCitlbnVtIGR3YXJmX3JlZ3NldHMg OiBpbnQKK3sKKyAgUkVHU0VUX1NCQSA9IDAsCisgIFJFR1NFVF9HUkYsCisgIFJFR1NFVF9BRERS LAorICBSRUdTRVRfRkxBRywKKyAgUkVHU0VUX0FDQywKKyAgUkVHU0VUX01NRSwKKyAgUkVHU0VU X0NPVU5UCit9OworCisvKiBNYXAgb2YgZHdhcmZfcmVnc2V0IHZhbHVlcyB0byB0aGUgdGFyZ2V0 IGRlc2NyaXB0aW9uCisgICBmZWF0dXJlIG5hbWVzLiAgKi8KKworY29uc3RleHByIGNvbnN0IGNo YXIgKkRXQVJGX1JFR1NFVF9GRUFUVVJFU1tSRUdTRVRfQ09VTlRdID0geworICBGRUFUVVJFX1NC QSwKKyAgRkVBVFVSRV9HUkYsCisgIEZFQVRVUkVfQUREUiwKKyAgRkVBVFVSRV9GTEFHLAorICBG RUFUVVJFX0FDQywKKyAgRkVBVFVSRV9NTUUKK307CisKKy8qIFRoZSBlbmNvZGluZyBmb3IgWEUg dmVyc2lvbiBlbnVtZXJhdGVzIGZvbGxvd3MgdGhpcyBwYXR0ZXJuLCB3aGljaCBpcworICAgYWxp Z25lZCB3aXRoIHRoZSBJR0EgZW5jb2RpbmcuICAqLworCisjZGVmaW5lIFhFX1ZFUlNJT04oTUFK LCBNSU4pICgoKE1BSikgPDwgMjQpIHwgKE1JTikpCisKKy8qIFN1cHBvcnRlZCBHREIgWEUgcGxh dGZvcm1zLiAgKi8KKworZW51bSB4ZV92ZXJzaW9uCit7CisgIFhFX0lOVkFMSUQgPSAwLAorICBY RV9IUCA9IFhFX1ZFUlNJT04gKDEsIDEpLAorICBYRV9IUEcgPSBYRV9WRVJTSU9OICgxLCAyKSwK KyAgWEVfSFBDID0gWEVfVkVSU0lPTiAoMSwgNCksCisgIFhFMiA9IFhFX1ZFUlNJT04gKDIsIDAp LAorICBYRTMgPSBYRV9WRVJTSU9OICgzLCAwKSwKK307CisKKy8qIEhlbHBlciBmdW5jdGlvbiB0 byB0cmFuc2xhdGUgdGhlIGRldmljZSBpZCB0byBhIGRldmljZSB2ZXJzaW9uLiAgKi8KKworZXh0 ZXJuIHhlX3ZlcnNpb24gZ2V0X3hlX3ZlcnNpb24gKHVpbnQzMl90IGRldmljZV9pZCk7CisKKy8q IEdldCB0aGUgYml0IGF0IFBPUyBpbiBJTlNULiAgKi8KKworYm9vbCBnZXRfaW5zdF9iaXQgKGdk Yjo6YXJyYXlfdmlldzxjb25zdCBnZGJfYnl0ZT4gaW5zdCwgaW50IHBvcyk7CisKKy8qIFNldCB0 aGUgYml0IGF0IFBPUyBpbiBJTlNULiAgKi8KKworYm9vbCBzZXRfaW5zdF9iaXQgKGdkYjo6YXJy YXlfdmlldzxnZGJfYnl0ZT4gaW5zdCwgaW50IHBvcyk7CisKKy8qIENsZWFyIHRoZSBiaXQgYXQg UE9TIGluIElOU1QuICAqLworCitib29sIGNsZWFyX2luc3RfYml0IChnZGI6OmFycmF5X3ZpZXc8 Z2RiX2J5dGU+IGluc3QsIGludCBwb3MpOworCitzdGF0aWMgaW5saW5lIGludAorYnJlYWtwb2lu dF9iaXRfb2Zmc2V0IChnZGI6OmFycmF5X3ZpZXc8Y29uc3QgZ2RiX2J5dGU+IGluc3QsCisJCSAg ICAgICB1aW50MzJfdCBkZXZpY2VfaWQpCit7CisgIHhlX3ZlcnNpb24gZGV2aWNlX3ZlcnNpb24g PSBnZXRfeGVfdmVyc2lvbiAoZGV2aWNlX2lkKTsKKyAgc3dpdGNoIChkZXZpY2VfdmVyc2lvbikK KyAgICB7CisgICAgY2FzZSBpbnRlbGd0OjpYRV9IUDoKKyAgICBjYXNlIGludGVsZ3Q6OlhFX0hQ RzoKKyAgICBjYXNlIGludGVsZ3Q6OlhFX0hQQzoKKyAgICBjYXNlIGludGVsZ3Q6OlhFMjoKKyAg ICBjYXNlIGludGVsZ3Q6OlhFMzoKKyAgICAgIC8qIENoZWNrIHRoZSBDbXB0Q3RybCBmbGFnIChi aXQgMjkpLiAgKi8KKyAgICAgIHJldHVybiAoKChpbnN0WzNdICYgMHgyMCkgIT0gMCkgPyA3IDog MzApOworCisgICAgY2FzZSBpbnRlbGd0OjpYRV9JTlZBTElEOgorICAgICAgYnJlYWs7CisgICAg fQorICBlcnJvciAoXygiVW5zdXBwb3J0ZWQgZGV2aWNlIGlkIDB4JSIgUFJJeDMyKSwgZGV2aWNl X2lkKTsKK30KKworc3RhdGljIGlubGluZSBib29sCitzZXRfYnJlYWtwb2ludCAoZ2RiOjphcnJh eV92aWV3PGdkYl9ieXRlPiBpbnN0LCB1aW50MzJfdCBkZXZpY2VfaWQpCit7CisgIHJldHVybiBz ZXRfaW5zdF9iaXQgKGluc3QsIGJyZWFrcG9pbnRfYml0X29mZnNldCAoaW5zdCwgZGV2aWNlX2lk KSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbAorY2xlYXJfYnJlYWtwb2ludCAoZ2RiOjphcnJh eV92aWV3PGdkYl9ieXRlPiBpbnN0LCB1aW50MzJfdCBkZXZpY2VfaWQpCit7CisgIHJldHVybiBj bGVhcl9pbnN0X2JpdCAoaW5zdCwgYnJlYWtwb2ludF9iaXRfb2Zmc2V0IChpbnN0LCBkZXZpY2Vf aWQpKTsKK30KKworc3RhdGljIGlubGluZSBib29sCitoYXNfYnJlYWtwb2ludCAoZ2RiOjphcnJh eV92aWV3PGNvbnN0IGdkYl9ieXRlPiBpbnN0LCB1aW50MzJfdCBkZXZpY2VfaWQpCit7CisgIHJl dHVybiBnZXRfaW5zdF9iaXQgKGluc3QsIGJyZWFrcG9pbnRfYml0X29mZnNldCAoaW5zdCwgZGV2 aWNlX2lkKSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50CitpbnN0X2xlbmd0aCAo Z2RiOjphcnJheV92aWV3PGNvbnN0IGdkYl9ieXRlPiBpbnN0LCB1aW50MzJfdCBkZXZpY2VfaWQp Cit7CisgIHhlX3ZlcnNpb24gZGV2aWNlX3ZlcnNpb24gPSBnZXRfeGVfdmVyc2lvbiAoZGV2aWNl X2lkKTsKKyAgc3dpdGNoIChkZXZpY2VfdmVyc2lvbikKKyAgICB7CisgICAgY2FzZSBpbnRlbGd0 OjpYRV9IUDoKKyAgICBjYXNlIGludGVsZ3Q6OlhFX0hQRzoKKyAgICBjYXNlIGludGVsZ3Q6OlhF X0hQQzoKKyAgICBjYXNlIGludGVsZ3Q6OlhFMjoKKyAgICBjYXNlIGludGVsZ3Q6OlhFMzoKKyAg ICAgIC8qIENoZWNrIHRoZSBDbXB0Q3RybCBmbGFnIChiaXQgMjkpLiAgKi8KKyAgICAgIHJldHVy biAoKChpbnN0WzNdICYgMHgyMCkgIT0gMCkKKwkgICAgICA/IENPTVBBQ1RfSU5TVF9MRU5HVEgK KwkgICAgICA6IE1BWF9JTlNUX0xFTkdUSCk7CisKKyAgICBjYXNlIGludGVsZ3Q6OlhFX0lOVkFM SUQ6CisgICAgICBicmVhazsKKyAgICB9CisgIGVycm9yIChfKCJVbnN1cHBvcnRlZCBkZXZpY2Ug aWQgMHglIiBQUkl4MzIpLCBkZXZpY2VfaWQpOworfQorCit9IC8qIG5hbWVzcGFjZSBpbnRlbGd0 ICovCisKKyNlbmRpZgoKLS0gCjIuMzQuMQoKSW50ZWwgRGV1dHNjaGxhbmQgR21iSA0KUmVnaXN0 ZXJlZCBBZGRyZXNzOiBBbSBDYW1wZW9uIDEwLCA4NTU3OSBOZXViaWJlcmcsIEdlcm1hbnkNClRl bDogKzQ5IDg5IDk5IDg4NTMtMCwgd3d3LmludGVsLmRlDQpNYW5hZ2luZyBEaXJlY3RvcnM6IFNl YW4gRmVubmVsbHksIEplZmZyZXkgU2NobmVpZGVybWFuLCBUaWZmYW55IERvb24gU2lsdmENCkNo YWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29yeSBCb2FyZDogTmljb2xlIExhdQ0KUmVnaXN0ZXJl ZCBPZmZpY2U6IE11bmljaA0KQ29tbWVyY2lhbCBSZWdpc3RlcjogQW10c2dlcmljaHQgTXVlbmNo ZW4gSFJCIDE4NjkyOAo=