2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* config/tc-sh.c (sh_force_relocation): Return 0 for some PC relative relocations when not relaxing. * testsuite/gas/sh/pcrel2.s: New. * testsuite/gas/sh/pcrel2.d: New. * testsuite/gas/sh/basic.exp: Add pcrel2 test.
This commit is contained in:
parent
613d38b830
commit
8ba4dac030
|
@ -1,3 +1,8 @@
|
||||||
|
2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||||||
|
|
||||||
|
* config/tc-sh.c (sh_force_relocation): Return 0 for
|
||||||
|
some PC relative relocations when not relaxing.
|
||||||
|
|
||||||
2002-09-26 Jakub Jelinek <jakub@redhat.com>
|
2002-09-26 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
* config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs.
|
* config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs.
|
||||||
|
|
|
@ -3219,6 +3219,18 @@ int
|
||||||
sh_force_relocation (fix)
|
sh_force_relocation (fix)
|
||||||
fixS *fix;
|
fixS *fix;
|
||||||
{
|
{
|
||||||
|
/* These relocations can't make it into a DSO, so no use forcing
|
||||||
|
them for global symbols. */
|
||||||
|
if (! sh_relax
|
||||||
|
&& (fix->fx_r_type == BFD_RELOC_SH_PCDISP8BY2
|
||||||
|
|| fix->fx_r_type == BFD_RELOC_SH_PCDISP12BY2
|
||||||
|
|| fix->fx_r_type == BFD_RELOC_SH_PCRELIMM8BY2
|
||||||
|
|| fix->fx_r_type == BFD_RELOC_SH_PCRELIMM8BY4
|
||||||
|
|| fix->fx_r_type == BFD_RELOC_8_PCREL
|
||||||
|
|| fix->fx_r_type == BFD_RELOC_SH_SWITCH16
|
||||||
|
|| fix->fx_r_type == BFD_RELOC_SH_SWITCH32))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (fix->fx_r_type == BFD_RELOC_VTABLE_INHERIT
|
if (fix->fx_r_type == BFD_RELOC_VTABLE_INHERIT
|
||||||
|| fix->fx_r_type == BFD_RELOC_VTABLE_ENTRY
|
|| fix->fx_r_type == BFD_RELOC_VTABLE_ENTRY
|
||||||
|| fix->fx_r_type == BFD_RELOC_SH_LOOP_START
|
|| fix->fx_r_type == BFD_RELOC_SH_LOOP_START
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||||||
|
|
||||||
|
* gas/sh/pcrel2.s: New.
|
||||||
|
* gas/sh/pcrel2.d: New.
|
||||||
|
* gas/sh/basic.exp: Add pcrel2 test.
|
||||||
|
|
||||||
2002-09-27 Jason Thorpe <thorpej@wasabisystems.com>
|
2002-09-27 Jason Thorpe <thorpej@wasabisystems.com>
|
||||||
|
|
||||||
* gas/vax/elf-rel.[ds]: New test.
|
* gas/vax/elf-rel.[ds]: New test.
|
||||||
|
|
|
@ -129,6 +129,8 @@ if [istarget sh*-*-*] then {
|
||||||
run_dump_test "dsp"
|
run_dump_test "dsp"
|
||||||
|
|
||||||
run_dump_test "pcrel"
|
run_dump_test "pcrel"
|
||||||
|
|
||||||
|
run_dump_test "pcrel2"
|
||||||
}
|
}
|
||||||
|
|
||||||
if {[istarget sh*-*elf] || [istarget sh*-linux*]} then {
|
if {[istarget sh*-*elf] || [istarget sh*-linux*]} then {
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
#as: -big
|
||||||
|
#objdump: -r
|
||||||
|
#name: PC-relative loads
|
||||||
|
|
||||||
|
.*: file format .*sh.*
|
|
@ -0,0 +1,17 @@
|
||||||
|
.text
|
||||||
|
|
||||||
|
.p2align 2
|
||||||
|
code:
|
||||||
|
bf foo
|
||||||
|
mov.l bar, r0
|
||||||
|
mov.w bar, r0
|
||||||
|
.globl foo
|
||||||
|
foo:
|
||||||
|
bra foo
|
||||||
|
nop
|
||||||
|
.align 2
|
||||||
|
.globl bar
|
||||||
|
bar:
|
||||||
|
.long . - foo
|
||||||
|
.word . - foo
|
||||||
|
.byte . - foo
|
Loading…
Reference in New Issue