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