From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5087 invoked by alias); 17 May 2005 10:21:02 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 4231 invoked from network); 17 May 2005 10:20:31 -0000 Received: from unknown (HELO e2.ny.us.ibm.com) (32.97.182.142) by sourceware.org with SMTP; 17 May 2005 10:20:31 -0000 Received: from d01relay02.pok.ibm.com (d01relay02.pok.ibm.com [9.56.227.234]) by e2.ny.us.ibm.com (8.12.11/8.12.11) with ESMTP id j4HAKUUJ016689 for ; Tue, 17 May 2005 06:20:30 -0400 Received: from d01av04.pok.ibm.com (d01av04.pok.ibm.com [9.56.224.64]) by d01relay02.pok.ibm.com (8.12.10/NCO/VER6.6) with ESMTP id j4HAKUV8131126 for ; Tue, 17 May 2005 06:20:30 -0400 Received: from d01av04.pok.ibm.com (loopback [127.0.0.1]) by d01av04.pok.ibm.com (8.12.11/8.13.3) with ESMTP id j4HAKUFR025552 for ; Tue, 17 May 2005 06:20:30 -0400 Received: from imap.linux.ibm.com (imap.rtp.raleigh.ibm.com [9.42.107.100]) by d01av04.pok.ibm.com (8.12.11/8.12.11) with ESMTP id j4HAK2Vh025001; Tue, 17 May 2005 06:20:30 -0400 Received: by imap.linux.ibm.com (Postfix, from userid 48) id 5DB6C7C009; Tue, 17 May 2005 06:20:02 -0400 (EDT) Received: from ibmcsdl-9m89c83.cn.ibm.com (ibmcsdl-9m89c83.cn.ibm.com [9.181.134.123]) by imap.rtp.raleigh.ibm.com (IMP) with HTTP for ; Tue, 17 May 2005 06:20:02 -0400 Message-ID: <1116325202.4289c5520d703@imap.linux.ibm.com> Date: Tue, 17 May 2005 13:32:00 -0000 From: Wu Zhou To: Daniel Jacobowitz Cc: pgilliam@us.ibm.com, gdb-patches@sources.redhat.com Subject: Re: [patch] update gdb.base/shreloc.exp to use new shared library infrastructure MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="-MOQ1116325201c15649336883c555790d1ea2a7b80115" User-Agent: Internet Messaging Program (IMP) 3.2.7 X-SW-Source: 2005-05/txt/msg00416.txt.bz2 This message is in MIME format. ---MOQ1116325201c15649336883c555790d1ea2a7b80115 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-length: 6655 Quoting Daniel Jacobowitz : > > Here goes the revised patch. Wishing that it will not get mangled any > > more. Please review and comments. > > > > 2005-05-01 Paul Gilliam > > Wu Zhou > > > > * gdb.base/shreloc.exp: Use gdb_compile_shlib. Add support for > > IBM's xlc compiler. > > * gdb.base/shreloc1.c: Refer variable static_var_1 in fn_1. > > * gdb.base/shreloc2.c: Refer variable static_var_2 in fn_2. > > Sorry about the delay. This patch is OK, but please change two things > for me before you commit it: the correct term here is "reference" > rather than "refer", and the ChangeLog entry should show where the > changes take place. Like so: > > * gdb.base/shreloc.exp: Use gdb_compile_shlib. Add support for > IBM's xlc compiler. > * gdb.base/shreloc1.c (fn_1): Reference variable static_var_1. > * gdb.base/shreloc2.c (fn_2): Reference variable static_var_2. > > So with that changelog, and "refered" changed to "referenced" in the > patch, it is OK to commit. > Hi Daniel, Thanks for pointing out these errors for me. Followed is the re-worked patch. 2005-05-17 Paul Gilliam Wu Zhou * gdb.base/shreloc.exp: Use gdb_compile_shlib. Add support for IBM's xlc compiler. * gdb.base/shreloc1.c (fn_1): Reference variable static_var_1. * gdb.base/shreloc2.c (fn_2): Reference variable static_var_2. Index: gdb.base/shreloc.exp =================================================================== RCS file: /cvs/src/src/gdb/testsuite/gdb.base/shreloc.exp,v retrieving revision 1.2 diff -c -p -r1.2 shreloc.exp *** gdb.base/shreloc.exp 11 Nov 2003 17:58:28 -0000 1.2 --- gdb.base/shreloc.exp 17 May 2005 10:01:35 -0000 *************** *** 1,4 **** ! # Copyright (C) 2003 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by --- 1,4 ---- ! # Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by *************** *** 15,23 **** # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # - # Please email any bugs, comments, and/or additions to this file to: - # bug-gdb@prep.ai.mit.edu - # Tests for shared object file relocation. If two shared objects have # the same load address (actually, overlapping load spaces), one of # them gets relocated at load-time. Check that gdb gets the right --- 15,20 ---- *************** set prms_id 0 *** 40,71 **** set bug_id 0 set workdir ${objdir}/${subdir} ! foreach module [list "shreloc" "shreloc1" "shreloc2"] { ! if {[gdb_compile "${srcdir}/${subdir}/${module}.c" "${workdir}/${module}.o" object {debug}] != ""} { ! untested "Couldn't compile ${module}.c" ! return -1 ! } } ! set additional_flags "additional_flags=-shared" if {([istarget "*pc-cygwin"] || [istarget "*pc-mingw32"]) } { ! set additional_flags "${additional_flags} -Wl,--image-base,0x04000000" } ! foreach module [list "shreloc1" "shreloc2"] { ! if {[gdb_compile "${workdir}/${module}.o" "${workdir}/${module}.dll" executable [list debug $additional_flags]] != ""} { ! untested "Couldn't link ${module}.dll" ! return -1 ! } } ! if {[gdb_compile [list "${workdir}/shreloc.o" "${workdir}/shreloc1.dll" "${workdir}/shreloc2.dll"] "${workdir}/shreloc" executable debug] != ""} { ! untested "Couldn't link shreloc executable" return -1 } gdb_exit gdb_start gdb_reinitialize_dir $srcdir/$subdir --- 37,86 ---- set bug_id 0 set workdir ${objdir}/${subdir} + set testfile "shreloc" + set libfile1 "shreloc1" + set libfile2 "shreloc2" + set srcfile $srcdir/$subdir/$testfile.c + set lib1src $srcdir/$subdir/$libfile1.c + set lib2src $srcdir/$subdir/$libfile2.c + set binfile $objdir/$subdir/$testfile + set lib1_sl $objdir/$subdir/$libfile1.sl + set lib2_sl $objdir/$subdir/$libfile2.sl ! if [get_compiler_info ${binfile}] { ! return -1 } ! set lib_opts "debug" ! set exec_opts [list debug shlib=$lib1_sl shlib=$lib2_sl] if {([istarget "*pc-cygwin"] || [istarget "*pc-mingw32"]) } { ! lappend lib_opts "additional_flags=-Wl,--image-base,0x04000000" } ! if [test_compiler_info "xlc-*"] { ! ! # IBM's xlc compiler does not add static variables to the ELF symbol ! # table by default. We need this option to make the variables show ! # up in "maint print msymbols". ! ! lappend lib_opts "additional_flags=-qstatsym" ! } ! if { [gdb_compile_shlib $lib1src $lib1_sl $lib_opts] != ""} { ! untested "Could not build $lib1_sl." ! return -1 ! } elseif { [gdb_compile_shlib $lib2src $lib2_sl $lib_opts] != ""} { ! untested "Could not build $lib1_s2." ! return -1 ! } elseif { [gdb_compile $srcfile $binfile executable $exec_opts] != ""} { ! untested "Could not build $binfile." return -1 } + # Start with a fresh gdb. + gdb_exit gdb_start gdb_reinitialize_dir $srcdir/$subdir Index: gdb.base/shreloc1.c =================================================================== RCS file: /cvs/src/src/gdb/testsuite/gdb.base/shreloc1.c,v retrieving revision 1.1 diff -c -p -r1.1 shreloc1.c *** gdb.base/shreloc1.c 9 Jun 2003 21:23:53 -0000 1.1 --- gdb.base/shreloc1.c 17 May 2005 10:01:35 -0000 *************** *** 6,10 **** static int static_var_1; ! ATTRIBUTES void fn_1 (int unused) { } ATTRIBUTES int extern_var_1 = 0; --- 6,10 ---- static int static_var_1; ! ATTRIBUTES void fn_1 (int referenced) { static_var_1 = referenced; } ATTRIBUTES int extern_var_1 = 0; Index: gdb.base/shreloc2.c =================================================================== RCS file: /cvs/src/src/gdb/testsuite/gdb.base/shreloc2.c,v retrieving revision 1.1 diff -c -p -r1.1 shreloc2.c *** gdb.base/shreloc2.c 9 Jun 2003 21:23:53 -0000 1.1 --- gdb.base/shreloc2.c 17 May 2005 10:01:35 -0000 *************** *** 6,10 **** static int static_var_2; ! ATTRIBUTES void fn_2 (int unused) { } ATTRIBUTES int extern_var_2 = 0; --- 6,10 ---- static int static_var_2; ! ATTRIBUTES void fn_2 (int referenced) { static_var_2 = referenced; } ATTRIBUTES int extern_var_2 = 0; ===========================End of the patch========================= Cheers - Wu Zhou ---MOQ1116325201c15649336883c555790d1ea2a7b80115 Content-Type: application/octet-stream; name="shreloc_v3.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="shreloc_v3.patch" Content-length: 6784 SW5kZXg6IGdkYi5iYXNlL3NocmVsb2MuZXhwCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvdGVzdHN1aXRlL2dk Yi5iYXNlL3NocmVsb2MuZXhwLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIK ZGlmZiAtYyAtcCAtcjEuMiBzaHJlbG9jLmV4cAoqKiogZ2RiLmJhc2Uvc2hy ZWxvYy5leHAgICAgICAgIDExIE5vdiAyMDAzIDE3OjU4OjI4IC0wMDAwICAg ICAgMS4yCi0tLSBnZGIuYmFzZS9zaHJlbG9jLmV4cCAgICAgICAgMTcgTWF5 IDIwMDUgMTA6MDE6MzUgLTAwMDAKKioqKioqKioqKioqKioqCioqKiAxLDQg KioqKgohICMgQ29weXJpZ2h0IChDKSAyMDAzIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgSW5jLgogICMKICAjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNv ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5 CiAgIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotLS0gMSw0IC0tLS0KISAj IENvcHlyaWdodCAoQykgMjAwMywgMjAwNSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIEluYy4KICAjCiAgIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0 d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog ICMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKioqKioqKioqKioqKioqCioq KiAxNSwyMyAqKioqCiAgIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUg UGxhY2UgLSBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNywgVVNB LgogICMKICAKLSAjIFBsZWFzZSBlbWFpbCBhbnkgYnVncywgY29tbWVudHMs IGFuZC9vciBhZGRpdGlvbnMgdG8gdGhpcyBmaWxlIHRvOgotICMgYnVnLWdk YkBwcmVwLmFpLm1pdC5lZHUKLSAKICAjIFRlc3RzIGZvciBzaGFyZWQgb2Jq ZWN0IGZpbGUgcmVsb2NhdGlvbi4gSWYgdHdvIHNoYXJlZCBvYmplY3RzIGhh dmUKICAjIHRoZSBzYW1lIGxvYWQgYWRkcmVzcyAoYWN0dWFsbHksIG92ZXJs YXBwaW5nIGxvYWQgc3BhY2VzKSwgb25lIG9mCiAgIyB0aGVtIGdldHMgcmVs b2NhdGVkIGF0IGxvYWQtdGltZS4gQ2hlY2sgdGhhdCBnZGIgZ2V0cyB0aGUg cmlnaHQKLS0tIDE1LDIwIC0tLS0KKioqKioqKioqKioqKioqIHNldCBwcm1z X2lkIDAKKioqIDQwLDcxICoqKioKICBzZXQgYnVnX2lkIDAKICAKICBzZXQg d29ya2RpciAke29iamRpcn0vJHtzdWJkaXJ9CiAgCiEgZm9yZWFjaCBtb2R1 bGUgW2xpc3QgInNocmVsb2MiICJzaHJlbG9jMSIgInNocmVsb2MyIl0gewoh ICAgICBpZiB7W2dkYl9jb21waWxlICIke3NyY2Rpcn0vJHtzdWJkaXJ9LyR7 bW9kdWxlfS5jIiAiJHt3b3JrZGlyfS8ke21vZHVsZX0ubyIgb2JqZWN0IHtk ZWJ1Z31dICE9ICIifSB7CiEgICAgICAgdW50ZXN0ZWQgIkNvdWxkbid0IGNv bXBpbGUgJHttb2R1bGV9LmMiCiEgICAgICAgcmV0dXJuIC0xCiEgICAgIH0K ICB9CiAgCiEgc2V0IGFkZGl0aW9uYWxfZmxhZ3MgImFkZGl0aW9uYWxfZmxh Z3M9LXNoYXJlZCIKICAKICBpZiB7KFtpc3RhcmdldCAiKnBjLWN5Z3dpbiJd IHx8IFtpc3RhcmdldCAiKnBjLW1pbmd3MzIiXSkgfSB7CiEgICAgIHNldCBh ZGRpdGlvbmFsX2ZsYWdzICIke2FkZGl0aW9uYWxfZmxhZ3N9IC1XbCwtLWlt YWdlLWJhc2UsMHgwNDAwMDAwMCIKICB9CiAgCiEgZm9yZWFjaCBtb2R1bGUg W2xpc3QgInNocmVsb2MxIiAic2hyZWxvYzIiXSB7CiEgICAgIGlmIHtbZ2Ri X2NvbXBpbGUgIiR7d29ya2Rpcn0vJHttb2R1bGV9Lm8iICIke3dvcmtkaXJ9 LyR7bW9kdWxlfS5kbGwiIGV4ZWN1dGFibGUgW2xpc3QgZGVidWcgJGFkZGl0 aW9uYWxfZmxhZ3NdXSAhPSAiIn0gewohICAgICAgIHVudGVzdGVkICJDb3Vs ZG4ndCBsaW5rICR7bW9kdWxlfS5kbGwiCiEgICAgICAgcmV0dXJuIC0xCiEg ICAgIH0KICB9CiAgCiEgaWYge1tnZGJfY29tcGlsZSBbbGlzdCAiJHt3b3Jr ZGlyfS9zaHJlbG9jLm8iICIke3dvcmtkaXJ9L3NocmVsb2MxLmRsbCIgIiR7 d29ya2Rpcn0vc2hyZWxvYzIuZGxsIl0gIiR7d29ya2Rpcn0vc2hyZWxvYyIg ZXhlY3V0YWJsZSBkZWJ1Z10gIT0gIiJ9IHsKISAgICAgdW50ZXN0ZWQgIkNv dWxkbid0IGxpbmsgc2hyZWxvYyBleGVjdXRhYmxlIgogICAgICByZXR1cm4g LTEKICB9CiAgCiAgZ2RiX2V4aXQKICBnZGJfc3RhcnQKICBnZGJfcmVpbml0 aWFsaXplX2RpciAkc3JjZGlyLyRzdWJkaXIKLS0tIDM3LDg2IC0tLS0KICBz ZXQgYnVnX2lkIDAKICAKICBzZXQgd29ya2RpciAke29iamRpcn0vJHtzdWJk aXJ9Cisgc2V0IHRlc3RmaWxlICJzaHJlbG9jIgorIHNldCBsaWJmaWxlMSAi c2hyZWxvYzEiCisgc2V0IGxpYmZpbGUyICJzaHJlbG9jMiIKKyBzZXQgc3Jj ZmlsZSAkc3JjZGlyLyRzdWJkaXIvJHRlc3RmaWxlLmMKKyBzZXQgbGliMXNy YyAkc3JjZGlyLyRzdWJkaXIvJGxpYmZpbGUxLmMKKyBzZXQgbGliMnNyYyAk c3JjZGlyLyRzdWJkaXIvJGxpYmZpbGUyLmMKKyBzZXQgYmluZmlsZSAkb2Jq ZGlyLyRzdWJkaXIvJHRlc3RmaWxlCisgc2V0IGxpYjFfc2wgJG9iamRpci8k c3ViZGlyLyRsaWJmaWxlMS5zbAorIHNldCBsaWIyX3NsICRvYmpkaXIvJHN1 YmRpci8kbGliZmlsZTIuc2wKICAKISBpZiBbZ2V0X2NvbXBpbGVyX2luZm8g JHtiaW5maWxlfV0gewohICAgICByZXR1cm4gLTEKICB9CiAgCiEgc2V0IGxp Yl9vcHRzICJkZWJ1ZyIKISBzZXQgZXhlY19vcHRzIFtsaXN0IGRlYnVnIHNo bGliPSRsaWIxX3NsIHNobGliPSRsaWIyX3NsXQogIAogIGlmIHsoW2lzdGFy Z2V0ICIqcGMtY3lnd2luIl0gfHwgW2lzdGFyZ2V0ICIqcGMtbWluZ3czMiJd KSB9IHsKISAgICAgbGFwcGVuZCBsaWJfb3B0cyAiYWRkaXRpb25hbF9mbGFn cz0tV2wsLS1pbWFnZS1iYXNlLDB4MDQwMDAwMDAiCiAgfQogIAohIGlmIFt0 ZXN0X2NvbXBpbGVyX2luZm8gInhsYy0qIl0gewohIAohICAgICAjIElCTSdz IHhsYyBjb21waWxlciBkb2VzIG5vdCBhZGQgc3RhdGljIHZhcmlhYmxlcyB0 byB0aGUgRUxGIHN5bWJvbCAKISAgICAgIyB0YWJsZSBieSBkZWZhdWx0LiAg V2UgbmVlZCB0aGlzIG9wdGlvbiB0byBtYWtlIHRoZSB2YXJpYWJsZXMgc2hv dyAKISAgICAgIyB1cCBpbiAibWFpbnQgcHJpbnQgbXN5bWJvbHMiLiAKISAK ISAgICAgbGFwcGVuZCBsaWJfb3B0cyAiYWRkaXRpb25hbF9mbGFncz0tcXN0 YXRzeW0iCiEgCiAgfQogIAohIGlmIHsgW2dkYl9jb21waWxlX3NobGliICRs aWIxc3JjICRsaWIxX3NsICRsaWJfb3B0c10gIT0gIiJ9IHsKISAgICAgdW50 ZXN0ZWQgIkNvdWxkIG5vdCBidWlsZCAkbGliMV9zbC4iCiEgICAgIHJldHVy biAtMQohIH0gZWxzZWlmIHsgW2dkYl9jb21waWxlX3NobGliICRsaWIyc3Jj ICRsaWIyX3NsICRsaWJfb3B0c10gIT0gIiJ9IHsKISAgICAgdW50ZXN0ZWQg IkNvdWxkIG5vdCBidWlsZCAkbGliMV9zMi4iCiEgICAgIHJldHVybiAtMQoh IH0gZWxzZWlmIHsgW2dkYl9jb21waWxlICRzcmNmaWxlICRiaW5maWxlIGV4 ZWN1dGFibGUgJGV4ZWNfb3B0c10gIT0gIiJ9IHsKISAgICAgdW50ZXN0ZWQg IkNvdWxkIG5vdCBidWlsZCAkYmluZmlsZS4iCiAgICAgIHJldHVybiAtMQog IH0KICAKKyAjIFN0YXJ0IHdpdGggYSBmcmVzaCBnZGIuCisgCiAgZ2RiX2V4 aXQKICBnZGJfc3RhcnQKICBnZGJfcmVpbml0aWFsaXplX2RpciAkc3JjZGly LyRzdWJkaXIKSW5kZXg6IGdkYi5iYXNlL3NocmVsb2MxLmMKPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi90ZXN0 c3VpdGUvZ2RiLmJhc2Uvc2hyZWxvYzEuYyx2CnJldHJpZXZpbmcgcmV2aXNp b24gMS4xCmRpZmYgLWMgLXAgLXIxLjEgc2hyZWxvYzEuYwoqKiogZ2RiLmJh c2Uvc2hyZWxvYzEuYyA5IEp1biAyMDAzIDIxOjIzOjUzIC0wMDAwICAgICAg IDEuMQotLS0gZ2RiLmJhc2Uvc2hyZWxvYzEuYyAxNyBNYXkgMjAwNSAxMDow MTozNSAtMDAwMAoqKioqKioqKioqKioqKioKKioqIDYsMTAgKioqKgogIAog IHN0YXRpYyBpbnQgc3RhdGljX3Zhcl8xOwogIAohIEFUVFJJQlVURVMgdm9p ZCBmbl8xIChpbnQgdW51c2VkKSB7IH0KICBBVFRSSUJVVEVTIGludCBleHRl cm5fdmFyXzEgPSAwOwotLS0gNiwxMCAtLS0tCiAgCiAgc3RhdGljIGludCBz dGF0aWNfdmFyXzE7CiAgCiEgQVRUUklCVVRFUyB2b2lkIGZuXzEgKGludCBy ZWZlcmVuY2VkKSB7IHN0YXRpY192YXJfMSA9IHJlZmVyZW5jZWQ7IH0KICBB VFRSSUJVVEVTIGludCBleHRlcm5fdmFyXzEgPSAwOwpJbmRleDogZ2RiLmJh c2Uvc2hyZWxvYzIuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxl OiAvY3ZzL3NyYy9zcmMvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9zaHJlbG9j Mi5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtYyAtcCAtcjEu MSBzaHJlbG9jMi5jCioqKiBnZGIuYmFzZS9zaHJlbG9jMi5jIDkgSnVuIDIw MDMgMjE6MjM6NTMgLTAwMDAgICAgICAgMS4xCi0tLSBnZGIuYmFzZS9zaHJl bG9jMi5jIDE3IE1heSAyMDA1IDEwOjAxOjM1IC0wMDAwCioqKioqKioqKioq KioqKgoqKiogNiwxMCAqKioqCiAgCiAgc3RhdGljIGludCBzdGF0aWNfdmFy XzI7CiAgCiEgQVRUUklCVVRFUyB2b2lkIGZuXzIgKGludCB1bnVzZWQpIHsg fQogIEFUVFJJQlVURVMgaW50IGV4dGVybl92YXJfMiA9IDA7Ci0tLSA2LDEw IC0tLS0KICAKICBzdGF0aWMgaW50IHN0YXRpY192YXJfMjsKICAKISBBVFRS SUJVVEVTIHZvaWQgZm5fMiAoaW50IHJlZmVyZW5jZWQpIHsgc3RhdGljX3Zh cl8yID0gcmVmZXJlbmNlZDsgfQogIEFUVFJJQlVURVMgaW50IGV4dGVybl92 YXJfMiA9IDA7 ---MOQ1116325201c15649336883c555790d1ea2a7b80115--