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