Commit Graph

1165 Commits

Author SHA1 Message Date
Ian Lance Taylor
262b22cd10 Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
* subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
	fix_root and fix_tail.
	(segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
	field.
	* write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
	fix_tailP based on frchain_now, not seg_info (now_seg).
	(chain_frchains_together_1): Chain the subsegment relocs together.
	* subsegs.c (subseg_change): Don't clear fix_tail field.
	(subseg_get): Likewise.
	* literal.c (add_to_literal_pool): Look through the relocs via
	frchain_now, not seginfo.

	* write.c (write_object_file): Simplified usage of obj_frob_symbol
	and tc_frob_symbol.  Always call both if the symbol is going to be
	output.

	* write.c (relax_segment): Use %ld rather than %d when printing
	fragP->fr_var, and cast it to long.
1994-02-05 05:29:42 +00:00
Ken Raeburn
9ebe52b3b9 * lib/gas-defs.exp (regexp_diff): New procedure, vaguely based on
"simple_diff" from linker test suite.
* gas/sun4/addend.exp: Use it.
* gas/sun4/addend.d: New file.
1994-02-04 22:19:31 +00:00
Ian Lance Taylor
f85ad9d5c5 * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
ecoff_undefined.
	(ecoff_frob_symbol): Don't check ecoff_undefined.
	(ecoff_build_symbols): Get size of an undefined symbol from
	sym->ecoff_extern_size, not S_GET_VALUE (sym).
1994-02-04 04:14:24 +00:00
Ian Lance Taylor
11c0749600 Revert last change. 1994-02-04 03:17:30 +00:00
Ian Lance Taylor
fdb3408e12 * config/tc-mips.c (md_apply_fix): If this is an undefined symbol,
subtract the value from fx_addnumber to since
	bfd_perform_relocation is going to add it in.
1994-02-04 02:32:54 +00:00
Jeff Law
b4bd2c92c5 * Makefile.in: Avoid bug in losing hpux sed. 1994-02-02 21:58:54 +00:00
Ian Lance Taylor
1051c97f63 * config/tc-mips.c (file_mips_isa): New static variable.
(md_begin): Set it.
	(s_mipsset): Add support for .set mipN to set the ISA level.
1994-02-02 17:06:24 +00:00
Ian Lance Taylor
950df4212c * gasp.c (kinfo): Fully bracket initializer. 1994-02-02 16:43:00 +00:00
Roland Pesch
cd41d0672a Stop claiming MIPS li.d and li.s insns are not supported, now that they are. 1994-02-02 03:44:39 +00:00
Roland Pesch
65fbb2d722 Three scattered fixes (nearly lost!) from early suggestions by Jeff Law. 1994-02-02 03:32:31 +00:00
Roland Pesch
03d2167461 Better organization, indexing, for MIPS-dep section. 1994-02-02 01:43:26 +00:00
Ken Raeburn
f2cdeec493 gasp.c, atof-ieee.c, ho-i386aix.h changes 1994-02-02 00:40:29 +00:00
Ken Raeburn
6761eb8b9e * gasp.c (malloc): Don't declare, since host.h or system header files may
declare it differently.

(Actually, the only use is in xmalloc; if xmalloc didn't also zero out the
region of memory, I'd delete the function altogether and use the libiberty
version...)
1994-02-02 00:35:37 +00:00
Ken Raeburn
5ca42ea386 * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not ho-sysv.h. Based
loosely on a patch from Minh Tran-Le.
1994-02-02 00:32:10 +00:00
Roland Pesch
fb5bec4950 (1) use new flag SMALL to control whether or not insn tables appear
where avail (see comments in src)
(2) minor proofreading improvements to HPPA sec, and page break
    improvement (for Cygnus format) to M68K sec
1994-02-02 00:01:44 +00:00
Ian Lance Taylor
8bbad6fda8 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
warning, not an error.
1994-02-01 23:10:05 +00:00
Steve Chamberlain
e2847e64ff * gasp.c: Include host.h. 1994-02-01 18:58:32 +00:00
Ian Lance Taylor
9cbf9e57c2 obj-coff, obj-coffbfd changes. 1994-02-01 17:19:54 +00:00
Ian Lance Taylor
96a8876071 * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
now takes more arguments.
1994-02-01 17:18:42 +00:00
Ian Lance Taylor
257df7914d * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
dot_bss_symbol): Don't define if BFD_ASSEMBLER.
	(obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
	arguments.
	(coff_line_base): Renamed from line_base.  Changed all uses.
	(coff_add_linesym): Renamed from add_line_sym.  Made non-static.
	Changed all uses.
	* config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
	(S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
	BFD_ASSEMBLER.
	(coff_line_base): Declare.
	(coff_add_linesym): Declare if BFD_ASSEMBLER.
1994-02-01 17:17:52 +00:00
Roland Pesch
60ce6e743c Revisions from Jeff Law to HPPA-directives section.
This version formats cleanly under makeinfo, and in Cygnus format.

Default FSF format works without error, but tables of machine
instructions for some machines have stupid page boundaries (FSF
version uses larger page size).
1994-02-01 05:27:07 +00:00
Roland Pesch
81fcb3ff69 (1) eliminate GPL and refs thereto, as authorized by RMS
(2) enable MIPS-specific docn (cf PR 4434)
1994-02-01 04:36:50 +00:00
Roland Pesch
e680d73781 (1) summary descriptions of HPPA-specific directives
(2) leading comments for future updates, about places to check for new
    directives
(3) doc for new portable ".string" directive
(4) minor updates to dates etc.
1994-02-01 03:48:35 +00:00
Stan Shebs
392e46a1c8 Mon Jan 31 18:08:16 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in: Get opcode/mips.h from the right place.
1994-02-01 02:09:26 +00:00
Stan Shebs
f1c1227a59 Mon Jan 31 18:06:41 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-make.in (CFLAGS): Add more include paths.
1994-02-01 02:07:53 +00:00
Stan Shebs
2abb453d8b Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
* as.c (statistics_flag): Renamed from quiet_flag.
	(main): Get statistics with --statistics instead of -noquiet.
1994-02-01 02:03:06 +00:00
Roland Pesch
62e59d28c2 correct typo in as cmdline synopsis (-w for -W);
describe --statistics (nee -noquiet);
describe -Z
1994-02-01 00:36:50 +00:00
Roland Pesch
47c7ceb59c Acknowlegements: surely John Gilmore's one-bit fix was proverbial,
not apocryphal.

apoc-ry-phal \-fel\ adj
(1590)
1 often cap: of or resembling the Apocrypha
2: of doubtful authenticity: SPURIOUS
syn see FICTITIOUS

pro-ver-bi-al \pre-'ver-be^--el\ adj
(1548)
1: of, relating to, or resembling a proverb
2: that has become a proverb or byword: commonly spoken of
1994-01-31 20:47:07 +00:00
Ken Raeburn
0ce4d62e74 test code for fp handling -- no .exp file yet 1994-01-31 19:11:28 +00:00
Steve Chamberlain
3981bad3ee New files for testing gasp. 1994-01-31 16:53:03 +00:00
Steve Chamberlain
a5a4b5acdc Support for gasp. 1994-01-31 16:44:53 +00:00
Steve Chamberlain
b0f2092b3d New file. 1994-01-31 16:40:55 +00:00
Steve Chamberlain
7cb520f090 New file. 1994-01-31 16:37:19 +00:00
Steve Chamberlain
ede7bc1c60 * read.c (s_lcomm): Align lcomm data.
* config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
	from different sections.
1994-01-31 15:28:06 +00:00
Ken Raeburn
9e929d320a fix regexp for all/x930509.s 1994-01-31 04:39:12 +00:00
Ken Raeburn
7909261f79 alpha & vax changes 1994-01-30 23:32:56 +00:00
Ken Raeburn
5677c0288d * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't bother with
*-*-ultrix or *-*-sysv*, except *-*-sysv, since only the last has an existing
host support file.  Do handle vax-bsd and vax-ultrix targets.
1994-01-30 23:31:44 +00:00
Ken Raeburn
4075afe126 * read.c (do_align): New function, most of guts of s_align_* functions. Look
for md_do_align macro, give it a chance to bypass all but recording of section
alignment.
(s_align_bytes, s_align_ptwo): Call do_align.
(s_lcomm) [TC_ALPHA]: Align object to largest power of two that divides object
size.
1994-01-30 23:29:20 +00:00
Ken Raeburn
4242632039 (Already checked in write.c and config/tc-alpha.c, but no log msg went
out because $CVSROOT was wrong...)

	* write.c (write_object_file): If tc_frob_file is defined, call it
	just before calling obj_frob_file.
	* config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
	(references changed), and made non-static.
	(getExpression): Return void.
	(select_gp_value): Abort if gp_value is non-zero.  Delete call to
	non-existent bfd_set_gp_value.
	(alpha_validate_fix): Function deleted.
	(alpha_frob_symbol): Function deleted.
	(alpha_local_label): Function deleted.
	(alpha_frob_file): Renamed from alpha_end.
	* config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
	alpha_local_label, alpha_end): Declarations deleted.
	(alpha_gp_value, alpha_frob_file): Declare.
	(tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
	(LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
	(md_convert_frag): Simplified slightly.
	(tc_frob_file): New macro.
1994-01-30 23:26:55 +00:00
Ken Raeburn
c79e67a3b7 * write.c (write_object_file): If tc_frob_file is defined, call it
just before calling obj_frob_file.
* config/tc-alpha.c (alpha_gp_value): Renamed from gp_value (refs changed), made
non-static.
(getExpression): Return void.
(select_gp_value): Abort if gp_value is non-zero.  Delete call to non-existent
bfd_set_gp_value.
(alpha_validate_fix): Function deleted.
(alpha_frob_symbol): Function deleted.
(alpha_local_label): Function deleted.
(alpha_frob_file): Renamed from alpha_end.
* config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix, alpha_local_label,
alpha_end): Declarations deleted.
(alpha_gp_value, alpha_frob_file): Declare.
(tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
(LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
(md_convert_frag): Simplified slightly.
(tc_frob_file): New macro.
1994-01-30 23:21:55 +00:00
Ian Lance Taylor
1f029792a2 * config/obj-coff.c (obj_coff_section_header_append): Do not
declare if BFD_ASSEMBLER.
	(stack_pop): Correct test for stack underflow.
	(obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
	obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
	type of ignored argument to avoid gcc warning.
	(align): Removed unused function.
1994-01-28 16:30:29 +00:00
Ken Raeburn
0b233d31df removed rcs cruft 1994-01-28 05:38:41 +00:00
Roland Pesch
05a0e43b83 Many scattered edits, primarily on recent mods.
Ancient "Internals" text deleted.
1994-01-28 04:32:37 +00:00
Ken Raeburn
81f6013aa2 Various changes: alpha support, fx_done handling, EMIT_SECTION_SYMBOLS, ... 1994-01-28 01:42:05 +00:00
Ken Raeburn
d5bd8e851d Comment change: Soften recommendations against supplying sym+addend operands,
since it works, and gas does it.  It's merely wasteful of space.
1994-01-28 01:40:22 +00:00
Ken Raeburn
5749c49700 New Alpha support files, based on files from CMU.
Still to do:
 - fix floating-point handling
 - figure out if we can adapt to using ../opcodes/alpha-opc.h
 - gcc bootstrap testing
 - 32-bit mode support?
 - test cross-assembly
1994-01-28 01:37:02 +00:00
Ken Raeburn
98c6bbbe43 * as.h: If __GNUC__ and inline are both undefined, define inline away.
* write.c (cvt_frag_to_fill): Don't assume that fr_var for rs_align or rs_org
frags will be 1.
(relax_segment): For rs_align, if fr_var is not 1, complain if
required padding is not a multiple of the size of the pad pattern.
(fixup_segment): Leave gp-relative relocations alone.  For pcrel relocations
referring to the same segment, clear fx_pcrel when clearing fx_addsy.
* as.h: Adjust comments on rs_align.

* write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c: Query the fx_done
field instead of fx_addsy to see if the fixup still needs to be applied.  Set
fx_done and clear fx_addsy both, for now.  If TC_HANDLES_FX_DONE isn't defined,
assume md_apply_fix will only clear fx_addsy, and set fx_done accordingly after
returning.
* config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.

* config/obj-coff.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol): Defined
here, static.

* config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before including aout/aout64.h.

* write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false, don't write
out a section symbol even if it's used in a relocation; assume relocations will
handle section numbers somehow.  Rename "punt_it" label to "punt_it_if_unused"
to reflect it's true use.
(EMIT_SECTION_SYMBOLS): Default to 1.
(adjust_reloc_syms): Don't create a new symbol for an absolute
reference; just use the absolute section symbol.
(write_relocs): Make printout of reloc values dependent on flag DEBUG3, not
DEBUG2.
* config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
* config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
1994-01-28 01:21:53 +00:00
Ken Raeburn
351878df5a whitespace/formatting changes 1994-01-28 00:58:00 +00:00
Ken Raeburn
c1b625be7b whitespace/comment changes 1994-01-28 00:21:03 +00:00
Ken Raeburn
eec0de3f43 * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol): Deleted.
(symbol_begin): Moved to end of file, so function inlining can work better.
(fb_label_count, fb_label_max): Default C static initializers are sufficient.
* symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol): Declarations
deleted.
1994-01-28 00:03:38 +00:00