Fix FAILs in compare-sections.exp
compare-sections.exp has two cases that are not handled appropriately: 1) value read with msb set 2) error while patching that section This patch adapts the "get value of read-only section" test to print the value as an unsigned integer to fix 1) and test for the error message to not set the written variable if read-only section cannot be written to so as to solve 2). 2017-09-26 Thomas Preud'homme <thomas.preudhomme@arm.com> Pedro Alves <palves@redhat.com> gdb/testsuite/ * gdb.base/compare-sections.exp (get value of read-only section): Read as unsigned value. (corrupt read-only section): Likewise and don't set written if patching failed.
This commit is contained in:
parent
66cfc0fd0d
commit
df8899e5c8
@ -1,3 +1,11 @@
|
||||
2017-09-26 Thomas Preud'homme <thomas.preudhomme@arm.com>
|
||||
Pedro Alves <palves@redhat.com>
|
||||
|
||||
* gdb.base/compare-sections.exp (get value of read-only section): Read
|
||||
as unsigned value.
|
||||
(corrupt read-only section): Likewise and don't set written if patching
|
||||
failed.
|
||||
|
||||
2017-09-21 Kevin Buettner <kevinb@redhat.com>
|
||||
|
||||
* gdb.python/py-thrhandle.c, gdb.python/py-thrhandle.exp: New
|
||||
|
@ -117,7 +117,7 @@ with_test_prefix "read-only" {
|
||||
set orig -1
|
||||
|
||||
set test "get value of read-only section"
|
||||
gdb_test_multiple "print /d *(unsigned char *) $ro_address" "$test" {
|
||||
gdb_test_multiple "print /u *(unsigned char *) $ro_address" "$test" {
|
||||
-re " = (\[0-9\]*).*$gdb_prompt $" {
|
||||
set orig $expect_out(1,string)
|
||||
pass "$test"
|
||||
@ -135,7 +135,10 @@ with_test_prefix "read-only" {
|
||||
# Write PATCH to memory.
|
||||
set written -1
|
||||
set test "corrupt read-only section"
|
||||
gdb_test_multiple "print /d *(unsigned char *) $ro_address = $patch" "$test" {
|
||||
gdb_test_multiple "print /u *(unsigned char *) $ro_address = $patch" "$test" {
|
||||
-re " = .*Cannot access memory at address $ro_address.*$gdb_prompt $" {
|
||||
pass "$test (cannot write)"
|
||||
}
|
||||
-re " = (\[0-9\]*).*$gdb_prompt $" {
|
||||
set written $expect_out(1,string)
|
||||
pass "$test"
|
||||
|
Loading…
Reference in New Issue
Block a user