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