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