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