Add a number of per-simulator options: hostendian, endian, inline, warnings.
[deliverable/binutils-gdb.git] / sim / mips / ChangeLog
1 Thu Mar 13 12:51:36 1997 Doug Evans <dje@canuck.cygnus.com>
2
3 * interp.c (sim_open): New SIM_DESC result. Argument is now
4 in argv form.
5 (other sim_*): New SIM_DESC argument.
6
7 start-sanitize-r5900
8 Wed Feb 26 18:32:21 1997 Gavin Koch <gavin@cygnus.com>
9
10 * gencode.c (POP_AND,POP_OR,POP_NOR,POP_XOR):
11 Change values to avoid overloading DOUBLEWORD which is tested
12 for all insns.
13 * gencode.c: reinstate "offending code".
14 end-sanitize-r5900
15
16 Mon Feb 24 22:47:14 1997 Dawn Perchik <dawn@cygnus.com>
17
18 * interp.c: Fix printing of addresses for non-64-bit targets.
19 (pr_addr): Add function to print address based on size.
20 start-sanitize-r5900
21 * gencode.c: #ifdef out offending code until a permanent fix
22 can be added. Code is causing build errors for non-5900 mips targets.
23 end-sanitize-r5900
24
25 start-sanitize-r5900
26 Thu Feb 20 10:40:24 1997 Gavin Koch <gavin@cetus.cygnus.com>
27
28 * gencode.c (process_instructions): Correct test for ISA dependent
29 architecture bits in isa field of MIPS_DECODE.
30
31 end-sanitize-r5900
32 Wed Feb 19 14:42:09 1997 Mark Alexander <marka@cygnus.com>
33
34 * interp.c (simopen): Add support for LSI MiniRISC PMON vectors.
35
36 start-sanitize-r5900
37 Tue Feb 18 17:03:47 1997 Gavin Koch <gavin@cygnus.com>
38
39 * gencode.c (MIPS_DECODE): Correct instruction feature flags for
40 PMADDUW.
41
42 end-sanitize-r5900
43 Thu Feb 13 14:08:30 1997 Ian Lance Taylor <ian@cygnus.com>
44
45 * gencode.c (build_mips16_operands): Correct computation of base
46 address for extended PC relative instruction.
47
48 start-sanitize-r5900
49 Fri Feb 7 11:12:44 1997 Gavin Koch <gavin@cygnus.com>
50
51 * Makefile.in, configure, configure.in, gencode.c,
52 interp.c, support.h: add r5900.
53
54 end-sanitize-r5900
55 Thu Feb 6 17:16:15 1997 Ian Lance Taylor <ian@cygnus.com>
56
57 * interp.c (mips16_entry): Add support for floating point cases.
58 (SignalException): Pass floating point cases to mips16_entry.
59 (ValueFPR): Don't restrict fmt_single and fmt_word to even
60 registers.
61 (StoreFPR): Likewise. Also, don't clobber fpr + 1 for fmt_single
62 or fmt_word.
63 (COP_LW): Pass fmt_word rather than fmt_uninterpreted to StoreFPR,
64 and then set the state to fmt_uninterpreted.
65 (COP_SW): Temporarily set the state to fmt_word while calling
66 ValueFPR.
67
68 Tue Feb 4 16:48:25 1997 Ian Lance Taylor <ian@cygnus.com>
69
70 * gencode.c (build_instruction): The high order may be set in the
71 comparison flags at any ISA level, not just ISA 4.
72
73 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
74
75 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
76 COMMON_{PRE,POST}_CONFIG_FRAG instead.
77 * configure.in: sinclude ../common/aclocal.m4.
78 * configure: Regenerated.
79
80 Fri Jan 31 11:11:45 1997 Ian Lance Taylor <ian@cygnus.com>
81
82 * configure: Rebuild after change to aclocal.m4.
83
84 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
85
86 * configure configure.in Makefile.in: Update to new configure
87 scheme which is more compatible with WinGDB builds.
88 * configure.in: Improve comment on how to run autoconf.
89 * configure: Re-run autoconf to get new ../common/aclocal.m4.
90 * Makefile.in: Use autoconf substitution to install common
91 makefile fragment.
92
93 Wed Jan 8 12:39:03 1997 Jim Wilson <wilson@cygnus.com>
94
95 * gencode.c (build_instruction): Use BigEndianCPU instead of
96 ByteSwapMem.
97
98 Thu Jan 02 22:23:04 1997 Mark Alexander <marka@cygnus.com>
99
100 * interp.c (sim_monitor): Make output to stdout visible in
101 wingdb's I/O log window.
102
103 Tue Dec 31 07:04:00 1996 Mark Alexander <marka@cygnus.com>
104
105 * support.h: Undo previous change to SIGTRAP
106 and SIGQUIT values.
107
108 Mon Dec 30 17:36:06 1996 Ian Lance Taylor <ian@cygnus.com>
109
110 * interp.c (store_word, load_word): New static functions.
111 (mips16_entry): New static function.
112 (SignalException): Look for mips16 entry and exit instructions.
113 (simulate): Use the correct index when setting fpr_state after
114 doing a pending move.
115
116 Sun Dec 29 09:37:18 1996 Mark Alexander <marka@cygnus.com>
117
118 * interp.c: Fix byte-swapping code throughout to work on
119 both little- and big-endian hosts.
120
121 Sun Dec 29 09:18:32 1996 Mark Alexander <marka@cygnus.com>
122
123 * support.h: Make definitions of SIGTRAP and SIGQUIT consistent
124 with gdb/config/i386/xm-windows.h.
125
126 Fri Dec 27 22:48:51 1996 Mark Alexander <marka@cygnus.com>
127
128 * gencode.c (build_instruction): Work around MSVC++ code gen bug
129 that messes up arithmetic shifts.
130
131 Fri Dec 20 11:04:05 1996 Stu Grossman (grossman@critters.cygnus.com)
132
133 * support.h: Use _WIN32 instead of __WIN32__. Also add defs for
134 SIGTRAP and SIGQUIT for _WIN32.
135
136 Thu Dec 19 14:07:27 1996 Ian Lance Taylor <ian@cygnus.com>
137
138 * gencode.c (build_instruction) [MUL]: Cast operands to word64, to
139 force a 64 bit multiplication.
140 (build_instruction) [OR]: In mips16 mode, don't do anything if the
141 destination register is 0, since that is the default mips16 nop
142 instruction.
143
144 Mon Dec 16 14:59:38 1996 Ian Lance Taylor <ian@cygnus.com>
145
146 * gencode.c (MIPS16_DECODE): SWRASP is I8, not RI.
147 (build_endian_shift): Don't check proc64.
148 (build_instruction): Always set memval to uword64. Cast op2 to
149 uword64 when shifting it left in memory instructions. Always use
150 the same code for stores--don't special case proc64.
151
152 * gencode.c (build_mips16_operands): Fix base PC value for PC
153 relative operands.
154 (build_instruction): Call JALDELAYSLOT rather than DELAYSLOT for a
155 jal instruction.
156 * interp.c (simJALDELAYSLOT): Define.
157 (JALDELAYSLOT): Define.
158 (INDELAYSLOT, INJALDELAYSLOT): Define.
159 (simulate): Clear simJALDELAYSLOT when simDELAYSLOT is cleared.
160
161 Tue Dec 24 22:11:20 1996 Angela Marie Thomas (angela@cygnus.com)
162
163 * interp.c (sim_open): add flush_cache as a PMON routine
164 (sim_monitor): handle flush_cache by ignoring it
165
166 Wed Dec 11 13:53:51 1996 Jim Wilson <wilson@cygnus.com>
167
168 * gencode.c (build_instruction): Use !ByteSwapMem instead of
169 BigEndianMem.
170 * interp.c (CONFIG, config_EP_{mask,shift,D,DxxDxx, config_BE): Delete.
171 (BigEndianMem): Rename to ByteSwapMem and change sense.
172 (BigEndianCPU, sim_write, LoadMemory, StoreMemory): Change
173 BigEndianMem references to !ByteSwapMem.
174 (set_endianness): New function, with prototype.
175 (sim_open): Call set_endianness.
176 (sim_info): Use simBE instead of BigEndianMem.
177 (xfer_direct_word, xfer_direct_long, swap_direct_word,
178 swap_direct_long, xfer_big_word, xfer_big_long, xfer_little_word,
179 xfer_little_long, swap_word, swap_long): Delete unnecessary MSC_VER
180 ifdefs, keeping the prototype declaration.
181 (swap_word): Rewrite correctly.
182 (ColdReset): Delete references to CONFIG. Delete endianness related
183 code; moved to set_endianness.
184
185 Tue Dec 10 11:32:04 1996 Jim Wilson <wilson@cygnus.com>
186
187 * gencode.c (build_instruction, case JUMP): Truncate PC to 32 bits.
188 * interp.c (CHECKHILO): Define away.
189 (simSIGINT): New macro.
190 (membank_size): Increase from 1MB to 2MB.
191 (control_c): New function.
192 (sim_resume): Rename parameter signal to signal_number. Add local
193 variable prev. Call signal before and after simulate.
194 (sim_stop_reason): Add simSIGINT support.
195 (sim_warning, sim_error, dotrace, SignalException): Define as stdarg
196 functions always.
197 (sim_warning): Delete call to SignalException. Do call printf_filtered
198 if logfh is NULL.
199 (AddressTranslation): Add #ifdef DEBUG around debugging message and
200 a call to sim_warning.
201
202 Wed Nov 27 11:53:50 1996 Ian Lance Taylor <ian@cygnus.com>
203
204 * gencode.c (process_instructions): If ! proc64, skip DOUBLEWORD
205 16 bit instructions.
206
207 Tue Nov 26 11:53:12 1996 Ian Lance Taylor <ian@cygnus.com>
208
209 Add support for mips16 (16 bit MIPS implementation):
210 * gencode.c (inst_type): Add mips16 instruction encoding types.
211 (GETDATASIZEINSN): Define.
212 (MIPS_DECODE): Add REG flag to dsllv, dsrav, and dsrlv. Add
213 jalx. Add LEFT flag to mfhi and mflo. Add RIGHT flag to mthi and
214 mtlo.
215 (MIPS16_DECODE): New table, for mips16 instructions.
216 (bitmap_val): New static function.
217 (struct mips16_op): Define.
218 (mips16_op_table): New table, for mips16 operands.
219 (build_mips16_operands): New static function.
220 (process_instructions): If PC is odd, decode a mips16
221 instruction. Break out instruction handling into new
222 build_instruction function.
223 (build_instruction): New static function, broken out of
224 process_instructions. Check modifiers rather than flags for SHIFT
225 bit count and m[ft]{hi,lo} direction.
226 (usage): Pass program name to fprintf.
227 (main): Remove unused variable this_option_optind. Change
228 ``*loptarg++'' to ``loptarg++''.
229 (my_strtoul): Parenthesize && within ||.
230 * interp.c (LoadMemory): Accept a halfword pAddr if vAddr is odd.
231 (simulate): If PC is odd, fetch a 16 bit instruction, and
232 increment PC by 2 rather than 4.
233 * configure.in: Add case for mips16*-*-*.
234 * configure: Rebuild.
235
236 Fri Nov 22 08:49:36 1996 Mark Alexander <marka@cygnus.com>
237
238 * interp.c: Allow -t to enable tracing in standalone simulator.
239 Fix garbage output in trace file and error messages.
240
241 Wed Nov 20 01:54:37 1996 Doug Evans <dje@canuck.cygnus.com>
242
243 * Makefile.in: Delete stuff moved to ../common/Make-common.in.
244 (SIM_{OBJS,EXTRA_CFLAGS,EXTRA_CLEAN}): Define.
245 * configure.in: Simplify using macros in ../common/aclocal.m4.
246 * configure: Regenerated.
247 * tconfig.in: New file.
248
249 Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
250
251 * interp.c: Fix bugs in 64-bit port.
252 Use ansi function declarations for msvc compiler.
253 Initialize and test file pointer in trace code.
254 Prevent duplicate definition of LAST_EMED_REGNUM.
255
256 Tue Oct 15 11:07:06 1996 Mark Alexander <marka@cygnus.com>
257
258 * interp.c (xfer_big_long): Prevent unwanted sign extension.
259
260 Thu Sep 26 17:35:00 1996 James G. Smith <jsmith@cygnus.co.uk>
261
262 * interp.c (SignalException): Check for explicit terminating
263 breakpoint value.
264 * gencode.c: Pass instruction value through SignalException()
265 calls for Trap, Breakpoint and Syscall.
266
267 Thu Sep 26 11:35:17 1996 James G. Smith <jsmith@cygnus.co.uk>
268
269 * interp.c (SquareRoot): Add HAVE_SQRT check to ensure sqrt() is
270 only used on those hosts that provide it.
271 * configure.in: Add sqrt() to list of functions to be checked for.
272 * config.in: Re-generated.
273 * configure: Re-generated.
274
275 Fri Sep 20 15:47:12 1996 Ian Lance Taylor <ian@cygnus.com>
276
277 * gencode.c (process_instructions): Call build_endian_shift when
278 expanding STORE RIGHT, to fix swr.
279 * support.h (SIGNEXTEND): If the sign bit is not set, explicitly
280 clear the high bits.
281 * interp.c (Convert): Fix fmt_single to fmt_long to not truncate.
282 Fix float to int conversions to produce signed values.
283
284 Thu Sep 19 15:34:17 1996 Ian Lance Taylor <ian@cygnus.com>
285
286 * gencode.c (MIPS_DECODE): Set UNSIGNED for multu instruction.
287 (process_instructions): Correct handling of nor instruction.
288 Correct shift count for 32 bit shift instructions. Correct sign
289 extension for arithmetic shifts to not shift the number of bits in
290 the type. Fix 64 bit multiply high word calculation. Fix 32 bit
291 unsigned multiply. Fix ldxc1 and friends to use coprocessor 1.
292 Fix madd.
293 * interp.c (CHECKHILO): Don't set HIACCESS, LOACCESS, or HLPC.
294 It's OK to have a mult follow a mult. What's not OK is to have a
295 mult follow an mfhi.
296 (Convert): Comment out incorrect rounding code.
297
298 Mon Sep 16 11:38:16 1996 James G. Smith <jsmith@cygnus.co.uk>
299
300 * interp.c (sim_monitor): Improved monitor printf
301 simulation. Tidied up simulator warnings, and added "--log" option
302 for directing warning message output.
303 * gencode.c: Use sim_warning() rather than WARNING macro.
304
305 Thu Aug 22 15:03:12 1996 Ian Lance Taylor <ian@cygnus.com>
306
307 * Makefile.in (gencode): Depend upon gencode.o, getopt.o, and
308 getopt1.o, rather than on gencode.c. Link objects together.
309 Don't link against -liberty.
310 (gencode.o, getopt.o, getopt1.o): New targets.
311 * gencode.c: Include <ctype.h> and "ansidecl.h".
312 (AND): Undefine after including "ansidecl.h".
313 (ULONG_MAX): Define if not defined.
314 (OP_*): Don't define macros; now defined in opcode/mips.h.
315 (main): Call my_strtoul rather than strtoul.
316 (my_strtoul): New static function.
317
318 Wed Jul 17 18:12:38 1996 Stu Grossman (grossman@critters.cygnus.com)
319
320 * gencode.c (process_instructions): Generate word64 and uword64
321 instead of `long long' and `unsigned long long' data types.
322 * interp.c: #include sysdep.h to get signals, and define default
323 for SIGBUS.
324 * (Convert): Work around for Visual-C++ compiler bug with type
325 conversion.
326 * support.h: Make things compile under Visual-C++ by using
327 __int64 instead of `long long'. Change many refs to long long
328 into word64/uword64 typedefs.
329
330 Wed Jun 26 12:24:55 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
331
332 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
333 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
334 (docdir): Removed.
335 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
336 (AC_PROG_INSTALL): Added.
337 (AC_PROG_CC): Moved to before configure.host call.
338 * configure: Rebuilt.
339
340 Wed Jun 5 08:28:13 1996 James G. Smith <jsmith@cygnus.co.uk>
341
342 * configure.in: Define @SIMCONF@ depending on mips target.
343 * configure: Rebuild.
344 * Makefile.in (run): Add @SIMCONF@ to control simulator
345 construction.
346 * gencode.c: Change LOADDRMASK to 64bit memory model only.
347 * interp.c: Remove some debugging, provide more detailed error
348 messages, update memory accesses to use LOADDRMASK.
349
350 Mon Jun 3 11:55:03 1996 Ian Lance Taylor <ian@cygnus.com>
351
352 * configure.in: Add calls to AC_CONFIG_HEADER, AC_CHECK_HEADERS,
353 AC_CHECK_LIB, and AC_CHECK_FUNCS. Change AC_OUTPUT to set
354 stamp-h.
355 * configure: Rebuild.
356 * config.in: New file, generated by autoheader.
357 * interp.c: Include "config.h". Include <stdlib.h>, <string.h>,
358 and <strings.h> if they exist. Replace #ifdef sun with #ifdef
359 HAVE_ANINT and HAVE_AINT, as appropriate.
360 * Makefile.in (run): Use @LIBS@ rather than -lm.
361 (interp.o): Depend upon config.h.
362 (Makefile): Just rebuild Makefile.
363 (clean): Remove stamp-h.
364 (mostlyclean): Make the same as clean, not as distclean.
365 (config.h, stamp-h): New targets.
366
367 Fri May 10 00:41:17 1996 James G. Smith <jsmith@cygnus.co.uk>
368
369 * interp.c (ColdReset): Fix boolean test. Make all simulator
370 globals static.
371
372 Wed May 8 15:12:58 1996 James G. Smith <jsmith@cygnus.co.uk>
373
374 * interp.c (xfer_direct_word, xfer_direct_long,
375 swap_direct_word, swap_direct_long, xfer_big_word,
376 xfer_big_long, xfer_little_word, xfer_little_long,
377 swap_word,swap_long): Added.
378 * interp.c (ColdReset): Provide function indirection to
379 host<->simulated_target transfer routines.
380 * interp.c (sim_store_register, sim_fetch_register): Updated to
381 make use of indirected transfer routines.
382
383 Fri Apr 19 15:48:24 1996 James G. Smith <jsmith@cygnus.co.uk>
384
385 * gencode.c (process_instructions): Ensure FP ABS instruction
386 recognised.
387 * interp.c (AbsoluteValue): Add routine. Also provide simple PMON
388 system call support.
389
390 Wed Apr 10 09:51:38 1996 James G. Smith <jsmith@cygnus.co.uk>
391
392 * interp.c (sim_do_command): Complain if callback structure not
393 initialised.
394
395 Thu Mar 28 13:50:51 1996 James G. Smith <jsmith@cygnus.co.uk>
396
397 * interp.c (Convert): Provide round-to-nearest and round-to-zero
398 support for Sun hosts.
399 * Makefile.in (gencode): Ensure the host compiler and libraries
400 used for cross-hosted build.
401
402 Wed Mar 27 14:42:12 1996 James G. Smith <jsmith@cygnus.co.uk>
403
404 * interp.c, gencode.c: Some more (TODO) tidying.
405
406 Thu Mar 7 11:19:33 1996 James G. Smith <jsmith@cygnus.co.uk>
407
408 * gencode.c, interp.c: Replaced explicit long long references with
409 WORD64HI, WORD64LO, SET64HI and SET64LO macro calls.
410 * support.h (SET64LO, SET64HI): Macros added.
411
412 Wed Feb 21 12:16:21 1996 Ian Lance Taylor <ian@cygnus.com>
413
414 * configure: Regenerate with autoconf 2.7.
415
416 Tue Jan 30 08:48:18 1996 Fred Fish <fnf@cygnus.com>
417
418 * interp.c (LoadMemory): Enclose text following #endif in /* */.
419 * support.h: Remove superfluous "1" from #if.
420 * support.h (CHECKSIM): Remove stray 'a' at end of line.
421
422 Mon Dec 4 11:44:40 1995 Jamie Smith <jsmith@cygnus.com>
423
424 * interp.c (StoreFPR): Control UndefinedResult() call on
425 WARN_RESULT manifest.
426
427 Fri Dec 1 16:37:19 1995 James G. Smith <jsmith@cygnus.co.uk>
428
429 * gencode.c: Tidied instruction decoding, and added FP instruction
430 support.
431
432 * interp.c: Added dineroIII, and BSD profiling support. Also
433 run-time FP handling.
434
435 Sun Oct 22 00:57:18 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
436
437 * Changelog, Makefile.in, README.Cygnus, configure, configure.in,
438 gencode.c, interp.c, support.h: created.
This page took 0.039607 seconds and 5 git commands to generate.