Files
Andrew Burgess 42bcef4ad6 objdump: Handle 32-bit base address in debug_ranges / debug_loc.
When the DWARF address size is 32-bit, but the host machine is 64-bit,
objdump fails to spot base addresses specified in the .debug_ranges and
.debug_loc lists.

As an example, here is the output when dumping an example .debug_ranges
section with the pre-patched objdump:

    Contents of the .debug_ranges section:

        Offset   Begin    End
        00000000 ffffffff 00000004 (start > end)
        00000000 00000000 00000004
        00000000 ffffffff 00000008 (start > end)
        00000000 00000000 00000004
        00000000 <End of list>

And this is what the same section looks like when dumped with the
patched version of objdump:

    Contents of the .debug_ranges section:

        Offset   Begin    End
        00000000 ffffffff 00000004 (base address)
        00000000 00000004 00000008
        00000000 ffffffff 00000008 (base address)
        00000000 00000008 0000000c
        00000000 <End of list>

binutils/ChangeLog:

	* dwarf.c (is_max_address): New function.
	(display_loc_list): Remove out of date comment, use
	is_max_address.
	(display_debug_ranges): Likewise.

binutils/testsuite/ChangeLog:

	* binutils-all/objdump.exp: Add test for .debug_ranges decode.
	* binutils-all/dw2-ranges.S: New file.
	* binutils-all/dw2-ranges.W: New file.
2015-11-30 13:28:26 +00:00
..
2010-01-20 00:09:13 +00:00
2010-01-20 00:09:13 +00:00
2015-10-22 12:49:17 +10:30
2012-10-29 10:09:34 +00:00
2009-03-10 00:48:10 +00:00
2015-05-18 14:36:15 +01:00
2015-07-10 08:14:59 -07:00
2012-07-03 16:06:34 +00:00
2015-05-12 12:47:27 -07:00
2012-04-03 16:01:38 +00:00
2010-01-20 00:09:13 +00:00
2010-05-18 03:31:07 +00:00
2010-05-18 03:31:07 +00:00
2010-05-18 03:31:07 +00:00
2008-10-03 15:08:22 +00:00
2008-10-03 15:08:22 +00:00
2008-10-03 15:08:22 +00:00
2008-10-03 15:08:22 +00:00
2015-04-04 07:34:25 -07:00
2015-04-04 07:34:25 -07:00
2009-04-16 04:24:07 +00:00
2006-06-23 16:23:09 +00:00
2009-04-16 04:24:07 +00:00
2013-08-19 15:08:52 +00:00
2011-10-04 14:25:40 +00:00
2013-02-26 16:59:52 +00:00
2013-12-13 11:52:32 +00:00
2006-09-14 23:37:35 +00:00
2008-10-03 15:08:22 +00:00
2008-10-03 15:08:22 +00:00
2015-08-11 23:29:36 +09:30
2015-08-11 23:29:36 +09:30
2015-08-11 23:29:36 +09:30
2015-08-11 23:29:36 +09:30
2015-08-11 23:29:36 +09:30
2015-08-11 23:29:36 +09:30
2009-09-07 18:07:02 +00:00
2012-02-11 20:02:03 +00:00