Commit graph

1841 commits

Author SHA1 Message Date
Ian Lance Taylor
4bb0cc41f2 * config/tc-mips.c (mips_cpu): Initialize to -1.
(md_begin): Don't mips_cpu if it was already set.
	(md_parse_option): For -mipsN, don't set mips_cpu if it was
	already set.  For -mcpu=, just set mips_cpu, not mips_isa.
1994-10-25 18:47:09 +00:00
Ian Lance Taylor
9da4c5d130 * config/tc-mips.c (md_pseudo_table): If OBJ_ELF, handle .section.
(s_elf_section): New static function.
	* ecoff.c (ecoff_build_symbols): Don't abort if we don't recognize
	the section when setting the storage class; default to sc_Data.
1994-10-22 00:51:53 +00:00
Jeff Law
a7f1f2a8ea * gas/hppa/reloc/blebug3.s: New test.
* gas/hppa/reloc/reloc.exp: Run it.
1994-10-20 06:56:55 +00:00
Jeff Law
e443a02120 * config/tc-hppa.c (md_apply_fix): Set new_val to 8 for all
fixups to branch instructions (not just pc-relative ones) which
	will generate SOM relocations.
1994-10-20 06:45:55 +00:00
Ian Lance Taylor
030915dc25 * config/tc-a29k.c: Include ctype.h with angle brackets.
(define_some_regs): Add new special register names defined on the
	29040.
	(parse_operand): Add argument opt.  If non-zero, don't warn about
	a missing operand.
	(machine_ip): If handling argument type 'I', pass opt as non-zero
	to parse_operand.  Handle new optional operand type 'I'.
	(md_undefined_symbol): Handle special register names (srNN).
1994-10-19 17:46:43 +00:00
Ian Lance Taylor
683f474317 * write.c (renumber_sections): New static BFD_ASSEMBLER function.
(write_object_file): Call it after removing gas created sections.
1994-10-18 04:46:45 +00:00
Ian Lance Taylor
62d396892b * symbols.c (symbol_create): Use udata.p, not just udata.
* config/obj-elf.c (obj_ecoff_set_ext): Likewise.
	(elf_get_extr): Likewise.
1994-10-17 23:52:27 +00:00
Ian Lance Taylor
f10a96cbec * read.c (read_a_source_file): The second argument to as_where is
unsigned int *, not int *.
1994-10-17 22:07:16 +00:00
Jeff Law
ea315e99d6 * gas/hppa/reloc/reduce3.s: New test.
* gas/hppa/reloc/reloc.exp: run it.
1994-10-17 08:45:18 +00:00
Jeff Law
71b07521c6 * gas/hppa/reloc/reloc.exp (r_no_reloc): Tweak output to match
current reality.
1994-10-17 04:27:13 +00:00
Ken Raeburn
2d928291b6 From 2.5 release:
* Makefile.in (BISON): Use bison -y, not bison.

* Makefile.in (VERSION): Updated to 2.5.
(clean-here): Delete stamp-mk.com.
(distclean): Delete .gdbinit.

Also, note release in changelog.
1994-10-14 23:08:21 +00:00
Ken Raeburn
d5a0eeacfc te-netbsd532.h -> te-nbsd532.h 1994-10-13 15:45:43 +00:00
Ken Raeburn
ba49e48d26 Renamed config/te-netbsd532.h to te-nbsd532.h. 1994-10-13 00:33:21 +00:00
J.T. Conklin
4992dbc960 * config/cplus-dem.c: Removed. It isn't used. Even if it was,
it's better to use the one in libiberty.
1994-10-12 23:35:54 +00:00
Ken Raeburn
2cc0357f7f * symbols.c (resolve_symbol_value, case O_symbol): Undo last change; it breaks
the rs6000 support, and doesn't seem to be needed.
1994-10-12 22:53:26 +00:00
J.T. Conklin
eab55c1cef * config/tc-i386.h,te-netbsd532.h (TARGET_FORMAT): Changed to
a.out-<arch>-netbsd to match corresponding changes in BFD.
1994-10-12 19:01:58 +00:00
Ian Lance Taylor
f0b556a2d3 * config/tc-ppc.c (ppc_fix_adjustable): Resolve symbol values
rather than explicitly adding the frag address.
	* config/obj-coff.c (coff_frob_symbol): Add a zero entry to mark
	the end of the line numbers; this replaces the zero entry which
	used to be added by coff_add_linesym, removed Oct 7.
	(coff_adjust_section_syms): Ignore sections with no seginfo.
Update the RS/6000 assembler for recent gas changes.
1994-10-12 18:11:52 +00:00
Ken Raeburn
3256c4b58e * Makefile.in (bootstrap, bootstrap2, bootstrap3): Create a "stage" symlink to
the appropriate stage* directory, and use it instead in the -B options.
(comparison): Revert yesterday's change.
1994-10-12 05:46:05 +00:00
Ken Raeburn
15dc8a201f * config/tc-sparc.c (tc_gen_reloc): For non-a.out relocations, if pc-relative,
use fx_offset only, ignore address of relocation.
1994-10-12 05:41:45 +00:00
Ian Lance Taylor
c8caa6c5f2 * config/tc-mips.c (mips_ip): Don't use S_IS_LOCAL when checking
for an embedded PIC switch expression, since the definition of
	S_IS_LOCAL was changed.
1994-10-11 19:25:42 +00:00
Ken Raeburn
6d60424f34 * Makefile.in (comparison): When comparing as.new or gasp.new, try running the
binary through sed to avoid differences due to "stage1" or "stage2" having been
written into the binary.
1994-10-11 19:12:55 +00:00
Ken Raeburn
15a90f75cb elf fixes 1994-10-08 07:55:52 +00:00
Ken Raeburn
ecee402702 coff aux/lineno, m88k, vms/flagseen changes 1994-10-07 22:06:01 +00:00
Ken Raeburn
4325bcb990 * config/obj-coff.c (do_relocs_for): Test only TC_KEEP_FX_OFFSET, rather than
both it and TC_M88K.
(coff_adjust_section_syms): New function.
(coff_frob_section): For non-empty sections, create aux entry for the section
symbol, indicating the size.
(n_line_nos): New variable.
(add_lineno): Increment it.
(coff_add_linesym): Increment n_line_nos, don't call add_lineno.
(coff_frob_file): New function; map coff_adjust_section_syms over sections.
(obj_coff_line): Only reset line_base for .bf symbols.
* config/obj-coff.h (coff_adjust_section_syms, coff_frob_file): Declare.
(obj_frob_file): New macro.

* config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Renamed from
obj_frob_forward_symbol, and rewritten for new parameter list.
1994-10-07 22:02:54 +00:00
Ken Raeburn
d58bbca1b5 define TC_KEEP_FX_OFFSET 1994-10-07 22:00:18 +00:00
Ken Raeburn
352d36185d Mon Oct 3 21:02:38 1994 Pat Rankin (rankin@eql.caltech.edu)
* config/obj-vms.h (S_IS_LOCAL): fix obsolete flagseen[] reference.
1994-10-07 22:00:01 +00:00
Ian Lance Taylor
b2d7b32596 * config/obj-coff.c (coff_frob_section): Remove assert about
section alignment.
	* config/tc-sparc.c (md_section_align): Use section alignment, not
	xvec align_power_min field.
1994-10-05 04:13:29 +00:00
Jeff Law
05d0c2cce6 Add ChangeLog entry that (apparently) I nuked. 1994-10-04 23:30:39 +00:00
Ken Raeburn
13a336c4a1 Rewrote make-gas.com handling so that only "make realclean" will remove it. 1994-10-01 04:30:10 +00:00
Ken Raeburn
f54b111403 got rid of make-gas.com 1994-10-01 04:24:38 +00:00
Ken Raeburn
dc87e0ce66 vms make-gas.com stuff 1994-10-01 04:20:16 +00:00
Ken Raeburn
df36a2aa30 Now gets rebuilt by "make diststuff". 1994-10-01 04:18:46 +00:00
Ken Raeburn
367d6244da (diststuff): Build make-gas.com.
(clean, mostlyclean): Delete make-gas.com.
(realclean): Separate target, depend on clean and distclean.
1994-10-01 04:17:56 +00:00
Ken Raeburn
c0b8690d94 Fri Sep 30 19:05:20 1994 Pat Rankin (rankin@eql.caltech.edu)
* vmsconf.sh (make-gas.com): handle DCL verification to enable
	sensible feedback to the user while gas is being built.
1994-10-01 04:15:45 +00:00
Ken Raeburn
76a390e234 i386 pic changes
as.h: __STDC__ -> varargs
write.* PLT changes
write.c,symbols.c debug changes
1994-10-01 03:52:42 +00:00
Ken Raeburn
10ff87e954 yesterday's gdbinit changes 1994-09-30 20:22:59 +00:00
Ken Raeburn
1df6e2665e (all): Depend on .gdbinit.
(.gdbinit): Rebuild from gdbinit.in by running config.status.
1994-09-29 23:03:07 +00:00
Ken Raeburn
9dc6c00f8d * write.c (print_fixup): Print source location on first line. Show fx_r_type
and fx_addsy fields.
1994-09-29 23:00:45 +00:00
Jeff Law
3a4b4b1ec0 * gas/hppa/reloc/reduce.s: Renamed from relocreduce.s
* gas/hppa/reloc/reduce2.s: Renamed from relocreduce2.s
	* gas/hppa/reloc/r_no_reloc.s: Renamed from r_no_relocbug.s
	* gas/hppa/reloc/reloc.exp: Changed accordingly.
1994-09-29 03:29:07 +00:00
Jeff Law
017c725468 * gas/hppa/reloc/reduce.s: Renamed from relocreduce.s
* gas/hppa/reloc/reduce2.s: Renamed from relocreduce2.s
	* gas/hppa/reloc/r_no_reloc.s: Renamed from r_no_relocbug.s
1994-09-29 03:25:03 +00:00
Ken Raeburn
b8480abc20 misc changes to configure.in, gdbinit.in, as.h, symbols.c 1994-09-28 23:24:07 +00:00
Ken Raeburn
4bdaf48eab Move "break abort" to end, in case gdb complains. 1994-09-28 23:16:59 +00:00
Ken Raeburn
9de0bdfba9 forgot to hit ^x^s after deleting "#if 1" lines 1994-09-28 20:31:32 +00:00
Ken Raeburn
e702f6e6e3 (resolve_symbol_value, case O_symbol): Don't do any processing if add_symbol is
undefined or in expr_section.
(resolve_symbol_value, case O_add): For symbol plus constant-valued symbol,
convert to O_symbol and re-reduce.
(S_GET_VALUE): If symbol needs resolving, resolve it.

(indent_level): No longer static.
(print_symbol_value_1): Don't print frag address if it matches
zero_address_frag.  Don't print "resolving" if already resolved.  Print segment
name.  Don't call print_expr_1 on an undefined symbol.
(print_expr_1): Fix whitespace before printing X_add_number.
1994-09-28 20:27:31 +00:00
Ian Lance Taylor
620a590eed * Makefile.in (gasp.o): Depends upon config.h. 1994-09-28 19:28:24 +00:00
Ken Raeburn
9ff0f5efd6 write.c changes, Makefile.in version update 1994-09-28 19:22:46 +00:00
Ken Raeburn
b21e6e53df updated version to 2.4.90 1994-09-28 19:21:20 +00:00
Ken Raeburn
4acf8c78e6 (fix_new_exp): Handle O_add by creating an expression-valued symbol, and
calling fix_new_exp recursively.
(adjust_reloc_syms): If a fixup's symbol value is a sum of an undefined symbol
and a constant, fold the constant into the fixup, and refer to the undefined
symbol directly.  Then process the fixup again from scratch.
(write_object_file): Before calling adjust_reloc_syms, make a pass through the
symbol list trying to resolve values.

(print_fixup): New routine, for debugging.
(write_relocs): Call bfd_install_relocation.  Deleted various hacks for working
around problems with bfd_perform_relocation.
1994-09-28 19:20:11 +00:00
Ken Raeburn
648acaa0c0 * expr.c (make_expr_symbol): No longer static. Use symbol_create, not
symbol_new, for symbols holding expression values.
* expr.h (make_expr_symbol): Move declaration here.
1994-09-28 19:09:16 +00:00
Ian Lance Taylor
fac75dfebb * gas/mips/beq.d, gas/mips/beq.s: Test that unconditional branch
overflows are correctly converted to jumps.
1994-09-28 17:42:30 +00:00
Ian Lance Taylor
3f42c69e79 * config/tc-mips.c: Include subsegs.h.
(md_apply_fix): If an unconditional b or bal overflows, and we are
	not assembling PIC code, replace it with a j or jal.
1994-09-28 17:41:07 +00:00
Ian Lance Taylor
7b777690a8 * config/tc-mips.c (md_apply_fix): Correct branch overflow test.
Use as_bad_where and as_warn_where rather than as_bad and as_warn.
1994-09-28 15:55:31 +00:00
Ian Lance Taylor
fbc83deff8 * gas/mips: Add test cases for PIC code, both SVR4 style and
-membedded-pic style.
1994-09-26 21:43:26 +00:00
Stan Shebs
972b958d3a No longer need to keep/lose any MPW stuff 1994-09-24 21:29:22 +00:00
Stan Shebs
4c8b1e0774 * mpw-make.in (config.h): Add defines from ho-mpw.h directly.
* config/ho-mpw.h: Remove.
1994-09-24 21:27:44 +00:00
Ken Raeburn
cacd15c40d typo fixes from pat rankin 1994-09-23 22:56:48 +00:00
Ken Raeburn
4d61cba987 some news 1994-09-23 19:44:17 +00:00
Ian Lance Taylor
5fe67aa8fb * gas/mips: New directory with MIPS specific test cases. 1994-09-23 19:10:21 +00:00
Ian Lance Taylor
144659ab48 * symbols.h (copy_symbol_attributes): Declare. 1994-09-23 18:54:40 +00:00
Ken Raeburn
3607cd9780 delete -> remove 1994-09-23 02:06:14 +00:00
Kung Hsu
bdaa198ad5 Modified Files:
ChangeLog ecoff.c read.c

        * ecoff.c (ecoff_generate_asm_lineno): check if
        current_stabs_filename is NULL before strcmp.
        * read.c (read_a_source_file): fxi a bug in generate_asm_lineno
        checking.
1994-09-22 20:43:39 +00:00
Ken Raeburn
8068b96a5f vms, ho-*.h, sym attr changes just checked in 1994-09-21 22:23:30 +00:00
Ken Raeburn
ef19887066 Combine two existing mechanisms for copying symbol attributes, and fix a bug:
* symbols.c (copy_symbol_attributes): New function.  Copies BFD symbol flags
and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
(resolve_symbol_value, case O_symbol): Call it, if X_add_number is zero.  Don't
call obj_frob_forward_symbol.
* read.c (pseudo_set): Call copy_symbol_attributes, but only if X_add_number is
zero.
* config/obj-elf.h (obj_frob_forward_symbol): Deleted.
1994-09-21 22:21:25 +00:00
Ken Raeburn
ba466c4c9d host file changes 1994-09-21 22:18:06 +00:00
Ken Raeburn
fd4b113130 vms changes from pat rankin 1994-09-21 22:17:23 +00:00
Ken Raeburn
b0becf0c8c delete old host-specific files 1994-09-21 22:16:42 +00:00
Ian Lance Taylor
87bbf920bb * config/tc-ppc.c (ppc_current_block): New static variable.
(ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
	ppc_current_block.  Don't move around any stab symbol, just those
	for common symbols.
	(ppc_bs): Set ppc_current_block.
	(ppc_es): Clear ppc_current_block.
	(ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
	from the csect of the enclosing block.
PR 5658.
1994-09-21 17:43:17 +00:00
Ian Lance Taylor
3af9783a6e * config/tc-mips.c (insns_since_cache_access): Remove.
(append_insn): Remove setting of insns_since_cache_access, and
	special 4600 handling; it turns out not to be required.
PR 5664.
1994-09-21 17:03:04 +00:00
Stan Shebs
baf6f14970 * mpw-config.in: Don't create host.h.
* mpw-make.in (config.h): Add in contents of ho-mpw.h.
	* config/ho-mpw.h (TRUE_FALSE_ALREADY_DEFINED, WANT_FOPEN_BIN,
	HAVE_ERRNO_H): Define.
1994-09-21 00:45:25 +00:00
Ian Lance Taylor
e8d4d4758b * config/tc-mips.c (md_shortopts): Remove E.
(md_longopts): Add EB and EL.
	(md_parse_option): Handle -EB and -EL as separate options, rather
	than as a single -E option with an argument.
1994-09-20 20:16:24 +00:00
Jeff Law
8268e3ec91 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions
involving global symbols too.
1994-09-19 18:47:37 +00:00
Ken Raeburn
aa4f6c5601 keep gdbinit.in, not .gdbinit 1994-09-19 16:49:38 +00:00
Ken Raeburn
35e70f5826 vms work, pseudo_set fixes 1994-09-19 16:40:54 +00:00
Ken Raeburn
80d80c640a * read.c (pseudo_set, case O_symbol): If OBJ_COPY_SYMBOL_ATTRIBUTES is defined,
invoke it.
[BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.

Also minor VMS support from Pat Rankin.
1994-09-19 16:40:00 +00:00
Ken Raeburn
9a36b83fcb * read.c (pseudo_set, case O_symbol): If OBJ_COPY_SYMBOL_ATTRIBUTES is defined,
invoke it.
[BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
1994-09-19 16:37:32 +00:00
Ken Raeburn
a991808842 more vms work from Pat Rankin 1994-09-19 16:36:31 +00:00
Ken Raeburn
eb3028aa95 * as.h: Test NEED_DECLARATION_*, not NEED_*_DECLARATION.
* configure.in: Test for remove, not delete.  Fix cross-assembler test.
* as.h: Test HAVE_REMOVE, not HAVE_DELETE; define unlink to remove, not delete.
1994-09-19 16:17:53 +00:00
Ian Lance Taylor
d1578de3b0 * config/obj-coff.c (c_dot_file_symbol): Use bfd_abs_section_ptr,
not &bfd_abs_section.
1994-09-19 16:06:43 +00:00
Ken Raeburn
b0ed204dbf vax test 1994-09-17 05:28:13 +00:00
Ken Raeburn
3892cd1227 new test for vax 1994-09-17 05:08:01 +00:00
Ken Raeburn
ca82f2cd12 keep vax dir 1994-09-17 05:03:44 +00:00
Ian Lance Taylor
e36830425e * expr.c (clean_up_expression): Use addressT, not bfd_vma. 1994-09-15 22:50:44 +00:00
Jeff Law
fcacfef6ae * expr.c (expr): Don't reduce the difference of two symbols in the
same frag if the symbols are not in normal sections.
1994-09-14 03:53:14 +00:00
Jeff Law
75c28b4966 * config/obj-som.h (S_SET_OTHER, S_SET_TYPE): Delete a.out crud.
(S_SET_DESC, S_GET_OTHER, S_GET_TYPE, S_GET_DESC): Likewise.
	(obj_attach_unwind_info): Do not define.  Not needed anymore.
	* config/tc-hppa.c: Delete whitespace at EOL.
	(struct hppa_fix_struct): Delete fx_unwind field and all references.
	(fix_new_hppa): Last arg is now a pointer to an int.  Do not
	call obj_attach_unwind_info anymore.  For SOM R_ENTRY and R_EXIT
	fixups, store 32bits of unwind information in the fx_addnumber
	field of the fixup.
	(md_assemble, pa_entry, process_exit, pa_procend): For SOM R_ENTRY
	and R_EXIT fixups, pass a NULL pointer to fix_new_hppa, and a
	pointer to 32 bits of unwind info.
	(tc_gen_reloc): For SOM R_ENTRY and R_EXIT fixups, set the symbol
	pointer to the dummy symbol; set the addend field to fx_addnumber.
	(pa_comm, pa_equ, pa_type_args, pa_import): Use bfd_XXX_section_ptr
	rather than &bfd_XXX_section.
1994-09-14 02:20:24 +00:00
Ken Raeburn
d7152d074b 386_GOTPC fix from ericy 1994-09-14 01:43:21 +00:00
Ken Raeburn
26f4447a60 Some Vax and VMS bug fixes from Pat Rankin. 1994-09-14 01:30:56 +00:00
Ken Raeburn
b9419dd224 Do unlink/delete test properly.
Replace HO_VMS tests with VMS.
1994-09-14 00:54:00 +00:00
Steve Chamberlain
a989856340 Tue Sep 13 16:45:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
* config/obj-coff.c (do_relocs_for):  If TC_KEEP_FX_OFFSET
	is defined, put the tx_offset into the r_offset.
	* config/tc-sh.c (line_comment_chars): Add #
	(tc_reloc_mangle): Deleted.
	* config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
	(TC_RELOC_MANGLE): Delete.
1994-09-14 00:01:45 +00:00
Steve Chamberlain
6613462ec3 * config/obj-coff.c (do_relocs_for): If TC_KEEP_FX_OFFSET
is defined, put the tx_offset into the r_offset.
	* config/tc-sh.c (line_comment_chars): Add #
	(tc_reloc_mangle): Deleted.
	* config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
	(TC_RELOC_MANGLE): Delete.
1994-09-13 23:53:52 +00:00
Ken Raeburn
460531dad9 Use EXIT_SUCCESS and EXIT_FAILURE in all exit calls.
Use exit rather than returning from main, for consistency on VMS.
Call as_fatal instead of as_bad or as_warn followed by exit.
1994-09-13 23:07:48 +00:00
Ken Raeburn
28d3e4a3f8 * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall): Rewrite
handling of program_transform_name.

* configure.in: Test for "unlink" and "delete", define USE_DELETE_FOR_UNLINK if
only the latter is found.  Not expected to be triggered on UNIX/POSIX systems.
* acconfig.h (USE_DELETE_FOR_UNLINK): Undef here, provide comments.

Update for autoconf 1.118:
* gdbinit.in: New file, created from old .gdbinit.
* .gdbinit: Deleted.
* aclocal.m4 (GAS_GDBINIT): Deleted.
* configure.in: Don't use it.  Instead, generate .gdbinit from gdbinit.in.
Don't substitute cpu_type, obj_format, emulation, atof.  Switched order of
AC_LINK_FILES arguments.  Use AC_PREREQ to ensure that older versions of
autoconf aren't used.
* Makefile.in: Added @configure_input@ line.
(configure): Deleted rule.

[regenerated conf.in, configure]
1994-09-13 22:27:20 +00:00
Ian Lance Taylor
430a399719 * config/obj-coff.c (fixup_segment): After handling the difference
of two symbols from the same segment, set fx_subsy to NULL, to
	satisfy existing TC_COUNT_RELOC macros.
1994-09-13 17:06:26 +00:00
Jeffrey Osier
ece44a1fb6 gasp.texi: a few edits thanks to crash 1994-09-13 09:52:15 +00:00
Ken Raeburn
e23b25eccd Generate .gdbinit file:
* aclocal.m4 (GAS_GDBINIT): New macro.
	* configure.in: Use it.
	* configure: Regenerated.
(using autoconf-1.117)
1994-09-13 05:54:13 +00:00
Jeff Law
7e9825f0b7 * gas/hppa/reloc/r_no_relocbug.s: New test.
* gas/hppa/reloc/reloc.exp: Run it.

	* gas/hppa/reloc/reloc.exp (do_function_reloc_bug): Update
	expected output.
1994-09-13 04:22:49 +00:00
Ken Raeburn
c570d36139 PIC enhancements just checked in (based on work of Paul Kranenburg and Eric
Youngdale).

New debugging code for .gdbinit.  "this file generated..." msg in config.h.
1994-09-13 02:20:55 +00:00
Ken Raeburn
f0b37b4ad6 * tc-i386.c (TC_RELOC): New macro.
(struct _i386_insn): New field disp_reloc.
(GOT_symbol): New variable.
(operand_special_chars): Added square-brackets and at-sign.
(reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not NO_RELOC, just
return it.
(reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
(BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More dummy macros.
(tc_i386_fix_adjustable): New function.  Returns zero if symbol in fixup is not
local, to prevent relocations against externals from being dropped.
(md_assemble): Initialize disp_reloc field to NO_RELOC.  Pass disp_reloc field
to reloc() function, and use TC_RELOC to generate value to pass to fix_new_exp.
(md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC reloc.
(i386_operand): Initialize disp_reloc field to NO_RELOC.  Handle @GOTOFF, @PLT,
@GOT operands.  For GOTOFF relocations with local symbols, force generation of
the section symbol.
(md_estimate_size_before_relax): If GOT_symbol exists, decide we're generating
PIC code, and convert relocations against undefined symbols from PCREL to
PLT32.
(md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking relocs.
(md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set and return
GOT_symbol if it matches.
(F, MAP): Move macro definitions outside function.
(tc_gen_reloc): Only switch on size and pcrel if code wasn't already supplied
as PLT32. GOT32, GOTOFF, or GOTPC.  Convert BFD_RELOC_32 using GOT_symbol into
GOTPC.

* tc-i386.h (TC_RELOC, tc_fix_adjustable, TC_RELOC_GLOBAL_OFFSET_TABLE,
TC_RELOC_RTSYM_LOC_FIXUP): New macros.
(NEED_FX_R_TYPE): Define.
(LOCAL_LABEL): Accept ".X" prefix too.
(GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
1994-09-13 02:15:23 +00:00
Ken Raeburn
d9d6f09465 * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup before
processing same-section pcrel relocations.
(TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
1994-09-13 02:11:25 +00:00
Ken Raeburn
d90f530be0 * expr.c (make_expr_symbol): If operator is O_symbol and X_add_number is zero,
just return the symbol.  If operator is O_constant, resolve the symbol's value
before returning.
(operand): Permit use of "[]" for grouping.
(clean_up_expression): For difference of two symbols in the same frag, add the
difference of their offsets into X_add_number.
(expr): Reduce difference of two symbols in same frag to their difference.
1994-09-13 02:10:43 +00:00
Ken Raeburn
1e84ff7ed4 * Makefile.in (config-stamp): Add a "this file generated by make" message to
config.h.
1994-09-13 01:51:26 +00:00
Ken Raeburn
dacf29ea1f * .gdbinit (pe, ps): Define new commands.
* symbols.c (indent_level): New static variable.
(indent, print_expr_1, print_symbol_value_1, print_symbol_value, print_expr):
New functions.
1994-09-13 01:50:02 +00:00
Stan Shebs
97e3526ee7 * mpw-make.in (ALL_CFLAGS): Add definition of HAVE_STDARG_H,
include of ::libiberty:.
	(config.h): Ifdef contents on GAS_VERSION.
	config/ho-mpw.h: Remove redefinitions of true and false.
1994-09-13 00:14:18 +00:00
Ian Lance Taylor
1779d515da * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
reportedly to be used on Irix 6.
1994-09-12 22:36:08 +00:00
Ian Lance Taylor
c1444ec48f * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
(s_mips_globl): New static function; needed for Irix 5 support.
	* ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
	external symbol with no type, set the type to st_Proc rather than
	st_Global.  Don't set the index of an external st_Proc or
	st_StaticProc symbol unless it is also a local symbol.
1994-09-12 22:11:18 +00:00
Ian Lance Taylor
1b434ced73 * read.c (read_a_source_file): The second argument to as_where is
unsigned int *, not int *.
1994-09-12 21:52:43 +00:00
Ken Raeburn
ba08215a8c keep arm files 1994-09-09 18:51:10 +00:00
Ken Raeburn
6c3bc2b8f6 keep arm files 1994-09-09 18:35:11 +00:00
Ken Raeburn
353acf312b forgot an entry for makefile dependency changes 1994-09-09 18:34:25 +00:00
Ken Raeburn
f661ed29a8 keep arm dir 1994-09-09 18:34:24 +00:00
Kung Hsu
326d16cac7 Modified Files:
ChangeLog read.h read.c ecoff.h ecoff.c

        * read.h : ditto.
        * read.c (read_a_source_file): if no file when inst is read, set
        generate_asm_lineno to true.
        * ecoff.h : change name to generate_asm_lineno and add function
        ecoff_no_current_file.
        * ecoff.c : change name to generate_asm_lineno.
        * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate
        ecoff style line for asm file.
1994-09-09 01:05:28 +00:00
Kung Hsu
ad14517d3c Modified Files:
obj-ecoff.h obj-elf.h

        * config/obj-ecoff.h : Change names to  OBJ_GENERATE_ASM_LINENO,
        and generate_asm_lineno.
        * config/obj-elf.h : ditto.
1994-09-09 01:02:48 +00:00
Ian Lance Taylor
eb4fd16f4d * config/obj-coff.c (size_section): Do an fprintf to stderr rather
than a printf.
	(fixup_segment): Use as_bad_where rather than as_bad.
1994-09-08 23:46:00 +00:00
Steve Chamberlain
20c9d49a4e * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing nothing
becomes macro doing nothing.
1994-09-08 00:52:23 +00:00
Steve Chamberlain
351efc8130 Wed Sep 7 17:21:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
* config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing nothing
	becomes macro doing nothing.
1994-09-08 00:38:17 +00:00
Ken Raeburn
1be01033cf fix config.status, Makefile dependencies 1994-09-08 00:15:49 +00:00
Ken Raeburn
723735327a tc_gen_reloc, i386-linux, brokensed changes 1994-09-08 00:00:08 +00:00
Ken Raeburn
ade614d507 (tc_gen_reloc): Use bfd_get_reloc_code_name in error message. 1994-09-07 23:58:32 +00:00
Ken Raeburn
fa156ffebe Remove 'brokensed' hack, autoconf should make it unnecessary now. 1994-09-07 23:52:59 +00:00
Ken Raeburn
ef82a5162d Don't set bfd_gas for i386-linux a.out configurations. 1994-09-07 23:52:31 +00:00
Ken Raeburn
bf111c9f7d Update for autoconf beta 1.112:
* aclocal.m4 (GAS_CHECK_DECL_NEEDED, GAS_WORKING_ASSERT): New macros.
* configure.in: Use them.  Use AC_ARG_PROGRAM (now provided by autoconf)
instead of my hacked-up AC_PROGRAM_TRANSFORM_NAME.  Move test for CROSS_COMPILE
just before AC_FUNC_ALLOCA, and emit a message to try to ease confusion about
autoconf's "cross-compiling" message.
* acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_FREE,
NEED_DECLARATION_ERRNO): Renamed from NEED_*_DECLARATION.
* configure, conf.in: Regenerated.
1994-09-07 23:34:23 +00:00
Ian Lance Taylor
c8570de863 * configure.in: Check ${host} and ${target} rather than
${host_canon} and ${target_canon}.
	* configure: Likewise.
1994-09-07 16:53:27 +00:00
Ian Lance Taylor
8c63448afe * config/tc-mips.c (mips_cpu): New static variable.
(insns_since_cache_access): New static variable.
	(md_begin): Set mips_cpu as well as mips_isa.
	(append_insn): If mips_cpu is 4600, require four nop instructions
	between an instruction which accesses the cache and certain CACHE
	instructions.  Keep track of the number of instructions seen since
	an instruction which accesses the cache.
	(md_parse_option): Set mips_cpu as well as mips_isa.
PR 5433.
1994-09-06 15:51:09 +00:00
Ken Raeburn
a5a2f1562b * doc/Makefile.in (VPATH): Define using @srcdir@.
(prefix, program_transform_name, exec_prefix): Use autoconf style @-substitutions.
1994-09-05 11:21:16 +00:00
Ken Raeburn
318b02b6b9 ARM Acorn/RISCiX target and host patches from Richard Earnshaw 1994-09-05 10:53:00 +00:00
Ian Lance Taylor
3ffbc9073e * ecoff.c (add_file): Don't try to generate line numbers if the
symbol table has been frozen.
1994-09-02 20:42:28 +00:00
Ken Raeburn
7f64fd4e27 remove alloca stuff from atof-generic.c 1994-09-01 01:35:19 +00:00
Ken Raeburn
c7072f5689 * as.h (volatile): Don't test or define here; not needed.
(alloca): Replace alloca-conf.h inclusion with code recommended in autoconf
documentation.  Include config.h first.

Makefile.in (INCLUDES): Deleted last patch (using -I..).
1994-09-01 00:48:30 +00:00
Ken Raeburn
36e889afae autoconf bug fix -- config.status exit status should be 0 1994-09-01 00:05:06 +00:00
Ken Raeburn
1bc37618f0 Makefile.in (INCLUDES): Include "-I.." for libiberty/alloca-conf.h. 1994-08-31 23:51:38 +00:00
Ken Raeburn
fb589130a8 * Makefile.in (prefix, exec_prefix): Use @-subtitutions.
* aclocal.m4 (AC_OUTPUT_LINKS): Deleted redefinition, since autoconf 1.109 has
this fixed.
* configure.in: Don't change quote characters around AC_MSG_ERROR invocation.
Don't use AC_HEADER_STDC, since it requires running a program.  Cache
NEED_*_DECLARATION values.
* configure, conf.in: Regenerated with a modified autoconf 1.109.
1994-08-31 21:50:38 +00:00
Ian Lance Taylor
bdee23af17 * configure.in, configure: Initialize bfd_gas to no. 1994-08-31 15:35:04 +00:00
Ken Raeburn
a48f997a6b fix mpw problem with ".." for stan 1994-08-30 23:37:15 +00:00
Ian Lance Taylor
0c49642db9 * config/tc-ppc.c (md_apply_fix): Don't generate a reloc when a
symbol is used as an offset into a CSECT that is not a TOC.  These
	types of loads are generated by gcc -mminimal-toc.
1994-08-29 20:14:13 +00:00
Ken Raeburn
e9296bdb6f * as.h (flag_*): Added comments describing meanings of some of these variables.
(struct frag): Add some comments about the ns32k-specific fields and why
they're here.
(SIZEOF_STRUCT_FRAG): Cast addresses to char*, not int.
(flag_print_statistics): Declare.

* as.c (parse_args): Set flag_print_statistics instead of statistics_flag.
Options array is now const.  Added new option "dump-config"; if specified,
print TARGET_ALIAS, TARGET_CANONICAL, TARGET_CPU, TARGET_OBJ_FORMAT, and
TARGET_FORMAT, if defined.
(main): Change test to check flag_print_statistics.
(statistics_flag): Deleted.
1994-08-28 22:15:33 +00:00
Ken Raeburn
c72aa0e23d Removed pcrel_adjust and bsr arguments from calling interface of
frag_variant, since they're only used on one machine.  Let that machine
deal with them specially.
1994-08-28 22:01:11 +00:00
Ken Raeburn
65ad84c14e Makefile.in (distclean, realclean): Remove new configure-generated files. 1994-08-28 20:26:27 +00:00
Ken Raeburn
6e71a03b9e keep new autoconf-related files 1994-08-28 20:07:16 +00:00
Ken Raeburn
b11fb93989 Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf.  Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h.  Include signal.h after
as.h.
* as.h: Include alloca-conf.h first.  Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H).  Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first.  Include errno.h only if HAVE_ERRNO_H.  If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H.  Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 07:59:06 +00:00
Ken Raeburn
27bf48ecfe input-file.c: Don't include assert.h here. 1994-08-28 04:06:36 +00:00
Ken Raeburn
aaeee55045 * config/tc-alpha.c: Added various prototypes for static functions.
(in_range): New function, tests whether a value can fit in an N-bit field.
(build_mem, build_operate_n): New functions for constructing opcode values.
(emit_sll_n, emit_ldah_num, emit_addq_r, emit_lda_n): New functions for
emitting single instructions, no longer requiring a recursive call to
md_assemble.
(emit_add64): New function for expanding a REG:=REG+CONST operation into
one or more instructions, to handle wide constants.
(clear_insn): New variable.
(md_begin): Fill it in with zeros and BFD_RELOC_NONE values.
(alpha_ip): Use it to initialize local variable insns.
(alpha_ip, label "immediate" and cases 'P', 'G'): Use emit_add64 for
calculations.
1994-08-28 03:35:40 +00:00
Ken Raeburn
8ef75e2c07 write.c(write_contents): always enable BFD_FAST_SECTION_FILL code 1994-08-26 21:53:59 +00:00
Ken Raeburn
6668a0624d subsegs.c: fix EMIT_SECTION_SYMBOLS handling 1994-08-26 21:49:10 +00:00
Ian Lance Taylor
20ae2fb832 * config/tc-mips.h (LOCAL_LABEL): Define as 0, for compatibility
with native MIPS assembler.
	* configure.in (mips-*-irix*): Don't set emulation.
	* config/te-irix.h: Remove.
With these changes, gas works with mips-tfile.
1994-08-24 23:46:53 +00:00
Ian Lance Taylor
fd4f335ccf * ecoff.c (ecoff_symbol_new_hook): Don't add a new file if we
haven't seen any input files yet.
	* config/tc-alpha.c (md_begin): Just call symbol_create, rather
	than calling symbol_new and then removing the symbol from the
	list.
With these changes, Alpha gas will work with mips-tfile.
1994-08-24 22:10:14 +00:00
Ian Lance Taylor
a2a1a548c7 gcc lint.
* as.c (main): Move a inside the #if 0 block which uses it.
	* ecoff.c (current_stabs_filename): Make const.
	* frags.h (frag_align_pattern): Declare.
	* gasp.c (new_file): Cast isp to long, and use %ld to print it.
	* config/tc-alpha.h (md_operand): Add cast to void.
	(alpha_do_align): Declare argument types.
	(tc_get_register): Declare.
	(alpha_frob_ecoff_data): Declare.
	* config/tc-alpha.c: Include <ctype.h>.
	(s_mask): Don't declare; does not exist.
	(line_comment_chars): Remove /* from descriptive comment.
	(tc_get_register): Remove unused local reg.
	(tc_gen_reloc): Don't bother to compare unsigned to zero.
	(s_base): Correct warning to actually print register number.
	(md_begin): Remove unused locals retval, lose, and i.
	(alpha_fix_adjustable): Move default case inside switch to avoid
	warning.
	(load_symbol_address): Remove unused locals reloc_addr, p, sym,
	and addend.
	(emit_byte_manip_r): Declare types for all arguments.
	(emit_extract_r, emit_insert_r, emit_mask_r): Likewise.
	(emit_sign_extend, emit_bis_r, s_proc): Likewise.
	(alpha_ip): Use sprint_value to print offsetT value.  Remove
	unused local size.  Remove unused label get_macro.
	(alpha_do_align): Make fill const.
	(md_apply_fix): Remove unused label check_zov.
1994-08-24 21:48:18 +00:00
Ian Lance Taylor
904b6037e8 * configure.in: Recognize i586 as a synonym for i[34]86. 1994-08-24 16:48:38 +00:00
Jeff Law
f3b7067941 * gas/config/tc-hppa.c (pa_comm): Set sy_frag for the common
symbol to the zero address frag.
1994-08-16 18:28:12 +00:00
Jeff Law
2cffb4f411 * config/tc-hppa.c (pa_comm): Set sy_resolved for the common
symbol.
1994-08-16 07:54:06 +00:00
Ian Lance Taylor
101fbf7ed7 * config/tc-mips.c (md_begin): Drop "el" from the end of
TARGET_CPU.  Check for mips64orion.
1994-08-12 21:55:42 +00:00
Stu Grossman
a1dafd5511 * configure.in: Recognize ppc-*-netware.
* config/te-ppcnw.h:  New file to support Power-PC/Netware
	configurations.  Currently, it just enables the use of backslash
	escapes in string directives.
1994-08-10 02:47:48 +00:00
Ian Lance Taylor
8e4796369a * config/tc-ppc.c (ppc_stabx): Call expression directly, rather
than via pseudo_set.  If expression is a symbol, move stab symbol
	to just after symbol from expression.
1994-08-09 20:06:58 +00:00
Ian Lance Taylor
c9a89891b5 * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
zero.  Undoes change of June 4, 1993.
1994-08-09 18:11:30 +00:00
Ian Lance Taylor
55933a587a * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
orion.
1994-08-09 15:18:26 +00:00
Steve Chamberlain
79b3ad4725 Fix copyright. 1994-08-08 23:37:38 +00:00
Jeff Law
1503edcce9 * gas/config/tc-hppa.c (md_pseudo_table): Delete redundant
upper-case versions of the pseudo-ops.
1994-08-08 18:10:36 +00:00
Ian Lance Taylor
2cd14ddcae * config/tc-sparc.c (md_apply_fix): If we are going to generate a
non PC relative reloc, don't put the addend in the object file.
1994-08-08 17:46:00 +00:00
Steve Chamberlain
6670b7f3e4 Sat Aug 6 01:15:02 1994 Steve Chamberlain (sac@jonny.cygnus.com)
* as.h: If FOPEN_WB is not defined, do the right thing in a go32
	environment.

Mon Jul 11 11:34:52 1994  Steve Chamberlain  (sac@jonny.cygnus.com)

	* config/tc-h8300.c (pint): New function for handling varying
	size of int pseudo op.
	* doc/as.texinfo: Fix typo describing .h8300h pseduop.
1994-08-06 08:23:09 +00:00
Jeff Law
fbf718862a * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
field in the space chain.
1994-08-01 20:12:41 +00:00
Jeff Law
363d615082 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
hppa_gen_reloc_type.
1994-08-01 08:46:08 +00:00
Jeff Law
907f11fe71 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
hppa_gen_reloc_type.
1994-08-01 08:44:02 +00:00
Ken Raeburn
5e0a90a8d7 * tc-sparc.c (sparc_ip): Check more carefully for conflicting architectures.
(md_parse_option) [NO_V9]: Complain if v9 was selected.
(md_show_usage): Derive architecture list in usage message from
architecture_pname array.
(cypress): Macro deleted.
(op_hash): Don't initialize.
(s_common): Use bfd_und_section_ptr instead of bfd_und_section.
(BSR): New function.
(sparc_ip): Use it for right-shift operations of 32 bits or more.
(sparc_ip): Implement new operand type 'x'.
1994-07-28 23:36:16 +00:00
Ken Raeburn
10db66ecfd I80960XL support (sanitized), misc cleanup:
* config/tc-i960.h (TC_COFF_SET_MACHINE): New macro.  Calls tc_headers_hook.

* config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX was used
previously.
(tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.

* config/tc-i960.c (po_hash): Declaration deleted.
(next_object_file_charP): Ditto.
(regnames, aregs, coj): Now const.
(parse_memop): Static array def_scale now const.
(md_begin): Cast away const when passing hash routines addresses of values in
regnames or aregs.
(md_longopts): Added "link-relax" and "no-relax" hyphenated forms.  Continue to
accept one-word forms.
(struct tabentry, arch_tab): Moved to top level from inside md_parse_option.
Now const.
(md_show_usage): Use arch_tab to generate usage message.  Print hyphenated
forms of relax options.

* config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
TC_S_FORCE_TO_*): Moved from here...
* config/tc-i960.c: ... to here.  Changed DEFINE_I960_AOUT stuff to test
OBJ_AOUT and OBJ_BOUT directly.

* config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ, M1-M3, REG_OPC,
R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F, {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK,
FP_OK, REG_ALIGN, MEMOP, I_*): Macros deleted.

* config/tc-i960.c (ARCH_XL): Define.
(arch_tab): Include XL.
(targ_has_sfr, targ_has_iclass): Handle XL.
(tc_headers_hook): Set flags to F_I960XL for i960XL.
1994-07-27 00:58:19 +00:00
Ken Raeburn
39792caf99 Some bits of COFF cleanup, and i960-coff support:
* config/obj-coff.h: Moved common includes and TARGET_FORMAT definitions
together.
(WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD, OBJ_COFF_OMIT_OPTIONAL_HEADER,
BFD_HEADERS, BFD) [!BFD_ASSEMBLER]: Moved these definitions to the start of the
file, before the includes.
(SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always define these.
(S_GET_ZEROES): Deleted.
(S_SET_ZEROES): Moved to obj-coff.c.

* config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted forward declarations.
(obj_pseudo_table): Moved to one version end of file, conditionalized
internally.
(stack typedef, stack_init, stack_delete, stack_push, stack_pop, tag_hash,
tag_init, tag_insert, tag_find, tag_find_or_make): Moved to one combined
version at top of file, unconditional.  Deleted forward declarations.
(s_get_name): Moved one copy of declarations to start of file.
(def_symbol_in_progress): Ditto.  Don't initialize.
(S_SET_ZEROES): Moved here from obj-coff.h.
(write_object_file): If TC_COFF_SET_MACHINE is defined, call it on the file
headers.

* config/obj-coff.c (seg_info_off_by_4): Now const and static.
(SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
(previous_file_symbol, def_symbol_in_progress, symbol_externP,
symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't bother explicitly
initializing to zero value.

* config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME and
SF_GET_CALLNAME instead of the TC_S_IS_ versions.
1994-07-27 00:37:46 +00:00
Ken Raeburn
f68880ead9 ns32k files; i960xl sanitization 1994-07-26 22:20:48 +00:00
Ken Raeburn
14c11f4482 more description on last change 1994-07-15 23:24:34 +00:00
Ken Raeburn
8cbd903e9c * lib/gas-defs.exp (run_dump_test): New routine for running the
assembler, running objdump or nm (not fully supported) on the
	resulting object file, and comparing the results against a file of
	regular expressions in the test suite, all in one command.
	(fail_phase, slurp_options): New auxiliary routines.
	(regexp_diff): Always return a value.  Fix bugs in actually doing
	the regexp test.

Should make it even easier to write gas test cases, giving Ian even less
excuse for not doing so. :-)
1994-07-15 23:13:10 +00:00
Ken Raeburn
9ca16e0e33 remove atof-ns32k.c 1994-07-15 22:28:22 +00:00
Ken Raeburn
462ab71d9b deleted atof-ns32k.c, no longer used 1994-07-14 21:58:13 +00:00
Ken Raeburn
259e35d4e9 updated ns532 support from Ian Dall 1994-07-14 18:58:06 +00:00
Ken Raeburn
3b6d6f715f * config/obj-aout.c (obj_aout_frob_symbol): Use bfd_ind_section_ptr and
bfd_und_section_ptr.

* subsegs.c (subseg_set_rest): Compare segT values directly, without casting to
int first.
1994-07-14 18:40:36 +00:00
Ian Lance Taylor
4ac7a9e49f * config/tc-m68k.c (m68k_ip): Change rp to be a const pointer.
(md_parse_option): Clear cpu field of current_architecture before
	setting a new cpu type.  Clear no_68881 for m68881 or m68882.
	Clear no_68851 for m68851.
1994-07-13 18:58:11 +00:00
Ken Raeburn
3c498933ab Updated some copyrights, cleaned up some header-file comments, and:
* symbols.c (symbol_create): New function, most of the guts of the old
symbol_new function.
(symbol_new): Now just checks symbol_table_frozen, calls symbol_create, and
enters the symbol into the symbol table.
* subsegs.c (section_symbol): If EMIT_SECTION_SYMBOLS is not true, and the
symbol table is frozen, call symbol_create instead of symbol_new.
* symbols.h (symbol_create, symbol_table_frozen): Declare.

* symbols.c (symbol_clear_list_pointers): Always a function now.
* struc-symbol.h (symbol_clear_list_pointers): Deleted macro version.

* symbols.c (debug_verify_symchain): New macro, defined to be
verify_symbol_chain or a cast to void, depending on DEBUG_SYMS.
(many functions): Invoke debug_verify_symchain unconditionally.
1994-07-13 01:48:15 +00:00
Ken Raeburn
6b510a40ae config/ho-sysv.h (realloc): Declare. 1994-07-13 01:28:47 +00:00
Kung Hsu
a85cd2890c Modified Files:
read.c ecoff.h ecoff.c ChangeLog

        * read.c (read_a_source_file): ditto.
        * ecoff.h: change calling interface of
        ecoff_generate_asm_line_stab.
        * ecoff.c (add_file): record of filename to handle case of include
        files, also change default built-in type from int to void for
        asm file.
        * ecoff.c (ecoff_generate_asm_line_stab): handle case of include
        files.
1994-07-12 19:17:35 +00:00
Ian Lance Taylor
51d8e5aeba * config/tc-mips.c (macro): In case M_LA_AB, SVR4_PIC, large
constant, and case ldd_std, set mips_optimize to 2 temporarily to
	avoid inserting an unexpected nop instruction.
1994-07-11 21:24:08 +00:00
Ian Lance Taylor
64d527f761 * ecoff.c (ecoff_build_lineno): Handle count correctly for last
line number.
1994-07-09 04:11:19 +00:00
Steve Chamberlain
6f15d409d0 * (process_pseudo_op): Pass right are do do_aif.
(get_any_string): New arg 'pretend_quote'.
	(get_and_process, do_formals, macro_expand, do_sdata,
	process_pseudo_op): Use new arg.
1994-07-08 22:34:11 +00:00
Kung Hsu
daad3bbf95 Modified Files:
read.c read.h ecoff.c ecoff.h ChangeLog

        * read.c (read_a_source_file): generate line stabs for asm file.
        * read.h: add extern generate_asm_line_stab.
        * ecoff.h : add prototype for ecoff_generate_asm_line_stab().
        * ecoff.c (add_file): if there's no filename provided, set switch
        to generate line stabs for .s file.
        * ecoff.c (add_procedure): add stabs symbol for .ent directive.
        * ecoff.c (generate_ecoff_stab): creates an artificial stabs.
        * ecoff.c (generate_asm_line_stab): generate a artifitial label
        for each line and generate a stabn for the line.
1994-07-08 19:38:18 +00:00
Kung Hsu
6f89cd429c Modified Files:
obj-ecoff.h obj-elf.h

        * config/obj-ecoff.h: define macro OBJ_GENERATE_ASM_LINE_STAB.
        * config/obj-elf.h: ditto.
1994-07-08 19:36:55 +00:00
Steve Chamberlain
13d9fd33a4 * gasp.c (get_any_string): Cope with getting a string with an
alternate base specifier.
	(do_aif, do_aelse): Only enable output if expression is true and previous
	level was on.
	(chartype_init):  Add BASEBIT chartype.
	(process_pseudo_op):  Notice nesteed AIFs.
1994-07-08 00:13:14 +00:00
Jeff Law
109babdf49 * gas/hppa/reloc/relocreduce2.s: More relocation reduction tests.
* gas/hppa/reloc/reloc.exp: Run them.
1994-07-07 17:59:58 +00:00
Jeff Law
8fd04cbacc * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions for
symbols in DLT relative relocs.
	(tc_gen_reloc): Zero out the addend field for DLT relative relocs.
1994-07-07 17:35:27 +00:00
Ian Lance Taylor
8882a587d9 * config/tc-ppc.c (ppc_tc): If not OBJ_COFF, force TOC entry to
align to a four byte boundary.
1994-07-06 05:14:48 +00:00
Ken Raeburn
10f67315f9 some internals doc updates 1994-07-05 21:00:22 +00:00
Ken Raeburn
4174e05265 handle 32-bit addends in exprs on alpha 1994-07-05 20:51:39 +00:00
Ian Lance Taylor
bcb62abf05 * config/obj-elf.h (S_GET_ALIGN, S_SET_ALIGN): Define.
* config/obj-elf.c (obj_elf_common): Set alignment of common
	symbol.
	* config/tc-sparc.c (s_common): If OBJ_ELF, set alignment of
	common symbol.
1994-07-05 18:06:33 +00:00
Jeff Law
8fb99170f1 Fix thinko in last change 1994-07-05 01:18:23 +00:00
Jeff Law
655f3ef4af * config/tc-hppa.c (is_complex): New macro.
(cons_fix_new_hppa): "Handle" complex expressions.
1994-07-05 00:37:14 +00:00
Ken Raeburn
7e6fc3a845 * config/default.exp: Look for "as.new" in "$base_dir/..", where it got
compiled, not in "$base_dir".

* config/unknown.exp: Deleted.
1994-06-30 22:54:44 +00:00
Ken Raeburn
04f0c2e34b Some updates for const-ness added to BFD structures. 1994-06-30 19:09:58 +00:00
Ian Lance Taylor
f255457995 * config/tc-mips.c (macro): For M_LI_SS, decide how to handle it
based on contents of imm_expr and offset_expr, rather than
	mips_pic.  For M_LI_DD, decide how to handle it based on segment
	name of offset_expr, rather than mips_pic.
	(mips_ip): If g_switch_value < 4, use immediate values for 'l'.
	If g_switch_value < 8, use .rdata rather than .lit for 'L'.
1994-06-30 18:47:29 +00:00
Stan Shebs
921e047bab * mpw-make.in (as.c): Compile with C not gC.
(config-stamp): Touch correctly.
	(install-only): New target.
	(install): Depend on all and install-only.
1994-06-30 00:59:49 +00:00
Stan Shebs
6f0b87c329 * as.c (show_usage): Break long string into shorter ones.
(parse_args): Add -v, prints version id and continues.
	* config/tc-mips.c (md_show_usage): Break long string.
1994-06-30 00:55:33 +00:00
Steve Chamberlain
40b559d27f * configure.in (i386-go32): When it's a host set
host_makefile_frag.
	* gasp.c  (get_any_string): Fix handling of % when in PharLap
	mode.
1994-06-28 01:20:04 +00:00
Steve Chamberlain
1b01afe630 Don't keep the "is" cases, only the "was" cases. 1994-06-28 01:19:19 +00:00
Steve Chamberlain
7a9e58720f Reflect new rules. 1994-06-28 01:17:29 +00:00
Stan Shebs
9e4eebc207 * mpw-config.in: Parse target and use to generate forward includes
to tc-, obj-, and atof- files, use te-generic.h for emulation.
	* mpw-make.in (VERSION): Define.
	(as.c): Compile with GCC.
	(TARG_OBJECTS, CLIBS): Define.
	(as.new): Use LDFLAGS, TARG_OBJECTS, CLIBS and EXTRALIBS in link
	command.
	(config.h, config-stamp): Build.
	config/ho-mpw.h (HOST_SPECIAL_INIT): Define.
1994-06-26 23:51:45 +00:00
Stan Shebs
a6148eeb0d Remove GM-specific hackery, no longer needed. 1994-06-26 23:41:34 +00:00
Stan Shebs
f488a4d631 * as.c (main) [HOST_SPECIAL_INIT]: New hook, for host-specific
initialization.
1994-06-26 23:36:46 +00:00
Jeff Law
5ce4e41c09 * gas/lib/gas-defs.exp (gas_finish): Call "close" and "wait"
before exiting.  Enclose both calls inside a "catch".
	(objdump_finish): Likewise.
1994-06-26 22:52:06 +00:00
Jeff Law
cf8c0d64b3 From rob:
* gas/lib/gas-defs.exp (gas_finish): Call "close" before exiting.
	Make note about possibly needing a call to "wait" too.
	(objdump_finish): Likewise.
1994-06-26 19:26:33 +00:00
Jeff Law
1f12ae43c7 * config/tc-hppa.h (obj_frob_symbol): Define for OBJ_ELF.
More gas/bfd lossage exposed by the new linker code.
1994-06-22 06:32:54 +00:00
Rob Savoye
605491337b Look for as.new before looking in the path for the binary to test. 1994-06-21 22:15:04 +00:00
Ian Lance Taylor
dff770c8d6 * subsegs.c (abs_seg_info, und_seg_info): Define if BFD_ASSEMBLER.
(subseg_change): Store seg_info for bfd_abs_section_ptr in
	abs_seg_info, and store seg_info for bfd_und_section_ptr in
	und_seg_info.
	(subseg_get): Likewise.  Also, don't set output_section if it is
	already set.
	(seg_info): Define as function.
	* subsegs.h (seg_info): Declare as function rather than defining
	as macro.
	* write.c (relax_and_size_seg): Call seg_info rather than
	bfd_get_section_userdata.
1994-06-21 16:45:09 +00:00
Ken Raeburn
639c820dae handle target ppc-*-elf*, for zoo. 1994-06-20 20:36:56 +00:00
Ken Raeburn
e0b36f18e7 expr.c (operand): If "0f" is followed by '\0', don't do eol checks. 1994-06-20 20:34:35 +00:00
Ian Lance Taylor
256816cae7 * ecoff.c (ecoff_build_aux): Call swap_tir_out and swap_rndx_out
via backend pointer, not directly.
1994-06-20 19:25:41 +00:00
Rob Savoye
afaf3145b5 Use "default" rather than "unix". 1994-06-18 20:17:26 +00:00
Rob Savoye
3b8bdecc4a Setup default and unknown init files. 1994-06-18 20:11:38 +00:00
Rob Savoye
a7175ea958 Don't pass AS and ASFLAGS, it's now done in the testing code. 1994-06-18 20:06:27 +00:00
Ian Lance Taylor
de442a3c57 * Makefile.in (config-stamp): Make sure there is at least one
element in the for loop.
1994-06-17 22:08:59 +00:00
Jeff Law
239f16dda0 * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy. 1994-06-17 18:09:16 +00:00
Jeff Law
0e68b3bca1 * config/tc-hppa.h (elf_hppa_final_processing): Declare. 1994-06-17 17:13:13 +00:00
Ken Raeburn
fd4b7c2511 folding v9 change log in; stop sanitizing configure.in 1994-06-16 23:06:58 +00:00
Ken Raeburn
708e18fdc6 v9 unsanitization 1994-06-16 21:04:02 +00:00
Ken Raeburn
286272fb43 * as.c (parse_args): Cast xmalloc return value. 1994-06-16 01:08:16 +00:00
Ken Raeburn
5ee93e0a8c v9, vms changes and some stuff i checked in recently but didn't log 1994-06-16 01:04:00 +00:00
Ken Raeburn
675ad6dc68 Fri Jun 3 17:25:08 1994 Pat Rankin (rankin@eql.caltech.edu)
* config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
	these new VMS symbol-type macros for `complex float' and
	`complex double' support.  Their values come from the existing
	DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
	(DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
	REAL8 and COMPLX8; not used yet, because gcc outputs the same
	.stabs for `double' regardless of whether `-mg' is used.
	config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
	for gcc2's predefined types "complex float", "complex double",
	and "complex long double" (identical to complex double).
1994-06-16 01:02:18 +00:00
Ken Raeburn
54eacbe683 For sparc64 target, use sparc cpu files and add sparcv9 to extra_defs. No
longer treat sparc64-*-aout* specially.
1994-06-16 00:49:06 +00:00
Ken Raeburn
9a0d0964d8 (config-stamp): If $(defs) contains multiple words, emit a #define line for
each.
1994-06-16 00:46:20 +00:00
Ian Lance Taylor
0e35ba9bc3 * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
section symbol, not C_LABEL.
1994-06-15 19:51:21 +00:00
Ian Lance Taylor
adf05987e2 * config/tc-mips.c (mips_ip): Permit a modifier in 'o' case. 1994-06-15 17:00:04 +00:00
Ian Lance Taylor
36a87ad7c5 * config/tc-mips.c (mips_ip): Permit non constant expressions in
'u' case: lets lui %hi(foo) work correctly.
1994-06-15 16:49:51 +00:00
Ian Lance Taylor
a5183648b2 * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
to put a common symbol in a set.
1994-06-13 16:13:10 +00:00
Stan Shebs
b06fe940ea Sun Jun 12 16:38:42 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-make.in (C, CFLAGS): Removed definitions.
	(ALL_CFLAGS): Define.
	Set default rule to use {CC} instead of {C}.
1994-06-12 23:41:37 +00:00
Ian Lance Taylor
02d4e9238a Add weak symbols as an extension to a.out.
* read.c (pseudo_set): Only preserve external bit for OBJ_AOUT and
	OBJ_BOUT if not BFD_ASSEMBLER.
	* config/aout_gnu.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB):
	Define as in ../include/aout/aout64.h.
	* config/obj-aout.h (OBJ_SYMFIELD_TYPE): If not BFD_ASSEMBLER,
	define as char.
	(S_GET_WEAK, S_SET_WEAK): Define if not BFD_ASSEMBLER.
	* config/obj-aout.c (obj_pseudo_table): Add "weak".
	(obj_emit_symbols): Adjust type of weak symbols.
	(obj_aout_weak): New static function.
1994-06-11 20:45:49 +00:00
Ian Lance Taylor
7b1e07b475 * config/obj-elf.c (obj_elf_section): Don't set any flags based on
the type of a special section.
1994-06-10 21:42:30 +00:00
Ian Lance Taylor
726672c5a5 * config/ho-sunos.h: Include <stdlib.h>. Don't declare malloc,
realloc, free, or atol.
1994-06-10 17:55:45 +00:00
Jeff Law
ed50a13b4e * gas/hppa/reloc/reloc.exp (roundmode test): Tweak expected output
for SOM to match current testcase.
1994-06-10 16:24:54 +00:00
Bill Cox
0b3d0999e9 * Makefile.in (check): Delete as.new dependency, so that
regression test doesn't trigger an assembler build.
1994-06-08 13:30:30 +00:00
Ian Lance Taylor
daa7e18489 * Makefile.in (mostlyclean, realclean): New targets.
* doc/Makefile.in, testsuite/Makefile.in: Likewise.
1994-06-07 17:37:52 +00:00
Ian Lance Taylor
d2c71068e8 * config/tc-mips.c (RDATA_SECTION_NAME): Define.
(macro): Correct M_LI_SS SVR4_PIC/EMBEDDED_PIC case.  After M_LI_D
	or M_L_DOB or label dob, force a new frag to avoid getting
	confused in tc_gen_reloc.
	(mips_ip): Use RDATA_SECTION_NAME, not .rdata.
	(s_change_sec): Likewise.
1994-06-06 17:16:16 +00:00
Ken Raeburn
be64f9c8bf keep files for pushw test 1994-06-05 16:47:36 +00:00
Ian Lance Taylor
1fbfe10880 * read.c (emit_expr): Use memset to zero out memory, rather than
going through md_number_to_chars.  This permits handling symbolic
	arguments when the size is larger than sizeof (valueT), if
	TC_CONS_FIX_NEW is prepared to handle the case (as it is on MIPS).
1994-06-04 03:38:01 +00:00
David MacKenzie
baed44cd14 * as.c (show_usage), config/tc-alpha.c (md_show_usage),
config/tc-mips.c (md_show_usage): Fix up messages.
1994-06-03 21:19:02 +00:00
David MacKenzie
dbc0fdd792 improve usage message 1994-06-03 21:07:48 +00:00
David MacKenzie
def66e248c * as.h: Replace flagseen with separate variables.
* as.c (parse_args): Set them.  Don't accept -1 option, or -v
	explicitly (it's a synonym for --version).
	* as.c, input-scrub.c, messages.c, read.c, symbols.c, write.c,
	config/obj-aout.c, config/obj-aout.h, config/obj-bout.c,
	config/obj-bout.h, config/obj-coff.c, config/obj-coff.h,
	config/obj-vms.c, config/tc-hppa.c, config/tc-i386.c,
	config/tc-i960.c, config/tc-m68k.c, config/tc-mips.c,
	config/tc-vax.c: Use the new flag variables instead of flagseen.
	* config/tc-vax.c [OBJ_VMS]: Recognize -+, -1, -v, and document in
	usage.
1994-06-03 20:59:20 +00:00
David MacKenzie
f3d817d8b7 * as.c (show_usage): Remove target specific messages;
instead, call md_show_usage.
	(parse_args): Use getopt_long_only.  Take pointers to argc and
	argv.
	(main): Pass parse_args pointers.
	* as.h: Remove 3 variables that are redundant with flagseen.
	* as.c, messages.c: Change their users to use flagseen.
	Define getopt stuff.
	* tc.h: Update md_parse_option decl.  Add md_show_usage decl.
	* config/tc-*.c: Add md_shortopts, md_longopts,
	md_longopts_size, md_show_usage.  Change calling convention for
	md_parse_option.  Remove md_parse_long_option.
	* config/tc-ns32k.c: Rename `struct option' to `struct ns32k_option'.
	* config/tc-i386.h: Don't define md_parse_option.
1994-06-03 17:42:27 +00:00
Ken Raeburn
e4125bb4d9 note new i386 test 1994-06-02 23:47:38 +00:00
Ken Raeburn
121d5e17cd new test for "pushw" 1994-06-02 23:46:51 +00:00
Ken Raeburn
d9ac025813 whitespace 1994-06-02 23:46:41 +00:00
Ken Raeburn
a8773b7d26 oops, left out var decl 1994-06-02 23:37:45 +00:00
David MacKenzie
ebd6f11797 * as.c (show_usage): New function.
(parse_args): Code moved from main.
	Recognize --help and --version.
	* config/tc-ns32k.h: Define TC_NS32K.
	* doc/as.texinfo: Document all of the target-independent command
	line options.
1994-06-02 21:00:19 +00:00
Ken Raeburn
b166d61474 * Makefile.in (distclean): Remove site config files and gas.sum. 1994-06-02 19:09:30 +00:00
Ken Raeburn
314628f66c Various changes.. 1994-06-02 16:38:54 +00:00
Ken Raeburn
7577d7b645 (hash_new_table): Clear newly allocated table. 1994-06-02 16:37:55 +00:00
Ken Raeburn
82489ea062 68060 support 1994-06-02 16:35:41 +00:00
Ken Raeburn
2283f8a02a (fixup_segment) [!BFD_ASSEMBLER] [DIFF_EXPR_OK]: Do conversion to pc-relative
for difference, even if pcrel is already set.
1994-06-02 16:18:33 +00:00
Ken Raeburn
6ef37255ad (potable): Add this_gcc_requires_the_gnu_assembler in all lower-case, in case
we're ignoring case of opcodes in the input file.
1994-06-02 16:15:56 +00:00
Ken Raeburn
b418bc52c0 (target i386-*-netbsd0.8): Use 386bsd emulation. 1994-06-02 16:07:16 +00:00