OSDN Git Service

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