]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/v850/ChangeLog
* simops.c (OP_40): Delete. Move code to...
[thirdparty/binutils-gdb.git] / sim / v850 / ChangeLog
1 2003-04-06 Nick Clifton <nickc@redhat.com>
2
3 * simops.c (OP_40): Delete. Move code to:
4 * v850-igen.c (): Here. Sign extend the first operand.
5 * simops.h (OP_40): Remove prototype.
6
7 2003-02-27 Andrew Cagney <cagney@redhat.com>
8
9 * interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd.
10
11 2002-11-30 Andrew Cagney <cagney@redhat.com>
12
13 * simops.c: Use int, 1, 0 instead of boolean, true and false.
14 * sim-main.h: Ditto.
15
16 2002-09-27 Jim Wilson <wilson@redhat.com>
17
18 * simops.c (OP_E6077E0): And op1 with 7 after reading register, not
19 before.
20 (BIT_CHANGE_OP): Likewise.
21
22 2002-09-26 Jim Wilson <wilson@redhat.com>
23
24 * simops (OP_10007E0): Don't subtract 4 from PC.
25
26 2002-09-19 Nick Clifton <nickc@redhat.com>
27
28 * interp.c (sim_open): Remove reference to v850ea.
29 (sim_create_inferior): Likewise.
30 * v850-dc: Likewise.
31 * v850.igen: Remove all references to v850ea, including v850ea
32 specific instructions.
33
34 2002-08-29 Nick Clifton <nickc@redhat.com>
35
36 From 2001-08-23 Catherine Moore <clm@redhat.com>
37
38 * Makefile.in: Add gen-zero-r0 option.
39 * sim-main.h (GPR_SET, GPR_CLEAR): Define.
40 * simops.c (OP_24007E0): Sign extend the imm9
41 operand of a mul instruction.
42
43 2002-06-17 Andrew Cagney <cagney@redhat.com>
44
45 * simops.c (trace_result): Fix printf formatting.
46
47 2002-06-16 Andrew Cagney <ac131313@redhat.com>
48
49 * configure: Regenerated to track ../common/aclocal.m4 changes.
50
51 2001-12-02 Andrew Cagney <ac131313@redhat.com>
52
53 * Makefile.in (simops.h, table.c): Delete targets.
54 (tmp-gencode, gencode.o, gencode): Delete targets.
55 (simops.h): New file.
56 ($(BUILT_SRC_FROM_IGEN)): Do not depend on simops.h.
57 * gencode.c: Delete file.
58
59 2001-04-15 J.T. Conklin <jtc@redback.com>
60
61 * Makefile.in (simops.o): Add simops.h to dependency list.
62
63 2001-03-14 Andrew Cagney <ac131313@redhat.com>
64
65 * Makefile.in (gencode): Link with libintl.
66
67 2001-01-31 Jonathan Larmour <jlarmour@redhat.com>
68
69 * Makefile.in (gencode): Link with libopcodes in build tree rather
70 than building source files from there.
71
72 2000-05-30 Nick Clifton <nickc@cygnus.com>
73
74 * v850.igen: Remove illegal instruction pattern, since it is the
75 same as the breakpoint pattern.
76
77 Tue May 23 21:39:23 2000 Andrew Cagney <cagney@b1.cygnus.com>
78
79 * configure: Regenerated to track ../common/aclocal.m4 changes.
80
81 2000-04-14 Gary Thomas <gthomas@redhat.com>
82
83 * v850.igen: Define 'br *' as illegal since this is the only
84 way to provide a breakpoint on some v850 family processors.
85
86 2000-03-24 Frank Ch. Eigler <fche@redhat.com>
87
88 * v850.igen (ilgop): New insn pattern for four-byte breakpoints.
89
90 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
91
92 * configure: Regenerated to track ../common/aclocal.m4 changes.
93
94 1999-05-08 Felix Lee <flee@cygnus.com>
95
96 * configure: Regenerated to track ../common/aclocal.m4 changes.
97
98 Tue Dec 1 17:25:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
99
100 * Makefile.in (NL_TARGET): Define as -DNL_TARGET_v850.
101
102 Wed Nov 25 17:52:58 1998 Andrew Cagney <cagney@b1.cygnus.com>
103
104 * Makefile.in (simops.o): Depends on targ-vals.h
105 * simops.c: Include targ-vals.h instead of
106 libgloss/.../syscall.h. Replace SYS_* with TARGET_SYS_*.
107 (divn, divun, OP_1C007E0, OP_18207E0, OP_1C207E0,OP_18007E0):
108 Replace signed long int with signed32.
109
110 Fri Oct 9 18:02:25 1998 Doug Evans <devans@canuck.cygnus.com>
111
112 * interp.c: #include "itable.h".
113 (get_insn_name): New function.
114 (sim_open): Initialize CPU_INSN_NAME,CPU_MAX_INSNS.
115 * sim-main.h (MAX_INSNS,INSN_NAME): Delete.
116
117 Wed May 6 19:43:27 1998 Doug Evans <devans@canuck.cygnus.com>
118
119 * sim-main.h (INSN_NAME): New arg `cpu'.
120
121 Tue Apr 28 18:33:31 1998 Geoffrey Noer <noer@cygnus.com>
122
123 * configure: Regenerated to track ../common/aclocal.m4 changes.
124
125 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
126
127 * configure: Regenerated to track ../common/aclocal.m4 changes.
128 * config.in: Ditto.
129
130 Sun Apr 26 15:19:14 1998 Tom Tromey <tromey@cygnus.com>
131
132 * acconfig.h: New file.
133 * configure.in: Reverted change of Apr 24; use sinclude again.
134
135 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
136
137 * configure: Regenerated to track ../common/aclocal.m4 changes.
138 * config.in: Ditto.
139
140 Fri Apr 24 11:18:08 1998 Tom Tromey <tromey@cygnus.com>
141
142 * configure.in: Don't call sinclude.
143
144 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
145
146 * configure: Regenerated to track ../common/aclocal.m4 changes.
147 * sim-main.h (SIM_MAIN_H): Wrap header.
148
149 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
150
151 * configure: Regenerated to track ../common/aclocal.m4 changes.
152
153 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
154
155 * configure: Regenerated to track ../common/aclocal.m4 changes.
156
157 Tue Mar 10 15:54:50 1998 Andrew Cagney <cagney@b1.cygnus.com>
158
159 * interp.c (sim_stop): Delete, second attempt.
160
161 Thu Feb 26 19:09:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
162
163 * interp.c (sim_info): Delete.
164
165 Wed Feb 18 10:47:32 1998 Andrew Cagney <cagney@b1.cygnus.com>
166
167 * sim-main.h (TRACE_ALU_INPUT*): Delete. Moved to sim-trace.[hc].
168
169 * simops.c (trace_result): Call trace_generic instead of
170 trace_one_insn.
171 (trace_module): Change variable type to integer.
172 (trace_input): Initialize trace_module with TRACE_ALU_IDX.
173
174 * sim-main.h (trace_module): Change variable decl to integer type.
175 (TRACE_BRANCH*, TRACE_LD, TRACE_ST): Update.
176
177 Tue Feb 17 12:51:18 1998 Andrew Cagney <cagney@b1.cygnus.com>
178
179 * interp.c (sim_store_register, sim_fetch_register): Pass in
180 length parameter. Return -1.
181
182 Tue Feb 3 16:24:42 1998 Andrew Cagney <cagney@b1.cygnus.com>
183
184 * sim-main.h (IMEM16, IMEM16_IMMED): Rename IMEM and
185 IMEM_IMMED. To match recent igen change.
186
187 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
188
189 * configure: Regenerated to track ../common/aclocal.m4 changes.
190
191 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
192
193 * configure: Regenerated to track ../common/aclocal.m4 changes.
194
195 Fri Jan 30 09:51:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
196
197 * sim-main.h (CPU_CIA): Delete, replaced by.
198 (CIA_SET, CIA_SET): Define.
199
200 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
201
202 * configure: Regenerated to track ../common/aclocal.m4 changes.
203
204 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
205
206 * configure: Regenerated to track ../common/aclocal.m4 changes.
207 * config.in: Ditto.
208
209 Fri Dec 5 09:26:08 1997 Nick Clifton <nickc@cygnus.com>
210
211 * v850.igen: Revert break value back to its old value.
212
213 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
214
215 * configure: Regenerated to track ../common/aclocal.m4 changes.
216
217 Wed Dec 3 17:27:19 1997 Nick Clifton <nickc@cygnus.com>
218
219 * v850.igen: Make break have a zero first field, since otherwise
220 it clashes with the DIVH instruction.
221
222 Sat Nov 22 21:32:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
223
224 * simops.c (OP_10007E0): Rename SIGABRT -> SIM_SIGABRT. Give
225 sim_stopped instead of sim_signalled.
226
227 * v850.igen (BREAK), simops.c (OP_12007E0): Rename SIGTRAP to
228 SIM_SIGTRAP.
229 (illegal): Rename SIGILL to SIM_SIGILL.
230
231 * sim-main.h, simops.c, interp.c: Do not include signal.h.
232
233 * sim-main.h: Include sim-signal.h instead of signal.h.
234 (SIGTRAP, SIGQUIT): Delete definition.
235 (SIG_V850_EXIT): Delete definition.
236
237 Tue Nov 18 15:33:48 1997 Doug Evans <devans@canuck.cygnus.com>
238
239 * Makefile.in (SIM_OBJS): Use $(SIM_NEW_COMMON_OBJS).
240
241 Fri Oct 31 10:33:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
242
243 * interp.c (sim_open): Check state magic number.
244 (sim-assert.h): Include.
245
246 Tue Oct 28 11:06:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
247
248 * v850.igen: Add model filter field to records.
249
250 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
251
252 * configure: Regenerated to track ../common/aclocal.m4 changes.
253
254 Fri Sep 26 11:56:02 1997 Felix Lee <flee@cygnus.com>
255
256 * sim-main.h: delete null override of SIM_ENGINE_HALT_HOOK and
257 SIM_ENGINE_RESTART_HOOK.
258
259 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
260
261 * configure: Regenerated to track ../common/aclocal.m4 changes.
262
263 Wed Sep 24 17:28:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
264
265 * sim-main.h (WITH_TARGET_WORD_MSB): Delete.
266
267 * configure.in (SIM_AC_OPTION_BITSIZE): Specify 32 bit
268 architecture with MSB == 31.
269
270 Wed Sep 24 14:04:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
271
272 * v850.igen: Make divh insn with RRRRR==0 breakpoint.
273
274 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
275
276 * configure: Regenerated to track ../common/aclocal.m4 changes.
277
278 Tue Sep 23 10:19:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
279
280 * Makefile.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
281 SIM_HOSTENDIAN, SIM_RESERVED_BITS): Delete, moved to common.
282 (SIM_EXTRA_CFLAGS): Update.
283
284 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
285
286 * configure: Regenerated to track ../common/aclocal.m4 changes.
287 * configure.in: Really specify NONSTRICT_ALIGNMENT as the default.
288
289 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
290
291 * configure.in: Specify NONSTRICT_ALIGNMENT as the default.
292 * configure: Regenerated to track ../common/aclocal.m4 changes.
293
294 Fri Sep 19 10:37:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
295
296 * v850.igen (disp16): Use EXTEND16 to sign extend disp.
297 (disp22): Only shift left by 1, not 2.
298 ("jmp"): Ensure PC is 2 byte aligned.
299
300 * simops.c, v850.igen: Move "Bcond", "jr", "jarl" code to
301 v850.igen. Fix tracing.
302
303 * simops.c (OP_300, OP_400, OP_500): Move "sdl.b", "sld.h",
304 "sld.w" insns to v850.igen. Fix tracing.
305 (OP_70): Ditto for "sld.hu".
306
307 * v850.igen: Clarify tracing of "sld.b", "sld.h" et.al.
308
309 * simops.c (condition_met): Make global.
310
311 * sim-main.h (TRACE_ALU_INPUT3, TRACE_BRANCH0, TRACE_LD,
312 TRACE_ST): Define.
313 (TRACE_LD_NAME): Define.
314
315 * simops.c: Move "cmov", "cmov imm" to v850.igen, fix.
316
317 Wed Sep 17 16:21:08 1997 Andrew Cagney <cagney@b1.cygnus.com>
318
319 * simops.c: Move "mov", "reti", to v850.igen, fix tracing.
320
321 * interp.c (hash): Delete.
322
323 * v850.igen (nop): Really do nothing.
324
325 * interp.c (do_interrupt): Mask interrupts after PSW is saved, not
326 before.
327 * v850.igen (reti): Return to current PC not previous.
328
329 Wed Sep 17 14:02:10 1997 Andrew Cagney <cagney@b1.cygnus.com>
330
331 * simops.c: Move "ctret", "bsw", "hsw" to v850.igen, fix tracing.
332 (trace_module): Global, save component/module name across insn.
333
334 * simops.c: Move "bsh" to v850.igen, fix.
335
336 * v850.igen (callt): Load correct number of bytes. Fix tracing.
337 (stsr, ldsr): Correct src, dest fields. Fix tracing.
338 (ctret): Force alignment. Fix tracing.
339
340 Tue Sep 16 22:14:01 1997 Andrew Cagney <cagney@b1.cygnus.com>
341
342 * simops.c (trace_output): Add result argument.
343 (trace_result): New function. Simpler version of trace_output,
344 assumes trace needed.
345 (trace_output): Call trace_result.
346 (trace_output): For IMM_REG_REG, trace correct register.
347 (trace_input): Add case for 16bit immediates.
348 (OP_600, OP_640, OP_680, OP_6C0, OP_6A0): Use.
349
350 * sim-main.h (TRACE_ALU_INPUT, TRACE_ALU_RESULT): Define.
351 (trace_values, trace_name, trace_pc, trace_num_values): Make
352 global.
353 (GR, SR): Define.
354
355 v850.insn (movea, stsr): Use.
356 (sxb, sxh, zxb, zxh): Ditto.
357
358 Tue Sep 16 21:14:01 1997 Andrew Cagney <cagney@b1.cygnus.com>
359
360 * simops.c: Move "movea" from here.
361 * v850.igen: To here.
362
363 * v850.igen (simm16): Define, sign extend imm16.
364 (uimm16): Define, no sign extension.
365 (addi, andi, movea, movhi, mulhi, ori, satsubi, xori): Use.
366
367 * simops.c: Move "sxh", "switch", "sxb", "callt", "dispose",
368 "mov32" from here.
369 * v850.igen: To here.
370 (switch): Fix off by two error in NIA calc.
371
372 Tue Sep 16 15:14:01 1997 Andrew Cagney <cagney@b1.cygnus.com>
373
374 * simops.c (trace_pc, trace_name, trace_values, trace_num_values):
375 New static globals.
376 (trace_input): Just save pc, name and values for trace_output.
377 (trace_output): Write trace values to a buffer. Use
378 trace_one_insn to print trace info and buffer.
379 (SIZE_OPERANDS, SIZE_LOCATION): Delete.
380
381 Tue Sep 16 09:02:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
382
383 * sim-main.h (struct _sim_cpu): Add psw_mask so that reserved bits
384 can be masked out.
385
386 * simops.c (OP_2007E0, OP_4007E0): Move "ldsr", "stsr"
387 instructions from here.
388 * v850.igen (ldsr, stsr): To here. Mask out reserved bits when
389 setting PSW.
390
391 * interp.c (sim_open): Set psw_mask if machine known.
392
393 Tue Sep 16 10:20:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
394
395 * v850-dc: Add rule to diferentiate between breakpoint and divh.
396 * v850.igen (break): New instruction, breakpoint simulator.
397 * v850.igen (breakpoint): Enable. Change to a 32bit instruction.
398
399 Mon Sep 15 18:44:05 1997 Jim Wilson <wilson@cygnus.com>
400
401 * simops.c (Multiply64): Don't store into register zero.
402
403 Tue Sep 16 09:02:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
404
405 * Makefile.in (semantics.o): Add dependency.
406
407 * sim-main.h (SAVE_1, SAVE_2): Perform backward compatible save,
408 do not adjust CIA/NIA.
409
410 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
411
412 * simops.c (OP_300, OP_400, OP_70): Make behavour depend on PSW[US].
413
414 * simops.c: Move "divun", "sld.bu", "divhn", "divhun", "divn",
415 "divun", "pushml" code from here to v850.igen.
416 (divun): Make global.
417 (type3_regs): Make global
418
419 * v850.igen: Move simops.c code to here.
420
421 * interp.c (sim_create_inferior): For v850eq set US bit by
422 default.
423
424 * interp.c (sim_open): Don't set arch, now set by
425 sim_analyze_program.
426
427 * configure: Regenerated to track ../common/aclocal.m4 changes.
428
429 Mon Sep 15 14:39:34 1997 Andrew Cagney <cagney@b1.cygnus.com>
430
431 * simops.c (op_types): Move from here.
432 sim-main.h: To here.
433
434 * sim-main.h (trace_input, trace_output), simops.c: Make global.
435
436 * simops.c (OP_60): Move "jmp" code from here.
437 * v850.igen (jmp): To here.
438
439 * simops.c (OP_60): Move "sld.bu" code from here.
440 * v850.igen (sld.bu): To here.
441
442 Fri Sep 12 15:11:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
443
444 * v850.igen (prepare, ...): Add to v850eq architecture.
445
446 * interp.c (sim_open): Default to v850eq.
447
448 * interp.c (sim_open): Default to v850e.
449 * sim-main.h (signal.h): Include.
450
451 * v850.igen (illegal): Report/halt illegal instructions.
452
453 * Makefile.in (SIM_EXTRA_CFLAGS): Add SIM_RESERVED_BITS.
454
455 * configure.in: Add reserved bits option.
456 * configure: Regenerate.
457
458 Thu Sep 11 08:40:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
459
460 * interp.c (sim_open): Use sim_do_commandf instead of asprintf.
461
462 * sim-main.h (INSN_NAME):
463
464 * Makefile.in (INCLUDE): Add SIM_EXTRA_DEPS.
465 (SIM_EXTRA_DEPS): Add itable.h
466 (tmp-gencode): Does not depend on simops.h
467
468 * sim-main.h (itable.h): Include.
469 (MAX_INSNS, INSN_NAME): Define.
470
471 * interp.c: Compute inttype from the interrupt_names index that
472 was passed in.
473
474 Wed Sep 10 10:25:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
475
476 * simops.c (trace_input): Use trace_printf instead of
477 sim_io_printf.
478 (trace_output): Ditto.
479 (trace_input): Only trace when TRACE_ALU_P. Delete code
480 disasembling instruction.
481 (trace_output): Only trace when TRACE_ALU_P.
482
483 Tue Sep 9 01:29:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
484
485 * simops.c (trace_input, trace_output): Use sim_io_printf.
486 (OP_620): Pass correct argument to trace.
487 (OP_E607E0): Ditto.
488 (trace_input): Obtain prog_bfd, text_start et.al from simulator
489 struct.
490
491 Mon Sep 8 21:03:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
492
493 * v850.igen: New file.
494 * v850-dc: New file.
495
496 Mon Sep 8 18:33:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
497
498
499 * sim-main.h (SEXT16): Delete, use EXTEND16.
500 (SEXT8): Delete, use EXTEND8.
501 (SEXT32): Delete, used?
502 (SEXT40, SEXT44, SEXT64): Use UNSIGNED64 for constants, not ...LL.
503 (WITH_TARGET_WORD_MSB): Define as 31. v850 little bit endian.
504
505 * simops.c: Use EXTEND15 from sim-bits instead of SEXT16.
506
507 * sim-main.h (DEBUG_TRACE, DEBUG_VALUES, v850_debug): Delete,
508 replace with TRACE_INSN_P and TRACE_ALU_P.
509
510 * simops.c (trace_input, trace_output): Update.
511
512 * interp.c (sim_engine_run): Delete.
513 (lookup_hash): Delete.
514 (sim_open): Do not fill hash table.
515 (sim_trace): Delete.
516
517 Fri Sep 5 17:04:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
518
519 * simops.c (OP_FFFF): Use sim_engine_halt.
520 (OP_12007E0): Ditto.
521 (OP_10007E0): Ditto.
522
523 * sim-main.h (struct sim_cpu): Delete member exception. Using
524 sim-engine et.al.
525
526 * interp.c (sim_info): Do not do anything in sim-info.
527 (sim_stop): Delete, replace with sim-stop.
528 (sim_stop_reason): Delete, replace with sim-reason.
529
530 * sim-main.h (WITH_WATCHPOINTS): Define.
531 (WITH_MODULO_MEMORY): Define
532
533 * Makefile.in (SIM_OBJS): Add sim-resume, sim-watch, sim-stop,
534 sim-reason.
535
536 * interp.c (enum interrupt_cond_type): Delete.
537 (struct interrupt_generator): Delete.
538 (enum interrupt_type): Drop int_none.
539 (sim_open): Initialize WATCHPOINT module.
540 (sim_resume, sim_run): Rename sim_resume to sim_run.
541 (sim_engine_run): Replace interrupt code with call to sim-events.
542 (sim_set_interrupt): Delete.
543 (sim_parse_number): Delete.
544
545 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
546
547 * configure: Regenerated to track ../common/aclocal.m4 changes.
548
549 Thu Sep 4 18:11:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
550
551 * simops.c (fetch_argv): New function, fetch a arg vector from
552 simulator memory.
553
554 * configure.in: Check for fork, execve, execv.
555 * configure: Regenerate.
556
557 * interp.c (sim_store_register, sim_fetch_register): Use H2T_4 and
558 T2H_4 for byte swapping.
559
560 * sim-main.h, interp.c (get_word, get_half, get_byte, put_word,
561 put_half, put_byte): Delete.
562
563 * Makefile.in (SIM_OBJS): Add sim-memopt.o module.
564
565 * sim-main.h (load_mem, store_mem): Redefine as macros.
566 (IMEM, IMEM_IMMED): New macros - fetch instructions.
567
568 * simops.c (OP_10007E0): For SYS_read, SYS_write, SYS_open
569 transfer data via a buffer.
570 (fetch_str): New function, fetch string from memory.
571
572 * Makefile.in (SIM_OBJS): Add sim-hrw.o module.
573
574 * interp.c (sim_open): Establish memory maps using sim-memopt.c
575 via sim_do_command.
576 (sim_do_command): Print error if memory-map command is used. Call
577 sim_args_command.
578 (map): Delete, replaced by sim-core.
579 (sim_memory_init): Delete, replaced by sim-core.
580 (sim_set_memory_map): Delete, replaced by sim-memopt.
581 (load_mem): Delete, replaced by sim-core.
582 (store_mem): Delete, replaced by sim-core.
583 (sim_write): Delete, replaced by sim-hrw.
584 (sim_read): Delete, replaced by sim-hrw.
585
586 * sim-main.h (struct sim_state): Remove memory members, using
587 sim-core.c
588
589 Wed Sep 3 10:18:55 1997 Andrew Cagney <cagney@b1.cygnus.com>
590
591 * sim-main.h: Replace SIM_HAVE_FLATMEM with mem ptr.
592 * interp.c (map): Do not add to a void pointer.
593
594 * Makefile.in (INCLUDE): Add sim-main.h
595
596 * configure.in: Check for time.h
597 * configure: Re-generate.
598
599 * interp.c (struct interrupt_generator): Make time unsigned long,
600 address SIM_ADDR.
601 (sim_resume): Make oldpc SIM_ADDR.
602 (struct hash_entry): Make mask/opcode unsigned.
603
604 * v850_sim.h (struct simops ): Make opcode and mask unsigned.
605
606 * simops.c (utime.h): Include if available.
607 (OP_10007E0): Check for UTIME function.
608 (divun): Put parentheses around shift argument.
609 (OP_640): Put parentheses around shift argument, was wrong.
610 (OP_107F0): Return something.
611
612 * interp.c (sim_parse_number): Use strtoul not strtol.
613 (sim_resume): Use sim_elapsed_time_get to keep track of the time.
614
615 * configure.in (SIM_AC_OPTION_WARNINGS): Add.
616 (SIM_AC_OPTION_ENDIAN): Set to hardwired big.
617 (SIM_AC_OPTION_HOST_ENDIAN): Add.
618 (AC_CHECK_FUNCS): Add utime.
619 (AC_CHECK_HEADERS): Add stdlib.h, string.h, strings.h, utime.h
620 configure: Regenerate.
621
622
623 * Makefile.in (SIM_RUN_OBJS): Use nrun.o.
624 (SIM_OBJS): Add sim-io.o, sim-hload.o, sim-utils.o, sim-options.o,
625 sim-config.o, sim-module.o, sim-events.o, sim-core.o,
626 sim-endian.o, sim-engine.o, sim-trace.o, sim-profile.o
627 (SIM_ENDIAN, SIM_WARNGINS): Define.
628
629 * simops.c (OP_10007E0): Use sim_io_* for transfers.
630
631 * interp.c (sim_resume): Pass sd around.
632
633 * simops.c (sim-main.h): Include.
634
635 * gencode.c (write_template): Generate #include sim-main.h.
636 (write_opcodes): Ditto.
637
638 * interp.c (prog_bfd, prog_bfd_was_opened_p): Delete.
639 (v850_callback): Ditto.
640 (sim_kind, myname): Ditto.
641 (lookup_hash): Pass SD. Use sim_io_error.
642 (sim_set_memory_map): Pass in SD, use.
643 (init_system): Pass in SD, use.
644 (sim_open): Update.
645 (sim_set_profile): Delete.
646 (sim_set_profile_size): Delete.
647 (do_interrupt): Pass in SD, use.
648 (sim_info): Use sim_io_printf.
649 (sim_create_inferior): Reset registers. Set PC from prog_bfd
650 argument.
651 (sim_load): Delete, use common/sim-hload.c
652 (sim_size): Rename to sim_memory_init.
653 (sim_write): Remove call to init_system.
654 (init_system): Delete.
655 (sim_set_callbacks): Delete.
656 (sim_set_interrupt): Pass in SD, use.
657 (start_time): Delete.
658
659 * v850_sim.h: Remove everything except `struct simops' from here.
660 * sim-main.h: Move most to here.
661 * gencode.c: Move #includes to here.
662
663 * sim-main.h(struct _sim_cpu): Rename struct _state.
664 (#define PC, et.al.): Update
665 (v850_callback): Delete. Replaced with SIM_DESC arg.
666 (int8, uint8, int16, uint16, int32, uint32): Define types using
667 unsigned8 et.al from common/sim-types.h.
668 * sim-main.h (State): Define as STATE_CPU.
669
670 Mon Sep 1 12:07:55 1997 Andrew Cagney <cagney@b1.cygnus.com>
671
672 * configure.in: Check for time, chmod.
673 * configure: Regenerate.
674 * simops.c (SYS_time, SYS_chmod): Use HAVE_TIME, HAVE_CHMOD.
675
676 * simops.c (../../libgloss/v850/sys/syscall.h): Include instead of
677 sys/syscall.h.
678 (OP_10007E0): Check the existance each SYS_* macro independantly.
679
680 * v850_sim.h (SIGQUIT, SIGTRAP): Only define if missing.
681
682 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
683
684 * configure: Regenerated to track ../common/aclocal.m4 changes.
685 * config.in: Ditto.
686
687 Tue Aug 26 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
688
689 * interp.c (sim_kill): Delete.
690 (sim_create_inferior): Add ABFD argument.
691 (sim_load): Move setting of PC from here.
692 (sim_create_inferior): To here.
693
694 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
695
696 * configure: Regenerated to track ../common/aclocal.m4 changes.
697 * config.in: Ditto.
698
699 Mon Aug 25 11:31:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
700
701 * interp.c (sim_open): Add ABFD argument.
702
703 Fri Aug 22 10:39:28 1997 Nick Clifton <nickc@cygnus.com>
704
705 * simops.c (bsh): Only set CY flag if either of the bottom
706 bytes is zero.
707
708 * simops.c (prepare, dispose): Lower numbered
709 registers go to higher numbered address.
710
711 * simops.c (unsigned divide instructions): S bit set if result has
712 top bit set.
713
714 * simops.c (pushml, pushmh, popml, popmh): Lower numbered
715 registers go to higher numbered address.
716
717 Wed Aug 20 13:56:35 1997 Nick Clifton <nickc@cygnus.com>
718
719 * simops.c (OP_107E0, OP_107F0, OP_307E0, OP_307F0): Use correct
720 interpretation of SR bit in list18 structure.
721 (divn, divun): New functions to perform N step divide functions.
722
723 Mon Aug 18 10:59:02 1997 Nick Clifton <nickc@cygnus.com>
724
725 * simops.c (OP_300, OP_400, OP_60, OP_70): Support variant opcodes
726 with US bit set in the PSW.
727
728 Wed Aug 13 19:06:55 1997 Nick Clifton <nickc@cygnus.com>
729
730 * interp.c (sim_resume): Opcode functions return amount to be
731 added to PC and all opcodes take a standard format in the OP[]
732 array.
733
734 (do_format_*): Functions removed.
735
736 * v850_sim.h (SP, EP): New register mnemonics.
737
738 * gencode.c (write_header): Functions prototypes return an
739 integer.
740
741 * simops.c: Opcode functions return amount to be added to PC.
742
743 * v850_sim.h (CTPC, CTPSW, CTBP): New register mnemonics.
744
745 * simops.c: Add support for v850e instructions.
746
747 * simops.c: Add support for v850eq instructions.
748
749 Tue May 20 10:24:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
750
751 * interp.c (sim_open): Add callback argument.
752 (sim_set_callbacks): Delete SIM_DESC argument.
753
754 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
755
756 * configure: Regenerated to track ../common/aclocal.m4 changes.
757
758 Wed Apr 23 17:20:16 1997 Doug Evans <dje@canuck.cygnus.com>
759
760 * interp.c (prog_bfd_was_opened_p): New static local.
761 (prog_bfd): New global variable.
762 (sim_open): Undo patch to add -E support.
763 (sim_close): Close prog_bfd if sim_load opened it.
764 (sim_load): Record bfd of loaded file in prog_bfd.
765 * simops.c (prog_bfd): Renamed from exec_bfd.
766
767 Fri Apr 18 14:17:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
768
769 * interp.c (sim_stop): Stub function.
770
771 Thu Apr 17 03:53:18 1997 Doug Evans <dje@canuck.cygnus.com>
772
773 * Makefile.in (SIM_OBJS): Add sim-load.o.
774 * interp.c (sim_kind, myname): New static locals.
775 (sim_open): Set sim_kind, myname. Ignore -E arg.
776 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
777 load file into simulator. Set start address from bfd.
778 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
779
780 Wed Apr 16 19:53:55 1997 Andrew Cagney <cagney@b1.cygnus.com>
781
782 * simops.c (OP_10007E0): Only provide system calls SYS_execv,
783 SYS_wait, SYS_wait, SYS_utime, SYS_time if defined by the host.
784
785 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
786
787 * configure: Regenerated to track ../common/aclocal.m4 changes.
788 * config.in: Ditto.
789
790 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
791
792 * interp.c (sim_open): New arg `kind'.
793
794 * configure: Regenerated to track ../common/aclocal.m4 changes.
795
796 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
797
798 * configure: Regenerated to track ../common/aclocal.m4 changes.
799
800 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
801
802 * configure: Regenerated to track ../common/aclocal.m4 changes.
803
804 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
805
806 * configure: Re-generate.
807
808 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
809
810 * configure: Regenerate to track ../common/aclocal.m4 changes.
811
812 Thu Mar 13 13:00:54 1997 Doug Evans <dje@canuck.cygnus.com>
813
814 * interp.c (sim_open): New SIM_DESC result. Argument is now
815 in argv form.
816 (other sim_*): New SIM_DESC argument.
817
818 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
819
820 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
821 COMMON_{PRE,POST}_CONFIG_FRAG instead.
822 * configure.in: sinclude ../common/aclocal.m4.
823 * configure: Regenerated.
824
825 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
826
827 * configure configure.in Makefile.in: Update to new configure
828 scheme which is more compatible with WinGDB builds.
829 * configure.in: Improve comment on how to run autoconf.
830 * configure: Re-run autoconf to get new ../common/aclocal.m4.
831 * Makefile.in: Use autoconf substitution to install common
832 makefile fragment.
833
834 Mon Jan 20 16:05:34 1997 Michael Meissner <meissner@tiktok.cygnus.com>
835
836 * simops.c (OP_{E0,2E0,6E0}): The multiply operations sign extend,
837 not zero extend.
838
839 Tue Jan 14 17:06:03 1997 Stu Grossman (grossman@critters.cygnus.com)
840
841 * simops.c: Put ifdefs around things to make MSVC happy. Get rid
842 of unistd.h. Disable SYS_stat, SYS_chown, SYS_time, SYS_times,
843 SYS_gettimeofday and SYS_utime from MSVC.
844
845 Tue Dec 31 18:11:13 1996 Michael Meissner <meissner@tiktok.cygnus.com>
846
847 * simops.c (OP_10007E0): Know that kill encodes the signal number
848 via: 0xdead0000 | signal and turn it back into a signal.
849
850 Fri Dec 27 14:44:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
851
852 * v850_sim.h (SIG_V850_EXIT): Define as -1.
853
854 * interp.c (sim_open): Cast calloc function.
855 (sim_stop_reason): If signal is SIG_V850_EXIT, inform gdb the
856 program exited with the appropriate exit code.
857 (sim_set_interrupt): Declare buildargv.
858
859 * simops.c (OP_10007E0): Make exit signal normal exit. Make time
860 type correct and work on big endian systems.
861
862 Wed Nov 20 02:18:44 1996 Doug Evans <dje@canuck.cygnus.com>
863
864 * Makefile.in: Delete stuff moved to ../common/Make-common.in.
865 (SIM_OBJS,SIM_EXTRA_CFLAGS,SIM_EXTRA_CLEAN): Define.
866 * configure.in: Simplify using macros in ../common/aclocal.m4.
867 Call AC_CHECK_HEADERS(unistd.h).
868 * configure: Regenerated.
869 * config.in: New file.
870 * simops.c: #include "config.h". #include <unistd.h> if present.
871
872 Sun Nov 3 23:02:54 1996 Stan Shebs <shebs@andros.cygnus.com>
873
874 * v850_sim.h (State): New slots dummy_mem, pending_nmi.
875 (EIPC, etc): New macros for system registers.
876 * simops.c, interp.c: Use everywhere.
877
878 * interp.c: Add support for interrupts issued by interrupt
879 generators, either PC- or time-based. Controlled by simulator
880 command "sim interrupt".
881
882 * interp.c: Add support for variable-size allocation of memory,
883 via simulator command "sim memory-map".
884 (map): Issue SIGSEGV for references to invalid memory regions.
885
886 Thu Oct 31 14:44:10 1996 Gavin Koch <gavin@cygnus.com>
887
888 * simops.c: Include <sys/time.h> for struct timeval and
889 struct timezone.
890
891 Wed Oct 30 08:49:10 1996 Jeffrey A Law (law@cygnus.com)
892
893 * simops.c (OP_10007E0): Handle SYS_times and SYS_gettimeofday.
894
895 * simops.c (OP_10007E0): Handle SYS_time.
896
897 Tue Oct 29 14:22:55 1996 Jeffrey A Law (law@cygnus.com)
898
899 * simops.c: Include <sys/stat.h>.
900 (OP_10007E0): Handle SYS_stat.
901
902 Thu Oct 24 12:26:35 1996 Jeffrey A Law (law@cygnus.com)
903
904 * simops.c (OP_10007E0): Don't declare errno.
905
906 * simops.c (OP_500): Mask off low bit in displacement
907 for sld.w.
908 (OP_501): Similarly.
909
910 * simops.c (OP_500): Fix displacement handling for sld.w.
911 (OP_501): Similarly for sst.w.
912
913 * simops.c (trace_input): Remove all references to SEXT7.
914 (OP_300, OP_400, OP_500, OP_380, OP_480, OP_501): Displacement
915 is zero extended for sst/sld instructions.
916 * v850_sim.h (SEX7): Delete. It's no longer needed (and it
917 was incorrect anyway).
918
919 Thu Oct 24 10:33:33 1996 Stu Grossman (grossman@critters.cygnus.com)
920
921 * Makefile.in: Get rid of srcroot. Set all INSTALL macros via
922 autoconf.
923 * gencode.c (write_opcodes): Pad operands field to account for
924 MSVC braindamage.
925 * simops.c: Include errno.h. Exclude SYS_chown, since MSVC
926 doesn't support it. (Why is this here in the first place?!?)
927 * v850_sim.h: Get rid of 64 bit defs. Also, get rid of #elif's.
928 Change number of operands in struct simops from 9 to 6. Define
929 SIGTRAP and SIGQUIT for MSVC.
930
931 Tue Oct 15 16:19:51 1996 Stu Grossman (grossman@critters.cygnus.com)
932
933 * interp.c (MEM_SIZE): It's now bytes, not a power of 2.
934 * (map): Add support for external mem in the 1->2 meg range.
935 Also, abort() when memory access is way out of bounds. (Better to
936 die than to give wrong result. (This will be fixed later.))
937 * (sim_size): MEM_SIZE is now bytes, not shift factor.
938
939 Tue Oct 1 15:53:24 1996 Gavin Koch <gavin@cygnus.com>
940
941 * simops.c (trace_input): Swapped order of operands for output
942 output of OP_IMM_REG. Changed the fetching of the operands for
943 OP_LOAD32, and OP_STORE32 to work like op-function.
944
945 Mon Sep 30 15:46:33 1996 Stu Grossman (grossman@critters.cygnus.com)
946
947 * interp.c: Move includes of remote-sim.h and callback.h to
948 v850-sim.h.
949 * (lookup_hash): Add PC to report of hash failure.
950 * (map load_mem store_mem): New memory subsystem. Models V851
951 memory system.
952 * (sim_write sim_read): Use new memory subsystem.
953 * (sim_resume): Don't load and save PC into EIPC anymore. Needed
954 to make user-defined traps work right.
955 * simops.c (OP_*): Use new memory subsystem.
956 * (OP_14007E0 (reti)): Implement reti.
957 * (OP_14996E0 (trap)): Implement user-defined traps. Move I/O to
958 trap 31. Use new memory subsystem.
959 * v850_sim.h: Prototypes for load_mem, store_mem and map. Use
960 load_mem in RLW macro.
961
962 Fri Sep 27 18:34:09 1996 Stu Grossman (grossman@critters.cygnus.com)
963
964 * gencode.c (write_opcodes): Output hex values for opcode mask
965 and patterns.
966 * interp.c (sim_resume): Save and restore PC from the appropriate
967 register.
968 * (sim_fetch_register sim_store_register): Fix byte-order problem
969 with reading and writing registers.
970 * simops.c (OP_FFFF): Implement pseudo-breakpoint insn.
971
972 Fri Sep 27 17:42:37 1996 Jeffrey A Law (law@cygnus.com)
973
974 * simops.c (trace_input): Fix thinko.
975
976 Wed Sep 18 09:54:12 1996 Michael Meissner <meissner@tiktok.cygnus.com>
977
978 * simops.c (exec_bfd): Rename from sim_bfd.
979 (trace_input): Ditto.
980
981 Thu Sep 12 12:03:05 1996 Michael Meissner <meissner@tiktok.cygnus.com>
982
983 * simops.c (trace_input): Use find_nearest_line to print line
984 number, function name or file name of PC.
985
986 Wed Sep 11 16:44:37 1996 Michael Meissner <meissner@tiktok.cygnus.com>
987
988 * simops.c: Add tracing support. Use SEXTxx macros instead of
989 doing hardwired shifts.
990
991 * configure.in (--enable-sim-cflags): Add switch to add additional
992 flags to simulator buld. If --enable-sim-cflags=trace, turn on
993 tracing.
994 * configure: Regenerate.
995
996 * Makefile.in: Don't require a VPATH capable make if configuring
997 in the same directory. Don't use CFLAGS for configuration flags.
998 Add flags from --enable-sim-cflags. Support canadian cross
999 builds. Rebuild whole simulator if include files change.
1000
1001 * interp.c (v850_debug): New global for debugging.
1002 (lookup_hash,sim_size,sim_set_profile): Use
1003 printf_filtered callback, instead of calling printf directly.
1004 (sim_{open,trace}): Enable tracing if -t and compiled for tracing.
1005
1006 * v850_sim.h: Use limits.h to set the various sized types.
1007 (SEXT{5,7,16,22}): New macros.
1008
1009 Mon Sep 9 20:50:46 1996 Jeffrey A Law (law@cygnus.com)
1010
1011 * interp.c (hash): Make this an inline function
1012 when compiling with GCC. Simplify.
1013 * simpos.c: Explicitly include "sys/syscall.h". Remove
1014 some #if 0'd code. Enable more emulated syscalls.
1015
1016 Wed Sep 4 01:48:55 1996 Jeffrey A Law (law@cygnus.com)
1017
1018 * interp.c: Fix sign bit handling for add and sub instructions.
1019
1020 Tue Sep 3 10:20:30 1996 Jeffrey A Law (law@cygnus.com)
1021
1022 * gencode.c: Fix various indention & style problems.
1023 Remove test code. Remove #if 0 code.
1024 * interp.c: Provide prototypes for all static functions.
1025 Fix minor indention problems.
1026 (sim_open, sim_resume): Remove unused variables.
1027 (sim_read): Return type is "int".
1028 * simops.c: Remove unused variables.
1029 (divh): Make result of divide-by-zero zero.
1030 (setf): Initialize result to keep compiler quiet.
1031 (sar instructions): These just clear the overflow bit.
1032 * v850_sim.h: Provide prototypes for put_byte, put_half
1033 and put_word.
1034
1035 * interp.c: OP should be an array of 32bit operands!
1036 (v850_callback): Declare.
1037 (do_format_5): Fix extraction of OP[0].
1038 (sim_size): Remove debugging printf.
1039 (sim_set_callbacks): Do something useful.
1040 (sim_stop_reason): Gross hacks to get c-torture running.
1041 * simops.c: Simplify code for computing targets of bCC
1042 insns. Invert 's' bit if 'ov' bit is set for some
1043 instructions. Fix 'cy' bit handling for numerous
1044 instructions. Make the simulator stop when a halt
1045 instruction is encountered. Very crude support for
1046 emulated syscalls (trap 0).
1047 * v850_sim.h: Include "callback.h" and declare
1048 v850_callback. Items in the operand array are 32bits.
1049
1050 Sun Sep 1 22:35:35 1996 Jeffrey A Law (law@cygnus.com)
1051
1052 * interp.c (sim_resume): Fix code to check for a format 3
1053 opcode.
1054 * simops.c: bCC insns only argument is a constant, not a
1055 register value (duh...)
1056
1057 Fri Aug 30 10:33:49 1996 Jeffrey A Law (law@cygnus.com)
1058
1059 * simops.c: Fix "not1" and "set1".
1060
1061 * simops.c: Don't forget to initialize temp for
1062 "ld.h" and "ld.w"
1063
1064 * interp.c: Remove various debugging printfs.
1065
1066 * simops.c: Fix satadd, satsub boundary case handling.
1067
1068 * interp.c (hash): Fix.
1069 * interp.c (do_format_8): Get operands correctly and
1070 call the target function.
1071 * simops.c: Rough cut at "clr1", "not1", "set1", and "tst1".
1072
1073 Thu Aug 29 13:53:29 1996 Jeffrey A Law (law@cygnus.com)
1074
1075 * interp.c (do_format_4): Get operands correctly and
1076 call the target function.
1077 * simops.c: Rough cut at "sld.b", "sld.h", "sld.w", "sst.b",
1078 "sst.h", and "sst.w".
1079
1080 * v850_sim.h: The V850 doesn't have split I&D spaces. Change
1081 accordingly. Remove many unused definitions.
1082 * interp.c: The V850 doesn't have split I&D spaces. Change
1083 accordingly.
1084 (get_longlong, get_longword, get_word): Deleted.
1085 (write_longlong, write_longword, write_word): Deleted.
1086 (get_operands): Deleted.
1087 (get_byte, get_half, get_word): New functions.
1088 (put_byte, put_half, put_word): New functions.
1089 * simops.c: Remove unused functions. Rough cut at
1090 "ld.b", "ld.h", "ld.w", "st.b", "st.h", "st.w" insns.
1091
1092 * v850_sim.h (struct _state): Remove "psw" field. Add
1093 "sregs" field.
1094 (PSW): Remove bogus definition.
1095 * simops.c: Change condition code handling to use the psw
1096 register within the sregs array. Handle "ldsr" and "stsr".
1097
1098 * simops.c: Handle "satadd", "satsub", "satsubi", "satsubr".
1099
1100 * interp.c (do_format_5): Get operands correctly and
1101 call the target function.
1102 (sim_resume): Don't do a PC update for format 5 instructions.
1103 * simops.c: Handle "jarl" and "jmp" instructions.
1104
1105 * simops.c: Fix minor typos. Handle "cmp", "setf", "tst"
1106 "di", and "ei" instructions correctly.
1107
1108 * interp.c (do_format_3): Get operands correctly and call
1109 the target function.
1110 * simops.c: Handle bCC instructions.
1111
1112 * simops.c: Add condition code handling to shift insns.
1113 Fix minor typos in condition code handling for other insns.
1114
1115 * Makefile.in: Fix typo.
1116 * simops.c: Add condition code handling to "sub" "subr" and
1117 "divh" instructions.
1118
1119 * interp.c (hash): Update to be more accurate.
1120 (lookup_hash): Call hash rather than computing the hash
1121 code here.
1122 (do_format_1_2): Handle format 1 and format 2 instructions.
1123 Get operands correctly and call the target function.
1124 (do_format_6): Get operands correctly and call the target
1125 function.
1126 (do_formats_9_10): Rough cut so shift ops will work.
1127 (sim_resume): Tweak to deal with format 1 and format 2
1128 handling in a single funtion. Don't update the PC
1129 for format 3 insns. Fix typos.
1130 * simops.c: Slightly reorganize. Add condition code handling
1131 to "add", "addi", "and", "andi", "or", "ori", "xor", "xori"
1132 and "not" instructions.
1133 * v850_sim.h (reg_t): Registers are 32bits.
1134 (_state): The V850 has 32 general registers. Add a 32bit
1135 psw and pc register too. Add accessor macros
1136
1137 * Makefile.in, interp.c, v850_sim.h: Bring over endianness
1138 changes from the d10v simulator.
1139
1140 * simops.c: Add shift support.
1141
1142 * simops.c: Add multiply & divide support. Abort for system
1143 instructions.
1144
1145 * simops.c: Add logicals, mov, movhi, movea, add, addi, sub
1146 and subr. No condition codes yet.
1147
1148 Wed Aug 28 13:53:22 1996 Jeffrey A Law (law@cygnus.com)
1149
1150 * ChangeLog, Makefile.in, configure, configure.in, v850_sim.h,
1151 gencode.c, interp.c, simops.c: Created.
1152