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