libc/include
Joern Rennecke 1def00e433 Fix sh-elf linker relaxation:
gcc:
	* config/sh/sh.h (EXTRA_SPECS): Add subtarget_asm_relax_spec and
	subtarget_asm_isa_spec.
	(SUBTARGET_ASM_RELAX_SPEC, SUBTARGET_ASM_ISA_SPEC): Define.
	(ASM_SPEC): Define as SH_ASM_SPEC.
	(SH_ASM_SPEC): New; take the role of ASM_SPEC, but safe from svr4.h.
	Use subtarget_asm_relax_spec and subtarget_asm_isa_spec.
	* config/sh/elf.h (ASM_SPEC): Use SH_ASM_SPEC.
	(SUBTARGET_ASM_ISA_SPEC): Undef / define.
gcc/testsuite:
	gcc.dg/sh-relax.c: New test.

include/elf:
	* sh.h (EF_SH_MERGE_MACH): Make sure SH2E & SH3/SH3E merge to SH3E,
	and SH2E & SH4 merge to SH4, not SH2E.

gas:
	* config/tc-sh.c (sh_dsp): Replace with preset_target_arch.
	(md_begin): Use preset_target_arch.
	(md_longopts): Make isa option unconditional.
	(md_parse_option): Make OPTION_DSP and OPTION_ISA sh4 / any
	set preset_target_arch.
	(md_apply_fix3): If BFD_ASSEMBLER, adjust SWITCH_TABLE fixups
	by -S_GET_VALUE  (fixP->fx_subsy).
	(tc_gen_reloc): For SWITCH_TABLE fixups, the symbol is fixp->fx_subsy,
	and the addend is 0.
	Adjust addend of R_SH_IND12W relocations by fixp->fx_offset - 4.
	* config/tc-sh.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.

bfd:
	elf32-sh.c (sh_elf_howto_tab): Make R_SH_IND12W into an ordinary
	relocation (no special function), and make it non-partial_inplace.
	(sh_elf_relax_section): When creating a bsr, use a consistent value
	no matter if the symbol is extern or not;  set addend to -4.
	Don't swap load / non-load instructions for SH4.
	(sh_elf_relax_delete_bytes): In R_SH_IND12W case, check the offset
	rather than if the symbol is external to determine if adjusting the
	offset makes sense.  Adjust the addend too if appropriate.
	(sh_elf_relocate_section): In R_SH_IND12W, don't fiddle with the
	relocation.
2003-03-03 21:03:58 +00:00
..
aout * aout64.h: Formatting fixes. 2001-09-18 10:00:23 +00:00
coff Updates for fixing tic4x arch tagging of its object files. 2003-01-20 22:34:39 +00:00
elf Fix sh-elf linker relaxation: 2003-03-03 21:03:58 +00:00
gdb 2003-02-27 Andrew Cagney <cagney@redhat.com> 2003-02-27 23:13:32 +00:00
mpw Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
nlm * common.h (NLM_CAT, NLM_CAT3): Don't define. 2001-10-02 05:59:56 +00:00
opcode (ldmac, stmac): Replace MACREG with MS32 and MD32. 2003-02-21 11:36:59 +00:00
COPYING * COPYING: Update to current 2000-12-19 22:01:20 +00:00
ChangeLog merge from gcc 2003-02-27 21:01:01 +00:00
MAINTAINERS add MAINTAINERS files 2000-07-05 19:28:05 +00:00
alloca-conf.h Add alloca-conf.h from libiberty. 2000-09-28 08:00:54 +00:00
ansidecl.h merge from gcc 2002-10-25 00:01:55 +00:00
bfdlink.h * bfdlink.h (struct bfd_link_info): Add "strip_discarded". 2002-12-23 11:53:12 +00:00
bin-bugs.h Update address for bug reports. 2001-01-09 21:05:35 +00:00
bout.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
demangle.h merge from gcc 2002-06-25 01:03:52 +00:00
dis-asm.h * dis-asm.h (print_insn_iq2000): Declare. 2003-01-03 18:03:18 +00:00
dyn-string.h merge from gcc 2002-04-01 22:01:10 +00:00
fibheap.h merge from gcc 2002-06-25 01:03:52 +00:00
filenames.h * filenames.h: Add cygwin to the list of dosish style path systems. 2001-10-16 12:47:31 +00:00
floatformat.h Remove floatformat_arm_ext. 2002-03-06 06:29:41 +00:00
fnmatch.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
fopen-bin.h 19990502 sourceware import 1999-05-03 07:29:06 +00:00
fopen-same.h 19990502 sourceware import 1999-05-03 07:29:06 +00:00
fopen-vms.h 19990502 sourceware import 1999-05-03 07:29:06 +00:00
gdbm.h 19990502 sourceware import 1999-05-03 07:29:06 +00:00
getopt.h merge from gcc 2002-10-27 01:02:05 +00:00
hashtab.h include/ 2003-01-26 07:33:29 +00:00
hp-symtab.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
ieee.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
libiberty.h merge from gcc 2003-02-27 21:01:01 +00:00
md5.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
oasys.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
objalloc.h * objalloc.h (OBJALLOC_ALIGN): Define using offsetof. 2001-09-18 09:59:28 +00:00
obstack.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
os9k.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
partition.h merge from gcc 2002-10-27 01:02:05 +00:00
progress.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
safe-ctype.h merge from gcc 2001-10-24 20:32:09 +00:00
sort.h merge from gcc 2002-06-25 01:03:52 +00:00
splay-tree.h merge from gcc 2003-01-10 03:27:26 +00:00
symcat.h Synchronise with copyright dates on FSF GCC versions of these files 2001-03-14 19:45:29 +00:00
ternary.h merge from gcc 2001-05-08 14:34:36 +00:00
xregex.h merge from gcc 2001-08-02 23:27:47 +00:00
xregex2.h merge from gcc 2002-04-17 01:03:04 +00:00