OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [bfd/] [vms-alpha.c] - Diff between revs 148 and 161

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 148 Rev 161
Line 328... Line 328...
  /* Simply linked list of eisd for shared libraries.  */
  /* Simply linked list of eisd for shared libraries.  */
  struct vms_internal_eisd_map *gbl_eisd_head;
  struct vms_internal_eisd_map *gbl_eisd_head;
  struct vms_internal_eisd_map *gbl_eisd_tail;
  struct vms_internal_eisd_map *gbl_eisd_tail;
 
 
  /* linkage index counter used by conditional store commands */
  /* 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.  */
  /* see tc-alpha.c of gas for a description.  */
  int flag_hash_long_names;     /* -+, hash instead of truncate */
  int flag_hash_long_names;     /* -+, hash instead of truncate */
  int flag_show_after_trunc;    /* -H, show hashing/truncation */
  int flag_show_after_trunc;    /* -H, show hashing/truncation */
};
};
Line 2658... Line 2658...
  vms_debug2 ((2, "vms_write_eeom\n"));
  vms_debug2 ((2, "vms_write_eeom\n"));
 
 
  _bfd_vms_output_alignment (recwr, 2);
  _bfd_vms_output_alignment (recwr, 2);
 
 
  _bfd_vms_output_begin (recwr, EOBJ__C_EEOM);
  _bfd_vms_output_begin (recwr, EOBJ__C_EEOM);
  _bfd_vms_output_long (recwr, (unsigned long) (PRIV (vms_linkage_index) >> 1));
  _bfd_vms_output_long (recwr, PRIV (vms_linkage_index + 1) >> 1);
  _bfd_vms_output_byte (recwr, 0);       /* Completion code.  */
  _bfd_vms_output_byte (recwr, 0);       /* Completion code.  */
  _bfd_vms_output_byte (recwr, 0);       /* Fill byte.  */
  _bfd_vms_output_byte (recwr, 0);       /* Fill byte.  */
 
 
  if ((abfd->flags & EXEC_P) == 0
  if ((abfd->flags & EXEC_P) == 0
      && bfd_get_start_address (abfd) != (bfd_vma)-1)
      && bfd_get_start_address (abfd) != (bfd_vma)-1)
Line 3734... Line 3734...
 
 
  vms_debug2 ((2, "vms_write_tir (%p, %d)\n", abfd, objtype));
  vms_debug2 ((2, "vms_write_tir (%p, %d)\n", abfd, objtype));
 
 
  _bfd_vms_output_alignment (recwr, 4);
  _bfd_vms_output_alignment (recwr, 4);
 
 
  PRIV (vms_linkage_index) = 1;
  PRIV (vms_linkage_index) = 0;
 
 
  for (section = abfd->sections; section; section = section->next)
  for (section = abfd->sections; section; section = section->next)
    {
    {
      vms_debug2 ((4, "writing %d. section '%s' (%d bytes)\n",
      vms_debug2 ((4, "writing %d. section '%s' (%d bytes)\n",
                   section->target_index, section->name, (int) (section->size)));
                   section->target_index, section->name, (int) (section->size)));
Line 3945... Line 3945...
 
 
                case ALPHA_R_LINKAGE:
                case ALPHA_R_LINKAGE:
                  etir_output_check (abfd, section, curr_addr, 64);
                  etir_output_check (abfd, section, curr_addr, 64);
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_LP_PSB);
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_LP_PSB);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr, (unsigned long) PRIV (vms_linkage_index));
                    (recwr, (unsigned long) rptr->addend);
                  PRIV (vms_linkage_index) += 2;
                  if (rptr->addend > PRIV (vms_linkage_index))
 
                    PRIV (vms_linkage_index) = rptr->addend;
                  hash = _bfd_vms_length_hash_symbol
                  hash = _bfd_vms_length_hash_symbol
                    (abfd, sym->name, EOBJ__C_SYMSIZ);
                    (abfd, sym->name, EOBJ__C_SYMSIZ);
                  _bfd_vms_output_counted (recwr, hash);
                  _bfd_vms_output_counted (recwr, hash);
                  _bfd_vms_output_byte (recwr, 0);
                  _bfd_vms_output_byte (recwr, 0);
                  _bfd_vms_output_end_subrec (recwr);
                  _bfd_vms_output_end_subrec (recwr);
Line 3972... Line 3973...
                  etir_output_check (abfd, section, curr_addr,
                  etir_output_check (abfd, section, curr_addr,
                                     32 + 1 + strlen (udata->origname));
                                     32 + 1 + strlen (udata->origname));
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_NOP_GBL);
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_NOP_GBL);
                  _bfd_vms_output_long (recwr, (unsigned long) udata->lkindex);
                  _bfd_vms_output_long (recwr, (unsigned long) udata->lkindex);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr,
                    (recwr, (unsigned long) section->target_index);
                     (unsigned long) udata->enbsym->section->target_index);
 
                  _bfd_vms_output_quad (recwr, rptr->address);
                  _bfd_vms_output_quad (recwr, rptr->address);
                  _bfd_vms_output_long (recwr, (unsigned long) 0x47ff041f);
                  _bfd_vms_output_long (recwr, (unsigned long) 0x47ff041f);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr,
                    (recwr, (unsigned long) section->target_index);
                     (unsigned long) udata->enbsym->section->target_index);
 
                  _bfd_vms_output_quad (recwr, rptr->addend);
                  _bfd_vms_output_quad (recwr, rptr->addend);
                  _bfd_vms_output_counted
                  _bfd_vms_output_counted
                    (recwr, _bfd_vms_length_hash_symbol
                    (recwr, _bfd_vms_length_hash_symbol
                     (abfd, udata->origname, EOBJ__C_SYMSIZ));
                     (abfd, udata->origname, EOBJ__C_SYMSIZ));
                  _bfd_vms_output_end_subrec (recwr);
                  _bfd_vms_output_end_subrec (recwr);
Line 3999... Line 3998...
                                     32 + 1 + strlen (udata->origname));
                                     32 + 1 + strlen (udata->origname));
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_LDA_GBL);
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_LDA_GBL);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr, (unsigned long) udata->lkindex + 1);
                    (recwr, (unsigned long) udata->lkindex + 1);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr,
                    (recwr, (unsigned long) section->target_index);
                     (unsigned long) udata->enbsym->section->target_index);
 
                  _bfd_vms_output_quad (recwr, rptr->address);
                  _bfd_vms_output_quad (recwr, rptr->address);
                  _bfd_vms_output_long (recwr, (unsigned long) 0x237B0000);
                  _bfd_vms_output_long (recwr, (unsigned long) 0x237B0000);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr, (unsigned long) udata->bsym->section->target_index);
                    (recwr, (unsigned long) udata->bsym->section->target_index);
                  _bfd_vms_output_quad (recwr, rptr->addend);
                  _bfd_vms_output_quad (recwr, rptr->addend);
Line 4020... Line 4018...
                  etir_output_check (abfd, section, curr_addr,
                  etir_output_check (abfd, section, curr_addr,
                                       32 + 1 + strlen (udata->origname));
                                       32 + 1 + strlen (udata->origname));
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_BOH_GBL);
                  _bfd_vms_output_begin_subrec (recwr, ETIR__C_STC_BOH_GBL);
                  _bfd_vms_output_long (recwr, (unsigned long) udata->lkindex);
                  _bfd_vms_output_long (recwr, (unsigned long) udata->lkindex);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr,
                    (recwr, (unsigned long) section->target_index);
                     (unsigned long) udata->enbsym->section->target_index);
 
                  _bfd_vms_output_quad (recwr, rptr->address);
                  _bfd_vms_output_quad (recwr, rptr->address);
                  _bfd_vms_output_long (recwr, (unsigned long) 0xD3400000);
                  _bfd_vms_output_long (recwr, (unsigned long) 0xD3400000);
                  _bfd_vms_output_long
                  _bfd_vms_output_long
                    (recwr,
                    (recwr, (unsigned long) section->target_index);
                     (unsigned long) udata->enbsym->section->target_index);
 
                  _bfd_vms_output_quad (recwr, rptr->addend);
                  _bfd_vms_output_quad (recwr, rptr->addend);
                  _bfd_vms_output_counted
                  _bfd_vms_output_counted
                    (recwr, _bfd_vms_length_hash_symbol
                    (recwr, _bfd_vms_length_hash_symbol
                     (abfd, udata->origname, EOBJ__C_SYMSIZ));
                     (abfd, udata->origname, EOBJ__C_SYMSIZ));
                  _bfd_vms_output_end_subrec (recwr);
                  _bfd_vms_output_end_subrec (recwr);
Line 5104... Line 5100...
            if (cur_psect < 0 || cur_psect > (int)PRIV (section_count))
            if (cur_psect < 0 || cur_psect > (int)PRIV (section_count))
              {
              {
                (*_bfd_error_handler) (_("Invalid section index in ETIR"));
                (*_bfd_error_handler) (_("Invalid section index in ETIR"));
                return FALSE;
                return FALSE;
              }
              }
 
 
            sec = PRIV (sections)[cur_psect];
            sec = PRIV (sections)[cur_psect];
 
            if (sec == bfd_abs_section_ptr)
 
              {
 
                (*_bfd_error_handler) (_("Relocation for non-REL psect"));
 
                return FALSE;
 
              }
 
 
            vms_sec = vms_section_data (sec);
            vms_sec = vms_section_data (sec);
 
 
            /* Allocate a reloc entry.  */
            /* Allocate a reloc entry.  */
            if (sec->reloc_count >= vms_sec->reloc_max)
            if (sec->reloc_count >= vms_sec->reloc_max)
              {
              {
Line 9331... Line 9334...
#define alpha_vms_bfd_get_relocated_section_contents \
#define alpha_vms_bfd_get_relocated_section_contents \
  bfd_generic_get_relocated_section_contents
  bfd_generic_get_relocated_section_contents
 
 
#define alpha_vms_bfd_relax_section bfd_generic_relax_section
#define alpha_vms_bfd_relax_section bfd_generic_relax_section
#define alpha_vms_bfd_gc_sections bfd_generic_gc_sections
#define alpha_vms_bfd_gc_sections bfd_generic_gc_sections
 
#define alpha_vms_bfd_lookup_section_flags bfd_generic_lookup_section_flags
#define alpha_vms_bfd_merge_sections bfd_generic_merge_sections
#define alpha_vms_bfd_merge_sections bfd_generic_merge_sections
#define alpha_vms_bfd_is_group_section bfd_generic_is_group_section
#define alpha_vms_bfd_is_group_section bfd_generic_is_group_section
#define alpha_vms_bfd_discard_group bfd_generic_discard_group
#define alpha_vms_bfd_discard_group bfd_generic_discard_group
#define alpha_vms_section_already_linked \
#define alpha_vms_section_already_linked \
  _bfd_generic_section_already_linked
  _bfd_generic_section_already_linked

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.