3 * Makefile.in: Define NL_TARGET so that targ-vals.h will be used
5 * simops.c: Use targ-vals.h instead of syscall.h.
9 * configure: Regenerated to track ../common/aclocal.m4 changes.
11 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
13 * configure: Regenerated to track ../common/aclocal.m4 changes.
18 * acconfig.h: New file.
19 * configure.in: Reverted change of Apr 24; use sinclude again.
21 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
23 * configure: Regenerated to track ../common/aclocal.m4 changes.
28 * configure.in: Don't call sinclude.
30 Thu Apr 23 09:48:14 1998 Tom Tromey <tromey@creche>
32 * configure: Regenerated to track ../common/aclocal.m4 changes.
36 * configure: Regenerated to track ../common/aclocal.m4 changes.
40 * configure: Regenerated to track ../common/aclocal.m4 changes.
44 * configure: Regenerated to track ../common/aclocal.m4 changes.
48 * configure: Regenerated to track ../common/aclocal.m4 changes.
52 * interp.c (sim_store_register, sim_fetch_register): Pass in
53 length parameter. Return -1.
57 * configure: Regenerated to track ../common/aclocal.m4 changes.
61 * configure: Regenerated to track ../common/aclocal.m4 changes.
63 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
65 * configure: Regenerated to track ../common/aclocal.m4 changes.
69 * simops.c: Stores to abs16 memory addresses zero extend the
74 * configure: Regenerated to track ../common/aclocal.m4 changes.
79 * configure: Regenerated to track ../common/aclocal.m4 changes.
83 * interp.c (sim_load): Pass lma_p and sim_write args to
88 * configure: Regenerated to track ../common/aclocal.m4 changes.
92 * configure: Regenerated to track ../common/aclocal.m4 changes.
96 * configure: Regenerated to track ../common/aclocal.m4 changes.
100 * configure: Regenerated to track ../common/aclocal.m4 changes.
104 * configure: Regenerated to track ../common/aclocal.m4 changes.
108 * configure: Regenerated to track ../common/aclocal.m4 changes.
110 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
112 * configure: Regenerated to track ../common/aclocal.m4 changes.
116 * simops.c: PC relative instructions are relative to the next
117 instruction, not the current instruction.
121 * configure: Regenerated to track ../common/aclocal.m4 changes.
126 * interp.c (sim_kill): Delete.
127 (sim_create_inferior): Add ABFD argument.
128 (sim_load): Move setting of PC from here.
129 (sim_create_inferior): To here.
133 * configure: Regenerated to track ../common/aclocal.m4 changes.
138 * interp.c (sim_open): Add ABFD argument.
142 * interp.c (sim_resume): Clear State.exited.
143 (sim_stop_reason): If State.exited is nonzero, then indicate that
144 the simulator exited instead of stopped.
145 * mn10200_sim.h (struct _state): Add exited field.
146 * simops.c (syscall): Set State.exited for SYS_exit.
150 * interp.c: Replace all references to load_mem and store_mem
151 with references to load_byte, load_half, load_3_byte, load_word
152 and store_byte, store_half, store_3_byte, store_word.
153 (INLINE): Delete definition.
154 (load_mem_big): Likewise.
155 (max_mem): Make it global.
156 (dispatch): Make this function inline.
157 (load_mem, store_mem): Delete functions.
158 * mn10200_sim.h (INLINE): Define.
159 (RLW): Delete unused definition.
160 (load_mem, store_mem): Delete declarations.
161 (load_mem_big): New definition.
162 (load_byte, load_half, load_3_byte, load_word): New functions.
163 (store_byte, store_half, store_3_byte, store_word): New functions.
164 * simops.c: Replace all references to load_mem and store_mem
165 with references to load_byte, load_half, load_3_byte, load_word
166 and store_byte, store_half, store_3_byte, store_word.
170 * interp.c (sim_open): Add callback argument.
171 (sim_set_callbacks): Delete SIM_DESC argument.
175 * interp.c (compare_simops): New function.
176 (sim_open): Sort the Simops table before inserting entries
181 * interp.c (load_mem): Fix formatting/indention problems with
182 last change. If we get a load from an out of range address,
183 abort instead of returning zero.
184 (store_mem): Abort if we try to store to an out of range address.
188 * simops.c (OP_F010): Fix some arguments to correspond
189 with reality (types of arguments passed to lseek, read,
192 * interp.c (max_mem): New variable.
193 (load_mem): Check memory address against max_mem to
194 avoid some self-destructive behaviors.
198 * simops.c: Fix typo in cc0 setting for lsr.
202 * interp.c: Random typo/thinko cleanups.
206 * configure: Regenerated to track ../common/aclocal.m4 changes.
210 * simops.c: Fix typo in "open" syscall emulation.
214 * interp.c (sim_stop): Add stub function.
218 * Makefile.in (SIM_OBJS): Add sim-load.o.
219 * interp.c (sim_kind, myname): New static locals.
220 (sim_open): Set sim_kind, myname. Ignore -E arg.
221 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
222 load file into simulator. Set start address from bfd.
223 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
227 * simops.c (OP_F010): SYS_execv, SYS_time, SYS_times, SYS_utime
228 only include if implemented by host.
232 * configure: Regenerated to track ../common/aclocal.m4 changes.
237 * Makefile.in: Change mn10200-opc.o to m10200-opc.o, to match
238 corresponding change in opcodes directory.
242 * interp.c (sim_open): New arg `kind'.
244 * configure: Regenerated to track ../common/aclocal.m4 changes.
248 * configure: Regenerated to track ../common/aclocal.m4 changes.
252 * mn10200_sim.h: Protect uses of "signed" to cater to broken
253 non-ansi compilers (HPs). Don't use #error for the same reason.
257 * simops.c: Don't sign-extend immediate for "mov imm16,an".
258 Simplify "sub" handling. Fix "mul" to properly sign extend
259 operands. Set CF appropriately for btst imm16,dn. Implement "rti".
261 * gencode.c: Delete unused "Opcodes" and "curop" variables.
265 * configure: Regenerated to track ../common/aclocal.m4 changes.
269 * configure: Re-generate.
273 * configure: Regenerate to track ../common/aclocal.m4 changes.
277 * interp.c (sim_open): New SIM_DESC result. Argument is now
279 (other sim_*): New SIM_DESC argument.
283 * simops.c: Fix typo for "bclr".
287 * simops.c: Handle new calling convention in emulated syscall
292 * interp.c (load_mem_big): Add some missing parens.
296 * simops.c: Don't use "long long" data types for intermediate
297 values in "divu", "mul" and "mulu" instructions.
301 * interp.c (hash): Rework to be more efficient.
302 (dispatch): Renamed from lookup_hash. Dispatch to the target
303 function and update the PC here.
304 (load_mem_big): Now a macro.
305 (sim_resume): Restructure code to read an insn, determine its
306 length, call dispatch routines, etc to be much more efficient.
310 * interp.c (MAX_HASH): Redefine to 127.
311 (struct hash_entry): Add "count" field when HASH_STAT is defined.
312 (hash): Improve hashing for many heavily used opcodes.
313 (lookup_hash): Bump counters if HASH_STAT is defined.
314 (sim_open): Don't put the same opcode in the hash table more
315 than once. Clear counters if HASH_STAT is defined.
316 (sim_resume): After program exits, dump hash table stats if
317 HASH_STAT is defined.
321 * simops.c: Fix register extraction for "ext dn".
325 * simops.c: Fix register extractions for "movbu (an), dm".
329 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
330 COMMON_{PRE,POST}_CONFIG_FRAG instead.
331 * configure.in: sinclude ../common/aclocal.m4.
332 * configure: Regenerated.
336 * simops.c: Get carry-in bit right for rol. Just clear the
337 NF flag for btst imm8,dn.
341 * simops.c: Properly compute ZF flag for many insns.
345 * simops.c: Properly truncate divisor and dividend before
346 performing "divu" operation.
350 * simops.c (init_system): Allocate 2^19 bytes of space for
355 * simops.c: Rework code to extract arguments for emulated
356 syscalls to handle 24bit pointers.
360 * configure configure.in Makefile.in: Update to new configure
361 scheme which is more compatible with WinGDB builds.
362 * configure.in: Improve comment on how to run autoconf.
363 * configure: Re-run autoconf to get new ../common/aclocal.m4.
364 * Makefile.in: Use autoconf substitution to install common
369 * simops.c: Fix destination register for "mov (abs24),an".
373 * simops.c: "rts" adds 4 to the stack pointer.
375 * simops.c: Fix CF and CX computation for add instructions.
377 * simops.c: Leave the upper 8 bits alone for logical ops.
378 Mask off high 8 bits before doing any shifts/rotates.
379 Fix carry bit handling in rotates again.
383 * simops.c: Don't lose the sign bit for "asr".
387 * simops.c: Fix overflow computation for "cmp" and "sub"
390 * simops.c: Use the right register for "jmp (an)" and "jsr (an)".
392 * interp.c (hash): Improve hashing for 3 byte instructions.
394 * simops.c: Fix extraction of 16/24bit immediates for some
395 instructions. "cmp" instructions only modify the PSW.
396 Fix various thinkos when extracting register operands too.
400 * simops.c: Fix "rol" and "ror".
402 * simops.c: Truncate PC to 24bits after modifying it.
403 Closer stab at emulated system calls.
407 * interp.c (hash): Improve hashing of two byte insns.
408 (store_mem): Handle storing 3 byte quantities.
410 * simops.c: Fix various typos/thinkos.
412 * interp.c (load_mem_big, load_mem, store_mem): Fix thinko in
413 code to handle 24bit addresses.
414 * simops.c (REG0_8, REG0_16): Fix typo.
418 * mn10200_sim.h: Various fixes for mixed 16/24bit architecture.
419 * interp.c: Similarly.
420 * simops.c: Similarly.
422 * Makefile.in, config.in, configure, configure.in: New files.
423 * gencode.c, interp.c, mn10200_sim.h, simops.c: New files.