]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
2010-06-11 Tristan Gingold <gingold@adacore.com>
authorTristan Gingold <gingold@adacore.com>
Fri, 11 Jun 2010 15:30:38 +0000 (15:30 +0000)
committerTristan Gingold <gingold@adacore.com>
Fri, 11 Jun 2010 15:30:38 +0000 (15:30 +0000)
* vms-alpha.c (_bfd_vms_slurp_egsd): Always set vma of absolute
sections to 0.

bfd/ChangeLog
bfd/vms-alpha.c

index 0722006d11c84f976776c05b337273d080f27bb8..85aa8eb1e74538c7cb5dd87e3a50dd731c741ac0 100644 (file)
@@ -1,3 +1,8 @@
+2010-06-11  Tristan Gingold  <gingold@adacore.com>
+
+       * vms-alpha.c (_bfd_vms_slurp_egsd): Always set vma of absolute
+       sections to 0.
+
 2010-06-11  Tristan Gingold  <gingold@adacore.com>
 
        * vms-alpha.c (evax_bfd_print_etir): Handle ETIR__C_STO_GBL_LW.
index 6591f3f89f59d1a9359afaad7db3e72fb21e9569..ff3062a184baf0094b6373bba54132e6f5840214 100644 (file)
@@ -1154,12 +1154,18 @@ _bfd_vms_slurp_egsd (bfd *abfd)
            if (!bfd_set_section_flags (abfd, section, new_flags))
              return FALSE;
            section->alignment_power = egps->align;
-           align_addr = (1 << section->alignment_power);
-           if ((base_addr % align_addr) != 0)
-             base_addr += (align_addr - (base_addr % align_addr));
-           section->vma = (bfd_vma)base_addr;
-           base_addr += section->size;
-           section->filepos = (unsigned int)-1;
+            if ((old_flags & EGPS__V_REL) != 0)
+              {
+                /* Give a non-overlapping vma to non absolute sections.  */
+                align_addr = (1 << section->alignment_power);
+                if ((base_addr % align_addr) != 0)
+                  base_addr += (align_addr - (base_addr % align_addr));
+                section->vma = (bfd_vma)base_addr;
+                base_addr += section->size;
+              }
+            else
+              section->vma = 0;
+           section->filepos = 0;
 
             /* Append it to the section array.  */
             if (PRIV (section_count) >= PRIV (section_max))