OSDN Git Service

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