From: Michael Snyder <msnyder@redhat.com>
To: "J. Johnston" <jjohnstn@redhat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: RFA: patch to ignore dump.exp for ia64
Date: Wed, 27 Aug 2003 18:07:00 -0000 [thread overview]
Message-ID: <3F4CF346.1010408@redhat.com> (raw)
In-Reply-To: <3F4A7C44.4080407@redhat.com>
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.
> 2003-08-22 Jeff Johnston <jjohnstn@redhat.com>
>
> * 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 <jjohnstn@redhat.com>
>>>
>>> * 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
>
next prev parent reply other threads:[~2003-08-27 18:07 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-08-22 19:48 J. Johnston
2003-08-22 20:51 ` Michael Snyder
2003-08-25 21:14 ` J. Johnston
2003-08-27 18:07 ` Michael Snyder [this message]
2003-08-27 18:14 ` J. Johnston
2003-08-28 18:09 ` J. Johnston
2003-09-01 21:01 ` Andreas Schwab
2003-09-02 18:35 ` J. Johnston
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3F4CF346.1010408@redhat.com \
--to=msnyder@redhat.com \
--cc=gdb-patches@sources.redhat.com \
--cc=jjohnstn@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox