]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - sim/common/ChangeLog
* config/tc-alpha.c (alpha_align): Check, don't assert, that
[thirdparty/binutils-gdb.git] / sim / common / ChangeLog
CommitLineData
e514a9d6
JM
11999-10-22 Dave Brolley <brolley@cygnus.com>
2
3 * cgen-par.h (insn_address): New field in CGEN_WRITE_QUEUE_ELEMENT.
4 (CGEN_WRITE_QUEUE_ELEMENT_IADDR): New macro.
5 * cgen-par.c: Set insn_address for each queued write. Get pc from
6 cpu when executing queued writes.
7
81999-10-19 Dave Brolley <brolley@cygnus.com>
9
10 * cgen-par.h (sim_queue_fn_pc_write): New function.
11 (CGEN_FN_PC_WRITE): New enumerator.
12 (fn_pc_write): New union member.
13 * cgen-par.c (sim_queue_fn_pc_write): New function.
14 (cgen_write_queue_element_execute): Handle CGEN_FN_PC_WRITE.
15
917317f4
JM
161999-10-18 Dave Brolley <brolley@cygnus.com>
17
18 * cgen-par.h (CGEN_MEM_DI_WRITE): New enumerator.
19 (CGEN_MEM_DF_WRITE): New enumerator.
20 (mem_di_write): New union member.
21 (mem_df_write): New union member.
22 * cgen-par.c (sim_queue_mem_di_write): New function.
23 (sim_queue_mem_df_write): New function.
24 (cgen_write_queue_element_execute): Handle CGEN_MEM_DI_WRITE and
25 CGEN_MEM_DF_WRITE.
26 * cgen-accfp.c (divsf): Check for division errors.
27
281999-10-14 Doug Evans <devans@casey.cygnus.com>
29
30 * cgen-engine.h (EXTRACT_INT,EXTRACT_UINT): Delete.
31
2df3850c
JM
321999-10-07 Dave Brolley <brolley@cygnus.com>
33
34 * cgen-par.h (CGEN_FN_HI_WRITE): New enumerator.
35 (fn_hi_write): New union member.
36 (sim_queue_fn_hi_write): New function.
37 * cgen-par.c (sim_queue_fn_hi_write): New function.
38 (cgen_write_queue_element_execute): Handle CGEN_FN_HI_WRITE.
39
2acceee2
JM
401999-09-29 Doug Evans <devans@casey.cygnus.com>
41
42 * cgen-defs.h (sim_engine_invalid_insn): New arg `vpc'.
43 Change type of result to SEM_PC.
44
45Wed Sep 29 14:43:57 1999 Dave Brolley <brolley@cygnus.com>
46
47 * cgen-defs.h (sim_engine_invalid_insn): Now returns PC.
48
6426a772
JM
491999-09-25 Doug Evans <devans@casey.cygnus.com>
50
51 * cgen-ops.h (SUBWORD*): Delete cpu arg.
52 (JOIN*): Delete cpu arg.
53
54Tue Sep 21 17:14:16 1999 Dave Brolley <brolley@cygnus.com>
55
56 * genmloop.sh (@cpu@_scache_lookup): No longer takes last_insn_p
57 parameter.
58 (SET_LAST_INSN_P): Set last_insn_p flag in the scache element.
59
c2c6d25f
JM
60Mon Sep 20 21:44:06 1999 Geoffrey Keating <geoffk@cygnus.com>
61
62 * sim-fpu.c (i2fpu): Keep the guard bits sticky when converting
63 large values.
64
65Wed Sep 15 14:12:37 1999 Andrew Cagney <cagney@b1.cygnus.com>
66
67 * hw-tree.c, hw-properties.c, hw-instances.c: Include "sim-io.h".
68
69Tue Sep 14 14:15:47 1999 Dave Brolley <brolley@cygnus.com>
70
71 * cgen-par.h (CGEN_BI_WRITE): New enumerator.
72 (bi_write): New union element.
73 (sim_queue_bi_write): New function.
74 * cgen-par.c (sim_queue_bi_write): New function.
75 (cgen_write_queue_element_execute): Handle CGEN_BI_WRITE.
76
d4f3574e
SS
77Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
78
79 * configure: Regenerated to track ../common/aclocal.m4 changes.
80
81 * aclocal.m4 (WERROR_CFLAGS, WARN_CFLAGS): Merge from
82 ../gdb/configure.in.
83 * Make-common.in (WERROR_CFLAGS, WARN_CFLAGS): Define.
84 (SIM_WERROR_CFLAGS, SIM_WARN_CFLAGS): Define.
85 (SIM_WARNINGS): Delete
86 (CONFIG_CFLAGS): Update.
87
88Tue Aug 31 16:01:42 1999 Dave Brolley <brolley@cygnus.com>
89
90 * cgen-par.c: New file.
91 * cgen-par.h: New file.
92 * cgen-sim.h (cgen-par.h): #include it.
93 * cgen-cpu.h (write_queue): New field.
94 (CPU_WRITE_QUEUE): New access macro.
95 * Make-common.in (CGEN_MAIN_CPU_DEPS): Add cgen-par.h.
96 (cgen-par.o): New target.
97
104c1213
JM
981999-08-28 Doug Evans <devans@casey.cygnus.com>
99
100 * cgen-types.h (mode_type,MODE_VOID): Renamed from MODE_VM.
101 * cgen-utils.c (mode_names): Update.
102
53a5351d
JM
1031999-08-20 Doug Evans <devans@casey.cygnus.com>
104
105 * genmloop.sh: New args -parallel-generic-write, -parallel-only.
106 * cgen-engine.h (SEMANTIC_FN): Don't use version with PAREXEC
107 buffer arg if WITH_PARALLEL_GENWRITE.
108 (struct insn_sem): Handle WITH_PARALLEL_GENWRITE.
109 (struct idesc): Ditto.
110
111Wed Aug 18 18:17:28 1999 Doug Evans <devans@canuck.cygnus.com>
112
113 * sim-model.c (model_option_handler): Add \n to error message.
114
96baa820
JM
1151999-08-08 Doug Evans <devans@casey.cygnus.com>
116
117 * cgen-engine.h (SEM_FN_NAME,SEMF_FN_NAME): Delete.
118 (insn_sem): Rewrite.
119 (sem_fn_desc): New struct.
120 (idesc): Rewrite.
121 * genmloop.sh (scache case,@cpu@_scache_lookup): Profile scache hit,
122 misses if ! FAST_P.
123 (scache case): Split into non-parallel/parallel versions.
124 (@cpu@_engine_run_{full,fast}): Call @cpu@_{sem,semf}_init_idesc_table
125 if not use semantic switch version.
126
1271999-08-04 Doug Evans <devans@casey.cygnus.com>
128
129 * cgen-defs.h (SEM_BRANCH_TYPE): New enum.
130 * cgen-engine.h (SEM_BRANCH_UNTAKEN,SEM_BRANCH_UNCACHEABLE): Delete.
131 (SEM_BRANCH_INIT_EXTRACT): Delete.
132 (SEM_BRANCH_INIT): Replace npc_ptr with br_type.
133 (SEM_BRANCH_FINI): Ditto.
134 (SEM_BRANCH_VIA_ADDR): Ditto.
135 (SEM_BRANCH_VIA_CACHE): Ditto. Delete cachvarptr arg.
136 (SEM_BRANCH_ADDR_CACHE): Delete.
137 (SEM_SKIP_COMPILE,SEM_SKIP_INSN): New macros.
138 * cgen-scache.h (cpu_scache): Replace member pbb_pr_npc_ptr with
139 pbb_br_type.
140 * genmloop.sh (eng.hin): Update prototype of ${cpu}_pbb_cti_chain.
141 (@cpu@_pbb_begin): Initialize branch_target.
142 (@cpu@_pbb_cti_chain): Replace arg new_vpc_ptr with br_type.
143 (@cpu@_engine_run_full): Replace local pbb_br_npc_ptr with
144 pbb_br_type.
145 (@cpu@_engine_run_fast): Ditto.
146
adf40b2e
JM
147Fri Jul 16 14:47:53 1999 Dave Brolley <brolley@cygnus.com>
148
149 * cgen-utils.c (RORSI): New function.
150 (ROLSI): New function.
151
1521999-07-14 Doug Evans <devans@casey.cygnus.com>
153
154 * Makefile.in (TAGS): Tweak TAGS regex.
155 * cgen-mem.h (*): Add TAGS markers.
156
43e526b9
JM
157Sun Jul 11 23:47:20 1999 Andrew Cagney <cagney@b1.cygnus.com>
158
159 * sim-resume.c (sim_resume): Ensure that the siggnal [sic] is only
160 passed in when sim_resume is first entered - don't re-pass it
161 after a restart.
162
163Sun Jul 11 23:34:44 1999 Andrew Cagney <cagney@b1.cygnus.com>
164
165 * sim-options.c (standard_option_handler): Add OPTION_LOAD_VMA and
166 OPTION_LOAD_LMA but only when is defined.
167 (standard_options): When SIM_HANDLES_LMA is defined include
168 options --load-lma and --load-vma.
169 (standard_install): Initialize STATE_LOAD_AT_LMA_P.
170
171 * sim-base.h (STATE_LOAD_AT_LMA_P): Define.
172 (struct sim_state_base): Add load_at_lma_p.
173 * sim-hload.c (sim_load): Replace SIM_HANDLES_LMA with
174 STATE_LOAD_AT_LMA_P.
175
176Sun Jul 11 12:03:36 1999 Andrew Cagney <cagney@b1.cygnus.com>
177
178 * nrun.c (main): Re-format loop gnu style.
179
9846de1b
JM
180Wed Jul 7 19:56:03 1999 Andrew Cagney <cagney@b1.cygnus.com>
181
182 * dv-sockser.c (connected_p): Initialize addrlen.
183
1841999-07-06 Dave Brolley <brolley@cygnus.com>
185
186 * cgen-accfp.c (floatsidf): New function.
187 (fixdfsi): New function.
188
1891999-07-06 Doug Evans <devans@casey.cygnus.com>
190
191 * sim-model.c (sim_model_init): Issue error if machine is unsupported.
192
43ff13b4
JM
1931999-07-05 Doug Evans <devans@casey.cygnus.com>
194
195 * Make-common.in (CGEN_MAIN_CPU_DEPS): Add cgen-fpu.h.
196 (cgen-fpu.o,cgen-accfp.o): Add rules for.
197 * cgen-fpu.c: New file.
198 * cgen-fpu.h: New file.
199 * cgen-accfp.c: New file.
200 * cgen-cpu.h (CGEN_CPU): New member fpu.
201 * cgen-mem.h: Redo fp support.
202 * cgen-ops.h: Delete k&r support. Redo fp support.
203 * cgen-sim.h: Include cgen-fpu.h.
204 * cgen-types.h (SF,DF,XF,TF): Moved to cgen-fpu.h.
205
085dd6e6
JM
2061999-06-23 Doug Evans <devans@casey.cygnus.com>
207
208 * cgen-engine.h (TARGET_SEM_BRANCH_FINI): Remove cruft at end of
209 ifndef.
210 * genmloop.sh (@cpu@_scache_lookup): Delete unused local var.
211 (@cpu@_pbb_cti_chain): Minor clean up.
212
cd0fc7c3
SS
2131999-05-08 Felix Lee <flee@cygnus.com>
214
215 * aclocal.m4: Use AC_EXEEXT instead of AM_EXEEXT. Delete defn of
216 AM_CYGWIN32 and AM_EXEEXT.
217 * configure: Regenerate.
218
7a292a7a
SS
219Fri Apr 16 16:43:22 1999 Doug Evans <devans@charmed.cygnus.com>
220
221 * sim-core.c (device_error,device_io_read_buffer,
222 device_io_write_buffer): Delete decls.
223 * sim-core.h: Put them here.
224
225 * sim-core.c (sim_core_read_buffer): Pass sd to device_io_read_buffer.
226 (sim_core_write_buffer): Pass sd to device_io_write_buffer.
227 * sim-n-core.h (sim_core_read_aligned_N): Ditto.
228 (sim_core_write_aligned_N): Ditto.
229
2301999-04-14 Stephane Carrez <stcarrez@worldnet.fr>
231
232 * sim-memopt.c (sim_memory_uninstall): Don't look into
233 free()d memory.
234
2351999-04-14 Doug Evans <devans@casey.cygnus.com>
236
237 * cgen-utils.scm (virtual_insn_entries): Update attribute definition.
238
2391999-04-13 Doug Evans <devans@casey.cygnus.com>
240
241 * sim-core.c (sim_core_read_buffer): Handle NULL cpu when WITH_DEVICES.
242 (sim_core_write_buffer): Ditto.
243
2441999-04-02 Keith Seitz <keiths@cygnus.com>
245
246 * sim-io.c (sim_io_poll_quit): Only call the poll_quit callback
247 after the interval counter has expired.
248 (POLL_QUIT_INTERVAL): Define. Used to tweak the frequency of
249 poll_quit callbacks. May be overridden by Makefile.
250 (poll_quit_counter): New global.
251 * sim-events.c: Remove all mentions of ui_loop_hook. The
252 host callback "poll_quit" will serve the purpose.
253 * run.c: Add definition of ui_loop_hook when NEED_UI_LOOP_HOOK
254 is defined.
255 * nrun.c: Remove declaration of ui_loop_hook.
256
257Wed Mar 31 18:55:41 1999 Doug Evans <devans@canuck.cygnus.com>
258
259 * cgen-run.c (sim_resume): Don't tell main loop to run "forever"
260 if being used by gdb.
261
2621999-03-22 Doug Evans <devans@casey.cygnus.com>
263
264 * cgen-types.h (XF,TF): Tweak.
265 * cgen-ops.h: Redo inline support. Delete DI_FN_SUPPORT,
266 in cgen-types.h.
267 (SUBWORD*,JOIN*): Define.
268 * cgen-trace.c (sim_cgen_disassemble_insn): Update, base_insn_bitsize
269 moved into cpu descriptor.
270 * sim-model.h (MACH): New member `num'.
271
c906108c
SS
2721999-02-09 Doug Evans <devans@casey.cygnus.com>
273
c906108c
SS
274 * cgen-cpu.h (CGEN_DISASSEMBLER): New type.
275 (CGEN_CPU): Member opcode renamed to cpu_desc.
276 New members get_idata,disassembler.
277 * cgen-defs.h (CGEN_INSN_VIRTUAL_P): CGEN_INSN_ATTR renamed to
278 CGEN_INSN_ATTR_VALUE.
279 (CGEN_STATE): Delete member opcode_table.
280 (sim_disassemble_insn): Delete decl.
281 * cgen-engine.h (struct insn_sem): Moved to here from <cpu>-decode.c.
282 (struct idesc): Moved to here from <cpu>-decode.h.
283 * cgen-run.c (prime_cpu): Call prepare_run callback.
284 * cgen-trace.h (SFILE): New type.
285 (sim_disasm_sprintf): Declare.
286 (sim_disasm_read_memory,sim_disasm_perror_memory): Declare.
287 (sim_cgen_disassemble_insn): Declare.
288 * cgen-trace.c: Include errno.h,dis-asm.h. Don't include cpu-opc.h.
289 (insn_fields): Delete.
290 (trace_insn_fini): STATE_OPCODE_TABLE (sd) replaced with
291 CPU_CPU_DESC (cpu).
292 (trace_insn): Call CPU_DISASSEMBLER hook.
293 (sim_disasm_sprintf): New function.
294 (sim_disasm_read_memory): New function.
295 (sim_disasm_perror_memory): New function.
296 (sim_cgen_disassemble_insn): New function.
297 * cgen-utils.c: Don't include cpu-opc.h.
298 (virtual_insn_entries): New static local.
299 (cgen_virtual_insn_table): Renamed from cgen_virtual_opcode_table.
300 (cgen_insn_name): Rewrite.
301 (disasm_sprintf,sim_disassemble_insn): Moved to cgen-trace.c.
302 * cgen.sh (desc): New file generator handler.
303 * genmloop.sh: -parallel changed to -parallel-read/-parallel-write.
304 Define WITH_PARALLEL_READ/WITH_PARALLEL_WRITE appropriately.
305 Don't include cpu-opc.h,cpu-sim.h.
306 * sim-model.c (model_set): Delete SIM_DESC arg.
307 (sim_model_set): Update.
308 * sim-model.h (MACH): New member prepare_run.
309
3101999-01-28 Frank Ch. Eigler <fche@cygnus.com>
311
312 * sim-memopt.c (memory_option_handler): Avoid memset() calls
313 if redundant with allocator functions.
314
315Wed Jan 27 17:19:09 1999 Doug Evans <devans@canuck.cygnus.com>
316
317 * cgen-engine.h (EXTRACT_LSB0_{INT,UINT}): Fix.
318
319 * sim-profile.h: Make like sim-trace.h.
320 (PROFILE_USEFUL_MASK): New macro.
321 * sim-profile.c (profile_options): Make like trace_options, allow
322 optional on|off arg where applicable.
323 (set_profile_option_mask): New function.
324 (sim_profile_set_option): New function.
325 (profile_option_handler): Simplify.
326 Have -p only enable selected things, not everything.
327 Add missing break to OPTION_PROFILE_PC_RANGE.
328 * cgen-scache.c (scache_options): Allow optional on|off arg to
329 --profile-scache.
330 (scache_option_handler): Use sim_profile_set_option.
331
3321999-01-26 Frank Ch. Eigler <fche@cygnus.com>
333
334 * sim-memopt.c (memory_options): Add MEMORY_FILL option.
335 (memory_option_handler): Implement MEMORY_FILL option. Make
336 MEMORY_CLEAR an alias for MEMORY_FILL=0.
337 (parse_ulong_value): New function.
338 (do_memopt_add): Allocate all buffers. Optionally fill them.
339
3401999-01-15 Richard Henderson <rth@cygnus.com>
341
342 * hw-events.c (hw_event_queue_schedule): _vtracef takes a
343 va_list, not an integer.
344 * sim-events.c (sim_events_schedule): Likewise.
345
346 * sim-types.h (UNSIGNED32, UNSIGNED64): Properly cast to
347 the appropriate type.
348
3491999-01-14 Doug Evans <devans@casey.cygnus.com>
350
351 * cgen-defs.h (PCADDR,CIA): Define in terms of IADDR.
352 (sim_disassemble_insn): Update prototype.
353 (sim_engine_invalid_insn): Ditto.
354 * cgen-engine.h (SEMANTIC_FN): Add !WITH_SCACHE version.
355 (SEM_BRANCH_INIT): PCADDR->IADDR.
356 (SEM_NBRANCH_FINI): New macro for !WITH_SCACHE case.
357 * cgen-scache.c (scache_lookup,scache_lookup_or_alloc): PCADDR->IADDR.
358 * cgen-scache.h (*): Ditto.
359 * cgen-trace.c (*): Ditto.
360 * cgen-trace.h (*): Ditto.
361 * cgen-utils.c (*): Ditto.
362 * cgen-types.h (integer modes): Use signedNN/unsignedNN types.
363 (insn_t): Delete.
364 * genmloop.sh (@cpu@_fill_argbuf): Add !WITH_SCACHE support.
365 (simple engine framework): Rewrite.
366 * sim-module.c (modules): Install model module sooner (and in
367 particular before the profile module).
368
3691999-01-12 Doug Evans <devans@casey.cygnus.com>
370
371 * sim-model.h (sim_mach_lookup_bfd_name): Add prototype.
372 * sim-model.c (sim_mach_lookup_bfd_name): New function.
373 (sim_model_init): Call it.
374
375 * cgen-trace.c (trace_insn): Pass pc to trace_prefix for virtual insns.
376
3771999-01-05 Doug Evans <devans@casey.cygnus.com>
378
379 * Make-common.in (CGEN_INCLUDE_DEPS): Add cgen-defs.h, cgen-engine.h.
c906108c
SS
380 * cgen-engine.h (SEM_BRANCH_FINI): New arg pcvar, all uses updated.
381 (SEM_BRANCH_INIT_EXTRACT): New macro.
382 (SEM_BRANCH_INIT): Add taken_p.
383 (TARGET_SEM_BRANCH_FINI): Provide default definition.
384 (SEM_BRANCH_FINI): Use it.
385 (SEM_INSN): Update.
386 * cgen-run.c (sim_resume): Handle tracing of last insn.
387 * cgen-scache.h (WITH_SCACHE): Define as 0 if not defined.
388 * cgen-trace.c (current_abuf): New static global.
389 (trace_insn_init): Initialize it.
390 (trace_insn_fini): Use it.
391 (trace_insn): Set it.
392 * cgen.sh (arch case): Pass -m ${mach} to cgen.
393 * genmloop.sh (@cpu@_emit_before): Only define if WITH_SCACHE_PBB.
394 (@cpu@_emit_after): Ditto.
395 (simple @cpu@_engine_run_full): New local `pc'. Initialize semantic
396 labels if WITH_SEM_SWITCH_FULL.
397 * sim-model.c: Include bfd.h.
398 (sim_model_init): New function.
399 (sim_model_install): Record init fn.
400 * sim-model.h (MACH): New member bfd_name.
401 * sim-module.c (modules): Initialize model before scache.
402
4031998-12-24 Frank Ch. Eigler <fche@cygnus.com>
404
405 * dv-sockser.c (DEFAULT_TIMEOUT): Increase to 1 ms.
406
407 * nrun.c (main): Remain in simulation loop for traps and
408 exceptions when in operating environment mode.
409 (ui_loop_hook): New stub hook for standalone use.
410 * sim-events.c (sim_events_process): Call ui_loop_hook
411 periodically on CYGWIN host.
412
413 * sim-reason.c (sim_stop_reason): Return host signal numbers
414 to gdb on sim_stopped and sim_signalled cases.
415 * sim-engine.c (sim_engine_halt): Call SIM_CPU_EXCEPTION_SUSPEND
416 hook just before longjmp.
417 * sim-resume.c (sim_resume): Call SIM_CPU_EXCEPTION_RESUME
418 hook just before sim_engine_run.
419
420 * sim-n-core.h (sim_core_trace_M): Allay const warning.
421 * sim-trace.h (trace_generic): Ditto.
422 * sim-trace.c (trace_generic): Ditto.
423
4241998-12-14 Doug Evans <devans@casey.cygnus.com>
425
426 * Make-common.in (SIM_MAIN_DEPS): New var.
427 (CGEN_MAIN_CPU_DEPS): New var.
428 * aclocal.m4: Add --enable-cgen-maint option.
429 * cgen-mem.h (GETMEM*): New arg `pc'. Pass to sim_core routine.
430 (SETMEM*): Ditto.
431 (GETIMEM*): Pass pc value to sim_core routine.
432
433Fri Dec 11 16:58:36 1998 Andrew Cagney <cagney@b1.cygnus.com>
434
435 * hw-handles.c (hw_handle_add_ihandle, hw_handle_add_phandle):
436 Compare with ZERO not NULL.
437
438Thu Dec 10 14:14:39 1998 Andrew Cagney <cagney@b1.cygnus.com>
439
440 * hw-properties.c, hw-instances.c, hw-tree.c: Include
441 "sim-assert.h".
442
4431998-12-09 Doug Evans <devans@casey.cygnus.com>
444
445 * sim-arange.c: Include libiberty.h, and stdlib.h if present.
446 * sim-trace.c: Include stdlib.h if present.
447 * dv-sockser.c: Include unistd.h if present.
448 (dv_sockser_init): Add missing arg to call to sim_io_eprintf.
449 * cgen-scache.c (scache_flush): Delete unused locals i,sc.
450
4511998-12-08 James E Wilson <wilson@wilson-pc.cygnus.com>
452
453 * gennltvals.sh: Add i960.
454 * nltvals.def: Rebuild.
455
4561998-12-04 Doug Evans <devans@casey.cygnus.com>
457
458 * cgen-defs.h: New file, old cgen-sim.h.
459 * cgen-sim.h: Simple header that includes others.
460 * sim-arange.c: New file.
461 * sim-arange.h: New file.
462 * sim-basics.h: Include it.
463 * Make-common.in (SIM_NEW_COMMON_OBJS): Add sim-arange.o.
464 (sim-arange.o): Add rule for.
465 * sim-cpu.h (sim_cpu_msg_prefix): Add prototype.
466 (sim_io_eprintf_cpu): Add prototype.
467 * sim-inline.h (HAVE_INLINE): Define if GNUC.
468 (INLINE2): New macro.
469 (EXTERN_INLINE): New macro.
470 * sim-module.c (sim_post_argv_init): Initialize cpu backlink
471 before calling module init fns.
472 * sim-profile.c (OPTION_PROFILE_*): Move into enum.
473 (profile_init): New function.
474 (profile_options): New option --profile-range.
475 (profile_option_handler): Handle --profile-range.
476 (profile_print_insn): Qualify address range specific section titles.
477 (profile_print_addr_ranges): New function.
478 (profile_info): Print address ranges if specified.
479 (profile_install): Set profile_init init fn.
480 * sim-profile.h (PROFILE_DATA): New member `range'.
481 * sim-trace.c (trace_init): New function.
482 (trace_options): New option --trace-range.
483 (trace_option_handler): Handle --trace-range.
484 (trace_install): Set trace_init init fn.
485 * sim-trace.h (TRACE_DATA): New member `range'.
486 * sim-utils.c (sim_cpu_msg_prefix): New function.
487 (sim_io_eprintf_cpu): New function.
488 * cgen-engine.h (PC_IN_TRACE_RANGE_P): New macro.
489 (PC_IN_PROFILE_RANGE_P): New macro.
490 * cgen-trace.c (trace_insn_init): Set current_insn to NULL.
491 (trace_insn_fini): New arg abuf. All callers updated.
492 Exit early if trace_insn not called. Check ARGBUF_PROFILE_P before
493 printing cycle counts.
494 * cgen-trace.h (trace_insn_fini): Update prototype.
495 (TRACE_RESULT_P): New macro.
496 (TRACE_INSN_INIT,TRACE_INSN_FINI): New arg abuf. All callers updated.
497 (TRACE_INSN): Check ARGBUF_TRACE_P.
498 (TRACE_EXTRACT,TRACE_RESULT): New arg abuf. All callers updated.
499 * cgen-types.h (SIM_INLINE): Delete.
500 (SIM_HAVE_MODEL,SIM_HAVE_ADDR_RANGE): Define.
501 * cgen-utils.c: Don't include cgen-engine.h
502 * genmloop.sh (@cpu@_fill_argbuf): New function.
503 (@cpu@_fill_argbuf_tp): New function.
504 (@cpu@_emit_before,@cpu@_emit_after): New functions.
505 (@cpu@_pbb_begin): Prefix cti_sc,insn_count with '_'.
506 (SET_CTI_VPC,SET_INSN_COUNT): Update.
507 (@cpu@_pbb_before): Check ARGBUF_PROFILE_P before calling
508 doing profiling. Update call to TRACE_INSN_INIT,TRACE_INSN_FINI.
509 (@cpu@_pbb_after): Check ARGBUF_PROFILE_P before calling
510 doing profiling. Update call to TRACE_INSN_FINI.
511
512 * sim-memopt.c (sim_memory_uninstall): Result type is `void'.
513
5141998-12-03 Frank Ch. Eigler <fche@cygnus.com>
515
516 * sim-memopt.c (sim_memory_uninstall): Deallocate all memory
517 regions.
518
5191998-12-01 Doug Evans <devans@casey.cygnus.com>
520
521 * sim-inline.c (SIM_INLINE_P): Fix typo.
522
5231998-11-30 Doug Evans <devans@casey.cygnus.com>
524
525 * cgen-utils.c (cgen_virtual_opcode_table): Update.
526
527Tue Nov 24 18:40:03 1998 Andrew Cagney <cagney@b1.cygnus.com>
528
529 * gennltvals.sh: Add v850 and d10v. Sort alphabetically.
530 * nltvals.def: Re-generate.
531
532Mon Nov 23 13:28:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
533
534 * sim-core.c (reverse_n, sim_core_uninstall, sim_core_init,
535 sim_core_map_attach, sim_core_map_detach, next_event_queue,
536 new_sim_core_mapping): Only define when EXTERN_SIM_CORE_P, pacify
537 GCC.
538 * sim-events.c (sim_events_uninstall, sim_events_suspend,
539 sim_events_resume, sim_events_zalloc, insert_sim_event): Ditto.
540
5411998-11-22 Doug Evans <devans@tobor.to.cygnus.com>
542
543 * genmloop.sh (${cpu}_pbb_chain): Watch for Ctrl-C's.
544 (${cpu}_pbb_cti_chain): Ditto.
545
5461998-11-18 Doug Evans <devans@casey.cygnus.com>
547
548 * Make-common.in (cgen-utils.o): Depend on cgen-engine.h.
c906108c
SS
549 * cgen-engine.h (EXTRACT_[ML]SB0_{INT,UINT}): New macros.
550 (EXTRACT_INT,EXTRACT_UINT): New macros.
551 (SEM_SEM_ARG): New macro.
552 (SEM_NEXT_VPC): New arg `pc'.
553 * cgen-sim.h (EXTRACT_SIGNED,EXTRACT_UNSIGNED): Delete.
554 (sim_disassemble_insn): Update prototype.
555 * cgen-trace.c (current_insn,insn_fields): New static locals.
556 (trace_insn): Set them.
b83266a0 557 * cgen-utils.c: #include cgen-engine.h.
c906108c
SS
558 (sim_disassemble_insn): New arg insn_fields.
559 Handle variable length insns.
560 * genmloop.sh: Only emit pbb decls if -pbb.
561 (${cpu}_scache_lookup): New arg `vpc'.
562 (scache support): Fetch pc before entering loop.
563
564 * gennltvals.sh: Add fr30 support.
565 * nltvals.def: Rebuild.
566
567Wed Nov 18 10:22:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
568
569 * sim-types.h: Re-do type system so that GCC's attribute and mode
570 are used to specify types. Handle case of ALPHA.
571
5721998-11-13 Frank Ch. Eigler <fche@elastic.org>
573
574 * aclocal.m4: Add tests for dlopen family.
575 * config.in: Regenerated.
576
577Wed Nov 11 14:02:25 1998 Doug Evans <devans@canuck.cygnus.com>
578
579 * sim-hload.c (sim_load): Pass `prog_name' to sim_load_file, not NULL.
580
581Wed Nov 4 23:51:19 1998 Doug Evans <devans@seba.cygnus.com>
582
583 * genmloop.sh (eng.hin): Rename HAVE_PARALLEL_EXEC to
584 HAVE_PARALLEL_INSNS, define as 0 or 1. Emit decls of fns in mloop.cin.
585 * cgen-engine.h: Typedefs of IADDR,CIA,SEM_ARG,SEM_PC moved ...
586 * cgen-sim.h: ... to here.
587
588Wed Oct 28 12:00:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
589
590 * aclocal.m4 (enable-build-warnings): Replace
591 enable-sim-warnings. Extend =LIST syntax so that prepend and
592 append of options is possible. Drop -Werror, add
593 -Wstrict-prototypes for GDB compatibility.
594 * Make-common.in (SIM_WARNINGS): Update.
595
596Mon Oct 19 13:56:32 1998 Doug Evans <devans@seba.cygnus.com>
597
598 * Make-common.in (CGEN_INCLUDE_DEPS): Define.
599 (sim-core.o): Delete duplicate dependence on $(SIM_EXTRA_DEPS).
600 (sim-cpu.o,sim-endian.o,sim-hw.o): Ditto.
601 (cgen-run.o,cgen-scache.o,cgen-trace.o,cgen-utils.o): Delete
602 explicit cgen header dependencies, require SIM_EXTRA_DEPS to include
603 CGEN_INCLUDE_DEPS.
604 * cgen-cpu.h: New file.
605 * cgen-engine.h: New file.
606 * cgen-scache.h: New file.
607 * cgen-sim.h: Delete portions moved to new files.
608 * genmloop.sh: Generate two files eng.hin,mloop.cin explicitly,
609 rather than sending result to stdout.
610
611Fri Oct 9 14:20:22 1998 Doug Evans <devans@seba.cygnus.com>
612
613 * Make-common.in (sim-reg.o): New rule.
614 (cgen-run.o): New rule.
615 * cgen-ops.h: Delete many BI macros. Change all UBI -> BI.
616 * cgen-run.c (prime_cpu): New function.
617 * cgen-scache.c: Add pseudo-basic-block (pbb) scaching support.
618 (scache_option_handler, case OPTION_PROFILE_SCACHE): Handle explicitly
619 mentioned cpu.
620 (scache_flush_cpu,scache_lookup,scache_lookup_or_alloc): New fns.
621 * cgen-sim.h (CGEN_INSN_VIRTUAL_TYPE): New enum.
622 (CGEN_INSN_VIRTUAL_P): New macro.
623 (SEM_PC): New typedef.
624 (SEMANTIC_FN): Change type of result to SEM_PC.
625 (SEM_SET_FULL_CODE,SEM_SET_FAST_CODE,SEM_SET_CODE): New macros.
626 (IDESC_CTI_P,IDESC_SKIP_P): New macros.
627 (SCACHE_MAP): New typedef.
628 (CPU_SCACHE): Add pbb support.
629 (scace_lookup,scache_lookup_or_alloc,scache_flush_cpu): Declare.
630 (SEM_BRANCH_INIT_EXTRACT,SEM_BRANCH_INIT,SEM_BRANCH_FINI): New macros.
631 (CGEN_CPU): New members running_p,insn_count,{fast,full}_engine_fn,
632 max_slice_insns.
633 (INSN_NAME): Delete.
634 (cgen_insn_name): Declare.
635 (sim_engine_invalid_insn): Renamed from sim_engine_illegal_insn.
636 * cgen-trace.c (trace_buf): Shrink from 1024 to 256 bytes.
637 (first_insn_p): Make static.
638 (trace_insn): Handle virtual insns specially.
639 (cgen_trace_printf): Ensure we haven't overflowed the buffer.
640 * cgen-types.h (UBI): Delete.
641 (MODE_TYPE): New enum.
642 (HOSTINT,HOSTUINT,HOSTPTR): Delete.
643 * cgen-utils.c (mode_names): Delete UBI. Add INT,UINT,PTR.
644 (cgen_virtual_opcode_table): New global.
645 (cgen_insn_name): New function.
646 (sim_disassemble_insn): Ignore virtual insns.
647 * genmloop.sh: Delete top level loop generation. Add pbb support.
648 * sim-cpu.h (CPU_INSN_NAME_FN): New typedef.
649 (sim_cpu_base): New members max_insns,insn_name,model_data.
650 (CPU_PC_GET,CPU_PC_SET): New macros.
651 (sim_pc_get,sim_pc_set): Declare.
652 * sim-model.c (model_set): Call model init fn.
653 * sim-model.h (MODEL_FN): New typedef.
654 (INSN_TIMING): New member model_fn.
655 (MODEL): New members num,init.
656 * sim-profile.c (sim_profile_print_bar): Renamed from print_bar.
657 All callers updated.
658 (profile_insn_init): New fn.
659 (profile_print_insn): Update, INSN_NAME -> CPU_INSN_NAME.
660 Exit early if insn profiling not supported.
661 (profile_print_memory): Update, MAX_MODES -> MODE_TARGET_MAX.
662 (profile_install): Record profile_insn_init as init fn.
663 (profile_uninstall): Free PROFILE_INSN_COUNT if non-null.
664 * sim-profile.h: Update, MAX_MODES -> MODE_TARGET_MAX.
665 (PROFILE_DATA): Delete member exec_time.
666 Change insn_count to pointer to array, rather than the array.
667 (sim_profile_print_bar): Declare.
668
669Wed Oct 7 16:56:42 1998 Doug Evans <devans@seba.cygnus.com>
670
671 * cgen-run.c: New file.
672 * sim-reg.c: New file.
673
674Mon Sep 14 10:58:19 1998 Frank Ch. Eigler <fche@cygnus.com>
675
676 * aclocal.m4: Add checks for -lsocket and -lnsl.
677
678 * dv-sockser.c (dv_sockser_init): Use SO_REUSEADDR to
679 allow local port reuse on listening socket.
680
681Tue Sep 1 15:36:52 1998 Frank Ch. Eigler <fche@cygnus.com>
682
683 * sim-config.h: Remove reference to linux kernel header.
684
685Tue Aug 25 12:45:27 1998 Frank Ch. Eigler <fche@cygnus.com>
686
687 * dv-sockser.c (sockser_addr): Make variable non-static.
688
689Mon Aug 24 11:47:37 1998 Joyce Janczyn <janczyn@cygnus.com>
690
691 * sim-hw.{c,h} (sim_hw_parse): Return struct hw pointer.
692
693Tue Aug 11 18:12:19 1998 Doug Evans <devans@canuck.cygnus.com>
694
695 * sim-events.c (sim_events_elapsed_time): Fix calculation.
696
697Tue Aug 4 20:36:46 1998 Jeff Holcomb <jeffh@cygnus.com>
698
699 * Make-common.in (install-common): Add $(EXEEXT) when installing
700 run.
701
702Mon Aug 3 11:46:01 1998 Doug Evans <devans@seba.cygnus.com>
703
704 * cgen-sim.h (cgen_state): New member opcode_table.
705 * cgen-utils.c (sim_disassemble_insn): Use it.
706
707Fri Jul 24 10:14:18 1998 Doug Evans <devans@canuck.cygnus.com>
708
709 * cgen-mem.h (DECLARE_SETT): Fix return type.
710 * cgen-sim.h (sim_engine_illegal_insn): Declare.
711 * cgen-scache.c: Include stdlib.h.
712 * cgen-trace.c (trace_extract): Use %lx for PCADDR.
713 * sim-model.c (model_option_handler): Remove unused variable `n'.
714
715Tue Jul 21 16:27:43 1998 Doug Evans <devans@seba.cygnus.com>
716
717 * cgen-utils.c: Include bfd.h.
718 (sim_disassemble_insn): Update call to CGEN_EXTRACT_FN.
719
720Wed Jul 8 18:24:10 1998 Jeffrey A Law (law@cygnus.com)
721
722 * sim-bits.h (EXTEND24): Fix typo.
723
724Wed Jul 8 17:41:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
725
726 * sim-events.c (ETRACE_P): New macro.
727 (struct _sim_event): Add member trace.
728 (sim_events_free): Reclaim trace message.
729
730 * sim-events.c, sim-events.h (sim_events_schedule_vtracef,
731 sim_events_schedule_tracef): New functions, include printf trace
732 information in argument list. If tracing, store asprintf'd trace
733 message in sim_event.
734
735 * hw-events.c, hw-events.h (hw_event_queue_schedule_tracef,
736 hw_event_queue_schedule_vtracef): New functions, mimic
737 sim_event_tracef.
738
739Mon Jul 6 15:51:14 1998 Jeffrey A Law (law@cygnus.com)
740
741 * sim-bits.h (EXTEND24): Define.
742
743Thu Jul 2 17:13:25 1998 Doug Evans <devans@seba.cygnus.com>
744
745 * cgen-sim.h (CPU_SCACHE): Make size unsigned.
746 (CPU_SCACHE_HASH_MASK): New macro.
747 (SCACHE_HASH_PC): Rewrite.
748 * genmloop.sh (engine_resume_{full,fast}): Move some of hash
749 computation out of main loop.
750
751Wed Jul 1 16:44:12 1998 Doug Evans <devans@seba.cygnus.com>
752
c906108c
SS
753 * cgen-sim.h (RECORD_IADDR): Delete.
754 * cgen-types.h (HOSTINT,HOSTUINT,HOSTPTR): New types.
755 * genmloop.sh (engine_resume_{full,fast}): Delete icount.
756
757Wed Jun 17 12:25:08 1998 Mark Alexander <marka@cygnus.com>
758
759 * gennltvals.def (mn10200): Add entry.
760 * nltvals.def: Regenerate with MN10200 additions.
761
762Wed Jun 17 13:18:28 1998 Andrew Cagney <cagney@b1.cygnus.com>
763
764 * sim-inline.h (EXTERN_*): Replace with EXTERN_*_P. Correct
765 documentation on how it works.
766
767 * sim-core.h, sim-core.c (sim_core_install, sim_core_attach,
768 sim_core_detach, sim_core_read_buffer, sim_core_write_buffer,
769 sim_core_set_xor, sim_core_xor_read_buffer,
770 sim_core_xor_write_buffer): Update.
771
772 * sim-events.h, sim-events.c (sim_events_install,
773 sim_events_watch_clock, sim_events_schedule_after_signal,
774 sim_events_schedule, sim_events_watch_sim, sim_events_watch_core,
775 sim_events_deschedule): Update.
776
777 * sim-fpu.h, sim-fpu.c (sim_fpu_zero, sim_fpu_one, sim_fpu_two,
778 sim_fpu_max32, sim_fpu_max64): Update.
779
780Sat Jun 13 07:45:38 1998 Doug Evans <devans@fallis.cygnus.com>
781
782 * cgen-trace.c (trace_insn_fini): Redo cycle handling.
783 * sim-profile.h (PROFILE_DATA): Rename cycle handling members.
784 * sim-profile.c (profile_print_model): Update.
785
786Fri Jun 12 18:35:07 1998 Doug Evans <devans@seba.cygnus.com>
787
788 * gennltvals.def (m32r): Use common syscall.h now.
789 (mn10300): Add entry.
790 * nltvals.def: Regenerate.
791
792 * sim-engine.c (sim_engine_get_run_state): New function.
793 * sim-engine.h (sim_engine_get_run_state): Declare it.
794
795Thu Jun 11 00:50:03 1998 Doug Evans <devans@seba.cygnus.com>
796
797 * sim-core.h (SIM_CORE_SIGNAL_FN): New typedef.
798 * sim-core.c (sim_core_signal): Make extern, always define.
799
800Wed Jun 10 16:02:29 1998 Doug Evans <devans@seba.cygnus.com>
801
802 * Make-common.in (CGEN_FLAGS_TO_PASS): New variable.
803 * cgen-ops.h (ANDIF): New macro.
804 (ANDIF[BQHSD]I): Delete.
805
806Thu Jun 4 13:53:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
807
808 * hw-events.c (create_hw_event, delete_hw_event): Delete.
809 (hw_event_queue_schedule, hw_event_queue_deschedule,
810 bounce_hw_event): Fix hw-event memory corruptions found by Joyce
811 Janczyn.
812
813 * hw-alloc.h (HW_NZALLOC): Define.
814
815 * Make-common.in (test-hw-events): Add target for testing the
816 hw-event code.
817
818Mon May 25 21:11:26 1998 Andrew Cagney <cagney@b1.cygnus.com>
819
820 * Make-common.in (SIM_COMMON_HW_OBJS): Add hw-handles.o and
821 hw-instances.o.
822 hw-handles.c, hw-instances.c, hw-handles.h, hw-instances.h: New
823 files.
824 * hw-main.h: Include hw-handles.h, hw-instances.h.
825 * hw-base.h ({create,delete}_hw_{handles,instances}_data): Declare
826 * hw-base.c (hw_create, hw_delete): Call same.
827
828Mon May 25 18:55:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
829
830 * dv-core.c: Include hw-main.h and sim-main.h.
831 * dv-pal.c: Include hw-main.h and sim-io.h.
832 * dv-glue.c: Include hw-main.h.
833
834 * hw-main.h: New file. Move list of includes to here.
835 * hw-base.h: From here.
836 * Make-common.in (hw_base_headers): Rename to hw_main_headers.
837 (hw-*.o, dv-*.o): Update.
838 * hw-tree.c, hw-base.c, hw-properties.c, hw-ports.c, hw-device.c,
839 hw-events.c, hw-alloc.c, sim-hw.c: Include hw-main.h instead of
840 sim-main.h.
841
842 * hw-base.h (do_hw_attach_regs, do_hw_poll_read_method,
843 do_hw_poll_read): Move declarations from here.
844 * hw-main.h: To here.
845
846 * hw-base.h (struct hw_device_descriptor, hw_finish_callback):
847 Move from here.
848 * hw-main.h (struct hw_descriptor, hw_finish_method): To here,
849 rename.
850 * Make-common.in (hw-config.h): Update
851 * hw-base.c, dv-pal.c, dv-glue.c: Update
852
853 * dv-glue.c, hw-device.h, hw-base.h, hw-ports.c: Rename
854 `*_callback' to `*_method.
855
856Mon May 25 18:41:18 1998 Andrew Cagney <cagney@b1.cygnus.com>
857
858 * hw-base.h (set_*): Move set method macros from here.
859 * hw-device.h: To here.
860
861Mon May 25 18:21:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
862
863 * hw-base.h (create_hw_property_data, delete_hw_property_data):
864 Declare.
865
866 * hw-base.c (hw_create, hw_delete): Call
867 * hw-properties.c (create_hw_property_data,
868 delete_hw_property_data): Define.
869
870Mon May 25 17:40:46 1998 Andrew Cagney <cagney@b1.cygnus.com>
871
872 * hw-device.c, hw-properties.c: Include hw-base.h
873
874 * hw-alloc.h, hw-alloc.c: New files. Move alloc code to here.
875 * hw-device.c: From here.
876 * hw-base.h: Include "hw-events.h".
877
878 * hw-base.h (create_hw_alloc_data, delete_hw_alloc_data): Declare.
879 * hw-base.c (hw_create, hw_delete): Call.
880 * hw-alloc.c (create_hw_alloc_data, delete_hw_alloc_data): Define.
881
882 * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-alloc.o.
883 (hw-alloc.o): New target.
884
885Mon May 25 17:14:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
886
887 * hw-events.h, hw-events.c: New files. Move event code to here.
888 * sim-hw.c: From here.
889 * hw-base.h: Include "hw-events.h".
890 * Make-common.in (SIM_NEW_COMMON_OBJS): Add hw-events.o.
891 (hw-events.o): New target.
892
893 * hw-device.h (struct hw): Add struct hw_event_data events_of_hw.
894 * hw-events.h (struct hw_event): Replace typedef hw_event.
895
896 * hw-base.h (create_hw_event_data, delete_hw_event_data): Declare.
897 * hw-base.c (hw_create, hw_delete): Call.
898 * hw-events.c (create_hw_event_data, delete_hw_event_data): Define.
899
900 * dv-pal.c: Update.
901
902Mon May 25 16:55:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
903
904 * hw-base.c (panic_hw_port_event, empty_hw_ports): Move from here.
905 * hw-ports.c: To here.
906
907 * hw-base.h, hw-ports.c (create_hw_port_data,
908 delete_hw_port_data): New functions.
909 * hw-base.c (hw_delete, hw_create): Call same.
910
911 * hw-base.h (set_hw_ports, set_hw_port_event): Move set functions
912 from here.
913 * hw-ports.h: To here.
914
915Mon May 25 16:42:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
916
917 * hw-device.c (hw_ioctl), hw-device.h (hw_ioctl_callback): Drop
918 PROCESSOR and CIA arguments.
919
920Fri May 22 12:16:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
921
922 * aclocal.m4 (SIM_AC_OPTION_HW): Add enable / disable argument.
923 Move common object files from here.
924 * Make-common.in (SIM_COMMON_HW_OBJS): To here.
925
926Thu May 21 17:57:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
927
928 * sim-hw.c: Include ctype.h.
929 (do_hw_poll_read): Do not assume EAGAIN.
930
931Wed May 20 04:37:57 1998 Doug Evans <devans@seba.cygnus.com>
932
933 * cgen-trace.c (first_insn_p): New static local.
934 (trace_insn_init): Set it.
935 (trace_insn_fini): Use TRACE_PREFIX.
936 (trace_insn): Rewrite to use trace_prefix.
937 * sim-trace.c (trace_prefix): Don't print filename arg if NULL.
938 Adjust width accordingly.
939
940 * sim-profile.h (PROFILE_DATA): New member profile_any_p.
941 (PROFILE_ANY_P,PROFILE_INSN_P,PROFILE_MEMORY): New macros.
942 (PROFILE_SCACHE_P,PROFILE_PC_P,PROFILE_CORE_P): New macros.
943 (PROFILE_COUNT_INSN,PROFILE_COUNT_READ,PROFILE_COUNT_WRITE): Simplify.
944 (PROFILE_COUNT_CORE): Simplify.
945 * sim-profile.c (profile_option_handler): Compute profile_any_p.
946
947Tue May 19 23:55:30 1998 Doug Evans <devans@seba.cygnus.com>
948
949 * cgen-ops.h (ADDCFSI): Fix typo.
950
951Sat May 16 12:44:52 1998 Doug Evans <devans@seba.cygnus.com>
952
953 * cgen-sim.h (CGEN_CPU): New members idesc_{read,sem}_init_p.
954 * genmloop.sh: Use them rather than static locals.
955
956 * sim-engine.c (sim_engine_set_run_state): New function.
957 * sim-engine.h (sim_engine_set_run_state): Declare.
958 * genmloop.sh (pending_reason,pending_sigrc): New static locals.
959 (@cpu@_engine_stop): New args reason,sigrc. All callers updated.
960 (engine_resume): Reorganize. Allow synchronous exit from main loop.
961
962Fri May 15 16:06:05 1998 Doug Evans <devans@seba.cygnus.com>
963
964 * cgen-trace.c (trace_insn_init): New arg first_p.
965 All callers updated.
966 (trace_insn_fini): New arg last_p. All callers updated.
967 * cgen-trace.h (trace_insn_init,trace_insn_fini): Update.
968 (TRACE_INSN_INIT,TRACE_INSN_FINI): Update.
969 * genmloop.sh (engine_resume): Update.
970
971Fri May 15 15:59:00 1998 Joyce Janczyn <janczyn@cygnus.com>
972
973 * Make-common.in (install-common): Run ranlib on installed copy of
974 libsim.a.
975
976Fri May 15 15:03:00 1998 Joyce Janczyn <janczyn@cygnus.com>
977
978 * Make-common.in (install-common): Rename and install libsim.a.
979
980Tue May 12 15:23:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
981
982 * sim-io.c (unistd.h): Include.
983
984Wed May 6 16:04:18 1998 Doug Evans <devans@seba.cygnus.com>
985
986 * Make-common (sim_main_headers): Sort.
987 (cgen-*.o): Add cgen-sim.h dependency.
988
989 * cgen-scache.c (scache_init): Only allocate space if scache element
990 size is non-zero.
991 (scache_flush,scache_print_profile): Check if scache in use first.
992
993 * cgen-sim.h (IDESC): Provide forward declaration.
994 (DECODE): Delete.
995 (CGEN_CPU): Always define scache member. New members idesc,opcode.
996 (cgen_cpu_max_extra_bytes): Declare.
997 * cgen-utils.c (cgen_cpu_max_extra_bytes): New function.
998
c906108c
SS
999 * sim-cpu.h: New file. sim_cpu_base moved here.
1000 Move sim_cpu_lookup decl here.
1001 * sim-base.h: #include "sim-cpu.h".
1002 * sim-cpu.c: New file.
1003 * Make-common (sim_main_headers): Add sim-cpu.h.
1004 (sim-cpu.o): Add rule for.
1005
1006 * sim-model.c (set_model): Delete.
1007 (sim_model_set,model_set): New functions.
1008 (sim_model_install): Renamed from model_install.
1009 Don't set default model here.
1010 (model_option_handler): Rewrite --model processing.
1011 (sim_model_lookup,sim_mach_lookup): New functions.
1012 * sim-model.h (MAX_MODELS,MAX_INSNS): Delete.
1013 (insn_timing): Delete.
1014 (INSN_TIMING): New member `num'.
1015 (IMP_PROPERTIES): Always define scache_elm_size member.
1016 (MACH): New member init_cpu.
1017 (sim_machs): Renamed from machs.
1018 (sim_model_install): Renamed from model_install.
1019 (sim_model_set,sim_model_lookup,sim_mach_lookup): Declare.
1020 * sim-module.c (modules): Update.
1021
1022 * sim-profile.c (profile_print_insn): Add cpu arg to INSN_NAME macro.
1023
1024 * sim-io.c: #include <errno.h>.
1025
1026Wed May 6 12:39:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
1027
1028 * dv-pal.c (struct hw_pal_device): Add reader.
1029 (hw_pal_finish): Initialize reader.
1030 (scan_hw_pal): Use reader.
1031
1032 * hw-base.h, sim-hw.c (do_hw_poll_read): New function.
1033 (HW_IO_EOF, HW_IO_NOT_READY): Define.
1034 * dv-pal.c: Use.
1035
1036 * sim-io.h, sim-io.c (sim_io_poll_read): New function. Copy from
1037 ../ppc/main.c sim_io_read_stdin.
1038
1039Fri May 1 12:11:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
1040
1041 * hw-tree.h (hw_tree_print): Paramaterize with print and file
1042 arguments.
1043 * hw-tree.c: Update.
1044
1045 * hw-base.h (hw_port_event_callback): Delete CPU/CIA args.
1046 * hw-device.h (hw_io_read_buffer, hw_io_write_buffer): Delete
1047 CPU/CIA args.
1048 * hw-ports.h (hw_port_event): Ditto.
1049 * hw-ports.c (hw_port_event): Update.
1050 * hw-base.c (panic_hw_io_read_buffer, panic_hw_io_write_buffer):
1051 Update.
1052 * dv-pal.c (hw_pal_io_read_buffer, hw_pal_io_write_buffer):
1053 Update.
1054 (hw_pal_io_write_buffer): Call hw_halt not sim_engine_halt.
1055 (do_counter_event): Update.
1056 * dv-glue.c (hw_glue_io_read_buffer): Update.
1057 (hw_glue_port_event): Update.
1058
1059 * hw-device.h (SIM_DESC): Replace with struct sim_state.
1060 * hw-base.h (hw_create): Ditto.
1061 * hw-base.c (hw_create): Ditto.
1062
1063 * hw-device.c (hw_abort, hw_trace, hw_hw_event_queue_schedule,
1064 hw_event_queue_deschedule, hw_event_queue_time): Delete, moved
1065 from here to.
1066 * sim-hw.c: Here.
1067 * hw-device.h (hw_system_cpu): Declare.
1068 * sim-hw.c (hw_system_cpu): New function.
1069
1070 * sim-core.c (sim_core_map_attach, sim_core_attach): Call
1071 sim_hw_abort not hw_abort.
1072 (sim-hw.h): Include.
1073 (sim_core_read_buffer, sim_core_write_buffer): Call
1074 sim_hw_io_read_buffer and sim_hw_io_write_buffer. Do not pass CPU
1075 argument.
1076 (sim_core_set_xor): Do not pass CPU when aborting.
1077
1078 * sim-n-core.h (sim_core_read_aligned_N,
1079 sim_core_write_aligned_N): Call sim_hw_abort not hw_abort.
1080 (sim_core_read_aligned_N, sim_core_write_aligned_N): Call
1081 sim_cpu_hw_io_read_buffer and sim_cpu_hw_io_write_buffer. Does not
1082 return length.
1083
1084 * sim-hw.h: Declare sim_hw_io_{read,write}_buffer. Declare
1085 sim_hw_print.
1086 * sim-hw.c (sim_hw_io_read_buffer, sim_hw_io_write_buffer,
1087 sim_cpu_hw_io_read_buffer, sim_cpu_hw_io_write_buffer): New
1088 functions.
1089 (sim_hw_print): New function.
1090
1091 * sim-engine.h (sim_engine_vabort): Declare.
1092 * sim-engine.c (sim_engine_vabort): New function.
1093
1094Wed Apr 29 23:58:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
1095
1096 * sim-trace.c (print_data): For floating-point numbers trace raw
1097 hex value.
1098 (trace_result_fp2): New function.
1099 * sim-trace.h (trace_result_fp2): New declaration.
1100 (TRACE_FP_RESULT2): New macro.
1101
1102Tue Apr 28 18:28:58 1998 Geoffrey Noer <noer@cygnus.com>
1103
1104 * common/aclocal.m4: call AM_EXEEXT in SIM_AC_COMMON, define
1105 AM_CYGWIN32 and AM_EXEEXT.
1106 * common/Make-common.in: set EXEEXT, add missing EXEEXTs
1107 to run and install-common rules.
1108 * common/configure: regenerate
1109
1110Sat Apr 25 17:45:01 1998 Andrew Cagney <cagney@b1.cygnus.com>
1111
1112 * sim-types.h (cell_word): New type.
1113 (natural_cell): Delete type.
1114
1115Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
1116
1117 * configure: Regenerated to track ../common/aclocal.m4 changes.
1118 * config.in: Ditto.
1119
1120Sun Apr 26 15:25:07 1998 Tom Tromey <tromey@cygnus.com>
1121
1122 * acconfig.h (NEED_DECLARATION_PRINTF): Removed.
1123
1124Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
1125
1126 * configure: Regenerated to track ../common/aclocal.m4 changes.
1127 * config.in: Ditto.
1128
1129Fri Apr 24 11:38:08 1998 Tom Tromey <tromey@cygnus.com>
1130
1131 * acconfig.h: New file.
1132 * Make-common.in (top_builddir): New macro.
1133 (INTL_LIB): Removed.
1134 (INTLLIBS): New macro.
1135 (INTLDEPS): Likewise.
1136 (LIBDEPS): Use INTLDEPS.
1137 (EXTRA_LIBS): Use INTLLIBS.
1138 * aclocal.m4 (SIM_AC_COMMON): Call CY_GNU_GETTEXT.
1139 (CY_WITH_NLS, CY_GNU_GETTEXT, AM_PATH_PROG_WITH_TEST,
1140 AM_LC_MESSAGES): New macros from GNU gettext.
1141
1142Fri Apr 24 19:57:59 1998 Andrew Cagney <cagney@b1.cygnus.com>
1143
1144 * sim-config.h: Discard leading _ from macros.
1145 * sim-types.h: Ditto.
1146
1147Wed Apr 22 14:14:19 1998 Michael Meissner <meissner@cygnus.com>
1148
1149 * Make-common.in (CSEARCH): Add -I to intl directories.
1150 (INTL_LIB): Point to libintl.a.
1151 (LIBDEPS): Add $(INTL_LIB).
1152 (EXTRA_LIBS): Ditto.
1153
1154Tue Apr 21 12:44:27 1998 Doug Evans <devans@canuck.cygnus.com>
1155
1156 * cgen-types.h (GETHIDI,MAKEDI): Tweak.
1157
1158 * cgen-ops.h (ADDCFSI): Fix.
1159 (SUBCFSI): Tweak.
1160
1161Tue Apr 21 13:18:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
1162
1163 * sim-types.h (signed_address, unsigned_address): Define.
1164
1165Mon Apr 20 21:47:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
1166
1167 * sim-fpu.c (sim_fpu_2d): Don't return an SNaN, convert it into a
1168 QNaN.
1169
1170Thu Apr 16 10:30:14 1998 Andrew Cagney <cagney@b1.cygnus.com>
1171
1172 * sim-fpu.c, sim-fpu.h (sim_fpu_fractionto, sim_fpu_tofraction):
1173 New functions, pack / unpack sim_fpu struct using raw values.
1174 (sim_fpu_is): Differentiate between negative and positive
1175 infinity.
1176
1177Tue Apr 14 18:49:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
1178
1179 * sim-bits.h (EXTEND4): Define.
1180 (EXTEND4, EXTEND15, EXTEND11): Ditto.
1181
1182Tue Apr 14 16:31:35 1998 John Metzler <jmetzler@cygnus.com>
1183
1184 * sim-memopt.c (parse_addr): Sunos 4.5 does not have strtol
1185 declared so we need this cast to prevent long long addresses
1186 from being misconfigures. Results in access to unmapped memory.
1187
1188Tue Apr 14 13:19:14 1998 Doug Evans <devans@canuck.cygnus.com>
1189
1190 * Make-common.in (RUNTESTFLAGS): Define.
1191 (check): Pass RUNTESTFLAGS to recursive make.
1192
1193Tue Apr 14 15:09:19 1998 Andrew Cagney <cagney@b1.cygnus.com>
1194
1195 * sim-info.c (sim_info): Be verbose when either VERBOSE or
1196 STATE_VERBOSE_P.
1197
1198Sat Apr 4 23:24:17 1998 Andrew Cagney <cagney@b1.cygnus.com>
1199
1200 * aclocal.m4 (sim-inline): By default, disable sim-inline when
1201 cross compiling.
1202
1203Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
1204
1205 * aclocal.m4 (sim-cflags): Add -fomit-frame-pointer to defaults.
1206 (sim-inline): Update to match sim-inline.[hc]
1207 * configure: Regenerated to track ../common/aclocal.m4 changes.
1208
1209 * Make-common.in (sim_main_headers): Add sim-inline.h
1210
1211 * sim-bits.h (sim-bits.c): Include when H_REVEALS_MODULE_P.
1212 selected.
1213 * sim-endian.h (sim-endian.c): Ditto.
1214
1215 * sim-events.h (_SIM_EVENTS_H_): Replace with SIM_EVENTS_H.
1216 (sim_events_set_trace): Delete unused prototype.
1217
1218 * sim-core.h (_SIM_CORE_H_): Replace with SIM_CORE_H.
1219 * sim-core.c (_SIM_CORE_C_): Ditto for SIM_CORE_C.
1220
1221 * sim-fpu.h (sim-fpu.c): Include when H_REVEALS_MODULE_P.
1222 (sim_fpu_to232i, sim_fpu_to232u, sim_fpu_i232to, sim_fpu_u232to):
1223 Comment out, not yet implemented in sim-fpu.c.
1224 (sim_fpu_zero, sim_fpu_one, sim_fpu_two, sim_fpu_qnan,
1225 sim_fpu_max32, sim_fpu_max64): Mark as EXTERN_SIM_FPU.
1226
1227 * sim-inline.h: Rewrite description.
1228 (H_REVEALS_MODULE_P, C_REVEALS_MODULE_P): Define.
1229 (SIM_MAIN_INLINE): Add inline option.
1230
1231 * sim-inline.c (semantics.c, idecode.c, engine.c, ...): Do not
1232 include generated files. Handled by generator directly.
1233
1234Sat Apr 4 01:07:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
1235
1236 * sim-trace.c (set_trace_option_mask): Keep TRACE_ANY_P
1237 up-to-date.
1238
1239 * sim-trace.h (TRACE_ANY_P): Define.
1240 (struct _trace_data): Add trace_any_p.
1241
1242Mon Mar 30 17:11:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
1243
1244 * run.c (main): Handle all alternatives of enum sim_stop.
1245 (main): Delete unused `asection *s'.
1246
1247Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
1248
1249 * hw-tree.h, hw-tree.c (hw_tree_vparse): New function
1250
1251 * configure: Regenerated to track ../common/aclocal.m4 changes.
1252
1253 * sim-hw.c: New file.
1254 * sim-hw.h (sim_hw_parse): Declare function.
1255 (hw-tree.h): Do not include.
1256
1257 * sim-base.h (STATE_HW): Define.
1258 (struct sim_state_base): Add member struct *hw.
1259
1260 * sim-module.c (sim-hw.h): Include.
1261 (modules): Add sim_hw_install.
1262
1263 * aclocal.m4 (sim_hw_obj): Add sim-hw.o
1264
1265Fri Mar 27 14:55:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
1266
1267 * sim-base.h (CPU_INDEX): Define.
1268
1269 * sim-utils.c (sim_state_alloc): Initialize.
1270 * sim-module.c (sim_post_argv_init): Ditto.
1271
1272Thu Mar 26 10:07:57 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
1273
1274 * aclocal.m4 (sim_hw_obj): Fix sed expression to generate
1275 properly formatted lists.
1276
1277Thu Mar 26 10:37:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
1278
1279 * dv-pal.c (enum hw_pal_address_mask): From Stu Grossman, was
1280 0x2f needs to be 0x3f.
1281
1282Thu Mar 26 09:10:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
1283
1284 * hw-tree.c (hw_tree_find_property): Return NULL when device is
1285 not found.
1286 (hw_tree_find_*_property): Clean up error message when property is
1287 not found.
1288
1289 * dv-pal.c (hw_pal_io_read_buffer): Check the smp property is
1290 present before looking for it.
1291
1292Wed Mar 25 16:17:38 1998 Ian Carmichael <iancarm@cygnus.com>
1293
1294 * aclocal.m4 (AC_CHECK_HEADERS): Add check for fpu_control.h.
1295 (AC_CHECK_FUNCS): Add check for __setfpucw.
1296 * configure: Regenerated.
1297
1298Wed Mar 25 09:18:34 1998 Andrew Cagney <cagney@b1.cygnus.com>
1299
1300 * dv-pal.c (hw_pal_countdown, hw_pal_countdown_value,
1301 hw_pal_timer, hw_pal_timer_value): Define.
1302 (hw_pal_io_read_buffer, hw_pal_io_write_buffer): Add timer support
1303 (do_counter_event, do_counter_read, do_counter_value,
1304 do_counter_write): new functions.
1305
1306Tue Mar 24 12:24:24 1998 Andrew Cagney <cagney@b1.cygnus.com>
1307
1308 * hw-tree.c (hw_printf): Send tree dump to stderr, same as other
1309 trace output.
1310
1311 * hw-base.c (hw_create): Stop searching for a device when one is
1312 found.
1313
1314Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
1315
1316 * configure: Regenerated to track ../common/aclocal.m4 changes.
1317
1318Mon Mar 23 10:25:08 1998 Andrew Cagney <cagney@b1.cygnus.com>
1319
1320 * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Add second argument,
1321 appends extra devices.
1322 (SIM_AC_OPTION_HARDWARE): Substute sim_hw, a non-duplicate list of
1323 the device names.
1324
1325 * Make-common.in (hw-config.h): New target, create hw-config.h
1326 file.
1327 (SIM_HW): Definition from @sim_hw@.
1328 (hw-base.o): Depend on hw-config.h
1329
1330Tue Mar 24 17:41:35 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
1331
1332 * Make-common.in: Get SHELL from configure.
1333 * (stamp-tvals sim-inline.c): Use $(SHELL) when invoking
1334 move-if-change. Fixes NT native build problem.
1335 * Makefile.in (nltvals.def): Use $(SHELL) when invoking
1336 move-if-change. Fixes NT native build problem.
1337 * configure: Regenerate with autoconf 2.12.1 to fix shell issues for
1338 NT native builds.
1339
1340Sun Mar 22 16:54:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
1341
1342 * hw-device.h, hw-device.c (hw_strdup): New function.
1343
1344 * hw-base.c (hw_create): Use hw_strdup when saving a copy of the
1345 strings name, family and args.
1346 (full_name_of_hw): Use hw_strdup when returning the full path.
1347
1348 * hw-properties.c: Clean up property not found / wrong type error
1349 messages.
1350
1351 * hw-tree.c (hw_tree_parse): Finish a devices initialization
1352 before attaching any ports.
1353
1354 * hw-base.c (hw-config.): Include. Replace hardwired table.
1355
1356 * dv-glue.c: Copy over ../ppc/hw_glue.c. Update to new framework.
1357
1358 * Make-common.in: Add rule for dv-glue.o.
1359
1360Sun Mar 22 16:45:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
1361
1362 * hw-base.c (hw_finish): Move setting of trace level to here.
1363 (hw_create): From here.
1364
1365 * hw-base.h, hw-base.c (do_hw_attach_regs): Copy function from
1366 ../ppc/device_table.c.
1367
1368 * dv-pal.c (hw_pal_finish): Attach PAL device to parent bus.
1369
1370 * hw-tree.c (print_properties): Supress path when printing
1371 properties of root node.
1372
1373Sun Mar 22 16:21:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
1374
1375 * hw-device.h (HW_TRACE): Define.
1376 (hw_trace): Declare.
1377 * hw-device.c (hw_trace): Implement function.
1378
1379 * hw-base.c (hw_create): Set hw trace level from "trace?"
1380 property.
1381
1382 * dv-core.c (dv_core_attach_address_callback): Add trace.
1383
1384 * dv-pal.c: Replace DTRACE with HW_TRACE.
1385
1386Sun Mar 22 15:23:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
1387
1388 * hw-device.h (HW_ZALLOC, HW_MALLOC): New macros.
1389 (hw_alloc_data): Delcare.
1390 (struct hw): Add member alloc_of_hw.
1391
1392 * hw-device.c (hw_zalloc, hw_malloc, hw_free, hw_free_all): New
1393 functions. Assocate memory with a device.
1394 (stdlib.h): Include.
1395
1396 * hw-base.h (set_hw_delete): Define.
1397 (hw_delete_callback): Declare.
1398 (hw_delete): Declare.
1399
1400 * hw-base.c (hw_delete): Implement function.
1401 (struct hw_base_data): Add member to_delete.
1402 (ignore_hw_delete): New function, does nothing.
1403 (hw_create): Set the hw_delete method.
1404 (hw_create): Allocate the base type using HW_ZALLOC before setting
1405 any methods.
1406
1407 * hw-tree.h, hw-tree.c (hw_tree_delete): New function.
1408
1409 * hw-properties.c: Replace zalloc/zfree with hw_zalloc/hw_free.
1410
1411 * hw-ports.c: Replace zalloc/zfree with hw_zalloc/hw_free.
1412 (attach_hw_port_edge): Add struct hw argument
1413
1414 * dv-pal.c (hw_pal_finish): Replace zalloc/zfree with
1415 hw_zalloc/hw_free.
1416
1417Sun Mar 22 15:09:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
1418
1419 * hw-device.h (hw_attach_address_callback,
1420 hw_detach_address_callback): Attach to a single space not a space
1421 mask. Clarify interpretation of SPACE:ADDR parameters.
1422
1423 * hw-base.c (passthrough_hw_attach_address,
1424 passthrough_hw_detach_address): Update.
1425 * dv-core.c (dv_core_attach_address_callback): Ditto.
1426 * dv-pal.c (hw_pal_attach_address): Ditto.
1427
1428Thu Mar 19 00:41:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
1429
1430 * sim-options.h: Document additional CPU arg to OPTION_HANDLER.
1431
1432Wed Mar 18 14:13:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
1433
1434 * Make-common.in (SIM_HW_OBJS, SIM_HW_SRC, SIM_DV_OBJS): Define.
1435 (hw-base_h, hw-device_h, hw-handles_h, hw-instances_h, hw_ports_h,
1436 hw-properties_h, hw-tree_h): Define, point at corresponding
1437 header.
1438 (hw_base_headers): Define list of headers included by hw-base.h
1439 (hw-base.o, hw-device.o, hw-instances.o, hw-handles.o, hw-ports.o,
1440 hw-properties.o, hw-tree.o): Specify dependencies.
1441 (dv-core.o, dv-pal.o): Ditto.
1442
1443 * sim-hw.h: New file.
1444
1445 * hw-device.h, hw-device.c, hw-properties.h, hw-properties.c,
1446 hw-ports.h, hw-ports.c: New files. Copied from ../ppc/device.[ch].
1447
1448 * hw-tree.h, hw-tree.c: New files. Copied from ../ppc/tree.[hc].
1449
1450 * hw-base.h, hw-base.c: new files. Copied from
1451 ../ppc/device_table.[hc].
1452
1453 * dv-core.c, dv-pal.c: New files. Copied from
1454 ../ppc/hw_{core,pal}.c
1455
1456 * sim-basics.h (struct hw): Declare.
1457 (enum port_direction, enum object_disposition): Declare.
1458
1459Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
1460
1461 * aclocal.m4 (SIM_AC_OPTION_HARDWARE): Set sim_hw_obj, sim_dv_obj,
1462 sim_dv_src in Makefile. Take list of devices as parameter to m4
1463 macro..
1464
1465 * configure: Regenerated to track ../common/aclocal.m4 changes.
1466
1467Mon Mar 16 12:37:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
1468
1469 * sim-trace.h, sim-trace.c (trace_prefix): Pass in sim_cia so that
1470 trace_prefix can abort cleanly.
1471
1472Sat Mar 14 18:36:12 1998 Doug Evans <devans@seba.cygnus.com>
1473
1474 * dv-sockser.c, dv-sockser.h: New files.
1475 * Make-common.in (dv-sockser.o): Add rule for.
1476 * aclocal.m4: Check for fcntl.h.
1477 * config.h: Add HAVE_FCNTL_H.
1478
1479 * sim-break.c (remove_breakpoint): Fix thinko.
1480
1481 * sim-hload.c (sim_load): Provide default value of SIM_HANDLES_LMA.
1482 Use SIM_HANDLES_LMA for lma_p arg to sim_load_file.
1483
14841998-03-13 Fred Fish <fnf@cygnus.com>
1485
1486 * sim-base.h (struct sim_state_base): Add prog_syms and
1487 define macro STATE_PROG_SYMS.
1488 * sim-trace.c (trace_prefix): Add variables abfd, symsize,
1489 symbol_count, and asymbols. Call bfd_get_symtab_upper_bound
1490 and bfd_canonicalize_symtab, to get symbol table on first use
1491 and preserve it via STATE_PROG_SYMS for future calls to
1492 bfd_find_nearest_line.
1493
1494Wed Mar 11 14:02:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
1495
1496 * sim-core.h, sim-core.c (sim_core_map_to_str): Delete.
1497
1498 * sim-core.c (sim_core_attach): Handle a generic number of maps -
1499 up to nr_maps, not just access_* maps.
1500
1501 * sim-profile.h (struct PROFILE_DATA): Track nr_maps different
1502 maps.
1503
1504 * sim-profile.c (profile_print_core): Make map unsigned. Iterate
1505 over nr_maps not sim_core_nr_maps.
1506
1507 * sim-events.h, sim-events.c (sim_events_watch_core): Change
1508 core_map argument to unsigned.
1509 (struct _sim_core): Ditto for struct member core_map.
1510
1511 * sim-core.h (nr_sim_core_maps, sim_core_*_map): Delete
1512
1513 * sim-basics.h (access_io, access_*_io): Define.
1514 (map_read, map_write, map_exec, map_io): Define.
1515
1516 * sim-core.c, sim-core.h (sim_core_attach): Replace argument
1517 attach with more generic mapmask.
1518 (sim_core_{read,write}_*): Change map argument to unsigned.
1519
1520 * sim-core.c (sim_core_uninstall, sim_core_attach,
1521 sim_core_detach): Iterate over nr_maps instead of
1522 sim_core_nr_maps.
1523
1524 * sim-break.c (insert_breakpoint): Write breakpoints to exec_map
1525 instead of the write_map.
1526 (remove_breakpoint): Ditto.
1527
1528 * genmloop.sh (engine_resume_full): Replace sim_core_*_map
1529 with read_map, write_map, exec_map resp.
1530
1531 * cgen-mem.h (DECLARE_GETMEM, DECLARE_SETMEM, DECLARE_GETIMEM):
1532 Ditto.
1533
1534 * cgen-utils.c (sim_disassemble_insn): Ditto.
1535
1536 * sim-hrw.c (sim_write, sim_write): Ditto.
1537
1538 * sim-utils.h, sim-utils.c (access_to_str, map_to_str,
1539 transfer_to_str): New functions.
1540
1541Mon Mar 9 12:50:59 1998 Doug Evans <devans@seba.cygnus.com>
1542
1543 * sim-base.h (sim_state_base): New member environment.
1544 (STATE_ENVIRONMENT): New macro.
1545 * sim-config.c (current_environment): Delete.
1546 (sim_config_default): New function.
1547 (sim_config): Set STATE_ENVIRONMENT, not current_environment.
1548 * sim-config.h (current_environment,CURRENT_ENVIRONMENT): Delete.
1549 (sim_config_default): Add prototype.
1550 * sim-module.c (sim_pre_argv_init): Call sim_config_default.
1551 * sim-options.c (standard_option_handler, case OPTION_ENVIRONMENT):
1552 Set STATE_ENVIRONMENT, not current_environment.
1553
1554Mon Mar 9 11:59:03 1998 Jim Wilson <wilson@cygnus.com>
1555
1556 * sim-fpu.c (NR_GUARDS64): Change NR_PAD32 to NR_PAD64.
1557
1558Tue Mar 3 10:53:05 1998 Andrew Cagney <cagney@b1.cygnus.com>
1559
1560 * sim-types.h (SIGNED32, SIGNED64): Pacify GCC.
1561
1562 * sim-alu.h (ALU64_BEGIN): Make alu64_r unsigned.
1563
1564Mon Mar 2 10:20:06 1998 Doug Evans <devans@seba.cygnus.com>
1565
1566 * Make-common.in (TAGS): Make smarter.
1567 * Makefile.in (TAGS): Ditto.
1568
1569Fri Feb 27 19:09:57 1998 Doug Evans <devans@canuck.cygnus.com>
1570
1571 * sim-module.c (*): Fix typos in assertion tests.
1572
1573Sat Feb 28 13:54:10 1998 Andrew Cagney <cagney@b1.cygnus.com>
1574
1575 * sim-module.c (sim_pre_argv_init): String passed to asprintf
1576 can't be constant.
1577
1578 * sim-options.c (sim_parse_args): Ditto.
1579 (sim_args_command): Return OK, instead of nothing, for an empty
1580 command.
1581
1582Fri Feb 27 13:29:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
1583
1584 * sim-profile.c (profile_info): Rename from profile_print. Drop
1585 misc and misc_cpu callback arguments. Use
1586 PROFILE_INFO_CPU_CALLBACK and STATE_PROFILE_INFO_CALLBACK instead.
1587 (profile_install): Install profile_info function.
1588
1589 * sim-profile.h (PROFILE_INFO_CPU_CALLBACK,
1590 STATE_PROFILE_INFO_CALLBACK): Define.
1591 (struct PROFILE_DATA): Add field info_cpu_callback.
1592 (profile_print): Delete function.
1593
1594 * sim-base.h (STATE_MODULES): Define. Replace individual
1595 STATE_*_LIST with single struct module_list.
1596
1597 * sim-module.h (MODULE_INFO_FN, MODULE_INFO_LIST): Declare.
1598 (struct module_list): Declare.
1599
1600 * sim-module.h, sim-module.c (sim_module_add_info_fn,
1601 sim_module_info): New functions.
1602 (sim_module_install): Clean up module data structures.
1603
1604 * sim-info.c (sim_info): New file. New function. Call
1605 sim_module_info.
1606
1607 * Make-common.in (sim-info.o): Define rule.
1608 (SIM_NEW_COMMON_OBJS): Add sim-info.o.
1609
1610
1611Fri Feb 27 18:26:16 1998 Doug Evans <devans@canuck.cygnus.com>
1612
1613 * sim-base.h (sim_cpu_base): New members name, options.
1614 (sim_cpu_lookup): Add prototype.
1615 * sim-module.c (sim_pre_argv_init): Provide default names for cpus.
1616 * sim-options.h (DECLARE_OPTION_HANDLER): New argument `cpu'.
1617 (sim_add_option_table): Update prototype.
1618 * sim-options.c (sim_add_option_table): New argument `cpu'.
1619 (standard_option_handler,standard_install): Update.
1620 (sim_parse_args): Handle cpu specific options.
1621 (print_help): New static function.
1622 (sim_print_help): Call it. Print cpu specific options.
1623 (find_match): New static function.
1624 (sim_args_command): Call it. Handle cpu specific options.
1625 * sim-utils.c (sim_cpu_lookup): New function.
1626 * sim-memopt.c (memory_option_handler): Update.
1627 (sim_memopt_install): Update.
1628 * sim-model.c (model_option_handler): Update.
1629 (model_install): Update.
1630 * sim-profile.c (profile_option_handler): Update.
1631 (profile_install): Update.
1632 * sim-trace.c (trace_option_handler): Update.
1633 (trace_install): Update.
1634 * sim-watch.c (watchpoint_option_handler): Update.
1635 (sim_watchpoint_install): Update.
1636 * cgen-scache.c (scache_option_handler): Update.
1637 (scache_install): Update.
1638
1639Wed Feb 25 11:00:26 1998 Doug Evans <devans@canuck.cygnus.com>
1640
1641 * Make-common.in (check): Run `make check' in testsuite dir.
1642
1643Wed Feb 25 14:40:24 1998 Andrew Cagney <cagney@b1.cygnus.com>
1644
1645 * sim-trace.c (trace_result0): New function.
1646
1647 * sim-trace.h (TRACE_FP_*, TRACE_FPU_*): Rename TRACE_FPU_*
1648 macro's to TRACE_FP_*. TRACE_FPU_* should be defined and used when
1649 tracing sim_fpu variables.
1650 (TRACE_ALU_RESULT0): Define.
1651 (TRACE_FP_RESULT_WORD): Define.
1652 (TRACE_FP_INPUT_WORD1): Define.
1653
1654 * sim-fpu.c, sim-fpu.h (sim_fpu_max32, sim_fpu_max64, sim_fpu_one,
1655 sim_fpu_two): New constants.
1656 (sim_fpu_op1, sim_fpu_op2): New types.
1657 (struct _sim_fpu): Delete member result. Re-order other members.
1658 (sim_fpu_sign, sim_fpu_exp): New functions.
1659 (sim_fpu_max, sim_fpu_min): new functions.
1660 (EXPMAX32, EXPMAX64, NR_PAD32, NR_PAD64, NR_GUARDS32, NR_GUARDS64,
1661 NORMAL_EXPMAX32, NORMAL_EXPMAX64): Define.
1662
1663Tue Feb 24 22:45:39 1998 Doug Evans <devans@seba.cygnus.com>
1664
1665 * sim-profile.c (profile_print): Delete duplicate test of
1666 PROFILE_INSN_IDX.
1667 (profile_print_pc): Exit early if data collection not set up.
1668 (profile_print_core): Simplify by calling sim_core_map_to_str.
1669 * sim-core.h (sim_core_map_to_str): Declare.
1670 * sim-core.c (sim_core_map_to_str): Make non-static.
1671
1672 * genmloop.sh (engine_resume): Update insn_count before exiting.
1673 (engine_resume_full): Keep accurate core profile data.
1674
1675 * cgen-utils.c (sim_disassemble_insn): Don't use
1676 sim_core_read_aligned_N, it messes up profiling results.
1677
1678Mon Feb 23 20:45:57 1998 Mark Alexander <marka@cygnus.com>
1679
1680 * nltvals.def: Regenerate with MN10300 additions.
1681
1682Tue Feb 24 13:18:42 1998 Andrew Cagney <cagney@b1.cygnus.com>
1683
1684 * sim-trace.h (TRACE_ALU_RESULT2): Define.
1685
1686 * sim-trace.h, sim-trace.c (trace_result_word2,
1687 trace_input_word4, trace_result_word4): New function.
1688
1689Mon Feb 23 13:08:35 1998 Doug Evans <devans@canuck.cygnus.com>
1690
1691 * cgen-sim.h (SEM_NEXT_PC): New arg `len'.
1692
1693 * sim-xcat.h: Delete.
1694 * cgen-mem.h: Delete inclusion of sim-xcat.h.
1695 * cgen-sim.h: Ditto.
1696 * sim-alu.h: Replace sim-xcat.h with symcat.h.
1697 * sim-n-bits.h: Ditto.
1698 * sim-n-core.h: Ditto.
1699 * sim-n-endian.h: Ditto.
1700
1701Mon Feb 23 13:19:58 1998 Michael Meissner <meissner@cygnus.com>
1702
1703 * syscall.c (cb_syscall): Handle short reads, and EOF.
1704
1705Tue Feb 24 00:29:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
1706
1707 * sim-trace.c (print_data): case trace_fmt_fp missing break. Use
1708 sim_fpu to safely print fp_word values.
1709 (print_data): Add trace_fmt_bool and trace_fmt_addr.
1710 (trace_result_bool1, trace_result_addr1): New functions.
1711 (trace_input_bool1, trace_input_addr1): New functions.
1712
1713 * sim-trace.h (TRACE_FPU_*): Define.
1714
1715Mon Feb 23 13:24:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
1716
1717 * sim-fpu.h (enum sim_fpu_class): Add sim_fpu_class_denorm.
1718 (sim_fpu_fpto, sim_fpu_tofp): Define.
1719
1720Fri Feb 20 18:08:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
1721
1722 * sim-fpu.c (sim_fpu_cmp): New function.
1723
1724Wed Feb 18 16:29:21 1998 Doug Evans <devans@canuck.cygnus.com>
1725
1726 * cgen-utils.h (sim_disassemble_insn): Use CGEN_INSN_BITSIZE
1727 instead of abuf->length.
1728 * sim-trace.c (trace_options): Have -t only trace a few useful things.
1729 (set_trace_option_mask): Renamed from set_trace_options.
1730 (set_trace_option): New function.
1731 (trace_option_handler): Update calls to set_trace_option{,_mask}.
1732 * sim-trace.h (TRACE_USEFUL_MASK): New macro.
1733
1734Wed Feb 18 12:42:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
1735
1736 * sim-basics.h: Declare struct _sim_fpu.
1737
1738Tue Feb 17 16:27:46 1998 Andrew Cagney <cagney@b1.cygnus.com>
1739
1740 * sim-trace.h (TRACE_ALU_INPUT*, TRACE_ALU_RESULT): Define.
1741 (trace_prefix, trace_input*, trace_result*): Declare.
1742 (trace_one_insn): Change declaration, assume trace_prefix called.
1743 (trace_generic): Like trace_one_insn.
1744 (TRACE_ALU_IDX, TRACE_*_IDX): Change #define's to enum.
1745 (TRACE_alu, TRACE_[a-z]*): Update.
1746
1747 * sim-trace.c (trace_prefix, trace_input*, trace_result*,
1748 trace_insn, save_data, trace_idx_to_str, print_data): New
1749 functions.
1750 (trace_one_insn): Rewrite.
1751 (trace_generic): New function.
1752
1753Tue Feb 17 17:27:30 1998 Doug Evans <devans@seba.cygnus.com>
1754
c906108c
SS
1755 * aclocal.m4 (USE_MAINTAINER_MODE): New variable.
1756
1757 * cgen-sim.h (SEMANTIC_CACHE_FN): Delete.
1758 (SEMANTIC_FN): Rewrite declaration.
1759 (DECODE): Update type of semantic_fast member.
1760 ({EX,SEM}_FN_NAME): Have only one version.
c906108c
SS
1761 * sim-base.h (sim_state_base): Delete conditionals surrounding
1762 member scache_size.
1763
1764Tue Feb 10 18:31:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
1765
1766 * sim-load.c (sim_load_file): Print LMA/VMA according to value
1767 used.
1768
1769Tue Feb 10 14:56:23 1998 Ian Carmichael <iancarm@cygnus.com>
1770
1771 * sim-core.c: Add missing prototypes for WITH_DEVICES.
1772 Add missing parameters to device_io calls.
1773 * sim-core.h: Add missing parameters to device_io calls.
1774
1775Mon Feb 9 14:48:37 1998 Doug Evans <devans@canuck.cygnus.com>
1776
1777 * cgen-sim.h (DECODE): Always use switch for `read' for now.
1778 (PAREXEC): Renamed from PARALLEL_EXEC. All uses updated.
1779 (SEMANTIC{,_CACHE}_FN): Fix return type.
c906108c
SS
1780 * genmloop.sh (@cpu@_engine_run): Delete `current_state'.
1781 (engine_resume): Likewise. Make `engine' volatile. Save copy
1782 of cpu pointer in volatile object. Initialize read switch if
1783 -parallel.
1784
1785Thu Feb 5 13:27:04 1998 Doug Evans <devans@seba.cygnus.com>
1786
1787 * cgen-sim.h (EX_FN_NAME): _exc_ -> _ex_.
1788 (SEM_INSN): New macro.
1789
1790Tue Feb 3 16:31:56 1998 Andrew Cagney <cagney@b1.cygnus.com>
1791
1792 * sim-run.c (sim_engine_run): Assume IMEM is 32 bit.
1793
1794Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
1795
1796 * configure: Regenerated to track ../common/aclocal.m4 changes.
1797
1798Sun Feb 1 16:16:57 1998 Andrew Cagney <cagney@b1.cygnus.com>
1799
1800 * sim-types.h (fp_word): New type, define according to
1801 WITH_TARGET_FLOATING_POINT_BITSIZE.
1802
1803 * aclocal.m4 (default_sim_floating_point_bitsize): Add
1804 configuration of size of floating point registers.
1805
1806Sun Feb 1 14:02:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
1807
1808 * sim-profile.c (profile_print): Only print CPU <N> if other
1809 output is going to appear.
1810
1811Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
1812
1813 * configure: Regenerated to track ../common/aclocal.m4 changes.
1814
1815Sat Jan 31 18:03:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
1816
1817 * sim-types.h (address_word): Typedef according to
1818 WITH_TARGET_ADDRESS_BITSIZE.
1819 (signed_cell, unsigned_cell, natural_cell): Ditto using
1820 WITH_TARGET_CELL_BITSIZE.
1821
1822 * sim-config.h (WITH_TARGET_ADDRESS_BITSIZE): Define.
1823 (WITH_TARGET_CELL_BITSIZE): Define.
1824 (WITH_HOST_WORD_BITSIZE): Delete.
1825
1826 * sim-config.c (print_sim_config): Update.
1827
1828 * aclocal.m4 (SIM_AC_OPTION_BITSIZE): Add support for
1829 configuration of address and OpenFirmware cell sizes.
1830
1831Fri Jan 30 09:36:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
1832
1833 * sim-engine.h (sim_engine_run): Add argument nr_cpus.
1834 * sim-run.c (sim_engine_run): Update.
1835
1836 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use SET_CPU_CIA instead of
1837 CPU_CIA.
1838 * sim-run.c (sim_engine_run): Ditto.
1839
1840 * sim-resume.c (sim_resume): Obtain nr_cpus from sim_engine.
1841 (sim_resume): Pass nr_cpus to sim_engine_run.
1842
1843 * sim-engine.h (struct _sim_engine): Add member nr_cpus.
1844
1845 * sim-engine.c (sim_engine_init): Hardwire nr_cpus to
1846 MAX_NR_PROCESSORS.
1847 (sim_engine_nr_cpus) sim-engine.c, sim-engine.h: New function
1848
c906108c
SS
1849Fri Jan 23 14:20:54 1998 Doug Evans <devans@seba.cygnus.com>
1850
1851 * Make-common.in (stamp-tvals): New rule.
1852 (targ-vals.h,targ-map.c): Depend on it.
1853 (clean): Remove stamp-tvals.
1854
1855Tue Jan 20 21:35:13 1998 Michael Meissner <meissner@cygnus.com>
1856
1857 * sim-utils.c (sim_state_alloc): #if 0 variable that is only used
1858 in code also #if 0'ed.
1859
1860Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
1861
1862 * configure: Regenerated to track ../common/aclocal.m4 changes.
1863 * aclocal.m4: Recognize --enable-maintainer-mode.
1864
1865Mon Jan 19 12:45:45 1998 Doug Evans <devans@seba.cygnus.com>
1866
1867 * cgen-scache.h: Deleted.
1868 * Make-common.in (cgen-run.o,cgen-scache.o): Delete cgen-scache.h dep.
c906108c
SS
1869 * cgen-scache.c: Only compile contents if WITH_SCACHE.
1870 (scache_init): Use runtime computed size of SCACHE.
1871 (scache_flush): Likewise.
1872 * cgen-mem.h (GETIMEMU[QHSD]I): Declare.
1873 ([GS]ETT{QI,UQI,HI,UHI,SI,USI,DI,UDI}): Declare.
1874 * cgen-sim.h: Scache support moved here.
1875 (PC): Redo definition.
1876 (ARGBUF,SCACHE,PARALLEL_EXEC): Provide forward decls.
1877 (DECODE): Add parallel execution support.
1878 Only include semantic label members if using switch.
1879 (SWITCH,CASE,BREAK,DEFAULT,ENDSWITCH): Portable computed goto support.
1880 (CGEN_CPU): Delete members exec_state, halt_sigrc, halt_jmp_buf.
1881 (IADDR,CIA,SEM_ARG,EX_FN_NAME,SEM_FN_NAME,RECORD_IADDR,SEM_ARGBUF,
1882 SEM_NEXT_PC,SEM_BRANCH_VIA_{CACHE,ADDR},SEM_NEW_PC_ADDR): Moved here
1883 from cgen-types.h.
1884 (engine_{stop,run,resume,halt,signal}): Delete decls.
1885 * cgen-types.h (CGEN_{XCAT3,CAT3}): Delete.
1886 (argbuf,scache): Delete forward decls.
1887 (STATE): Delete decl.
1888 * cgen-utils.c: Don't include decode.h, mem-ops.h, sem-ops.h.
1889 Include cgen-mem.h, cgen-ops.h.
1890 (engine_halt,engine_signal): Delete.
1891 ({ex,exc,sem,semc}_illegal): Delete.
1892 (sim_disassemble_insn): Result of extract fn is in bits.
1893 * genmloop.sh: Rewrite.
1894
1895 * cgen-trace.c (trace_insn): Set printed_result_p=0 if not tracing
1896 line numbers.
1897
1898 * sim-base.h (sim_state_base): Delete member `model'.
1899 (sim_cpu_base): Add member `model'.
1900 * sim-model.h (IMP_PROPERTIES): New type.
1901 (MACH): New members imp_props, models.
1902 (models): Delete decl.
1903 * sim-model.c (set_model): Update.
1904 * sim-profile.c (profile_print_model): Update.
1905
1906 * sim-utils.c (sim_state_alloc): Delete setting of cpu backlink here.
1907
1908Fri Jan 16 12:33:09 1998 Nick Clifton <nickc@cygnus.com>
1909
1910 * cgen-trace.c (trace_insn): Call CGEN_INSN_MNEMONIC() rather than
1911 CGEN_INSN_SYNTAX().
1912
1913Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1914
1915 * configure: Regenerated to track ../common/aclocal.m4 changes.
1916 * config.in: Ditto.
1917
1918Mon Dec 15 23:16:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
1919
1920 * aclocal.m4 (AR): Check for sigaction.
1921
1922Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
1923
1924 * Make-common.in (sim-core.o): Depend on $(sim_main_headers).
1925
1926 * sim-config.h (WITH_TREE_PROPERTIES): Define as 0.
1927 * sim-config.c (sim_config): Replace WITH_DEVICES with
1928 WITH_TREE_PROPERTIES.
1929
1930 * configure: Regenerated to track ../common/aclocal.m4 changes.
1931
1932Wed Dec 3 17:56:02 1997 Doug Evans <devans@canuck.cygnus.com>
1933
1934 * Make-common.in (SIM_ENVIRONMENT): New variable.
1935 (CONFIG_CFLAGS): Add it.
1936 * aclocal.m4 (SIM_AC_OPTION_ENVIRONMENT): Handle
1937 --enable-sim-environment option.
1938 * configure: Regenerated.
1939 * sim-config.h (environment support): Rewrite.
1940 * sim-config.c (current_environment): Define as enum, unconditionally.
1941 (current_alignment): Define unconditionally.
1942 (config_environment_to_a): Update.
1943 (config_alignment_to_a): Fix type of argument. Define unconditionally.
1944 (sim_config): Handle environment and alignment determination
1945 unconditionally. Delete sanity checks of current_environment,
1946 unnecessary.
1947 (print_sim_config): Update.
1948 * sim-options.c (STANDARD_OPTIONS enum): Add OPTION_ENVIRONMENT.
1949 (standard_options): Add --environment.
1950 (standard_option_handler): Likewise.
1951
1952Fri Nov 28 12:21:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1953
1954 * sim-alu.h: Add notes on carry vs borrow for subtraction.
1955 (ALU{,8,16,32,64}ADD): Redefine ADD macro as add overflowing.
1956 (ALU{,8,16,32,64}ADDC): Define - add carrying.
1957 (ALU{,8,16,32,64}SUB): Redefine SUB macro as subtract overflowing.
1958 (ALU{,8,16,32,64}SUBB): Define - subtract borrowing.
1959 (ALU{,8,16,32,64}SUBC): Define - tract carrying.
1960 (ALU{,8,16,32,64}ADD_CA, ALU{,8,16,32,64}ADDC_C): Replace single
1961 argument ADD_CA macro with two argument ADDC_C - add carrying with
1962 carry in.
1963 (ALU{,8,16,32,64}SUB_CA, ALU{,8,16,32,64}SUBC_X): Replace single
1964 argument SUB_CA macro with two argument SUBC_X - subtract
1965 carrying, extended.
1966 (ALU{,8,16,32,64}SUBB_B): Define - subtract borrowing with
1967 borrow-in.
1968 (ALU{,8,16,32,64}NEGC, ALU{,8,16,32,64}NEGB): Define.
1969
1970Sun Nov 30 17:40:57 1997 Michael Meissner <meissner@cygnus.com>
1971
1972 * sim-io.c (sim_io_{syscalls,getstring}): Delete. No longer used.
1973 * sim-io.h (sim_io_syscalls): Delete.
1974
1975Fri Nov 28 20:10:09 1997 Michael Meissner <meissner@cygnus.com>
1976
1977 * syscall.c (cb_syscall): Add missing else, so write to stdout
1978 isn't doubled.
1979
1980 * sim-alu.h (ALU{,8,16,32,64}_SET_CARRY): Provide macros to import
1981 the carry bit from the CPU's psw.
1982
1983Fri Nov 28 11:15:05 1997 Doug Evans <devans@canuck.cygnus.com>
1984
1985 * gennltvals.sh: Redo syscall support.
1986 * nltvals.def: Regenerated.
1987
1988Wed Nov 26 16:49:38 1997 Michael Meissner <meissner@cygnus.com>
1989
1990 * syscall.c (cb_syscall): If writing to stdout or stderr, flush
1991 the stream immediately.
1992
1993Wed Nov 26 12:32:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1994
1995 * sim-io.c (sim_io_getstring): Delete unused len2.
1996 (sim_io_syscalls): Ditto for sys_errno.
1997
1998Wed Nov 26 11:18:40 1997 Doug Evans <devans@canuck.cygnus.com>
1999
2000 * syscall.c (cb_syscall): Test CB_SYSCALL struct magic number.
2001
2002 * Make-common.in (run.o): Depend on remote-sim.h.
2003 (nrun.o,sim-hload.o,sim-hrw.o): Likewise.
2004 (sim-io.o,sim-reason.o,sim-resume.o): Likewise.
2005
2006Tue Nov 25 20:12:46 1997 Michael Meissner <meissner@cygnus.com>
2007
2008 * sim-io.c (sim_io_syscalls): Disable lseek.
2009
2010Tue Nov 25 00:12:38 1997 Doug Evans <devans@seba.cygnus.com>
2011
2012 * gennltvals.sh: Generate syscall values for d30v.
2013
2014 * gennltvals.sh: Use libgloss/syscall.h for sparc.
2015 * nltvals.def: Regenerate.
2016
2017 * callback.c (os_stat): Make 3rd arg a host struct stat ptr.
2018 (os_fstat): Likewise. Validate fd argument.
2019 (cb_host_to_target_stat): Delete big_p arg. If HS arg is NULL,
2020 just compute target stat struct length.
2021 * syscall.c: #include "libiberty.h", <sys/types.h>, <sys/stat.h>.
2022 (ENOSYS,ENAMETOOLONG): Provide definitions if missing.
2023 (get_string): Return host errno values so they can be properly
2024 translated later.
2025 (cb_syscall): Likewise.
2026 (cb_syscall, cases open,unlink): Use get_path instead of get_string.
2027 (cb_syscall, case read): Use read_stdin for file descriptor 0.
2028 (cb_syscall, case write): Use write_stderr for file descriptor 2.
2029 (cb_syscall): Add cases for lseek, unlink, stat, fstat, time.
2030 (get_path): New function.
2031
2032Mon Nov 24 18:56:07 1997 Michael Meissner <meissner@cygnus.com>
2033
2034 * sim-io.c (sim_io_syscalls): New function to provide system call
2035 emulation. Provide exit, open, close, read, write, lseek, and
2036 unlink.
2037 (sim_io_getstring): New function to return a string from a
2038 simulated memory location.
2039
2040 * sim-io.h (sim_io_syscalls): Add declaration.
2041
2042Mon Nov 24 12:09:59 1997 Doug Evans <devans@seba.cygnus.com>
2043
2044 * sim-core.c (sim_core_signal): Fix spelling error in message.
2045
2046 * sim-hrw.c (sim_read): Use read map, not write map.
2047
2048 * Make-common.in (all): Add .gdbinit.
2049 * gdbinit.in: Add dump command.
2050
2051 * sim-model.c (model_options): Use '\0' for `shortopt'.
2052
2053 * sim-trace.c (trace_option_handler): Set state trace file
2054 for --trace-file in addition to cpu's values.
2055 (trace_vprintf): If cpu == NULL, try state's trace file.
2056 (trace_options): Reorganize table, reword some descriptions.
2057
2058Sun Nov 23 10:57:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
2059
2060 * sim-fpu.c (sim_fpu_abs, sim_fpu_neg, sim_fpu_inv), sim-fpu.h:
2061 New functions.
2062
2063Sat Nov 22 19:16:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2064
2065 * sim-reason.c (sim_stop_reason): For sim_signalled, return the
2066 signal untranslated, document problem with this.
2067
2068 * nrun.c (main): Check for a prog name of `*step'. If present,
2069 step the simulator instead of allowing it to run free.
2070
2071 * sim-signal.c (SIGQUIT): Define on _MSC_VER hosts.
2072
2073 * Make-common.in (sim_main_headers): Add sim-signal.h.
2074
2075Fri Nov 21 09:32:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
2076
2077 * sim-signal.c (sim_signal_to_host): Return 0 for SIM_SIGNONE.
2078
2079Thu Nov 20 20:35:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
2080
2081 * sim-signal.h: Start simulator signals at 64 so that host signal
2082 numbers can be detected and reported.
2083
2084 * sim-signal.h (SIM_SIGFPE), sim-signal.h: Add signal.
2085
2086Wed Nov 19 12:02:41 1997 Doug Evans <devans@seba.cygnus.com>
2087
2088 * callback.c (cb_host_to_target_stat): Fix return values.
2089
2090 * cgen-sim.h (enum_signal_type): Delete.
2091 (engine_signal): Update prototype.
2092 * cgen-utils.c: Don't include <signal.h>.
2093 (sim_signal_to_host): Delete, lives in sim-signal.c now.
2094 (engine_signal): Update.
2095
2096 * sim-utils.c (sim_state_alloc): Call SIM_STATE_ALLOC if defined.
2097 (sim_state_free): Call SIM_STATE_FREE if defined.
2098
2099 * sim-module.c (sim_module_install): Don't leave any modules
2100 installed if one fails to install.
2101
2102Wed Nov 19 13:25:48 1997 Michael Meissner <meissner@cygnus.com>
2103
2104 * sim-options.c: Don't include ../libiberty/alloca-conf.h any
2105 more, since alloca is not used in this file.
2106
2107 * sim-alu.h (ALU{32,64}_*): Rewrite 32 and 64 bit ALU support to
2108 correctly set the carry and overflow bits for those types.
2109 (ALU{8,16,32,64}_{ADD,SUB}_CA): Take VAL argument to add along
2110 with carry, so carry is correct after doing both adds.
2111 (ALU*): Space out '\' to make it easier to read.
2112
2113Tue Nov 18 15:53:45 1997 Doug Evans <devans@canuck.cygnus.com>
2114
2115 * sim-core.c (sim_core_signal): Use sim_stopped instead of
2116 sim_signalled.
2117
2118 * sim-signal.c, sim-signal.h: New files.
2119 * Make-common.in (sim-signal.o): Add rule for.
2120 (SIM_NEW_COMMON_OBJS): Add sim-signal.o.
2121 * sim-abort.c: Don't include <signal.h>.
2122 * sim-basics.h: #include "sim-signal.h".
2123 * sim-break.c: Don't include <signal.h>.
2124 (sim_handle_breakpoint): Replace SIGTRAP with SIM_SIGTRAP.
2125 * sim-core.c: Don't include <signal.h>.
2126 (SIGBUS): Delete definition.
2127 (sim_core_signal): Replace SIGSEGV,SIGBUS with SIM_SIGSEGV,SIM_SIGBUS.
2128 * sim-engine.c: Don't include <signal.h>.
2129 (sim_engine_abort): Replace SIGABRT with SIM_SIGABRT.
2130 * sim-reason.c (sim_stop_reason): Call sim_signal_to_host.
2131 * sim-resume.c: Don't include <signal.h>.
2132 (SIGTRAP): Delete definition.
2133 (has_stepped): Replace SIGTRAP with SIM_SIGTRAP.
2134 * sim-stop.c: Don't include <signal.h>.
2135 (control_c_simulation): Replace SIGINT with SIM_SIGINT.
2136 * sim-watch.c: Don't include <signal.h>.
2137 (handle_watchpoint): Replace SIGINT with SIM_SIGINT.
2138
2139 * Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
2140
2141 * sim-base.h (CIA_ADDR): Provide default definition.
2142 * sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
2143 * sim-break.c (sim_handle_breakpoint): Likewise.
2144
2145Mon Nov 17 14:15:31 1997 Doug Evans <devans@seba.cygnus.com>
2146
2147 * Make-common.in (srccom): New variable.
2148
2149 * Make-common.in (DEP, COMMON_DEP_CFLAGS): Define.
2150 (LIB_OBJS): Add syscall.o.
2151 (gentmap): Pass $(NL_TARGET) to $(CC).
2152 (syscall.o): Add rule for.
2153 (sim_main_headers): Add $(SIM_EXTRA_DEPS).
2154 (sim-bits.o): Depend on $(sim-n-bits_h).
2155 (sim-load.o): Depend on callback.h.
2156
2157 * Make-common.in (cgen-*.o): Update dependencies, mem-ops.h renamed to
2158 cgen-mem.h, sem-ops.h renamed to cgen-ops.h.
2159 * cgen-mem.h, cgen-ops.h: New files.
2160
2161 * aclocal.m4 (--enable-sim-scache): Pass -DWITH_SCACHE=0 for "=no".
2162
2163 * Makefile.in (nltvals.def): Depend on gennltvals.sh.
2164 Rewrite build rule.
2165 * callback.c: #include string.h or strings.h.
2166 #include sys/types.h and sys/stat.h.
2167 (cb_init_syscall_map,cb_init_errno_map,cb_init_open_map): Declare.
2168 (os_get_errno,os_open): Update.
2169 (os_stat,os_fstat): New functions.
2170 (os_init): Initialize syscall_map, errno_map, open_map.
2171 (default_callback): Add entries for os_stat, os_fstat, syscall_map,
2172 errno_map, open_map, signal_map, stat_map.
2173 (cb_read_target_syscall_maps): New function.
2174 (cb_target_to_host_syscall): New function.
2175 (cb_host_to_target_errno): Renamed from host_to_target_errno.
2176 (cb_target_to_host_open): Renamed from target_to_host_open.
2177 (store): New function.
2178 (cb_host_to_target_stat): New function.
2179 * syscall.c: New file.
2180 * gentmap.c (sys_tdefs): New global.
2181 (gen_targ_vals_h): Output target syscall numbers.
2182 (gen_targ_map_c): Update. Output target syscall translation map.
2183 * gentvals.sh: New first argument `target'. Preface table with
2184 #ifdef NL_TARGET_$target if non-null target passed.
2185 * gennltvals.sh: New file.
2186 * nltvals.def: Regenerated.
2187
2188Fri Nov 14 11:33:34 1997 Andrew Cagney <cagney@b1.cygnus.com>
2189
2190 * sim-n-core.h (sim_core_read_unaligned_N): Return static
2191 sim_core_dummy_M.
2192 (sim_core_dummy_M): Declare.
2193
2194Wed Nov 12 18:16:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
2195
2196 * sim-core.c (sim_core_signal): Print the address of the
2197 instruction.
2198
2199Thu Nov 13 11:49:41 1997 Doug Evans <devans@seba.cygnus.com>
2200
2201 * sim-base.h (sim_state_base): Move `magic' to end of struct.
2202
2203 * sim-base.h (sim_state_base): Add member trace_data.
2204 (STATE_TRACE_DATA): New macro.
2205 * sim-trace.h (TRACE_DEBUG_IDX,TRACE_debug): New macros.
2206 ({WITH_,}TRACE_DEBUG_P): New macros.
2207 (STATE_TRACE_FLAGS,STRACE_P,STRACE_DEBUG_P): New macros.
2208 (_sim_cpu): Delete forward reference.
2209 (debug_printf): Update.
2210 * sim-trace.c (OPTION_TRACE_DEBUG): Define.
2211 (trace_options): Add --trace-debug.
2212 (set_trace_options): Handle it.
2213 (trace_option_handler): Likewise.
2214 (trace_install): Init state trace_data struct.
2215 (trace_uninstall): Close state trace file.
2216 * sim-events.c (ETRACE): Only print source file and line number if
2217 --trace-debug.
2218 * sim-n-core.h (sim_core_trace_M): Likewise.
2219
2220 * sim-core.c (sim_core_signal): Add missing "\n" in message.
2221
22221997-11-13 Felix Lee <flee@cygnus.com>
2223
2224 * sim-n-core.h (sim_core_read_unaligned_N): illegal empty
2225 initializer.
2226 * sim-types.h (unsigned128,signed128): fix typo for MSVC.
2227
2228Wed Nov 12 12:18:08 1997 Doug Evans <devans@canuck.cygnus.com>
2229
2230 * aclocal.m4 (SIM_AC_OPTION_SCACHE): Fix typo.
2231
2232 * Make-common.in (BUILT_SRC_FROM_COMMON): Remove files no longer
2233 built this way.
2234 (sim-config.o): Remove non-existent $(sim-nconfig_h) dependency.
2235 (clean): Don't delete $(BUILT_SRC_FROM_COMMON) if building in
2236 source tree.
2237
2238Tue Nov 11 13:28:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
2239
2240 * sim-events.c (sim_events_process): Re-compute the time -
2241 update_time_from_event - as each event is processed. Reverses
2242 previous change.
2243
2244Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
2245
2246 * callback.c (os_poll_quit): Replace _WIN32 with _MSC_VER.
2247
2248Fri Nov 7 00:37:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
2249
2250 * sim-events.c (sim_events_process): Delete redundant call to
2251 update_time_from_event.
2252 (sim_events_slip): Always decrement time_from_event.
2253 (sim_events_tick, sim_events_deschedule, update_time_from_event):
2254 Delete assertion that time_from_event >=0 when work in queue, no
2255 longer applicable.
2256
2257Thu Nov 6 12:06:46 1997 Andrew Cagney <cagney@b1.cygnus.com>
2258
2259 * sim-options.c (STANDARD_OPTIONS): Change OPTION_* to an enum.
2260 (standard_option_handler): Update.
2261
2262 * sim-options.h: Clarify documentation.
2263 (OPTION_LONG_ONLY_P): Delete definition.
2264 (OPTION_VALID_P): Define.
2265
2266 * sim-options.c (sim_print_help): Allow short only options.
2267 (sim_parse_args): Ditto.
2268 (sim_args_command): Skip short only options.
2269 (sim_parse_args): Allocate space for NUM_OPTS not just 256. Make
2270 separate entries for short and long options in the HANDLERS and
2271 ORIG_VAL tables.
2272 (sim_parse_args): Disable argument permutation.
2273
2274Wed Nov 5 13:40:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
2275
2276 * sim-core.h (DECLARE_SIM_CORE_WRITE_N. DECLARE_SIM_CORE_READ_N):
2277 Add argument M, size of data type.
2278 (sim_core_read_misaligned_3, sim_core_write_misaligned_3):
2279 Declare, ditto for 5, 6 & 7 byte transfers.
2280 (sim_core_write_unaligned_1, sim_core_write_unaligned_1): Define
2281 as aligned variant.
2282
2283 * sim-n-core.h (sim_core_trace_M): Rename from
2284 sim_core_trace_N. Add nr_bytes argument. Replace transfer argument
2285 with transfer type. Print transfer direction. Handle 1 and 2 byte
2286 transfers.
2287 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Trace
2288 unaligned accesses.
2289 (unsigned_M, T2H_M, H2T_M): Rename from unsigned_N, T2H_N, H2T_N.
2290 Update all functions.
2291
2292 * sim-core.c: Generate functions starting with 16 not 1.
2293 (sim_core_read_unaligned_3): Generate. Ditto for 3 byte write and
2294 all 5, 6 & 7 byte transfers.
2295
2296 * sim-n-core.h (sim_core_read_misaligned_N,
2297 sim_core_write_misaligned_N): Implement.
2298
2299Mon Nov 3 15:03:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
2300
2301 * sim-endian.h (U16_8): Implement
2302
2303 * sim-endian.c (sim_endian_split_16, sim_endian_join_16): New functions
2304
2305 * sim-endian.h (VL8_16, VH8_16): Implement.
2306
2307 * sim-memopt.c (memory_option_handler): Typecast 64bit value to
2308 long in printf.
2309 (memory_option_handler): Only zalloc modulo bytes when non-zero.
2310 (memory_option_handler): Skip comma in alias address list
2311
2312Fri Oct 31 13:03:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
2313
2314 * sim-memopt.c (do_memopt_add, do_memopt_delete): Add level and
2315 space params.
2316 (parse_size, parse_addr): New functions
2317 (memory_option_handler, memory_options): Parse address & size
2318 using new functions. Pass level, space, modulo to do_memopt_add &
2319 do_memopt_del.
2320
2321 * sim-memopt.h (struct _sim_memopt): Add level & space fields.
2322
2323 * sim-core.h (sim_core_arrach, sim_core_detach): Replace
2324 `attach_type attach' argument with `unsigned level' argument.
2325 Document.
2326
2327 * sim-core.c (new_sim_core_mapping, sim_core_map_attach,
2328 sim_core_attach): Replace argument attach with level. Update
2329 verification of arguments.
2330 (sim_core_map_detach, sim_core_detach): Replace argument attach
2331 with level.
2332
2333 * sim-basics.h (enum _attach_type): Delete.
2334
2335Thu Oct 30 13:45:00 1997 Doug Evans <devans@seba.cygnus.com>
2336
2337 * sim-core.h (sim_core_write_8): Define.
2338
2339Tue Oct 28 12:29:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2340
2341 * sim-bits.h: Document ROTn macro.
2342
2343 * sim-endian.h (H2T): Handle 16 byte variables.
2344
2345 * sim-n-core.h (sim_core_read_unaligned_N): Return a dummy when an
2346 error.
2347
2348 * sim-core.c: Do not generate sim_core_*_word.
2349
2350 * sim-n-core.h (sim_core_trace_N): Add line_nr argument.
2351 (sim_core_write_aligned_N, sim_core_read_aligned_N): Update.
2352
2353 * sim-core.h (sim_core_read_unaligned_word,
2354 sim_core_read_aligned_word, sim_core_read_word,
2355 sim_core_write_unaligned_word, sim_core_write_aligned_word,
2356 sim_core_write_word): Change to macros that map onto sim_core_*_N.
2357
2358Mon Oct 27 11:25:10 1997 Doug Evans <devans@canuck.cygnus.com>
2359
2360 * sim-n-endian.h: Add TAGS entrys for 16 byte versions.
2361
2362 * sim-endian.h: Disable 16 byte support.
2363
2364Mon Oct 27 12:00:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
2365
2366 * sim-endian.c (_SWAP_16): Define. Generate 126 bit swap code.
2367
2368 * sim-n-core.h (sim_core_trace_N): New function.
2369 (sim_core_read_aligned_N, sim_core_write_aligned_N): Use,
2370 (sim_core_read_unaligned_N): Do not retyrn bogus value wden error.
2371
2372 * sim-endian.h: Add 128 bit variant.
2373
2374 * sim-core.h, sim-core.c: Add 128 bit variant.
2375
2376 * sim-types.h: Add signed128 and unsigned128 types using a struct.
2377
2378Fri Oct 24 11:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
2379
2380 * sim-events.c (sim_events_process): Clear events->work_pending.
2381 (sim_events_tickn, sim_events_tick): Accumulate, instead of
2382 setting, nr_ticks_to_process.
2383 (sim_events_preprocess): Allow nr_ticks_to_process to be non-zero
2384 when the event queue isn't next.
2385
2386 * sim-events.h, sim-events.c (sim_events_slip): New function.
2387
2388Wed Oct 22 14:18:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
2389
2390 * sim-hload.c (sim_load): Pass lma_p==0 and do_load=sim_load.
2391
2392 * sim-utils.h, sim-load.c (sim_load_file): Add lma_p and do_load
2393 arguments.
2394
2395Tue Oct 21 18:37:57 1997 Doug Evans <devans@canuck.cygnus.com>
2396
2397 * nrun.c (main): Remove useless test of name != NULL.
2398 Exit if bfd_openr fails. Call bfd_check_format after bfd_openr.
2399
2400Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
2401
2402 * sim-fpu.c (EXPMAX): Type is unsigned.
2403 (MIN_INT, MAX_INT): Type is signed64.
2404 (i2fpu): Type of val is signed64.
2405
2406Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
2407
2408 * sim-profile.h (PROFILE_PC_BUCKET_SIZE): Treat a shift of zero as
2409 a bucket size of zero.
2410
2411 * sim-profile.c (OPTION_PROFILE_PC_GRANULARITY,
2412 OPTION_PROFILE_PC): Define.
2413 (profile_option_handler): Add support for --profile-pc and
2414 --profile-pc-granularity options.
2415 (profile_pc_init): When possible, compute nr buckets from bucket
2416 size.
2417
2418 * sim-profile.c (profile_pc_init): Align the profile-pc end
2419 address with the profile-pc bucket size.
2420
2421 * sim-profile.h (PROFILE_PC_NR_BUCKETS): Rename PROFILE_PC_SIZE to
2422 something less ambiguous.
2423 (PROFILE_PC_BUCKET_SIZE): Ditto for PROFILE_PC_SAMPLE_SIZE.
2424
2425 * sim-profile.c (profile_pc_cleanup): New function. Move
2426 profile_pc_uninstall code to here.
2427 (profile_pc_uninstall): Call.
2428 (profile_pc_init): Call.
2429
2430Mon Oct 20 17:23:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
2431
2432 * sim-profile.c (profile_print_pc): Dump pc profile to dmon.out
2433 file using BSD gprof format.
2434
2435 * sim-bits.h (LSBIT, MSBIT, BIT): Force result to type
2436 unsigned_word.
2437 (LSBIT8, LSBIT16, LSBIT32, LSBIT64, MSBIT8, MSBIT16, MSBIT32,
2438 MSBIT64): Force result to unsignedN.
2439
2440Thu Oct 16 11:38:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
2441
2442 * sim-alu.h (ALU16_BEGIN, ALU32_BEGIN, ALU64_BEGIN): Drop opening
2443 brace from macro.
2444 (ALU8_BEGIN, ALU8_SET, ALU8_ADD, ALU8_SUB, ALU8_NEGATE): Define.
2445 (ALU16_ADD, ALU16_SUB, ALU16_NEGATE): Simplify arrithmetic.
2446 (ALU32_ADD, ALU32_SUB, ALU32_NEGATE): Simplify arrithmetic.
2447 (ALU64_ADD, ALU64_SUB, ALU64_NEGATE): Simplify arrithmetic.
2448
2449Wed Oct 15 09:24:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
2450
2451 * sim-core.h (struct _sim_core_mapping): Change free_buffer to
2452 type void*.
2453
2454 * sim-core.c (sim_core_uninstall, new_sim_core_mapping,
2455 sim_core_map_attach, sim_core_map_detach): Change free_buffer to
2456 type void*.
2457 (sim_core_attach): Rename buffer_freed to free_buffer, type
2458 void*. Ensure that allocated buffer is alligned according to
2459 region's address.
2460
2461Mon Oct 13 11:34:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
2462
2463 * sim-alu.h (ALU64_HAD_OVERFLOW): Define.
2464 (ALU64_SUB): Define.
2465
2466 * Make-common.in (all): Build SIM_EXTRA_ALL first.
2467 (.gdbinit): Remove dependencies, generate once per build.
2468
2469Tue Oct 14 19:20:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
2470
2471 * sim-n-core.h (sim_core_read_aligned_N,
2472 sim_core_write_aligned_N): Make xaddr param type address_word not
2473 unsigned_word.
2474
2475Fri Oct 3 09:49:18 1997 Andrew Cagney <cagney@b1.cygnus.com>
2476
2477 * sim-fpu.h, sim-fpu.c: Rewrite. Change sim_fpu object to an
2478 unpacked floating point struct. Pass sim_fpu object by reference.
2479 Add preliminary support for rounding modes.
2480
2481Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
2482
2483 * configure: Regenerated to track ../common/aclocal.m4 changes.
2484
2485Thu Oct 2 19:43:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
2486
2487 * aclocal.m4 (sim-bitsize): Fix typo, WITH_TARGET_WORD_BITSIZE not
2488 WITH_TARGET_BITSIZE.
2489
2490Thu Sep 25 23:20:20 1997 Felix Lee <flee@yin.cygnus.com>
2491
2492 * sim-profile.c (profile_print_core): label needs empty statement.
2493
2494Thu Sep 25 11:20:47 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
2495
2496 * sim-break.c (sim_set_breakpoint sim_clear_breakpoint): Use ZALLOC
2497 and zfree instead of xmalloc and free. Prevents warnings.
2498
2499Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
2500
2501 * configure: Regenerated to track ../common/aclocal.m4 changes.
2502
2503Wed Sep 24 17:23:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
2504
2505 * Make-common.in (SIM_BITSIZE): Assign from configured value.
2506 (CONFIG_CFLAGS): Add SIM_BITSIZE.
2507
2508 * aclocal.m4 (--enable-sim-bitsize): Developer option for
2509 controling the bitsize/msb of the target.
2510
2511Wed Sep 24 17:41:40 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
2512
2513 * Make-common.in: New files sim-break.c, sim-break.h.
2514 * sim-base.h: Add point to breakpoint list to sim_state_base.
2515 * sim-break.c sim-break.h: New modules that implement intrinsic
2516 breakpoint support.
2517 * sim-module.c: Add breakpoint module.
2518
2519Tue Sep 23 00:26:39 1997 Felix Lee <flee@yin.cygnus.com>
2520
2521 * sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
2522 an hour.
2523 * sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
2524 if (0) { 1 % 0; }
2525 * sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
2526 (SIGBUS) define for Windows.
2527 * sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
2528 * sim-resume.c: define SIGTRAP for windows.
2529 * sim-xcat.h: use token pasting if ALMOST_STDC.
2530
2531Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
2532
2533 * Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign
2534 configured values.
2535 (CONFIG_CFLAGS): Add same.
2536
2537Mon Sep 22 17:20:27 1997 Felix Lee <flee@cygnus.com>
2538
2539 * sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
2540 (SIGNED32): use ##i32.
2541
2542Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
2543
2544 * configure: Regenerated to track ../common/aclocal.m4 changes.
2545
2546Tue Sep 23 10:07:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
2547
2548 * aclocal.m4 (sim-endian): Simplify logic determining [default]
2549 endian of target.
2550
2551 * Make-common.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
2552 SIM_HOSTENDIAN, SIM_RESERVED_BITS, SIM_ASSERT, SIM_FLOAT,
2553 SIM_HARDWARE, SIM_INLINE, SIM_PACKAGES, SIM_REGPARM, SIM_SMP,
2554 SIM_STDCALL, SIM_XOR_ENDIAN): Assign configured values.
2555 (CONFIG_CFLAGS): Add same.
2556
2557 * aclocal.m4: Perform AC_SUBST on optional options.
2558
2559Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
2560
2561 * sim-config.h (WITH_DEFAULT_ALIGNMENT): Don't hardwire any alignment.
2562
2563 * sim-options.c (standard_option_handler): Typo in warning message.
2564
2565 * sim-base.h (STATE_MODEL): Make conditional on SIM_HAVE_MODEL.
2566
2567 * sim-profile.c (profile_print_insn): Check 0 .. MAX_INSN for any
2568 insn count. Make count conditional on there being a valid
2569 INSN_NAME.
2570 (profile_pc_init): Make default PC profile frequency an arbitrary
2571 256.
2572
2573 * sim-base.h: Ditto.
2574
2575 * sim-profile.h (WITH_PROFILE_MODEL_P): Only enable modeling when
2576 SIM_HAVE_MODEL.
2577
2578 * sim-model.h (struct MACH): Depreciate, to be replaced by bfd
2579 archure struct.
2580
2581Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
2582
2583 * configure: Regenerated to track ../common/aclocal.m4 changes.
2584
2585Mon Sep 22 11:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
2586
2587 * aclocal.m4 (sim_alignment): Simplify logic for selecting the
2588 configured alignment.
2589
2590Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
2591
2592 * configure: Regenerated to track ../common/aclocal.m4 changes.
2593
2594Fri Sep 19 17:26:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
2595
2596 * sim-config.c (sim_config): Check for default alignment.
2597
2598 * sim-options.c (standard_option_handler): Add alignment option.
2599
2600 * aclocal.m4 (sim_alignment): Allow configuration of hardwired and
2601 default alignment requirements on memory accesses.
2602
2603Fri Sep 19 11:51:35 1997 Jeffrey A Law (law@cygnus.com)
2604
2605 * sim-load.c (sim_load_file): Return failure if the executable
2606 had no loadable sections.
2607
2608Wed Sep 17 13:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
2609
2610 * sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
2611 trace output.
2612
2613 * sim-core.c (sim_core_signal): When bad access halt simulator
2614 SIGSEGV / SIGBUS instead of aborting.
2615 (signal.h): Include.
2616
2617 * sim-watch.c (sim_watchpoint_install): Handler for watchpoint
2618 options was missing.
2619
2620 * sim-bits.h (MOVED): Define
2621
2622Wed Sep 17 10:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
2623
2624 * sim-alu.h (ALU32_HAD_OVERFLOW): Pacify GCC, Use MSBIT instead of
2625 BIT.
2626
2627 * sim-bits.h (LSBIT, MSBIT): Check for overflow of shift value.
2628
2629 * sim-bits.c: Add 8 bit versions of bit macros.
2630
2631 * sim-bits.h: Ditto.
2632
2633Tue Sep 16 16:15:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
2634
2635 * sim-bits.c (LSSEXT, MSSEXT): Replace SEXT.
2636 (LSINSERTED, MSINSERTED): Ditto for INSERTED.
2637
2638 * sim-n-bits.h (MSSEXTn, LSSEXTn): Replace SEXTn.
2639 (LSINSERTDn, MSINSERTEDN): Ditto for INSERTEDn.
2640
2641 * sim-bits.h (SEXT*): Define as MSEXT/LSEXT.
2642 (INSERTED*): Ditto for LSINSERTED/MSINSERTED.
2643
2644Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
2645
2646 * aclocal.m4 (SIM_AC_COMMON): Add optional config.h file argument.
2647 configure.in: Output to cconfig.h instead of config.h.
2648
2649 * configure: Regenerated to track ../common/aclocal.m4 changes.
2650
2651Mon Sep 15 15:39:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
2652
2653 * sim-utils.c (sim_analyze_program): Set STATE_ARCHITECTURE from
2654 BFD if known.
2655
2656Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
2657
2658 * callback.c (os_write): divert stdout and stderr to their
2659 respective hooks.
2660
2661Thu Sep 11 10:08:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
2662
2663 * sim-profile.c (profile_print_speed): Call
2664 sim_events_elapsed_time instead of PROFILE_EXEC_TIME for moment.
2665
2666 * sim-events.c (sim_events_elapsed_time): New function return nr
2667 host MS consumed by the simulator.
2668 (sim_watch_valid): Use.
2669
2670 * sim-module.c (modules): Install sim_events very very early.
2671
2672 * sim-profile.c (profile_print): Call profile_print_pc.
2673 (print_bar):
2674 (profile_pc_init): New function, set up processor for PC
2675 profiling.
2676 (profile_print_pc): New function, print a PC profile.
2677 (profile_pc_event): New function, sample PC.
2678
2679 * sim-profile.h (PROFILE_PC_COUNT, PROFILE_PC_START,
2680 PROFILE_PC_END, PROFILE_PC_SHIFT, PROFILE_PC_SAMPLE_SIZE): Add to
2681 profile struct.
2682
2683 * sim-options.c (sim_print_help): Pacify GCC.
2684
2685 * sim-n-core.h (sim_core_read_aligned_N,
2686 sim_core_write_aligned_N): Add un-conditional profile call.
2687 (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Add
2688 profile call when aligned read/write isn't used.
2689
2690 * sim-base.h: Include sim-profile, sim-model after sim-core &
2691 sim-events allow sim-core to define useful values.
2692
2693 * sim-profile.c (OPTION_PROFILE_CORE): Define.
2694 (profile_option_handler, profile_options): Add support for
2695 --profile-core option.
2696 (print_bar): Include when core profiling.
2697 (profile_print_core): New function, print core profile.
2698
2699 * sim-config.c (print_sim_config): Print profile status.
2700
2701 * sim-profile.h (PROFILE_NEXT_IDX, PROFILE_core,
2702 WITH_PROFILE_PC_P): Define.
2703 (PROFILE_CORE_COUNT): Count each core-map/size separatly.
2704 (PROFILE_COUNT_CORE): Define.
2705
2706Thu Sep 11 08:44:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
2707
2708 * sim-watch.c (handle_watchpoint): Pass a char** index into the
2709 interrupt_names array as the data.
2710 (sim-watch.h): Document.
2711
2712Wed Sep 10 16:15:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2713
2714 * sim-options.c (sim_print_help): When the doc string is to long
2715 word wrap it.
2716
2717 * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
2718 that only the first few the watch options are listed. Generate
2719 meanginful usage messages.
2720
2721 * sim-options.h (struct OPTION): Clarify use of doc_name field
2722
2723Wed Sep 10 13:23:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
2724
2725 * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
2726 (standard_option_handler): Handle --architecture-info.
2727
2728Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
2729
2730 * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
2731 illegal zero-sized array.
2732 * sim-core.c (sim_core_xor_read_buffer): same.
2733
2734Tue Sep 9 11:20:35 1997 Doug Evans <dje@canuck.cygnus.com>
2735
2736 * nltvals.def: Regenerate.
2737
2738Tue Sep 9 02:10:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
2739
2740 * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
2741
2742Mon Sep 8 12:22:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
2743
2744 * sim-bits.c (MASKED): Delete.
2745 (EXTRACTED): Delete.
2746 (LSEXTRACTED, MSEXTRACTED): New functions.
2747
2748 * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
2749 (MSMASKEDn, LSMASKEDn): Add last argument.
2750 (MSMASK*): Ditto.
2751
2752 * sim-bits.h (EXTEND8, EXTEND16): Define.
2753 (EXTRACTED64): Define as 64 bit extract, not 32 bit.
2754
2755 * sim-run.c (sim_engine_run): Use CPU_CIA macro.
2756
2757 * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
2758 current instruction address.
2759
2760 * sim-inline.h (*_ENGINE): Define.
2761
2762Fri Sep 5 08:39:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
2763
2764 * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
2765
2766 * sim-watch.c (delete_watchpoint): Delete by ident and type.
2767 (watch_option_handler): Call delete_watchpoint with ident or type.
2768 (sim_watchpoint_install): Create interrupt specific watchpoint
2769 commands on the fly.
2770 (do_watchpoint_create): New function, create a watch point using
2771 type/int-nr info encoded in the option nr.
2772 (do_watchpoint_info): New function. List active watchpoints.
2773
2774 * sim-watch.h: Change data structure to a list.
2775
2776 * sim-memopt.c (memory_option_handler): Require explicit "all"
2777 before deleting all memory regions.
2778
2779 * sim-utils.c (sim_do_commandf): New function, printf version of
2780 sim_do_command.
2781
2782 * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32.
2783
2784 * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
2785 bit endianness.
2786 (SIGNED64, UNSIGNED64): Delete.
2787 (ALU64_ADD): Don't rely on bit endianness.
2788 (ALU64_BEGIN): Define.
2789
2790 * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
2791 (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
2792
2793 * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
2794 suffix - u64, LL - to 64 bit constants.
2795
2796Thu Sep 4 09:27:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
2797
2798 * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
2799
2800 * sim-utils.h (NZALLOC): Define - zalloc * N.
2801
2802 * sim-hrw.c (sim_read, sim_write): New file. Provide generic
2803 implementation of read/write functions.
2804
2805 * Make-common.in (sim-hrw.o): New target.
2806
2807 * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
2808 memory.
2809
2810 * sim-memopt.c (memory_option_handler): Implement memory-size
2811 command. Implement memory-alias command. Let memory-delete delete
2812 all memory regions.
2813 (add_memopt): New function. Add a memory region.
2814 (do_memopt_delete): New function. Delete a memory region.
2815
2816 * sim-utils.c (sim_elapsed_time_get): Never return zero.
2817
2818 * sim-core.c (sim_core_detach): New function.
2819 (sim_core_map_detach): New function. Perform the actual detach.
2820 (sim_core_init): Move initialization code from here.
2821 (sim_core_install): To here.
2822 (sim_core_uninstall): And here.
2823
2824 * sim-module.c: Add memopt module.
2825
2826 * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
2827 simulator base type.
2828
2829 * Make-common.in (sim_main_headers): Add sim-memopt.h
2830 (sim-memopt.o): New target.
2831
2832 * sim-core.c (sim_core_install): Add core_options to the option
2833 table.
2834
2835 * sim-watch.c (watch_options): Make --delete-watch a synonym for
2836 --watch-delete.
2837
2838 * sim-config.h (WITH_MODULO_MEMORY): Define as 0. Update
2839 comments.
2840
2841 * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
2842 address_word, add mask member.
2843
2844 * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
2845 address_word, allow for 64bit targets in 32bit host. Add modulo
2846 argument.
2847 (sim_core_map_attach): Ditto.
2848 (new_sim_core_mapping): Ditto.
2849 (sim_core_translate): Mask address when modulo memory.
2850
2851Wed Sep 3 17:32:54 1997 Doug Evans <dje@seba.cygnus.com>
2852
2853 * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
2854
2855 * gdbinit.in: New file.
2856 * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
2857 * Make-common.in (distclean): Delete .gdbinit.
2858 (.gdbinit): Add rule for.
2859 * configure: Regenerated to track ../common/aclocal.m4 changes.
2860
2861 * Make-common.in (cgen-run.o): Add rule for.
2862
2863Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2864
2865 * sim-resume.c (sim_resume): Suspend/resume the simulator.
2866
2867 * sim-events.c (sim_watch_valid): Compute total elapsed time from
2868 both resumed and previous elapsed time.
2869 (sim_events_init): Set initial_wallclock and current_wallclock to
2870 zero.
2871 (sim_events_install): Install sim_events_suspend and
2872 sim_events_resume.
2873 (sim_events_watch_clock): Allow for suspended simulator when
2874 computing the time of the clock event.
2875
2876 * sim-events.h (struct _sim_event): Add resume_wallclock, rename
2877 initial_wallclock to elapsed_wallclock, set both to zero.
2878 (sim_events_init, sim_events_uninstall): Delete prototypes.
2879
2880 * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
2881
2882 * sim-module.c(sim_module_resume, sim_module_suspend): New
2883 functions.
2884
2885Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2886
2887 * sim-core.c (sim_core_map_attach): Clarify memory overlap error
2888 message.
2889
2890Tue Sep 2 14:57:06 1997 Doug Evans <dje@canuck.cygnus.com>
2891
2892 * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
2893 * Make-common.in (TAGS): Likewise.
2894 * sim-n-bits.h: Add TAGS comments for all functions.
2895 * sim-n-core.h: Likewise.
2896 * sim-n-endian.h: Likewise.
2897
2898Mon Sep 1 10:50:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
2899
2900 * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
2901 kind.
2902
2903 * sim-base.h (sim_state_alloc): Add callback and kind arguments.
2904
2905 * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
2906 definition.
2907
2908Sat Aug 30 09:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
2909
2910 * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
2911 (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
2912
2913Fri Aug 29 13:37:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
2914
2915 * sim-core.c (sim_core_map_attach): Cast attach enum to int.
2916 (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
2917 nr_transfered and nr_this_transfer unsigned.
2918
2919 * sim-events.c (sim_events_tickn): N is signed, as limited to
2920 MAXINT.
2921
2922 * sim-n-endian.h (offset_N): Change size to unsigned.
2923
2924 * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
2925
2926Fri Aug 29 10:10:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
2927
2928 * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
2929
2930 * sim-options.c (sim_parse_args): Use dupargv.
2931
2932Thu Aug 28 10:36:34 1997 Doug Evans <dje@canuck.cygnus.com>
2933
2934 * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
2935
2936Thu Aug 28 12:09:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
2937
2938 * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
2939 base type.
2940
2941 * sim-options.c (standard_options): Add --architecture=MACHINE and
2942 --target=TARGET options.
2943 (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
2944 (standard_option_handler): Handle architecture and target options.
2945 (bfd.h): Include.
2946
2947 * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
2948 bfd_openr.
2949 (sim_analyze_program): Set prog_bfd architecture from
2950 STATE_ARCHITECTURE if known.
2951
2952Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
2953
2954 * configure: Regenerated to track ../common/aclocal.m4 changes.
2955 * config.in: Ditto.
2956
2957Wed Aug 27 18:11:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
2958
2959 * aclocal.m4 (enable-sim-warnings): Remove comment stating
2960 that option does not apply to certain files.
2961
2962Wed Aug 27 15:13:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
2963
2964 * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
2965 MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
2966 offset from MSB/LSB.
2967
2968 * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
2969 access address of sub word quantity of a hosts 16, 32, 64 bit word
2970 type.
2971 (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
2972 (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
2973 (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
2974 return N*2 byte value with argument in Hi/Lo word. Renamed from
2975 V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
2976
2977 * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
2978 (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
2979 so that bit offset is explicit.
2980
2981Wed Aug 27 11:55:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
2982
2983 * sim-utils.c (sim_analyze_program): Add prog_name argument.
2984 Update STATE_PROG_BFD when needed with a dup'd copy of the
2985 program.
2986
2987 * sim-config.c (sim_config): Delete ABFD argument, use
2988 STATE_PROG_BFD directly.
2989
2990Tue Aug 26 12:55:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
2991
2992 * run.c (main): Pass the open ABFD to sim_create_inferior.
2993
2994 * nrun.c (main): Determine prog_bfd. Pass to sim_create_inferior
2995 and sim_load.
2996 (bfd.h): Include.
2997
2998 * sim-hload.c (sim_load): New file. Implement generic sim_load for
2999 hardware only simulator targets.
3000
3001 * Make-common.in (sim-hload.o): Add rule.
3002
3003Wed Aug 27 09:51:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
3004
3005 * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
3006 used by copyargv and freeargv.
3007
3008 * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
3009 STATE_PROG_ARGV, not just a pointer.
3010
3011Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
3012
3013 * configure: Regenerated to track ../common/aclocal.m4 changes.
3014 * config.in: Ditto.
3015
3016Mon Aug 25 12:11:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
3017
3018 * aclocal.m4 (sim-endian): Add second argument to
3019 SIM_AC_OPTION_ENDIAN. First is hardwired endian, second is
3020 default endian when not hardwired.
3021
3022 * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
3023 else failes value for target byte order.
3024
3025 * sim-config.c (sim_config): Add abfd arguments. Set
3026 STATE_PROG_BFD accordingly. Determine prefered_target_byte_order
3027 from same.
3028 (sim_config): Return SIM_RC, don't abort.
3029 (bfd.h): Include.
3030
3031 * run.c (main): Update call to sim_open - add ABFD argument.
3032 * nrun.c (main): Add NULL ABFD argument.
3033
3034Thu Aug 14 12:48:57 1997 Doug Evans <dje@canuck.cygnus.com>
3035
3036 * callback.c (os_poll_quit): Make static.
3037 Call sim_cb_eprintf, not p->eprintf.
3038 (sim_cb_printf, sim_cb_eprintf): New functions.
3039 * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
3040
3041 * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
3042 sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
3043 sim-utils.h. #include sim-utils.h.
3044 * sim-utils.h: Above decls moved here.
3045 (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
3046
3047 * sim-watch.c (action_watchpoint): Fix thinkos.
3048
3049Thu Jul 24 08:48:05 1997 Stu Grossman (grossman@critters.cygnus.com)
3050
3051 * sim-types.h: Fix defs of 64 bit data types for MSVC.
3052
3053Tue Jul 22 10:35:37 1997 Doug Evans <dje@canuck.cygnus.com>
3054
3055 * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
3056 to FORCED_ALIGNMENT case.
3057
3058Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
3059
3060 * callback.c (target_to_host_open): Handle hosts with O_BINARY.
3061
3062Thu Jun 5 08:47:10 1997 Jeffrey A Law (law@cygnus.com)
3063
3064 * Make-common.in (libsim.a): Fix typo.
3065
3066Thu Jun 5 13:48:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
3067
3068 * nrun.c (main): Verify the structure returned before using it.
3069
3070Wed Jun 4 11:44:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
3071
3072 * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
3073 default.
3074
3075 * sim-engine.c (sim_engine_install): New function. Install the
3076 engine init functions.
3077 (sim_engine_init): [Re]initialize the simulator engine.
3078
3079 * sim-module.c: Add sim_engine to list of modules that always
3080 install.
3081
3082Tue Jun 3 04:52:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
3083
3084 * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
3085 to remove the old watchpoint, not delete_watchpoint.
3086 (watch_option_handler): Action the correct watchpoint, not just
3087 cycles.
3088
3089Wed May 28 14:47:41 1997 Andrew Cagney <cagney@b1.cygnus.com>
3090
3091 * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
3092 both low and high word.
3093 (sim_core_write_aligned_N): Ditto.
3094
3095 * sim-trace.c (set_trace_options): Delete code explicitly setting
3096 core->trace.
3097
3098 * sim-options.c (sim_print_help): Call the list commands if not a
3099 standalone simulator.
3100 (sim_print_help): Advise that some options may not be applicable.
3101
3102 * sim-trace.c (set_trace_options): Assume core present.
3103
3104 * sim-events.c (sim_events_schedule_after_signal): Overflow signal
3105 buffer when full not almost full.
3106
3107Tue May 27 14:32:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
3108
3109 * sim-events.c (sim_events_process): Don't blat the event queue
3110 when processing watchpoints.
3111
3112 * sim-watch.h: Make arg unsigned long - stop sign extension.
3113
3114 * sim-events.c (sim_watch_valid): rewrite so debugable.
3115
3116 * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
3117
3118 * sim-watch.c (schedule_watchpoint): Add is_within option so that
3119 inequality test is possible.
3120 (handle_watchpoint): Re-pass is_within arg.
3121 (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
3122 0 to schedule_watchpoint's is_within arg.
3123 (sim_watchpoint_init): Re-pass is_within arg.
3124
3125 * sim-options.c (sim_print_help): Add is_command argument. Don't
3126 include -- prefix when called from the command line interpreter.
3127
3128 * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
3129
3130 * sim-events.c (sim_events_watch_sim): Add is_within argument,
3131 zero indicates that the test should be reversed.
3132 (sim_events_watch_core): Ditto.
3133 (WATCH_CORE): Compare range against is_within.
3134 (WATCH_SIM): Ditto.
3135
3136Tue May 27 12:48:03 1997 Andrew Cagney <cagney@b2.cygnus.com>
3137
3138 * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
3139 sim_core_read_buffer. Check nr-bytes transfered.
3140
3141 * sim-core.h (sim_core_common): Define a new struct that contains
3142 the common data. to sd and cpu structures.
3143 * sim-core.c (sim_core_attach): Update.
3144 (sim_core_init): Update. Remember to copy initialized data to each
3145 cpu.
3146 (sim_core_find_mapping): Ditto.
3147
3148 * sim-core.c (sim_core_read_buffer): Add cpu argument.
3149 (sim_core_write_buffer): Ditto.
3150
3151 * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
3152 transfer use xor version of read buffer.
3153 (sim_core_write_unaligned_N): Ditto for write.
3154
3155 * sim-core.c (sim_core_xor_read_buffer): New function implement
3156 xor-endian data read breaking transfer up into xor-endian sized
3157 blocks.
3158 (sim_core_xor_write_buffer): Ditto for write.
3159 (reverse_n): Reverse order of arbitrary number of bytes in buffer
3160 - needed for xor-endian transfers.
3161
3162Fri May 23 14:24:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
3163
3164 * sim-inline.h: Review description.
3165
3166 * sim-core.h, sim-core.c: Reduce number of functions being inlined
3167 to just those involved in data transfers and configuration.
3168
3169 * sim-xcat.h (XSTRING): New macro, map macro definition onto
3170 string.
3171 * sim-n-core.h (sim_core_read_aligned_N): Use.
3172 (sim_core_read_unaligned_N): Ditto.
3173 (sim_core_read_unaligned_N): Ditto..
3174 (sim_core_write_unaligned_N): Ditto.
3175
3176 * sim-core.h: Add xor endian bitmap to main structure. *
3177
3178 sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
3179 endian.
3180 (sim_core_read_aligned_N): Ditto.
3181
3182 * sim-core.c (sim_core_set_xor_endian): New function.
3183 (sim_core_attach): Don't overwrite the per-cpu xor map when
3184 cloning the global core.
3185
3186Fri May 23 10:53:13 1997 Andrew Cagney <cagney@b1.cygnus.com>
3187
3188 * sim-engine.h: Update below so that it is using an enumerated
3189 type.
3190
3191Thu May 22 09:12:16 1997 Gavin Koch <gavin@cygnus.com>
3192
3193 * sim-engine.c (sim_engine_restart):
3194 * sim-resume.c (sim_resume): Change longjmp param/setjmp
3195 return value used for simulator restart from 0 to 2.
3196
3197Wed May 21 08:47:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
3198
3199 * cgen-scache.c (scache_option_handler): Add is_command arg.
3200
3201 * sim-model.c (model_option_handler): Add is_command argument.
3202
3203 * sim-profile.c (profile_option_handler): Add is_command arg.
3204
3205 * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
3206 involved.
3207
3208 * sim-module.c (sim_module_add_init_fn): Call init fn in the same
3209 order that they are registered.
3210
3211 * sim-options.h (OPTION_HANDLER): Add argument to differentiate
3212 between option and command line processing.
3213
3214 * sim-options.c: Include stdlib.h, ctype.h.
3215
3216 * Make-common.in (sim-watch.o): Add rule.
3217 (sim_main_headers): Assume sim-assert.h included.
3218 (sim-*.o): Simplify make rule.
3219
3220 * sim-module.c: Add sim_watch_install to module list.
3221
3222Tue May 20 14:15:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
3223
3224 * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
3225 has been loaded.
3226
3227 * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
3228 * sim-events.c (sim_events_install): Ditto.
3229 * sim-core.c (sim_core_install): Ditto.
3230 * sim-model.c (model_install): Ditto.
3231 * sim-options.c (standard_install): Ditto.
3232 * sim-profile.c (profile_install): Ditto.
3233 * sim-reason.c (sim_stop_reason): Ditto.
3234 * sim-run.c (sim_engine_run): Ditto.
3235 * sim-utils.c (sim_analyze_program): Ditto.
3236
3237 * sim-module.c (modules): Make profile_install and trace_install
3238 optional.
3239
3240 * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
3241
3242 * sim-options.c (standard_option_handler): Set the byte order.
3243
3244 * sim-events.c (sim_events_process): Allow multi tick processing.
3245 (sim_events_tickn): New function - multi cycle tick.
3246
3247 * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
3248 prototypes. Under development.
3249 (sim_events): Replace processing with nr_ticks_to_process.
3250
3251Tue May 20 09:39:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
3252
3253 * nrun.c (main): Pass callbacks to sim_open instead of using
3254 sim_set_callbacks.
3255
3256 * run.c (main): Ditto.
3257
3258Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
3259
3260 * sim-events.c (sim_events_zalloc): Signal save memory allocator -
3261 stop tk interrupting malloc calls.
3262 (sim_events_zalloc): Converse.
3263
3264 * Make-common.in (sim_main_headers): Add sim-events.h.
3265
3266 * sim-events.c (sim_events_schedule_after_signal): Change return
3267 type to void - signal events are strictly internal.
3268 (sim_events_init): Allocate a finite buffer for signal events.
3269 (sim_events_schedule_after_signal): Enter signal events into the
3270 signal buffer.
3271
3272 * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
3273 (sim_engine_restart): Ditto.
3274 (sim_engine_abort): Ditto.
3275 * sim-stop.c (sim_stop): Ditto.
3276 (control_c_simulation): Ditto.
3277 * sim-resume.c (sim_resume): Ditto.
3278 (has_stepped): Ditto.
3279 * sim-abort.c (sim_engine_abort): Ditto.
3280
3281 * sim-basics.h (transfer_type): New type.
3282
3283 * sim-core.c (sim_core_signal): New function. Print core signal
3284 information.
3285 (sim_core_find_mapping): Add transfer argument.
3286
3287 * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
3288 SIM_CORE_SIGNAL if a recoverable abort.
3289 * sim-core.c (sim_core_find_mapping): Ditto.
3290
3291Fri May 16 15:13:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
3292
3293 * sim-core.c (sim_core_find_mapping): Replace calls to
3294 sim_io_error to more resiliant sim_engine_abort.
3295
3296 * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
3297 (sim_core_write_unaligned_N): Ditto.
3298
3299Tue May 13 13:50:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
3300
3301 * sim-module.c: Add sim_events_install to list.
3302
3303 * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
3304 from sim_core_*.
3305 (sim_events_init): Now returns SIG_RC.
3306
3307 * sim-run.c: New file. Generic sim_engine_run.
3308 * sim-reason.c: New file. Generic sim_stop_reason.
3309 * sim-stop.c: New file. Generic sim_stop.
3310 * sim-resume.c: New file. Generic sim_resume.
3311
3312 * Make-common.in (sim-engine.o): Add rule.
3313 (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
3314
3315 * sim-engine.h, sim-engine.c: New file. Provide generic
3316 implementation of sim_engine_halt, sim_engine_error. et.al.
3317
3318 * sim-base.h (sim_state_base): Add member halt.
3319 (sim-engine.h): Include.
3320
3321 * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
3322 handlers.
3323 * sim-events.c (sim_events_poll): Update event handler.
3324
3325Tue May 13 09:57:49 1997 Andrew Cagney <cagney@b2.cygnus.com>
3326
3327 * sim-events.h, sim-events.c (sim_events_watch_clock): New
3328 function.
3329 (sim_events_watch_sim): New function.
3330 (sim_events_watch_core): New function.
3331 (sim_watch_valid): New function.
3332 (sim_events_preprocess): New function.
3333 (sim_events_process): Process the watchpoints as well as the timer
3334 queue.
3335 (sim_events_tick): Check WORK_PENDING instead of the hold queue.
3336 (sim_events_deschedule): Check all the queues when removing an
3337 event.
3338 (sim_events_init): Ditto for cleaning.
3339
3340Mon May 19 12:07:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
3341
3342 * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
3343
3344Mon May 19 11:23:03 1997 Andrew Cagney <cagney@b1.cygnus.com>
3345
3346 * callback.c (os_open): Type of arg flags is int.
3347
3348Fri May 16 22:26:43 1997 Michael Meissner <meissner@cygnus.com>
3349
3350 * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
3351 just like normal numbers as per IEEE rules.
3352
3353Wed May 14 21:20:38 1997 Bob Manson <manson@charmed.cygnus.com>
3354
3355 * callback.c (os_close): Mark the descriptor as being
3356 available if the close succeeded.
3357 (os_open): Pass 0644 as the mode of the file being created.
3358
3359Thu May 15 10:58:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
3360
3361 * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
3362 float.
3363
3364 * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
3365 * sim-lnline.h: Update.
3366
3367 * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
3368 conversion functions.
3369 (sim_fpu_to{32,64}[iu]): New fp2int functions.
3370
3371 * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
3372 compare functions. Replacing.
3373 (sim_fpu_cmp): This. Delete.
3374
3375Mon May 12 14:49:05 1997 Andrew Cagney <cagney@b1.cygnus.com>
3376
3377 * sim-core.c (sim_core_find_mapping): Call engine_error not
3378 sim_io_error when possible.
3379
3380Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b2.cygnus.com>
3381
3382 * sim-endian.h (V1_H2): Add macro's to insert a word into a
3383 high/low double word.
3384
3385 * sim-trace.h: Remove definition of attribute - defined in
3386 sim_basics.h.
3387
3388Mon May 12 08:55:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
3389
3390 * sim-options.h (struct OPTION): Add doc_opt as the documenting
3391 name of the option - or family of options.
3392
3393 * sim-options.c (sim_args_command): Match command `a-b c' with
3394 option `--a-b-c' from option table.
3395
3396Thu May 8 12:40:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
3397
3398 * sim-options.c (sim_print_help): For optional arguments, wrap
3399 them in [].
3400
3401 * sim-trace.c (set_trace_options): New function, handle optional
3402 argument and multiple assignment.
3403 (trace_option_handler): Update.
3404
3405 * sim-trace.c (trace_option_handler): Trace branch and not fpu
3406 when branch tracing selected.
3407
3408Wed May 7 15:19:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
3409
3410 * sim-trace.c (trace_one_insn): Make a va-args function.
3411
3412 * sim-trace.c (trace_vprintf): New function, va-arg version of
3413 trace_printf.
3414
3415Tue May 6 16:38:16 1997 Doug Evans <dje@canuck.cygnus.com>
3416
3417 * sim-trace.c (trace_uninstall): Don't close a file twice.
3418 * sim-profile.c (profile_uninstall): Likewise.
3419
3420Tue May 6 06:14:01 1997 Mike Meissner <meissner@cygnus.com>
3421
3422 * sim-trace.c (toplevel): Include bfd.h.
3423 (trace_options): Note that --trace-linenum also turns on
3424 --trace-insn. Add --trace-{branch,semantics}.
3425 (trace_option_handler): If --trace-linenum, also turn on
3426 --trace-insn. Add --trace-branch support. If --trace-semantics,
3427 turn on ALU, FPU, branch, and memory tracing.
3428 (trace_one_insn): New function to trace an instruction. Support
3429 --trace-linenum.
3430 (OPTION_TRACE_*): Use an enum, rather than lots of defines.
3431
3432 * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
3433 (MAX_TRACE_VALUES): Use 32, not 12 by default.
3434 (TRACE_branch): Add new mask.
3435 (TRACE_*_P): Define all possible trace_p macros.
3436 (trace_one_insn): Declare function.
3437
3438Mon May 5 14:08:34 1997 Mike Meissner <meissner@cygnus.com>
3439
3440 * sim-trace.h (__attribute__): Define as nothing if not GNU C or
3441 GNU C doesn't support __attributes__.
3442 ({trace,debug}_printf): Add attribute's so -Wformat can check the
3443 format strings.
3444
3445Mon May 5 11:16:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
3446
3447 * sim-config.h (FORCED_ALIGNMENT): New alignment option -
3448 addresses are masked forcing them to be correctly aligned.
3449 (WITH_ALIGNMENT): Make NONSTRICT_ALIGNMENT the default.
3450 * sim-config.c (config_alignment_to_a): Update.
3451
3452 * sim-core.h (sim_cpu_core): New data type contains cpu specific
3453 core data.
3454 * sim-base.h (CPU_CORE): Add cpu specific core data to cpu base
3455 type.
3456 * sim-core.c (sim_core_attach): Add CPU argument. Ready for
3457 processor specific core maps.
3458 (sim_core_map_attach): Copy the core map data to each of the
3459 processor specific core data structures.
3460 * sim-core.c (sim_core_find_mapping): Update.
3461
3462 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Rename.
3463 (sim_core_write_aligned_N, sim_core_write_aligned_N): New names.
3464 (sim_core_write_unaligned_N, sim_core_write_unaligned_N): New
3465 alternatives that handle unaligned addresses.
3466 (sim_core_{read,write}_{,un}aligned_N): Drop SIM_DESC arg, replace
3467 with just CPU arg.
3468 * cgen-utils.c (sim_disassemble_insn): Update.
3469
3470Mon May 5 13:19:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
3471
3472 * sim-trace.h (TRACE_FPU_IDX): Add Floating-point specific
3473 tracing.
3474
3475 * sim-fpu.h, sim-fpu.c: New files - prototype for generic target
3476 fpu support.
3477
3478 * sim-inline.h, sim-inline.c: Add support for SIM_FPU.
3479
3480Fri May 2 17:59:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
3481
3482 * sim-core.c (sim_core_map_to_str): New function ascii equivalent
3483 to map type.
3484
3485 * sim-n-core.h (sim_core_read_N, sim_core_write_N): Use in trace
3486 statement.
3487
3488Fri May 2 17:28:02 1997 Andrew Cagney <cagney@b2.cygnus.com>
3489
3490 * cgen-trace.c: Prepend additional trace_printf argument.
3491
3492 * cgen-utils.c (sim_disassemble_insn): Add additional core
3493 arguments.
3494
3495Fri May 2 11:40:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
3496
3497 * nrun.c (main): Catch/report errorenous simulator states.
3498
3499 * sim-module.c: #include "libiberty.h" so that xmalloc is defined.
3500 * sim-trace.c: #include string.h/strings.h so that memset is
3501 defined.
3502 * sim-utils.c: Ditto.
3503 * sim-profile.c: Ditto. And stdlib.h.
3504 (print_bar): Only define when used by instruction or memory profiler.
3505
3506 * sim-options.c (standard_option_handler): Make ul more local.
3507
3508 * sim-load.c (sim_load_file): Make the name constant.
3509 (sim_load_file): Passify gcc.
3510
3511 * sim-utils.h: New file, pre-declare utilites in corresponding .c
3512 file.
3513 * sim-utils.c, sim-load.c: Include sim-utils.h.
3514
3515 * sim-base.h (sim_cpu): Pre define here so available to all.
3516
3517 * sim-core.h (DECLARE_SIM_CORE_WRITE_N, DECLARE_SIM_CORE_READ_N):
3518 Restore the sim_cpu and instruction_address arguments so that full
3519 information is available to the abort function.
3520 * sim-core.c (sim_core_find_mapping, sim_core_write_buffer): Ditto.
3521 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
3522
3523 * sim-trace.h, sim-trace.c (trace_option_handler): Add interim
3524 tracing support for sim-events and sim-core.
3525 (trace_option_handler): Convert #if to if where possible so always
3526 compiled/checked by C compiler.
3527 * sim-n-core.h (sim_core_write_N, sim_core_read_N): Update.
3528
3529 * sim-base.h: Adjust comment documenting how to define the cpu
3530 structure.
3531 (sim_state_base): Add sim_core and sim_events to simulator base
3532 object.
3533
3534 * sim-trace.h, sim-trace.c (trace_printf): Add SIM_DESC argument.
3535 * sim-core.c (sim_core_init, sim_core_attach,
3536 sim_core_find_mapping): Update.
3537 * sim-events.c (ETRACE, sim_events_init, sim_events_time,
3538 update_time_from_event, insert_sim_event,
3539 sim_events_schedule_after_signal, sim_events_deschedule,
3540 sim_events_tick): Ditto.
3541
3542 * sim-basics.h (sim-module.h, sim-trace.h, sim-profile.h,
3543 sim-model.h): Move #includes from here.
3544 * sim-base.h: To here.
3545 (sim-core.h, sim-events.h, sim-io.h): Include also
3546
3547Wed Apr 30 15:37:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
3548
3549 * callback.c (default_callback): Missing initialisers.
3550
3551Thu May 1 10:40:47 1997 Doug Evans <dje@canuck.cygnus.com>
3552
3553 * sim-utils.c (sim_add_commas): New function.
3554 * sim-basics.h (sim_add_commas): Add prototype.
3555 * cgen-scache.c (scache_print_profile): Print commas in numbers.
3556 * sim-profile.c (COMMAS): New macro.
3557 (print_*): Use it to print commas in numbers.
3558
3559 * configure: Regenerated.
3560
3561 * cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
3562 (cgen_state): New member run_fast_p.
3563 (cgen_init): Add prototype.
3564 (sim_disassemble_insn): New arg `cpu'.
3565 * cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
3566 * cgen-utils.c (cgen_init): New function.
3567 (sim_disassemble_insn): New arg `cpu'. Rewrite fetching of insn.
3568 * genmloop.sh: Call engine_halt if loop exits.
3569
3570 * Makefile.in (sim-options_h): Define.
3571 (sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
3572 (sim-model.o): Add new rule.
3573 (cgen-{scache,trace,utils}.o): Add new rules.
3574 * aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
3575 * cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
3576 Indent output by 2 spaces.
3577 * cgen-scache.h (scache_print_profile): Update.
3578 * cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
3579 Use trace_printf, not fprintf.
3580 (trace_extract): Use trace_printf, not cgen_trace_printf.
3581 * genmloop.sh (!FAST case): Increment `insn_count'.
3582 * sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
3583 (sim_cpu_base): Rename member `sd' to `state' to be consistent with
3584 access macro's name.
3585 * sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
3586 Change return type to SIM_RC.
3587 (sim_core_{install,uninstall}): New functions.
3588 * sim-core.h (sim_core_{install,uninstall}): Declare.
3589 (sim_core_init): Use EXTERN_SIM_CORE to define it.
3590 Change return type to SIM_RC.
3591 * sim-model.h (models,machs,model_install): Declare.
3592 * sim-module.c (modules): Add scache_install, model_install.
3593 (sim_post_argv_init): Set cpu->state backlinks.
3594 * sim-options.c (standard_options): Delete --simcache-size,--max-insns.
3595 (standard_option_handler): Likewise.
3596 * sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
3597 sim-profile.h.
3598 (*): Assume ANSI C.
3599 (profile_options): Delete --profile-simcache.
3600 (profile_option_handler): Likewise.
3601 (profile_print_insn): Change `sd' arg to `cpu'. Indent output 2
3602 spaces.
3603 (profile_print_{memory,model}): Likewise.
3604 (profile_print_simcache): Delete.
3605 (profile_print_speed): New function.
3606 (profile_print): Rewrite.
3607 * sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
3608 (WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
3609 (PROFILE_DATA): Delete members simcache_{hits,misses}.
3610 (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
3611 (PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
3612 (profile_print): Update prototype.
3613
3614Wed Apr 30 11:34:14 1997 Doug Evans <dje@canuck.cygnus.com>
3615
3616 * cgen-scache.[ch], cgen-sim.h: New files.
3617 * cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
3618 * sim-model.c: New file.
3619
3620 * Make-common.in (clean targets): Undo patch of Apr. 22.
3621
3622Fri Apr 25 15:28:32 1997 Mike Meissner <meissner@cygnus.com>
3623
3624 * sim-n-bits.h (signed): If we have a standard compiler, undef
3625 signed, so that signedN is defined correctly.
3626
3627Thu Apr 24 00:00:07 1997 Doug Evans <dje@canuck.cygnus.com>
3628
3629 * sim-module.h, sim-model.h, sim-profile.h: New files.
3630 * sim-module.c, sim-profile.c: New files.
3631 * Make-common.in (SIM_PROFILE): Define
3632 (CONFIG_CFLAGS): Add $(SIM_PROFILE).
3633 (sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
3634 (sim_module.o,sim-profile.o): Add rules for.
3635 * aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
3636 (--enable-sim-profile): Add.
3637 * configure: Regenerated.
3638 * sim-base.h (sim_state_base): New members init_list, uninstall_list,
3639 model. Move trace and profile support to sim-{trace,profile}.h.
3640 New members trace_data, profile_data.
3641 * sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
3642 * sim-config.h: Provide default definition of WITH_PROFILE.
3643 (WITH_TRACE): Change default to -1.
3644 (MAX_NR_PROCESSORS): Always define.
3645 * sim-options.c: Move trace and profile support to
3646 sim-{trace,profile}.h.
3647 (sim_pre_argv_init): Moved to sim-model.c.
3648 (standard_install): New function.
3649 * sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
3650 (standard_install): Declare.
3651 * sim-trace.c: Tracing option handling moved here from sim-options.c.
3652 (trace_install, trace_uninstall): New functions.
3653 (trace_printf): Update reference to TRACE_FILE.
3654 * sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
3655 (TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
3656 (WITH_TRACE_FOO_P): Define.
3657 (trace_install): Declare.
3658 (TRACE_DATA): New struct.
3659
3660Wed Apr 23 17:23:15 1997 Doug Evans <dje@canuck.cygnus.com>
3661
3662 * run.c: Undo last exec_bfd patch.
3663 (main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
3664
3665Wed Apr 23 17:54:27 1997 Mike Meissner <meissner@cygnus.com>
3666
3667 * run.c (exec_bfd): Add back in.
3668 (main): Set exec_bfd.
3669
3670Tue Apr 22 14:43:46 1997 Doug Evans <dje@canuck.cygnus.com>
3671
3672 * sim-load.c (sim_load_file): #include <stdio.h> for NULL.
3673
3674Wed Apr 23 02:55:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
3675
3676 * sim-events.c (insert_sim_event): Call sim_io_error instead of
3677 less well defined engine_error.
3678 * sim-core.c: Ditto.
3679
3680Tue Apr 22 08:48:16 1997 Stu Grossman (grossman@critters.cygnus.com)
3681
3682 * Make-common.in: Change clean targets to use :: so that other
3683 Makefiles can have their own clean targets.
3684 * sim-load.c (xprintf eprintf): Use ANSI_PROTOTYPES instead of
3685 __STDC__ to control use of stdarg vs. varargs syntax. Some
3686 systems can't use __STDC__, but require stdarg.
3687
3688Fri Apr 18 11:14:43 1997 Doug Evans <dje@canuck.cygnus.com>
3689
3690 * sim-options.c (standard_options): Add --endian.
3691 (standard_option_handler): Likewise.
3692
3693 * nrun.c: #include <signal.h>.
3694 (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
3695 handler that calls sim_stop ().
3696
3697Fri Apr 18 13:11:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
3698
3699 * run.c (main, cntrl_c): Wrap calls to sim_resume in a SIGINT
3700 handler that calls sim_stop (). Simulators may still be
3701 establishing their own handler.
3702
3703 * sim-events.c (sim_events_poll): Rename from
3704 sim_events_at_large_int. Poll IO.
3705
3706 * sim-io.c (sim_io_poll_quit): New function - pass on a polling
3707 request.
3708
3709 * callback.c (os_poll_quit): New function poll for quit signal
3710 where needed.
3711 (default_callback): Include magic number.
3712
3713Thu Apr 17 02:25:11 1997 Doug Evans <dje@canuck.cygnus.com>
3714
3715 * aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
3716 Check for functions getrusage, time.
3717 * sim-basics.h (SIM_ELAPSED_TIME): New typedef.
3718 (sim_elapsed_time_get, sim_elapsed_time_since): Add prototypes.
3719 * sim-utils.c: #include time.h, sys/time.h, sys/resource.h if able.
3720 (sim_elapsed_time_get, sim_elapsed_time_since): New functions.
3721
3722 * sim-utils.c (sim_copy_argv, sim_analyze_program): New functions.
3723
3724 * sim-options.c, sim-options.h: New files.
3725 * sim-config.h (WITH_DEBUG): Provide default value of zero.
3726 * Make-common.in (nrun.o): Add rules for.
3727 * nrun.c: New file.
3728
3729 * run.c (main): Check return value of sim_open.
3730
3731 * Make-common.in (sim-options.o, sim-load.o, sim-trace.o): Add rules.
3732 (sim_main_headers): Add sim-trace.h.
3733 * run.c (exec_bfd, target_byte_order): Delete.
3734 (main): Pass -E <endian> to sim_open. Delete code to load sections,
3735 call sim_load instead. Check return code of sim_create_inferior.
3736 * sim-base.h (CURRENT_STATE): Define.
3737 (sim_state_base): Make typedef. New members options, prog_argv,
3738 prog_bfd, text_{section,start,end}, start_addr, simcache_size,
3739 mem_size, memory [+ corresponding access macros].
3740 (sim_cpu_base): New typedef.
3741 * sim-trace.h: New file.
3742 * sim-trace.c: New file.
3743 * sim-basics.h: #include it.
3744 * sim-load.c: New file.
3745
3746Tue Apr 15 15:10:13 1997 Ian Lance Taylor <ian@cygnus.com>
3747
3748 * Make-common.in (INSTALL): Set to @INSTALL@.
3749 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
3750 (install-common): Depend upon installdirs. Use
3751 $(program_transform_name) directly, rather than using
3752 $(INSTALL_XFORM).
3753 (installdirs): New target.
3754 * Makefile.in (INSTALL): Set to @INSTALL@.
3755 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
3756 (install-man): Depend upon installdirs. Use
3757 $(program_transform_name) directly, rather than using
3758 $(INSTALL_XFORM).
3759 (installdirs): New target.
3760
3761Tue Apr 15 15:08:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
3762
3763 * sim-assert.h (SIM_ASSERT, ASSERT): Allow these macros to
3764 be overriden.
3765
3766Wed Apr 9 16:06:44 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3767
3768 * sim-basics.h: Only bring in config.h and tconfig.h if
3769 HAVE_CONFIG_H.
3770
3771Mon Apr 7 11:39:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3772
3773 * sim-config.h (WITH_TARGET_WORD_MSB): New Macro. Define the bit
3774 numbering convention of the target.
3775 * sim-config.c (print_sim_config): Print WITH_TARGET_WORD_BITSIZE
3776 and WITH_TARGET_WORD_MSB.
3777 (sim_config): When possible, check for consistency with bitsize
3778 and msb.
3779
3780 * sim-bits.h: Allow MSB to be other than zero.
3781 * sim-bits.c: Ditto.
3782 * sim-n-bits.h: Ditto.
3783
3784 * sim-bits.h (MSMASK*): New macros - converce to LSMASK*.
3785 * sim-n-bits.h (MSMASKEDn): Ditto.
3786
3787Mon Apr 14 16:29:21 1997 Ian Lance Taylor <ian@cygnus.com>
3788
3789 * Makefile.in (INSTALL): Change install.sh to install-sh.
3790
3791Mon Apr 7 10:46:38 1997 Doug Evans <dje@canuck.cygnus.com>
3792
3793 * sim-base.h (sim_state_base): Move `magic' to end of struct.
3794
3795Mon Apr 7 15:53:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3796
3797 * run.c (main): Check that a program to run was specified.
3798
3799Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3800
3801 * aclocal.m4 (AC_TYPE_SIGNAL): Add check.
3802
3803 * configure: Regenerated to track ../common/aclocal.m4 changes.
3804 * config.in: Ditto.
3805
3806Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
3807
3808 * sim-endian.h: Move host {LITTLE,BIG}_ENDIAN support from here,
3809 * sim-config.h: To here.
3810
3811 * Make-common.in (SIM_EXTRA_DEPS): New config var.
3812 (sim_main_headers): Define.
3813 (sim-*.o): Depend on $(SIM_EXTRA_DEPS).
3814 (BUILT_SRC_FROM_COMMON): Move here from ../d30v/Makefile.in.
3815 (clean): Use it.
3816 (sim-utils.o): Add rule for.
3817 * sim-utils.o: New file.
3818 * sim-basics.h: #include sim-base.h.
3819 (zalloc): Make argument unsigned long.
3820 * sim-base.h: New file.
3821 * sim-inline.h (SIM_IO support): Delete.
3822 * sim-io.h: Delete inline support.
3823 * sim-io.c: Likewise. sim-state.h renamed to sim-main.h.
3824 * sim-config.c: sim-state.h renamed to sim-main.h.
3825 * sim-core.c: Likewise.
3826 * sim-events.c: Likewise.
3827
3828 * run.c (main): Pass SIM_OPEN_STANDALONE to sim_open.
3829
3830 * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
3831 (sim-debug): Allow arguments. Define WITH_DEBUG in addition to
3832 -DDEBUG.
3833 * configure: Regenerated to track ../common/aclocal.m4 changes.
3834
3835Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3836
3837 * configure: Regenerated to track ../common/aclocal.m4 changes.
3838
3839Wed Apr 2 11:08:11 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3840
3841 * sim-config.h (WITH_ALIGNMENT, WITH_FLOATING_POINT,
3842 WITH_XOR_ENDIAN, WITH_SMP, WITH_RESERVED_BITS): Assume that these
3843 are defined by the configure.
3844
3845 * aclocal.m4 (sim-stdio): Add option stdio from ../ppc configure.
3846
3847 * aclocal.m4 (floating-point, xor-endian, alignment, smp,
3848 reserved-bits): Always define.
3849
3850 * sim-config.h, sim-config.c (sim_config): New function - and new
3851 file - co-ordinate the setting/checking of the common simulator
3852 configuration options.
3853
3854 * Make-common.in (sim-config.o): Add rule.
3855
3856Fri Mar 28 15:32:00 1997 Mike Meissner <meissner@cygnus.com>
3857
3858 * callback.c (os_{,e}vprintf_filtered): Change stdarg type to
3859 va_list from void *, since va_list might not be a pointer type.
3860
3861Mon Mar 24 15:27:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3862
3863 * sim-n-endian.h (offset_N): Correct assertion - word and sub word
3864 in wrong order.
3865 (offset_N): Correct computation of LE offset.
3866
3867 * sim-io.c (sim_io_error): Include a new line when reporting
3868 errors.
3869
3870 * sim-assert.h (SIM_FILTER_PATH): Out by one when locating last
3871 `/'.
3872
3873Thu Mar 20 22:31:06 1997 Jeffrey A Law (law@cygnus.com)
3874
3875 * run.c: Include alloca-conf.h.
3876
3877 * callback.c (os_evprintf_filtered): Fix typo.
3878
3879Fri Mar 21 13:36:20 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3880
3881 * run.c (string.h, strings.h, stdlib.h): Include.
3882
3883 * sim-events.c (sim_events_tick): Recent cleanup failed to return
3884 0 when nothing pending.
3885
3886 * run.c (sim_size, sim_trace): Plicate GCC - these two functions
3887 will soon be going away.
3888 (getopt): Plicate GCC.
3889
3890 * sim-endian.c (sim-io.h): Plicate GCC.
3891 * sim-bits.c (sim-io.h): Ditto.
3892 * sim-n-bits.h (ROTn): Ditto.
3893
3894 * sim-io.c (sim_io_error): Correct check for NULL.
3895
3896 * sim-assert.h (SIM_FILTER_PATH): Separate out the code filtering
3897 the __FILE__.
3898 * sim-events.c: Use SIM_FILTER_PATH to filter out the filename
3899 path.
3900
3901Wed Mar 19 01:12:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3902
3903 * aclocal.m4 (SIM_AC_OPTION_*: Move so that they are outside of
3904 SIM_AC_COMMON - SIM_AC_COMMON was gobling arguments.
3905
3906Tue Mar 18 20:48:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3907
3908 * sim-alu.h: Include sim-xcat.h.
3909
3910Tue Mar 18 13:58:18 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3911
3912 * Make-common.in (sim-bits.c, sim-core.c, sim-endian.c,
3913 sim-events.c, sim-inline.c, sim-io.c): Define rules for building
3914 these.
3915
3916 * sim-events.c (sim_events_at_large_int): New function. Just
3917 schedules an event every large-int ticks.
3918 (sim_events_init): Call.
3919 (sim_events_tick, sim_events_process): Move async handing to
3920 sim_events_process. Move timer decrement so that it occures after
3921 events have been processed.
3922
3923 * sim-basics.h (struct _engine): Remove declaration.
3924
3925 * sim-events.h, sim-events.c: Rename type to sim_events. Prefix
3926 everything with same. Rename global struct to SIM_DESC.
3927 * sim-core.h, sim-core.c, sim-n-core.c: Ditto for sim_core.
3928 * sim-io.h, sim-io.c: Ditto.
3929
3930 * sim-assert.h: New file. Optional assertion checking macros.
3931 * sim-io.c (sim_io_error): Make just this function tolerant to
3932 null pointers.
3933
3934 * sim-xcat.h: New file. Define concatenate macros.
3935 * sim-basics.h (XCONCAT*): Move to sim-xcat.h.
3936 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Explicitly include
3937 concat macros.
3938
3939
3940Tue Mar 18 12:44:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3941
3942 * sim-bits.h (LSMASK): New macro. Create mask of LS bits.
3943
3944Mon Mar 17 18:10:05 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3945
3946 * sim-inline.h: Add definitions for sim-types.
3947 (ALL_BY_MODULE): New macro, encapsulate full inlining by the
3948 module.
3949
3950Mon Mar 17 15:38:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3951
3952 * sim-events.h: Remove defunct reference to callback struct.
3953
3954Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3955
3956 * configure: Re-generate.
3957
3958Mon Mar 17 15:04:47 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3959
3960 * Make-common.in (CSEARCH): Do not include the gdb directory in
3961 the search path.
3962
3963Mon Mar 17 13:16:26 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3964
3965 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
3966 SIM_WARNING): Drop, requiring the simulator specific Makefile.in
3967 to explicitly incorporate these.
3968
3969 * aclocal.m4 (--enable-sim-alignment); New option. Strongly
3970 specify the alignment restrictions of the target architecture -
3971 without this option all alignment restrictions are accomodated.
3972 (--enable-sim-assert): New option. Conditionally compile in
3973 assertion statements.
3974 (--enable-sim-float): New option. Strongly specify the target's
3975 floating point support.
3976 (--enable-sim-hardware): New option. Specify the hardware devices
3977 included in the simulation.
3978 (--enable-sim-packages): New option. Specify the hardware
3979 packages included in the simulation.
3980 (--enable-sim-regparm): New option. Specify that parameters be
3981 passed in registers instead of on the stack.
3982 (--enable-sim-reserved-bits): New option. Specify that reserved
3983 bits within an instruction are are correctly set.
3984 (--enable-sim-smp): New option. Specify the level of SMP support
3985 to be included in the simulator.
3986 (--enable-sim-stdcall): New option. Specify an alternative
3987 function call convention.
3988 (--enable-sim-xor-endian): New option. Configure xor-endian
3989 support used by some targets to implement bi-endian support.
3990
3991Fri Mar 14 19:51:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
3992
3993 * aclocal.m4 (--enable-sim-hostendian): New option. Allow the
3994 host endianness to be overridden.
3995 (--enable-sim-endian): Allow the target platform's byte order
3996 to be overridden.
3997 (--enable-sim-inline): Control the inlining of common components.
3998 (--enable-sim-bswap): For compatibility, also define WITH_BSWAP.
3999 (--enable-sim-warnings): Enable additional GCC compiler checks.
4000 * Make-common.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_INLINE,
4001 SIM_WARNINGS): Add.
4002
4003 * sim-n-core.h, sim-n-bits.h, sim-n-endian.h: Rename from
4004 sim-*-n.h so that the names are uniq on dos machines
4005 * sim-core.c, sim-bits.c, sim-endian.c: Update.
4006
4007Thu Mar 13 12:32:42 1997 Doug Evans <dje@canuck.cygnus.com>
4008
4009 * run.c: #include "libiberty.h".
4010 (main): New locals sd,no_args,sim_argv.
4011 Run buildargv on -a option. Pass argv to sim_open, argv[0]
4012 is program name. Update call to sim_set_callbacks.
4013 Record result of sim_open, pass to other sim_foo routines.
4014
4015Thu Mar 13 10:24:05 1997 Michael Meissner <meissner@cygnus.com>
4016
4017 * callback.c (os_printf_filtered): Do not call exit(1) or print a
4018 final newline.
4019
4020Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4021
4022 * callback.c: Add os_flush_stdout and vprintf_filtered callbacks.
4023 Route stdout through buffered IO.
4024
4025 * callback.c: Add os_flush_stderr, os_write_stderr,
4026 os_evprintf_filtered functions to route error output through
4027 stderr.
4028
4029 * sim-io.h, sim-io.c (sim_io_flush_stderr, sim_io_flush_stdout):
4030 Correct return type - should be void.
4031
4032Fri Mar 7 20:14:37 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4033
4034 * sim-basics.h: Clean up. Many macro's moved to sim-inline.h.
4035
4036 * sim-config.h: Ditto. For some options - eg WITH_DEVICES - do
4037 not provide a default value as undefined indicates disable code.
4038
4039Thu Mar 6 15:50:28 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4040
4041 * sim-core.h, sim-core-n.h, sim-core.c: Borrow code from ppc
4042 directory.
4043 * sim-events.h, sim-events.c: Ditto.
4044 * sim-io.h, sim-io.c: Ditto.
4045
4046Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4047
4048 * sim-alu.h (ALU_SUB_CA, ALU*_SUB_CA): New alu operation.
4049
4050 * sim-bits.h, sim-bits-n.h, sim-bits.c (LSMASKED*): New macro's
4051 extract the tail or least signifiant bits from an integer of the
4052 specified size.
4053
4054 * sim-bits.h, sim-bits.c: Clean up conditionally compiled #if
4055 WITH_TARGET_BITSIZE so that the compilation will fail when an
4056 unsupported bitsize value is defined.
4057
4058 (INSERTED*): Convert to functions.
4059 (EXTRACTED*): Ditto.
4060
4061 (SIGN_EXTEND, SEXT): Change to more terse name.
4062
4063Tue Mar 4 09:35:56 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4064
4065 * sim-inline.h: Allow explicit control over which .c files will be
4066 included by their header.
4067
4068 * sim-inline.h: Allow explicit control over which .c files use the
4069 alternative - REGPARM - parameter passing mechanism.
4070
4071 * sim-inline.h, sim-inline.c: Don't attempt to include any of
4072 icache.c, idecode.c, semantics.c or support.c. Those names are
4073 not generally applicable.
4074
4075Thu Feb 27 10:17:23 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4076
4077 * sim-bits.c, sim-bits-n.h (new): Split sim-bits.c into two parts
4078 in a fashion similar to sim-endian-n.
4079
4080 * sim-endian.h: (H_word, L_word, AL_*, VL_*): Extend to include
4081 both value and address macro's.
4082
4083Tue Feb 25 18:51:57 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
4084
4085 * sim-alu.h (ALU16_BEGIN, ALU16_SET, ...): Fill in.
4086
4087 * sim-endian.h (L_word, H_word): Replace MS2W_4, LS2W_4 with more
4088 generic L_word, H_word macro's.
4089
4090Thu Feb 20 18:36:55 1997 Andrew Cagney <cagney@critters.cygnus.com>
4091
4092 * sim-basics.h: Borrow code from ppc directory.
4093 * sim-bits.c: Ditto.
4094 * sim-bits.h: Ditto.
4095 * sim-config.h: Ditto.
4096 * sim-endian-n.h: Ditto.
4097 * sim-endian.c: Ditto.
4098 * sim-endian.h: Ditto.
4099 * sim-inline.c: Ditto.
4100 * sim-inline.h: Ditto.
4101 * sim-types.h: Ditto.
4102
4103Wed Feb 19 12:40:50 1997 Andrew Cagney <cagney@critters.cygnus.com>
4104
4105 * sim-alu.h (ALU_SET16, ALU_SET32, ALU_SET64, etc): Make available
4106 all the ALU size alternatives and then auto-configure a default.
4107
4108 * sim-alu.h: Copy ppc/idecode_expression.h.
4109
4110Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
4111
4112 * bits.h, bits.c (SIGN_EXTEND32, SIGN_EXTEND64): New functions,
4113 sign extend a bit within a value.
4114
4115 * sim-endian.h, sim-endian-n.h (offset_N): New functions - return
4116 a pointer into the middle of a host word.
4117 * sim-endian.h (MS2W_4, LS2W_4): Use this function.
4118
4119Tue Feb 11 13:46:49 1997 Michael Meissner <meissner@tiktok.cygnus.com>
4120
4121 * callback.c: If HAVE_CONFIG_H is defined, include config.h from
4122 autoconf. If HAVE_UNISTD_H is defined, include unistd.h to get
4123 appropriate definitions of read, write, etc. Add prototype for
4124 system.
4125
4126Tue Feb 4 13:24:44 1997 Doug Evans <dje@canuck.cygnus.com>
4127
4128 * Makefile.in (libcommon.a): Delete.
4129 (callback.o,targ-map.o): Delete, moved to Make-common.in.
4130 (gentmap,targ-vals.h,targ-map.c): Likewise.
4131 (run-autoconf): Delete.
4132 * aclocal.m4 (SIM_AC_OUTPUT): Redo creation of Makefile.
4133 (common makefile fragment): Moved back into ...
4134 * Make-common.in: Resurrect.
4135 * configure.in (AC_LINK_FILES): Delete, unnecessary now.
4136 * configure: Regenerated.
4137
4138Fri Jan 31 07:16:49 1997 Doug Evans <dje@canuck.cygnus.com>
4139
4140 * aclocal.m4 (SIM_AC_COMMON): Move COMMON_MAKEFILE_FRAG from here.
4141 (SIM_AC_OUTPUT): To here.
4142
4143Fri Jan 24 10:37:17 1997 Stu Grossman (grossman@critters.cygnus.com)
4144
4145 * aclocal.m4 (COMMON_MAKEFILE_FRAG): Quote a couple of $'s in
4146 comments and single quotes. Fixes a problem found on hpux.
4147
4148Thu Jan 23 13:35:03 1997 Stu Grossman (grossman@critters.cygnus.com)
4149
4150 * aclocal.m4: Remove Make-common.in from dependencies.
4151 * (distclean): Remove targ-vals.def.
4152
4153 * aclocal.m4 (SIM_AC_COMMON): Move contents of Make-common.in
4154 into here. Makes insertion into makefiles easier. Also, change
4155 the way that callback.o, gentmap, targ-vals.h, targ-map.c,
4156 targ-map.o, and run are built. They are now built in the
4157 individual simulator directories, taking sources from ../common as
4158 necessary. This replaces the merging of libcommon.a into
4159 linsim.a, which was problematic for the WinGDB build process.
4160 * run.c: Include config.h from . instead of ../common.
4161 * Make-common.in: Remove. It's no longer necessary.
4162
4163Mon Dec 16 15:02:33 1996 Ian Lance Taylor <ian@cygnus.com>
4164
4165 * Make-common.in (ALL_CLAGS): Put CFLAGS at the end.
4166 (.c.o): Put $(ALL_CFLAGS) before the file being compiled.
4167
4168Wed Dec 11 11:30:58 1996 Jim Wilson <wilson@cygnus.com>
4169
4170 * run.c (main): Set target_byte_order before call to sim_open.
4171
4172Sun Dec 8 18:22:06 1996 Doug Evans <dje@canuck.cygnus.com>
4173
4174 * callback.c: #include <stdlib.h>
4175 (os_error): New function.
4176 (default_callback): Add os_error.
4177
4178Mon Nov 25 19:44:35 1996 Doug Evans <dje@canuck.cygnus.com>
4179
4180 * Make-common.in (Makefile): Set CONFIG_HEADERS="".
4181 * aclocal.m4: Mark the fact that --enable-sim-bswap isn't host
4182 specific.
4183 (SIM_AC_OUTPUT): Don't build Makefile if CONFIG_FILES="".
4184
4185Wed Nov 20 01:11:04 1996 Doug Evans <dje@canuck.cygnus.com>
4186
4187 * run.c: #include ../common/config.h, tconfig.h.
4188 (myname): New static global.
4189 (main): Recognize new options -a, -c. Also recognize -h if h8/300.
4190 Only process -c ifdef SIM_HAVE_SIMCACHE.
4191 Only process -p/-s ifdef SIM_HAVE_PROFILE.
4192 Parse program name from argv[0] and use in error messages.
4193 Pass sim_args to sim_open. Pass prog_args to sim_create_inferior.
4194 Add support for incomplete h8/300 termination indicators.
4195 (usage): Make more verbose.
4196 * aclocal.m4,config.in,tconfig.in,configure.in,configure: New files.
4197 * Makefile.in,Make-common.in,callback.c: New files.
4198 * nltvals.def,gentmap.c,gentvals.sh: New files.
4199
4200Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
4201
4202 * run.c: Include stdarg.h if __STDC__.
4203
4204Tue Oct 15 11:16:31 1996 Jeffrey A Law (law@cygnus.com)
4205
4206 * run.c (main): Don't print out anything if the signal
4207 number is zero (ie no signal).
4208
4209Tue Oct 15 11:20:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4210
4211 * run.c (main): Print out if the program raised a signal.
4212
4213Wed Sep 18 09:52:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4214
4215 * run.c (exec_bfd): Rename from sim_bfd, to use the gdb name.
4216 (main): Ditto.
4217
4218Tue Sep 17 11:04:50 1996 James G. Smith <jsmith@cygnus.co.uk>
4219
4220 * run.c (main): Explicitly cast malloc() parameter.
4221
4222Thu Sep 12 11:27:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4223
4224 * run.c (sim_bfd): New global to hold the bfd pointer for the
4225 executable.
4226 (main): Initialize sim_bfd.
4227
4228Fri Dec 15 16:27:49 1995 Ian Lance Taylor <ian@cygnus.com>
4229
4230 * run.c (main): Use new bfd_big_endian macro.
4231
4232Wed Nov 8 15:49:49 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
4233
4234 * run.c (main): Removed SH specific comments, so source is
4235 generic. Also updated to only load relevant sections. Moved
4236 sim_open() to after callback attach (to match GDB).
4237
4238 * run.1: Removed SH specific comments.
4239
4240Sat Oct 21 12:31:01 1995 Jim Wilson <wilson@chestnut.cygnus.com>
4241
4242 * run.c (main): Always return sigrc at end.
4243
4244Tue Oct 10 12:03:13 1995 J.T. Conklin <jtc@rtl.cygnus.com>
4245
4246 * run.c (main): Print error diagnostic and exit if bfd_openr() or
4247 bfd_check_format() fails.
4248
4249Thu Sep 28 15:40:36 1995 steve chamberlain <sac@slash.cygnus.com>
4250
4251 * run.c, run.1: From sh directory.