Commit graph

18458 commits

Author SHA1 Message Date
Ian Lance Taylor
fa802cb057 * elflink.h (elf_link_input_bfd): Don't skip symbols from sections
that have no contents merely because linker_mark is not set.
1997-02-26 18:35:56 +00:00
Ian Lance Taylor
7a5157080c * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
$(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
1997-02-26 16:57:38 +00:00
Ian Lance Taylor
d73d49a472 * ldlang.c (lang_one_common): Clear SEC_IS_COMMON from common
section.
PR 11749.
1997-02-26 16:53:34 +00:00
Stan Shebs
9f39d8731a * configure.tgt (mips*-*-lnews*): New target.
* Makefile.in (emipslnews.c): New target.
	* emulparams/mipslnews.sh: New file.
1997-02-26 04:41:48 +00:00
Ian Lance Taylor
034988c662 Based on patches from Robert Lipe <robertl@dgii.com>:
* configure.in: Add i386coff and i386elf to emulation list.
	* configure: Rebuild.
	* as.c (i386coff, i386elf): Declare.
	* obj.h (coff_format_ops): Declare.
	* config/obj-coff.c (OBJ_HEADER): Define.
	(coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
	(coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
	(obj_pseudo_table): Add "version".
	(coff_pop_insert): New static function.
	(coff_sec_sym_ok_for_reloc): New static function.
	(no_func): New static function.
	(coff_format_ops): New variable.
	* config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
	(obj_symbol_new_hook): Define.
	(coff_obj_read_begin_hook): Declare.
	(obj_read_begin_hook): Define.
	* config/tc-i386.h (i386_target_format): Declare.
	* config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
	OUTPUT_FLAVOR when appropriate.
	(i386_target_format): New function.
	* Makefile.in (obj-coff.o): New target.
	(e-i386coff.o, e-i386elf.o): New targets.
1997-02-26 04:33:08 +00:00
Stan Shebs
84fdbc864f * configure.tgt (mips*-*-lnews*): New target. 1997-02-26 04:23:45 +00:00
Ian Lance Taylor
55be99d643 Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/tc-m68k.c (instring): Useless local declaration of
	crack_operand removed.
	* expr.h (expressionS): Changed type of X_op field to operatorT if
	__GNUC__.
1997-02-26 03:04:05 +00:00
Ian Lance Taylor
a0c4a2413e From Stephen Williams <steve@icarus.icarus.com>:
* config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
	(_tc_get_bal_of_call): Don't declare.
	(tc_get_bal_of_call): Declare as function, don't define as macro.
	* config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
	in sy_tc field, not x_balntry field.
	(tc_get_bal_of_call): Rename from _tc_get_bal_of_call.  Change
	return type to symbolS *.  If OBJ_COFF, retrieve value from sy_tc
	field, not x_balntry field.
1997-02-26 02:55:31 +00:00
Ian Lance Taylor
ab3a59cf4c * objdump.c (adjust_section_vma): New static variable.
(usage): Mention --adjust-section-vma.
	(OPTION_ADJUST_VMA): Define.
	(long_options): Add "addjust-vma".
	(display_bfd): If adjust_section_vma is not 0, add it to all the
	section addresses.
	(main): Handle OPTION_ADJUST_VMA.
	* binutils.texi, objdump.1: Document --adjust-vma.
1997-02-26 02:30:31 +00:00
Tom Tromey
1f07f797e3 * configure.in (host_libs): Build itcl after tcl, tk. 1997-02-25 22:43:55 +00:00
Ian Lance Taylor
b08f5ac27a * elf.c (elf_fake_sections): Use SHT_NOTE for any section whose
name begins with ".note".
	(map_sections_to_segments): Add a PT_NOTE segment for any loadable
	section whose name begins with ".note".
	(get_program_header_size): Corresponding change.
1997-02-25 21:07:13 +00:00
Ian Lance Taylor
7a9756bcc2 tweak for alignment 1997-02-25 19:47:05 +00:00
Ian Lance Taylor
a90512ade8 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
(TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
	(itbl-lex.o): Depend upon itbl-parse.h.

	* itbl-parse.y (yyerror): Change return type to int.  Change to
	use old style function declaration.
1997-02-25 19:36:18 +00:00
Ian Lance Taylor
ee5cb7fe02 * Makefile.in (itbl-lex.o): Remove -Wall.
(itbl-parse.o): Likewise.
1997-02-25 19:28:05 +00:00
Tom Tromey
681c0ccde9 * configure.in (host_libs): Added db, itcl.
(host_tools): Added sn.
	(noconfigdirs): Added itcl, db, sn in appropriate places.
	(native_only): Added sn.
1997-02-25 19:04:34 +00:00
Ian Lance Taylor
b1a8b4d814 * gas/macros/semi.s: Force the final alignment to use a fill value
of 0.
1997-02-25 18:56:14 +00:00
Tom Tromey
f922fbb923 * Makefile.in (all-db, all-sn): New targets.
(ALL_MODULES): Added all-sn.
	(CROSS_CHECK_MODULES): Added check-sn.
	(INSTALL_MODULES): Added install-sn.
	(CLEAN_MODULES): Added clean-sn.
1997-02-25 18:48:00 +00:00
Ian Lance Taylor
c98bb2d606 * gas/all/cond.s, gas/all/cond.d: New test.
* gas/all/gas.exp: Run it.
1997-02-25 18:47:08 +00:00
Ian Lance Taylor
28d8c67124 * cond.c (s_ifdef): If we should omit conditionals from listings,
call listing_list.
	(s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
	* listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
	(listing_listing): Handle EDICT_NOLIST_NEXT.
	(listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
	* listing.h (LISTING_NOCOND): Define.
	(LISTING_SKIP_COND): Define.
	* as.c (show_usage): Mention c as a suboption of -a.
	(parse_args): Handle c as a suboption of -a.
	* doc/as.texinfo: Document -alc.
1997-02-25 18:45:17 +00:00
Dawn Perchik
4580503f2c start-sanitize-r5900
* gencode.c: #ifdef out offending code until a permanent fix
	can be added.  Code is causing build errors for non-5900 mips targets.
end-sanitize-r5900
1997-02-25 07:04:39 +00:00
Fred Fish
b16a8c8e09 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
(fixes several failures in generic part of GAS testsuite)
1997-02-25 06:37:51 +00:00
Ian Lance Taylor
7b4be6688c * elf32-mips.c (mips_elf_relocate_section): Check for misaligned
jal and for jal overflow.
1997-02-25 05:33:28 +00:00
Gavin Romig-Koch
7adc1084cf Correct some badly formatted entrys 1997-02-25 04:14:12 +00:00
Gavin Romig-Koch
a33db03969 Use idt.ld rather than ddt.ld 1997-02-25 03:46:37 +00:00
Jeff Law
05f9155f5c * mn10200-tdep.c (mn10200_analyze_prologue): Don't fix fi->frame
if we're not the innermost frame.  Fix minor typos.
So debugging without frame pointers works.
1997-02-24 23:38:31 +00:00
Ian Lance Taylor
dc25aca068 From Eric Youngdale <eric@andante.jic.com>:
* ldlex.l (V_TAG, V_IDENTIFIER): New macros.
	(VERS_START, VERS_SCRIPT, VERS_NODE): New states to parse version
	information.
	(ldlex_version_script, ldlex_version_file): New functions.
	* ldlex.h (enum input_enum): Add input_version_script.
	(ldlex_version_script): Declare.
	(ldlex_version_file): Declare.
	* ldgram.y (%union): Add deflist, versyms, and versnode.
	(VERS_TAG, VERS_IDENTIFIER): New terminals.
	(GLOBAL, LOCAL, VERSION, INPUT_VERSION_SCRIPT): New terminals.
	(file): Accept INPUT_VERSION_SCRIPT.
	(ifile_p1): Accept version.
	(version_script_file): New nonterminal.
	(version, vers_nodes, vers_node): Likewise.
	(verdep, vers_tag, ver_defns): Likewise.
	* ldlang.c (lang_elf_version_info): New global variable.
	(lang_new_vers_regex): New function.
	(lang_new_vers_node): New function.
	(version_index): New static variable.
	(lang_register_vers_node): New function.
	(lang_add_vers_depend): New function.
	* ldlang.h (lang_elf_version_info): Declare.
	(lang_new_vers_regex, lang_new_vers_node): Declare.
	(lang_add_vers_depend, lang_register_vers_node): Declare.
	* lexsup.c (OPTION_VERSION_SCRIPT): Define.
	(ld_options): Add "version-script".
	(parse_args): Handle OPTION_VERSION_SCRIPT.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
	Pass lang_elf_version_info to size_dynamic_sections.
	* scripttempl/elf.sc: Add .gnu.version sections.
1997-02-24 23:23:31 +00:00
Martin Hunt
4d3410fd99 Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Change pre_defined_registers to
	d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
1997-02-24 23:22:13 +00:00
Ian Lance Taylor
d044b40a40 From Eric Youngdale <eric@andante.jic.com>:
* elflink.h (elf_link_add_archive_symbols): If a default symbol is
	not found, try looking it up again without the version name.
	(elf_link_add_object_symbols): Always link against the dynamic
	symbol table of a dynamic object.  When linking against a dynamic
	object, include version strings in symbol names, and set up
	version information.  Add indirect symbols for default versions.
	(elf_link_create_dynamic_sections): Add special version sections.
	(struct elf_assign_sym_version_info): Define.
	(struct elf_find_verdep_info): Define.
	(NAME(bfd_elf,size_dynamic_sections)): Add verdefs parameter.  Set
	up version sections.
	(elf_adjust_dynamic_symbol): Ignore indirect symbols.
	(elf_link_find_version_dependencies): New static function.
	(elf_link_assign_sym_version): New static function.
	(elf_link_renumber_dynsyms): New static function.
	(struct elf_final_link_info): Add symver_sec field.
	(elf_bfd_final_link): Initialize finfo.symver_sec.  Don't count
	local symbols of a dynamic object.  Handle DT_VER* constants.
	(elf_link_output_extsym): Simplify BFD_ASSERT checking for a
	dynamic object.  Skip indirect symbols from ELF objects.  Remove
	the version name before choosing a hash bucket.  Write out the
	version information if appropriate.
	(elf_link_input_bfd): Check for DYNAMIC, not ET_DYN.
	* bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
	(bfd_elf64_size_dynamic_sections): Likewise.
	* bfd-in2.h: Rebuild.
	* elf-bfd.h (struct elf_link_hash_entry): Add verinfo field.
	Change elf_link_hash_flags to unsigned short.
	(ELF_LINK_HIDDEN): Define.
	(struct elf_obj_tdata): Add fields dynversym_hdr, dynverref_hdr,
	dynverdef_hdr, dynversym_section, dynverdef_section,
	dynverref_section, cverdefs, cverrefs, verdef, verref.
	(elf_dynversym, elf_dynverdef, elf_dynverref): Define.
	(_bfd_elf_swap_verdef_in, _bfd_elf_swap_verdef_out): Declare.
	(_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Declare.
	(_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Declare.
	(_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Declare.
	(_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Declare.
	(_bfd_elf_slurp_version_tables): Declare.
	* elf.c (_bfd_elf_swap_verdef_in): New function.
	(_bfd_elf_swap_verdef_out): Likewise.
	(_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Likewise.
	(_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Likewise.
	(_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Likewise.
	(_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Likewise.
	(_bfd_elf_print_private_bfd_data): Add DT_VER* constants.  Print
	version information if there is any.
	(_bfd_elf_link_hash_newfunc): Initialize verinfo field.
	(bfd_section_from_shdr): Handle SHT_GNU_ver* section types.
	(elf_fake_sections): Handle .gnu.version* section names.
	(assign_section_numbers): Handle SHT_GNU_ver* section types.
	(_bfd_elf_slurp_version_tables): New function.
	* elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't include
	version name in string entered in dynamic hash table.
	* elfcode.h: Include fnmatch.h.
	* elf32-i386.c (elf_i386_relocate_section): Handle a dynamic
	symbol which was forced to become local.
	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	* elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
1997-02-24 23:13:07 +00:00
Fred Fish
17990badfc * tic80-opc.c (LSI_SCALED): Renamed from this ...
(OFF_SL_BR_SCALED): ... to this, and added the flag
	TIC80_OPERAND_BASEREL to the flags word.
	(tic80_opcodes): Replace all occurances of LSI_SCALED with
	OFF_SL_BR_SCALED.
1997-02-24 21:46:54 +00:00
Bob Manson
3c0af8a010 * lib/gdb.exp(gdb_test): Generate a FAIL message when
send_gdb fails.
1997-02-24 21:24:26 +00:00
Fred Fish
ec72a26633 * config/obj-coff.c: Fix typo in comment section.
start-sanitize-tic80
	* config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
 	an additional alignment argument.
	(find_opcode): Allow O_symbol relocs for any 32 bit field, not just
 	base relative ones.
	(build_insn): Handle O_symbol relocs for any 32 bit field, not just
 	base relative ones.
end-sanitize-tic80
1997-02-24 20:21:13 +00:00
Fred Fish
dc40b39121 * gas/tic80/{add.d, bitnum.d, ccode.d, cregops.d, endmask.d,
regops.d, relocs1.d,
	(relocs1.c): Add file for reference.
	(relocs1b.d): Split reloc table contents test to different test file.
	(relocs2.c): Add test that uses various types (char, short, int, ...) of
	static and global variables with data shuffling to generate lots of ld/st
	instructions for the different types.
	(relocs2.d): New file, expected code for relocs2 test.
	(relocs2.lst): New file, TI assembler listing for reference.
	(relocs2.s): New file, assembly source for relocs2 test.
	(relocs2b.d): New file, expected reloc table contents for relocs2 test.
	(tic80.exp): Run the relocs1b, relocs2, and relocs2b tests.
1997-02-24 18:25:19 +00:00
Jeff Law
af2903b4f0 Update some comments to reflect current reality. 1997-02-24 18:13:23 +00:00
Dawn Perchik
16aef5b049 * Makefile.in: Remove dependancies on itbl-cpu.h.
* as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
	is not defined.
1997-02-24 10:42:50 +00:00
Dawn Perchik
ac6c6bdb34 * itbl-ops.h: Include as.h. 1997-02-24 10:01:19 +00:00
Dawn Perchik
72797ffaa0 * as.c: Remove -t option.
* configure, configure.in: Move itbl-cpu.h to mips specific configure.
	* itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
	* config/tc-mips.h: Define HAVE_ITBL_CPU.
1997-02-24 09:21:31 +00:00
Bob Manson
40ac16240a * config/vr4300.exp: New file.
* gdb.*/*.exp: Call gdb_expect instead of expect.

	* lib/gdb.exp(gdb_expect): New function.
1997-02-24 05:43:35 +00:00
Dawn Perchik
2f671f8415 * itbl-ops.c: Don't define DEBUG. 1997-02-24 01:57:55 +00:00
Dawn Perchik
de614d4d67 * gas/all/itbl-test.c(main): Update function calls.
Remove parameters from itbl_get_reg_val and
	change itbl_get_insn_name to itbl_get_field.
1997-02-24 01:51:04 +00:00
Dawn Perchik
f9f0539f36 * Makefile.in: Update itbl-test.c to reflect its new location. 1997-02-24 01:44:47 +00:00
Dawn Perchik
b9d4be84aa * gas/mips/itbl: Add comments.
* gas/mips/itbl.s: Add comments.  Prefix register names with $.
	* gas/all/itbl: Generic table for testing for itbl support.
	* gas/all/itbl.s: Generic assembly for testing for itbl support.
	* gas/mips/itbl-test.c: Moved to gas/all.
	* gas/all/itbl-test.c: Moved from gas/mips.
1997-02-24 01:17:50 +00:00
Dawn Perchik
8d8a790b81 * itbl-ops.c: Add test for itbl_have_entries.
* config/tc-mips.c: Remove test for itbl_have_entries.
	* config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
1997-02-23 23:46:12 +00:00
Ian Lance Taylor
7b9f3d46c6 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
itbl-ops.c.  Add itbl-parse.c and itbl-lex.c.
	(LEX, LEXFLAGS): Define.
	* itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
1997-02-23 23:15:09 +00:00
Ian Lance Taylor
1857d1e67d fix minor formatting problem 1997-02-23 23:14:39 +00:00
Ian Lance Taylor
8a974fdc24 update copyrights 1997-02-23 23:05:35 +00:00
Ian Lance Taylor
9218cee06b minor formatting fixes 1997-02-23 22:47:20 +00:00
Dawn Perchik
a2768484d9 * mips-opc.c: Add macros for cop0, cop1 cop2 and cop3.
Change mips_opcodes from const array to a pointer,
	and change bfd_mips_num_opcodes from const int to int,
	so that we can increase the size of the mips opcodes table
	dynamically.
1997-02-23 22:26:01 +00:00
Dawn Perchik
2fedd0a135 * mips.h: Add macros for cop0, cop1 cop2 and cop3.
Change mips_opcodes from const array to a pointer,
	and change bfd_mips_num_opcodes from const int to int,
	so that we can increase the size of the mips opcodes table
	dynamically.
1997-02-23 22:24:49 +00:00
Dawn Perchik
efec4a282c * itbl-parse.y: Fix indentation mistakes from indent program.
* itbl-lex.l: Fix indentation mistakes from indent program.
	* itbl-ops.h: Add include for ansidecl.h.
	Add PARAMS around function arguments.
	Add declaration for itbl_have_entries.
	* itbl-ops.c: Add PARAMS around function arguments.
	* Makefile.in: Add itbl build rules.
	Add dependancies for itbl files to mips target.
	* as.c: Add itbl support.
	Add new option "--insttbl" for dynamically extending instruction set.
	* as.h: Declare insttbl_file_name;
	the name of file defining extensions to the basic instruction set
	* configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
	itbl-ops.o to extra_objects for mips configuration.
	Add include file link from itbl-cpu.h to
	config/itbl-${target_cpu_type}.h.
	* config/tc-mips.c: Allow copz instructions.
	Add notes for future additions to the itbl support.
	Add debug macros.
	(macro): Call itbl_assemble to assemble itbl instructions.
	See if an unknown register is specified in an itbl entry.
1997-02-23 22:23:12 +00:00
Fred Fish
c7583da0b6 * tic80-opc.c (tic80_predefined_symbols): Revert change to
store BITNUM values in the table in one's complement form
	to match behavior when assembler is given a raw numeric
	value for a BITNUM operand.
	* tic80-dis.c (print_operand_bitnum): Ditto.
1997-02-23 04:06:51 +00:00