Commit graph

23743 commits

Author SHA1 Message Date
Doug Evans
bb51b65d68 Add pseudo-basic-block execution support.
* Makefile.in (SIM_OBJS): Add sim-reg.o, cgen-run.o, sim-stop.o.
	(SIM_EXTRA_DEPS): Add include/opcode/cgen.h.
	(INCLUDE_DEPS): Delete cpu-sim.h, include/opcode/cgen.h.
	(mloop.c): Build pseudo-basic-block version.  Depend on stamp-cpu.
	(stamp-decode): Delete, build decode files with other cpu files.
	* arch.c,arch.h,cpuall.h: Regenerate.
	* cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
	* sem-switch.c,sem.c: Regenerate.
	* m32r-sim.h (M32R_MISC_PROFILE): New members load_regs,
	load_regs_pending.
	* m32r.c (m32rbf_fetch_register): Renamed from m32rb_fetch_register.
	(m32rbf_store_register,m32rbf_h_cr_get,m32rbf_h_cr_set,
	m32rbf_h_psw_get,m32rbf_h_psw_set,m32rbf_h_accum_get,
	m32rbf_h_accum_set): Likewise.
	(m32r_model_{init,update}_insn_cycles): Delete.
	(m32rbf_model_insn_{before,after}): New fns.
	(m32r_model_record_cti,m32r_model_record_cycles): Delete.
	(m32rb_model_mark_get_h_gr,m32rb_model_mark_set_h_gr): Delete.
	(m32rb_model_mark_busy_reg,m32rb_model_mark_unbusy_reg): Delete.
	(check_load_stall): New fn.
	(m32rbf_model_m32r_d_u_{exec,cmp,mac,cti,load,store}): New fns.
	(m32rbf_model_test_u_exec): New fn.
	* mloop.in: Rewrite, use pbb support.
	* sim-if.c (sim_stop,sim_sync_stop,sim_resume): Delete.
	(sim_fetch_register,sim_store_register): Delete.
	* sim-main.h (CIA_GET,CIA_SET): Fix.
	(SIM_ENGINE_HALT_HOOK,SIM_ENGINE_RESTART_HOOK): Delete.
	* tconfig.in (WITH_SCACHE_PBB): Define.
	(WITH_SCACHE_PBB_M32RBF): Define.
	* traps.c (sim_engine_invalid_insn): Renamed from ..._illegal_....
	(m32r_trap): Pass pc to sim_engine_halt.
	* configure.in (SIM_AC_OPTION_SCACHE): Change 1024 to 16384.
	* configure: Regenerate.
start-sanitize-m32rx
	* Makefile.in (M32RX_OBJS): Delete semx.o, add extract.o.
	(mloopx.c): Build pseudo-basic-block version.  Depend on stamp-xcpu.
	(semx.o): Delete.
	(extractx.o): Add.
	(stamp-xdecode): Delete, build decode files with other cpu files.
	* cpux.c,cpux.h,decodex.c,decodex.h,modelx.c: Regenerate.
	* readx.c: Delete.
	* semx.c: Delete.
	* extractx.c: New file.
	* semx-switch.c: New file.
	* m32r-sim.h (BRANCH_NEW_PC): Delete.
	(SEM_SKIP_INSN): New macro.
	* m32rx.c (m32rxf_fetch_register): Renamed from m32rx_fetch_register.
	(m32rxf_store_register,m32rxf_h_cr_get,m32rxf_h_cr_set,
	m32rxf_h_psw_get,m32rxf_h_psw_set,m32rxf_h_accum_get,
	m32rxf_h_accum_set,m32rxf_h_accums_get,m32rxf_h_accums_set): Likewise.
	(m32rxf_model_insn_{before,after}): New fns.
	(m32rx_model_mark_get_h_gr,m32rx_model_mark_set_h_gr): Delete.
	(m32rx_model_mark_busy_reg,m32rx_model_mark_unbusy_reg): Delete.
	(check_load_stall): New fn.
	(m32rxf_model_m32rx_u_{exec,cmp,mac,cti,load,store}): New fns.
	* mloopx.in: Rewrite, use pbb support.
	* tconfig.in (WITH_SCACHE_PBB_M32RXF): Define.
	(WITH_SEM_SWITCH_FULL): Change from 0 to 1.
end-sanitize-m32rx
1998-10-09 23:43:28 +00:00
Doug Evans
0b517b9cf2 * Make-common.in (sim-reg.o): New rule.
(cgen-run.o): New rule.
	* cgen-ops.h: Delete many BI macros.  Change all UBI -> BI.
	* cgen-run.c (prime_cpu): New function.
	* cgen-scache.c: Add pseudo-basic-block (pbb) scaching support.
	(scache_option_handler, case OPTION_PROFILE_SCACHE): Handle explicitly
	mentioned cpu.
	(scache_flush_cpu,scache_lookup,scache_lookup_or_alloc): New fns.
	* cgen-sim.h (CGEN_INSN_VIRTUAL_TYPE): New enum.
	(CGEN_INSN_VIRTUAL_P): New macro.
	(SEM_PC): New typedef.
	(SEMANTIC_FN): Change type of result to SEM_PC.
	(SEM_SET_FULL_CODE,SEM_SET_FAST_CODE,SEM_SET_CODE): New macros.
	(IDESC_CTI_P,IDESC_SKIP_P): New macros.
	(SCACHE_MAP): New typedef.
	(CPU_SCACHE): Add pbb support.
	(scace_lookup,scache_lookup_or_alloc,scache_flush_cpu): Declare.
	(SEM_BRANCH_INIT_EXTRACT,SEM_BRANCH_INIT,SEM_BRANCH_FINI): New macros.
	(CGEN_CPU): New members running_p,insn_count,{fast,full}_engine_fn,
	max_slice_insns.
	(INSN_NAME): Delete.
	(cgen_insn_name): Declare.
	(sim_engine_invalid_insn): Renamed from sim_engine_illegal_insn.
	* cgen-trace.c (trace_buf): Shrink from 1024 to 256 bytes.
	(first_insn_p): Make static.
	(trace_insn): Handle virtual insns specially.
	(cgen_trace_printf): Ensure we haven't overflowed the buffer.
	* cgen-types.h (UBI): Delete.
	(MODE_TYPE): New enum.
	(HOSTINT,HOSTUINT,HOSTPTR): Delete.
	* cgen-utils.c (mode_names): Delete UBI.  Add INT,UINT,PTR.
	(cgen_virtual_opcode_table): New global.
	(cgen_insn_name): New function.
	(sim_disassemble_insn): Ignore virtual insns.
	* genmloop.sh: Delete top level loop generation.  Add pbb support.
	* sim-cpu.h (CPU_INSN_NAME_FN): New typedef.
	(sim_cpu_base): New members max_insns,insn_name,model_data.
	(CPU_PC_GET,CPU_PC_SET): New macros.
	(sim_pc_get,sim_pc_set): Declare.
	* sim-model.c (model_set): Call model init fn.
	* sim-model.h (MODEL_FN): New typedef.
	(INSN_TIMING): New member model_fn.
	(MODEL): New members num,init.
	* sim-profile.c (sim_profile_print_bar): Renamed from print_bar.
	All callers updated.
	(profile_insn_init): New fn.
	(profile_print_insn): Update, INSN_NAME -> CPU_INSN_NAME.
	Exit early if insn profiling not supported.
	(profile_print_memory): Update, MAX_MODES -> MODE_TARGET_MAX.
	(profile_install): Record profile_insn_init as init fn.
	(profile_uninstall): Free PROFILE_INSN_COUNT if non-null.
	* sim-profile.h: Update, MAX_MODES -> MODE_TARGET_MAX.
	(PROFILE_DATA): Delete member exec_time.
	Change insn_count to pointer to array, rather than the array.
	(sim_profile_print_bar): Declare.
1998-10-09 22:43:05 +00:00
Jeff Law
60fc3193fc Merge with egcs-19981008 1998-10-09 22:18:38 +00:00
Doug Evans
9a5d8a11aa regenerate m32r-opc.c, m32r-opc.h 1998-10-09 21:15:48 +00:00
Jeff Law
734fb33c30 Merge egcs-19981008. 1998-10-09 21:10:04 +00:00
Catherine Moore
710c8d2fad * scripttempl/elf.sc: Merge .sdata.* etc sections.
* ldctor.c (ldctor_build_sets):  Set SEC_KEEP for
        ctor sections.
1998-10-09 21:07:11 +00:00
Keith Seitz
4fb67eb558 * gdbtk-hooks.c (gdbtk_add_hooks): Install a hook for
(new) file_changed_hook.
        (gdbtk_exec_file_changed): Rename to gdbtk_exec_file_display
        to mimic hook's name.
        (gdbtk_file_changed): New hook function.
1998-10-08 23:05:32 +00:00
Keith Seitz
d367c7b447 * main.c (main): Remove calls to {pre,post}_add_symbol_hooks.
There should be sufficient information/hooks now to eliminate
        this hack.

        * exec.c (file_command): Add a new hook here to inform ui's
        when the exec file has changed. Adding it here allows the
        ui to be informed after symbol reading.

        * gdbcore.h: Add declaration of file_changed_hook.
1998-10-08 23:04:53 +00:00
Geoffrey Noer
d7a198b636 Thu Oct 8 15:33:08 1998 Geoffrey Noer <noer@cygnus.com>
* configure.in: call AC_EXEEXT instead of AM_EXEEXT and
        AM_CYGWIN32.
        * aclocal.m4: remove local AM_EXEEXT/AM_CYGWIN32 macros.
        * configure: regenerate

Thu Oct  8 15:33:08 1998  Geoffrey Noer  <noer@cygnus.com>

        From Mumit Khan  <khan@xraylith.wisc.edu>:
        * dlltool.c (scan_all_symbols): Don't re-export symbols exported
        by other DLLs.

Thu Oct  8 15:33:08 1998  Geoffrey Noer  <noer@cygnus.com>

        * Makefile.am (BUILD_DLLWRAP): Add.
        (BUILD_DLLWRAP, DLLWRAP_PROG): Add.
        (bin_PROGRAMS): Add dllwrap.
        * Makefile.in: regenerate with automake

        From Mumit Khan  <khan@xraylith.wisc.edu>:
        * dllwrap.c: New file from dllhelpers v0.2.1.
        (print_version): New function.
        (long_options): Add --version.
        (main): Handle.
        * dyn-string.h, dyn-string.c: New files from egcs-1.1/gcc.
        * configure.in (BUILD_DLLWRAP): Add.
        * configure: Regenerate.
1998-10-08 22:47:18 +00:00
Michael Snyder
209c77a838 *** empty log message *** 1998-10-08 22:45:53 +00:00
Jason Molenda
de07f6119b Forgot to remove this file from .Sanitize. 1998-10-08 22:33:29 +00:00
Nick Clifton
633f501677 Apply patches from PRs 16299, 17008 and 17140 1998-10-08 17:55:58 +00:00
Nick Clifton
726a394601 Ooops - failed to check in first part of patch for PR 17438 1998-10-08 17:19:55 +00:00
Mark Alexander
70423641d9 * rs6000-tdep.c (get_saved_register): Define only if
USE_GENERIC_DUMMY_FRAMES is defined.
1998-10-08 15:59:23 +00:00
Jeff Law
fefb09e572 * m10300-opc.c (asr, lsr, asl): Fix am33 single bit shift opcode.
pr17706
1998-10-08 12:06:51 +00:00
Andrew Cagney
2ccb6fed8b Hand sanitization. 1998-10-08 06:45:03 +00:00
Andrew Cagney
287026b71a Add new config options --enable-carp (tempoary) and
--enable-targets=... (more permenant).  Add dummy target `carp' with
associated directory (tempoary).
Expect a rewrite down the track.
1998-10-08 05:35:49 +00:00
Geoffrey Noer
a6c7958be8 update 1998-10-08 02:08:24 +00:00
Doug Evans
99bc9a6984 cgen-run.c: new mainloop for cgen
sim-reg.c: generic sim_fetch/store_register interface fns
1998-10-07 23:55:42 +00:00
Geoffrey Noer
9b6b08c2c0 fix 1998-10-07 21:26:00 +00:00
Nick Clifton
644a26542c Fix for PR 16299: Do not assume that bad relocations always have an associated symbol. 1998-10-07 21:10:16 +00:00
Geoffrey Noer
9d1b068967 Tue Oct 6 18:20:10 1998 Geoffrey Noer <noer@cygnus.com>
* Makefile.am (windres_SOURCES): Add resres.c.
        (windres_OBJECTS): Add resres.o.
        * Makefile.in: regenerate with automake

        From Anders Norlander <anorland@hem2.passagen.se>.
        * resres.c: New file.  Implementation of read_res_file and
        write_res_file functions for windres.
        * rcparse.y: Handle CONTROL's with named classes.
        * resbin.c: Bug in res_to_bin_dialog and bin_to_res_dialog
        when dialog is extended: The version and signature fields should
        be reversed (despite what the docs say). Id is 32 bits long in
        extended dialogs.
        * resrc.c (write_rc_dialog): properly print controls with named
        classes.
        * windres.c (read_res_file, write_res_file): Remove stubs.
        * resres.c (write_res): Rename RT_ACCELERATORS to RT_ACCELERATOR.
1998-10-07 01:22:11 +00:00
Geoffrey Noer
b459678b2b Tue Oct 6 18:20:10 1998 Geoffrey Noer <noer@cygnus.com>
From Anders Norlander <anorland@hem2.passagen.se>.

        * resres.c: New file.  Implementation of read_res_file and
        write_res_file functions for windres.
        * rcparse.y: Handle CONTROL's with named classes.
        * resbin.c: Bug in res_to_bin_dialog and bin_to_res_dialog
        when dialog is extended: The version and signature fields should
        be reversed (despite what the docs say). Id is 32 bits long in
        extended dialogs.
        * resrc.c (write_rc_dialog): properly print controls with named
        classes.
        * windres.c (read_res_file, write_res_file): Remove stubs.
        * resres.c (write_res): Rename RT_ACCELERATORS to RT_ACCELERATOR.
        * Makefile.in (windres_SOURCES): Add resres.c.
        (windres_OBJECTS): Add resres.o.
1998-10-07 01:21:02 +00:00
Jason Molenda
87feff9dab 1998-10-06 Jason Molenda (jsm@bugshack.cygnus.com)
Eliminate a few warnings from the compiler.
        * breakpoint.h: Add prototype.
        * breakpoint.c (do_enable_breakpoint): cast mem_cnt, i to (void).
        * configure.in: Check if strdup declaration is necessary.
        * configure: Regenerated.
        * defs.h: Add prototypes.
        * gdb_string.h: Only define strdup if necessary.
        * gdbthread.h: Add prototypes.
        * printcmd.c: Add prototyptes.
        (disassemble_command): Remove unused variable 'section'.
        * symtab.c: Add prototypes.
        * symtab.h: Include gnu-regex.h, add prototype.
        * thread.c: Add prototype.
1998-10-06 22:24:40 +00:00
Catherine Moore
1a113a4cdc * tc-sparc.h (TC_FORCE_RELOCATION): Define.
(elf32_sparc_force_relocation):  Declare.
        * tc-sparc.c (md_apply_fix3):  Handle vtable relocs.
        (tc_gen_reloc):  Handle vtable relocs.
        (elf32_sparc_force_relocation):  New.
1998-10-06 14:37:23 +00:00
Gavin Romig-Koch
53e4f2aabf add dwarf1.c 1998-10-06 14:01:17 +00:00
Andrew Cagney
875f23a115 Sanitize anything mentioning CARP. 1998-10-06 07:37:20 +00:00
Stan Shebs
ee31ae2284 From David Purves <purves@apogee.com>:
* stabsread.c (rs6000_builtin_type): Create a complex float instead
	of an error.
	(read_sun_floating_type): Similarly.
	(read_range_type): Create a complex float if self_subrange is
 	true.
1998-10-06 02:52:31 +00:00
Jeff Law
8e40ea4bbe * som.c (som_finish_writing): Perform some sanity checks when
writing an executable or shared library.
17075
1998-10-05 20:57:25 +00:00
Stu Grossman
242c0d8180 * c-lang.c (emit_char c_printchar c_printstr), c-lang.h (c_printstr)
ch-lang.c (chill_printstr chill_printchar) c-valprint.c (c_val_print)
	ch-valprint.c (chill_val_print) expprint.c (print_subexp) f-lang.c
	(f_printstr f_printchar emit_char) f-valprint.c (f_val_print) jv-lang.c
	(java_printchar java_emit_char) jv-valprint.c (java_value_print
	java_val_print) language.c (unk_lang_printchar unk_lang_printstr
	unk_lang_emit_char) language.h (struct language_defn LA_PRINT_STRING
	LA_EMIT_CHAR) m2-lang.c (m2_printstr m2_printchar emit_char) printcmd.c
	(print_formatted) scm-lang.c (scm_printstr) valprint.c
	(val_print_string) value.h (val_print_string):  Add emit_char routines
	to language_desc struct to allow finer control over language specific
	character output issues.  Add character width arg to printstr routines
	to allow handling of wchar_t/Unicode strings.  Fix c_printstr to handle
	wide characters.  Supply width argument to LA_PRINT_STRING and
	val_print_string.

	* jv-lang.c (java_object_type dynamics_objfile java_link_class_type
	get_dynamics_objfile get_java_object_type) jv-lang.h
	(get_java_object_type):  Make lots of things static.

	* expprint.c (dump_prefix_expression dump_subexp):  Move opcode name
	printing to common routine (op_name).
	* (dump_subexp):  Add support for OP_SCOPE.
1998-10-05 19:42:04 +00:00
Gavin Romig-Koch
ecd41d25b9 * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line.
* configure.in (elf): Add dwarf1.lo.
	* elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info.
	* elf.c (_bfd_elf_find_nearest_line): Add call to
	_bfd_dwarf1_find_nearest_line.
	* elf32-mips.c (_bfd_mips_elf_find_nearest_line):
	Add call to _bfd_dwarf1_find_nearest_line.
	* configure: Rebuilt.
1998-10-05 16:07:44 +00:00
Catherine Moore
6342b0623a elflink.h (elf_gc_sections): Do not allow garbage
collection if dynamic sections have been created.

: ----------------------------------------------------------------------
1998-10-05 15:21:26 +00:00
Catherine Moore
64923bb947 * ldmain.c (main): Error if --gc-sections and
dyanmic linking.
        * scripttempl/v850.sc:  Add KEEP attribute to .init,
        .fini, .dtors and .ctors.  Add .data and .text
        wildcards to support section garbage collection.
1998-10-05 14:48:32 +00:00
Catherine Moore
d284b1f7c5 Add vtable relocs. 1998-10-05 14:41:43 +00:00
Catherine Moore
272cea1421 * symbols.c (S_IS_FUNCTION): New.
* config/tc-v850.h (obj_fix_adjustable):  Define.
        (TC_FORCE_RELOCATION):  Define.
        (v850_force_relocation):  Declare.
        * config/tc-v850.c (tc_gen_reloc):  Use offset instead
        of fx_addnumber for VTABLE reloc addends.
        (md_apply_fix3):  Handle VTABLE relocs.
        (v850_fix_adjustable):  New.
        (v850_force_relocation):  New.
1998-10-05 14:30:25 +00:00
Catherine Moore
2bbf16bf81 * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and
R_V850_GNU_VTENTRY.
        (v850_elf_check_relocs):  Handle VTINHERIT and VTENTRY relocs.
        (v850_elf_perform_relocation):  Likewise.
        (v850_elf_final_link_relocate):  Likewise.
        (v850_elf_relocate_section):  Likewise.
        (v850_elf_gc_sweep_hook):  New routine.
        (v850_elf_gc_mark_hook):  New routine.
        (elf_backend_can_gc_sections):  Define.
1998-10-05 14:18:10 +00:00
Catherine Moore
1b9dc864ba * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume
that dynobj exists.
1998-10-05 14:08:53 +00:00
Martin Hunt
23e1f78b70 Mon Oct 5 00:34:00 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp_addr): New command. Sets a
	breakpoint at an address. Use this instead of gdb_cmd "break"
	because the syntax of the break command is broken and doesn't
	allow you to create a thread-specific BP at an address.  Also
	this is faster.
1998-10-05 07:32:59 +00:00
Jeff Law
e963374a58 * tc-hppa.c (fp_operand_format): Add some additional formats.
(pa_ip): Do not automatically promote into pa2.0 mode.
        (pa_level): Handle ".level 2.0".
start-sanitize-cygnus
        (struct pa_it): New field "trunc".
        (pa_parse_fp_cnv_format): New function.
        (pa_parse_ftest_gfx_completer): New function.
        (pa_ip): Handle various new letters for PA2.0 support.
end-sanitize-cygnus
1998-10-05 06:52:58 +00:00
Jeff Law
58537630ef * hppa.h: Add "fid".
start-sanitize-cygnus
        Add PA2.0 floating point instructions, including butchered load/store
        with 14bit offset support.
end-sanitize-cygnus
1998-10-05 06:23:20 +00:00
Martin Hunt
d84563bc18 Sun Oct 4 22:35:47 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk-cmds.c (gdb_set_bp): Add an optional thread number.
	(gdb_find_bp_at_line): New function. Returns a list of bpnums
	at the specified line number.
	(gdb_find_bp_at_addr): New function. Returns a list of bpnums
	at an address..
1998-10-05 05:35:01 +00:00
Ian Lance Taylor
cba6760b24 Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu>
* rs6000-core.c (rs6000coff_core_file_matches_executable_p):
	Declare size as bfd_size_type.
	(rs6000coff_get_section_contents): Declare count as bfd_size_type.
1998-10-05 03:37:54 +00:00
Ian Lance Taylor
1bec01fc8b * elflink.h (elf_link_add_object_symbols): When a versioned symbol
has a base which is already defined, only add the referenced
	symbol to the dynamic symbol table if it is defined or referenced
	by a regular file.
1998-10-05 03:11:55 +00:00
Jeff Law
6886ab292b * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch
structure.
        * som.c (CPU_PA_RISC2_0): Define.
        (_PA_RISC2_0_ID): Likewise.
        (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed.
PA2.0 infrastructure.
1998-10-05 02:42:05 +00:00
Ian Lance Taylor
0f529d8c15 * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs
correctly.
1998-10-05 01:19:36 +00:00
Ian Lance Taylor
a315d03d17 * i386.h (R_386_max): Change from 252 to 24. 1998-10-05 01:18:32 +00:00
Ian Lance Taylor
7b83af29e4 Sun Oct 4 21:00:00 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
From Robert Andrew Dale <rob@nb.net>
	* i386.h (i386_optab): Add AMD 3DNow! instructions.
	(AMD_3DNOW_OPCODE): Define.
1998-10-05 01:01:27 +00:00
Ian Lance Taylor
b3ef365828 Sun Oct 4 20:57:43 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
	* config/tc-i386.h (template.extension_opcode): Change to
        unsigned int to allow full range of 8-bit opcode suffixes.
	(None): Redefine as 0xffff.

	From Jeff B Epler <jepler@usgs.gov>
	* doc/c-i386.texi (i386-SIMD): New section.
1998-10-05 00:59:52 +00:00
Ian Lance Taylor
1d7d9a100b fix copyrights 1998-10-05 00:41:11 +00:00
Ian Lance Taylor
dc6c45d7cb From Nokubi Hirotaka <hnokubi@yyy.or.jp>:
* objcopy.1: Fix typo in --remove-leading-char docs.
	* objdump.1: Fix formatting in --stabs docs.
1998-10-05 00:37:21 +00:00