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