Commit Graph

2536 Commits

Author SHA1 Message Date
Alan Modra
9e126dc094 * interp.c (sim_load): Don't refer directly to _cooked_size and vma;
Use bfd_section_size and bfd_get_section_vma.
2003-10-11 12:41:12 +00:00
Dave Brolley
5ca353c3d9 2003-10-10 Dave Brolley <brolley@redhat.com>
* sim/frv/testutils.inc (or_gr_immed): New macro.
        * sim/frv/fp_exception-fr550.cgs: Write insns using
        unaligned registers into the program in order to
        cause the required exceptions.
        * sim/frv/fp_exception.cgs: Ditto.
        * sim/frv/regalign.cgs: Ditto.
2003-10-10 19:30:50 +00:00
Dave Brolley
29a79ca0f9 2003-10-10 Dave Brolley <brolley@redhat.com>
* cpu.h, sem.c: Regenerate.
2003-10-10 19:30:21 +00:00
Dave Brolley
b4ab4027a6 2003-10-08 Dave Brolley <brolley@redhat.com>
* configure.in: Move frv handling to alphabetically correct placement.
2003-10-08 18:24:37 +00:00
Dave Brolley
086419a898 2003-10-06 Dave Brolley <brolley@redhat.com>
* sim/frv/fr550: New subdirectory.
        * sim/frv/fr400/*.cgs: Add fr550 as appropriate.
        * sim/frv/fr500/*.cgs: Add fr550 as appropriate.
        * sim/frv/interrupts/*.cgs: Add fr550 as appropriate.
        * sim/frv/interrupts/*-fr550.cgs: New test cases for fr550.
2003-10-08 18:21:02 +00:00
Dave Brolley
e930b1f54f 2003-10-06 Dave Brolley <brolley@redhat.com>
* profile-fr550.[ch]: New files.
        * configure.in: Move frv handling to alphabetically correct placement.
        * Makefile.in: Add fr550 support.
        * frv-sim.h,frv.c,interrups.c,memory.c,mloop.in,pipeline.c,
        profile.[ch],registers.c,traps.c: Add fr550 support.
        * arch.c,arch.h,cpu.c,cpu.h,cpuall.h,model.h,decode.c,decode.h,sem.c:
        Regenerate.
2003-10-08 18:19:33 +00:00
Dave Brolley
22f367a754 2003-09-25 Dave Brolley <brolley@redhat.com>
* reset.c (frv_initialize): Call frv_register_control_init first.
2003-09-25 21:45:45 +00:00
Dave Brolley
1c453cd621 2003-09-24 Dave Brolley <brolley@redhat.com>
* profile.h (update_FR_ptime): New prototype.
        (update_FRdouble_ptime): Ditto.
        (update_SPR_ptime): Ditto.
        (increase_ACC_busy): Ditto.
        (enforce_full_acc_latency): Ditto.
        (post_wait_for_SPR): Ditto.
        * profile.c (update_FR_ptime): Moved here from profile-fr500.c.
        (update_FRdouble_ptime): Ditto.
        (update_SPR_ptime): New function.
        (increase_ACC_busy): Ditto.
        (enforce_full_acc_latency): Ditto.
        (vliw_wait_for_fdiv_resource): Correct resource name.
        (vliw_wait_for_fsqrt_resource): Ditto.
        (post_wait_for_SPR): New function.
        * profile-fr500.c (frvbf_model_fr500_u_commit): New function.
        (frvbf_model_fr500_u_gr2fr): Pass out_FRk as output register to
        adjust_float_register_busy.
        (frvbf_model_fr500_u_gr_load): Record latency of SPR registers.
        (frvbf_model_fr500_u_fr_load): Wait for and record latency of SPR
        registers.
        (frvbf_model_fr500_u_float_arith): Ditto.
        (frvbf_model_fr500_u_float_dual_arith): Ditto.
        (frvbf_model_fr500_u_float_div): Ditto.
        (frvbf_model_fr500_u_float_sqrt): Ditto.
        (frvbf_model_fr500_u_float_convert): Ditto.
        (update_FR_ptime): Moved to profile.c
        (update_FRdouble_ptime): Moved to profile.c
        * profile-fr400.c (update_FR_ptime): Removed. Identical to functions
        for other machines.
        (update_FRdouble_ptime): Ditto.
        * arch.h,cpu.h,sem.c,decode.[ch],model.c,sem.c: Regenerated.
2003-09-24 19:05:39 +00:00
Michael Snyder
f6f87075ea 2003-09-19 Michael Snyder <msnyder@redhat.com>
* sim/frv/nldqi.cgs: Remove.  This insn was never implemented
	by Fujitsu.
2003-09-19 18:59:45 +00:00
Dave Brolley
d45d015e0c 2003-09-19 Dave Brolley <brolley@redhat.com>
* sim/frv/rstqf.cgs: Use nldq instead of nldqi.
        * sim/frv/rstq.cgs: Use nldq instead of nldqi.
2003-09-19 17:38:57 +00:00
Dave Brolley
93938d4744 Correct last entry. 2003-09-12 22:07:53 +00:00
Dave Brolley
153431d6b1 2003-09-12 Dave Brolley <brolley@redhat.com>
* registers.c (frv_check_spr_read_access): Check for access to
        ACC4-ACC63 and ACCG4-ACCG63.
        * profile.h (frv-desc.h): #include it.
        (spr_busy): New member of FRV_PROFILE_STATE.
        (spr_latency): Ditto.
        (GNER_FOR_GR): New macro.
        (FNER_FOR_FR): New maccro.
        (update_SPR_latency): New function.
        (vliw_wait_for_SPR): New function.
        * profile.c (profile-fr550.h): #include it.
        (update_latencies): Update SPR latencies.
        (update_target_latencies): Ditto.
        (update_SPR_latency): New function.
        (vliw_wait_for_SPR): New function.
        * profile-fr500.c (frvbf_model_fr500_u_idiv): Record GNER latency.
        (frvbf_model_fr500_u_trap): Removed unused variable, ps.
        (frvbf_model_fr500_u_check): Ditto.
        (frvbf_model_fr500_u_clrgr): New unit modeller for fr500.
        (frvbf_model_fr500_u_clrfr): Ditto.
        (frvbf_model_fr500_u_spr2gr): Wait for SPR.
        (frvbf_model_fr500_u_gr2spr): Ditto.
        * frv-sim.h (H_SPR_ACC4): New macro.
        (H_SPR_ACCG4): New macro;
        (H_SPR_ACC0): Removed.
        (H_SPR_ACCG0): Removed.
        * arch.h,model.c,sem[ch],decode.[ch]: Regenerated.
2003-09-12 22:05:22 +00:00
Michael Snyder
e961d8dc41 2003-09-11 Michael Snyder <msnyder@redhat.com>
* sim/testsuite/sim/frv/movgs.cgs: Change lcr to spr[273],
	which according to the comments seems to be the intent.
2003-09-11 18:39:05 +00:00
Dave Brolley
ba9c40534b 2003-09-10 Dave Brolley <brolley@redhat.com>
* profile.c (slot_names): FM1 was listed twice. Changed first
        instance to FM0. Added IALL, FMALL and FMLOW.
        (print_parallel): Don't examine slots with no insns.
2003-09-10 20:40:47 +00:00
Dave Brolley
fbd93201df 2003-09-09 Dave Brolley <brolley@redhat.com>
* sim/frv/maddaccs.cgs: move to fr400 subdirectory.
        * sim/frv/msubaccs.cgs: move to fr400 subdirectory.
        * sim/frv/masaccs.cgs: move to fr400 subdirectory.
2003-09-09 22:34:53 +00:00
Dave Brolley
f9e18f5a11 2003-09-09 Dave Brolley <brolley@redhat.com>
* frv.c (do_media_average): Select machine using a switch.
2003-09-09 22:28:33 +00:00
Dave Brolley
a6fc177898 2003-09-08 Dave Brolley <brolley@redhat.com>
On behalf of Doug Evans <dje@sebabeach.org>
        * Makefile.in (stamp-arch,stamp-cpu,stamp-xcpu): Pass archfile to cgen.
2003-09-08 17:26:20 +00:00
Dave Brolley
75a5ca8f8e 2003-09-08 Dave Brolley <brolley@redhat.com>
On behalf of Doug Evans <dje@sebabeach.org>
        * Makefile.in (stamp-arch,stamp-cpu, stamp-desc): Pass archfile to cgen.
2003-09-08 17:25:56 +00:00
Dave Brolley
d89a78b651 2003-09-08 Dave Brolley <brolley@redhat.com>
On behalf of Doug Evans <dje@sebabeach.org>
        * Makefile.in (stamp-arch,stamp-cpu): Pass archfile to cgen.
        Remove copying of .cpu file to cgen/cpu, no longer needed.
2003-09-08 17:25:35 +00:00
Dave Brolley
ea52ff81ba 2003-09-08 Dave Brolley <brolley@redhat.com>
On behalf of Doug Evans <dje@sebabeach.org>
        * cgen.sh: New arg archfile.
        * Make-common.in (cgen-arch,cgen-cpu,cgen-defs,cgen-decode,
        cgen-cpu-decode,cgen-desc): Update call to cgen.sh.
2003-09-08 17:24:59 +00:00
Nick Clifton
c5ea1d538f Add support for v850e1 instructions 2003-09-05 17:46:52 +00:00
Dave Brolley
d03ea14fb1 003-09-03 Dave Brolley <brolley@redhat.com>
* cpu.h, model.c, sem.c, decode.h, decode.c: Regenerated.
2003-09-03 23:12:21 +00:00
Ben Elliston
cc9855138d Spelling fix by the ChangeLog police. 2003-09-03 22:40:45 +00:00
Michael Snyder
19121792cc 2003-09-03 Michael Snyder <msnyder@redhat.com>
* sim/frv/fr500/mclracc.cgs: Change mach to 'all',
        to be consistant with other tests in the directory.
2003-09-03 21:56:01 +00:00
Michael Snyder
0eb3d26069 2003-09-03 Michael Snyder <msnyder@redhat.com>
* sim/frv/interrupts/Ipipe-fr400.cgs: New file.
	* sim/frv/interrupts/Ipipe-fr500.cgs: New file.
	* sim/frv/interrupts/Ipipe.cgs: Remove (replaced by above).
2003-09-03 21:51:57 +00:00
Andreas Schwab
fb72cee0ad * Makefile.in (FLAGS_TO_PASS): Pass down $(bindir) and $(mandir). 2003-09-03 18:46:52 +00:00
Dave Brolley
e8d2f504d4 2003-08-29 Dave Brolley <brolley@redhat.com>
* Makefile.in (stamp-arch): Copy frv.cpu from $(srcdir)../../cpu
        temporarily when regenerating files.
        (stamp-cpu): Ditto.
2003-08-29 19:13:00 +00:00
Dave Brolley
b3af7bdf4b 2003-08-29 Dave Brolley <brolley@redhat.com>
* MAINTAINERS: Add myself as maintainer of the FRV port.
2003-08-29 17:20:42 +00:00
Dave Brolley
84fabdf612 2003-08-20 Michael Snyder <msnyder@redhat.com>
Dave Brolley  <brolley@redhat.com>

        * frv/: New directory, simulator for the Fujitsu FR-V.
        * testsuite/frv-elf/: New directory.
        * testsuite/sim/frv/: New directory.
        * configure.in: Add frv configury.
        * configure: Regenerate.
2003-08-29 16:45:22 +00:00
Dave Brolley
33319edb53 2003-08-20 Michael Snyder <msnyder@redhat.com>
Dave Brolley  <brolley@redhat.com>

        * cgen-par.h (flags, word1): New target-specific
        fields of CGEN_WRITE_QUEUE_ELEMENT.
        (CGEN_WRITE_QUEUE_ELEMENT_FLAGS): New accessor macro.
        (CGEN_WRITE_QUEUE_ELEMENT_WORD1): New accessor macro.
        * gennltvals.sh: Add frv target.
        * nltvals.def: Add frv target.
2003-08-29 16:43:38 +00:00
Dave Brolley
51796a3f8b 2003-08-20 Michael Snyder <msnyder@redhat.com>
On behalf of Dave Brolley

        * sim/frv: New testsuite.
        * frv-elf: New testsuite.
2003-08-29 16:42:18 +00:00
Dave Brolley
4a30611667 New sim testsuite for Fujitsu FRV. Contributed by Red Hat. 2003-08-29 16:41:31 +00:00
Dave Brolley
b34f6357d0 New simulator for Fujitsu frv contributed by Red Hat. 2003-08-29 16:35:47 +00:00
Andrew Cagney
e158f0a010 Index: common/ChangeLog
2003-08-28  Andrew Cagney  <cagney@redhat.com>

	* dv-glue.c (hw_glue_finish): Change %d to %ld to match sizeof.
	* sim-options.c (print_help): Cast the format with specifier to
	"int".

Index: mn10300/ChangeLog
2003-08-28  Andrew Cagney  <cagney@redhat.com>

	* dv-mn103ser.c (do_polling_event): Change type of "serial_reg" to
	"long".
	(read_status_reg): Cast "serial_reg" to "long".
	* dv-mn103tim.c (do_counter_event): Change type of "timer_nr" to
	"long".
	(do_counter6_event, write_mode_reg, write_tm6md): Ditto.
2003-08-28 17:02:00 +00:00
Michael Snyder
be8fb42bc5 2003-08-11 Michael Snyder <msnyder@redhat.com>
* macl.s: New file.
        * macw.s: New file.
        * allinsn.exp: Add new tests for mac.w and mac.l.
2003-08-11 19:36:23 +00:00
Michael Snyder
d1789acece 2003-08-11 Shrinivas Atre <shrinivasa@KPITCummins.com>
* sim/sh/gencode.c ( tab[] ): Addition of MAC.L handler and
        correction for MAC.W handler
        * sim/sh/interp.c ( macl ): New Function. Implementation of
        MAC.L handler.
2003-08-11 19:28:05 +00:00
Ben Elliston
c53d60d804 * MAINTAINERS: Update my mail address. 2003-08-10 10:42:22 +00:00
Andrew Cagney
c55433ef61 2003-08-09 Andrew Cagney <cagney@redhat.com>
* MAINTAINERS: Andrew Cagney (mips) and Geoff Keating (ppc) drop
	maintenance.  List igen and sh maintainers.  Mention that target
	and global maintainers pick up the slack.
2003-08-09 14:10:49 +00:00
Stephane Carrez
a685700c57 * dv-m68hc11tim.c (cycle_to_string): Add flags parameter to better
control the translation.
	(m68hc11tim_print_timer): Update cycle_to_string conversion.
	(m68hc11tim_timer_event): Fix handling of output
	compare register with its interrupts.
	(m68hc11tim_io_write_buffer): Check output compare
	after setting M6811_TMSK1.
	(m68hc11tim_io_read_buffer): Fix compilation warning.
	* dv-m68hc11.c (m68hc11_option_handler): Likewise.
	* dv-m68hc11spi.c (m68hc11spi_info): Likewise.
	* dv-m68hc11sio.c (m68hc11sio_info): Likewise.
	* interrupts.c (interrupts_info): Likewise.
	(interrupts_reset): Recognize bootstrap mode.
	* sim-main.h (PRINT_CYCLE, PRINT_TIME): New defines.
	(_sim_cpu): Add cpu_start_mode.
	(cycle_to_string): Add flags member.
	* m68hc11_sim.c (OPTION_CPU_BOOTSTRAP): New option.
	(cpu_options): Declare new option bootstrap.
	(cpu_option_handler): Handle it.
	(cpu_info): Update call to cycle_to_string.
2003-08-08 21:02:24 +00:00
Stephane Carrez
77342e5ecc * sim-main.h (phys_to_virt): Use memory bank parameters to translate
the physical address in virtual address.
	(struct _sim_cpu): Add memory bank members.
	* m68hc11_sim.c (cpu_initialize): Clear memory bank parameters.
	* interp.c (sim_hw_configure): Create memory bank according to memory
	bank parameters.
	(sim_get_bank_parameters): New function to obtain memory bank config
	from the symbol table.
	(sim_prepare_for_program): Call it to obtain the memory bank parameters.
	(sim_open): Call sim_prepare_for_program.
	* dv-m68hc11.c (m68hc11cpu_io_write_buffer): Use memory bank parameters
	to check if address is within bank window.
	(m68hc11cpu_io_read_buffer): Likewise.
	(attach_m68hc11_regs): Map the memory bank according to memory bank
	parameters.
2003-08-08 20:42:21 +00:00
Stephane Carrez
53b3cd2254 * sim-main.h (PAGE_REGNUM, Z_REGNUM): Use same numbering as gdb. 2003-08-08 20:31:10 +00:00
Stephane Carrez
962e9d85f3 * m68hc11_sim.c (print_io_word): New function to print 16-bit value.
* sim-main.h (print_io_word): Declare.
	* dv-m68hc11tim.c (tmsk1_desc): New description table for TMSK1.
	(tflg1_desc): Likewise for TFLG1.
	(m68hc11tim_info): Print input and output compare registers
2003-08-08 20:25:50 +00:00
Michael Snyder
240f98d342 2003-08-07 Michael Snyder <msnyder@redhat.com>
* gencode.c (expand_ppi_code): Comment spelling fix.
2003-08-07 21:36:43 +00:00
Michael Snyder
735979c782 2003-07-22 Michael Snyder <msnyder@redhat.com>
* cmpw.s: Add test for less-than-zero immediate.
	* shll.s: Test for shll reg, reg.
	* shlr.s: Test for shlr reg, reg.
	* mova.s: Add dozens of new mova tests.
2003-07-29 21:07:40 +00:00
Michael Snyder
f408565cc8 2003-07-18 Michael Snyder <msnyder@redhat.com>
* compile.c (decode): Enhancements for mova.
        Initialize cst, reg, and rdisp inside the loop, for each
        new instruction.  Defer correction of the disp2 values until
        later, and then adjust them by the size of the first operand,
        rather than the size of the instruction.
        (sim_resume): For mova, adjust the size of the second operand
        according to the type of the first operand (INDEXB vs. INDEXW).
        In cases where there is only one operand, the other two must
        both be composed on the fly.
2003-07-29 21:03:39 +00:00
Michael Snyder
a5de4c570e 2003-07-25 Michael Snyder <msnyder@redhat.com>
* pshai.s, pshar.s, pshli.s, pshlr.s: New files.
	* allinsn.exp: Add psha, pshl tests.
	* pdec.s, pinc.s, padd.s, paddc.s: New files.
	* allinsn.exp: Add pdec, pinc, padd, paddc tests.
	* pand.s, pdmsb.s: New files.
	* allinsn.exp: Add pand, pdmsb tests.
2003-07-26 01:00:33 +00:00
Michael Snyder
9142f946a7 2003-07-08 Michael Snyder <msnyder@redhat.com>
* allinsn.exp, testutils.inc, add.s, fabs.s, fadd.s, fcmpeq.s,
        fcmpgt.s, fcnvds.s, fcnvsd.s, fdiv.s, fldi0.s, fldi1.s, flds.s,
        float.s, fmac.s, fmov.s, fmul.s, fneg.s, frchg.s, fschg.s,
        fsqrt.s, fsub.s, ftrc.s, shll16.s, shll2.s, shll8.s, shll.s,
        shlr16.s, shlr2.s, shlr8.s, shlr.s, swap.s: New files.
2003-07-26 00:54:58 +00:00
Michael Snyder
437b0e60a1 2003-07-25 Michael Snyder <msnyder@redhat.com>
* gencode.c (pshl): Change < to <= (shift by 16 is allowed).
        Cast argument of >> to unsigned to prevent sign extension.
        (psha): Change < to <= (shift by 32 is allowed).
2003-07-25 23:52:43 +00:00
Michael Snyder
32fcda6a20 2003-07-24 Michael Snyder <msnyder@redhat.com>
* gencode.c: Fix typo in comment.
2003-07-25 00:59:36 +00:00
Michael Snyder
e343a93ac0 2003-07-23 Michael Snyder <msnyder@redhat.com>
* gencode.c: A few more fix-ups of refs and defs.
        (frchg): Raise SIGILL if in double-precision mode.
        (ldtlb): We don't simulate cache, so this is a no-op.
        (movsxy_tab): Correct a few bit pattern errors.
2003-07-24 00:38:07 +00:00