-#if ! LONG_BRANCH_PIC_IN_SHLIB
- if (info->shared)
- {
- /* Output a dynamic relocation for this stub. We only
- output one PCREL21L reloc per stub, trusting that the
- dynamic linker will also fix the implied PCREL17R for the
- second instruction. PCREL21L dynamic relocs had better
- never be emitted for some other purpose... */
- asection *srel;
- Elf_Internal_Rela outrel;
-
- if (stub_entry->h == NULL)
- {
- (*_bfd_error_handler)
- (_("%s(%s+0x%lx): cannot relocate %s, recompile with -ffunction-sections"),
- bfd_archive_filename (stub_entry->target_section->owner),
- stub_sec->name,
- (long) stub_entry->stub_offset,
- stub_entry->root.string);
- bfd_set_error (bfd_error_bad_value);
- return false;
- }
-
- srel = stub_entry->reloc_sec;
- if (srel == NULL)
- {
- (*_bfd_error_handler)
- (_("Could not find relocation section for %s"),
- stub_sec->name);
- bfd_set_error (bfd_error_bad_value);
- return false;
- }
-
- outrel.r_offset = (stub_entry->stub_offset
- + stub_sec->output_offset
- + stub_sec->output_section->vma);
- outrel.r_info = ELF32_R_INFO (0, R_PARISC_PCREL21L);
- outrel.r_addend = sym_value;
- bfd_elf32_swap_reloca_out (stub_sec->output_section->owner,
- &outrel,
- ((Elf32_External_Rela *)
- srel->contents + srel->reloc_count));
- ++srel->reloc_count;
- }
-#endif