aboutsummaryrefslogtreecommitdiff
path: root/bfd/vms-alpha.c
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2011-06-28 08:39:39 +0000
committerTristan Gingold <gingold@adacore.com>2011-06-28 08:39:39 +0000
commit25d41743dc575d878e186cf34bb9cd25daf620ff (patch)
treef7a9b03b686a0bb4aafc8e2f141ed170e66d53b5 /bfd/vms-alpha.c
parentaf69a5cef74c0fee461cf1dcae8abfe28dd0ca05 (diff)
downloadgdb-25d41743dc575d878e186cf34bb9cd25daf620ff.zip
gdb-25d41743dc575d878e186cf34bb9cd25daf620ff.tar.gz
gdb-25d41743dc575d878e186cf34bb9cd25daf620ff.tar.bz2
2011-06-28 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (vms_private_data_struct): Make vms_linkage_index unsigned int. (_bfd_vms_write_etir): Write linkage index from reloc.
Diffstat (limited to 'bfd/vms-alpha.c')
-rw-r--r--bfd/vms-alpha.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index 1e2ab30..87e35ed 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -330,7 +330,7 @@ struct vms_private_data_struct
struct vms_internal_eisd_map *gbl_eisd_tail;
/* linkage index counter used by conditional store commands */
- int vms_linkage_index;
+ unsigned int vms_linkage_index;
/* see tc-alpha.c of gas for a description. */
int flag_hash_long_names; /* -+, hash instead of truncate */
@@ -3947,8 +3947,9 @@ _bfd_vms_write_etir (bfd * abfd, int objtype ATTRIBUTE_UNUSED)
etir_output_check (abfd, section, curr_addr, 64);
_bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_LP_PSB);
_bfd_vms_output_long
- (recwr, (unsigned long) PRIV (vms_linkage_index));
- PRIV (vms_linkage_index) += 2;
+ (recwr, (unsigned long) rptr->addend);
+ if (rptr->addend > PRIV (vms_linkage_index))
+ PRIV (vms_linkage_index) = rptr->addend;
hash = _bfd_vms_length_hash_symbol
(abfd, sym->name, EOBJ__C_SYMSIZ);
_bfd_vms_output_counted (recwr, hash);