old-cross-binutils/sim/d10v/ChangeLog

270 lines
9.9 KiB
Text

Thu Oct 17 12:24:16 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* endian.c: Optimize simulated loads/stores on x86, AIX, and big
endian hosts.
* configure.in (--enable-sim-bswap): New switch to enable using
the BSWAP instruction on x86's.
* configure: Regenerate.
* Makefile.in ({SWAP,CONFIG}_CFLAGS): Add --enable-sim-bswap
support.
Wed Oct 16 13:50:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* endian.c: New file. Move endian functions here from interp.c.
Optimize code, and make it work as either inline functions or as a
separate file.
* interp.c: Move endian functions from here to endian.c.
* Makefile.in (INCLUDE): Add endian.c.
(run,libsim.a): Add dependency on endian.o.
(endian.o): Add dependency.
* d10v_sim.h (read/write support): Always go through the machine
independent endian functions. If compiling with GCC and
optimizing, include endian.c so the endian functions are inlined.
* simops.c (OP_5F00): Correct tracing of accumulators.
Tue Oct 15 10:57:50 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (OP_5F00): Add support for getpid, kill system calls.
* interp.c (do_{2_short,parallel}): If an exception is raised,
don't execute the second instruction.
Sat Oct 12 22:17:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (OP_{31000000,6601,6201,6200}): Store address in a
temporary in case the register is overriden when loading.
(OP_6200): Output type is OP_DREG for tracing.
Fri Oct 4 23:46:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* d10v_sim.h (struct _state): Add mem_{min,max} fields.
* interp.c (sim_size): Initialize mem_{min,max} fields.
(sim_write): Update mem_{min,max} fields.
(sim_resume): If PC is not in the minimum/maximum memory range,
abort.
(sim_create_inferior): Preserve mem_{min,max} fields.
Fri Sep 27 13:11:58 1996 Mark Alexander <marka@cygnus.com>
* simops.c (OP_5F00): Add support for time() system call.
Wed Sep 25 16:31:41 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (OP_{6E01,6A01,6E1F,6A00}): Print both words being
stored if tracing.
(OP_5F00,trace_{in,out}put_func): Add finer grain tracing for
system calls.
Mon Sep 23 17:55:30 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (op_types): Add OP_{CONSTANT8,R2,R3}.
(trace_input_func): Add support for OP_{CONSTANT8,R2,R3}.
(OP_{4900,24800000,4800,4A00,4B00,4D00,4C00}): Add OP_R2 and OP_R3
to call/subroutine returns to trace the first two arguments and
the return value. For small jumps, use CONSTANT8, not CONSTANT16.
Fri Sep 20 15:36:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* interp.c (sim_create_inferior): Reinitialize State every time
sim_create_inferior() is called.
Thu Sep 19 21:38:20 1996 Michael Meissner <meissner@wogglebug.ziplink.net>
* simops.c (OP_{401,2000000,601,3000000,23000000}): Get sign right
on comparisons.
(OP_401): Fix tracing information.
Thu Sep 19 10:30:22 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (SIZE_{PC,LINE_NUMBER}): New default sizes for output.
(trace_input_func): Use them.
(trace_input_func): Make sure there is a trailing space after the
instruction.
(OP_6200): Fix tracing info.
* Makefile.in (run): Add dependencies on libbfd.a and
libiberity.a.
Wed Sep 18 09:13:25 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* d10v_sim.h (DEBUG_INSTRUCTION): New debug value to include line
numbers and function names in debug trace.
(DEBUG): If not defined, set to DEBUG_TRACE, DEBUG_VALUES, and
DEBUG_LINE_NUMBER.
(SIG_D10V_{STOP,EXIT}): Values to represent the stop instruction
and exit system call trap being executed.
* interp.c (sim_stop_reason): Set exit code correctly for stop
instruction and exit system call trap.
* configure.in (--enable-sim-cflags): Remove trace case.
(--enable-sim-debug): New switch to set the debug values.
* configure: Regenerate.
* simops.c (trace_{input,output}_func): Rename from
trace_{input,output}.
(trace_{input,output}): Call trace_{input,output}_func if
d10v_debug is non-zero.
(SIZE_INSTRUCTION): Cut down to 8.
(SIZE_OPERANDS): Cut down to 18.
(SIZE_LOCATION): New value for size of line number, function name
field.
(init_text_p,text{,_start,_end}): New static variables for
printing line number and function name.
(exec_bfd): New external that run.c sets.
(trace_input_func): Print line number and function name if
available and if desired.
(OP_4E09): Don't print out DBT message.
(OP_5FE0): Set exception field to SIG_D10V_STOP.
(OP_5F00): Set exception field to SIG_D10V_EXIT.
Sat Sep 14 22:18:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* interp.c (do_2_short): If the instruction encodes jump->ins,
don't do the second instruction if the jump succeeds.
Fri Sep 13 22:35:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (OP_5F00): Use unknown traps to print all GPRs,
accumulators, PC, and F0/F1/C flags.
Thu Sep 12 12:50:11 1996 Mark Alexander <marka@cygnus.com>
* simops.c (OP_5F00): Fix problems with system calls.
Thu Sep 12 12:19:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (OP_5F00): Correct tracing information for trap.
Wed Sep 11 18:55:50 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* Makefile.in (CSEARCH): Correctly find opcodes directory.
Mon Sep 9 13:27:26 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (trace_output): Properly align accumulator output.
(OP_3{0,2,4}00): Properly parenthesize test expression. Add error
if shift count is too high.
(OP_4E{00,02,04,20,22,40,42}): Make tests agree with book.
(OP_4E09): Make cpfg properly trace the input flags.
(op_types): Add OP_FLAG_OUTPUT.
(trace_{input,output}): Support OP_FLAG_OUTPUT.
(OP_31000000): This ld2w varient is a 16-bit memory reference, not
an 8-bit memory reference instruction for tracing purposes.
(OP_201): Addi needs to set the carry.
Fri Sep 6 17:56:17 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* simops.c (OP_2600, OP_2601): Changed min and max comparisons
to use signed register values.
Wed Sep 4 11:35:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* d10v_sim.h (DEBUG_*): Add bit flags for controlling debug
output.
(_ins_type): New enumeration to specify which container an
instruction is in, and whether it is part of a parallel operation.
(_state): Add ins_type field.
({,u}int{8,16,32,64}): Use limits.h to size the appropriate types.
(ins_type_counters): Counters for the various instruction types.
({left,right}_nops): Counters for the number of nops in each
container.
(d10v_debug): New variable to indicate whether debugging is turned
on.
* simops.c: (all functions): Change all #ifdef DEBUG code so that
the input and output values can be traced, along with the
instruction type. Make the -t option enable tracing.
(all functions): Change printf calls to use the printf_filtered
function in the callback table.
* interp.c (_leftright): New enumeration to say whether 2 short
instructions are done left first or right first.
(do_{long,2_short,parallel}): Indicate in the machine state which
type of instruction this is. Count each of the types of
instructions executed.
(sim_size): Only print the memory sizes if DEBUG_MEMSIZE debug
flag is set.
(sim_resume): Pass left/right indication to do_2_short.
(all functions): Change printf calls to use the printf_filtered
function in the callback table.
(sim_trace): Turn on debug flag if DEBUG was defined, and call
sim_resume.
(sim_info): Print out statistics on instructions.
(sim_{trace,create_inferior}): Eliminate extraneous output unless
debugging.
(sim_open): If args == -t and DEBUG was defined, set d10v_debug.
Only initialize the hash table the first time sim_open is called.
* Makefile.in: Make objects depend on d10v_sim.h.
({,SIM_}CFLAGS): Include configure dependent switches. Setting
CFLAGS does not override host/target defines or SIM_CFLAGS.
(CC_FOR_BUILD,gencode): Use CC_FOR_BUILD to compile gencode.
(run): By default, the math library is not needed to be linked
in.
({BFD,LIBIBERTY}_LIB): Define as variables so they can be
overridden.
(VPATH): Don't set to anything but @srcdir@ to work with non-GNU
makes.
({run,callback}.o): Provide explicit paths to their appropriate
source directories.
(gencode{,.o},d10v-opc.o): Split compilation into creating object
and linking. Instead of linking in libopcodes.a, just compile
d10v-opc.o directly to handle canadian cross.
(CSEARCH): Add opcodes directory.
* configure.in (--enable-sim-cflags): New switch to allow user to
set the defaults.
(CC_FOR_BUILD): Deal with canadian crosses.
* configure: Regenerate.
Wed Sep 04 04:45:34 1996 Mark Alexander <marka@cygnus.com>
* simops.c: Include correct syscall.h for d10v, not host's.
Fix #ifdef SYS_stat.
Tue Sep 3 14:00:04 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* simops.c (OP_5F00): Wrap all SYS_xxx traps with #ifdef.
Add trap 2 to be printf and trap 3 to be putchar.
Wed Aug 28 21:42:34 1996 Mark Alexander <marka@cygnus.com>
* Makefile.in, d10v_sim.h, interp.c, simops.c: Add support
for low-level system calls.
Wed Aug 28 17:33:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* Makefile.in, d10v_sim.h, interp.c: Fix byte-order problems.
Mon Aug 26 18:30:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* d10v_sim.h (SEXT32): Added.
* interp.c: Commented out printfs.
* simops.c: Fixed error in sb and st2w.
Thu Aug 15 13:30:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* Makefile.in, d10v_sim.h, interp.c, simops.c: Added remaining
DSP instructions. Added modulo addressing.
Sun Aug 11 12:57:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* Makefile.in, d10v_sim.h, interp.c, simops.c: Snapshot.
Fri Aug 2 17:44:24 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* d10v_sim.h, simops.c: Snapshot.
Thu Aug 1 17:05:24 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* ChangeLog, Makefile.in, configure, configure.in, d10v_sim.h,
gencode.c, interp.c, simops.c: Created.