This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] parse load_offset (bias) of restore command as long


Hi,

Following failures are noticed for avr-gdb. This may be the case
for targets like AVR which has integer_to_address hook defined.

FAIL: gdb.base/dump.exp: struct copy, srec; value restored ok 
FAIL: gdb.base/dump.exp: struct copy, ihex; value restored ok 
FAIL: gdb.base/dump.exp: struct copy, tekhex; value restored ok

These tests are failed because load_offset(bias) of restore command
parsed as address.

command: restore filename [binary] bias start end

Except binary, other BFDs have a built-in location; gdb restores content
at offset 'bias' from that location. So, 'bias' of 'restore' command should
be parsed as address only when the file is binary.

Below patch changes gdb to parse 'bias' as long if the file is not binary.

diff --git a/gdb/cli/cli-dump.c b/gdb/cli/cli-dump.c
index 931bb4a..8dd2009 100644
--- a/gdb/cli/cli-dump.c
+++ b/gdb/cli/cli-dump.c
@@ -596,8 +596,9 @@ restore_command (char *args_in, int from_tty)
        }
       /* Parse offset (optional).  */
       if (args != NULL && *args != '\0')
-      data.load_offset =
-       parse_and_eval_address (scan_expression_with_cleanup (&args, NULL));
+      data.load_offset = binary_flag ?
+       parse_and_eval_address (scan_expression_with_cleanup (&args, NULL)) :
+       parse_and_eval_long (scan_expression_with_cleanup (&args, NULL));
       if (args != NULL && *args != '\0')
        {
          /* Parse start address (optional).  */

If ok, could someone commit please? I don't have commit access.

Regards,
Pitchumani

gdb/ChangeLog

2015-10-05  Pitchumani Sivanupandi  <pitchumani.s@atmel.com>

	* cli/cli-dump.c (restore_command): Parse load_offset (bias) as address
	only when the file is binary.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]