Show sizes in linker map in target machine address units
authorDan Gisselquist <dgisselq@ieee.org>
Thu, 7 Apr 2016 12:57:47 +0000 (22:27 +0930)
committerAlan Modra <amodra@gmail.com>
Fri, 8 Apr 2016 05:03:02 +0000 (14:33 +0930)
* ldlang.c (print_output_section_statement): Show minfo size
in target machine address units.
(print_reloc_statement): Likewise.
(print_padding_statement): Likewise.
(print_data_statement): Likewise.  Ensure minimum print_dot
increment of one address unit.

ld/ChangeLog
ld/ldlang.c

index fe63b96..4d82ea4 100644 (file)
@@ -1,3 +1,12 @@
+2016-04-08  Dan Gisselquist  <dgisselq@ieee.org>
+
+       * ldlang.c (print_output_section_statement): Show minfo size
+       in target machine address units.
+       (print_reloc_statement): Likewise.
+       (print_padding_statement): Likewise.
+       (print_data_statement): Likewise.  Ensure minimum print_dot
+       increment of one address unit.
+
 2016-04-07  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * emulparams/arc-endianness.sh: Make little endian default choice.
index 9fca810..5fbea3f 100644 (file)
@@ -4001,7 +4001,7 @@ print_output_section_statement
              ++len;
            }
 
-         minfo ("0x%V %W", section->vma, section->size);
+         minfo ("0x%V %W", section->vma, TO_ADDR (section->size));
 
          if (section->vma != section->lma)
            minfo (_(" load address 0x%V"), section->lma);
@@ -4311,7 +4311,9 @@ print_data_statement (lang_data_statement_type *data)
       break;
     }
 
-  minfo ("0x%V %W %s 0x%v", addr, size, name, data->value);
+  if (size < TO_SIZE ((unsigned) 1))
+    size = TO_SIZE ((unsigned) 1);
+  minfo ("0x%V %W %s 0x%v", addr, TO_ADDR (size), name, data->value);
 
   if (data->exp->type.node_class != etree_value)
     {
@@ -4354,7 +4356,7 @@ print_reloc_statement (lang_reloc_statement_type *reloc)
 
   size = bfd_get_reloc_size (reloc->howto);
 
-  minfo ("0x%V %W RELOC %s ", addr, size, reloc->howto->name);
+  minfo ("0x%V %W RELOC %s ", addr, TO_ADDR (size), reloc->howto->name);
 
   if (reloc->name != NULL)
     minfo ("%s+", reloc->name);
@@ -4387,7 +4389,7 @@ print_padding_statement (lang_padding_statement_type *s)
   addr = s->output_offset;
   if (s->output_section != NULL)
     addr += s->output_section->vma;
-  minfo ("0x%V %W ", addr, (bfd_vma) s->size);
+  minfo ("0x%V %W ", addr, TO_ADDR (s->size));
 
   if (s->fill->size != 0)
     {