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