summaryrefslogtreecommitdiff
path: root/bfd/vms-alpha.c
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2011-06-28 08:39:37 +0000
committerTristan Gingold <gingold@adacore.com>2011-06-28 08:39:37 +0000
commit7e473ccc1b39b681450958bdfb149fb45b933cf3 (patch)
tree6cbf0e38ae33f69969e3a61693f6771a0d561afb /bfd/vms-alpha.c
parent805cd543ccb5e6dba5f58750c8b5f661ac3308b5 (diff)
downloadbinutils-redhat-7e473ccc1b39b681450958bdfb149fb45b933cf3.tar.gz
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 1e2ab30d6c..87e35edf7a 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);