]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - sim/mips/ChangeLog
Regenerate configure files.
[thirdparty/binutils-gdb.git] / sim / mips / ChangeLog
CommitLineData
6e51f990
DE
1Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
2
3 * configure: Regenerated to track ../common/aclocal.m4 changes.
4
35c246c9
AC
5Wed Nov 26 11:00:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
6
7 * mips.igen (LWC1): Correct assembler - lwc1 not swc1.
8
9start-sanitize-vr5400
0d5d0d10 10 * mdmx.igen (value_vr): Correct sim_io_eprintf format argument.
0931ce5a 11 (value_cc, store_cc): Implement.
0d5d0d10 12
35c246c9
AC
13 * sim-main.h: Add 8*3*8 bit accumulator.
14
15 * vr5400.igen: Move mdmx instructins from here
16 * mdmx.igen: To here - new file. Add/fix missing instructions.
17 * mips.igen: Include mdmx.igen.
0931ce5a 18 * Makefile.in (IGEN_INCLUDE): Add mdmx.igen.
35c246c9
AC
19
20start-sanitize-vr5400
58fb5d0a
AC
21Sun Nov 23 01:45:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
22
23 * sim-main.h (sim-fpu.h): Include.
24
25 * interp.c (convert, SquareRoot, Recip, Divide, Multiply, Sub,
26 Add, Negate, AbsoluteValue, Equal, Less, Infinity, NaN): Rewrite
27 using host independant sim_fpu module.
28
a09a30d2
AC
29Thu Nov 20 19:56:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
30
232156de
AC
31 * interp.c (signal_exception): Report internal errors with SIGABRT
32 not SIGQUIT.
a09a30d2 33
232156de
AC
34 * sim-main.h (C0_CONFIG): New register.
35 (signal.h): No longer include.
36
37 * interp.c (decode_coproc): Allow access C0_CONFIG to register.
a09a30d2 38
486740ce
DE
39Tue Nov 18 15:33:48 1997 Doug Evans <devans@canuck.cygnus.com>
40
41 * Makefile.in (SIM_OBJS): Use $(SIM_NEW_COMMON_OBJS).
42
f23e93da
AC
43Fri Nov 14 11:56:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
44
45 * mips.igen: Tag vr5000 instructions.
46 (ANDI): Was missing mipsIV model, fix assembler syntax.
47 (do_c_cond_fmt): New function.
48 (C.cond.fmt): Handle mips I-III which do not support CC field
49 separatly.
50 (bc1): Handle mips IV which do not have a delaed FCC separatly.
51 (SDR): Mask paddr when BigEndianMem, not the converse as specified
52 in IV3.2 spec.
53 (DMULT, DMULTU): Force use of hosts 64bit multiplication. Handle
54 vr5000 which saves LO in a GPR separatly.
55
56 * configure.in (enable-sim-igen): For vr5000, select vr5000
57 specific instructions.
58 * configure: Re-generate.
59
60Wed Nov 12 14:42:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
61
62 * Makefile.in (SIM_OBJS): Add sim-fpu module.
63
64 * interp.c (store_fpr), sim-main.h: Add separate fmt_uninterpreted_32 and
65 fmt_uninterpreted_64 bit cases to switch. Convert to
66 fmt_formatted,
67
68 * sim-main.h (ENGINE_ISSUE_PREFIX_HOOK): Define,
69
70 * mips.igen (SWR): Mask paddr when BigEndianMem, not the converse
71 as specified in IV3.2 spec.
72 (MTC1, DMTC1): Call StoreFPR to store the GPR in the FPR.
73
030843d7
AC
74Tue Nov 11 12:38:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
75
76 * mips.igen: Delay slot branches add OFFSET to NIA not CIA.
77 (MFC0, MTC0, SWC1, LWC1, SDC1, LDC1): Implement.
78 (start-sanitize-r5900):
79 (LWXC1, SWXC1): Delete from r5900 instruction set.
80 (end-sanitize-r5900):
81 (MTC1, MFC1, DMTC1, DMFC1, CFC1, CTC1): Implement separate non
a94c5493 82 PENDING_FILL versions of instructions. Simplify.
030843d7
AC
83 (X): New function.
84 (MULT, MULTU): Implement separate RD==0 and RD!=0 versions of
85 instructions.
a94c5493
AC
86 (BEQZ, ..., SLT, SLTI, TLT, TLE, TLI, ...): Explicitly cast GPR to
87 a signed value.
030843d7
AC
88 (MTHI, MFHI): Disable code checking HI-LO.
89
90 * sim-main.h (dotrace,tracefh), interp.c: Make dotrace & tracefh
91 global.
92 (NULLIFY_NEXT_INSTRUCTION): Call dotrace.
93
7ce8b917
AC
94Thu Nov 6 16:36:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
95
95469ceb
AC
96 * gencode.c (build_mips16_operands): Replace IPC with cia.
97
98 * interp.c (sim_monitor, signal_exception, cache_op, store_fpr,
99 value_fpr, cop_ld, cop_lw, cop_sw, cop_sd, decode_coproc): Replace
100 IPC to `cia'.
101 (UndefinedResult): Replace function with macro/function
102 combination.
103 (sim_engine_run): Don't save PC in IPC.
104
105 * sim-main.h (IPC): Delete.
106
107 start-sanitize-vr5400
108 * vr5400.igen (vr): Add missing cia argument to value_fpr.
109 (do_select): Rename function select.
110 end-sanitize-vr5400
111
7ce8b917
AC
112 * interp.c (signal_exception, store_word, load_word,
113 address_translation, load_memory, store_memory, cache_op,
114 prefetch, sync_operation, ifetch, value_fpr, store_fpr, convert,
95469ceb
AC
115 cop_lw, cop_ld, cop_sw, cop_sd, decode_coproc, sim_monitor): Add
116 current instruction address - cia - argument.
7ce8b917
AC
117 (sim_read, sim_write): Call address_translation directly.
118 (sim_engine_run): Rename variable vaddr to cia.
95469ceb
AC
119 (signal_exception): Pass cia to sim_monitor
120
7ce8b917
AC
121 * sim-main.h (SignalException, LoadWord, StoreWord, CacheOp,
122 Prefetch, SyncOperation, ValueFPR, StoreFPR, Convert, COP_LW,
123 COP_LD, COP_SW, COP_SD, DecodeCoproc): Update.
124
125 * sim-main.h (SignalExceptionSimulatorFault): Delete definition.
126 * interp.c (sim_open): Replace SignalExceptionSimulatorFault with
127 SIM_ASSERT.
128
129 * interp.c (signal_exception): Pass restart address to
130 sim_engine_restart.
131
132 * Makefile.in (semantics.o, engine.o, support.o, itable.o,
133 idecode.o): Add dependency.
134
135 * sim-main.h (SIM_ENGINE_HALT_HOOK, SIM_ENGINE_RESUME_HOOK):
136 Delete definitions
137 (DELAY_SLOT): Update NIA not PC with branch address.
138 (NULLIFY_NEXT_INSTRUCTION): Set NIA to instruction after next.
139
140 * mips.igen: Use CIA not PC in branch calculations.
141 (illegal): Call SignalException.
142 (BEQ, ADDIU): Fix assembler.
143
63be8feb
AC
144Wed Nov 5 12:19:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
145
44b8585a
AC
146 * m16.igen (JALX): Was missing.
147
148 * configure.in (enable-sim-igen): New configuration option.
149 * configure: Re-generate.
150
63be8feb
AC
151 * sim-main.h (MAX_INSNS, INSN_NAME): Define.
152
153 * interp.c (load_memory, store_memory): Delete parameter RAW.
154 (sim_read, sim_write): Use sim_core_{read,write}_buffer directly
155 bypassing {load,store}_memory.
156
157 * sim-main.h (ByteSwapMem): Delete definition.
158
159 * Makefile.in (SIM_OBJS): Add sim-memopt module.
160
161 * interp.c (sim_do_command, sim_commands): Delete mips specific
162 commands. Handled by module sim-options.
163
164 * sim-main.h (SIM_HAVE_FLATMEM): Undefine, use sim-core.o module.
165 (WITH_MODULO_MEMORY): Define.
166
167 * interp.c (sim_info): Delete code printing memory size.
168
169 * interp.c (mips_size): Nee sim_size, delete function.
170 (power2): Delete.
171 (monitor, monitor_base, monitor_size): Delete global variables.
172 (sim_open, sim_close): Delete code creating monitor and other
173 memory regions. Use sim-memopts module, via sim_do_commandf, to
174 manage memory regions.
175 (load_memory, store_memory): Use sim-core for memory model.
176
177 * interp.c (address_translation): Delete all memory map code
178 except line forcing 32 bit addresses.
179
22de994d
AC
180Wed Nov 5 11:21:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
181
182 * sim-main.h (WITH_TRACE): Delete definition. Enables common
183 trace options.
184
185 * interp.c (logfh, logfile): Delete globals.
186 (sim_open, sim_close): Delete code opening & closing log file.
187 (mips_option_handler): Delete -l and -n options.
188 (OPTION mips_options): Ditto.
189
190 * interp.c (OPTION mips_options): Rename option trace to dinero.
191 (mips_option_handler): Update.
192
525d929e
AC
193Wed Nov 5 09:35:59 1997 Andrew Cagney <cagney@b1.cygnus.com>
194
195 * interp.c (fetch_str): New function.
196 (sim_monitor): Rewrite using sim_read & sim_write.
197 (sim_open): Check magic number.
198 (sim_open): Write monitor vectors into memory using sim_write.
199 (MONITOR_BASE, MONITOR_SIZE, MEM_SIZE): Define.
200 (sim_read, sim_write): Simplify - transfer data one byte at a
201 time.
202 (load_memory, store_memory): Clarify meaning of parameter RAW.
203
204 * sim-main.h (isHOST): Defete definition.
205 (isTARGET): Mark as depreciated.
206 (address_translation): Delete parameter HOST.
207
208 * interp.c (address_translation): Delete parameter HOST.
209
6205f379
GRK
210start-sanitize-tx49
211Wed Oct 29 14:21:32 1997 Gavin Koch <gavin@cygnus.com>
212
213 * gencode.c: Add tx49 configury and insns.
214 * configure.in: Add tx49 configury.
215 * configure: Update.
216
217end-sanitize-tx49
01b9cd49
AC
218Wed Oct 29 11:13:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
219
220 * mips.igen:
221
222 * Makefile.in (IGEN_INCLUDE): Files included by mips.igen.
223 (tmp-igen, tmp-m16): Depend on IGEN_INCLUDE.
224
89d09738
AC
225Tue Oct 28 11:06:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
226
227 * mips.igen: Add model filter field to records.
228
16bd5d6e
AC
229Mon Oct 27 17:53:59 1997 Andrew Cagney <cagney@b1.cygnus.com>
230
231 * Makefile.in (SIM_NO_CFLAGS): Define. Define WITH_IGEN=0.
232
233 interp.c (sim_engine_run): Do not compile function sim_engine_run
234 when WITH_IGEN == 1.
235
236 * configure.in (sim_igen_flags, sim_m16_flags): Set according to
237 target architecture.
238
239 Makefile.in (tmp-igen, tmp-m16): Drop -F and -M options to
240 igen. Replace with configuration variables sim_igen_flags /
241 sim_m16_flags.
242
16bd5d6e 243 start-sanitize-r5900
8c31916d
AC
244 * r5900.igen: New file. Copy r5900 insns here.
245 end-sanitize-r5900
16bd5d6e 246 start-sanitize-vr5400
58fb5d0a
AC
247 * vr5400.igen: New file.
248 end-sanitize-v5400
16bd5d6e
AC
249 * m16.igen: New file. Copy mips16 insns here.
250 * mips.igen: From here.
251
90ad43b2
AC
252Mon Oct 27 13:53:59 1997 Andrew Cagney <cagney@b1.cygnus.com>
253
254 start-sanitize-vr5400
255 * mips.igen: Tag all mipsIV instructions with vr5400 model.
256
257 * configure.in: Add mips64vr5400 target.
258 * configure: Re-generate.
259
260 end-sanitize-vr5400
261 * Makefile.in (SIM_NO_OBJ): Define, move SIM_M16_OBJ, SIM_IGEN_OBJ
262 to top.
263 (tmp-igen, tmp-m16): Pass -I srcdir to igen.
264
635ae9cb
GRK
265Sat Oct 25 16:51:40 1997 Gavin Koch <gavin@cygnus.com>
266
267 * gencode.c (build_instruction): Follow sim_write's lead in using
268 BigEndianMem instead of !ByteSwapMem.
269
122edc03
AC
270Fri Oct 24 17:41:49 1997 Andrew Cagney <cagney@b1.cygnus.com>
271
272 * configure.in (sim_gen): Dependent on target, select type of
273 generator. Always select old style generator.
274
275 configure: Re-generate.
276
277 Makefile.in (tmp-igen, tmp-m16, clean-m16, clean-igen): New
278 targets.
279 (SIM_M16_CFLAGS, SIM_M16_ALL, SIM_M16_OBJ, BUILT_SRC_FROM_M16,
280 SIM_IGEN_CFLAGS, SIM_IGEN_ALL, SIM_IGEN_OBJ, BUILT_SRC_FROM_IGEN,
281 IGEN_TRACE, IGEN_INSN, IGEN_DC): Define
282 (SIM_EXTRA_CFLAGS, SIM_EXTRA_ALL, SIM_OBJS): Add member
283 SIM_@sim_gen@_*, set by autoconf.
284
dad6f1f3
AC
285Wed Oct 22 12:52:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
286
287 * sim-main.h (NULLIFY_NEXT_INSTRUCTION, DELAY_SLOT): Define.
288
289 * interp.c (ColdReset): Remove #ifdef HASFPU, check
290 CURRENT_FLOATING_POINT instead.
291
292 * interp.c (ifetch32): New function. Fetch 32 bit instruction.
293 (address_translation): Raise exception InstructionFetch when
294 translation fails and isINSTRUCTION.
295
296 * interp.c (sim_open, sim_write, sim_monitor, store_word,
297 sim_engine_run): Change type of of vaddr and paddr to
298 address_word.
299 (address_translation, prefetch, load_memory, store_memory,
300 cache_op): Change type of vAddr and pAddr to address_word.
301
302 * gencode.c (build_instruction): Change type of vaddr and paddr to
303 address_word.
304
92ad193b
AC
305Mon Oct 20 15:29:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
306
307 * sim-main.h (ALU64_END, ALU32_END): Use ALU*_OVERFLOW_RESULT
308 macro to obtain result of ALU op.
309
aa324b9b
AC
310Tue Oct 21 17:39:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
311
312 * interp.c (sim_info): Call profile_print.
313
e2f8ffb7
AC
314Mon Oct 20 13:31:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
315
316 * Makefile.in (SIM_OBJS): Add sim-profile.o module.
317
318 * sim-main.h (WITH_PROFILE): Do not define, defined in
319 common/sim-config.h. Use sim-profile module.
320 (simPROFILE): Delete defintion.
321
322 * interp.c (PROFILE): Delete definition.
323 (mips_option_handler): Delete 'p', 'y' and 'x' profile options.
324 (sim_close): Delete code writing profile histogram.
325 (mips_set_profile, mips_set_profile_size, writeout16, writeout32):
326 Delete.
327 (sim_engine_run): Delete code profiling the PC.
328
fb5a2a3e
AC
329Mon Oct 20 13:31:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
330
331 * sim-main.h (SIGNEXTEND): Force type of result to unsigned_word.
332
333 * interp.c (sim_monitor): Make register pointers of type
334 unsigned_word*.
335
336 * sim-main.h: Make registers of type unsigned_word not
337 signed_word.
338
ea985d24
AC
339Thu Oct 16 10:31:39 1997 Andrew Cagney <cagney@b1.cygnus.com>
340
341start-sanitize-r5900
342 * sim-main.h (BYTES_IN_MMI_REGS, ..., SUB_REG_FETCH, ..., GPR_SB,
343 ...): Move to sim-main.h
344
345end-sanitize-r5900
346 * interp.c (sync_operation): Rename from SyncOperation, make
347 global, add SD argument.
348 (prefetch): Rename from Prefetch, make global, add SD argument.
349 (decode_coproc): Make global.
350
351 * sim-main.h (SyncOperation, DecodeCoproc, Pefetch): Define.
352
353 * gencode.c (build_instruction): Generate DecodeCoproc not
354 decode_coproc calls.
355
356 * interp.c (SETFCC, GETFCC, PREVCOC1): Move to sim-main.h
357 (SizeFGR): Move to sim-main.h
358 (simHALTEX, simHALTIN, simTRACE, simPROFILE, simDELAYSLOT,
359 simSIGINT, simJALDELAYSLOT): Move to sim-main.h
360 (FP_FLAGS, FP_ENABLE, FP_CAUSE, IR, UF, OF, DZ, IO, UO): Move to
361 sim-main.h.
362 (FP_FS, FP_MASK_RM, FP_SH_RM, FP_RM_NEAREST, FP_RM_TOPINF,
363 FP_RM_TOMINF, GETRM): Move to sim-main.h.
364 (Uncached, CachedNoncoherent, CachedCoherent, Cached,
365 isINSTRUCTION, ..., AccessLength_BYTE, ...): Move to sim-main.h.
366 (UserMode, BigEndianMem, ByteSwapMem, ReverseEndian,
367 BigEndianCPU, status_KSU_mask, ...). Moved to sim-main.h
368
369 * sim-main.h (ALU32_END, ALU64_END): Define. When overflow raise
370 exception.
371 (sim-alu.h): Include.
372 (NULLIFY_NIA, NULL_CIA, CPU_CIA): Define.
373 (sim_cia): Typedef to instruction_address.
374
284e759d
AC
375Thu Oct 16 10:31:41 1997 Andrew Cagney <cagney@b1.cygnus.com>
376
377 * Makefile.in (interp.o): Rename generated file engine.c to
378 oengine.c.
379
380 * interp.c: Update.
381
339fb149
AC
382Thu Oct 16 10:31:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
383
384 * gencode.c (build_instruction): Use FPR_STATE not fpr_state.
385
8b70f837
AC
386Thu Oct 16 10:31:39 1997 Andrew Cagney <cagney@b1.cygnus.com>
387
388 * gencode.c (build_instruction): For "FPSQRT", output correct
389 number of arguments to Recip.
390
0c2c5f61
AC
391Tue Oct 14 17:38:18 1997 Andrew Cagney <cagney@b1.cygnus.com>
392
393 * Makefile.in (interp.o): Depends on sim-main.h
394
395 * interp.c (mips16_entry, ColdReset,dotrace): Add SD argument. Use GPR not registers.
396
397 * sim-main.h (sim_cpu): Add registers, register_widths, fpr_state,
398 ipc, dspc, pending_*, hiaccess, loaccess, state, dsstate fields.
399 (REGISTERS, REGISTER_WIDTHS, FPR_STATE, IPC, DSPC, PENDING_*,
400 STATE, DSSTATE): Define
401 (GPR, FGRIDX, ..): Define.
402
403 * interp.c (registers, register_widths, fpr_state, ipc, dspc,
404 pending_*, hiaccess, loaccess, state, dsstate): Delete globals.
405 (GPR, FGRIDX, ...): Delete macros.
406
407 * interp.c: Update names to match defines from sim-main.h
408
18c64df6
AC
409Tue Oct 14 15:11:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
410
411 * interp.c (sim_monitor): Add SD argument.
412 (sim_warning): Delete. Replace calls with calls to
413 sim_io_eprintf.
414 (sim_error): Delete. Replace calls with sim_io_error.
415 (open_trace, writeout32, writeout16, getnum): Add SD argument.
416 (mips_set_profile): Rename from sim_set_profile. Add SD argument.
417 (mips_set_profile_size): Rename from sim_set_profile_size. Add SD
418 argument.
419 (mips_size): Rename from sim_size. Add SD argument.
420
421 * interp.c (simulator): Delete global variable.
422 (callback): Delete global variable.
423 (mips_option_handler, sim_open, sim_write, sim_read,
424 sim_store_register, sim_fetch_register, sim_info, sim_do_command,
425 sim_size,sim_monitor): Use sim_io_* not callback->*.
426 (sim_open): ZALLOC simulator struct.
427 (PROFILE): Do not define.
428
429Tue Oct 14 13:35:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
430
431 * interp.c (sim_open), support.h: Replace CHECKSIM macro found in
432 support.h with corresponding code.
433
434 * sim-main.h (word64, uword64), support.h: Move definition to
435 sim-main.h.
436 (WORD64LO, WORD64HI, SET64LO, SET64HI, WORD64, UWORD64): Ditto.
437
438 * support.h: Delete
439 * Makefile.in: Update dependencies
440 * interp.c: Do not include.
441
442Tue Oct 14 13:35:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
443
444 * interp.c (address_translation, load_memory, store_memory,
445 cache_op): Rename to from AddressTranslation et.al., make global,
446 add SD argument
447
448 * sim-main.h (AddressTranslation, LoadMemory, StoreMemory,
449 CacheOp): Define.
450
451 * interp.c (SignalException): Rename to signal_exception, make
452 global.
453
454 * interp.c (Interrupt, ...): Move definitions to sim-main.h.
455
456 * sim-main.h (SignalException, SignalExceptionInterrupt,
457 SignalExceptionInstructionFetch, SignalExceptionAddressStore,
458 SignalExceptionAddressLoad, SignalExceptionSimulatorFault,
459 SignalExceptionIntegerOverflow, SignalExceptionCoProcessorUnusable):
460 Define.
461
462 * interp.c, support.h: Use.
463
464Tue Oct 14 13:19:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
465
466 * interp.c (ValueFPR, StoreFPR), sim-main.h: Make global, rename
467 to value_fpr / store_fpr. Add SD argument.
468 (NaN, Infinity, Less, Equal, AbsoluteValue, Negate, Add, Sub,
469 Multiply, Divide, Recip, SquareRoot, Convert): Make global.
470
471 * sim-main.h (ValueFPR, StoreFPR): Define.
472
473Tue Oct 14 13:06:55 1997 Andrew Cagney <cagney@b1.cygnus.com>
474
475 * interp.c (sim_engine_run): Check consistency between configure
476 WITH_TARGET_WORD_BITSIZE and WITH_FLOATING_POINT and gensim GPRLEN
477 and HASFPU.
478
479 * configure.in (mips_bitsize): Configure WITH_TARGET_WORD_BITSIZE.
480 (mips_fpu): Configure WITH_FLOATING_POINT.
481 (mips_endian): Configure WITH_TARGET_ENDIAN.
482 * configure: Update.
483
484Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
485
486 * configure: Regenerated to track ../common/aclocal.m4 changes.
487
adf4739e
AC
488start-sanitize-r5900
489Mon Aug 25 19:11:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
490
491 * interp.c (MAX_REG): Allow up-to 128 registers.
492 (LO1, HI1): Define value that matches REGISTER_NAMES in gdb.
493 (REGISTER_SA): Ditto.
494 (sim_open): Initialize register_widths for r5900 specific
495 registers.
496 (sim_fetch_register, sim_store_register): Check for request of
497 r5900 specific SA register. Check for request for hi 64 bits of
498 r5900 specific registers.
499
500end-sanitize-r5900
26b20b0a
BM
501Mon Sep 29 14:45:00 1997 Bob Manson <manson@charmed.cygnus.com>
502
503 * configure: Regenerated.
504
6eedf3f4
MA
505Fri Sep 26 12:48:18 1997 Mark Alexander <marka@cygnus.com>
506
507 * interp.c: Allow Debug, DEPC, and EPC registers to be examined in GDB.
508
e63bc706
AC
509Thu Sep 25 11:15:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
510
6eedf3f4
MA
511 * gencode.c (print_igen_insn_models): Assume certain architectures
512 include all mips* instructions.
513 (print_igen_insn_format): Use data_size==-1 as marker for MIPS16
514 instruction.
515
e63bc706
AC
516 * Makefile.in (tmp.igen): Add target. Generate igen input from
517 gencode file.
518
519 * gencode.c (FEATURE_IGEN): Define.
520 (main): Add --igen option. Generate output in igen format.
521 (process_instructions): Format output according to igen option.
522 (print_igen_insn_format): New function.
523 (print_igen_insn_models): New function.
524 (process_instructions): Only issue warnings and ignore
525 instructions when no FEATURE_IGEN.
526
eb2e3c85
AC
527Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
528
529 * interp.c (COP_SD, COP_LD): Add UNUSED to pacify GCC for some
530 MIPS targets.
531
92f91d1f
AC
532Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
533
534 * configure: Regenerated to track ../common/aclocal.m4 changes.
535
536Tue Sep 23 10:19:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
537
538 * Makefile.in (SIM_ALIGNMENT, SIM_ENDIAN, SIM_HOSTENDIAN,
539 SIM_RESERVED_BITS): Delete, moved to common.
540 (SIM_EXTRA_CFLAGS): Update.
541
794e9ac9
AC
542Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
543
76a6247f 544 * configure.in: Configure non-strict memory alignment.
794e9ac9
AC
545 * configure: Regenerated to track ../common/aclocal.m4 changes.
546
b45caf05
AC
547Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
548
549 * configure: Regenerated to track ../common/aclocal.m4 changes.
550
551Sat Sep 20 14:07:28 1997 Gavin Koch <gavin@cygnus.com>
552
553 * gencode.c (SDBBP,DERET): Added (3900) insns.
554 (RFE): Turn on for 3900.
555 * interp.c (DebugBreakPoint,DEPC,Debug,Debug_*): Added.
556 (dsstate): Made global.
557 (SUBTARGET_R3900): Added.
558 (CANCELDELAYSLOT): New.
559 (SignalException): Ignore SystemCall rather than ignore and
560 terminate. Add DebugBreakPoint handling.
561 (decode_coproc): New insns RFE, DERET; and new registers Debug
562 and DEPC protected by SUBTARGET_R3900.
563 (sim_engine_run): Use CANCELDELAYSLOT rather than clearing
564 bits explicitly.
565 * Makefile.in,configure.in: Add mips subtarget option.
566 * configure: Update.
567
7afa8d4e
GRK
568Fri Sep 19 09:33:27 1997 Gavin Koch <gavin@cygnus.com>
569
570 * gencode.c: Add r3900 (tx39).
571
572start-sanitize-tx19
573 * gencode.c: Fix some configuration problems by improving
574 the relationship between tx19 and tx39.
575end-sanitize-tx19
576
667065d0
GRK
577Tue Sep 16 15:52:04 1997 Gavin Koch <gavin@cygnus.com>
578
579 * gencode.c (build_instruction): Don't need to subtract 4 for
580 JALR, just 2.
581
9cb8397f
GRK
582Tue Sep 16 11:32:28 1997 Gavin Koch <gavin@cygnus.com>
583
584 * interp.c: Correct some HASFPU problems.
585
a2ab5e65
AC
586Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
587
588 * configure: Regenerated to track ../common/aclocal.m4 changes.
589
11ac69e0
AC
590Fri Sep 12 12:01:39 1997 Andrew Cagney <cagney@b1.cygnus.com>
591
592 * interp.c (mips_options): Fix samples option short form, should
593 be `x'.
594
972f3a34
AC
595Thu Sep 11 09:35:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
596
597 * interp.c (sim_info): Enable info code. Was just returning.
598
9eeaaefa
AC
599Tue Sep 9 17:30:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
600
601 * interp.c (decode_coproc): Clarify warning about unsuported MTC0,
602 MFC0.
603
c31c13b4
AC
604Tue Sep 9 16:28:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
605
606 * gencode.c (build_instruction): Use SIGNED64 for 64 bit
607 constants.
608 (build_instruction): Ditto for LL.
609
b637f306
GRK
610start-sanitize-tx19
611Sun Sep 7 16:05:46 1997 Gavin Koch <gavin@cygnus.com>
612
613 * mips/configure.in, mips/gencode: Add tx19/r1900.
614
615end-sanitize-tx19
6fea4763
DE
616Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
617
618 * configure: Regenerated to track ../common/aclocal.m4 changes.
619
52352d38
AC
620start-sanitize-r5900
621Mon Sep 1 18:43:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
622
623 * gencode.c (build_instruction): For "pabsw" and "pabsh", check
624 for overflow due to ABS of MININT, set result to MAXINT.
625 (build_instruction): For "psrlvw", signextend bit 31.
626
627end-sanitize-r5900
88117054
AC
628Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
629
630 * configure: Regenerated to track ../common/aclocal.m4 changes.
631 * config.in: Ditto.
632
fafce69a
AC
633Wed Aug 27 14:12:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
634
635 * interp.c (sim_open): Add call to sim_analyze_program, update
636 call to sim_config.
637
7230ff0f
AC
638Tue Aug 26 10:40:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
639
640 * interp.c (sim_kill): Delete.
fafce69a
AC
641 (sim_create_inferior): Add ABFD argument. Set PC from same.
642 (sim_load): Move code initializing trap handlers from here.
643 (sim_open): To here.
644 (sim_load): Delete, use sim-hload.c.
645
646 * Makefile.in (SIM_OBJS): Add sim-hload.o module.
7230ff0f 647
247fccde
AC
648Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
649
650 * configure: Regenerated to track ../common/aclocal.m4 changes.
651 * config.in: Ditto.
652
653Mon Aug 25 15:59:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
654
655 * interp.c (sim_open): Add ABFD argument.
656 (sim_load): Move call to sim_config from here.
657 (sim_open): To here. Check return status.
658
659start-sanitize-r5900
660 * gencode.c (build_instruction): Do not define x8000000000000000,
661 x7FFFFFFFFFFFFFFF, or xFFFFFFFF80000000.
662
663end-sanitize-r5900
664start-sanitize-r5900
665Mon Jul 28 19:49:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
666
667 * gencode.c (build_instruction): For "pdivw", "pdivbw" and
668 "pdivuw" check for overflow due to signed divide by -1.
669
670end-sanitize-r5900
c12e2e4c
GRK
671Fri Jul 25 15:00:45 1997 Gavin Koch <gavin@cygnus.com>
672
673 * gencode.c (build_instruction): Two arg MADD should
674 not assign result to $0.
675
1e851d2c
AC
676start-sanitize-r5900
677Thu Jul 10 11:58:48 1997 Andrew Cagney <cagney@critters.cygnus.com>
678
679 * gencode.c (build_instruction): For "ppac5" use unsigned
680 arrithmetic so that the sign bit doesn't smear when right shifted.
681 (build_instruction): For "pdiv" perform sign extension when
682 storing results in HI and LO.
683 (build_instructions): For "pdiv" and "pdivbw" check for
684 divide-by-zero.
685 (build_instruction): For "pmfhl.slw" update hi part of dest
686 register as well as low part.
687 (build_instruction): For "pmfhl" portably handle long long values.
688 (build_instruction): For "pmfhl.sh" correctly negative values.
689 Store half words 2 and three in the correct place.
690 (build_instruction): For "psllvw", sign extend value after shift.
691
692end-sanitize-r5900
693Thu Jun 26 12:13:17 1997 Angela Marie Thomas (angela@cygnus.com)
694
695 * sim/mips/configure: Change default_sim_endian to 0 (bi-endian)
696 * sim/mips/configure.in: Regenerate.
697
698Wed Jul 9 10:29:21 1997 Andrew Cagney <cagney@critters.cygnus.com>
699
700 * interp.c (SUB_REG_UW, SUB_REG_SW, SUB_REG_*): Use more explicit
701 signed8, unsigned8 et.al. types.
702
703start-sanitize-r5900
704 * gencode.c (build_instruction): For PMULTU* do not sign extend
705 registers. Make generated code easier to debug.
706
707end-sanitize-r5900
708 * interp.c (SUB_REG_FETCH): Handle both little and big endian
709 hosts when selecting subreg.
710
711start-sanitize-r5900
712Tue Jul 8 18:07:20 1997 Andrew Cagney <cagney@andros.cygnus.com>
713
714 * gencode.c (type_for_data_len): For 32bit operations concerned
715 with overflow, perform op using 64bits.
716 (build_instruction): For PADD, always compute operation using type
717 returned by type_for_data_len.
718 (build_instruction): For PSUBU, when overflow, saturate to zero as
719 actually underflow.
720
721end-sanitize-r5900
ae19b07b
JL
722Wed Jul 2 11:54:10 1997 Jeffrey A Law (law@cygnus.com)
723
649625bb 724start-sanitize-r5900
64435234
JL
725 * gencode.c (build_instruction): Handle "pext5" according to
726 version 1.95 of the r5900 ISA.
727
649625bb
JL
728 * gencode.c (build_instruction): Handle "ppac5" according to
729 version 1.95 of the r5900 ISA.
649625bb 730
1e851d2c 731end-sanitize-r5900
05d1322f
JL
732 * interp.c (sim_engine_run): Reset the ZERO register to zero
733 regardless of FEATURE_WARN_ZERO.
ae19b07b
JL
734 * gencode.c (FEATURE_WARNINGS): Remove FEATURE_WARN_ZERO.
735
736Wed Jun 4 10:43:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
737
738 * interp.c (decode_coproc): Implement MTC0 N, CAUSE.
739 (SignalException): For BreakPoints ignore any mode bits and just
740 save the PC.
741 (SignalException): Always set the CAUSE register.
742
56e7c849
AC
743Tue Jun 3 05:00:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
744
745 * interp.c (SignalException): Clear the simDELAYSLOT flag when an
746 exception has been taken.
747
748 * interp.c: Implement the ERET and mt/f sr instructions.
749
ae19b07b 750start-sanitize-r5900
56e7c849
AC
751Mon Jun 2 23:28:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
752
753 * gencode.c (build_instruction): For paddu, extract unsigned
754 sub-fields.
755
756 * gencode.c (build_instruction): Saturate padds instead of padd
757 instructions.
758
759end-sanitize-r5900
760Sat May 31 00:44:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
761
762 * interp.c (SignalException): Don't bother restarting an
763 interrupt.
764
765Fri May 30 23:41:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
766
767 * interp.c (SignalException): Really take an interrupt.
768 (interrupt_event): Only deliver interrupts when enabled.
769
770Tue May 27 20:08:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
771
772 * interp.c (sim_info): Only print info when verbose.
773 (sim_info) Use sim_io_printf for output.
774
2f2e6c5d
AC
775Tue May 27 14:22:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
776
777 * interp.c (CoProcPresent): Add UNUSED attribute - not used by all
778 mips architectures.
779
780Tue May 27 14:22:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
781
782 * interp.c (sim_do_command): Check for common commands if a
783 simulator specific command fails.
784
d3d2a9f7
GRK
785Thu May 22 09:32:03 1997 Gavin Koch <gavin@cygnus.com>
786
787 * interp.c (sim_engine_run): ifdef out uses of simSTOP, simSTEP
788 and simBE when DEBUG is defined.
789
50a2a691
AC
790Wed May 21 09:08:10 1997 Andrew Cagney <cagney@b1.cygnus.com>
791
792 * interp.c (interrupt_event): New function. Pass exception event
793 onto exception handler.
794
795 * configure.in: Check for stdlib.h.
796 * configure: Regenerate.
797
798 * gencode.c (build_instruction): Add UNUSED attribute to tempS
799 variable declaration.
800 (build_instruction): Initialize memval1.
801 (build_instruction): Add UNUSED attribute to byte, bigend,
802 reverse.
803 (build_operands): Ditto.
804
805 * interp.c: Fix GCC warnings.
806 (sim_get_quit_code): Delete.
807
808 * configure.in: Add INLINE, ENDIAN, HOSTENDIAN and WARNINGS.
809 * Makefile.in: Ditto.
810 * configure: Re-generate.
811
812 * Makefile.in (SIM_OBJS): Add sim-watch.o module.
813
814Tue May 20 15:08:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
815
816 * interp.c (mips_option_handler): New function parse argumes using
817 sim-options.
818 (myname): Replace with STATE_MY_NAME.
819 (sim_open): Delete check for host endianness - performed by
820 sim_config.
821 (simHOSTBE, simBE): Delete, replaced by sim-endian flags.
822 (sim_open): Move much of the initialization from here.
823 (sim_load): To here. After the image has been loaded and
824 endianness set.
825 (sim_open): Move ColdReset from here.
826 (sim_create_inferior): To here.
827 (sim_open): Make FP check less dependant on host endianness.
828
829 * Makefile.in (SIM_RUN_OBJS): Set to nrun.o - use new version or
830 run.
831 * interp.c (sim_set_callbacks): Delete.
832
833 * interp.c (membank, membank_base, membank_size): Replace with
834 STATE_MEMORY, STATE_MEM_SIZE, STATE_MEM_BASE.
835 (sim_open): Remove call to callback->init. gdb/run do this.
836
837 * interp.c: Update
838
839 * sim-main.h (SIM_HAVE_FLATMEM): Define.
840
841 * interp.c (big_endian_p): Delete, replaced by
842 current_target_byte_order.
843
844Tue May 20 13:55:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
845
846 * interp.c (host_read_long, host_read_word, host_swap_word,
847 host_swap_long): Delete. Using common sim-endian.
848 (sim_fetch_register, sim_store_register): Use H2T.
849 (pipeline_ticks): Delete. Handled by sim-events.
850 (sim_info): Update.
851 (sim_engine_run): Update.
852
853Tue May 20 13:42:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
854
855 * interp.c (sim_stop_reason): Move code determining simEXCEPTION
856 reason from here.
857 (SignalException): To here. Signal using sim_engine_halt.
858 (sim_stop_reason): Delete, moved to common.
859
860Tue May 20 10:19:48 1997 Andrew Cagney <cagney@b2.cygnus.com>
861
862 * interp.c (sim_open): Add callback argument.
863 (sim_set_callbacks): Delete SIM_DESC argument.
864 (sim_size): Ditto.
865
2e61a3ad
AC
866Mon May 19 18:20:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
867
868 * Makefile.in (SIM_OBJS): Add common modules.
869
870 * interp.c (sim_set_callbacks): Also set SD callback.
871 (set_endianness, xfer_*, swap_*): Delete.
872 (host_read_word, host_read_long, host_swap_word, host_swap_long):
873 Change to functions using sim-endian macros.
874 (control_c, sim_stop): Delete, use common version.
875 (simulate): Convert into.
876 (sim_engine_run): This function.
877 (sim_resume): Delete.
878
879 * interp.c (simulation): New variable - the simulator object.
880 (sim_kind): Delete global - merged into simulation.
881 (sim_load): Cleanup. Move PC assignment from here.
882 (sim_create_inferior): To here.
883
884 * sim-main.h: New file.
885 * interp.c (sim-main.h): Include.
886
887Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
888
889 * configure: Regenerated to track ../common/aclocal.m4 changes.
890
3be0e228
DE
891Wed Apr 23 17:32:19 1997 Doug Evans <dje@canuck.cygnus.com>
892
893 * tconfig.in (SIM_HAVE_BIENDIAN): Define.
894
d654ba0a
GRK
895Mon Apr 21 17:16:13 1997 Gavin Koch <gavin@cygnus.com>
896
897 * gencode.c (build_instruction): DIV instructions: check
898 for division by zero and integer overflow before using
899 host's division operation.
900
9d52bcb7
DE
901Thu Apr 17 03:18:14 1997 Doug Evans <dje@canuck.cygnus.com>
902
903 * Makefile.in (SIM_OBJS): Add sim-load.o.
904 * interp.c: #include bfd.h.
905 (target_byte_order): Delete.
906 (sim_kind, myname, big_endian_p): New static locals.
907 (sim_open): Set sim_kind, myname. Move call to set_endianness to
908 after argument parsing. Recognize -E arg, set endianness accordingly.
909 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
910 load file into simulator. Set PC from bfd.
911 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
912 (set_endianness): Use big_endian_p instead of target_byte_order.
913
87e43259
AC
914Wed Apr 16 17:55:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
915
916 * interp.c (sim_size): Delete prototype - conflicts with
917 definition in remote-sim.h. Correct definition.
918
919Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
920
921 * configure: Regenerated to track ../common/aclocal.m4 changes.
922 * config.in: Ditto.
923
fbda74b1
DE
924Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
925
8a7c3105
DE
926 * interp.c (sim_open): New arg `kind'.
927
fbda74b1
DE
928 * configure: Regenerated to track ../common/aclocal.m4 changes.
929
a35e91c3
AC
930Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
931
932 * configure: Regenerated to track ../common/aclocal.m4 changes.
933
934Tue Mar 25 11:38:22 1997 Doug Evans <dje@canuck.cygnus.com>
935
936 * interp.c (sim_open): Set optind to 0 before calling getopt.
937
938Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
939
940 * configure: Regenerated to track ../common/aclocal.m4 changes.
941
6efa34d8
GRK
942Mon Mar 17 10:52:59 1997 Gavin Koch <gavin@cetus.cygnus.com>
943
944 * interp.c : Replace uses of pr_addr with pr_uword64
945 where the bit length is always 64 independent of SIM_ADDR.
946 (pr_uword64) : added.
947
a77aa7ec
AC
948Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
949
950 * configure: Re-generate.
951
601fb8ae
MM
952Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
953
954 * configure: Regenerate to track ../common/aclocal.m4 changes.
955
53b9417e
DE
956Thu Mar 13 12:51:36 1997 Doug Evans <dje@canuck.cygnus.com>
957
958 * interp.c (sim_open): New SIM_DESC result. Argument is now
959 in argv form.
960 (other sim_*): New SIM_DESC argument.
961
962start-sanitize-r5900
963Wed Feb 26 18:32:21 1997 Gavin Koch <gavin@cygnus.com>
964
965 * gencode.c (POP_AND,POP_OR,POP_NOR,POP_XOR):
966 Change values to avoid overloading DOUBLEWORD which is tested
967 for all insns.
968 * gencode.c: reinstate "offending code".
53b9417e 969
56e7c849 970end-sanitize-r5900
53b9417e
DE
971Mon Feb 24 22:47:14 1997 Dawn Perchik <dawn@cygnus.com>
972
973 * interp.c: Fix printing of addresses for non-64-bit targets.
974 (pr_addr): Add function to print address based on size.
975start-sanitize-r5900
976 * gencode.c: #ifdef out offending code until a permanent fix
977 can be added. Code is causing build errors for non-5900 mips targets.
978end-sanitize-r5900
979
980start-sanitize-r5900
981Thu Feb 20 10:40:24 1997 Gavin Koch <gavin@cetus.cygnus.com>
982
983 * gencode.c (process_instructions): Correct test for ISA dependent
984 architecture bits in isa field of MIPS_DECODE.
985
986end-sanitize-r5900
7e05106d
MA
987Wed Feb 19 14:42:09 1997 Mark Alexander <marka@cygnus.com>
988
989 * interp.c (simopen): Add support for LSI MiniRISC PMON vectors.
990
2d18fbc6 991start-sanitize-r5900
53b9417e 992Tue Feb 18 17:03:47 1997 Gavin Koch <gavin@cygnus.com>
2d18fbc6
GRK
993
994 * gencode.c (MIPS_DECODE): Correct instruction feature flags for
995 PMADDUW.
996
997end-sanitize-r5900
998Thu Feb 13 14:08:30 1997 Ian Lance Taylor <ian@cygnus.com>
999
1000 * gencode.c (build_mips16_operands): Correct computation of base
1001 address for extended PC relative instruction.
1002
276c2d7d
GRK
1003start-sanitize-r5900
1004Fri Feb 7 11:12:44 1997 Gavin Koch <gavin@cygnus.com>
2d18fbc6
GRK
1005
1006 * Makefile.in, configure, configure.in, gencode.c,
1007 interp.c, support.h: add r5900.
1008
276c2d7d 1009end-sanitize-r5900
da0bce9c
ILT
1010Thu Feb 6 17:16:15 1997 Ian Lance Taylor <ian@cygnus.com>
1011
1012 * interp.c (mips16_entry): Add support for floating point cases.
1013 (SignalException): Pass floating point cases to mips16_entry.
1014 (ValueFPR): Don't restrict fmt_single and fmt_word to even
1015 registers.
1016 (StoreFPR): Likewise. Also, don't clobber fpr + 1 for fmt_single
1017 or fmt_word.
1018 (COP_LW): Pass fmt_word rather than fmt_uninterpreted to StoreFPR,
1019 and then set the state to fmt_uninterpreted.
1020 (COP_SW): Temporarily set the state to fmt_word while calling
1021 ValueFPR.
1022
6389d856
ILT
1023Tue Feb 4 16:48:25 1997 Ian Lance Taylor <ian@cygnus.com>
1024
1025 * gencode.c (build_instruction): The high order may be set in the
1026 comparison flags at any ISA level, not just ISA 4.
1027
19c5af72
DE
1028Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
1029
1030 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
1031 COMMON_{PRE,POST}_CONFIG_FRAG instead.
1032 * configure.in: sinclude ../common/aclocal.m4.
1033 * configure: Regenerated.
1034
736a306c
ILT
1035Fri Jan 31 11:11:45 1997 Ian Lance Taylor <ian@cygnus.com>
1036
1037 * configure: Rebuild after change to aclocal.m4.
1038
295dbbe4
SG
1039Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
1040
1041 * configure configure.in Makefile.in: Update to new configure
1042 scheme which is more compatible with WinGDB builds.
1043 * configure.in: Improve comment on how to run autoconf.
1044 * configure: Re-run autoconf to get new ../common/aclocal.m4.
1045 * Makefile.in: Use autoconf substitution to install common
1046 makefile fragment.
1047
1048Wed Jan 8 12:39:03 1997 Jim Wilson <wilson@cygnus.com>
1049
1050 * gencode.c (build_instruction): Use BigEndianCPU instead of
1051 ByteSwapMem.
1052
e1db0d47
MA
1053Thu Jan 02 22:23:04 1997 Mark Alexander <marka@cygnus.com>
1054
1055 * interp.c (sim_monitor): Make output to stdout visible in
1056 wingdb's I/O log window.
1057
2902e8ab
MA
1058Tue Dec 31 07:04:00 1996 Mark Alexander <marka@cygnus.com>
1059
1060 * support.h: Undo previous change to SIGTRAP
1061 and SIGQUIT values.
1062
7e6c297e
ILT
1063Mon Dec 30 17:36:06 1996 Ian Lance Taylor <ian@cygnus.com>
1064
1065 * interp.c (store_word, load_word): New static functions.
1066 (mips16_entry): New static function.
1067 (SignalException): Look for mips16 entry and exit instructions.
1068 (simulate): Use the correct index when setting fpr_state after
1069 doing a pending move.
1070
0049ba7a
MA
1071Sun Dec 29 09:37:18 1996 Mark Alexander <marka@cygnus.com>
1072
1073 * interp.c: Fix byte-swapping code throughout to work on
1074 both little- and big-endian hosts.
1075
2510786b
MA
1076Sun Dec 29 09:18:32 1996 Mark Alexander <marka@cygnus.com>
1077
1078 * support.h: Make definitions of SIGTRAP and SIGQUIT consistent
1079 with gdb/config/i386/xm-windows.h.
1080
39bf0ef4
MA
1081Fri Dec 27 22:48:51 1996 Mark Alexander <marka@cygnus.com>
1082
1083 * gencode.c (build_instruction): Work around MSVC++ code gen bug
1084 that messes up arithmetic shifts.
1085
dbeec768
SG
1086Fri Dec 20 11:04:05 1996 Stu Grossman (grossman@critters.cygnus.com)
1087
1088 * support.h: Use _WIN32 instead of __WIN32__. Also add defs for
1089 SIGTRAP and SIGQUIT for _WIN32.
1090
deffd638
ILT
1091Thu Dec 19 14:07:27 1996 Ian Lance Taylor <ian@cygnus.com>
1092
1093 * gencode.c (build_instruction) [MUL]: Cast operands to word64, to
1094 force a 64 bit multiplication.
1095 (build_instruction) [OR]: In mips16 mode, don't do anything if the
1096 destination register is 0, since that is the default mips16 nop
1097 instruction.
1098
aaff8437
ILT
1099Mon Dec 16 14:59:38 1996 Ian Lance Taylor <ian@cygnus.com>
1100
063443cf
ILT
1101 * gencode.c (MIPS16_DECODE): SWRASP is I8, not RI.
1102 (build_endian_shift): Don't check proc64.
1103 (build_instruction): Always set memval to uword64. Cast op2 to
1104 uword64 when shifting it left in memory instructions. Always use
1105 the same code for stores--don't special case proc64.
1106
aaff8437
ILT
1107 * gencode.c (build_mips16_operands): Fix base PC value for PC
1108 relative operands.
1109 (build_instruction): Call JALDELAYSLOT rather than DELAYSLOT for a
1110 jal instruction.
1111 * interp.c (simJALDELAYSLOT): Define.
1112 (JALDELAYSLOT): Define.
1113 (INDELAYSLOT, INJALDELAYSLOT): Define.
1114 (simulate): Clear simJALDELAYSLOT when simDELAYSLOT is cleared.
1115
280f90e1
AMT
1116Tue Dec 24 22:11:20 1996 Angela Marie Thomas (angela@cygnus.com)
1117
1118 * interp.c (sim_open): add flush_cache as a PMON routine
1119 (sim_monitor): handle flush_cache by ignoring it
1120
aaff8437
ILT
1121Wed Dec 11 13:53:51 1996 Jim Wilson <wilson@cygnus.com>
1122
1123 * gencode.c (build_instruction): Use !ByteSwapMem instead of
1124 BigEndianMem.
1125 * interp.c (CONFIG, config_EP_{mask,shift,D,DxxDxx, config_BE): Delete.
1126 (BigEndianMem): Rename to ByteSwapMem and change sense.
1127 (BigEndianCPU, sim_write, LoadMemory, StoreMemory): Change
1128 BigEndianMem references to !ByteSwapMem.
1129 (set_endianness): New function, with prototype.
1130 (sim_open): Call set_endianness.
1131 (sim_info): Use simBE instead of BigEndianMem.
1132 (xfer_direct_word, xfer_direct_long, swap_direct_word,
1133 swap_direct_long, xfer_big_word, xfer_big_long, xfer_little_word,
1134 xfer_little_long, swap_word, swap_long): Delete unnecessary MSC_VER
1135 ifdefs, keeping the prototype declaration.
1136 (swap_word): Rewrite correctly.
1137 (ColdReset): Delete references to CONFIG. Delete endianness related
1138 code; moved to set_endianness.
1139
6429b296
JW
1140Tue Dec 10 11:32:04 1996 Jim Wilson <wilson@cygnus.com>
1141
1142 * gencode.c (build_instruction, case JUMP): Truncate PC to 32 bits.
1143 * interp.c (CHECKHILO): Define away.
1144 (simSIGINT): New macro.
1145 (membank_size): Increase from 1MB to 2MB.
1146 (control_c): New function.
1147 (sim_resume): Rename parameter signal to signal_number. Add local
1148 variable prev. Call signal before and after simulate.
1149 (sim_stop_reason): Add simSIGINT support.
1150 (sim_warning, sim_error, dotrace, SignalException): Define as stdarg
1151 functions always.
1152 (sim_warning): Delete call to SignalException. Do call printf_filtered
1153 if logfh is NULL.
1154 (AddressTranslation): Add #ifdef DEBUG around debugging message and
1155 a call to sim_warning.
1156
1157Wed Nov 27 11:53:50 1996 Ian Lance Taylor <ian@cygnus.com>
1158
1159 * gencode.c (process_instructions): If ! proc64, skip DOUBLEWORD
1160 16 bit instructions.
1161
831f59a2
ILT
1162Tue Nov 26 11:53:12 1996 Ian Lance Taylor <ian@cygnus.com>
1163
1164 Add support for mips16 (16 bit MIPS implementation):
1165 * gencode.c (inst_type): Add mips16 instruction encoding types.
1166 (GETDATASIZEINSN): Define.
1167 (MIPS_DECODE): Add REG flag to dsllv, dsrav, and dsrlv. Add
1168 jalx. Add LEFT flag to mfhi and mflo. Add RIGHT flag to mthi and
1169 mtlo.
1170 (MIPS16_DECODE): New table, for mips16 instructions.
1171 (bitmap_val): New static function.
1172 (struct mips16_op): Define.
1173 (mips16_op_table): New table, for mips16 operands.
1174 (build_mips16_operands): New static function.
1175 (process_instructions): If PC is odd, decode a mips16
1176 instruction. Break out instruction handling into new
1177 build_instruction function.
1178 (build_instruction): New static function, broken out of
1179 process_instructions. Check modifiers rather than flags for SHIFT
1180 bit count and m[ft]{hi,lo} direction.
1181 (usage): Pass program name to fprintf.
1182 (main): Remove unused variable this_option_optind. Change
1183 ``*loptarg++'' to ``loptarg++''.
1184 (my_strtoul): Parenthesize && within ||.
350d33b8 1185 * interp.c (LoadMemory): Accept a halfword pAddr if vAddr is odd.
831f59a2
ILT
1186 (simulate): If PC is odd, fetch a 16 bit instruction, and
1187 increment PC by 2 rather than 4.
1188 * configure.in: Add case for mips16*-*-*.
1189 * configure: Rebuild.
1190
1191Fri Nov 22 08:49:36 1996 Mark Alexander <marka@cygnus.com>
1192
1193 * interp.c: Allow -t to enable tracing in standalone simulator.
1194 Fix garbage output in trace file and error messages.
1195
e3d12c65
DE
1196Wed Nov 20 01:54:37 1996 Doug Evans <dje@canuck.cygnus.com>
1197
1198 * Makefile.in: Delete stuff moved to ../common/Make-common.in.
1199 (SIM_{OBJS,EXTRA_CFLAGS,EXTRA_CLEAN}): Define.
1200 * configure.in: Simplify using macros in ../common/aclocal.m4.
1201 * configure: Regenerated.
1202 * tconfig.in: New file.
1203
1204Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
1205
1206 * interp.c: Fix bugs in 64-bit port.
1207 Use ansi function declarations for msvc compiler.
1208 Initialize and test file pointer in trace code.
1209 Prevent duplicate definition of LAST_EMED_REGNUM.
1210
1211Tue Oct 15 11:07:06 1996 Mark Alexander <marka@cygnus.com>
1212
1213 * interp.c (xfer_big_long): Prevent unwanted sign extension.
1214
1215Thu Sep 26 17:35:00 1996 James G. Smith <jsmith@cygnus.co.uk>
1216
1217 * interp.c (SignalException): Check for explicit terminating
1218 breakpoint value.
1219 * gencode.c: Pass instruction value through SignalException()
1220 calls for Trap, Breakpoint and Syscall.
1221
1222Thu Sep 26 11:35:17 1996 James G. Smith <jsmith@cygnus.co.uk>
1223
1224 * interp.c (SquareRoot): Add HAVE_SQRT check to ensure sqrt() is
1225 only used on those hosts that provide it.
1226 * configure.in: Add sqrt() to list of functions to be checked for.
1227 * config.in: Re-generated.
1228 * configure: Re-generated.
1229
1230Fri Sep 20 15:47:12 1996 Ian Lance Taylor <ian@cygnus.com>
1231
1232 * gencode.c (process_instructions): Call build_endian_shift when
1233 expanding STORE RIGHT, to fix swr.
1234 * support.h (SIGNEXTEND): If the sign bit is not set, explicitly
1235 clear the high bits.
1236 * interp.c (Convert): Fix fmt_single to fmt_long to not truncate.
1237 Fix float to int conversions to produce signed values.
1238
cc5201d7
ILT
1239Thu Sep 19 15:34:17 1996 Ian Lance Taylor <ian@cygnus.com>
1240
458e1f58
ILT
1241 * gencode.c (MIPS_DECODE): Set UNSIGNED for multu instruction.
1242 (process_instructions): Correct handling of nor instruction.
1243 Correct shift count for 32 bit shift instructions. Correct sign
1244 extension for arithmetic shifts to not shift the number of bits in
1245 the type. Fix 64 bit multiply high word calculation. Fix 32 bit
1246 unsigned multiply. Fix ldxc1 and friends to use coprocessor 1.
1247 Fix madd.
c05d1721
ILT
1248 * interp.c (CHECKHILO): Don't set HIACCESS, LOACCESS, or HLPC.
1249 It's OK to have a mult follow a mult. What's not OK is to have a
1250 mult follow an mfhi.
458e1f58 1251 (Convert): Comment out incorrect rounding code.
cc5201d7 1252
f24b7b69
JSC
1253Mon Sep 16 11:38:16 1996 James G. Smith <jsmith@cygnus.co.uk>
1254
1255 * interp.c (sim_monitor): Improved monitor printf
1256 simulation. Tidied up simulator warnings, and added "--log" option
1257 for directing warning message output.
1258 * gencode.c: Use sim_warning() rather than WARNING macro.
1259
1260Thu Aug 22 15:03:12 1996 Ian Lance Taylor <ian@cygnus.com>
1261
1262 * Makefile.in (gencode): Depend upon gencode.o, getopt.o, and
1263 getopt1.o, rather than on gencode.c. Link objects together.
1264 Don't link against -liberty.
1265 (gencode.o, getopt.o, getopt1.o): New targets.
1266 * gencode.c: Include <ctype.h> and "ansidecl.h".
1267 (AND): Undefine after including "ansidecl.h".
1268 (ULONG_MAX): Define if not defined.
1269 (OP_*): Don't define macros; now defined in opcode/mips.h.
1270 (main): Call my_strtoul rather than strtoul.
1271 (my_strtoul): New static function.
1272
1273Wed Jul 17 18:12:38 1996 Stu Grossman (grossman@critters.cygnus.com)
1274
1275 * gencode.c (process_instructions): Generate word64 and uword64
1276 instead of `long long' and `unsigned long long' data types.
1277 * interp.c: #include sysdep.h to get signals, and define default
1278 for SIGBUS.
1279 * (Convert): Work around for Visual-C++ compiler bug with type
1280 conversion.
1281 * support.h: Make things compile under Visual-C++ by using
1282 __int64 instead of `long long'. Change many refs to long long
1283 into word64/uword64 typedefs.
1284
a271d1d9
JM
1285Wed Jun 26 12:24:55 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
1286
1287 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
1288 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
1289 (docdir): Removed.
1290 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
1291 (AC_PROG_INSTALL): Added.
1292 (AC_PROG_CC): Moved to before configure.host call.
1293 * configure: Rebuilt.
1294
1295Wed Jun 5 08:28:13 1996 James G. Smith <jsmith@cygnus.co.uk>
1296
1297 * configure.in: Define @SIMCONF@ depending on mips target.
1298 * configure: Rebuild.
1299 * Makefile.in (run): Add @SIMCONF@ to control simulator
1300 construction.
1301 * gencode.c: Change LOADDRMASK to 64bit memory model only.
1302 * interp.c: Remove some debugging, provide more detailed error
1303 messages, update memory accesses to use LOADDRMASK.
1304
4fa134be
ILT
1305Mon Jun 3 11:55:03 1996 Ian Lance Taylor <ian@cygnus.com>
1306
1307 * configure.in: Add calls to AC_CONFIG_HEADER, AC_CHECK_HEADERS,
1308 AC_CHECK_LIB, and AC_CHECK_FUNCS. Change AC_OUTPUT to set
1309 stamp-h.
1310 * configure: Rebuild.
1311 * config.in: New file, generated by autoheader.
1312 * interp.c: Include "config.h". Include <stdlib.h>, <string.h>,
1313 and <strings.h> if they exist. Replace #ifdef sun with #ifdef
1314 HAVE_ANINT and HAVE_AINT, as appropriate.
1315 * Makefile.in (run): Use @LIBS@ rather than -lm.
1316 (interp.o): Depend upon config.h.
1317 (Makefile): Just rebuild Makefile.
1318 (clean): Remove stamp-h.
1319 (mostlyclean): Make the same as clean, not as distclean.
1320 (config.h, stamp-h): New targets.
1321
1322Fri May 10 00:41:17 1996 James G. Smith <jsmith@cygnus.co.uk>
1323
1324 * interp.c (ColdReset): Fix boolean test. Make all simulator
1325 globals static.
1326
f7481d45
JSC
1327Wed May 8 15:12:58 1996 James G. Smith <jsmith@cygnus.co.uk>
1328
1329 * interp.c (xfer_direct_word, xfer_direct_long,
1330 swap_direct_word, swap_direct_long, xfer_big_word,
1331 xfer_big_long, xfer_little_word, xfer_little_long,
1332 swap_word,swap_long): Added.
1333 * interp.c (ColdReset): Provide function indirection to
1334 host<->simulated_target transfer routines.
1335 * interp.c (sim_store_register, sim_fetch_register): Updated to
1336 make use of indirected transfer routines.
1337
1338Fri Apr 19 15:48:24 1996 James G. Smith <jsmith@cygnus.co.uk>
1339
1340 * gencode.c (process_instructions): Ensure FP ABS instruction
1341 recognised.
1342 * interp.c (AbsoluteValue): Add routine. Also provide simple PMON
1343 system call support.
1344
8b554809
JSC
1345Wed Apr 10 09:51:38 1996 James G. Smith <jsmith@cygnus.co.uk>
1346
1347 * interp.c (sim_do_command): Complain if callback structure not
1348 initialised.
1349
d0757082
JSC
1350Thu Mar 28 13:50:51 1996 James G. Smith <jsmith@cygnus.co.uk>
1351
1352 * interp.c (Convert): Provide round-to-nearest and round-to-zero
1353 support for Sun hosts.
1354 * Makefile.in (gencode): Ensure the host compiler and libraries
1355 used for cross-hosted build.
1356
e871dd18
JSC
1357Wed Mar 27 14:42:12 1996 James G. Smith <jsmith@cygnus.co.uk>
1358
1359 * interp.c, gencode.c: Some more (TODO) tidying.
1360
1361Thu Mar 7 11:19:33 1996 James G. Smith <jsmith@cygnus.co.uk>
1362
1363 * gencode.c, interp.c: Replaced explicit long long references with
1364 WORD64HI, WORD64LO, SET64HI and SET64LO macro calls.
1365 * support.h (SET64LO, SET64HI): Macros added.
1366
5c59ec43
ILT
1367Wed Feb 21 12:16:21 1996 Ian Lance Taylor <ian@cygnus.com>
1368
1369 * configure: Regenerate with autoconf 2.7.
1370
1371Tue Jan 30 08:48:18 1996 Fred Fish <fnf@cygnus.com>
1372
1373 * interp.c (LoadMemory): Enclose text following #endif in /* */.
1374 * support.h: Remove superfluous "1" from #if.
1375 * support.h (CHECKSIM): Remove stray 'a' at end of line.
1376
1377Mon Dec 4 11:44:40 1995 Jamie Smith <jsmith@cygnus.com>
1378
1379 * interp.c (StoreFPR): Control UndefinedResult() call on
1380 WARN_RESULT manifest.
1381
8bae0a0c
JSC
1382Fri Dec 1 16:37:19 1995 James G. Smith <jsmith@cygnus.co.uk>
1383
1384 * gencode.c: Tidied instruction decoding, and added FP instruction
1385 support.
1386
1387 * interp.c: Added dineroIII, and BSD profiling support. Also
1388 run-time FP handling.
1389
1390Sun Oct 22 00:57:18 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
1391
1392 * Changelog, Makefile.in, README.Cygnus, configure, configure.in,
1393 gencode.c, interp.c, support.h: created.