From 1ab80e5ba1b9a8a00493abfe5605ff6a2871f8e5 Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Mon, 30 Jul 2007 12:24:22 +0000 Subject: [PATCH] * gdb.base/dump.exp: Force the correct endianness for binary formats not carrying this information. --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.base/dump.exp | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 7273faa..8d4d846 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-07-30 Maciej W. Rozycki + + * gdb.base/dump.exp: Force the correct endianness for binary + formats not carrying this information. + 2007-07-27 Daniel Jacobowitz * gdb.threads/staticthreads.exp: Match .*sem_post. diff --git a/gdb/testsuite/gdb.base/dump.exp b/gdb/testsuite/gdb.base/dump.exp index 00ad65b..90a3632 100644 --- a/gdb/testsuite/gdb.base/dump.exp +++ b/gdb/testsuite/gdb.base/dump.exp @@ -34,6 +34,7 @@ set binfile ${objdir}/${subdir}/${testfile} set options {debug} set is64bitonly "no" +set endian "auto" if [istarget "alpha*-*-*"] then { # SREC etc cannot handle 64-bit addresses. Force the test @@ -70,6 +71,19 @@ if { ! [ runto checkpoint1 ] } then { return -1 } +# Get the endianness for the later use with endianless formats. + +send_gdb "show endian\n" +gdb_expect { + -re ".* (big|little) endian.*$gdb_prompt $" { + set endian $expect_out(1,string) + pass "endianness: $endian" + } + default { + fail "(timeout) getting target endianness" + } +} + # Now generate some dump files. proc make_dump_file { command msg } { @@ -190,6 +204,18 @@ gdb_exit gdb_start gdb_file_cmd ${binfile} +# Now fix the endianness at the correct state. + +send_gdb "set endian $endian\n" +gdb_expect { + -re ".* (big|little) endian.*$gdb_prompt $" { + pass "setting $endian endianness" + } + default { + fail "(timeout) setting $endian endianness" + } +} + # Reload saved values one by one, and compare. if { ![string compare $array_val \ -- 2.7.4