From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6375 invoked by alias); 27 Aug 2003 18:14:07 -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 6354 invoked from network); 27 Aug 2003 18:14:04 -0000 Received: from unknown (HELO touchme.toronto.redhat.com) (207.219.125.105) by sources.redhat.com with SMTP; 27 Aug 2003 18:14:04 -0000 Received: from redhat.com (toocool.toronto.redhat.com [172.16.14.72]) by touchme.toronto.redhat.com (Postfix) with ESMTP id A5385800355; Wed, 27 Aug 2003 14:14:03 -0400 (EDT) Message-ID: <3F4CF4EB.5090408@redhat.com> Date: Wed, 27 Aug 2003 18: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> <3F4A7C44.4080407@redhat.com> <3F4CF346.1010408@redhat.com> In-Reply-To: <3F4CF346.1010408@redhat.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2003-08/txt/msg00487.txt.bz2 Michael Snyder wrote: > J. Johnston wrote: > >> Ok, how about this alternate patch that blocks out reloading the >> .srec, .ihex, and .tekhex >> parts for 64-bit-only platforms. > > > Yeah, this is better. I think I would have just used "istarget" > instead of string-compare, but I won't insist on it. > > Approved. > Thanks. I used the string-compare so future targets in the same boat simply set the flag at the top. Otherwise, you get an istarget if/else festival all throughout the testcase. -- 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." >>>> } >>> >>> >>> >>> >>> >>> >> >> ------------------------------------------------------------------------ >> >> 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 >> > > > >