]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/mips/ChangeLog
Remove GCC specific `0x...LL', replace with SIGNED64 (0x...).
[thirdparty/binutils-gdb.git] / sim / mips / ChangeLog
1 Tue Sep 9 16:28:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * gencode.c (build_instruction): Use SIGNED64 for 64 bit
4 constants.
5 (build_instruction): Ditto for LL.
6
7 start-sanitize-tx19
8 Sun Sep 7 16:05:46 1997 Gavin Koch <gavin@cygnus.com>
9
10 * mips/configure.in, mips/gencode: Add tx19/r1900.
11
12 end-sanitize-tx19
13 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
14
15 * configure: Regenerated to track ../common/aclocal.m4 changes.
16
17 start-sanitize-r5900
18 Mon Sep 1 18:43:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
19
20 * gencode.c (build_instruction): For "pabsw" and "pabsh", check
21 for overflow due to ABS of MININT, set result to MAXINT.
22 (build_instruction): For "psrlvw", signextend bit 31.
23
24 end-sanitize-r5900
25 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
26
27 * configure: Regenerated to track ../common/aclocal.m4 changes.
28 * config.in: Ditto.
29
30 Wed Aug 27 14:12:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
31
32 * interp.c (sim_open): Add call to sim_analyze_program, update
33 call to sim_config.
34
35 Tue Aug 26 10:40:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
36
37 * interp.c (sim_kill): Delete.
38 (sim_create_inferior): Add ABFD argument. Set PC from same.
39 (sim_load): Move code initializing trap handlers from here.
40 (sim_open): To here.
41 (sim_load): Delete, use sim-hload.c.
42
43 * Makefile.in (SIM_OBJS): Add sim-hload.o module.
44
45 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
46
47 * configure: Regenerated to track ../common/aclocal.m4 changes.
48 * config.in: Ditto.
49
50 Mon Aug 25 15:59:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
51
52 * interp.c (sim_open): Add ABFD argument.
53 (sim_load): Move call to sim_config from here.
54 (sim_open): To here. Check return status.
55
56 start-sanitize-r5900
57 * gencode.c (build_instruction): Do not define x8000000000000000,
58 x7FFFFFFFFFFFFFFF, or xFFFFFFFF80000000.
59
60 end-sanitize-r5900
61 start-sanitize-r5900
62 Mon Jul 28 19:49:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
63
64 * gencode.c (build_instruction): For "pdivw", "pdivbw" and
65 "pdivuw" check for overflow due to signed divide by -1.
66
67 end-sanitize-r5900
68 Fri Jul 25 15:00:45 1997 Gavin Koch <gavin@cygnus.com>
69
70 * gencode.c (build_instruction): Two arg MADD should
71 not assign result to $0.
72
73 start-sanitize-r5900
74 Thu Jul 10 11:58:48 1997 Andrew Cagney <cagney@critters.cygnus.com>
75
76 * gencode.c (build_instruction): For "ppac5" use unsigned
77 arrithmetic so that the sign bit doesn't smear when right shifted.
78 (build_instruction): For "pdiv" perform sign extension when
79 storing results in HI and LO.
80 (build_instructions): For "pdiv" and "pdivbw" check for
81 divide-by-zero.
82 (build_instruction): For "pmfhl.slw" update hi part of dest
83 register as well as low part.
84 (build_instruction): For "pmfhl" portably handle long long values.
85 (build_instruction): For "pmfhl.sh" correctly negative values.
86 Store half words 2 and three in the correct place.
87 (build_instruction): For "psllvw", sign extend value after shift.
88
89 end-sanitize-r5900
90 Thu Jun 26 12:13:17 1997 Angela Marie Thomas (angela@cygnus.com)
91
92 * sim/mips/configure: Change default_sim_endian to 0 (bi-endian)
93 * sim/mips/configure.in: Regenerate.
94
95 Wed Jul 9 10:29:21 1997 Andrew Cagney <cagney@critters.cygnus.com>
96
97 * interp.c (SUB_REG_UW, SUB_REG_SW, SUB_REG_*): Use more explicit
98 signed8, unsigned8 et.al. types.
99
100 start-sanitize-r5900
101 * gencode.c (build_instruction): For PMULTU* do not sign extend
102 registers. Make generated code easier to debug.
103
104 end-sanitize-r5900
105 * interp.c (SUB_REG_FETCH): Handle both little and big endian
106 hosts when selecting subreg.
107
108 start-sanitize-r5900
109 Tue Jul 8 18:07:20 1997 Andrew Cagney <cagney@andros.cygnus.com>
110
111 * gencode.c (type_for_data_len): For 32bit operations concerned
112 with overflow, perform op using 64bits.
113 (build_instruction): For PADD, always compute operation using type
114 returned by type_for_data_len.
115 (build_instruction): For PSUBU, when overflow, saturate to zero as
116 actually underflow.
117
118 end-sanitize-r5900
119 Wed Jul 2 11:54:10 1997 Jeffrey A Law (law@cygnus.com)
120
121 start-sanitize-r5900
122 * gencode.c (build_instruction): Handle "pext5" according to
123 version 1.95 of the r5900 ISA.
124
125 * gencode.c (build_instruction): Handle "ppac5" according to
126 version 1.95 of the r5900 ISA.
127
128 end-sanitize-r5900
129 * interp.c (sim_engine_run): Reset the ZERO register to zero
130 regardless of FEATURE_WARN_ZERO.
131 * gencode.c (FEATURE_WARNINGS): Remove FEATURE_WARN_ZERO.
132
133 Wed Jun 4 10:43:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
134
135 * interp.c (decode_coproc): Implement MTC0 N, CAUSE.
136 (SignalException): For BreakPoints ignore any mode bits and just
137 save the PC.
138 (SignalException): Always set the CAUSE register.
139
140 Tue Jun 3 05:00:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
141
142 * interp.c (SignalException): Clear the simDELAYSLOT flag when an
143 exception has been taken.
144
145 * interp.c: Implement the ERET and mt/f sr instructions.
146
147 start-sanitize-r5900
148 Mon Jun 2 23:28:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
149
150 * gencode.c (build_instruction): For paddu, extract unsigned
151 sub-fields.
152
153 * gencode.c (build_instruction): Saturate padds instead of padd
154 instructions.
155
156 end-sanitize-r5900
157 Sat May 31 00:44:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
158
159 * interp.c (SignalException): Don't bother restarting an
160 interrupt.
161
162 Fri May 30 23:41:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
163
164 * interp.c (SignalException): Really take an interrupt.
165 (interrupt_event): Only deliver interrupts when enabled.
166
167 Tue May 27 20:08:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
168
169 * interp.c (sim_info): Only print info when verbose.
170 (sim_info) Use sim_io_printf for output.
171
172 Tue May 27 14:22:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
173
174 * interp.c (CoProcPresent): Add UNUSED attribute - not used by all
175 mips architectures.
176
177 Tue May 27 14:22:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
178
179 * interp.c (sim_do_command): Check for common commands if a
180 simulator specific command fails.
181
182 Thu May 22 09:32:03 1997 Gavin Koch <gavin@cygnus.com>
183
184 * interp.c (sim_engine_run): ifdef out uses of simSTOP, simSTEP
185 and simBE when DEBUG is defined.
186
187 Wed May 21 09:08:10 1997 Andrew Cagney <cagney@b1.cygnus.com>
188
189 * interp.c (interrupt_event): New function. Pass exception event
190 onto exception handler.
191
192 * configure.in: Check for stdlib.h.
193 * configure: Regenerate.
194
195 * gencode.c (build_instruction): Add UNUSED attribute to tempS
196 variable declaration.
197 (build_instruction): Initialize memval1.
198 (build_instruction): Add UNUSED attribute to byte, bigend,
199 reverse.
200 (build_operands): Ditto.
201
202 * interp.c: Fix GCC warnings.
203 (sim_get_quit_code): Delete.
204
205 * configure.in: Add INLINE, ENDIAN, HOSTENDIAN and WARNINGS.
206 * Makefile.in: Ditto.
207 * configure: Re-generate.
208
209 * Makefile.in (SIM_OBJS): Add sim-watch.o module.
210
211 Tue May 20 15:08:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
212
213 * interp.c (mips_option_handler): New function parse argumes using
214 sim-options.
215 (myname): Replace with STATE_MY_NAME.
216 (sim_open): Delete check for host endianness - performed by
217 sim_config.
218 (simHOSTBE, simBE): Delete, replaced by sim-endian flags.
219 (sim_open): Move much of the initialization from here.
220 (sim_load): To here. After the image has been loaded and
221 endianness set.
222 (sim_open): Move ColdReset from here.
223 (sim_create_inferior): To here.
224 (sim_open): Make FP check less dependant on host endianness.
225
226 * Makefile.in (SIM_RUN_OBJS): Set to nrun.o - use new version or
227 run.
228 * interp.c (sim_set_callbacks): Delete.
229
230 * interp.c (membank, membank_base, membank_size): Replace with
231 STATE_MEMORY, STATE_MEM_SIZE, STATE_MEM_BASE.
232 (sim_open): Remove call to callback->init. gdb/run do this.
233
234 * interp.c: Update
235
236 * sim-main.h (SIM_HAVE_FLATMEM): Define.
237
238 * interp.c (big_endian_p): Delete, replaced by
239 current_target_byte_order.
240
241 Tue May 20 13:55:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
242
243 * interp.c (host_read_long, host_read_word, host_swap_word,
244 host_swap_long): Delete. Using common sim-endian.
245 (sim_fetch_register, sim_store_register): Use H2T.
246 (pipeline_ticks): Delete. Handled by sim-events.
247 (sim_info): Update.
248 (sim_engine_run): Update.
249
250 Tue May 20 13:42:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
251
252 * interp.c (sim_stop_reason): Move code determining simEXCEPTION
253 reason from here.
254 (SignalException): To here. Signal using sim_engine_halt.
255 (sim_stop_reason): Delete, moved to common.
256
257 Tue May 20 10:19:48 1997 Andrew Cagney <cagney@b2.cygnus.com>
258
259 * interp.c (sim_open): Add callback argument.
260 (sim_set_callbacks): Delete SIM_DESC argument.
261 (sim_size): Ditto.
262
263 Mon May 19 18:20:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
264
265 * Makefile.in (SIM_OBJS): Add common modules.
266
267 * interp.c (sim_set_callbacks): Also set SD callback.
268 (set_endianness, xfer_*, swap_*): Delete.
269 (host_read_word, host_read_long, host_swap_word, host_swap_long):
270 Change to functions using sim-endian macros.
271 (control_c, sim_stop): Delete, use common version.
272 (simulate): Convert into.
273 (sim_engine_run): This function.
274 (sim_resume): Delete.
275
276 * interp.c (simulation): New variable - the simulator object.
277 (sim_kind): Delete global - merged into simulation.
278 (sim_load): Cleanup. Move PC assignment from here.
279 (sim_create_inferior): To here.
280
281 * sim-main.h: New file.
282 * interp.c (sim-main.h): Include.
283
284 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
285
286 * configure: Regenerated to track ../common/aclocal.m4 changes.
287
288 Wed Apr 23 17:32:19 1997 Doug Evans <dje@canuck.cygnus.com>
289
290 * tconfig.in (SIM_HAVE_BIENDIAN): Define.
291
292 Mon Apr 21 17:16:13 1997 Gavin Koch <gavin@cygnus.com>
293
294 * gencode.c (build_instruction): DIV instructions: check
295 for division by zero and integer overflow before using
296 host's division operation.
297
298 Thu Apr 17 03:18:14 1997 Doug Evans <dje@canuck.cygnus.com>
299
300 * Makefile.in (SIM_OBJS): Add sim-load.o.
301 * interp.c: #include bfd.h.
302 (target_byte_order): Delete.
303 (sim_kind, myname, big_endian_p): New static locals.
304 (sim_open): Set sim_kind, myname. Move call to set_endianness to
305 after argument parsing. Recognize -E arg, set endianness accordingly.
306 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
307 load file into simulator. Set PC from bfd.
308 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
309 (set_endianness): Use big_endian_p instead of target_byte_order.
310
311 Wed Apr 16 17:55:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
312
313 * interp.c (sim_size): Delete prototype - conflicts with
314 definition in remote-sim.h. Correct definition.
315
316 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
317
318 * configure: Regenerated to track ../common/aclocal.m4 changes.
319 * config.in: Ditto.
320
321 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
322
323 * interp.c (sim_open): New arg `kind'.
324
325 * configure: Regenerated to track ../common/aclocal.m4 changes.
326
327 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
328
329 * configure: Regenerated to track ../common/aclocal.m4 changes.
330
331 Tue Mar 25 11:38:22 1997 Doug Evans <dje@canuck.cygnus.com>
332
333 * interp.c (sim_open): Set optind to 0 before calling getopt.
334
335 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
336
337 * configure: Regenerated to track ../common/aclocal.m4 changes.
338
339 Mon Mar 17 10:52:59 1997 Gavin Koch <gavin@cetus.cygnus.com>
340
341 * interp.c : Replace uses of pr_addr with pr_uword64
342 where the bit length is always 64 independent of SIM_ADDR.
343 (pr_uword64) : added.
344
345 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
346
347 * configure: Re-generate.
348
349 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
350
351 * configure: Regenerate to track ../common/aclocal.m4 changes.
352
353 Thu Mar 13 12:51:36 1997 Doug Evans <dje@canuck.cygnus.com>
354
355 * interp.c (sim_open): New SIM_DESC result. Argument is now
356 in argv form.
357 (other sim_*): New SIM_DESC argument.
358
359 start-sanitize-r5900
360 Wed Feb 26 18:32:21 1997 Gavin Koch <gavin@cygnus.com>
361
362 * gencode.c (POP_AND,POP_OR,POP_NOR,POP_XOR):
363 Change values to avoid overloading DOUBLEWORD which is tested
364 for all insns.
365 * gencode.c: reinstate "offending code".
366
367 end-sanitize-r5900
368 Mon Feb 24 22:47:14 1997 Dawn Perchik <dawn@cygnus.com>
369
370 * interp.c: Fix printing of addresses for non-64-bit targets.
371 (pr_addr): Add function to print address based on size.
372 start-sanitize-r5900
373 * gencode.c: #ifdef out offending code until a permanent fix
374 can be added. Code is causing build errors for non-5900 mips targets.
375 end-sanitize-r5900
376
377 start-sanitize-r5900
378 Thu Feb 20 10:40:24 1997 Gavin Koch <gavin@cetus.cygnus.com>
379
380 * gencode.c (process_instructions): Correct test for ISA dependent
381 architecture bits in isa field of MIPS_DECODE.
382
383 end-sanitize-r5900
384 Wed Feb 19 14:42:09 1997 Mark Alexander <marka@cygnus.com>
385
386 * interp.c (simopen): Add support for LSI MiniRISC PMON vectors.
387
388 start-sanitize-r5900
389 Tue Feb 18 17:03:47 1997 Gavin Koch <gavin@cygnus.com>
390
391 * gencode.c (MIPS_DECODE): Correct instruction feature flags for
392 PMADDUW.
393
394 end-sanitize-r5900
395 Thu Feb 13 14:08:30 1997 Ian Lance Taylor <ian@cygnus.com>
396
397 * gencode.c (build_mips16_operands): Correct computation of base
398 address for extended PC relative instruction.
399
400 start-sanitize-r5900
401 Fri Feb 7 11:12:44 1997 Gavin Koch <gavin@cygnus.com>
402
403 * Makefile.in, configure, configure.in, gencode.c,
404 interp.c, support.h: add r5900.
405
406 end-sanitize-r5900
407 Thu Feb 6 17:16:15 1997 Ian Lance Taylor <ian@cygnus.com>
408
409 * interp.c (mips16_entry): Add support for floating point cases.
410 (SignalException): Pass floating point cases to mips16_entry.
411 (ValueFPR): Don't restrict fmt_single and fmt_word to even
412 registers.
413 (StoreFPR): Likewise. Also, don't clobber fpr + 1 for fmt_single
414 or fmt_word.
415 (COP_LW): Pass fmt_word rather than fmt_uninterpreted to StoreFPR,
416 and then set the state to fmt_uninterpreted.
417 (COP_SW): Temporarily set the state to fmt_word while calling
418 ValueFPR.
419
420 Tue Feb 4 16:48:25 1997 Ian Lance Taylor <ian@cygnus.com>
421
422 * gencode.c (build_instruction): The high order may be set in the
423 comparison flags at any ISA level, not just ISA 4.
424
425 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
426
427 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
428 COMMON_{PRE,POST}_CONFIG_FRAG instead.
429 * configure.in: sinclude ../common/aclocal.m4.
430 * configure: Regenerated.
431
432 Fri Jan 31 11:11:45 1997 Ian Lance Taylor <ian@cygnus.com>
433
434 * configure: Rebuild after change to aclocal.m4.
435
436 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
437
438 * configure configure.in Makefile.in: Update to new configure
439 scheme which is more compatible with WinGDB builds.
440 * configure.in: Improve comment on how to run autoconf.
441 * configure: Re-run autoconf to get new ../common/aclocal.m4.
442 * Makefile.in: Use autoconf substitution to install common
443 makefile fragment.
444
445 Wed Jan 8 12:39:03 1997 Jim Wilson <wilson@cygnus.com>
446
447 * gencode.c (build_instruction): Use BigEndianCPU instead of
448 ByteSwapMem.
449
450 Thu Jan 02 22:23:04 1997 Mark Alexander <marka@cygnus.com>
451
452 * interp.c (sim_monitor): Make output to stdout visible in
453 wingdb's I/O log window.
454
455 Tue Dec 31 07:04:00 1996 Mark Alexander <marka@cygnus.com>
456
457 * support.h: Undo previous change to SIGTRAP
458 and SIGQUIT values.
459
460 Mon Dec 30 17:36:06 1996 Ian Lance Taylor <ian@cygnus.com>
461
462 * interp.c (store_word, load_word): New static functions.
463 (mips16_entry): New static function.
464 (SignalException): Look for mips16 entry and exit instructions.
465 (simulate): Use the correct index when setting fpr_state after
466 doing a pending move.
467
468 Sun Dec 29 09:37:18 1996 Mark Alexander <marka@cygnus.com>
469
470 * interp.c: Fix byte-swapping code throughout to work on
471 both little- and big-endian hosts.
472
473 Sun Dec 29 09:18:32 1996 Mark Alexander <marka@cygnus.com>
474
475 * support.h: Make definitions of SIGTRAP and SIGQUIT consistent
476 with gdb/config/i386/xm-windows.h.
477
478 Fri Dec 27 22:48:51 1996 Mark Alexander <marka@cygnus.com>
479
480 * gencode.c (build_instruction): Work around MSVC++ code gen bug
481 that messes up arithmetic shifts.
482
483 Fri Dec 20 11:04:05 1996 Stu Grossman (grossman@critters.cygnus.com)
484
485 * support.h: Use _WIN32 instead of __WIN32__. Also add defs for
486 SIGTRAP and SIGQUIT for _WIN32.
487
488 Thu Dec 19 14:07:27 1996 Ian Lance Taylor <ian@cygnus.com>
489
490 * gencode.c (build_instruction) [MUL]: Cast operands to word64, to
491 force a 64 bit multiplication.
492 (build_instruction) [OR]: In mips16 mode, don't do anything if the
493 destination register is 0, since that is the default mips16 nop
494 instruction.
495
496 Mon Dec 16 14:59:38 1996 Ian Lance Taylor <ian@cygnus.com>
497
498 * gencode.c (MIPS16_DECODE): SWRASP is I8, not RI.
499 (build_endian_shift): Don't check proc64.
500 (build_instruction): Always set memval to uword64. Cast op2 to
501 uword64 when shifting it left in memory instructions. Always use
502 the same code for stores--don't special case proc64.
503
504 * gencode.c (build_mips16_operands): Fix base PC value for PC
505 relative operands.
506 (build_instruction): Call JALDELAYSLOT rather than DELAYSLOT for a
507 jal instruction.
508 * interp.c (simJALDELAYSLOT): Define.
509 (JALDELAYSLOT): Define.
510 (INDELAYSLOT, INJALDELAYSLOT): Define.
511 (simulate): Clear simJALDELAYSLOT when simDELAYSLOT is cleared.
512
513 Tue Dec 24 22:11:20 1996 Angela Marie Thomas (angela@cygnus.com)
514
515 * interp.c (sim_open): add flush_cache as a PMON routine
516 (sim_monitor): handle flush_cache by ignoring it
517
518 Wed Dec 11 13:53:51 1996 Jim Wilson <wilson@cygnus.com>
519
520 * gencode.c (build_instruction): Use !ByteSwapMem instead of
521 BigEndianMem.
522 * interp.c (CONFIG, config_EP_{mask,shift,D,DxxDxx, config_BE): Delete.
523 (BigEndianMem): Rename to ByteSwapMem and change sense.
524 (BigEndianCPU, sim_write, LoadMemory, StoreMemory): Change
525 BigEndianMem references to !ByteSwapMem.
526 (set_endianness): New function, with prototype.
527 (sim_open): Call set_endianness.
528 (sim_info): Use simBE instead of BigEndianMem.
529 (xfer_direct_word, xfer_direct_long, swap_direct_word,
530 swap_direct_long, xfer_big_word, xfer_big_long, xfer_little_word,
531 xfer_little_long, swap_word, swap_long): Delete unnecessary MSC_VER
532 ifdefs, keeping the prototype declaration.
533 (swap_word): Rewrite correctly.
534 (ColdReset): Delete references to CONFIG. Delete endianness related
535 code; moved to set_endianness.
536
537 Tue Dec 10 11:32:04 1996 Jim Wilson <wilson@cygnus.com>
538
539 * gencode.c (build_instruction, case JUMP): Truncate PC to 32 bits.
540 * interp.c (CHECKHILO): Define away.
541 (simSIGINT): New macro.
542 (membank_size): Increase from 1MB to 2MB.
543 (control_c): New function.
544 (sim_resume): Rename parameter signal to signal_number. Add local
545 variable prev. Call signal before and after simulate.
546 (sim_stop_reason): Add simSIGINT support.
547 (sim_warning, sim_error, dotrace, SignalException): Define as stdarg
548 functions always.
549 (sim_warning): Delete call to SignalException. Do call printf_filtered
550 if logfh is NULL.
551 (AddressTranslation): Add #ifdef DEBUG around debugging message and
552 a call to sim_warning.
553
554 Wed Nov 27 11:53:50 1996 Ian Lance Taylor <ian@cygnus.com>
555
556 * gencode.c (process_instructions): If ! proc64, skip DOUBLEWORD
557 16 bit instructions.
558
559 Tue Nov 26 11:53:12 1996 Ian Lance Taylor <ian@cygnus.com>
560
561 Add support for mips16 (16 bit MIPS implementation):
562 * gencode.c (inst_type): Add mips16 instruction encoding types.
563 (GETDATASIZEINSN): Define.
564 (MIPS_DECODE): Add REG flag to dsllv, dsrav, and dsrlv. Add
565 jalx. Add LEFT flag to mfhi and mflo. Add RIGHT flag to mthi and
566 mtlo.
567 (MIPS16_DECODE): New table, for mips16 instructions.
568 (bitmap_val): New static function.
569 (struct mips16_op): Define.
570 (mips16_op_table): New table, for mips16 operands.
571 (build_mips16_operands): New static function.
572 (process_instructions): If PC is odd, decode a mips16
573 instruction. Break out instruction handling into new
574 build_instruction function.
575 (build_instruction): New static function, broken out of
576 process_instructions. Check modifiers rather than flags for SHIFT
577 bit count and m[ft]{hi,lo} direction.
578 (usage): Pass program name to fprintf.
579 (main): Remove unused variable this_option_optind. Change
580 ``*loptarg++'' to ``loptarg++''.
581 (my_strtoul): Parenthesize && within ||.
582 * interp.c (LoadMemory): Accept a halfword pAddr if vAddr is odd.
583 (simulate): If PC is odd, fetch a 16 bit instruction, and
584 increment PC by 2 rather than 4.
585 * configure.in: Add case for mips16*-*-*.
586 * configure: Rebuild.
587
588 Fri Nov 22 08:49:36 1996 Mark Alexander <marka@cygnus.com>
589
590 * interp.c: Allow -t to enable tracing in standalone simulator.
591 Fix garbage output in trace file and error messages.
592
593 Wed Nov 20 01:54:37 1996 Doug Evans <dje@canuck.cygnus.com>
594
595 * Makefile.in: Delete stuff moved to ../common/Make-common.in.
596 (SIM_{OBJS,EXTRA_CFLAGS,EXTRA_CLEAN}): Define.
597 * configure.in: Simplify using macros in ../common/aclocal.m4.
598 * configure: Regenerated.
599 * tconfig.in: New file.
600
601 Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
602
603 * interp.c: Fix bugs in 64-bit port.
604 Use ansi function declarations for msvc compiler.
605 Initialize and test file pointer in trace code.
606 Prevent duplicate definition of LAST_EMED_REGNUM.
607
608 Tue Oct 15 11:07:06 1996 Mark Alexander <marka@cygnus.com>
609
610 * interp.c (xfer_big_long): Prevent unwanted sign extension.
611
612 Thu Sep 26 17:35:00 1996 James G. Smith <jsmith@cygnus.co.uk>
613
614 * interp.c (SignalException): Check for explicit terminating
615 breakpoint value.
616 * gencode.c: Pass instruction value through SignalException()
617 calls for Trap, Breakpoint and Syscall.
618
619 Thu Sep 26 11:35:17 1996 James G. Smith <jsmith@cygnus.co.uk>
620
621 * interp.c (SquareRoot): Add HAVE_SQRT check to ensure sqrt() is
622 only used on those hosts that provide it.
623 * configure.in: Add sqrt() to list of functions to be checked for.
624 * config.in: Re-generated.
625 * configure: Re-generated.
626
627 Fri Sep 20 15:47:12 1996 Ian Lance Taylor <ian@cygnus.com>
628
629 * gencode.c (process_instructions): Call build_endian_shift when
630 expanding STORE RIGHT, to fix swr.
631 * support.h (SIGNEXTEND): If the sign bit is not set, explicitly
632 clear the high bits.
633 * interp.c (Convert): Fix fmt_single to fmt_long to not truncate.
634 Fix float to int conversions to produce signed values.
635
636 Thu Sep 19 15:34:17 1996 Ian Lance Taylor <ian@cygnus.com>
637
638 * gencode.c (MIPS_DECODE): Set UNSIGNED for multu instruction.
639 (process_instructions): Correct handling of nor instruction.
640 Correct shift count for 32 bit shift instructions. Correct sign
641 extension for arithmetic shifts to not shift the number of bits in
642 the type. Fix 64 bit multiply high word calculation. Fix 32 bit
643 unsigned multiply. Fix ldxc1 and friends to use coprocessor 1.
644 Fix madd.
645 * interp.c (CHECKHILO): Don't set HIACCESS, LOACCESS, or HLPC.
646 It's OK to have a mult follow a mult. What's not OK is to have a
647 mult follow an mfhi.
648 (Convert): Comment out incorrect rounding code.
649
650 Mon Sep 16 11:38:16 1996 James G. Smith <jsmith@cygnus.co.uk>
651
652 * interp.c (sim_monitor): Improved monitor printf
653 simulation. Tidied up simulator warnings, and added "--log" option
654 for directing warning message output.
655 * gencode.c: Use sim_warning() rather than WARNING macro.
656
657 Thu Aug 22 15:03:12 1996 Ian Lance Taylor <ian@cygnus.com>
658
659 * Makefile.in (gencode): Depend upon gencode.o, getopt.o, and
660 getopt1.o, rather than on gencode.c. Link objects together.
661 Don't link against -liberty.
662 (gencode.o, getopt.o, getopt1.o): New targets.
663 * gencode.c: Include <ctype.h> and "ansidecl.h".
664 (AND): Undefine after including "ansidecl.h".
665 (ULONG_MAX): Define if not defined.
666 (OP_*): Don't define macros; now defined in opcode/mips.h.
667 (main): Call my_strtoul rather than strtoul.
668 (my_strtoul): New static function.
669
670 Wed Jul 17 18:12:38 1996 Stu Grossman (grossman@critters.cygnus.com)
671
672 * gencode.c (process_instructions): Generate word64 and uword64
673 instead of `long long' and `unsigned long long' data types.
674 * interp.c: #include sysdep.h to get signals, and define default
675 for SIGBUS.
676 * (Convert): Work around for Visual-C++ compiler bug with type
677 conversion.
678 * support.h: Make things compile under Visual-C++ by using
679 __int64 instead of `long long'. Change many refs to long long
680 into word64/uword64 typedefs.
681
682 Wed Jun 26 12:24:55 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
683
684 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
685 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
686 (docdir): Removed.
687 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
688 (AC_PROG_INSTALL): Added.
689 (AC_PROG_CC): Moved to before configure.host call.
690 * configure: Rebuilt.
691
692 Wed Jun 5 08:28:13 1996 James G. Smith <jsmith@cygnus.co.uk>
693
694 * configure.in: Define @SIMCONF@ depending on mips target.
695 * configure: Rebuild.
696 * Makefile.in (run): Add @SIMCONF@ to control simulator
697 construction.
698 * gencode.c: Change LOADDRMASK to 64bit memory model only.
699 * interp.c: Remove some debugging, provide more detailed error
700 messages, update memory accesses to use LOADDRMASK.
701
702 Mon Jun 3 11:55:03 1996 Ian Lance Taylor <ian@cygnus.com>
703
704 * configure.in: Add calls to AC_CONFIG_HEADER, AC_CHECK_HEADERS,
705 AC_CHECK_LIB, and AC_CHECK_FUNCS. Change AC_OUTPUT to set
706 stamp-h.
707 * configure: Rebuild.
708 * config.in: New file, generated by autoheader.
709 * interp.c: Include "config.h". Include <stdlib.h>, <string.h>,
710 and <strings.h> if they exist. Replace #ifdef sun with #ifdef
711 HAVE_ANINT and HAVE_AINT, as appropriate.
712 * Makefile.in (run): Use @LIBS@ rather than -lm.
713 (interp.o): Depend upon config.h.
714 (Makefile): Just rebuild Makefile.
715 (clean): Remove stamp-h.
716 (mostlyclean): Make the same as clean, not as distclean.
717 (config.h, stamp-h): New targets.
718
719 Fri May 10 00:41:17 1996 James G. Smith <jsmith@cygnus.co.uk>
720
721 * interp.c (ColdReset): Fix boolean test. Make all simulator
722 globals static.
723
724 Wed May 8 15:12:58 1996 James G. Smith <jsmith@cygnus.co.uk>
725
726 * interp.c (xfer_direct_word, xfer_direct_long,
727 swap_direct_word, swap_direct_long, xfer_big_word,
728 xfer_big_long, xfer_little_word, xfer_little_long,
729 swap_word,swap_long): Added.
730 * interp.c (ColdReset): Provide function indirection to
731 host<->simulated_target transfer routines.
732 * interp.c (sim_store_register, sim_fetch_register): Updated to
733 make use of indirected transfer routines.
734
735 Fri Apr 19 15:48:24 1996 James G. Smith <jsmith@cygnus.co.uk>
736
737 * gencode.c (process_instructions): Ensure FP ABS instruction
738 recognised.
739 * interp.c (AbsoluteValue): Add routine. Also provide simple PMON
740 system call support.
741
742 Wed Apr 10 09:51:38 1996 James G. Smith <jsmith@cygnus.co.uk>
743
744 * interp.c (sim_do_command): Complain if callback structure not
745 initialised.
746
747 Thu Mar 28 13:50:51 1996 James G. Smith <jsmith@cygnus.co.uk>
748
749 * interp.c (Convert): Provide round-to-nearest and round-to-zero
750 support for Sun hosts.
751 * Makefile.in (gencode): Ensure the host compiler and libraries
752 used for cross-hosted build.
753
754 Wed Mar 27 14:42:12 1996 James G. Smith <jsmith@cygnus.co.uk>
755
756 * interp.c, gencode.c: Some more (TODO) tidying.
757
758 Thu Mar 7 11:19:33 1996 James G. Smith <jsmith@cygnus.co.uk>
759
760 * gencode.c, interp.c: Replaced explicit long long references with
761 WORD64HI, WORD64LO, SET64HI and SET64LO macro calls.
762 * support.h (SET64LO, SET64HI): Macros added.
763
764 Wed Feb 21 12:16:21 1996 Ian Lance Taylor <ian@cygnus.com>
765
766 * configure: Regenerate with autoconf 2.7.
767
768 Tue Jan 30 08:48:18 1996 Fred Fish <fnf@cygnus.com>
769
770 * interp.c (LoadMemory): Enclose text following #endif in /* */.
771 * support.h: Remove superfluous "1" from #if.
772 * support.h (CHECKSIM): Remove stray 'a' at end of line.
773
774 Mon Dec 4 11:44:40 1995 Jamie Smith <jsmith@cygnus.com>
775
776 * interp.c (StoreFPR): Control UndefinedResult() call on
777 WARN_RESULT manifest.
778
779 Fri Dec 1 16:37:19 1995 James G. Smith <jsmith@cygnus.co.uk>
780
781 * gencode.c: Tidied instruction decoding, and added FP instruction
782 support.
783
784 * interp.c: Added dineroIII, and BSD profiling support. Also
785 run-time FP handling.
786
787 Sun Oct 22 00:57:18 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
788
789 * Changelog, Makefile.in, README.Cygnus, configure, configure.in,
790 gencode.c, interp.c, support.h: created.