demand_copy_C_string NUL check
[binutils-gdb.git] / sim / igen / ChangeLog
1 2021-02-13 Mike Frysinger <vapier@gentoo.org>
2
3 * configure.ac: Replace sinclude with AC_CONFIG_MACRO_DIRS.
4 * configure: Regenerate.
5
6 2021-02-06 Mike Frysinger <vapier@gentoo.org>
7
8 * Makefile.in (LIBIBERTY_LIB): Delete.
9 (igen): Delete $(LIBIBERTY_LIB).
10 * configure.ac (LIBIBERTY_LIB): Delete.
11 * configure: Regenerate.
12
13 2021-02-06 Mike Frysinger <vapier@gentoo.org>
14
15 * configure.ac: Delete bfd/configure.host sourcing.
16 * configure: Regenerate.
17
18 2021-01-11 Mike Frysinger <vapier@gentoo.org>
19
20 * configure.ac (AC_CHECK_HEADERS): Delete stdlib.h, string.h, and
21 strings.h.
22 * configure, configure.ac: Regenerate.
23
24 2021-01-11 Mike Frysinger <vapier@gentoo.org>
25
26 * filter.c, if.c, misc.c, misc.h, table.c: Delete HAVE_STRING_H,
27 HAVE_STRINGS_H, HAVE_STDLIB_H, and strings.h include.
28
29 2021-01-09 Mike Frysinger <vapier@gentoo.org>
30
31 * configure: Regenerate.
32
33 2021-01-04 Mike Frysinger <vapier@gentoo.org>
34
35 * gen-icache.c, igen.c: Include stdlib.h.
36
37 2021-01-04 Mike Frysinger <vapier@gentoo.org>
38
39 * configure: Regenerate.
40
41 2020-07-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
42
43 PR sim/26194
44 * lf.h (lf_get_file_type): Declare.
45 * lf.c (lf_get_file_type): Define.
46 * gen-idecode.c (print_idecode_issue_function_header): Use
47 lf_get_file_type() to issue an extern variable declaration in
48 case of header files.
49
50 2019-12-19 Tom Tromey <tromey@adacore.com>
51
52 PR build/24572:
53 * Makefile.in (install-strip): New target.
54
55 2016-01-10 Mike Frysinger <vapier@gentoo.org>
56
57 * configure: Regenerate.
58
59 2016-01-10 Mike Frysinger <vapier@gentoo.org>
60
61 * configure: Regenerate.
62
63 2016-01-10 Mike Frysinger <vapier@gentoo.org>
64
65 * configure: Regenerate.
66
67 2016-01-10 Mike Frysinger <vapier@gentoo.org>
68
69 * configure: Regenerate.
70
71 2016-01-04 Mike Frysinger <vapier@gentoo.org>
72
73 * configure: Regenerate.
74
75 2015-06-12 Mike Frysinger <vapier@gentoo.org>
76
77 * configure: Regenerate.
78
79 2015-04-24 David Binderman <dcb314@hotmail.com>
80 Nick Clifton <nickc@redhat.com>
81
82 PR 18273
83 * misc.c (a2i): Fix typos checking for uppercase letters.
84
85 2015-04-17 Mike Frysinger <vapier@gentoo.org>
86
87 * gen-engine.c (print_run_body): Change CIA_GET to CPU_PC_GET and
88 CIA_SET to CPU_PC_SET.
89
90 2015-03-31 Mike Frysinger <vapier@gentoo.org>
91
92 * configure: Regenerate.
93
94 2014-11-23 Joel Sherrill <joel.sherrill@oarcorp.com>
95
96 * igen/ld-cache.h, igen/table.h: Change immediatly to immediately.
97
98 2014-03-04 Mike Frysinger <vapier@gentoo.org>
99
100 * configure: Regenerate.
101
102 2013-11-25 Steve Ellcey <sellcey@mips.com>
103
104 * igen/Makefile.in (igen): Use BUILD_CFLAGS in link.
105
106 2013-05-10 Freddie Chopin <freddie_chopin@op.pl>
107
108 * configure: Rebuild.
109
110 2012-03-24 Mike Frysinger <vapier@gentoo.org>
111
112 * configure: Regenerate.
113
114 2011-10-17 Mike Frysinger <vapier@gentoo.org>
115
116 * configure.ac: Change include to common/acinclude.m4.
117
118 2011-10-17 Mike Frysinger <vapier@gentoo.org>
119
120 * configure.ac: Change AC_PREREQ to 2.64. Delete AC_CONFIG_HEADER
121 call. Replace common.m4 include with SIM_AC_COMMON.
122 * configure: Regenerate.
123
124 2011-07-08 Hans-Peter Nilsson <hp@axis.com>
125
126 * ld-insn.c (print_insn_words): For fields, print conditionals.
127
128 Correct handling of constant named fields.
129 * gen.c (insn_field_cmp): Tweak comment about neither field
130 being an insn_field_string with a cond_eq-to-value condition.
131 (insns_bit_useless) <case insn_field_string, case
132 decode_find_mixed>: Handle cond_eq-to-value fields as
133 insn_field_int.
134 * gen-idecode.c (print_idecode_validate): Handle
135 insn_field_string cond-equal-to-value fields as insn_field_int.
136 * gen-icache.c (print_icache_body): Add comment why constant
137 string fields are handled.
138
139 Remove all #if 0'd code.
140 * filter.c: Remove #if 0'd function it_is.
141 (main): Remove #if 0'd code.
142 * gen-engine.c: Remove #if 0'd functions print_jump,
143 print_jump_insn, print_jump_definition,
144 print_jump_internal_function, print_jump_body.
145 (gen_engine_c): Remove #if 0'd code.
146 * gen-idecode.c: Remove #if 0'd functions print_jump print_jump,
147 print_jump_insn, print_jump_definition,
148 print_jump_internal_function, print_jump_until_stop_body.
149 * gen-model.c: Remove #if 0'd functions model_c_or_h_data,
150 model_c_or_h_function, gen_model_h, model_c_insn,
151 model_c_function, gen_model_c and types model_c_passed_data
152 and struct _model_c_passed_data.
153 * gen.c: Remove #if 0'd type constant_field_types and function
154 insn_field_is_constant.
155 (gen_entry_find_opcode_field): Remove #if 0'd code.
156 * ld-insn.c (parse_insn_model_record): Remove #if 0'd code.
157 * misc.h (STRDUP, STRNDUP): Remove #if 0'd macros.
158
159 2011-02-14 Mike Frysinger <vapier@gentoo.org>
160
161 * table.c (table_push): Change zfree to free.
162
163 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
164
165 * config.in: Regenerate.
166 * configure: Likewise.
167
168 * configure: Regenerate.
169
170 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
171
172 * Makefile.in (datarootdir): New variable.
173
174 2008-08-28 Joel Brobecker <brobecker@adacore.com>
175
176 * compare_igen_models: Change license to GPL version 3.
177
178 2007-08-27 Joel Brobecker <brobecker@adacore.com>
179
180 * lf.c (lf_print__gnu_copyleft): Change license to GPL version 3.
181
182 2006-12-21 Hans-Peter Nilsson <hp@axis.com>
183
184 * acconfig.h: Remove.
185 * config.in: Regenerate.
186
187 2005-01-11 Andrew Cagney <cagney@localhost.localdomain>
188
189 * configure.ac: Delete AC_CONFIG_AUX_DIR.
190 * configure: Re-generate.
191
192 2005-01-07 Andrew Cagney <cagney@gnu.org>
193
194 * configure.ac: Rename configure.in, require autoconf 2.59.
195 * configure: Re-generate.
196
197 2003-05-03 Chris Demetriou <cgd@broadcom.com>
198
199 * compare_igen_models: Tweak attribution slightly.
200
201 2002-11-22 Andrew Cagney <cagney@redhat.com>
202
203 * gen.c (name_cmp): Rename format_name_cmp.
204 (insn_list_insert): When a merge, compare the format name and
205 instruction name. Add trace messages.
206
207 2002-11-21 Andrew Cagney <ac131313@redhat.com>
208
209 * filter.c: Re-indent.
210 * filter.h, filter_host.h, gen-engine.c, gen-engine.h: Ditto.
211 * gen-icache.c, gen-icache.h, gen-idecode.c: Ditto.
212 * gen-idecode.h, gen-itable.c, gen-itable.h: Ditto.
213 * gen-model.c, gen-model.h, gen-semantics.c: Ditto.
214 * gen-semantics.h, gen-support.c, gen-support.h: Ditto.
215 * gen.c, gen.h, igen.c, igen.h, ld-cache.c, ld-cache.h: Ditto.
216 * ld-decode.c, ld-decode.h, ld-insn.c, ld-insn.h, lf.c: Ditto.
217 * lf.h, misc.c, misc.h, table.c, table.h: Ditto.
218
219 2002-11-21 Andrew Cagney <ac131313@redhat.com>
220
221 * Makefile.in: Update copyright. IGEN contributed to the FSF.
222 * filter.c, filter.h, filter_host.c, filter_host.h: Ditto.
223 * gen-engine.c, gen-engine.h, gen-icache.c, gen-icache.h: Ditto.
224 * gen-idecode.c, gen-idecode.h, gen-itable.c: Ditto.
225 * gen-itable.h, gen-model.c, gen-model.h, gen-semantics.c: Ditto.
226 * gen-semantics.h, gen-support.c, gen-support.h, gen.c: Ditto.
227 * gen.h, igen.c, igen.h, ld-cache.c, ld-cache.h: Ditto.
228 * ld-decode.c, ld-decode.h, ld-insn.c, ld-insn.h, lf.c: Ditto.
229 * lf.h, misc.c, misc.h, table.c, table.h: Ditto.
230
231 2002-11-06 Richard Sandiford <rsandifo@redhat.com>
232
233 * gen-engine.c (print_engine_issue_prefix_hook): Don't add the
234 global prefix to ENGINE_ISSUE_PREFIX_HOOK.
235 (print_engine_issue_postfix_hook): Likewise ENGINE_ISSUE_POSTFIX_HOOK.
236
237 2002-08-28 Dave Brolley <brolley@redhat.com>
238
239 * gen-support.c (gen_support_h): Generate
240 '#define semantic_illegal <PREFIX>_semantic_illegal'.
241
242 2002-08-22 Chris Demetriou <cgd@broadcom.com>
243
244 * compare_igen_models: New script.
245
246 2002-06-17 Andrew Cagney <cagney@redhat.com>
247
248 * gen.c (gen_entry_expand_opcode): Initialize ``value'' to -1 and
249 ``t'' to NULL.
250 * igen.c (main): Add default case to switch.
251 * gen-icache.c (print_icache_extraction): Ditto.
252
253 2002-06-17 Andrew Cagney <cagney@redhat.com>
254
255 * Makefile.in (BUILD_CFLAGS): Remove -O0.
256
257 2002-06-16 Andrew Cagney <ac131313@redhat.com>
258
259 * configure: Regenerated to track ../common/aclocal.m4 changes.
260
261 2002-06-03 Richard Henderson <rth@redhat.com>
262
263 * gen-engine.c (print_run_body): Avoid multi-line strings.
264 * lf.c (lf_print__gnu_copyleft): Likewise.
265
266 2002-05-01 Chris Demetriou <cgd@broadcom.com>
267
268 * igen.c: Use 'deprecated' rather than 'depreciated.'
269
270 2002-03-23 Andrew Cagney <ac131313@redhat.com>
271
272 * gen.c (format_name_cmp): New function.
273 (insn_list_insert): Use the instruction field name as an
274 additional key. Different field names indicate different
275 semantics.
276
277 2002-03-07 Chris Demetriou <cgd@broadcom.com>
278
279 * igen.c (print_itrace_format): Add support for a new "%#lx" format.
280
281 Tue May 23 21:39:23 2000 Andrew Cagney <cagney@b1.cygnus.com>
282
283 * configure: Regenerated to track ../common/aclocal.m4 changes.
284
285 2000-04-12 Frank Ch. Eigler <fche@redhat.com>
286
287 * gen-semantics.c (print_semantic_body): Use GPR_CLEAR(N) instead
288 of GPR_SET(N,0) for gen-zero-rN.
289
290 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
291
292 * Makefile.in (SIM_WARNINGS): Replace this with.
293 (IGEN_WERROR_CFLAGS, IGEN_WARN_CFLAGS, WERROR_CFLAGS,
294 WARN_CFLAGS): With these.
295 (BUILD_CFLAGS): Update.
296
297 * configure: Regenerated to track ../common/aclocal.m4 changes.
298
299 1999-05-08 Felix Lee <flee@cygnus.com>
300
301 * configure: Regenerated to track ../common/aclocal.m4 changes.
302
303 Fri Dec 4 15:14:09 1998 Andrew Cagney <cagney@b1.cygnus.com>
304
305 * igen.c (main): Fix -Pitable=.
306
307 * gen-engine.c (print_run_body): Prefix instruction_address.
308
309 Wed Oct 28 18:12:43 1998 Andrew Cagney <cagney@b1.cygnus.com>
310
311 * Makefile.in (SIM_WARNINGS): Update to match ../common/aclocal.m4
312 changes.
313
314 Wed Aug 12 10:55:28 1998 Frank Ch. Eigler <fche@cygnus.com>
315
316 * gen-icache.c (print_icache_extraction): #undef a generated
317 symbol before #define'ing it, to remove conflict with system
318 macros.
319
320 Wed Jul 29 10:07:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
321
322 * gen.c (gen_entry_expand_opcode): For conditional, fields. Fix
323 the extraction of the value from its source - both table and bit
324 cases were wrong.
325
326 Tue Jul 28 11:19:43 1998 Andrew Cagney <cagney@b1.cygnus.com>
327
328 * ld-insn.c (parse_insn_word): For constant conditional strings,
329 encode their bit value.
330
331 * ld-insn.c (parse_insn_word, parse_insn_words): Allow conditional
332 operands to refer to fields in earlier instruction words.
333
334 * gen.c (sub_val): Replace field argument with val_last_pos.
335 (gen_entry_expand_opcode): Look in previous tables for a value for
336 a conditional field as well as the bits from the current table.
337 (insn_list_insert): Add sort key of instructions where
338 their operand fields have different conditionals.
339 (insn_field_cmp): New function.
340
341 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
342
343 * configure: Regenerated to track ../common/aclocal.m4 changes.
344 * config.in: Ditto.
345
346 Sun Apr 26 15:20:08 1998 Tom Tromey <tromey@cygnus.com>
347
348 * acconfig.h: New file.
349 * configure.in: Reverted change of Apr 24; use sinclude again.
350
351 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
352
353 * configure: Regenerated to track ../common/aclocal.m4 changes.
354 * config.in: Ditto.
355
356 Fri Apr 24 11:19:33 1998 Tom Tromey <tromey@cygnus.com>
357
358 * configure.in: Don't call sinclude.
359
360 Fri Apr 24 19:45:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
361
362 * gen-icache.c (print_icache_extraction): Do not type cast
363 pointers.
364
365 * ld-insn.c (load_insn_table): Terminate error with NL.
366
367 * gen.c (insns_bit_useless): Perform unsigned bit comparisons.
368
369 * filter.c (is_filtered_out, filter_parse): Pacify GCC, len is
370 unsigned.
371
372 Wed Apr 22 14:27:39 1998 Michael Meissner <meissner@cygnus.com>
373
374 * configure: Reconfigure to pick up ../common/aclocal.m4 changes
375 to suppress inlining by default.
376
377 Tue Apr 21 01:37:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
378
379 * gen-icache.c (print_icache_extraction): When generating #define
380 force the expression to the correct type.
381
382 Thu Apr 16 08:50:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
383
384 * misc.c (name2i): strlen returns an unsigned.
385
386 Tue Apr 14 19:04:28 1998 Andrew Cagney <cagney@b1.cygnus.com>
387
388 * igen.h (struct igen_warn_options): Add unimplemented option.
389 * igen.c (main): Update
390
391 * ld-insn.c (load_insn_table): Report unimplemented functions.
392
393 Tue Apr 14 10:57:26 1998 Andrew Cagney <cagney@b1.cygnus.com>
394
395 * ld-insn.c (parse_insn_word): Treat `!' and `=' as valid
396 separator tokens when parsing a conditional.
397
398 * igen.h (main): Add option -S so that suffix can be specified.
399
400 Tue Apr 14 08:44:53 1998 Andrew Cagney <cagney@b1.cygnus.com>
401
402 * igen.h (struct igen_trace_options): Add members insn_expansion
403 and insn_insertion.
404
405 * igen.c (main): Add options -Gtrace-insn-expansion,
406 -Gtrace-insn-insertion and -Gtrace-all.
407
408 * gen.c (gen_entry_expand_insns): Trace each instruction as it is
409 selected for expansion.
410 (gen_entry_expand_opcode): Trace each expanded instruction as it
411 is inserted into the table.
412
413 Mon Apr 13 19:21:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
414
415 * ld-insn.c (parse_insn_word): Parse conditional operators.
416 (parse_insn_word): Verify field conditionals.
417
418 * ld-insn.h: Extend syntax to allow macros and field equality.
419 (struct insn_field_cond): Rename insn_field_exclusion, add type.
420
421 * gen.c (gen_entry_expand_opcode): Check type of conditional.
422 (insns_bit_useless): Ditto.
423
424 * ld-insn.c (parse_macro_record): New function.
425
426 Mon Apr 13 22:37:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
427
428 * ld-insn.h (enum insn_field_type): Add insn_field_invalid.
429
430 * ld-insn.c (parse_insn_word): Check instruction field type
431 correctly initialized.
432 (print_insn_words): Ditto.
433 (insn_field_type_to_str): Ditto.
434 (dump_insn_field): Ditto.
435
436 * gen.c (insns_bit_useless): Ditto.
437
438 Fri Apr 3 18:08:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
439
440 * gen.h, igen.c (print_include_inline, print_includes,
441 print_includes): New functions. Generate include list. For for
442 semantics et.al. generate CPP code to inline when
443 C_REVEALS_MODULE_P.
444
445 * igen.c (gen_semantics_c): Call print_includes.
446 * gen-engine.c (gen_engine_c): Ditto.
447
448 Sat Apr 4 21:09:11 1998 Andrew Cagney <cagney@b1.cygnus.com>
449
450 * igen.h: (struct _igen_name_option): Replace with struct
451 igen_module_option. Contains both module prefix and suffix.
452 (INIT_OPTIONS): Initialize.
453
454 * igen.c (main): Update -P option to fill in full module info.
455 (gen-engine.c, gen-icache.c, gen-itable.c, gen-semantics.c,
456 gen-support.c): Update.
457
458 Sat Apr 4 02:15:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
459
460 * igen.c (print_itrace): Use TRACE_ANY_P macro to determine if any
461 tracing is needed.
462
463 Thu Mar 26 20:51:23 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
464
465 * table.c (table_push): Redo, using stdio. Fixes NT native
466 problem with <CRLF>=><LF> translation...
467
468 Tue Mar 24 23:30:07 1998 Andrew Cagney <cagney@b1.cygnus.com>
469
470 * gen-engine.c (print_run_body): Re-extract the CIA after
471 processing any events.
472
473 Tue Mar 24 17:46:08 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
474
475 * Makefile.in: Get SHELL from configure.
476 * configure: Regenerate with autoconf 2.12.1 to fix shell issues for
477 NT native builds.
478
479 Mon Mar 16 12:51:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
480
481 * igen.c: Pass sim_cia to trace_prefix.
482
483 Thu Feb 26 19:25:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
484
485 * ld-insn.c (parse_function_record): Check models are valid.
486 (parse_function_record): Only discard function when no model is
487 common.
488
489 Tue Feb 24 01:42:03 1998 Andrew Cagney <cagney@b1.cygnus.com>
490
491 * gen-engine.c (print_run_body): Always wrap generated idecode
492 body in ENGINE_ISSUE_PREFIX_HOOK / ENGINE_ISSUE_POSTFIX_HOOK.
493
494 Fri Feb 20 16:22:10 1998 Andrew Cagney <cagney@b1.cygnus.com>
495
496 * ld-insn.c (parse_function_record): When -Wnodiscard, suppress
497 discarded function warning.
498
499 * igen.c (main): Clarify -Wnodiscard.
500
501 * ld-insn.c (parse_function_record): For functions, allow use of
502 instruction style function model records
503
504 * ld-insn.h (nr_function_model_fields): Define.
505
506 Tue Feb 17 16:36:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
507
508 * igen.c (print_itrace_prefix): Generate call to trace_prefix
509 instead of trace_one_insn.
510 (print_itrace): Generate trace_prefix call if any tracing enabled,
511 (print_itrace): Nest generated call to trace_generic inside
512 conditional for any tracing enabled.
513 (print_itrace_prefix): Do not pass PHASE to trace_prefix.
514
515 Tue Feb 3 14:00:32 1998 Andrew Cagney <cagney@b1.cygnus.com>
516
517 * gen-engine.c (print_run_body): Add bitsize suffix to IMEM macro.
518 * gen-icache.c (print_icache_body): Ditto.
519 * gen-idecode.c (print_idecode_ifetch): Ditto.
520
521 * gen-icache.c (print_icache_body): Mark successive instruction
522 words as unused.
523
524 * ld-insn.c (parse_insn_word): Only report insn-width problems
525 when warning enabled.
526
527 * igen.h: Add flag for warning about invalid instruction widths.
528 * igen.c: Parse -Wwidth option.
529
530 * gen-support.c (gen_support_h): Map instruction_word onto
531 <PREFIX>_instruction_word when needed.
532 (print_support_function_name): Use support prefix.
533 (gen_support_h): Ditto for <PREFIX>_idecode_issue.
534
535 Sun Feb 1 11:08:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
536
537 * gen-support.c (gen_support_h): Generate new macro CPU_.
538
539 Sat Jan 31 14:50:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
540
541 * gen-engine.c (gen_engine_h): Don't assume a model is present.
542 (gen_engine_c): Ditto.
543
544 * igen.c (gen_run_c): Ditto.
545
546 * gen-engine.c (print_run_body): Use CIA_GET & CIA_SET instead of
547 CPU_CIA. Parameterize with CPU argument.
548
549 Fri Jan 30 09:09:39 1998 Andrew Cagney <cagney@b1.cygnus.com>
550
551 * gen.h (struct _gen_list): Replace processor with model.
552
553 * igen.c (gen_idecode_h): Update.
554 (gen_run_c): For generated switch, use model->full_name.
555
556 * gen.c (print_gen_entry_path): Ditto.
557 (make_table): Ditto.
558 (gen_entry_expand_insns): Ditto.
559 (make_gen_tables): Ditto.
560
561 * igen.c (gen_run_c): Add extra argument `nr_cpus' to generated
562 function sim_engine_run. Pass argument on to engine_run.
563
564 * gen-engine.c (print_engine_run_function_header): Add extra
565 argument `nr_cpus' to generated function engine_run.
566 (print_run_body): Fix SMP case.
567
568 * gen-support.c (support_c_function): Call sim_engine_abort when
569 internal function fails to long jump.
570
571 Wed Jan 21 18:00:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
572
573 * gen-semantics.c (print_semantic_body): Use GPR_SET to zero
574 hardwired register.
575
576 Wed Dec 17 14:49:03 1997 Jeffrey A Law (law@cygnus.com)
577
578 * gen-semantics.c (print_semantic_body): Fix handling of
579 hardwired zero register.
580
581 Tue Dec 9 12:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
582
583 * igen.h (struct _igen_gen_options): Add member default_model.
584
585 * igen.c (gen_run_c): Default to the first machine in the
586 multi-sim list.
587 (main): Add MODEL parameter to gen-multi-sim option.
588
589 * gen.h (function_decl_type): Declare enum.
590
591 * gen-engine.c (print_engine_run_function_header), gen-engine.h:
592 Make global, pass function_decl_type as argument.
593 (gen_engine_h, gen_engine_c): Update call.
594
595 * gen-idecode.c (print_idecode_issue_function_header),
596 gen-idecode.h: Pass function_decl_type as argument.
597
598 * igen.c (gen_idecode_h): For multi-sim, delcare global variable
599 idecode_issue.
600
601 * igen.c (gen_run_c): For multi-sim, initialize globals
602 idecode_issue and engine_run.
603
604 Fri Nov 14 10:51:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
605
606 * ld-insn.c (parse_insn_model_record): Allow multiple model names
607 to be specified in a single instruction model record.
608 (dump_insn_model_entry): Update.
609
610 * ld-insn.h (struct _insn_model_entry): Replace member name with
611 the filter names. Document syntax change.
612
613 Wed Nov 12 15:45:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
614
615 * gen-engine.c (print_run_body): Add hooks for adding code before
616 and after an instruction has been issued.
617
618 1997-11-04 Brendan Kehoe <brendan@lisa.cygnus.com>
619
620 * gen-idecode.c (print_jump_until_stop_body): Use `#if 0' instead of
621 `#ifdef 0' around this.
622
623 Tue Nov 4 08:18:29 1997 Michael Meissner <meissner@cygnus.com>
624
625 * ld-decode.c (load_decode_table): Don't assume NULL is an integer
626 constant.
627
628 Wed Oct 29 13:17:17 1997 Andrew Cagney <cagney@b1.cygnus.com>
629
630 * ld-insn.h: Document mnemonic string format.
631
632 Tue Oct 28 10:50:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
633
634 * gen-icache.c (print_icache_extraction): Force result of atol to
635 unsigned.
636
637 * ld-insn.c (parse_function_record): Separate handling of old and
638 ney fynction records.
639 (load_insn_table): For %s record, hack function name & type after
640 it has been parsed.
641
642 * filter.h (filter_is_subset): Reverse argument names, wrong
643 order.
644
645 * ld-insn.c (load_insn_table): Move include code to.
646 (parse_include_record): New function. Check for filtering of
647 include statement by both flags and models.
648 (load_insn_table): Check for model filtering of cache and model
649 records.
650 (parse_model_data_record): Check for model & flag filtering of
651 model data records.
652 (parse_function_record): Check for model & flag filtering of
653 function records.
654
655 * ld-insn.h: Define record_filter_models_field. Add filter-models
656 field to all but instruction records.
657 (struct _function_entry, struct _cache_entry): Add models field.
658 (nr_function_fields): Make parm field mandatory.
659
660 Mon Oct 27 15:14:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
661
662 * igen.c (main): Change -I option to -I<directory>. Add optional
663 size to -Ggen-icache option. Add -Gno-... support.
664
665 * igen.h (struct _igen_options): Add include field.
666
667 * ld-insn.c (enum insn_record_type, insn_type_map): Add
668 include_record.
669 (load_insn_table): Call table_push when include record.
670
671 * table.c (struct _open table, struct table): Make table object an
672 indirect ptr to the current table file.
673 (current_line, new_table_entry, next_line): Make file arg type
674 open_table.
675 (table_open): Use table_push.
676 (table_read): Point variable file at current table, at eof, pop
677 last open table.
678
679 * table.h, table.c (table_push): New function.
680
681 Thu Oct 16 11:03:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
682
683 * gen-semantics.c (print_semantic_body): Use CIA not
684 cia.ip. Escape newlines at end of generated call to
685 sim_engine_abort.
686
687 Tue Oct 14 11:13:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
688
689 * igen.c (print_itrace): Output line-ref to igen source file when
690 generating trace statements.
691 (print_itrace_prefix, print_itrace_format): Escape newline at end
692 of each line of generated call to trace function.
693
694 Mon Oct 13 11:27:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
695
696 * gen-support.c (gen_support_h): Generate #define NIA. Definition
697 dependant on gen-delayed-branch mode.
698
699 * ld-insn.c (parse_insn_mnemonic_record): Check for opening and
700 closing double quote in mnemonic field.
701 (parse_option_record): Add gen-delayed-branch option.
702
703 Wed Oct 8 13:10:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
704
705 * gen.c (insn_list_insert): Missing \n in warning.
706
707 * ld-insn.c (load_insn_table): Only notify of discarded
708 instrctions when warn.discard enabled.
709
710 * igen.h: Add option.warn.discard, default enabled.
711
712 * igen.c (main): Add -Wnodiscard option.
713
714 * ld-insn.c (record_type): For old record type, check the number
715 of fields is correct.
716 (load_insn_table): Allow insn assembler and insn model records to
717 appear in any order.
718 (parse_insn_model_record): Rename from parse_insn_model_records.
719 Parse only one record.
720 (parse_insn_mnemonic_record): Rename from
721 parse_insn_mnemonic_records. Parse only one record.
722
723 Tue Sep 23 15:52:06 1997 Felix Lee <flee@yin.cygnus.com>
724
725 * gen-itable.c (gen_itable_h): [nr_itable_* + 1] to avoid
726 illegal zero-sized array.
727 (itable_print_set): likewise, avoid empty initializers.
728
729 Mon Sep 22 18:49:07 1997 Felix Lee <flee@cygnus.com>
730
731 * configure.in: i386-windows is a cross, so don't expect
732 libiberty to be there.
733 * configure: updated.
734
735 Fri Sep 19 10:36:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
736
737 * igen.c (print_function_name): Put the format name after the
738 function / instruction name, not before.
739 (print_itrace): Better format trace code.
740
741 Tue Sep 16 11:01:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
742
743 * gen.c (insns_bit_useless): Don't treat string fields restricted
744 to a range of values as useless.
745
746 Mon Sep 15 15:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
747
748 * igen.c (gen_run_c): Handle non-multi-sim case.
749
750 * gen-support.c (gen_support_h): Define SD_ - to replace _SD.
751 Define CIA from cia.
752
753 Thu Sep 11 10:27:39 1997 Andrew Cagney <cagney@b1.cygnus.com>
754
755 * gen-semantics.c (print_semantic_body): Trace the instruction
756 after it has been validated.
757 (print_semantic_body): Count the instruction using sim-profile.
758
759 Wed Sep 10 13:35:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
760
761 * gen-itable.c (gen_itable_h): Collect summary info on instruction
762 table when traversing it.
763 (gen_itable_h): Output an enum defining the max size of each of
764 the itable string members.
765
766 Tue Sep 9 03:30:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
767
768 * igen.c (gen_run_c): New function. Generate sim_engine_run that
769 looks at the currently selected architecture.
770
771 * gen-engine.c, gen-idecode.c: Add multi-sim support - generate
772 one engine per model.
773
774 * gen-semantics.c, gen-icache.c gen-support.c:
775 Update.
776
777 * ld-insn.h, ld-insn-h (load_insn_table): Rewrite. table.h only
778 returns a line at a time. Parse multi-word instructions. Add
779 multi-sim support.
780
781 * table.h, table.c: Simplify. Only parse a single line at a time.
782 ld-insn can handle the rest.
783
784 * filter.h, filter.c (filter_parse, filter_add, filter_is_subset,
785 filter_is_common, filter_is_member, filter_next): New filter
786 operations.
787 (dump_filter): Ditto.
788
789 * gen.h, gen.c: New file. Takes the insn table and turns it into
790 a set of decode tables and semantic functions.
791
792 * ld-insn.c: Copy generator code from here.
793 * gen.c: To here.
794
795 Fri Aug 8 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
796
797 * misc.h (NZALLOC): Allocate an N element array of TYPE.
798
799 * table.h, table.c: Simplify table parser so that it only
800 understands colon delimited lines and code blocks.
801 (table_read): Parse '{' ... '}' as a code block.
802 (table_print_code): New function, print out a code block to file.
803 (main): Add suport for standalone testing.
804
805 * ld-insn.h, ld-insn.c:
806
807
808 Mon Sep 1 11:41:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
809
810 * gen-idecode.c (error_leaf_contains_multiple_insn): Make static.
811 (print_jump_definition, print_jump, print_jump_internal_function,
812 print_jump_insn, print_jump_until_stop_body): Delete, moved to
813 sim-engine.c
814
815 * igen.c (print_itrace_format): Delete unused variable chp.
816 (gen-engine.h): Include.
817
818 * table.c (current_file_name, current_line_entry,
819 current_line_entry): Make static.
820
821 Wed Aug 6 12:31:17 1997 Andrew Cagney <cagney@b1.cygnus.com>
822
823 * configure.in: Define AR_FOR_BUILD, AR_FLAGS_FOR_BUILD,
824 RANLIB_FOR_BUILD and CFLAGS_FOR_BUILD.
825 * configure.in: Include simulator common/aclocal.m4.
826 * configure.in: Add --enable-sim-warnings option.
827 * configure: Re-generate.
828
829 * Makefile.in: Use.
830
831 * Makefile.in (tmp-filter): New rule.
832 (igen.o, tmp-table, tmp-ld-decode, tmp-ld-cache, tmp-ld-insn,
833 ld-decode.o, ld-cache.o, ld-insn.o): Fix dependencies.
834
835 * gen.h, gen.c: New files.
836
837 * Makefile.in (gen.o, tmp-gen): New rules, update all
838 dependencies.
839
840 Tue Jun 24 11:46:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
841
842 * ld-insn.c (load_insn_table): Accept %s as a function type.
843
844 Thu Jun 5 17:14:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
845
846 * igen.c (print_itrace_prefix): Move printing of insn prefix to
847 here.
848 (print_itrace_format): Drop printing of MY_NAME in instruction
849 trace. Printing of insn prefix moved.
850 (print_itrace): Ditto.
851
852 Fri May 30 11:27:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
853
854 * gen-icache.c (print_icache_function_header): Pass
855 table_line_entry instead of separate file and line.
856
857 * table.c (table_entry_read): Set assembler source file/line-nr to
858 the current not initial file.
859 (table_entry_read): Fix line numbering of source files.
860
861 table.h (table_line_entry): New structure. Exactly specifies a
862 source file/line-nr.
863 (table_*_entry): Add this to all.
864
865 table.c (table_entry_print_cpp_line_nr): Change to use values from
866 a table_line_entry struct.
867 (table_entry_read): Save table_line_entry in all structures read.
868
869 gen-icache.c, gen-support.c, gen-idecode.c, gen-semantics.c,
870 gen-model.c: Update all references.
871
872 Thu May 29 10:29:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
873
874 * igen.c (print_my_defines): Define MY_NAME - a string. For
875 MY_PREFIX, undefine the name of the function incase some dumb
876 header defined it. it.
877 (print_itrace): Use MY_NAME not MY_PREFIX.
878
879 * lf.c (lf_write): New function write an N character buffer to the
880 file.
881
882 * igen.c (print_itrace): When available, use the assembler to
883 print the insn-trace.
884 (print_itrace_prefix): New function, print first part of call to
885 print_one_insn.
886 (print_itrace_format): New function, print fmt argument for
887 print_one_insn.
888
889 * table.c (table_entry_read): Save any assembler lines instead of
890 discarding them.
891
892 Wed May 28 09:55:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
893
894 * gen-icache.c (print_icache_body): Process immeds.
895
896 * gen-semantics.c (print_semantic_body): When computing NIA, skip
897 any immed words that follow the instruction word.
898
899 * ld-insn.c (parse_insn_format): Parse immeds appended to an
900 instruction.
901
902 * igen.c (main): Allow any register to be specified as the zero
903 register.
904 (semantic_zero_reg): Global, index to zero register.
905
906 * gen-semantics.c (print_semantic_body): Zero selected register.
907
908 Tue May 27 14:12:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
909
910 * igen.h: Stop options and code gen type bit masks overlaping.
911
912 Fri May 23 12:01:08 1997 Andrew Cagney <cagney@b1.cygnus.com>
913
914 * gen-semantics.c (print_semantic_body): Incorrect test for
915 zero-r0 code.
916
917 Fri May 16 14:32:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
918
919 * gen-semantics.c (print_semantic_body): Use common sim-engine
920 interface.
921
922 Fri May 16 11:48:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
923
924 * gen-semantics.c (print_semantic_body): Add code to clear r0.
925
926 * igen.c (main): Add new option zero-r0, which adds code to clear
927 GPR(0) each cycle.
928
929 Wed May 7 12:31:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
930
931 * igen.c (print_itrace): Fix so line-nr is passed to trace
932 function.
933
934 * gen-idecode.c (print_idecode_validate): Correct FP code.
935
936 * gen-support.c (gen_support_h): Always pass MY_INDEX to support
937 functions.
938 (print_support_function_name): Ditto.
939
940 Tue May 6 06:12:04 1997 Mike Meissner <meissner@cygnus.com>
941
942 * igen.c (print_itrace): Call trace_one_insn to trace
943 instructions, rather than doing it directly.
944
945 Mon May 5 14:11:46 1997 Mike Meissner <meissner@cygnus.com>
946
947 * gen-engine.c (engine_switch_leaf): Remove extra %s.
948 (print_engine_floating_point_unavailable): Wrap in #ifdef
949 UNUSED/#endif, until somebody uses it.
950
951 * gen-idecode.c (error_leaf_contains_multiple_insn): Remove unused
952 variable.
953 (print_jump_until_stop_body): Wrap in #ifdef UNUSED/#endif, until
954 somebody uses it.
955 (print_idecode_validate): Use long formats to print long values.
956
957 * gen-semantics.c (print_idecode_invalid): Set name to "unknown"
958 if we get an unexpected type.
959
960 Fri May 2 13:28:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
961
962 * igen.c (print_itrace): Pass SD as well as CPU to calls to
963 trace_printf.
964
965 * gen-support.c (gen_support_h): Always pass sim_cia cia to
966 support functions.
967 (print_support_function_name): Ditto.
968
969 Wed Apr 30 17:35:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
970
971 * gen-support.c (support_c_function): Remove unnecessary memset of
972 cia.
973 * gen-semantics.c (print_semantic_body): Wasn't closing
974 generated comment.
975
976 Tue Apr 29 11:11:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
977
978 * ld-insn.c (load_insn_table): Report instructions that do not
979 have at least a format and name.
980 (insn_table_find_opcode_field): Check progress is being made.
981
982 * gen-support.c (support_c_function): Report empty function body.
983
984 Thu Apr 24 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
985
986 * ld-insn.c (insn_table_expand_opcode): Allow reserved fields to
987 be broken up.
988 (insn_table_expand_insns): Allow special rules to apply to groups
989 of instructions when all members of the group match the special
990 mask/value.
991
992 * gen-semantics.c (print_c_semantic): Ditto.
993 * igen.c (print_semantic_function_formal): Ditto.
994 (print_semantic_function_type): Ditto.
995 * igen.c (print_icache_function_formal): Ditto.
996 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
997
998 * gen-idecode.c (gen_idecode_h): Prepend the global_prefix to the
999 instruction_address type.
1000
1001 * gen-semantics.c (print_semantic_body): Call cpu_error when an
1002 unimplemented instruction is encountered - gives the interpreter
1003 the chance to stop correctly.
1004
1005 Wed Apr 23 20:06:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
1006
1007 * igen.c (print_function_name): Allow dot's in instruction names.
1008
1009 Tue Apr 22 21:46:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
1010
1011 * igen.c (main), igen.h: Support new option - delayed-branch -
1012 generate code to drive a delayed branch processor.
1013
1014 * gen-idecode.c (gen_idecode_h): Define instruction_address type.
1015
1016 * igen.c (print_icache_function_formal): Replace address_word with
1017 instruction_address.
1018 (print_semantic_function_formal): Ditto.
1019 (print_semantic_function_type): Ditto.
1020 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
1021
1022 * gen-semantics.c (print_semantic_body): Ditto.
1023 (print_c_semantic): Ditto.
1024
1025 * gen-support.c (support_c_function): Return a zeroed CIA instead
1026 of just zero - works with any cia type.
1027
1028 * igen.c (print_itrace): For delayed branch case, print just the
1029 current instruction.
1030
1031 Thu Apr 17 07:02:33 1997 Doug Evans <dje@canuck.cygnus.com>
1032
1033 * igen.c (print_itrace): Use TRACE_FOO_P and trace_printf.
1034
1035 Tue Apr 15 15:20:31 1997 Ian Lance Taylor <ian@cygnus.com>
1036
1037 * Makefile.in (INSTALL): Set to @INSTALL@.
1038 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1039
1040 Mon Apr 14 16:29:34 1997 Ian Lance Taylor <ian@cygnus.com>
1041
1042 * Makefile.in (INSTALL): Change install.sh to install-sh.
1043
1044 Wed Apr 2 18:51:20 1997 Doug Evans <dje@canuck.cygnus.com>
1045
1046 * gen-support.c (gen_support_c): sim-state.h renamed to sim-main.h.
1047 * gen-idecode.c (gen_idecode_c): Likewise.
1048 * igen.c (gen_semantics_c): Likewise.
1049
1050 Mon Mar 24 10:10:08 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1051
1052 * gen-icache.c (print_icache_body): No longer define cpu/sd,
1053 support.h now defines CPU/SD globally.
1054
1055 * gen-model.c (gen_model_h): Ditto.
1056
1057 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
1058 (print_jump): Ditto.
1059 (print_jump_until_stop_body): Ditto.
1060 (print_idecode_validate): Ditto.
1061
1062 * gen-icache.c (print_icache_body): Ditto.
1063
1064 * gen-semantics.c (print_semantic_body): Ditto.
1065
1066 * igen.c (print_semantic_function_formal): Rename cpu to sim_cpu,
1067 processor to cpu.
1068 (print_icache_function_formal): Ditto.
1069
1070 * gen-support.c (print_support_function_name): Include sd/cpu arg
1071 in support function argument list.
1072 (support_c_function): Generate code to cpu/sd from sd/cpu.
1073 (gen_support_h): Define _SD the argument prefix for all support
1074 functions. Define SD/CPU to determine sd/cpu from value of _SD
1075 macro.
1076
1077 Tue Mar 18 15:52:24 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1078
1079 * gen-support.c (gen_support_c): Update for renaming of engine to
1080 sim-state.
1081
1082 * igen.c: Ditto.
1083 * gen-idecode.c (gen_idecode_c): Ditto.
1084
1085 Mon Mar 17 15:17:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1086
1087 * ld-decode.c (load_decode_table): Rename slash to reserved.
1088 (dump_decode_rule): Ditto.
1089
1090 * ld-insn.c (parse_insn_format): Differentiate between a `/' -
1091 reserved bit - and a `*' - wild card.
1092 (parse_insn_format): Change is_slash to more informative reserved.
1093 (dump_insn_field): Ditto.
1094 (insn_field_is_constant): Ditto.
1095 (insn_table_expand_opcode): Ditto.
1096
1097 * gen-idecode.c (print_idecode_validate): Make check_mask and
1098 check_val the correct integer size.
1099 (print_idecode_validate): Fix reserved bit check for 64 bit
1100 targets.
1101
1102 Fri Mar 14 11:24:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1103
1104 * ld-insn.c (parse_insn_format): Accept '*' as an alternative of
1105 `/' in bit fields. `/' denotes a wild bit.
1106
1107 Fri Mar 7 18:20:38 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1108
1109 * igen.h, igen.c (main): New options. Control generation of
1110 conditional issue and slot verification code.
1111
1112 Fri Mar 7 18:17:25 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1113
1114 * gen-support.c (print_support_function_name): Prepend the global
1115 name prefix when applicable. Provide #define to map the user
1116 specified name the generated globaly unique one.
1117
1118 Fri Mar 7 18:07:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1119
1120 * gen-idecode.c (print_idecode_validate): Wrap each of the checks
1121 - reserved bits, floating point and slot validation - with a
1122 #ifdef so that they are optional.
1123
1124 Fri Mar 7 16:35:13 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1125
1126 * gen-idecode.c (error_leaf_contains_multiple_insn): New function
1127 - report the error of a leaf node in the decision tree containing
1128 several instructions.
1129 (print_idecode_table_leaf): Detect a leaf with multiple instructions.
1130 (print_idecode_switch_leaf): Ditto.
1131
1132 * gen-semantics.h, gen-semantics.c (print_idecode_illegal,
1133 print_idecode_invalid): Rename former to latter. Add argument so
1134 that one function can generate all invalid instruction cases -
1135 illegal, fp-unavailable, wrong-slot.
1136 * gen-engine.c: Update.
1137
1138 * gen-idecode.c: Use print_idecode_invalid to generate a function
1139 call for cases when fp-unavailable and the slot is wrong.
1140
1141 * gen-idecode.c (print_idecode_validate): New check, generate code
1142 to verify that the instruction slot is correct.
1143
1144 * igen.c (main): Simplify options.
1145
1146 Wed Mar 5 09:55:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1147
1148 * igen.c (print_itrace): Remove source line reference for trace
1149 code - let the user see the generated file.
1150 (print_itrace): Print the trace code rather than reference a
1151 macro.
1152
1153 Tue Mar 4 17:31:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1154
1155 * igen.c (print_semantic_function_actual): Pass either the
1156 processor - smp - or the engine - mono - into semantic functions.
1157 Don't pass in both.
1158
1159 * gen-icache.c (print_icache_body): Dependant on smp, derive
1160 processor from engine or engine from processor, and hence ensuring
1161 that both are defined in all semantic functions.
1162
1163 Mon Mar 3 17:11:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1164
1165 * ld-insn.c (parse_insn_format): Make the width field optional.
1166 If missing assume that the number of characters in the value
1167 determines the number of bits in the field.
1168
1169 Thu Feb 27 11:27:48 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1170
1171 * ld-insn.c (insn_table_expand_opcode): Replace assertion with
1172 more useful error message.
1173
1174 Tue Feb 25 16:43:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1175
1176 * misc.c (error): Output errors on stderr.
1177
1178 * ld-insn.c (parse_insn_format): Skip any leading spaces.
1179 Verify the width of instructions being parsed.
1180
1181 * table.c (table_entry_read): Parse CPP's convention for
1182 specifying original file name/line-nr.
1183
1184 Wed Feb 19 12:30:28 1997 Andrew Cagney <cagney@critters.cygnus.com>
1185
1186 * ld-insn.c (parse_insn_format): Allow trailing spaces in
1187 instruction fields.
1188
1189 * Makefile.in: Create using ../ppc/Makefile.in as a starting
1190 point.
1191 * configure.in: Ditto vis ../ppc/configure.in
1192
1193 Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
1194
1195 * gen-support.c (gen_support_c): Always include engine.h instead
1196 of cpu.h
1197 * gen-idecode.c (gen_idecode_c): Ditto.
1198
1199 * words.h (instruction_word): Remove instruction_word - now
1200 generated by igen.
1201 (address_word): New. Used by igen.
1202
1203 * lf.c (lf_print_function_type_function): New, pass a function to
1204 print out the type instead of a constant string.
1205
1206 * igen.h, igen.c (print_semantic_function_formal,
1207 SEMANTIC_FUNCTION_FORMAL): Relace macro with function.
1208 (print_semantic_function_actual, SEMANTIC_FUNCTION_ACTUAL): Ditto.
1209 (print_semantic_function_type, SEMANTIC_FUNCTION_TYPE): Ditto.
1210 (print_icache_function_type, ICACHE_FUNCTION_TYPE): Ditto.
1211 (print_icache_function_formal, ICACHE_FUNCTION_FORMAL): Ditto.
1212 (print_icache_function_actual, ICACHE_FUNCTION_ACTUAL): Ditto.
1213 * gen-idecode.c (print_idecode_table): Update.
1214 (idecode_switch_leaf): Update.
1215 (print_idecode_switch_function_header): Ditto.
1216 (print_idecode_floating_point_unavailable): Ditto.
1217 (print_idecode_issue_function_header): Ditto.
1218 * igen.c (gen_icache_h): Ditto.
1219 * gen-engine.c (print_engine_table): Ditto.
1220 (engine_switch_leaf): Ditto.
1221 * gen-support.c (print_support_function_name): Ditto.
1222 * gen-semantics.c (print_semantic_function_header): Update.
1223 Update.
1224 * gen-icache.c (print_icache_function_header): Update.
1225 (print_icache_function): Update.
1226 (print_icache_internal_function_declaration): Update.
1227 (print_icache_internal_function_definition): Update.
1228
1229 * gen-idecode.c (gen_idecode_h): Drop including of idecode_*.h
1230 files, will at some stage need to move it into support.
1231
1232 * igen.h, igen.c (main): New option -e <engine> - generate a full
1233 simulation engine. Previously this was the -d <idecode-file>
1234 option.
1235 * gen-engine.h, gen-engine.c: Copies of gen-idecode.*. Will need
1236 to clean these up so that that call upon the updated gen-idecode
1237 code.
1238
1239 * gen-idecode.h, gen-idecode.c: Prune out any code not relevant to
1240 generating a decode table.
1241
1242 * Makefile.in (igen): Add dependencies for new gen-engine.* files.
1243
1244 * igen.h, igen.c (main): New option -M - Control what is returned
1245 by semantic functions - -1/NIA vs CIA+N/NIA. Add
1246 generate_semantic_returning_modified_nia_only to igen_code enum.
1247 * gen-semantics.c (print_semantic_body): As an alternative, make
1248 NIA == -1 instead of CIA+insn_size by default.
1249
1250 * igen.h, igen.c (main, global_name_prefix, global_uname_prefix):
1251 New option -P <prefix> - Prepend all generated functions with the
1252 specified prefix.
1253 (gen_idecode_c): Adjust.
1254 * gen-icache.c (print_icache_struct): Ditto.
1255 * gen-support.c (gen_support_c): Ditto.
1256
1257 Sun Feb 16 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com>
1258
1259 * igen.c (main): Correct usage. Missleading message about ucase
1260 options dumping internal tables. -F now includes rather then
1261 excludes instructions.
1262
1263 * misc.h, misc.c (a2i): Make 64bit.
1264
1265 * ld-insn.h (max_insn_bit_size, default_insn_bit_size): Increase
1266 max to 64bits, expect trouble. Make the default 32 bits.
1267 * gen-idecode.c (print_idecode_table): Change EXTRACTED*
1268 et.al. macro's to use the insn_bit_size instead of assuming 32
1269 bits.
1270 * gen-icache.c (print_icache_extraction): Ditto.
1271 * gen-idecode.c (idecode_switch_start): Ditto.
1272 * gen-idecode.c (gen_idecode_c): Ditto
1273
1274 * igen.h (insn_specifying_widths), igen.c (main): New option -W.
1275 Indicates that the instruction field of the table is specifying
1276 bit widths instead of bit offsets.
1277 * ld-insn.c (parse_insn_format): Parse instruction fields
1278 specifying widths.
1279
1280 * misc.c (a2i): Allow binary numbers to be specified using the
1281 syntax 0bNNNN.
1282 * ld-insn.c: Allow such numbers to appear in the instruction
1283 format.
1284
1285 * table.c (table_entry_read): Make // a valid comment character.
1286 (table_entry_read): Skip lines containing a leading " - these may
1287 eventually be used in a disasembler.
1288
1289 Fri Feb 14 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com>
1290
1291 * filter.c, filter.h, gen-engine.c, gen-engine.h, gen-icache.c,
1292 gen-icache.h, gen-idecode.c, gen-idecode.h, gen-itable.c,
1293 gen-itable.h, gen-model.c, gen-model.h, gen-semantics.c,
1294 gen-semantics.h, gen-support.c, gen-support.h, igen.c, igen.h,
1295 ld-cache.c, ld-cache.h, ld-decode.c, ld-decode.h, ld-insn.c,
1296 ld-insn.h, lf.c, lf.h, misc.c, misc.h, table.c, table.h: Copy in
1297 from the ../ppc directory.
1298
1299 * filter_host.c, filter_host.h: Copy in from the ../ppc directory
1300 renaming from filter_filename.[hc]