gdb/testsuite/
authorNathan Froyd <froydnj@codesourcery.com>
Fri, 12 Nov 2010 21:44:49 +0000 (21:44 +0000)
committerNathan Froyd <froydnj@codesourcery.com>
Fri, 12 Nov 2010 21:44:49 +0000 (21:44 +0000)
* gdb.python/py-inferior.exp: Pack values in target endianness.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-inferior.exp

index 3c62b9d005632f1966adb886d6ab9b654e529f55..0694d9c4819d8615525a6dd0bcb998c0b6f38813 100644 (file)
@@ -1,3 +1,7 @@
+2010-11-12  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * gdb.python/py-inferior.exp: Pack values in target endianness.
+
 2010-11-12  Tom Tromey  <tromey@redhat.com>
 
        * gdb.python/py-prettyprint.c (main): Add new 'ns2' local.
index 45f43a1466bf6ccceb2e63a57c128f129a83cc91..7998b926b619bc71e30cc3edbb6d43bf94477e10 100644 (file)
@@ -34,6 +34,17 @@ clean_restart ${testfile}
 # Skip all tests if Python scripting is not enabled.
 if { [skip_python_tests] } { continue }
 
+gdb_test_multiple "show endian" "getting target endian" {
+    -re ".*little endian.*$gdb_prompt $" {
+        set python_pack_char "<"
+       # pass silently
+    }
+    -re ".*big endian.*$gdb_prompt $" {
+        set python_pack_char ">"
+       # pass silently
+    }
+}
+
 # The following tests require execution.
 
 if ![runto_main] then {
@@ -106,7 +117,7 @@ gdb_test "set int16_search_buf\[10\] = 0x1234" "" ""
 gdb_test "py search_buf = gdb.selected_frame ().read_var ('int16_search_buf')" "" ""
 gdb_test "py start_addr = search_buf.address" "" ""
 gdb_test "py length = search_buf.type.sizeof" "" ""
-gdb_test "py pattern = pack('H',0x1234)" "" \
+gdb_test "py pattern = pack('${python_pack_char}H',0x1234)" "" \
 
 gdb_test "py print gdb.inferiors()\[0\].search_memory (start_addr, length, pattern)" \
   "${one_pattern_found}" "find 16-bit pattern, with value pattern"
@@ -117,7 +128,7 @@ gdb_test "set int32_search_buf\[10\] = 0x12345678" "" ""
 gdb_test "py search_buf = gdb.selected_frame ().read_var ('int32_search_buf')" "" ""
 gdb_test "py start_addr = search_buf.address" "" ""
 gdb_test "py length = search_buf.type.sizeof" "" ""
-gdb_test "py pattern = pack('I',0x12345678)" "" \
+gdb_test "py pattern = pack('${python_pack_char}I',0x12345678)" "" \
 
 gdb_test "py print gdb.inferiors()\[0\].search_memory (start_addr, length, pattern)" \
   "${one_pattern_found}" "find 32-bit pattern, with python pattern"
@@ -128,7 +139,7 @@ gdb_test "set int64_search_buf\[10\] = 0xfedcba9876543210LL" "" ""
 gdb_test "py search_buf = gdb.selected_frame ().read_var ('int64_search_buf')" "" ""
 gdb_test "py start_addr = search_buf.address" "" ""
 gdb_test "py length = search_buf.type.sizeof" "" ""
-gdb_test "py pattern = pack('Q', 0xfedcba9876543210)" "" ""
+gdb_test "py pattern = pack('${python_pack_char}Q', 0xfedcba9876543210)" "" ""
 
 gdb_test "py print gdb.inferiors()\[0\].search_memory (start_addr, length, pattern)" \
   "${one_pattern_found}" "find 64-bit pattern, with value pattern"
@@ -141,8 +152,8 @@ gdb_test "set *(int32_t*) &search_buf\[13\] = 0x64646464" "" ""
 gdb_test "py search_buf = gdb.selected_frame ().read_var ('search_buf')" "" ""
 gdb_test "py start_addr = search_buf\[0\].address" "" ""
 gdb_test "py pattern1 = pack('B', 0x62)" "" ""
-gdb_test "py pattern2 = pack('H', 0x6363)" "" ""
-gdb_test "py pattern3 = pack('I', 0x64646464)" "" ""
+gdb_test "py pattern2 = pack('${python_pack_char}H', 0x6363)" "" ""
+gdb_test "py pattern3 = pack('${python_pack_char}I', 0x64646464)" "" ""
 
 gdb_test "py print gdb.inferiors()\[0\].search_memory (start_addr, 100, pattern1)" \
     "${one_pattern_found}" "find mixed-sized pattern"
@@ -161,7 +172,7 @@ gdb_test "set *(int32_t*) &search_buf\[0*${CHUNK_SIZE}+100\] = 0x12345678" "" ""
 gdb_test "set *(int32_t*) &search_buf\[1*${CHUNK_SIZE}+100\] = 0x12345678" "" ""
 gdb_test "py start_addr = gdb.selected_frame ().read_var ('search_buf')" "" ""
 gdb_test "py length = gdb.selected_frame ().read_var ('search_buf_size')" "" ""
-gdb_test "py pattern = pack('I', 0x12345678)" "" ""
+gdb_test "py pattern = pack('${python_pack_char}I', 0x12345678)" "" ""
 gdb_test "py first = gdb.inferiors()\[0\].search_memory (start_addr,length, pattern)" "" ""
 gdb_test "py print first" "${one_pattern_found}" "search spanning large range 1st result"
 gdb_test "py start_addr = first + 1"
@@ -175,7 +186,7 @@ gdb_test "py print third" "${pattern_not_found}" "search spanning large range 3r
 
 if [isnative] {
     gdb_test "set *(int32_t*) &search_buf\[${CHUNK_SIZE}-1\] = 0xfdb97531" "" ""
-    gdb_test "py pattern = pack('I', 0xfdb97531)" "" ""
+    gdb_test "py pattern = pack('${python_pack_char}I', 0xfdb97531)" "" ""
     gdb_test "py start_addr = gdb.selected_frame ().read_var ('search_buf')" "" ""
     gdb_test "py print gdb.inferiors()\[0\].search_memory (start_addr, length, pattern)" \
       "${one_pattern_found}" "find pattern straddling chunk boundary"