From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31432 invoked by alias); 25 Aug 2003 21:14:48 -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 31423 invoked from network); 25 Aug 2003 21:14:45 -0000 Received: from unknown (HELO touchme.toronto.redhat.com) (207.219.125.105) by sources.redhat.com with SMTP; 25 Aug 2003 21:14:45 -0000 Received: from redhat.com (toocool.toronto.redhat.com [172.16.14.72]) by touchme.toronto.redhat.com (Postfix) with ESMTP id B47D4800340; Mon, 25 Aug 2003 17:14:44 -0400 (EDT) Message-ID: <3F4A7C44.4080407@redhat.com> Date: Mon, 25 Aug 2003 21:14:00 -0000 From: "J. Johnston" Organization: Red Hat Inc. User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Michael Snyder Cc: gdb-patches@sources.redhat.com Subject: Re: RFA: patch to ignore dump.exp for ia64 References: <3F4673A0.3040507@redhat.com> <3F46823D.2070006@redhat.com> In-Reply-To: <3F46823D.2070006@redhat.com> Content-Type: multipart/mixed; boundary="------------020604050903000002000907" X-SW-Source: 2003-08/txt/msg00440.txt.bz2 This is a multi-part message in MIME format. --------------020604050903000002000907 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 1777 Ok, how about this alternate patch that blocks out reloading the .srec, .ihex, and .tekhex parts for 64-bit-only platforms. - Jeff J. 2003-08-22 Jeff Johnston * gdb.base/dump.exp: Don't reload .srec, .ihex, or .tekhex 32-bit formats when testing ia64. Michael Snyder wrote: > J. Johnston wrote: > >> The dump.exp testcase doesn't run on ia64 because a number of the >> output formats >> tested do not handle 64-bit addresses. The following patch causes the >> test >> to be ignored for ia64. I tried unsuccessfully to move the data below >> the >> 32-bit line as is done for the alpha. >> >> Ok to commit? If so, ok for gdb 6.0? > > > You couldn't just make it skip the bits that don't work for 64? > Surely some of it works, say the elf parts? > >> >> -- Jeff J. >> >> 2003-08-22 Jeff Johnston >> >> * gdb.base/dump.exp: Skip for ia64. >> >> >> ------------------------------------------------------------------------ >> >> Index: gdb.base/dump.exp >> =================================================================== >> RCS file: /cvs/src/src/gdb/testsuite/gdb.base/dump.exp,v >> retrieving revision 1.3 >> diff -u -r1.3 dump.exp >> --- gdb.base/dump.exp 2 Jun 2003 15:51:24 -0000 1.3 >> +++ gdb.base/dump.exp 22 Aug 2003 19:45:23 -0000 >> @@ -39,6 +39,11 @@ >> lappend options "additional_flags=-Wl,-taso" >> } >> >> +if [istarget "ia64*-*-*"] then { >> + # SREC etc cannot handle 64-bit addresses. Skip the test >> + return 0; >> +} >> + >> if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" >> executable ${options}] != "" } { >> gdb_suppress_entire_file "Testcase compile failed, so all tests >> in this file will automatically fail." >> } > > > > --------------020604050903000002000907 Content-Type: text/plain; name="dump.exp.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="dump.exp.patch" Content-length: 10145 Index: dump.exp =================================================================== RCS file: /cvs/src/src/gdb/testsuite/gdb.base/dump.exp,v retrieving revision 1.3 diff -u -r1.3 dump.exp --- dump.exp 2 Jun 2003 15:51:24 -0000 1.3 +++ dump.exp 25 Aug 2003 21:11:37 -0000 @@ -33,12 +33,18 @@ set binfile ${objdir}/${subdir}/${testfile} set options {debug} +set is64bitonly "no" + if [istarget "alpha*-*-*"] then { # SREC etc cannot handle 64-bit addresses. Force the test # program into the low 31 bits of the address space. lappend options "additional_flags=-Wl,-taso" } +if [istarget "ia64*-*-*"] then { + set is64bitonly "yes" +} + if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable ${options}] != "" } { gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail." } @@ -213,32 +219,42 @@ } } -test_reload_saved_value "intarr1.srec" "reload array as value, srec" \ +# srec format can not be loaded for 64-bit-only platforms +if ![string compare is64bitonly "no"] then { + test_reload_saved_value "intarr1.srec" "reload array as value, srec" \ $array_val "intarray" -test_reload_saved_value "intstr1.srec" "reload struct as value, srec" \ + test_reload_saved_value "intstr1.srec" "reload struct as value, srec" \ $struct_val "intstruct" -test_reload_saved_value "intarr2.srec" "reload array as memory, srec" \ + test_reload_saved_value "intarr2.srec" "reload array as memory, srec" \ $array_val "intarray" -test_reload_saved_value "intstr2.srec" "reload struct as memory, srec" \ + test_reload_saved_value "intstr2.srec" "reload struct as memory, srec" \ $struct_val "intstruct" +} + +# ihex format can not be loaded for 64-bit-only platforms +if ![string compare is64bitonly "no"] then { -test_reload_saved_value "intarr1.ihex" "reload array as value, intel hex" \ + test_reload_saved_value "intarr1.ihex" "reload array as value, intel hex" \ $array_val "intarray" -test_reload_saved_value "intstr1.ihex" "reload struct as value, intel hex" \ + test_reload_saved_value "intstr1.ihex" "reload struct as value, intel hex" \ $struct_val "intstruct" -test_reload_saved_value "intarr2.ihex" "reload array as memory, intel hex" \ + test_reload_saved_value "intarr2.ihex" "reload array as memory, intel hex" \ $array_val "intarray" -test_reload_saved_value "intstr2.ihex" "reload struct as memory, intel hex" \ + test_reload_saved_value "intstr2.ihex" "reload struct as memory, intel hex" \ $struct_val "intstruct" +} -test_reload_saved_value "intarr1.tekhex" "reload array as value, tekhex" \ +# tekhex format can not be loaded for 64-bit-only platforms +if ![string compare is64bitonly "no"] then { + test_reload_saved_value "intarr1.tekhex" "reload array as value, tekhex" \ $array_val "intarray" -test_reload_saved_value "intstr1.tekhex" "reload struct as value, tekhex" \ + test_reload_saved_value "intstr1.tekhex" "reload struct as value, tekhex" \ $struct_val "intstruct" -test_reload_saved_value "intarr2.tekhex" "reload array as memory, tekhex" \ + test_reload_saved_value "intarr2.tekhex" "reload array as memory, tekhex" \ $array_val "intarray" -test_reload_saved_value "intstr2.tekhex" "reload struct as memory, tekhex" \ + test_reload_saved_value "intstr2.tekhex" "reload struct as memory, tekhex" \ $struct_val "intstruct" +} # Start a fresh gdb session @@ -264,51 +280,53 @@ pass "start with intstruct un-initialized, runto main" } -test_restore_saved_value "intarr1.srec" "array as value, srec" \ +if ![string compare is64bitonly "no"] then { + test_restore_saved_value "intarr1.srec" "array as value, srec" \ $array_val "intarray" -test_restore_saved_value "intstr1.srec" "struct as value, srec" \ + test_restore_saved_value "intstr1.srec" "struct as value, srec" \ $struct_val "intstruct" -gdb_test "print zero_all ()" "void" "zero all" + gdb_test "print zero_all ()" "void" "zero all" -test_restore_saved_value "intarr2.srec" "array as memory, srec" \ + test_restore_saved_value "intarr2.srec" "array as memory, srec" \ $array_val "intarray" -test_restore_saved_value "intstr2.srec" "struct as memory, srec" \ + test_restore_saved_value "intstr2.srec" "struct as memory, srec" \ $struct_val "intstruct" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.ihex" "array as value, ihex" \ + test_restore_saved_value "intarr1.ihex" "array as value, ihex" \ $array_val "intarray" -test_restore_saved_value "intstr1.ihex" "struct as value, ihex" \ + test_restore_saved_value "intstr1.ihex" "struct as value, ihex" \ $struct_val "intstruct" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr2.ihex" "array as memory, ihex" \ + test_restore_saved_value "intarr2.ihex" "array as memory, ihex" \ $array_val "intarray" -test_restore_saved_value "intstr2.ihex" "struct as memory, ihex" \ + test_restore_saved_value "intstr2.ihex" "struct as memory, ihex" \ $struct_val "intstruct" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.tekhex" "array as value, tekhex" \ + test_restore_saved_value "intarr1.tekhex" "array as value, tekhex" \ $array_val "intarray" -test_restore_saved_value "intstr1.tekhex" "struct as value, tekhex" \ + test_restore_saved_value "intstr1.tekhex" "struct as value, tekhex" \ $struct_val "intstruct" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr2.tekhex" "array as memory, tekhex" \ + test_restore_saved_value "intarr2.tekhex" "array as memory, tekhex" \ $array_val "intarray" -test_restore_saved_value "intstr2.tekhex" "struct as memory, tekhex" \ + test_restore_saved_value "intstr2.tekhex" "struct as memory, tekhex" \ $struct_val "intstruct" +} gdb_test "print zero_all ()" "" @@ -341,33 +359,36 @@ gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.srec $array2_offset" \ + +if ![string compare is64bitonly "no"] then { + test_restore_saved_value "intarr1.srec $array2_offset" \ "array copy, srec" \ $array_val "intarray2" -test_restore_saved_value "intstr1.srec $struct2_offset" \ + test_restore_saved_value "intstr1.srec $struct2_offset" \ "struct copy, srec" \ $struct_val "intstruct2" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.ihex $array2_offset" \ + test_restore_saved_value "intarr1.ihex $array2_offset" \ "array copy, ihex" \ $array_val "intarray2" -test_restore_saved_value "intstr1.ihex $struct2_offset" \ + test_restore_saved_value "intstr1.ihex $struct2_offset" \ "struct copy, ihex" \ $struct_val "intstruct2" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.tekhex $array2_offset" \ + test_restore_saved_value "intarr1.tekhex $array2_offset" \ "array copy, tekhex" \ $array_val "intarray2" -test_restore_saved_value "intstr1.tekhex $struct2_offset" \ + test_restore_saved_value "intstr1.tekhex $struct2_offset" \ "struct copy, tekhex" \ $struct_val "intstruct2" +} gdb_test "print zero_all ()" "" @@ -395,32 +416,34 @@ set element4_offset \ [capture_value "/x (char *) &intarray\[4\] - (char *) &intarray\[0\]"] -gdb_test "print zero_all ()" "" +if ![string compare is64bitonly "no"] then { + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.srec 0 $element3_start $element4_start" \ + test_restore_saved_value "intarr1.srec 0 $element3_start $element4_start" \ "array partial, srec" \ [capture_value "4"] "intarray\[3\]" -gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 1" -gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 1" + gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 1" + gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 1" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.ihex 0 $element3_start $element4_start" \ + test_restore_saved_value "intarr1.ihex 0 $element3_start $element4_start" \ "array partial, ihex" \ [capture_value "4"] "intarray\[3\]" -gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 2" -gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 2" + gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 2" + gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 2" -gdb_test "print zero_all ()" "" + gdb_test "print zero_all ()" "" -test_restore_saved_value "intarr1.tekhex 0 $element3_start $element4_start" \ + test_restore_saved_value "intarr1.tekhex 0 $element3_start $element4_start" \ "array partial, tekhex" \ [capture_value "4"] "intarray\[3\]" -gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 3" -gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 3" + gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 3" + gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 3" +} gdb_test "print zero_all ()" "" @@ -432,17 +455,18 @@ gdb_test "print intarray\[2\] == 0" " = 1" "element 2 not changed - 4" gdb_test "print intarray\[4\] == 0" " = 1" "element 4 not changed - 4" -gdb_test "print zero_all ()" "" "" +if ![string compare is64bitonly "no"] then { + gdb_test "print zero_all ()" "" "" -# restore with expressions -test_restore_saved_value \ + # restore with expressions + test_restore_saved_value \ "intarr3.srec ${array2_start}-${array_start} &intarray\[3\] &intarray\[4\]" \ "array partial with expressions" \ [capture_value "4"] "intarray2\[3\]" -gdb_test "print intarray2\[2\] == 0" " = 1" "element 2 not changed, == 4" -gdb_test "print intarray2\[4\] == 0" " = 1" "element 4 not changed, == 4" - + gdb_test "print intarray2\[2\] == 0" " = 1" "element 2 not changed, == 4" + gdb_test "print intarray2\[4\] == 0" " = 1" "element 4 not changed, == 4" +} # clean up files --------------020604050903000002000907--