Commit | Line | Data |
---|---|---|
753ad2d3 SG |
1 | Tue Mar 24 17:46:08 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk> |
2 | ||
3 | * Makefile.in: Get SHELL from configure. | |
4 | * configure: Regenerate with autoconf 2.12.1 to fix shell issues for | |
5 | NT native builds. | |
6 | ||
7 | Mon Mar 16 12:51:31 1998 Andrew Cagney <cagney@b1.cygnus.com> | |
8 | ||
9 | * igen.c: Pass sim_cia to trace_prefix. | |
10 | ||
11 | Thu Feb 26 19:25:02 1998 Andrew Cagney <cagney@b1.cygnus.com> | |
12 | ||
13 | * ld-insn.c (parse_function_record): Check models are valid. | |
14 | (parse_function_record): Only discard function when no model is | |
15 | common. | |
16 | ||
2c3c3f79 AC |
17 | Tue Feb 24 01:42:03 1998 Andrew Cagney <cagney@b1.cygnus.com> |
18 | ||
19 | * gen-engine.c (print_run_body): Always wrap generated idecode | |
20 | body in ENGINE_ISSUE_PREFIX_HOOK / ENGINE_ISSUE_POSTFIX_HOOK. | |
21 | ||
3c1e9243 AC |
22 | Fri Feb 20 16:22:10 1998 Andrew Cagney <cagney@b1.cygnus.com> |
23 | ||
24 | * ld-insn.c (parse_function_record): When -Wnodiscard, suppress | |
25 | discarded function warning. | |
26 | ||
27 | * igen.c (main): Clarify -Wnodiscard. | |
28 | ||
29 | * ld-insn.c (parse_function_record): For functions, allow use of | |
30 | instruction style function model records | |
31 | ||
32 | * ld-insn.h (nr_function_model_fields): Define. | |
33 | ||
34 | Tue Feb 17 16:36:27 1998 Andrew Cagney <cagney@b1.cygnus.com> | |
35 | ||
36 | * igen.c (print_itrace_prefix): Generate call to trace_prefix | |
37 | instead of trace_one_insn. | |
38 | (print_itrace): Generate trace_prefix call if any tracing enabled, | |
39 | (print_itrace): Nest generated call to trace_generic inside | |
40 | conditional for any tracing enabled. | |
41 | (print_itrace_prefix): Do not pass PHASE to trace_prefix. | |
42 | ||
43 | Tue Feb 3 14:00:32 1998 Andrew Cagney <cagney@b1.cygnus.com> | |
44 | ||
45 | * gen-engine.c (print_run_body): Add bitsize suffix to IMEM macro. | |
46 | * gen-icache.c (print_icache_body): Ditto. | |
47 | * gen-idecode.c (print_idecode_ifetch): Ditto. | |
48 | ||
49 | * gen-icache.c (print_icache_body): Mark successive instruction | |
50 | words as unused. | |
51 | ||
52 | * ld-insn.c (parse_insn_word): Only report insn-width problems | |
53 | when warning enabled. | |
54 | ||
55 | * igen.h: Add flag for warning about invalid instruction widths. | |
56 | * igen.c: Parse -Wwidth option. | |
57 | ||
58 | * gen-support.c (gen_support_h): Map instruction_word onto | |
59 | <PREFIX>_instruction_word when needed. | |
60 | (print_support_function_name): Use support prefix. | |
61 | (gen_support_h): Ditto for <PREFIX>_idecode_issue. | |
62 | ||
63 | Sun Feb 1 11:08:48 1998 Andrew Cagney <cagney@b1.cygnus.com> | |
64 | ||
65 | * gen-support.c (gen_support_h): Generate new macro CPU_. | |
66 | ||
9ec6741b AC |
67 | Sat Jan 31 14:50:27 1998 Andrew Cagney <cagney@b1.cygnus.com> |
68 | ||
c4db5b04 AC |
69 | * gen-engine.c (gen_engine_h): Don't assume a model is present. |
70 | (gen_engine_c): Ditto. | |
71 | ||
72 | * igen.c (gen_run_c): Ditto. | |
73 | ||
9ec6741b AC |
74 | * gen-engine.c (print_run_body): Use CIA_GET & CIA_SET instead of |
75 | CPU_CIA. Parameterize with CPU argument. | |
c4db5b04 | 76 | |
9ec6741b AC |
77 | Fri Jan 30 09:09:39 1998 Andrew Cagney <cagney@b1.cygnus.com> |
78 | ||
79 | * gen.h (struct _gen_list): Replace processor with model. | |
80 | ||
81 | * igen.c (gen_idecode_h): Update. | |
82 | (gen_run_c): For generated switch, use model->full_name. | |
83 | ||
84 | * gen.c (print_gen_entry_path): Ditto. | |
85 | (make_table): Ditto. | |
86 | (gen_entry_expand_insns): Ditto. | |
87 | (make_gen_tables): Ditto. | |
88 | ||
89 | * igen.c (gen_run_c): Add extra argument `nr_cpus' to generated | |
90 | function sim_engine_run. Pass argument on to engine_run. | |
91 | ||
92 | * gen-engine.c (print_engine_run_function_header): Add extra | |
93 | argument `nr_cpus' to generated function engine_run. | |
94 | (print_run_body): Fix SMP case. | |
95 | ||
96 | * gen-support.c (support_c_function): Call sim_engine_abort when | |
97 | internal function fails to long jump. | |
98 | ||
2d44e12a AC |
99 | Wed Jan 21 18:00:22 1998 Andrew Cagney <cagney@b1.cygnus.com> |
100 | ||
101 | * gen-semantics.c (print_semantic_body): Use GPR_SET to zero | |
102 | hardwired register. | |
103 | ||
104 | Wed Dec 17 14:49:03 1997 Jeffrey A Law (law@cygnus.com) | |
105 | ||
106 | * gen-semantics.c (print_semantic_body): Fix handling of | |
107 | hardwired zero register. | |
108 | ||
109 | Tue Dec 9 12:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
110 | ||
111 | * igen.h (struct _igen_gen_options): Add member default_model. | |
112 | ||
113 | * igen.c (gen_run_c): Default to the first machine in the | |
114 | multi-sim list. | |
115 | (main): Add MODEL parameter to gen-multi-sim option. | |
116 | ||
117 | * gen.h (function_decl_type): Declare enum. | |
118 | ||
119 | * gen-engine.c (print_engine_run_function_header), gen-engine.h: | |
120 | Make global, pass function_decl_type as argument. | |
121 | (gen_engine_h, gen_engine_c): Update call. | |
122 | ||
123 | * gen-idecode.c (print_idecode_issue_function_header), | |
124 | gen-idecode.h: Pass function_decl_type as argument. | |
125 | ||
126 | * igen.c (gen_idecode_h): For multi-sim, delcare global variable | |
127 | idecode_issue. | |
128 | ||
129 | * igen.c (gen_run_c): For multi-sim, initialize globals | |
130 | idecode_issue and engine_run. | |
131 | ||
132 | Fri Nov 14 10:51:44 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
133 | ||
134 | * ld-insn.c (parse_insn_model_record): Allow multiple model names | |
135 | to be specified in a single instruction model record. | |
136 | (dump_insn_model_entry): Update. | |
137 | ||
138 | * ld-insn.h (struct _insn_model_entry): Replace member name with | |
139 | the filter names. Document syntax change. | |
140 | ||
141 | Wed Nov 12 15:45:40 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
142 | ||
143 | * gen-engine.c (print_run_body): Add hooks for adding code before | |
144 | and after an instruction has been issued. | |
145 | ||
3b5bd034 BK |
146 | 1997-11-04 Brendan Kehoe <brendan@lisa.cygnus.com> |
147 | ||
148 | * gen-idecode.c (print_jump_until_stop_body): Use `#if 0' instead of | |
149 | `#ifdef 0' around this. | |
150 | ||
5aa52e3d MM |
151 | Tue Nov 4 08:18:29 1997 Michael Meissner <meissner@cygnus.com> |
152 | ||
153 | * ld-decode.c (load_decode_table): Don't assume NULL is an integer | |
154 | constant. | |
155 | ||
01b9cd49 AC |
156 | Wed Oct 29 13:17:17 1997 Andrew Cagney <cagney@b1.cygnus.com> |
157 | ||
158 | * ld-insn.h: Document mnemonic string format. | |
159 | ||
89d09738 AC |
160 | Tue Oct 28 10:50:35 1997 Andrew Cagney <cagney@b1.cygnus.com> |
161 | ||
162 | * gen-icache.c (print_icache_extraction): Force result of atol to | |
163 | unsigned. | |
164 | ||
165 | * ld-insn.c (parse_function_record): Separate handling of old and | |
166 | ney fynction records. | |
167 | (load_insn_table): For %s record, hack function name & type after | |
168 | it has been parsed. | |
169 | ||
170 | * filter.h (filter_is_subset): Reverse argument names, wrong | |
171 | order. | |
172 | ||
173 | * ld-insn.c (load_insn_table): Move include code to. | |
174 | (parse_include_record): New function. Check for filtering of | |
175 | include statement by both flags and models. | |
176 | (load_insn_table): Check for model filtering of cache and model | |
177 | records. | |
178 | (parse_model_data_record): Check for model & flag filtering of | |
179 | model data records. | |
180 | (parse_function_record): Check for model & flag filtering of | |
181 | function records. | |
182 | ||
183 | * ld-insn.h: Define record_filter_models_field. Add filter-models | |
184 | field to all but instruction records. | |
185 | (struct _function_entry, struct _cache_entry): Add models field. | |
186 | (nr_function_fields): Make parm field mandatory. | |
187 | ||
e2880fad AC |
188 | Mon Oct 27 15:14:26 1997 Andrew Cagney <cagney@b1.cygnus.com> |
189 | ||
190 | * igen.c (main): Change -I option to -I<directory>. Add optional | |
191 | size to -Ggen-icache option. Add -Gno-... support. | |
192 | ||
193 | * igen.h (struct _igen_options): Add include field. | |
194 | ||
195 | * ld-insn.c (enum insn_record_type, insn_type_map): Add | |
196 | include_record. | |
197 | (load_insn_table): Call table_push when include record. | |
198 | ||
199 | * table.c (struct _open table, struct table): Make table object an | |
200 | indirect ptr to the current table file. | |
201 | (current_line, new_table_entry, next_line): Make file arg type | |
202 | open_table. | |
203 | (table_open): Use table_push. | |
204 | (table_read): Point variable file at current table, at eof, pop | |
205 | last open table. | |
206 | ||
207 | * table.h, table.c (table_push): New function. | |
208 | ||
eaa202dd AC |
209 | Thu Oct 16 11:03:27 1997 Andrew Cagney <cagney@b1.cygnus.com> |
210 | ||
211 | * gen-semantics.c (print_semantic_body): Use CIA not | |
212 | cia.ip. Escape newlines at end of generated call to | |
213 | sim_engine_abort. | |
214 | ||
d5cecca9 AC |
215 | Tue Oct 14 11:13:27 1997 Andrew Cagney <cagney@b1.cygnus.com> |
216 | ||
217 | * igen.c (print_itrace): Output line-ref to igen source file when | |
218 | generating trace statements. | |
219 | (print_itrace_prefix, print_itrace_format): Escape newline at end | |
220 | of each line of generated call to trace function. | |
221 | ||
222 | Mon Oct 13 11:27:31 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
223 | ||
224 | * gen-support.c (gen_support_h): Generate #define NIA. Definition | |
225 | dependant on gen-delayed-branch mode. | |
226 | ||
227 | * ld-insn.c (parse_insn_mnemonic_record): Check for opening and | |
228 | closing double quote in mnemonic field. | |
229 | (parse_option_record): Add gen-delayed-branch option. | |
230 | ||
8782bfcf AC |
231 | Wed Oct 8 13:10:16 1997 Andrew Cagney <cagney@b1.cygnus.com> |
232 | ||
233 | * gen.c (insn_list_insert): Missing \n in warning. | |
234 | ||
235 | * ld-insn.c (load_insn_table): Only notify of discarded | |
236 | instrctions when warn.discard enabled. | |
237 | ||
238 | * igen.h: Add option.warn.discard, default enabled. | |
239 | ||
240 | * igen.c (main): Add -Wnodiscard option. | |
241 | ||
242 | * ld-insn.c (record_type): For old record type, check the number | |
243 | of fields is correct. | |
244 | (load_insn_table): Allow insn assembler and insn model records to | |
245 | appear in any order. | |
246 | (parse_insn_model_record): Rename from parse_insn_model_records. | |
247 | Parse only one record. | |
248 | (parse_insn_mnemonic_record): Rename from | |
249 | parse_insn_mnemonic_records. Parse only one record. | |
250 | ||
251 | Tue Sep 23 15:52:06 1997 Felix Lee <flee@yin.cygnus.com> | |
252 | ||
253 | * gen-itable.c (gen_itable_h): [nr_itable_* + 1] to avoid | |
254 | illegal zero-sized array. | |
255 | (itable_print_set): likewise, avoid empty initializers. | |
256 | ||
257 | Mon Sep 22 18:49:07 1997 Felix Lee <flee@cygnus.com> | |
258 | ||
259 | * configure.in: i386-windows is a cross, so don't expect | |
260 | libiberty to be there. | |
261 | * configure: updated. | |
262 | ||
6a4c8f1e AC |
263 | Fri Sep 19 10:36:30 1997 Andrew Cagney <cagney@b1.cygnus.com> |
264 | ||
265 | * igen.c (print_function_name): Put the format name after the | |
266 | function / instruction name, not before. | |
8782bfcf | 267 | (print_itrace): Better format trace code. |
6a4c8f1e | 268 | |
3484de00 AC |
269 | Tue Sep 16 11:01:07 1997 Andrew Cagney <cagney@b1.cygnus.com> |
270 | ||
271 | * gen.c (insns_bit_useless): Don't treat string fields restricted | |
272 | to a range of values as useless. | |
273 | ||
a2ab5e65 AC |
274 | Mon Sep 15 15:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com> |
275 | ||
06042536 AC |
276 | * igen.c (gen_run_c): Handle non-multi-sim case. |
277 | ||
a2ab5e65 AC |
278 | * gen-support.c (gen_support_h): Define SD_ - to replace _SD. |
279 | Define CIA from cia. | |
280 | ||
cf5c6e6e AC |
281 | Thu Sep 11 10:27:39 1997 Andrew Cagney <cagney@b1.cygnus.com> |
282 | ||
283 | * gen-semantics.c (print_semantic_body): Trace the instruction | |
284 | after it has been validated. | |
285 | (print_semantic_body): Count the instruction using sim-profile. | |
286 | ||
8f050205 AC |
287 | Wed Sep 10 13:35:37 1997 Andrew Cagney <cagney@b1.cygnus.com> |
288 | ||
289 | * gen-itable.c (gen_itable_h): Collect summary info on instruction | |
290 | table when traversing it. | |
291 | (gen_itable_h): Output an enum defining the max size of each of | |
292 | the itable string members. | |
293 | ||
687f3f1c AC |
294 | Tue Sep 9 03:30:26 1997 Andrew Cagney <cagney@b1.cygnus.com> |
295 | ||
296 | * igen.c (gen_run_c): New function. Generate sim_engine_run that | |
297 | looks at the currently selected architecture. | |
298 | ||
299 | * gen-engine.c, gen-idecode.c: Add multi-sim support - generate | |
300 | one engine per model. | |
301 | ||
302 | * gen-semantics.c, gen-icache.c gen-support.c: | |
303 | Update. | |
304 | ||
305 | * ld-insn.h, ld-insn-h (load_insn_table): Rewrite. table.h only | |
306 | returns a line at a time. Parse multi-word instructions. Add | |
307 | multi-sim support. | |
308 | ||
309 | * table.h, table.c: Simplify. Only parse a single line at a time. | |
310 | ld-insn can handle the rest. | |
311 | ||
312 | * filter.h, filter.c (filter_parse, filter_add, filter_is_subset, | |
313 | filter_is_common, filter_is_member, filter_next): New filter | |
314 | operations. | |
315 | (dump_filter): Ditto. | |
316 | ||
317 | * gen.h, gen.c: New file. Takes the insn table and turns it into | |
318 | a set of decode tables and semantic functions. | |
319 | ||
320 | * ld-insn.c: Copy generator code from here. | |
321 | * gen.c: To here. | |
322 | ||
323 | Fri Aug 8 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
324 | ||
325 | * misc.h (NZALLOC): Allocate an N element array of TYPE. | |
326 | ||
327 | * table.h, table.c: Simplify table parser so that it only | |
328 | understands colon delimited lines and code blocks. | |
329 | (table_read): Parse '{' ... '}' as a code block. | |
330 | (table_print_code): New function, print out a code block to file. | |
331 | (main): Add suport for standalone testing. | |
332 | ||
333 | * ld-insn.h, ld-insn.c: | |
334 | ||
335 | ||
336 | Mon Sep 1 11:41:12 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
337 | ||
338 | * gen-idecode.c (error_leaf_contains_multiple_insn): Make static. | |
339 | (print_jump_definition, print_jump, print_jump_internal_function, | |
340 | print_jump_insn, print_jump_until_stop_body): Delete, moved to | |
341 | sim-engine.c | |
342 | ||
343 | * igen.c (print_itrace_format): Delete unused variable chp. | |
344 | (gen-engine.h): Include. | |
345 | ||
346 | * table.c (current_file_name, current_line_entry, | |
347 | current_line_entry): Make static. | |
348 | ||
349 | Wed Aug 6 12:31:17 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
350 | ||
351 | * configure.in: Define AR_FOR_BUILD, AR_FLAGS_FOR_BUILD, | |
352 | RANLIB_FOR_BUILD and CFLAGS_FOR_BUILD. | |
353 | * configure.in: Include simulator common/aclocal.m4. | |
354 | * configure.in: Add --enable-sim-warnings option. | |
355 | * configure: Re-generate. | |
356 | ||
357 | * Makefile.in: Use. | |
358 | ||
359 | * Makefile.in (tmp-filter): New rule. | |
360 | (igen.o, tmp-table, tmp-ld-decode, tmp-ld-cache, tmp-ld-insn, | |
361 | ld-decode.o, ld-cache.o, ld-insn.o): Fix dependencies. | |
362 | ||
363 | * gen.h, gen.c: New files. | |
364 | ||
365 | * Makefile.in (gen.o, tmp-gen): New rules, update all | |
366 | dependencies. | |
367 | ||
368 | Tue Jun 24 11:46:45 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
369 | ||
370 | * ld-insn.c (load_insn_table): Accept %s as a function type. | |
371 | ||
0bdfae11 AC |
372 | Thu Jun 5 17:14:32 1997 Andrew Cagney <cagney@b1.cygnus.com> |
373 | ||
374 | * igen.c (print_itrace_prefix): Move printing of insn prefix to | |
375 | here. | |
376 | (print_itrace_format): Drop printing of MY_NAME in instruction | |
377 | trace. Printing of insn prefix moved. | |
378 | (print_itrace): Ditto. | |
379 | ||
380 | Fri May 30 11:27:37 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
381 | ||
382 | * gen-icache.c (print_icache_function_header): Pass | |
383 | table_line_entry instead of separate file and line. | |
384 | ||
385 | * table.c (table_entry_read): Set assembler source file/line-nr to | |
386 | the current not initial file. | |
387 | (table_entry_read): Fix line numbering of source files. | |
388 | ||
389 | table.h (table_line_entry): New structure. Exactly specifies a | |
390 | source file/line-nr. | |
391 | (table_*_entry): Add this to all. | |
392 | ||
393 | table.c (table_entry_print_cpp_line_nr): Change to use values from | |
394 | a table_line_entry struct. | |
395 | (table_entry_read): Save table_line_entry in all structures read. | |
396 | ||
397 | gen-icache.c, gen-support.c, gen-idecode.c, gen-semantics.c, | |
398 | gen-model.c: Update all references. | |
399 | ||
efe4f1cb AC |
400 | Thu May 29 10:29:57 1997 Andrew Cagney <cagney@b1.cygnus.com> |
401 | ||
0bdfae11 AC |
402 | * igen.c (print_my_defines): Define MY_NAME - a string. For |
403 | MY_PREFIX, undefine the name of the function incase some dumb | |
404 | header defined it. it. | |
405 | (print_itrace): Use MY_NAME not MY_PREFIX. | |
406 | ||
efe4f1cb AC |
407 | * lf.c (lf_write): New function write an N character buffer to the |
408 | file. | |
409 | ||
410 | * igen.c (print_itrace): When available, use the assembler to | |
411 | print the insn-trace. | |
412 | (print_itrace_prefix): New function, print first part of call to | |
413 | print_one_insn. | |
414 | (print_itrace_format): New function, print fmt argument for | |
415 | print_one_insn. | |
416 | ||
417 | * table.c (table_entry_read): Save any assembler lines instead of | |
418 | discarding them. | |
419 | ||
420 | Wed May 28 09:55:29 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
421 | ||
422 | * gen-icache.c (print_icache_body): Process immeds. | |
423 | ||
424 | * gen-semantics.c (print_semantic_body): When computing NIA, skip | |
425 | any immed words that follow the instruction word. | |
426 | ||
427 | * ld-insn.c (parse_insn_format): Parse immeds appended to an | |
428 | instruction. | |
429 | ||
430 | * igen.c (main): Allow any register to be specified as the zero | |
431 | register. | |
432 | (semantic_zero_reg): Global, index to zero register. | |
433 | ||
434 | * gen-semantics.c (print_semantic_body): Zero selected register. | |
435 | ||
2f2e6c5d AC |
436 | Tue May 27 14:12:32 1997 Andrew Cagney <cagney@b1.cygnus.com> |
437 | ||
438 | * igen.h: Stop options and code gen type bit masks overlaping. | |
439 | ||
b5263784 AC |
440 | Fri May 23 12:01:08 1997 Andrew Cagney <cagney@b1.cygnus.com> |
441 | ||
442 | * gen-semantics.c (print_semantic_body): Incorrect test for | |
443 | zero-r0 code. | |
444 | ||
445 | Fri May 16 14:32:31 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
446 | ||
447 | * gen-semantics.c (print_semantic_body): Use common sim-engine | |
448 | interface. | |
449 | ||
37a684b8 AC |
450 | Fri May 16 11:48:30 1997 Andrew Cagney <cagney@b1.cygnus.com> |
451 | ||
452 | * gen-semantics.c (print_semantic_body): Add code to clear r0. | |
453 | ||
454 | * igen.c (main): Add new option zero-r0, which adds code to clear | |
455 | GPR(0) each cycle. | |
456 | ||
381f42ef AC |
457 | Wed May 7 12:31:30 1997 Andrew Cagney <cagney@b1.cygnus.com> |
458 | ||
459 | * igen.c (print_itrace): Fix so line-nr is passed to trace | |
460 | function. | |
461 | ||
462 | * gen-idecode.c (print_idecode_validate): Correct FP code. | |
463 | ||
464 | * gen-support.c (gen_support_h): Always pass MY_INDEX to support | |
465 | functions. | |
466 | (print_support_function_name): Ditto. | |
467 | ||
a7724171 MM |
468 | Tue May 6 06:12:04 1997 Mike Meissner <meissner@cygnus.com> |
469 | ||
470 | * igen.c (print_itrace): Call trace_one_insn to trace | |
471 | instructions, rather than doing it directly. | |
472 | ||
d23af882 MM |
473 | Mon May 5 14:11:46 1997 Mike Meissner <meissner@cygnus.com> |
474 | ||
475 | * gen-engine.c (engine_switch_leaf): Remove extra %s. | |
476 | (print_engine_floating_point_unavailable): Wrap in #ifdef | |
477 | UNUSED/#endif, until somebody uses it. | |
478 | ||
479 | * gen-idecode.c (error_leaf_contains_multiple_insn): Remove unused | |
480 | variable. | |
481 | (print_jump_until_stop_body): Wrap in #ifdef UNUSED/#endif, until | |
482 | somebody uses it. | |
483 | (print_idecode_validate): Use long formats to print long values. | |
484 | ||
485 | * gen-semantics.c (print_idecode_invalid): Set name to "unknown" | |
486 | if we get an unexpected type. | |
487 | ||
488 | Fri May 2 13:28:06 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
489 | ||
490 | * igen.c (print_itrace): Pass SD as well as CPU to calls to | |
491 | trace_printf. | |
492 | ||
493 | * gen-support.c (gen_support_h): Always pass sim_cia cia to | |
494 | support functions. | |
495 | (print_support_function_name): Ditto. | |
496 | ||
255925e9 AC |
497 | Wed Apr 30 17:35:51 1997 Andrew Cagney <cagney@b1.cygnus.com> |
498 | ||
499 | * gen-support.c (support_c_function): Remove unnecessary memset of | |
500 | cia. | |
501 | * gen-semantics.c (print_semantic_body): Wasn't closing | |
502 | generated comment. | |
503 | ||
504 | Tue Apr 29 11:11:12 1997 Andrew Cagney <cagney@b1.cygnus.com> | |
505 | ||
506 | * ld-insn.c (load_insn_table): Report instructions that do not | |
507 | have at least a format and name. | |
508 | (insn_table_find_opcode_field): Check progress is being made. | |
509 | ||
510 | * gen-support.c (support_c_function): Report empty function body. | |
511 | ||
abe293a0 AC |
512 | Thu Apr 24 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com> |
513 | ||
514 | * ld-insn.c (insn_table_expand_opcode): Allow reserved fields to | |
515 | be broken up. | |
516 | (insn_table_expand_insns): Allow special rules to apply to groups | |
517 | of instructions when all members of the group match the special | |
518 | mask/value. | |
519 | ||
520 | * gen-semantics.c (print_c_semantic): Ditto. | |
521 | * igen.c (print_semantic_function_formal): Ditto. | |
522 | (print_semantic_function_type): Ditto. | |
523 | * igen.c (print_icache_function_formal): Ditto. | |
524 | * gen-idecode.c (print_idecode_issue_function_body): Ditto. | |
525 | ||
526 | * gen-idecode.c (gen_idecode_h): Prepend the global_prefix to the | |
527 | instruction_address type. | |
528 | ||
529 | * gen-semantics.c (print_semantic_body): Call cpu_error when an | |
530 | unimplemented instruction is encountered - gives the interpreter | |
531 | the chance to stop correctly. | |
532 | ||
480e740c AC |
533 | Wed Apr 23 20:06:36 1997 Andrew Cagney <cagney@b1.cygnus.com> |
534 | ||
535 | * igen.c (print_function_name): Allow dot's in instruction names. | |
536 | ||
15c16493 AC |
537 | Tue Apr 22 21:46:28 1997 Andrew Cagney <cagney@b1.cygnus.com> |
538 | ||
539 | * igen.c (main), igen.h: Support new option - delayed-branch - | |
540 | generate code to drive a delayed branch processor. | |
541 | ||
542 | * gen-idecode.c (gen_idecode_h): Define instruction_address type. | |
543 | ||
544 | * igen.c (print_icache_function_formal): Replace address_word with | |
545 | instruction_address. | |
546 | (print_semantic_function_formal): Ditto. | |
547 | (print_semantic_function_type): Ditto. | |
548 | * gen-idecode.c (print_idecode_issue_function_body): Ditto. | |
549 | ||
550 | * gen-semantics.c (print_semantic_body): Ditto. | |
551 | (print_c_semantic): Ditto. | |
552 | ||
553 | * gen-support.c (support_c_function): Return a zeroed CIA instead | |
554 | of just zero - works with any cia type. | |
555 | ||
556 | * igen.c (print_itrace): For delayed branch case, print just the | |
557 | current instruction. | |
558 | ||
d4f1c49e DE |
559 | Thu Apr 17 07:02:33 1997 Doug Evans <dje@canuck.cygnus.com> |
560 | ||
561 | * igen.c (print_itrace): Use TRACE_FOO_P and trace_printf. | |
562 | ||
c42d5119 ILT |
563 | Tue Apr 15 15:20:31 1997 Ian Lance Taylor <ian@cygnus.com> |
564 | ||
565 | * Makefile.in (INSTALL): Set to @INSTALL@. | |
566 | (INSTALL_XFORM, INSTALL_XFORM1): Remove. | |
567 | ||
568 | Mon Apr 14 16:29:34 1997 Ian Lance Taylor <ian@cygnus.com> | |
569 | ||
570 | * Makefile.in (INSTALL): Change install.sh to install-sh. | |
571 | ||
30bb74ec DE |
572 | Wed Apr 2 18:51:20 1997 Doug Evans <dje@canuck.cygnus.com> |
573 | ||
574 | * gen-support.c (gen_support_c): sim-state.h renamed to sim-main.h. | |
575 | * gen-idecode.c (gen_idecode_c): Likewise. | |
576 | * igen.c (gen_semantics_c): Likewise. | |
577 | ||
578 | Mon Mar 24 10:10:08 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
579 | ||
580 | * gen-icache.c (print_icache_body): No longer define cpu/sd, | |
581 | support.h now defines CPU/SD globally. | |
582 | ||
583 | * gen-model.c (gen_model_h): Ditto. | |
584 | ||
585 | * gen-idecode.c (print_idecode_issue_function_body): Ditto. | |
586 | (print_jump): Ditto. | |
587 | (print_jump_until_stop_body): Ditto. | |
588 | (print_idecode_validate): Ditto. | |
589 | ||
590 | * gen-icache.c (print_icache_body): Ditto. | |
591 | ||
592 | * gen-semantics.c (print_semantic_body): Ditto. | |
593 | ||
594 | * igen.c (print_semantic_function_formal): Rename cpu to sim_cpu, | |
595 | processor to cpu. | |
596 | (print_icache_function_formal): Ditto. | |
597 | ||
598 | * gen-support.c (print_support_function_name): Include sd/cpu arg | |
599 | in support function argument list. | |
600 | (support_c_function): Generate code to cpu/sd from sd/cpu. | |
601 | (gen_support_h): Define _SD the argument prefix for all support | |
602 | functions. Define SD/CPU to determine sd/cpu from value of _SD | |
603 | macro. | |
604 | ||
605 | Tue Mar 18 15:52:24 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
606 | ||
607 | * gen-support.c (gen_support_c): Update for renaming of engine to | |
608 | sim-state. | |
609 | ||
610 | * igen.c: Ditto. | |
611 | * gen-idecode.c (gen_idecode_c): Ditto. | |
612 | ||
a77aa7ec AC |
613 | Mon Mar 17 15:17:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com> |
614 | ||
615 | * ld-decode.c (load_decode_table): Rename slash to reserved. | |
616 | (dump_decode_rule): Ditto. | |
617 | ||
618 | * ld-insn.c (parse_insn_format): Differentiate between a `/' - | |
619 | reserved bit - and a `*' - wild card. | |
620 | (parse_insn_format): Change is_slash to more informative reserved. | |
621 | (dump_insn_field): Ditto. | |
622 | (insn_field_is_constant): Ditto. | |
623 | (insn_table_expand_opcode): Ditto. | |
624 | ||
625 | * gen-idecode.c (print_idecode_validate): Make check_mask and | |
626 | check_val the correct integer size. | |
627 | (print_idecode_validate): Fix reserved bit check for 64 bit | |
628 | targets. | |
629 | ||
3df38197 AC |
630 | Fri Mar 14 11:24:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com> |
631 | ||
632 | * ld-insn.c (parse_insn_format): Accept '*' as an alternative of | |
633 | `/' in bit fields. `/' denotes a wild bit. | |
634 | ||
635 | Fri Mar 7 18:20:38 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
636 | ||
637 | * igen.h, igen.c (main): New options. Control generation of | |
638 | conditional issue and slot verification code. | |
639 | ||
640 | Fri Mar 7 18:17:25 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
641 | ||
642 | * gen-support.c (print_support_function_name): Prepend the global | |
643 | name prefix when applicable. Provide #define to map the user | |
644 | specified name the generated globaly unique one. | |
645 | ||
646 | Fri Mar 7 18:07:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
647 | ||
648 | * gen-idecode.c (print_idecode_validate): Wrap each of the checks | |
649 | - reserved bits, floating point and slot validation - with a | |
650 | #ifdef so that they are optional. | |
651 | ||
652 | Fri Mar 7 16:35:13 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
653 | ||
654 | * gen-idecode.c (error_leaf_contains_multiple_insn): New function | |
655 | - report the error of a leaf node in the decision tree containing | |
656 | several instructions. | |
657 | (print_idecode_table_leaf): Detect a leaf with multiple instructions. | |
658 | (print_idecode_switch_leaf): Ditto. | |
659 | ||
660 | * gen-semantics.h, gen-semantics.c (print_idecode_illegal, | |
661 | print_idecode_invalid): Rename former to latter. Add argument so | |
662 | that one function can generate all invalid instruction cases - | |
663 | illegal, fp-unavailable, wrong-slot. | |
664 | * gen-engine.c: Update. | |
665 | ||
666 | * gen-idecode.c: Use print_idecode_invalid to generate a function | |
667 | call for cases when fp-unavailable and the slot is wrong. | |
668 | ||
669 | * gen-idecode.c (print_idecode_validate): New check, generate code | |
670 | to verify that the instruction slot is correct. | |
671 | ||
672 | * igen.c (main): Simplify options. | |
673 | ||
674 | Wed Mar 5 09:55:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
675 | ||
676 | * igen.c (print_itrace): Remove source line reference for trace | |
677 | code - let the user see the generated file. | |
678 | (print_itrace): Print the trace code rather than reference a | |
679 | macro. | |
680 | ||
681 | Tue Mar 4 17:31:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
682 | ||
683 | * igen.c (print_semantic_function_actual): Pass either the | |
684 | processor - smp - or the engine - mono - into semantic functions. | |
685 | Don't pass in both. | |
686 | ||
687 | * gen-icache.c (print_icache_body): Dependant on smp, derive | |
688 | processor from engine or engine from processor, and hence ensuring | |
689 | that both are defined in all semantic functions. | |
690 | ||
691 | Mon Mar 3 17:11:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
692 | ||
693 | * ld-insn.c (parse_insn_format): Make the width field optional. | |
694 | If missing assume that the number of characters in the value | |
695 | determines the number of bits in the field. | |
696 | ||
697 | Thu Feb 27 11:27:48 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
698 | ||
699 | * ld-insn.c (insn_table_expand_opcode): Replace assertion with | |
700 | more useful error message. | |
701 | ||
702 | Tue Feb 25 16:43:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com> | |
703 | ||
704 | * misc.c (error): Output errors on stderr. | |
705 | ||
706 | * ld-insn.c (parse_insn_format): Skip any leading spaces. | |
707 | Verify the width of instructions being parsed. | |
708 | ||
709 | * table.c (table_entry_read): Parse CPP's convention for | |
710 | specifying original file name/line-nr. | |
711 | ||
712 | Wed Feb 19 12:30:28 1997 Andrew Cagney <cagney@critters.cygnus.com> | |
713 | ||
714 | * ld-insn.c (parse_insn_format): Allow trailing spaces in | |
715 | instruction fields. | |
716 | ||
717 | * Makefile.in: Create using ../ppc/Makefile.in as a starting | |
718 | point. | |
719 | * configure.in: Ditto vis ../ppc/configure.in | |
720 | ||
721 | Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com> | |
722 | ||
723 | * gen-support.c (gen_support_c): Always include engine.h instead | |
724 | of cpu.h | |
725 | * gen-idecode.c (gen_idecode_c): Ditto. | |
726 | ||
727 | * words.h (instruction_word): Remove instruction_word - now | |
728 | generated by igen. | |
729 | (address_word): New. Used by igen. | |
730 | ||
731 | * lf.c (lf_print_function_type_function): New, pass a function to | |
732 | print out the type instead of a constant string. | |
733 | ||
734 | * igen.h, igen.c (print_semantic_function_formal, | |
735 | SEMANTIC_FUNCTION_FORMAL): Relace macro with function. | |
736 | (print_semantic_function_actual, SEMANTIC_FUNCTION_ACTUAL): Ditto. | |
737 | (print_semantic_function_type, SEMANTIC_FUNCTION_TYPE): Ditto. | |
738 | (print_icache_function_type, ICACHE_FUNCTION_TYPE): Ditto. | |
739 | (print_icache_function_formal, ICACHE_FUNCTION_FORMAL): Ditto. | |
740 | (print_icache_function_actual, ICACHE_FUNCTION_ACTUAL): Ditto. | |
741 | * gen-idecode.c (print_idecode_table): Update. | |
742 | (idecode_switch_leaf): Update. | |
743 | (print_idecode_switch_function_header): Ditto. | |
744 | (print_idecode_floating_point_unavailable): Ditto. | |
745 | (print_idecode_issue_function_header): Ditto. | |
746 | * igen.c (gen_icache_h): Ditto. | |
747 | * gen-engine.c (print_engine_table): Ditto. | |
748 | (engine_switch_leaf): Ditto. | |
749 | * gen-support.c (print_support_function_name): Ditto. | |
750 | * gen-semantics.c (print_semantic_function_header): Update. | |
751 | Update. | |
752 | * gen-icache.c (print_icache_function_header): Update. | |
753 | (print_icache_function): Update. | |
754 | (print_icache_internal_function_declaration): Update. | |
755 | (print_icache_internal_function_definition): Update. | |
756 | ||
757 | * gen-idecode.c (gen_idecode_h): Drop including of idecode_*.h | |
758 | files, will at some stage need to move it into support. | |
759 | ||
760 | * igen.h, igen.c (main): New option -e <engine> - generate a full | |
761 | simulation engine. Previously this was the -d <idecode-file> | |
762 | option. | |
763 | * gen-engine.h, gen-engine.c: Copies of gen-idecode.*. Will need | |
764 | to clean these up so that that call upon the updated gen-idecode | |
765 | code. | |
766 | ||
767 | * gen-idecode.h, gen-idecode.c: Prune out any code not relevant to | |
768 | generating a decode table. | |
769 | ||
770 | * Makefile.in (igen): Add dependencies for new gen-engine.* files. | |
771 | ||
772 | * igen.h, igen.c (main): New option -M - Control what is returned | |
773 | by semantic functions - -1/NIA vs CIA+N/NIA. Add | |
774 | generate_semantic_returning_modified_nia_only to igen_code enum. | |
775 | * gen-semantics.c (print_semantic_body): As an alternative, make | |
776 | NIA == -1 instead of CIA+insn_size by default. | |
777 | ||
778 | * igen.h, igen.c (main, global_name_prefix, global_uname_prefix): | |
779 | New option -P <prefix> - Prepend all generated functions with the | |
780 | specified prefix. | |
781 | (gen_idecode_c): Adjust. | |
782 | * gen-icache.c (print_icache_struct): Ditto. | |
783 | * gen-support.c (gen_support_c): Ditto. | |
784 | ||
785 | Sun Feb 16 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com> | |
786 | ||
787 | * igen.c (main): Correct usage. Missleading message about ucase | |
788 | options dumping internal tables. -F now includes rather then | |
789 | excludes instructions. | |
790 | ||
791 | * misc.h, misc.c (a2i): Make 64bit. | |
792 | ||
793 | * ld-insn.h (max_insn_bit_size, default_insn_bit_size): Increase | |
794 | max to 64bits, expect trouble. Make the default 32 bits. | |
795 | * gen-idecode.c (print_idecode_table): Change EXTRACTED* | |
796 | et.al. macro's to use the insn_bit_size instead of assuming 32 | |
797 | bits. | |
798 | * gen-icache.c (print_icache_extraction): Ditto. | |
799 | * gen-idecode.c (idecode_switch_start): Ditto. | |
800 | * gen-idecode.c (gen_idecode_c): Ditto | |
801 | ||
802 | * igen.h (insn_specifying_widths), igen.c (main): New option -W. | |
803 | Indicates that the instruction field of the table is specifying | |
804 | bit widths instead of bit offsets. | |
805 | * ld-insn.c (parse_insn_format): Parse instruction fields | |
806 | specifying widths. | |
807 | ||
808 | * misc.c (a2i): Allow binary numbers to be specified using the | |
809 | syntax 0bNNNN. | |
810 | * ld-insn.c: Allow such numbers to appear in the instruction | |
811 | format. | |
812 | ||
813 | * table.c (table_entry_read): Make // a valid comment character. | |
814 | (table_entry_read): Skip lines containing a leading " - these may | |
815 | eventually be used in a disasembler. | |
816 | ||
817 | Fri Feb 14 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com> | |
818 | ||
819 | * filter.c, filter.h, gen-engine.c, gen-engine.h, gen-icache.c, | |
820 | gen-icache.h, gen-idecode.c, gen-idecode.h, gen-itable.c, | |
821 | gen-itable.h, gen-model.c, gen-model.h, gen-semantics.c, | |
822 | gen-semantics.h, gen-support.c, gen-support.h, igen.c, igen.h, | |
823 | ld-cache.c, ld-cache.h, ld-decode.c, ld-decode.h, ld-insn.c, | |
824 | ld-insn.h, lf.c, lf.h, misc.c, misc.h, table.c, table.h: Copy in | |
825 | from the ../ppc directory. | |
826 | ||
827 | * filter_host.c, filter_host.h: Copy in from the ../ppc directory | |
828 | renaming from filter_filename.[hc] |