From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id KhdwDaMTD2CuCwAAWB0awg (envelope-from ) for ; Mon, 25 Jan 2021 13:53:23 -0500 Received: by simark.ca (Postfix, from userid 112) id 2D0381EF80; Mon, 25 Jan 2021 13:53:23 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=FORGED_MUA_MOZILLA, FREEMAIL_FROM,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.2 Received: from 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 RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 8D19C1E945 for ; Mon, 25 Jan 2021 13:53:22 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id E391D395249E; Mon, 25 Jan 2021 18:53:21 +0000 (GMT) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074075.outbound.protection.outlook.com [40.92.74.75]) by sourceware.org (Postfix) with ESMTPS id AF5E73857812 for ; Mon, 25 Jan 2021 18:53:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org AF5E73857812 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=hotmail.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=bernd.edlinger@hotmail.de ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nUOAdRCQwDCqtB5wYIeKp2udOcOS1oazGk9j4z7eZjhPHttd2GKw/CfRTuENEkSrARWNVXdBxXLi7cdQla5HknTnUqTDAzavG8S+ahL+f7icBjSBK0MIaRBtBeRL1GmTTT/I8AcLs1TTGGkKub18abDfvtxvnpXojz6Ydnh32tJ9DMVNRPY6h7/T3uJ28BarOskVzfD5C+NnOZ+6FsO7xo1W/kOvYLz7PArps+9oB7rZsyc4EqP2jJ5OVTwOXRd0jmDPOOTgcm2qRLPuhRR8JiF5A7hRzBdOoUTxKq+pzf4TnvDu6EQ5AVuRQNmYS2aGTK6DQE9S+nbZ0VJeWU9hrg== 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=iwWqrobh4xNkX9PI4O+rxTZF6iRsvTiPTJWCt2nokyU=; b=KRwG2oHgGI/mhH07Qs9pI/jGQ8gQCzgsMl5Lw9Blz6XNOgshCFOQ+yr/pvcgPkZGYLNVcRuh7ipfhuvLimwLWa/ET2qU9T0A8XEphrnD+6Fmq0OOE3KrtoEPcLlINih2nf/BRx8bYEruvGo667BIhnm7uzFQL8KJ9ufJg9UCJnZKJXA60+bNmingB+H76OnS7W3BwxhC4+Jyl5inWqGLwzy553bCT77l7MHkC1NmVq1fqr9XbaY2KAQshEYqgjp4uB6RvjY44JTR9g3pYtyggXjBTDqpzsRCfl41mQc3yCnVk2yoigunCkYy8PcJY9buhMQ3MpytjEW7PXiEkAs4FQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from HE1EUR04FT035.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04HT044.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.11; Mon, 25 Jan 2021 18:53:15 +0000 Received: from AM8PR10MB4708.EURPRD10.PROD.OUTLOOK.COM (2a01:111:e400:7e0d::46) by HE1EUR04FT035.mail.protection.outlook.com (2a01:111:e400:7e0d::294) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.11 via Frontend Transport; Mon, 25 Jan 2021 18:53:14 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:8E23E400E19BEC2932B8411F0044A96EF89C49A58E03E39F7C7061BBA52AAAB3; UpperCasedChecksum:085AF88763F9AA1B34A19C2C46657D34DD8351AE933ABF9DBF5A37DC35220512; SizeAsReceived:8324; Count:47 Received: from AM8PR10MB4708.EURPRD10.PROD.OUTLOOK.COM ([fe80::7510:8a00:1c00:1147]) by AM8PR10MB4708.EURPRD10.PROD.OUTLOOK.COM ([fe80::7510:8a00:1c00:1147%5]) with mapi id 15.20.3784.017; Mon, 25 Jan 2021 18:53:14 +0000 Subject: Re: [PATCH][gdb/symtab] Handle DW_AT_ranges with DW_FORM_sec_off in partial DIE To: Simon Marchi , Tom de Vries , gdb-patches@sourceware.org References: <20210125122444.GA15885@delia> <56f38801-477e-fa38-5e16-22a4ed73437c@polymtl.ca> From: Bernd Edlinger Message-ID: Date: Mon, 25 Jan 2021 19:53:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 In-Reply-To: Content-Type: multipart/mixed; boundary="------------9008EBC73D10F1F56EADE2AA" Content-Language: en-US X-TMN: [moH8+UBPCezFI61GuJDd3+BGKeHiU30d] X-ClientProxiedBy: AM0PR10CA0002.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::12) To AM8PR10MB4708.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:364::23) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [192.168.1.101] (88.68.3.2) by AM0PR10CA0002.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.11 via Frontend Transport; Mon, 25 Jan 2021 18:53:13 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 47 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b1b6210e-cda0-4a78-fee9-08d8c162785e X-MS-TrafficTypeDiagnostic: HE1EUR04HT044: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rVosASrbuP0dFJVJbrhDrc6oPcYC6416hUqx+h9ahJVyHxn48W1vPsVCKntbrS6s9KvDgrShS/D2MhBrBXodPvsDgMN+OZl0pB80vfwoNqeED0iV3WfYdfrl3geU/l0LcgEg3cVabnO/GobHVvXW35oQ+qO3T7aYpcB/nm8aoNofov8wCFNzAyvDG8baX7GsgMcuk/I9vCQK6uARoXZAKsOXAnZEJuT+0gAKA7QfILghvVrTCShwQLe/ooC/oOmO6jgCgvn3GD6ctKG/JgDF7aGTi7aN5XGN3gEAErshAz0= X-MS-Exchange-AntiSpam-MessageData: FmOce4aeWAUQ61HBY/r7ydmYaBroDFAM/uSMsNEXIb+z9D3bGn8mkDZYXMJLsYQLLwRlLQFxqGHJWYODopBj7hT8pAOMWZ6A5fWcikx6Xvbe0Jjw4tpbJumTzdXVbypvyhN6mw/zT7oYAyslVqZLcQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b1b6210e-cda0-4a78-fee9-08d8c162785e X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jan 2021 18:53:14.5762 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT035.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT044 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Tom Tromey Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" --------------9008EBC73D10F1F56EADE2AA Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit On 1/25/21 7:12 PM, Simon Marchi wrote: > > > On 2021-01-25 12:42 p.m., Bernd Edlinger wrote: >> On 1/25/21 5:36 PM, Simon Marchi wrote: >>>> Yes, unfortunately I have not any experience with writing such assembly >>>> tests, but I am always impressed when one of you does it though :-) >>>> >>>> Nevertheless, the test case seems to be stable from gcc-4.8 .. gcc-11, >>>> that it fails without the patch and passes with the patch. >>>> >>>> So is it okay to push my partial symbols test as-is? >>> >>> My patch here adds a test that uses DW_FORM_sec_offset to point >>> to a .debug_rnglists (DWARF5) section. Maybe that's sufficient, >>> but if not I could probably do a DWARF4 equivalent. >>> >>> https://sourceware.org/pipermail/gdb-patches/2021-January/175229.html >>> >> >> Yeah, the hardest part on a one-line change like this is always the test case. >> >> So, I tried this patch on current trunk, but it fails: >> >> Running /home/ed/gnu/gdb-build-1/gdb/testsuite/../../../binutils-gdb/gdb/testsuite/gdb.dwarf2/rnglists-multiple-cus.exp ... >> ERROR: Couldn't load rnglists-multiple-cus-dw32 into GDB (GDB internal error). >> ERROR: Couldn't load rnglists-multiple-cus-dw64 into GDB (GDB internal error). >> Running /home/ed/gnu/gdb-build-1/gdb/testsuite/../../../binutils-gdb/gdb/testsuite/gdb.dwarf2/rnglists-sec-offset.exp ... >> FAIL: gdb.dwarf2/rnglists-sec-offset.exp: is_64=false: p/x &foo >> FAIL: gdb.dwarf2/rnglists-sec-offset.exp: is_64=true: p/x &foo >> >> This probably means that your test tests more than this single-line change alone? > > Hmm, with current master (so with Tom's patch merged), > gdb.dwarf2/rnglists-sec-offset.exp passes for me. > That will probably need investigation. Let's first check if I applied the corrrect test case, see attached patch.txt. tried to do "readelf --debug-dump rnglists-sec-offset-dw32" and "readelf --debug-dump rnglists-sec-offset-dw64" I used GNU readelf (GNU Binutils) 2.35.1 I see a warning: readelf: Warnung: The .debug_rnglists section contains unsupported offset entry count: 2. what does that mean? Doesn't that indicate that the debug-info somehow wrong? > But gdb.dwarf2/rnglists-multiple-cus.exp is expected to fail if you don't > have the other patches in my series. > >> I always thought that the partial symbols are replaced by the >> full symbols as soon as the first item from the CU is accessed, say "main". >> Can you explain how that can be? >> I was never able to get a reproducer for partial symbols with only one CU. > > The bug fixed by this patch triggers as soon as you have a function > (DW_TAG_subprogram) with a DW_AT_ranges, I don't think it matters whether > there is one or more CUs. But perhaps it's difficult to force the compiler > to emit a function with DW_AT_ranges (so, with a non-contiguous range) when > using a single CU. > It happens pretty reliably when you have a function that contains an error handling that looks obvously "unlinkely" to the compiler, because it is guarded by an if-condition and calls abort(), while there are also code paths that don't call about. The parts that call abort are then in a separate cold section. Bernd. --------------9008EBC73D10F1F56EADE2AA Content-Type: text/plain; charset=UTF-8; name="patch.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="patch.txt" ZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvbGliL2R3YXJmLmV4cCBiL2dkYi90ZXN0c3VpdGUv bGliL2R3YXJmLmV4cAppbmRleCA3NDYyODkwLi5hYmE0YWZiIDEwMDY0NAotLS0gYS9nZGIvdGVz dHN1aXRlL2xpYi9kd2FyZi5leHAKKysrIGIvZ2RiL3Rlc3RzdWl0ZS9saWIvZHdhcmYuZXhwCkBA IC00NzMsNyArNDczLDggQEAgbmFtZXNwYWNlIGV2YWwgRHdhcmYgewogCSAgICB9CiAKIAkgICAg RFdfRk9STV9yZWZfdWRhdGEgLQotCSAgICBEV19GT1JNX3VkYXRhIHsKKwkgICAgRFdfRk9STV91 ZGF0YSAtCisJICAgIERXX0ZPUk1fcm5nbGlzdHggewogCQlfb3AgLnVsZWIxMjggJHZhbHVlCiAJ ICAgIH0KIApAQCAtMTExNSw4ICsxMTE2LDE2IEBAIG5hbWVzcGFjZSBldmFsIER3YXJmIHsKIAl9 CiAJZGVmaW5lX2xhYmVsICRzdGFydF9sYWJlbAogCV9vcCAuMmJ5dGUgJF9jdV92ZXJzaW9uIFZl cnNpb24KLQlfb3AgLiR7X2N1X29mZnNldF9zaXplfWJ5dGUgJG15X2FiYnJldnMgQWJicmV2cwot CV9vcCAuYnl0ZSAkX2N1X2FkZHJfc2l6ZSAiUG9pbnRlciBzaXplIgorCisJIyBUaGUgQ1UgaGVh ZGVyIGZvciBEV0FSRiA0IGFuZCA1IGFyZSBzbGlnaHRseSBkaWZmZXJlbnQuCisJaWYgeyAkX2N1 X3ZlcnNpb24gPT0gNSB9IHsKKwkgICAgX29wIC5ieXRlIDB4MSAiRFdfVVRfY29tcGlsZSIKKwkg ICAgX29wIC5ieXRlICRfY3VfYWRkcl9zaXplICJQb2ludGVyIHNpemUiCisJICAgIF9vcCAuJHtf Y3Vfb2Zmc2V0X3NpemV9Ynl0ZSAkbXlfYWJicmV2cyBBYmJyZXZzCisJfSBlbHNlIHsKKwkgICAg X29wIC4ke19jdV9vZmZzZXRfc2l6ZX1ieXRlICRteV9hYmJyZXZzIEFiYnJldnMKKwkgICAgX29w IC5ieXRlICRfY3VfYWRkcl9zaXplICJQb2ludGVyIHNpemUiCisJfQogCiAJX2RlZmVyX291dHB1 dCAkX2FiYnJldl9zZWN0aW9uIHsKIAkgICAgZGVmaW5lX2xhYmVsICRteV9hYmJyZXZzCkBAIC0x MzA2LDYgKzEzMTUsMTc4IEBAIG5hbWVzcGFjZSBldmFsIER3YXJmIHsKIAl1cGxldmVsICRib2R5 CiAgICAgfQogCisgICAgIyBFbWl0IGEgRFdBUkYgLmRlYnVnX3JuZ2xpc3RzIHNlY3Rpb24uCisg ICAgIworICAgICMgVGhlIHRhcmdldCBhZGRyZXNzIHNpemUgaXMgYmFzZWQgb24gdGhlIGN1cnJl bnQgdGFyZ2V0J3MgYWRkcmVzcyBzaXplLgorICAgICMKKyAgICAjIFRoZXJlIGlzIG9uZSBtYW5k YXRvcnkgcG9zaXRpb25hbCBhcmd1bWVudCwgQk9EWSwgd2hpY2ggbXVzdCBiZSBUY2wgY29kZQor ICAgICMgdGhhdCBlbWl0cyB0aGUgY29udGVudCBvZiB0aGUgc2VjdGlvbi4gIEl0IGlzIGV2YWx1 YXRlZCBpbiB0aGUgY2FsbGVyJ3MKKyAgICAjIGNvbnRleHQuCisgICAgIworICAgICMgVGhlIGZv bGxvd2luZyBvcHRpb24gY2FuIGJlIHVzZWQ6CisgICAgIworICAgICMgIC0gLWlzLTY0IHRydWV8 ZmFsc2U6IFdoZXRoZXIgdG8gdXNlIDY0LWJpdCBEV0FSRiBpbnN0ZWFkIG9mIDMyLWJpdCBEV0FS Ri4KKyAgICAjICAgICAgICAgICAgICAgICAgICAgICBUaGUgZGVmYXVsdCBpcyAzMi1iaXQuCisK KyAgICBwcm9jIHJuZ2xpc3RzIHsgYXJncyB9IHsKKwl2YXJpYWJsZSBfZGVidWdfcm5nbGlzdHNf YWRkcl9zaXplCisJdmFyaWFibGUgX2RlYnVnX3JuZ2xpc3RzX29mZnNldF9zaXplCisJdmFyaWFi bGUgX2RlYnVnX3JuZ2xpc3RzX2lzXzY0X2R3YXJmCisKKwlwYXJzZV9hcmdzIHt7ImlzLTY0IiAi ZmFsc2UifX0KKworCWlmIHsgW2xsZW5ndGggJGFyZ3NdICE9IDEgfSB7CisJICAgIGVycm9yICJy bmdsaXN0cyBwcm9jIGV4cGVjdHMgb25lIHBvc2l0aW9uYWwgYXJndW1lbnQgKGJvZHkpIgorCX0K KworCWxhc3NpZ24gJGFyZ3MgYm9keQorCisJaWYgW2lzXzY0X3RhcmdldF0geworCSAgICBzZXQg X2RlYnVnX3JuZ2xpc3RzX2FkZHJfc2l6ZSA4CisJfSBlbHNlIHsKKwkgICAgc2V0IF9kZWJ1Z19y bmdsaXN0c19hZGRyX3NpemUgNAorCX0KKworCWlmIHsgJHtpcy02NH0gfSB7CisJICAgIHNldCBf ZGVidWdfcm5nbGlzdHNfb2Zmc2V0X3NpemUgOAorCSAgICBzZXQgX2RlYnVnX3JuZ2xpc3RzX2lz XzY0X2R3YXJmIHRydWUKKwl9IGVsc2UgeworCSAgICBzZXQgX2RlYnVnX3JuZ2xpc3RzX29mZnNl dF9zaXplIDQKKwkgICAgc2V0IF9kZWJ1Z19ybmdsaXN0c19pc182NF9kd2FyZiBmYWxzZQorCX0K KworCV9zZWN0aW9uICIuZGVidWdfcm5nbGlzdHMiCisKKwkjIENvdW50IG9mIHRhYmxlcyBpbiB0 aGUgc2VjdGlvbi4KKwl2YXJpYWJsZSBfZGVidWdfcm5nbGlzdHNfdGFibGVfY291bnQgMAorCisJ IyBDb21wdXRlIHRoZSBsYWJlbCBuYW1lIGZvciBsaXN0IGF0IGluZGV4IExJU1RfSURYLCBmb3Ig dGhlIGN1cnJlbnQKKwkjIHRhYmxlLgorCisJcHJvYyBfY29tcHV0ZV9saXN0X2xhYmVsIHsgbGlz dF9pZHggfSB7CisJICAgIHZhcmlhYmxlIF9kZWJ1Z19ybmdsaXN0c190YWJsZV9jb3VudAorCisJ ICAgIHJldHVybiAiLkxybmdsaXN0c190YWJsZV8ke19kZWJ1Z19ybmdsaXN0c190YWJsZV9jb3Vu dH1fbGlzdF8ke2xpc3RfaWR4fSIKKwl9CisKKwkjIEdlbmVyYXRlIG9uZSB0YWJsZSAoaGVhZGVy ICsgb2Zmc2V0IGFycmF5ICsgcmFuZ2UgbGlzdHMpLgorCSMKKwkjIEFjY2VwdHMgb25lIHBvc2l0 aW9uYWwgYXJndW1lbnQsIEJPRFkuICBCT0RZIG1heSBjYWxsIHRoZSBMSVNUXworCSMgcHJvY2Vk dXJlIHRvIGdlbmVyYXRlIHJuZ2xpc3RzLgorCSMKKwkjIFRoZSAtcG9zdC1oZWFkZXItbGFiZWwg b3B0aW9uIGNhbiBiZSB1c2VkIHRvIGRlZmluZSBhIGxhYmVsIGp1c3QgYWZ0ZXIKKwkjIHRoZSBo ZWFkZXIgb2YgdGhlIHRhYmxlLiAgVGhpcyBpcyB0aGUgbGFiZWwgdGhhdCBhIERXX0FUX3JuZ2xp c3RzX2Jhc2UKKwkjIGF0dHJpYnV0ZSB3aWxsIHVzdWFsbHkgcmVmZXIgdG8uCisKKwlwcm9jIHRh YmxlIHsgYXJncyB9IHsKKwkgICAgdmFyaWFibGUgX2RlYnVnX3JuZ2xpc3RzX3RhYmxlX2NvdW50 CisJICAgIHZhcmlhYmxlIF9kZWJ1Z19ybmdsaXN0c19hZGRyX3NpemUKKwkgICAgdmFyaWFibGUg X2RlYnVnX3JuZ2xpc3RzX29mZnNldF9zaXplCisJICAgIHZhcmlhYmxlIF9kZWJ1Z19ybmdsaXN0 c19pc182NF9kd2FyZgorCisJICAgIHBhcnNlX2FyZ3Mge3twb3N0LWhlYWRlci1sYWJlbCAiIn19 CisKKwkgICAgaWYgeyBbbGxlbmd0aCAkYXJnc10gIT0gMSB9IHsKKwkJZXJyb3IgInRhYmxlIHBy b2MgZXhwZWN0cyBvbmUgcG9zaXRpb25hbCBhcmd1bWVudCAoYm9keSkiCisJICAgIH0KKworCSAg ICBsYXNzaWduICRhcmdzIGJvZHkKKworCSAgICAjIEdlbmVyYXRlIG9uZSByYW5nZSBsaXN0Lgor CSAgICAjCisJICAgICMgQk9EWSBtYXkgY2FsbCB0aGUgdmFyaW91cyBwcm9jcyBkZWZpbmVkIGJl bG93IHRvIGdlbmVyYXRlIGxpc3QgZW50cmllcy4KKwkgICAgIyBUaGV5IGNvcnJlc3BvbmQgdG8g dGhlIHJhbmdlIGxpc3QgZW50cnkga2luZHMgZGVzY3JpYmVkIGluIHNlY3Rpb24gMi4xNy4zCisJ ICAgICMgb2YgdGhlIERXQVJGIDUgc3BlYy4KKwkgICAgIworCSAgICAjIFRvIGRlZmluZSBhIGxh YmVsIHBvaW50aW5nIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGxpc3QsIHVzZQorCSAgICAjIHRo ZSBjb252ZW50aW9uYWwgd2F5IG9mIGRlY2xhcmluZyBhbmQgZGVmaW5pbmcgbGFiZWxzOgorCSAg ICAjCisJICAgICMgICBkZWNsYXJlX2xhYmVscyB0aGVfbGlzdAorCSAgICAjCisJICAgICMgICB0 aGVfbGlzdDogbGlzdF8geworCSAgICAjICAgICAuLi4KKwkgICAgIyAgIH0KKworCSAgICBwcm9j IGxpc3RfIHsgYm9keSB9IHsKKwkJdmFyaWFibGUgX2RlYnVnX3JuZ2xpc3RzX2xpc3RfY291bnQK KworCQkjIERlZmluZSBhIGxhYmVsIGZvciB0aGlzIGxpc3QuICBJdCBpcyB1c2VkIHRvIGJ1aWxk IHRoZSBvZmZzZXQKKwkJIyBhcnJheSBsYXRlci4KKwkJc2V0IGxpc3RfbGFiZWwgW19jb21wdXRl X2xpc3RfbGFiZWwgJF9kZWJ1Z19ybmdsaXN0c19saXN0X2NvdW50XQorCQlkZWZpbmVfbGFiZWwg JGxpc3RfbGFiZWwKKworCQkjIEVtaXQgYSBEV19STEVfc3RhcnRfZW5kIGVudHJ5LgorCisJCXBy b2Mgc3RhcnRfZW5kIHsgc3RhcnQgZW5kIH0geworCQkgICAgdmFyaWFibGUgX2RlYnVnX3JuZ2xp c3RzX2FkZHJfc2l6ZQorCisJCSAgICBfb3AgLmJ5dGUgMHgwNiAiRFdfUkxFX3N0YXJ0X2VuZCIK KwkJICAgIF9vcCAuJHtfZGVidWdfcm5nbGlzdHNfYWRkcl9zaXplfWJ5dGUgJHN0YXJ0ICJzdGFy dCIKKwkJICAgIF9vcCAuJHtfZGVidWdfcm5nbGlzdHNfYWRkcl9zaXplfWJ5dGUgJGVuZCAiZW5k IgorCQl9CisKKwkJdXBsZXZlbCAkYm9keQorCisJCSMgRW1pdCBlbmQgb2YgbGlzdC4KKwkJX29w IC5ieXRlIDB4MDAgIkRXX1JMRV9lbmRfb2ZfbGlzdCIKKworCQlpbmNyIF9kZWJ1Z19ybmdsaXN0 c19saXN0X2NvdW50CisJICAgIH0KKworCSAgICAjIENvdW50IG9mIGxpc3RzIGluIHRoZSB0YWJs ZS4KKwkgICAgdmFyaWFibGUgX2RlYnVnX3JuZ2xpc3RzX2xpc3RfY291bnQgMAorCisJICAgICMg R2VuZXJhdGUgdGhlIGxpc3RzIG9wcyBmaXJzdCwgYmVjYXVzZSB3ZSBuZWVkIHRvIGtub3cgaG93 IG1hbnkKKwkgICAgIyBsaXN0cyB0aGVyZSBhcmUgdG8gZ2VuZXJhdGUgdGhlIGhlYWRlciBhbmQg b2Zmc2V0IHRhYmxlLgorCSAgICBzZXQgbGlzdHNfb3BzIFtfZGVmZXJfdG9fc3RyaW5nIHsKKwkJ dXBsZXZlbCAkYm9keQorCSAgICB9XQorCisJICAgIHNldCBwb3N0X3VuaXRfbGVuX2xhYmVsIFwK KwkJW19jb21wdXRlX2xhYmVsICJybmdsaXN0c190YWJsZV8ke19kZWJ1Z19ybmdsaXN0c190YWJs ZV9jb3VudH1fcG9zdF91bml0X2xlbiJdCisJICAgIHNldCBwb3N0X2hlYWRlcl9sYWJlbCBcCisJ CVtfY29tcHV0ZV9sYWJlbCAicm5nbGlzdHNfdGFibGVfJHtfZGVidWdfcm5nbGlzdHNfdGFibGVf Y291bnR9X3Bvc3RfaGVhZGVyIl0KKwkgICAgc2V0IHRhYmxlX2VuZF9sYWJlbCBcCisJCVtfY29t cHV0ZV9sYWJlbCAicm5nbGlzdHNfdGFibGVfJHtfZGVidWdfcm5nbGlzdHNfdGFibGVfY291bnR9 X2VuZCJdCisKKwkgICAgIyBFbWl0IHRoZSB0YWJsZSBoZWFkZXIuCisJICAgIGlmIHsgJF9kZWJ1 Z19ybmdsaXN0c19pc182NF9kd2FyZiB9IHsKKwkJX29wIC40Ynl0ZSAweGZmZmZmZmZmICJ1bml0 IGxlbmd0aCAxLzIiCisJCV9vcCAuOGJ5dGUgIiR0YWJsZV9lbmRfbGFiZWwgLSAkcG9zdF91bml0 X2xlbl9sYWJlbCIgInVuaXQgbGVuZ3RoIDIvMiIKKwkgICAgfSBlbHNlIHsKKwkJX29wIC40Ynl0 ZSAiJHRhYmxlX2VuZF9sYWJlbCAtICRwb3N0X3VuaXRfbGVuX2xhYmVsIiAidW5pdCBsZW5ndGgi CisJICAgIH0KKworCSAgICBkZWZpbmVfbGFiZWwgJHBvc3RfdW5pdF9sZW5fbGFiZWwKKworCSAg ICBfb3AgLjJieXRlIDUgImR3YXJmIHZlcnNpb24iCisJICAgIF9vcCAuYnl0ZSAkX2RlYnVnX3Ju Z2xpc3RzX2FkZHJfc2l6ZSAiYWRkcmVzcyBzaXplIgorCSAgICBfb3AgLmJ5dGUgMCAic2VnbWVu dCBzZWxlY3RvciBzaXplIgorCSAgICBfb3AgLjRieXRlICIkX2RlYnVnX3JuZ2xpc3RzX2xpc3Rf Y291bnQiICJvZmZzZXQgZW50cnkgY291bnQiCisKKwkgICAgZGVmaW5lX2xhYmVsICRwb3N0X2hl YWRlcl9sYWJlbAorCisJICAgICMgRGVmaW5lIHRoZSB1c2VyIHBvc3QtaGVhZGVyIGxhYmVsLCBp ZiBwcm92aWRlZC4KKwkgICAgaWYgeyAke3Bvc3QtaGVhZGVyLWxhYmVsfSAhPSAiIiB9IHsKKwkJ ZGVmaW5lX2xhYmVsICR7cG9zdC1oZWFkZXItbGFiZWx9CisJICAgIH0KKworCSAgICAjIEVtaXQg dGhlIG9mZnNldCBhcnJheS4KKwkgICAgZm9yIHtzZXQgbGlzdF9pZHggMH0geyRsaXN0X2lkeCA8 ICRfZGVidWdfcm5nbGlzdHNfbGlzdF9jb3VudH0ge2luY3IgbGlzdF9pZHh9IHsKKwkJc2V0IGxp c3RfbGFiZWwgW19jb21wdXRlX2xpc3RfbGFiZWwgJGxpc3RfaWR4XQorCQlfb3AgLiR7X2RlYnVn X3JuZ2xpc3RzX29mZnNldF9zaXplfWJ5dGUgIiRsaXN0X2xhYmVsIC0gJHBvc3RfaGVhZGVyX2xh YmVsIiAib2Zmc2V0IG9mIGxpc3QgJGxpc3RfaWR4IgorCSAgICB9CisKKwkgICAgIyBFbWl0IHRo ZSBhY3R1YWwgbGlzdCBkYXRhLgorCSAgICBfZW1pdCAiJGxpc3RzX29wcyIKKworCSAgICBkZWZp bmVfbGFiZWwgJHRhYmxlX2VuZF9sYWJlbAorCisJICAgIGluY3IgX2RlYnVnX3JuZ2xpc3RzX3Rh YmxlX2NvdW50CisJfQorCisJdXBsZXZlbCAkYm9keQorICAgIH0KIAogICAgICMgRW1pdCBhIERX QVJGIC5kZWJ1Z19saW5lIHVuaXQuCiAgICAgIyBPUFRJT05TIGlzIGEgbGlzdCB3aXRoIGFuIGV2 ZW4gbnVtYmVyIG9mIGVsZW1lbnRzIGNvbnRhaW5pbmcK --------------9008EBC73D10F1F56EADE2AA Content-Type: text/plain; charset=UTF-8; name="rnglists-sec-offset-dw32.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="rnglists-sec-offset-dw32.txt" SW5oYWx0IGRlciAuZGVidWdfaW5mby1TZWt0aW9uOgoKICBDb21waWxhdGlvbiBVbml0IEAgb2Zm c2V0IDB4MDoKICAgTMOkbmdlOiAweDE3ICgzMi1iaXQpCiAgIFZlcnNpb246ICAgICAgIDUKICAg QWJicmV2IE9mZnNldDogMHgwCiAgIFplaWdlcmdyw7bDn2U6ICAgOAogPDA+PGM+OiBaYWhsIGFi a8O8cnplbjogMiAoRFdfVEFHX2NvbXBpbGVfdW5pdCkKICAgIDxkPiAgIERXX0FUX3JhbmdlcyAg ICAgIDogMHgxNAogPDE+PDExPjogWmFobCBhYmvDvHJ6ZW46IDMgKERXX1RBR19zdWJwcm9ncmFt KQogICAgPDEyPiAgIERXX0FUX25hbWUgICAgICAgIDogZm9vCiAgICA8MTY+ICAgRFdfQVRfcmFu Z2VzICAgICAgOiAweDI2CiA8MT48MWE+OiBBYmJyZXYgTnVtYmVyOiAwCgpJbmhhbHQgZGVyIC5k ZWJ1Z19hYmJyZXYtU2VrdGlvbjoKCiAgTnVtYmVyIFRBRyAoMHgwKQogICAyICAgICAgRFdfVEFH X2NvbXBpbGVfdW5pdCAgICBbaGF0IEtpbmRlcl0KICAgIERXX0FUX3JhbmdlcyAgICAgICBEV19G T1JNX3NlY19vZmZzZXQKICAgIERXX0FUIHZhbHVlOiAwICAgICBEV19GT1JNIHZhbHVlOiAwCiAg IDMgICAgICBEV19UQUdfc3VicHJvZ3JhbSAgICBba2VpbmUgS2luZGVyXQogICAgRFdfQVRfbmFt ZSAgICAgICAgIERXX0ZPUk1fc3RyaW5nCiAgICBEV19BVF9yYW5nZXMgICAgICAgRFdfRk9STV9z ZWNfb2Zmc2V0CiAgICBEV19BVCB2YWx1ZTogMCAgICAgRFdfRk9STSB2YWx1ZTogMAoKUmF3IGR1 bXAgb2YgZGVidWcgY29udGVudHMgb2Ygc2VjdGlvbiAuZGVidWdfbGluZToKCiAgVmVyc2F0ejog ICAgICAgICAgICAgICAgICAgICAgMHgwCiAgTMOkbmdlOiAgICAgICAgICAgICAgICAgICAgICAg IDI1CiAgRFdBUkYgVmVyc2lvbjogICAgICAgICAgICAgICAgMwogIEzDpG5nZSBkZXMgUHJvbG9n czogICAgICAgICAgICAxOQogIE1pbmltYWxlIEluc3RydWt0aW9uc2zDpG5nZTogICAxCiAgSW5p dGlhbGVyIFdlcnQgdm9uIOKAmmlzX3N0bXTigJs6IDEKICBaZWlsZW5iYXNpczogICAgICAgICAg ICAgICAgICAtNQogIFplaWxlbnJlaWNod2VpdGU6ICAgICAgICAgICAgIDE0CiAgT3Bjb2RlLUJh c2lzOiAgICAgICAgICAgICAgICAgMTMKCiBPcGNvZGVzOgogIE9wY29kZSAxIGhhcyAwIGFyZ3MK ICBPcGNvZGUgMiBoYXMgMSBhcmcKICBPcGNvZGUgMyBoYXMgMSBhcmcKICBPcGNvZGUgNCBoYXMg MSBhcmcKICBPcGNvZGUgNSBoYXMgMSBhcmcKICBPcGNvZGUgNiBoYXMgMCBhcmdzCiAgT3Bjb2Rl IDcgaGFzIDAgYXJncwogIE9wY29kZSA4IGhhcyAwIGFyZ3MKICBPcGNvZGUgOSBoYXMgMSBhcmcK ICBPcGNvZGUgMTAgaGFzIDAgYXJncwogIE9wY29kZSAxMSBoYXMgMCBhcmdzCiAgT3Bjb2RlIDEy IGhhcyAxIGFyZwoKIERpZSBWZXJ6ZWljaG5pc3RhYmVsbGUgaXN0IGxlZXIuCgogRGllIERhdGVp bmFtZW50YWJlbGxlIGlzdCBsZWVyLgoKIE5vIExpbmUgTnVtYmVyIFN0YXRlbWVudHMuCnJlYWRl bGY6IFdhcm51bmc6IFRoZSAuZGVidWdfcm5nbGlzdHMgc2VjdGlvbiBjb250YWlucyB1bnN1cHBv cnRlZCBvZmZzZXQgZW50cnkgY291bnQ6IDIuCg== --------------9008EBC73D10F1F56EADE2AA Content-Type: text/plain; charset=UTF-8; name="rnglists-sec-offset-dw64.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="rnglists-sec-offset-dw64.txt" SW5oYWx0IGRlciAuZGVidWdfaW5mby1TZWt0aW9uOgoKICBDb21waWxhdGlvbiBVbml0IEAgb2Zm c2V0IDB4MDoKICAgTMOkbmdlOiAweDIzICg2NC1iaXQpCiAgIFZlcnNpb246ICAgICAgIDUKICAg QWJicmV2IE9mZnNldDogMHgwCiAgIFplaWdlcmdyw7bDn2U6ICAgOAogPDA+PDE4PjogWmFobCBh YmvDvHJ6ZW46IDIgKERXX1RBR19jb21waWxlX3VuaXQpCiAgICA8MTk+ICAgRFdfQVRfcmFuZ2Vz ICAgICAgOiAweDI0CiA8MT48MjE+OiBaYWhsIGFia8O8cnplbjogMyAoRFdfVEFHX3N1YnByb2dy YW0pCiAgICA8MjI+ICAgRFdfQVRfbmFtZSAgICAgICAgOiBmb28KICAgIDwyNj4gICBEV19BVF9y YW5nZXMgICAgICA6IDB4MzYKIDwxPjwyZT46IEFiYnJldiBOdW1iZXI6IDAKCkluaGFsdCBkZXIg LmRlYnVnX2FiYnJldi1TZWt0aW9uOgoKICBOdW1iZXIgVEFHICgweDApCiAgIDIgICAgICBEV19U QUdfY29tcGlsZV91bml0ICAgIFtoYXQgS2luZGVyXQogICAgRFdfQVRfcmFuZ2VzICAgICAgIERX X0ZPUk1fc2VjX29mZnNldAogICAgRFdfQVQgdmFsdWU6IDAgICAgIERXX0ZPUk0gdmFsdWU6IDAK ICAgMyAgICAgIERXX1RBR19zdWJwcm9ncmFtICAgIFtrZWluZSBLaW5kZXJdCiAgICBEV19BVF9u YW1lICAgICAgICAgRFdfRk9STV9zdHJpbmcKICAgIERXX0FUX3JhbmdlcyAgICAgICBEV19GT1JN X3NlY19vZmZzZXQKICAgIERXX0FUIHZhbHVlOiAwICAgICBEV19GT1JNIHZhbHVlOiAwCgpSYXcg ZHVtcCBvZiBkZWJ1ZyBjb250ZW50cyBvZiBzZWN0aW9uIC5kZWJ1Z19saW5lOgoKICBWZXJzYXR6 OiAgICAgICAgICAgICAgICAgICAgICAweDAKICBMw6RuZ2U6ICAgICAgICAgICAgICAgICAgICAg ICAgMjUKICBEV0FSRiBWZXJzaW9uOiAgICAgICAgICAgICAgICAzCiAgTMOkbmdlIGRlcyBQcm9s b2dzOiAgICAgICAgICAgIDE5CiAgTWluaW1hbGUgSW5zdHJ1a3Rpb25zbMOkbmdlOiAgIDEKICBJ bml0aWFsZXIgV2VydCB2b24g4oCaaXNfc3RtdOKAmzogMQogIFplaWxlbmJhc2lzOiAgICAgICAg ICAgICAgICAgIC01CiAgWmVpbGVucmVpY2h3ZWl0ZTogICAgICAgICAgICAgMTQKICBPcGNvZGUt QmFzaXM6ICAgICAgICAgICAgICAgICAxMwoKIE9wY29kZXM6CiAgT3Bjb2RlIDEgaGFzIDAgYXJn cwogIE9wY29kZSAyIGhhcyAxIGFyZwogIE9wY29kZSAzIGhhcyAxIGFyZwogIE9wY29kZSA0IGhh cyAxIGFyZwogIE9wY29kZSA1IGhhcyAxIGFyZwogIE9wY29kZSA2IGhhcyAwIGFyZ3MKICBPcGNv ZGUgNyBoYXMgMCBhcmdzCiAgT3Bjb2RlIDggaGFzIDAgYXJncwogIE9wY29kZSA5IGhhcyAxIGFy ZwogIE9wY29kZSAxMCBoYXMgMCBhcmdzCiAgT3Bjb2RlIDExIGhhcyAwIGFyZ3MKICBPcGNvZGUg MTIgaGFzIDEgYXJnCgogRGllIFZlcnplaWNobmlzdGFiZWxsZSBpc3QgbGVlci4KCiBEaWUgRGF0 ZWluYW1lbnRhYmVsbGUgaXN0IGxlZXIuCgogTm8gTGluZSBOdW1iZXIgU3RhdGVtZW50cy4KcmVh ZGVsZjogV2FybnVuZzogVGhlIC5kZWJ1Z19ybmdsaXN0cyBzZWN0aW9uIGNvbnRhaW5zIHVuc3Vw cG9ydGVkIG9mZnNldCBlbnRyeSBjb3VudDogMi4K --------------9008EBC73D10F1F56EADE2AA--