* elf-hppa.h (elf_hppa_reloc_final_type): Handle selectors for
R_PARISC_PCREL32 and R_PARISC_PCREL64 relocations. * tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type. (pa_comm): Set BSF_OBJECT in symbol flags.
This commit is contained in:
parent
33cb8b0f85
commit
9992270f89
4 changed files with 35 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2004-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
||||
|
||||
* elf-hppa.h (elf_hppa_reloc_final_type): Handle selectors for
|
||||
R_PARISC_PCREL32 and R_PARISC_PCREL64 relocations.
|
||||
|
||||
2004-03-19 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* Makefile.am: Run "make dep-am".
|
||||
|
|
|
@ -812,6 +812,28 @@ elf_hppa_reloc_final_type (bfd *abfd,
|
|||
}
|
||||
break;
|
||||
|
||||
case 32:
|
||||
switch (field)
|
||||
{
|
||||
case e_fsel:
|
||||
final_type = R_PARISC_PCREL32;
|
||||
break;
|
||||
default:
|
||||
return R_PARISC_NONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case 64:
|
||||
switch (field)
|
||||
{
|
||||
case e_fsel:
|
||||
final_type = R_PARISC_PCREL64;
|
||||
break;
|
||||
default:
|
||||
return R_PARISC_NONE;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
return R_PARISC_NONE;
|
||||
}
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2004-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
||||
|
||||
* tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type.
|
||||
(pa_comm): Set BSF_OBJECT in symbol flags.
|
||||
|
||||
2004-03-19 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* Makefile.am: Run "make dep-am".
|
||||
|
|
|
@ -1399,6 +1399,8 @@ cons_fix_new_hppa (frag, where, size, exp)
|
|||
/* Get a base relocation type. */
|
||||
if (is_DP_relative (*exp))
|
||||
rel_type = R_HPPA_GOTOFF;
|
||||
else if (is_PC_relative (*exp))
|
||||
rel_type = R_HPPA_PCREL_CALL;
|
||||
else if (is_complex (*exp))
|
||||
rel_type = R_HPPA_COMPLEX;
|
||||
else
|
||||
|
@ -6386,6 +6388,7 @@ pa_comm (unused)
|
|||
|
||||
if (symbol)
|
||||
{
|
||||
symbol_get_bfdsym (symbol)->flags |= BSF_OBJECT;
|
||||
S_SET_VALUE (symbol, size);
|
||||
S_SET_SEGMENT (symbol, bfd_und_section_ptr);
|
||||
S_SET_EXTERNAL (symbol);
|
||||
|
|
Loading…
Reference in a new issue