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