Commit graph

26 commits

Author SHA1 Message Date
Alan Modra
ae6063d440 * symbols.c (S_FORCE_RELOC): Add "strict" param.
* symbols.h (S_FORCE_RELOC): Likewise.
	* config/obj-aout.h (S_FORCE_RELOC): Likewise.
	* config/obj-bout.h (S_FORCE_RELOC): Likewise.
	* config/obj-coff.h (S_FORCE_RELOC): Likewise.
	* config/obj-ieee.h (S_FORCE_RELOC): Likewise.
	* config/obj-vms.h (S_FORCE_RELOC): Likewise.
	* write.c (generic_force_reloc): New function.
	(TC_FORCE_RELOCATION): Use it here instead of S_FORCE_RELOC.
	(TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
	(adjust_reloc_syms): Adjust S_FORCE_RELOC call.
	* as.h (generic_force_reloc): Declare.
	* doc/internals.texi (S_FORCE_RELOC): Update.
	(TC_FORCE_RELOCATION_SUB_SAME): Update.

	* config/tc-alpha.c (alpha_force_relocation): Adjust to use
	generic_force_reloc.
	(alpha_fix_adjustable): Likewise.
	* config/tc-arm.c (arm_force_relocation): Likewise.
	* config/tc-cris.c (md_cris_force_relocation): Likewise.
	* config/tc-frv.c (frv_force_relocation): Likewise.
	* config/tc-i386.c (md_apply_fix3): Likewise.
	* config/tc-ia64.c (ia64_force_relocation): Likewise.
	* config/tc-ip2k.c (ip2k_force_relocation): Likewise.
	* config/tc-m32r.c (m32r_force_relocation): Likewise.
	* config/tc-m68hc11.c (tc_m68hc11_force_relocation): Likewise.
	* config/tc-mcore.c (mcore_force_relocation): Likewise.
	* config/tc-mips.c (mips_force_relocation): Likewise.
	* config/tc-mmix.c (mmix_force_relocation): Likewise.
	* config/tc-ppc.c (ppc_force_relocation): Likewise.
	* config/tc-s390.c (tc_s390_force_relocation): Likewise.
	* config/tc-sh.c (sh_force_relocation): Likewise.
	(md_pcrel_from_section): Likewise.
	* config/tc-sparc.c (tc_gen_reloc): Likewise.
	* config/tc-v850.c (v850_force_relocation): Likewise.
	* config/tc-xstormy16.c (xstormy16_force_relocation): Likewise.
	* config/tc-i386.h (TC_FORCE_RELOCATION): Likewise.
	* config/tc-mcore.h (TC_FORCE_RELOCATION): Likewise.
	* config/tc-sparc.h (tc_fix_adjustable): Likewise.

	* config/tc-d10v.c (d10v_force_relocation): Delete.
	* config/tc-d10v.h (TC_FORCE_RELOCATION): Don't define.
	* config/tc-dlx.c (md_dlx_force_relocation): Delete.
	* config/tc-dlx.h (TC_FORCE_RELOCATION): Don't define.
	* config/tc-fr30.c (fr30_force_relocation): Delete.
	* config/tc-fr30.h (TC_FORCE_RELOCATION): Don't define.
	* config/tc-mn10300.c (mn10300_force_relocation): Delete.
	* config/tc-mn10300.h (TC_FORCE_RELOCATION): Don't define.
	(TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
	* config/tc-i960.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
	* config/tc-hppa.c (hppa_force_relocation): Adjust S_FORCE_RELOC call.
	* config/tc-mips.c (RELAX_BRANCH_TOOFAR): Warning fix.
	* config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Don't define.
	* config/tc-openrisc.c (openrisc_force_relocation): Delete.
	* config/tc-openrisc.h (TC_FORCE_RELOCATION): Don't define.
	* config/tc-sparc.c (elf32_sparc_force_relocation): Delete.
	* config/tc-sparc.h (TC_FORCE_RELOCATION): Don't define for ELF.
	* config/tc-i386.c (i386_force_relocation): Delete.
	* config/tc-i386.h (TC_FORCE_RELOCATION): Don't define for
	BFD_ASSEMBLER.
	(EXTERN_FORCE_RELOC): Fix TE_PE and STRICT_PE_FORMAT nesting.
	* config/tc-m68k.h (TC_FORCE_RELOCATION): Don't define.
	* config/tc-pj.h (TC_FORCE_RELOCATION): Don't define.
	* config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Don't call
	S_FORCE_RELOC.
	(TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
	* config/tc-sh64.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2003-01-23 12:51:05 +00:00
Alan Modra
b34976b65a s/boolean/bfd_boolean/ s/true/TRUE/ s/false/FALSE/. Simplify
comparisons of bfd_boolean vars with TRUE/FALSE.  Formatting.
2002-11-30 08:39:46 +00:00
Hans-Peter Nilsson
fb2fd3e12c * config/tc-cris.c (cris_relax_frag): Fix typo in comment.
(md_assemble): Don't pass on branches to constants as relaxable.
	Tweak comment.
2002-11-26 08:21:35 +00:00
Hans-Peter Nilsson
1c97116001 * config/tc-cris.c (SIMPLE_EXPR): New macro.
(cris_relax_frag): New function.
	(md_estimate_size_before_relax) <case ENCODE_RELAX
	(STATE_BASE_PLUS_DISP_PREFIX, STATE_UNDF)>: Pass on unresolved
	expressions that will become absolute expressions to relaxation.
	(md_convert_frag) <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX,
	STATE_WORD)>: Expect only absolute expressions.  Use the symbol
	value, not distance to symbol.
	<case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX, STATE_BYTE)>:
	Ditto.  Correct placement of fixup.
	(md_assemble): Use SIMPLE_EXPR when dissecting expressions.
	(gen_bdap): Ditto.
	* config/tc-cris.h (cris_relax_frag): Declare.
	(md_relax_frag): Define.
2002-10-22 23:45:40 +00:00
Alan Modra
a161fe5320 gas reloc rewrite. 2002-09-05 00:01:18 +00:00
Hans-Peter Nilsson
920e417765 Fix typo in comment in last commit 2001-11-17 18:51:15 +00:00
Hans-Peter Nilsson
451a1fc524 * config/tc-cris.c (md_apply_fix3): Cast value, not pointer, in
val assignment.
2001-11-17 18:39:03 +00:00
Nick Clifton
94f592af1b Update all uses of md_apply_fix to use md_apply_fix3. Make it a void function. 2001-11-15 21:29:00 +00:00
Kazu Hirata
b6ff326eba * config/tc-alpha.c: Fix comment typos.
* config/tc-cris.c: Likewise.
	* config/tc-hppa.c: Likewise.
	* config/tc-i370.c: Likewise.
	* config/tc-mips.c: Likewise.
	* config/tc-mn10200.c: Likewise.
	* config/tc-mn10300.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-tahoe.c: Likewise.
	* config/tc-v850.c: Likewise.
2001-10-11 23:56:33 +00:00
H.J. Lu
3882b01078 Locale changes from Bruno Haible <haible@clisp.cons.org>. 2001-09-19 05:33:36 +00:00
Alan Modra
ac62c3468d * symbols.c (S_GET_VALUE): Don't treat O_constant and local
symbols specially.  Always resolve, adding fr_address to value.
	* write.c (write_object_file): Don't add fr_address to sym values.
	(relax_frag): Likewise.
	(relax_segment): Likewise.
	* config/obj-ieee.c (do_symbols): Likewise.
	* config/tc-cris.c (md_convert_frag): Likewise.
	* config/tc-fr30.c (md_convert_frag): Likewise.
	* config/tc-i386.c (md_convert_frag): Likewise.
	* config/tc-m32r.c (md_convert_frag): Likewise.
	* config/tc-m68hc11.c (md_convert_frag): Likewise.
	* config/tc-mcore.c (md_convert_frag): Likewise.
	* config/tc-mips.c (mips16_extended_frag): Likewise.
	* config/tc-ns32k.c (md_convert_frag): Likewise.
	* config/tc-m68k.c (md_convert_frag_1): Likewise.
	(BRANCHBWL, BRABSJUNC, BRABSJCOND, BRANCHBW, FBRANCH, DBCCLBR,
	DBCCABSJ, PCREL1632, PCINDEX, ABSTOPCREL): Decrement.
	(md_relax_table): Remove first four entries.  Format.
	(md_estimate_size_before_relax): Remove old_fix.  Don't bother
	setting fr_var.  Simplify byte branch checks.
2001-07-23 13:03:40 +00:00
Hans-Peter Nilsson
ed67db7ab9 * config/tc-cris.c (cris_insn_first_word_frag): New.
(md_assemble): Call cris_insn_first_word_frag to get the first
	frag in an insn, not frag_more.  Don't call dwarf2_emit_insn at
	end.  Drop variable insn_size.
	(gen_bdap): Call cris_insn_first_word_frag, not frag_more.
	(cris_sym_leading_underscore): Wrap first as_bad parameter in _().
	(cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto.
2001-04-04 04:23:20 +00:00
Hans-Peter Nilsson
c335d39444 * config/tc-cris.c (md_estimate_size_before_relax) <case
ENCODE_RELAX (STATE_CONDITIONAL_BRANCH, STATE_UNDF)>: Don't emit
	32-bit branch, just set fragP->fr_subtype.  Set fragP->fr_var.
	<all cases>: Always set fragP->fr_var using md_cris_relax_table.
	Add cases to cover all relax states.
2001-04-04 03:53:12 +00:00
Alan Modra
93c2a809af Prepare for multi-pass relaxation. 2001-03-30 00:06:10 +00:00
Hans-Peter Nilsson
d551a338e2 * config/tc-cris.h (tc_fix_adjustable): Allow only
BFD_RELOC_CRIS_32_GOTREL of the PIC relocs.
	* config/tc-cris.c (cris_get_pic_suffix): Correct reloc used in
	example to valid.
2001-03-29 02:29:38 +00:00
Hans-Peter Nilsson
08caf3f870 * config/tc-cris.[ch]: Tweak attribution. Fix typos. PIC support. 2001-03-23 05:27:42 +00:00
Nick Clifton
f7e42eb4af Fix copyright notices 2001-03-08 23:24:26 +00:00
Kazu Hirata
bc80588841 2000-12-03 Kazu Hirata <kazu@hxi.com>
* tc-a29k.c: Fix formatting.
	* tc-alpha.c: Likewise.
	* tc-arm.c: Likewise.
	* tc-cris.c: Likewise.
	* tc-hppa.c: Likewise.
	* tc-i370.c: Likewise.
	* tc-i386.c: Likewise.
	* tc-i860.c: Likewise.
	* tc-i960.c: Likewise.
	* tc-ia64.c: Likewise.
	* tc-m68hc11.c: Likewise.
	* tc-m68k.c: Likewise.
	* tc-m88k.c: Likewise.
	* tc-pj.c: Likewise.
	* tc-ppc.c: Likewise.
	* tc-sh.c: Likewise.
	* tc-sparc.c: Likewise.
	* tc-tahoe.c: Likewise.
	* tc-vax.c: Likewise.
2000-12-03 06:49:23 +00:00
Hans-Peter Nilsson
fcdc20a4d3 * config/tc-cris.c: Include dwarf2dbg.h.
(md_pseudo_table): Add .file and .loc.
	(md_assemble): Call dwarf2_emit_insn if generating ELF.
	(s_cris_file, s_cris_loc): New.
	* config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
	* Makefile.am: Regenerate dependencies.
	* Makefile.in: Regenerate.
2000-11-28 15:39:15 +00:00
Kazu Hirata
4a1805b14d 2000-11-14 Kazu Hirata <kazu@hxi.com>
* config/aout_gnu.h: Fix formatting.
	* config/atof-vax.c: Likewise.
	* config/m68k-parse.h: Likewise.
	* config/m88k-opcode.h: Likewise.
	* config/obj-elf.c: Likewise.
	* config/tc-arm.c: Likewise.
	* config/tc-cris.c: Likewise.
	* config/tc-i386.c: Likewise.
	* config/tc-ia64.c: Likewise.
	* config/tc-mn10300.c: Likewise.
	* config/te-386bsd.h: Likewise.
	* config/te-hppa.h: Likewise.
	* config/te-nbsd.h: Likewise.
	* config/te-ppcnw.h: Likewise.
	* config/te-sparcaout.h: Likewise.
	* config/te-tmips.h: Likewise.
	* config/vax-inst.h: Likewise.
	* config/vms-conf.h: Likewise.
2000-11-14 20:57:30 +00:00
Hans-Peter Nilsson
7b15d66830 Changes to handle varying register prefix and user symbol prefix.
* config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX,
	SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE,
	SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New.
	(s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix,
	cris_sym_leading_underscore, cris_sym_no_leading_underscore): New.
	(demand_register_prefix): New variable.
	(md_pseudo_table): New pseudo ".syntax".
	(md_longopts): New options --no-underscore and --underscore.
	(cris_target_format): Return elf32-us-cris or elf32-cris depending
	on symbols_have_leading_underscore.
	(get_gen_reg): Accept or require REGISTER_PREFIX_CHAR.
	(get_spec_reg): Ditto.
	(cris_number_to_imm) <case BFD_RELOC_VTABLE_ENTRY>: Remove FIXME.
	Fix formatting.
	(md_parse_option) <case 'h' 'H'>: Deprecate; add reference to
	--help.
	<case OPTION_NO_US, case OPTION_US>: New.
	(md_show_usage): Be brief and reformat to match continuation of
	--help.
	* po/gas.pot: Regenerate.
2000-09-29 18:01:23 +00:00
Kazu Hirata
81d4177baa 2000-09-25 Kazu Hirata <kazu@hxi.com>
* config/tc-cris.c: Fix formatting.
	* config/tc-d10v.h: Likewise.
	* config/tc-d30v.c: Likewise.
	* config/tc-d30v.h: Likewise.
	* config/tc-fr30.c: Likewise.
	* config/tc-fr30.h: Likewise.
	* config/tc-m68k.c: Likewise.
	* config/tc-m68k.h: Likewise.
	* config/tc-pj.h: Likewise.
	* config/tc-ppc.c: Likewise.
	* config/tc-ppc.h: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-sh.h: Likewise.
	* config/tc-sparc.c: Likewise.
	* config/tc-v850.h: Likewise.
	* config/tc-vax.h: Likewise.
	* config/tc-w65.h: Likewise.
	* config/tc-z8k.h: Likewise.
2000-09-26 07:09:19 +00:00
Hans-Peter Nilsson
07e90ad5b7 * config/tc-cris.c: Correct comment typos. 2000-09-05 21:35:01 +00:00
Kazu Hirata
47926f603c 2000-08-05 Kazu Hirata <kazu@hxi.com>
* config/tc-cris.c: Fix formatting.
	* config/tc-i386.c: Likewise.
	* config/tc-sparc.c (sparc_ip): Simplify the code.
2000-08-04 18:43:45 +00:00
Kazu Hirata
ab3e48dc5d 2000-08-04 Kazu Hirata <kazu@hxi.com>
* config/tc-cris.c: Rearrange code for readability.
	* config/tc-d10v.c: Fix formatting.
	* config/tc-m32r.c: Likewise.
	* config/tc-sparc.c: Likewise.
2000-08-04 01:01:32 +00:00
Hans-Peter Nilsson
3bcbcc3dcf * configure.in: Add CRIS support.
* configure: Regenerate.
	* Makefile.am: (CPU_TYPES): Add cris.
	(CPU_OBJ_VALID) [aout]: Add cris.
	(MULTI_CPU_TYPES): Add cris.
	(MULTI_CPU_OBJ_VALID) [aout]: Add cris.
 	[coff]: Only i386 and mips are valid.
	(TARGET_CPU_CFILES): Add config/tc-cris.c.
	(TARGET_CPU_HFILES): Add config/tc-cris.h.
	(MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* as.c: Declare crisaout, criself.
	* config/tc-cris.h, config/tc-cris.c: New.
	* config/e-criself.c, config/e-crisaout.c: New.
	* po/POTFILES.in, po/gas.pot: Regenerate.
2000-07-20 17:45:28 +00:00