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