OSDN Git Service

* public snapshot of sid simulator
[pf3gnuchains/pf3gnuchains3x.git] / sid / include / ChangeLog
1 2000-11-27  Frank Ch. Eigler  <fche@redhat.com>
2
3         * sidattrutil.h (attribute_coder_alias): New coder for attribute
4         aliases.
5         (fixed_attribute_map_component::add_attribute_alias): New functions.
6
7 2000-10-13  Jeff Johnston <jjohnstn@redhat.com>
8
9         * sidbusutil.h (passthrough_word_bus): Made target protected.
10         * sidcpuutil.h (add_watchable_register): Overloaded to allow
11         specifying using a virtual attribute and a parameterized virtual
12         attribute.
13         (add_watchable_ro_register): New method to specify a read-only
14         watchable register.
15
16 2000-09-22  Frank Ch. Eigler  <fche@redhat.com>
17
18         * Makefile.in: Regenerated.
19
20 2000-09-13  Jeff Johnston  <jjohnstn@redhat.com>
21
22         * sidbusutil.h (passthrough_word_bus): Made word_write and
23         word_read methods abstract virtual.
24         (harvard_bus): Changed map_addr_to_bus to accept a pointer to
25         address so address can be modified once segment information is
26         used.  Address subtracts first appropriate segment.  GB_READ
27         and GB_WRITE macros changed appropriately to pass pointer to
28         address.
29
30 2000-09-06  Frank Ch. Eigler  <fche@redhat.com>
31
32         * sidbusutil.h (harvard_bus): Switch "unsigned int" -> "host_int_4"
33         throughout.
34         * sidcpuutil.h (basic_cpu ctor): Reorder initializers.
35
36 2000-08-30  Jeff Johnston  <jjohnstn@redhat.com>
37
38         * sidbusutil.h (passthrough_word_bus): Changed SID_GB_READ and
39         SID_GB_WRITE macros to properly access bus pointer.
40         (harvard_bus): Changed protected and private members to be
41         public and protected, respectively.
42         * sidcpuutil.h (basic_cpu): Made data_bus and insn_bus protected
43         members instead of private.  Also changed read_insn_memory template
44         to add address parameter in addition to pc.  Added write_insn_memory
45         template.  Changed read_insn_memory_1, read_insn_memory_2, 
46         read_insn_memory_4, and read_insn_memory_8 to use extra parameter
47         to get storage and to use pc when reporting memory fault.
48         Added write_insn_memory_1, write_insn_memory_2, write_insn_memory_4,
49         and write_insn_memory_8.
50         (basic_big_endian_cpu, basic_little_endian_cpu, basic_bi_endian_cpu):
51         Changed all read_insn_memory_x routines to have extra address
52         parameter.  Added write_insn_memory_x routines.
53         * Makefile.in: Regenerated.
54
55 2000-08-25  Frank Ch. Eigler  <fche@redhat.com>
56
57         * sidbusutil.h (passthrough_word_bus): Correct pointer usage error.
58
59 2000-06-22  Jeff Johnston <jjohnstn@redhat.com>
60
61         * sidbusutil.h (harvard_bus): New class to provide mapping
62         between single virtual address space and harvard architecture.
63         (passthrough_word_bus): New class that combines passthrough_bus
64         and word_bus, plus allows short circuiting of accesses to the
65         underlying bus.
66         (fixed_bus_map_component): Added disconnect_bus member function which
67         corresponds to class fixed_accessor_map_component member function:
68         disconnect_accessor.
69
70 2000-05-26  Frank Ch. Eigler  <fche@redhat.com>
71
72         * sidcpuutil.h, sidmiscutil.h, sidpinutil.h: Use std:: more.
73
74         * configure.in: Test std:: prefix for ctype functions.
75         * sidattrutil.h: Use result.
76         * configure, sidconfutil.in: Regenerated.
77
78 2000-05-22  Ben Elliston  <bje@redhat.com>
79
80         * Makefile.in: Regenerate.
81
82 2000-04-05  Frank Ch. Eigler  <fche@redhat.com>
83
84         * sidcpuutil.h (create_gdb_register_attrs): Make this a template
85         function to allow 64-bit PC type.
86
87 2000-03-16  matthew green  <mrg@redhat.com>
88
89         * sidtypes.h: Add complete NetBSD support via <machine/endian.h>.
90         Fix alpha (was big endian).
91
92 2000-03-14  Frank Ch. Eigler  <fche@redhat.com>
93
94         * sidcpuutil.h (cpu_trap_type, cpu_trap_disposition): Rearranged.
95         (cpu_exception*): New exception types.
96         (basic_cpu): New component type for common features of cpu models.
97         (basic_*_endian_cpu): New derived classes for various-endian models.
98
99 2000-03-15  matthew green  <mrg@redhat.com>
100
101         * sidbusutil.h: Add several `throw()' specifiers to functions whose
102         virtual declaration included the throw. New GCC checks this more
103         completely.
104         * sidpinutil.h: Likewise.
105
106 2000-02-29  Frank Ch. Eigler  <fche@redhat.com>
107
108         * sidwatchutil.h (test_range): New predicate for watchables.
109         (state_watcher_range): New watcher class.
110         (create_virtual_pin): Parse "range" triggerpoint type.
111
112 2000-02-03  Frank Ch. Eigler  <fche@redhat.com>
113
114         * sidbusutil.h (word_bus::readAny): Correct mask calculation.
115
116 2000-01-25  Frank Ch. Eigler  <fche@redhat.com>
117
118         * sidbusutil.h (callback_word_bus): New template class.
119
120 2000-01-18  Frank Ch. Eigler  <fche@cygnus.com>
121
122         * sidmiscutil.h (ok): New member function in recursion_limited, 
123         recursion_record.
124         (recursion_limited): Print supplied label and counts in error
125         message in case of recursion overflow.  Do not abort().
126
127 2000-01-10  Frank Ch. Eigler  <fche@cygnus.com>
128
129         * sidattrutil.h (add_attribute_virtual_parameterized): New functions.
130         * sidtypes.h (*): Simplified comments, mildly reformatted.
131         (any_int<>::size_N_type): New utility typedefs.
132
133 2000-01-05  Frank Ch. Eigler  <fche@cygnus.com>
134
135         * sidmiscutil.h (string2stream op <<): Use %-encoding on more
136         semiprintable characters.
137         * sidpinutil.h (input_pin op <<,>>): New functions.
138         (output_pin op <<,>>): Ditto.
139         (inputoutput_pin op <<,>>): Ditto.
140
141 1999-12-29  Frank Ch. Eigler  <fche@cygnus.com>
142
143         * sidattrutil.h (make_attribute): Make these static, non-inline
144         functions.
145         (parse_attribute, make_numeric_attribute): Ditto.
146         (parse_unsigned_numeric_attribute): Ditto.
147
148 1999-12-06  Frank Ch. Eigler  <fche@cygnus.com>
149
150         * sidbusutil.h (byte_bus): Return sid::bus::unmapped for all
151         non-byte-sized accesses.
152
153 1999-12-03  Frank Ch. Eigler  <fche@cygnus.com>
154
155         * sidbusutil.h (connect_accessor): Reject duplicate operand.
156         (disconnect_accessor): Reject mismatching operand.
157
158 1999-12-02  Frank Ch. Eigler  <fche@cygnus.com>
159
160         * sidwatchutil (checking_any_p): New function.
161
162 1999-11-30  Ben Elliston  <bje@cygnus.com>
163
164         * sidtypes.h: Specify endianness for Alpha hosts.
165
166 1999-11-29  Ben Elliston  <bje@cygnus.com>
167
168         * sidcomp.h (API_MINOR_VERSION): Bump it.
169         (sid::component::disconnect_accessor): New method.
170         * sidbusutil.h
171         (fix_accessor_map_component::disconnect_accessor): New method.
172         * sidcomputil.h
173         (no_accessor_component::disconnect_accessor): Likewise.
174
175 1999-11-26  Frank Ch. Eigler  <fche@cygnus.com>
176
177         * sidwatchutil.h (map_watchable_name): Export as standalone function.
178         
179 1999-11-23  Frank Ch. Eigler  <fche@cygnus.com>
180
181         * sidcomp.h: (API_MAJOR,MINOR_VERSION): Bump to 2/1.
182         (*): Unverbosify comments throughout.
183         (sid::pin::driven): Remove (void) variety.
184         (sid::component::*): Make all members non-const.
185         (relationship_names): New, replaces relationships().
186         (set_related_components): Gone, replaced by:
187         (relate, unrelate): New functions.
188
189         * sidattrutil.h (make_numeric_attribute): Really set incoming flags.
190         (parse_unsigned_numeric_attribute): Reject empty strings.
191         
192         (fixed_attribute_map_component): Make
193         inherited members non-const.
194         * sidbusutil.h (fixed_accessor_map_component): Ditto.
195         (fixed_bus_map_component): Ditto.
196         * sidcomputil.h (no_bus_component, no_accessor_component): Ditto.
197         (no_pin_component, no_attribute_component): Ditto.
198         (no_relationship_component): Ditto.  Update for new API functions.
199         (fixed_relationship_map_component): Rewrite.
200         (sid_breakpoint): Remove this debugging hook.
201         * sidpinattrutil.h (*): Remove support for (void) pin values.
202         * sidpinutil.h (*): Ditto.
203         (callback_pin): Simplified.
204         * sidschedutil (scheduler_event_subscription): Simplify.
205         (event_handler): New callthrough function.
206         (now): Drive output pin with sentinel value.
207         * sidwatchutil.h (check_and_inform): Ditto.
208         
209 1999-11-19  Frank Ch. Eigler  <fche@cygnus.com>
210
211         * sidpinutil.h (output_pin): Rewrite.  No longer is-a sid::pin.
212         (inputoutput_pin): New class.
213         (add_pin): Overload for classes separately.
214         (find_pin): Search only input_pin list.
215         (connect_pin): Return error code from output_pin::connect.
216         Defend better against null pointers.
217         (disconnect_pin): Ditto.
218         
219         * sidpinattrutil.h (make_attribute, parse_attribute): Rewrote
220         functions.  Replaced attribute_coder<> templates.
221
222 1999-11-12  Ben Elliston  <bje@cygnus.com>
223
224         * sidattrutil.h (attribute_coder_virtual_parameterized): Rename
225         from the misspelled addtribute_coder_virtual_parametrized.
226
227 1999-11-08  Frank Ch. Eigler  <fche@cygnus.com>
228
229         * sidmiscutil.h (tokenize): Handle the case of a separator terminating
230         the input string.
231
232 1999-11-02  Frank Ch. Eigler  <fche@cygnus.com>
233
234         * sidwatchutil.h (state_watchable_base): Add new members for
235         multiple-watcher tracking.
236         (one_more_watcher, one_less_watcher): New functions.
237         (test_change_value): New function: renamed from test_change().
238         (test_change): New function.  Replay return value from
239         test_change_value multiple times, once for each watcher.
240         (state_watcher_base): Register self with target watchable during
241         ctor/dtor.
242
243 1999-10-19  Frank Ch. Eigler  <fche@cygnus.com>
244
245         * Makefile.in: Regenerated.
246         * configure: Regenerated.
247
248 1999-10-10  Faisal Khoja  <fkhoja@cygnus.com>
249
250         * sidattrutil.h (class attribute_coder_base): Introduced virtual 
251         destr.
252         (class attribute_coder_virtual): Introduced destructor
253         (class attribute_coder_virtual_parametrized): Likewise
254         (class attribute_coder): Likewise
255         (class attribute_coder_ro): Likewise
256         (class attribute_coder_ro_value): Likewise
257         (class attribute_coder_bus_rw): Likewise
258         (class attribute_coder_bus_wo): Likewise
259         * sidtypes.h (operator <<): Introduced return.
260
261 1999-10-08  Faisal Khoja  <fkhoja@cygnus.com>
262
263         * sidattrutil.h (parse_unsigned_numeric_attribute): changed type of var
264         c from char to unsigned char.
265         
266 1999-10-08  Frank Ch. Eigler  <fche@cygnus.com>
267
268         * sidcomp.h (bus, pin): Take integers as values, not const-refs.
269         (API_MINOR_VERSION): Bump it.
270         * sidtypes.h (any_int ctor, operator =): Take values, not const-refs.
271         Use constructor initializers when possible.
272         * sidso.h (COMPONENT_LIBRARY_MAGIC): Declare as host_int_4.
273         * sidbusutil.h (*): Corresponding changes.
274         * sidpinutil.h (*): Corresponding changes.
275         
276 1999-10-07  Faisal Khoja  <fkhoja@cygnus.com>
277
278         * sidattrutil.h: Removed try and catch. Did some indenting
279         * sidbusutil.h: Likewise
280         * sidcomputil.h: Likewise
281         * sidcomp.h: Likewise
282         * sidpinutil.h: Likewise
283
284 1999-10-04  Frank Ch. Eigler  <fche@cygnus.com>
285
286         * sidcomp.h: Don't depend on installed sidconfig.h.
287         * sidso.h: Ditto.
288         * sidtypes.h: Ditto.  Determine host endianness via platform #ifdefs.
289         * sidconfutil.in: New file; replace old
290         * sidconf.in: Deleted.
291         * sidconfig.h: Adapt to renaming.
292         * configure.in: Adapt to renaming.  Don't check for host endianness.
293         * configure: Regenerated.
294         * Makefile.am: Don't install sidconfutil and friends.
295         * Makefile.in: Regenerated.
296
297 1999-09-28  Frank Ch. Eigler  <fche@cygnus.com>
298
299         * sidwatchutil.h (create_virtual_pin): Use ":" as name separator for
300         triggerpoint watcher pins.  Accept "watch:WATCHABLE:value:VALUE" to
301         imply all-ones mask.
302
303 1999-09-25  Doug Evans  <devans@casey.cygnus.com>
304
305         * sidattrutil.h (parse_unsigned_numeric_attribute): Renamed
306         from parse_numeric_attribute.  All callers changed.
307         Template parameter Value renamed to unsignedValue.
308         (make_attribute): Add versions for signed numbers.
309         (parse_attribute): Add versiosn for signed numbers.
310
311         * sidcpuutil.h (cpu_trap_type): New values cpu_trap_breakpoint,
312         cpu_trap_syscall.  Renumber values.
313
314 1999-09-23  Frank Ch. Eigler  <fche@cygnus.com>
315
316         * sidtypes.h (operator <<,>>): Remove stream flag changing.
317         * sidcomp.h (API_MINOR_VERSION): Bump it.
318
319         * sidattrutil.h: Revamped make_attribute & parse_attribute family
320         for bool and numeric types.
321         (parse_numeric_attribute, make_numeric_attribute): New functions.
322
323         * sidstringutil.h: Deleted.
324         * Makefile.am: Forget about it.
325         * Makefile.in: Regenerated.
326
327 1999-09-22  Ben Elliston  <bje@cygnus.com>
328
329         * sidattrutil.h: Reformat for clarity and consistency.
330         * sidbusutil.h: Likewise.
331         * sidcomp.h: Likewise.
332         * sidcomputil.h: Likewise.
333         * sidconfig.h: Likewise.
334         * sidcpuutil.h: Likewise.
335         * sidmiscutil.h: Likewise.
336         * sidpinattrutil.h: Likewise.
337         * sidpinutil.h: Likewise.
338         * sidschedutil.h: Likewise.
339         * sidso.h: Likewise.
340         * sidstringutil.h: Likewise.
341         * sidtypes.h: Likewise.
342         * sidwatchutil.h: Likewise.
343
344 1999-09-16  Frank Ch. Eigler  <fche@cygnus.com>
345
346         * Makefile.am (ACLOCAL_AMFLAGS): Define.
347         * Makefile.in: Regenerated.
348
349 1999-09-13  Frank Ch. Eigler  <fche@cygnus.com>
350
351         * sidcomp.h (API_MINOR_VERSION): Bump it.
352         * sidtypes.h: Remove compiler_int_X type.  Replace with host_int_X.
353         (bytereverse - 8): Use divide-and-conquer unconditionally.
354         * sidattrutil.h (*): Use host_int_X, not compiler_int_X.
355         * sidbusutil.h, sidschedutil.h, sidstringutil.h: Ditto.
356
357 1999-09-10  Frank Ch. Eigler  <fche@cygnus.com>
358
359         * sidwatchutil.h (map_watchable_name): New function.
360         (add_watchable): Call it to preprocess arbitrary watchable name.
361
362         (destroy_virtual_pin): Unregister about-to-be orphaned pin.
363
364 1999-08-31  Frank Ch. Eigler  <fche@cygnus.com>
365
366         * Makefile.am (noinst_HEADERS): Add new file.
367         * Makefile.in: Regenerated.
368         * sidstringutil.h (hex_string): Use freeze(0) instead of freeze().
369         (*): Minor cleanup.
370
371 1999-08-31  Ian Carmichael  <iancarm@cygnus.com>
372
373         * sidstringutil.h: New file.
374
375 1999-08-31  Ben Elliston  <bje@cygnus.com>
376
377         * sidattrutil.h (sidutil::make_attribute): Free ostrstream buffer
378         on destruction. Fix for CR 101044.
379         (sidutil::MAKE_UNSIGNED_ATTRIBUTE): Likewise.
380
381 1999-08-24  Frank Ch. Eigler  <fche@cygnus.com>
382
383         * sidmiscutil.h (std_error_string): New function.
384         * configure.in: Look for strerror.
385         * configure: Regenerated.
386         * sidconf.in: Regenerated.
387
388 1999-08-20  Frank Ch. Eigler  <fche@cygnus.com>
389
390         * sidcomp.h: Amputate component::supervisory().
391         (API_MINOR_VERSION): Bump it.
392         * supervisory.h: Removed file.
393         * sidcomputil.h (no_attribute_component): Remove supervisory() stub.
394         * sidtypes.h (endian): Remove endian enum from here.
395         * sidcpuutil.h (endian): Move endian enum here.
396         (operator <<,>>): New streaming ops for sidutil::endian.
397         * sidattrutil.h: Cleaned up comments.
398         (attribute_coder_virtual_parametrized): New template class.
399         (fixed_attribute_map_component): Remove supervisory() stub.
400         (parse_attribute): Check for stream errors more ANSI-abidingly.
401         * sidbusutil.h (passthrough_bus): New class.
402         * sidmiscutil.h (operator >>): Use ANSI setstate() instead of setf(). 
403
404 1999-08-16  Ian Carmichael  <iancarm@cygnus.com>
405
406         * sidbusutil.h: readByte and writeByte members renamed.
407         * sidtypes.h: readByte and writeByte members renamed.
408
409 1999-08-16  Ian Carmichael  <iancarm@cygnus.com>
410
411         * sidattrutil.h: sid::component members renamed.
412         * sidbusutil.h: sid::component members renamed.
413         * sidcomp.h: sid::component members renamed.
414         * sidcomputil.h: sid::component members renamed.
415         * sidpinattrutil.h: sid::component members renamed.
416         * sidpinutil.h: sid::component members renamed.
417         * sidso.h: sid::component members renamed.
418         * sidtypes.h: sid::component members renamed.
419         * sidwatchutil.h: sid::component members renamed.
420
421 1999-08-11  Ian Carmichael  <iancarm@cygnus.com>
422
423         * sidtypes.h: (*): Change big_int_N and little_int_N so that
424         the default operations all use their integer values.
425         * sidattrutil.h, sidbusutil.h: (*): Ditto.
426
427         * sidattrutil.h: (make_attribute_*, parse_attribute_*): All
428         attributes now in HEX format.  TODO: Change these to 0xHEX
429         and/or DECIMAL.
430
431 1999-08-02  Ben Elliston  <bje@cygnus.com>
432
433         * sidso.h: Reformat and document.
434
435 1999-07-30  Frank Ch. Eigler  <fche@cygnus.com>
436
437         * sidattrutil.h (parse_attribute): Add better error reporting.
438
439 1999-07-27  Ben Elliston  <bje@cygnus.com>
440
441         * Makefile.am (noinst_HEADERS): Remove Scheduler.h.
442         * Makefile.in: Regenerate.
443         * Scheduler.h: Remove deprecated file.
444
445 1999-07-27  Frank Ch. Eigler  <fche@cygnus.com>
446
447         * sidcpuutil.h (sid_cpu_stepped): New enum.
448
449 1999-07-26  Faisal Khoja  <fkhoja@cygnus.com>
450
451         * sidbusutil.h (class byte_bus): Removed exception handling from
452         macros defined in byte_bus to avoid compiler bug.
453
454 1999-07-25  Faisal Khoja  <fkhoja@cygnus.com>
455
456         * sidcomp.h: Formatting.
457         * sidattrutil.h: Introduced exception handlings.
458         * sidbusutil.h: Likewise.
459         * sidpinutil.h: Likewise.
460         * sidcomputil.h: Exception handlers and documentation.
461
462 1999-07-21  Frank Ch. Eigler  <fche@cygnus.com>
463
464         * sidcomp.h (pin::status): Revert extension: remove type.
465         (component): Simplify some comments.
466         * sidpinutil (disconnect): Change return type to
467         sid::component::status.
468
469 1999-07-21  Faisal Khoja  <fkhoja@cygnus.com>
470          
471         * sidtypes.h: Document.
472         * sidcomp.h: Likewise.
473         * sidbusutil.h: Likewise.
474         * sidattrutil.h: Likewise.
475         * sidpinutil.h: Likewise.
476         * sidcomputil.h: Likewise.
477         * sidcomp.h: Introduced enum in sid::pin class.
478         * sidpinutil.h (disconnect): Change return type from void to
479         sid::pin::status.
480         
481 1999-07-17  Ron Unrau  <runrau@cygnus.com>
482
483         * supervisory.h: Add SUP_REG_NUM to get number of registers.
484
485 1999-07-16  Frank Ch. Eigler  <fche@cygnus.com>
486
487         * sidwatchutil.h (create_virtual_pin): Return not_found if request
488         not for a watch pin.
489
490         * sidmiscutil.h (recursion_limited ctor): Use a default recursion
491         limit of 1000.
492         
493 1999-07-16  Frank Ch. Eigler  <fche@cygnus.com>
494
495         * sidbusutil.h (fixed_accessor_map_component::listAccessorNames):
496         Remove debugging output to cerr.
497         (*): Change idiom "(*iterator).field" => "iterator->field".
498
499 1999-07-15  Frank Ch. Eigler  <fche@cygnus.com>
500
501         * sidwatchutil.h (*): Comment out debugging output.
502         (add_watchable_value): Reverse argument order.
503
504 1999-07-06  Frank Ch. Eigler  <fche@cygnus.com>
505
506         * sidattrutil.h (attribute_coder_bus_rw): New class.
507         (attribute_coder_bus_ro): Ditto.
508         (attribute_coder_bus_wo): Ditto.
509
510         * sidbusutil.h (word_bus::post_access_hook): New virtual function.
511         (readAny, writeAny): Call it after access.
512         (byte_bus::read): Reorganize.
513
514         * sidmiscutil.h (tokenize): New function.
515         
516         * sidpinattrutil.h <binary_output_pin attribute_coder>: Use sid::
517         namespace prefix consistently.
518
519         * sidpinutil.h (output_pin): Slightly reorganize
520         inline member functions.
521         (fixed_pin_map_component::pin_factory): New virtual function.
522         (connectPin): Call it if needed output pin does not exist.
523         (fixed_pin_map_component::pin_junkyard): New virtual function.
524         (disconnectPin): Call it if an output pin has become orphaned.
525
526         * sidwatchutil.h: New class.  Triggerpoint implementation classes.
527
528 1999-07-05  Frank Ch. Eigler  <fche@cygnus.com>
529
530         * sidbusutil.h (control_register_bank): Move all member functions
531         out-of-line.
532
533 1999-07-05  Frank Ch. Eigler  <fche@cygnus.com>
534         
535         * sidcomp.h: Remove unnecessary #include <memory> that arouses
536         a conflict with source tree directory ../component/memory.
537
538 1999-06-23  Frank Ch. Eigler  <fche@cygnus.com>
539
540         * sidconfig.h: Remove ineffectual macro collision prevention.
541
542 1999-06-22  Frank Ch. Eigler  <fche@cygnus.com>
543
544         * sidmiscutil.h (recursion_limited): Change order of member init
545         to allay compiler warning.
546
547 1999-06-22  Frank Ch. Eigler  <fche@cygnus.com>
548
549         * sidattrutil.h (attribute_coder_ro_value): New class.
550         (add_attribute_ro_value): New function to use new coder class.
551
552 1999-06-16  Frank Ch. Eigler  <fche@cygnus.com>
553
554         * sidschedutil.h (generic_scheduler_interface): Dropped class.
555         (scheduler_event_subscription): Smaller & faster utility class for
556         event control.
557         (scheduler_time_query): Small utility class for "time" query.
558
559         * sidtypes.h (HOST_BIG_ENDIAN): New t/f macro for host endianness.
560         (any_int::host_int_type): Use it.
561         (operator =): Fork into two operand endianness varieties.
562         (operator +=, /=, ++): New functions for host_int_X.  May the barrage
563         begin.
564         (operator <<,>>): Print any_int number in natural digit order by
565         converting to/from host-endian.
566         
567 1999-06-16  Faisal Khoja  <fkhoja@cygnus.com>
568
569         * sidtypes.h (operator<<, operator>>): Removed the seperate
570         copies of the function for boolean value true and boolean value
571         false. Operator overloading is back to its original format.
572
573 1999-06-16  Faisal Khoja  <fkhoja@cygnus.com>
574
575         * sidtypes.h  (any_int(copyconstructor)): made two copies of copy
576         constructor one with bool true and other with bool false to compile on
577         NT. 
578         (operator<<, operator>>): seperate copies for bool equals true & bool
579         equals false. 
580         
581 1999-06-15  Frank Ch. Eigler  <fche@cygnus.com>
582
583         * sidcomp.h (bus::read, bus::write): Remove 8-byte address
584         variants.  Replace host_int_X data with little_* and big_*
585         variants.
586         (API_MINOR_VERSION): Bump it.
587         
588         * sidbusutil.h (word_bus): Remove AddrType template parameter.
589         Use host_int_4 address type throughout.
590         (writeAny, readAny): Clean up data endianness handling.
591         (byte_bus): Match sid::bus API changes.
592         (control_register_bank): Replace AddrType with host_int_4 througout.
593         (control_register_bus): Ditto.  
594         
595         * sidtypes.h (any_int): Add host_int_type derived typedef.
596         Designate all members inline.
597
598 1999-06-14  Frank Ch. Eigler  <fche@cygnus.com>
599
600         * sidattrutil.h (fixed_attribute_map_component): Use simpler
601         vector<string> pair for tracking attribute/category settings.
602         (categorize): Use new members.
603         (uncategorize): Ditto.
604         (listAttrNames): Ditto.
605
606 1999-06-14  Frank Ch. Eigler  <fche@cygnus.com>
607
608         * sidcomp.h (listAttrNames): New overloaded function in
609         sid::component.  Return attribute names of a category.
610         (API_MINOR_VERSION): Bump it.
611         * sidcomputil.h (no_attribute_component): Implement stub function.
612         * sidattrutil.h (fixed_attribute_map_component): Implement
613         new function by interpointing string->set<string> maps. 
614         (categorize, uncategorize): New functions to manage maps.
615         (add_attribute*): New overloaded functions with category arguments.
616         (remove_attribute): Uncategorize dying attribute.
617         
618         (attribute_coder_virtual ctor): Allow getter/setter arguments to
619         come in transposed.
620
621         (listExtraAttrNames): Removed unneeded function.  Adjust callers.
622         (getExtraAttrValue): Ditto.
623         (setExtraAttrValue): Ditto.
624
625 1999-06-11  Ron Unrau  <runrau@cygnus.com>
626
627         * sidbusutil.h: byte_bus, callback_byte_bus: New Classes.
628
629 1999-06-11  Frank Ch. Eigler  <fche@cygnus.com>
630
631         * sidmiscutil.h (string2stream): New class for safely streaming
632         strings.
633         (stream2string): Ditto.
634
635 1999-06-09  Frank Ch. Eigler  <fche@cygnus.com>
636
637         * sidso.h (component_library): Add "deleteComponent" member.
638         * sidcomp.h (API_MINOR_VERSION): Bump up number to account for
639         component_library ABI change.
640
641 1999-06-08  Frank Ch. Eigler  <fche@cygnus.com>
642
643         * sidmiscutil.h (recursion_limited): New class.
644         (recursion_record): New class.
645
646 1999-06-08  Ron Unrau  <runrau@cygnus.com>
647
648         * sidpinattrutil.h: new file
649         * sidpinutil.h: (callback_pin::driven): make public
650
651 1999-06-07  Frank Ch. Eigler  <fche@cygnus.com>
652
653         * sidcomp.h (component): Reincarnate listAccessorNames, listPinNames,
654         listBusNames into component API.
655         * sidcomputil.h: Ditto.
656         * sidbusutil.h: Ditto.
657         * sidpinutil.h: Ditto.
658
659 1999-06-06  Ron Unrau  <runrau@cygnus.com>
660
661         * sidcpuutil.h: add cpu_trap_reissue for handling breakpoints that
662           are based on SWIs instead of invalid insns.
663
664 1999-06-01  Frank Ch. Eigler  <fche@cygnus.com>
665
666         * sidattrutil.h (fixed_attribute_map_component::setAttrValue): Pass
667         back status value from parse_attribute().
668
669 1999-05-26  Frank Ch. Eigler  <fche@cygnus.com>
670
671         * sidmiscutil.h: New file.
672         * Makefile.am: Know of it, but don't install it.
673         * Makefile.in: Regenerated.
674
675 1999-05-21  Frank Ch. Eigler  <fche@cygnus.com>
676
677         * configure.in: Add "--disable-assert" option.  Stop building
678         useless libtool here.
679         * aclocal.m4: Regenerated.
680         * configure: Regenerated.
681         * sidconf.in: Regenerated.
682
683 1999-05-19  Frank Ch. Eigler  <fche@cygnus.com>
684
685         * sidattrutil.h (parse_attribute): Return sid::component::status.
686         (attribute_coder*): Ditto for all parse_attribute callbacks.
687         (add_attribute_virtual): Change setter callback signature.
688
689 1999-05-18  Frank Ch. Eigler  <fche@cygnus.com>
690
691         * sidcomp.h (setRelatedComponents): Return component::status.
692         * sidcomputil.h (no_relationship_map_component): Return "not_found"
693         to setRelatedComponents.
694         (fixed_relationship_map_component): Return appropariate status
695         to setRelatedComponents.
696
697         (sid_breakpoint): #ifdef for !__CYGWIN__.
698
699 1999-05-13  Frank Ch. Eigler  <fche@cygnus.com>
700
701         * configure.in: Correct use of AC_CONFIG_AUX_DIR.
702         * configure: Regenerated.
703         * aclocal.m4: Regenerated.
704
705 1999-05-13  Ron Unrau  <runrau@cygnus.com>
706
707         * sidcomp.h: add supervisory call
708         * supervisory.h: new file - opcodes for supervisory call
709         * sidcomputil.h, sidattrutil.h: add skeleton for supervisory call
710
711 1999-05-11  Frank Ch. Eigler  <fche@cygnus.com>
712
713         * sidbusutil.h (value_control_register): Provide more proper
714         streaming operators.
715         * sidcpuutil.h: Fix typo in comment.
716
717 1999-05-09  Doug Evans  <devans@casey.cygnus.com>
718
719         * sidtypes.h (endian): New enum.
720
721 1999-05-08  Doug Evans  <devans@casey.cygnus.com>
722
723         * sidtypes.h (sid::signed_compiler_int[1248]): New types.
724
725 1999-05-07  Doug Evans  <devans@casey.cygnus.com>
726
727         * sidcpuutil.h: New file.
728
729 1999-05-04  Frank Ch. Eigler  <fche@cygnus.com>
730
731         * sidso.h: Define DLLEXPORT/DLLIMPORT for CYGWIN.
732         
733         * sidbusutil.h: Revert last two sets of changes temporarily.
734         
735         * Makefile.in: Regenerated for new libtool.
736         * aclocal.m4: Ditto.
737         * configure: Ditto.
738
739 1999-05-01  Ron Unrau  <runrau@cygnus.com>
740
741         * sidbusutil.h (word_bus::readAny): fix thinko on shift defs
742
743 1999-05-01  Ron Unrau  <runrau@cygnus.com>
744
745         * sidbusutil.h (word_bus::readAny/writeAny): some progress towards 
746           getting masks right.
747
748 1999-04-27  Frank Ch. Eigler  <fche@cygnus.com>
749
750         * configure.in: Look for hash_map and ext/hash_map headers.
751         * sidattrutil.h (HAVE_HASHING): Define if either of above headers
752         is available.
753         (attribute_map_t): If !HAVE_HASHING, use plain map<>, not hash_map<>.
754         * configure: Regenerated.
755         * sidconf.in: Regenerated.
756
757         * sidattrutil.h (make_attribute): Correct ostringstream usage typo.
758
759 1999-04-21  Frank Ch. Eigler  <fche@cygnus.com>
760
761         * sidbusutil.h (control_register*): Language police cleanup in
762         ctors of classes derived from class templates.
763         * sidattrutil.h (attribute_coder*): Ditto.
764
765 1999-04-20  Doug Evans  <devans@casey.cygnus.com>
766
767         * sidpinutil.h (callback_pin): New method set_callback.
768
769 1999-04-18  Frank Ch. Eigler  <fche@cygnus.com>
770
771         * Scheduler.h: Mark as depracated.
772         * Makefile.am: Don't install Scheduler.h any more.
773         * Makefile.in: Regenerated.
774
775 1999-04-18  Doug Evans  <devans@casey.cygnus.com>
776
777         * sidcomputil.h (sid_breakpoint): Declare.
778
779 1999-04-15  Frank Ch. Eigler  <fche@cygnus.com>
780
781         * sidtypes.h: (any_int): Rewrite, templatize further, simplify.
782         (host_int*, big_int*, little_int*): Replace classes with typedefs.
783
784 1999-04-14  Frank Ch. Eigler  <fche@cygnus.com>
785
786         * sidtypes.h (operator <<): Correct infinite recursion bug for
787         printing big_int_X and little_int_X.
788
789 1999-04-09  Frank Ch. Eigler  <fche@cygnus.com>
790
791         * sidschedutil.h: New file for new class generic_scheduler_interface, 
792         a functional interface to an external scheduler component.  
793         * Makefile.am: Include it in noinst_HEADERS.
794         * Makefile.in: Regenerated.
795
796 1999-04-06  Frank Ch. Eigler  <fche@cygnus.com>
797
798         * sidcomp.h (component::status): Renamed enum from connect_status.
799         Renamed "bad_arg"->"bad_value".
800         * sidbusutil.h (*): Ditto.
801         * sidcomputil.h (*): Ditto.
802         * sidpinutil.h (*): Ditto.
803         * sidattrutil.h (*): Ditto.
804         (fixed_attribute_map_component): Use hash_map instead of map for
805         attribute map.
806         (attribute_coder_virtual): New attribute coder class for attribute
807         make/parse callbacks.
808         (add_attribute_virtual): New function to use this coder.
809         (attribute_coder_ro): New attribute coder class for read-only
810         attributes.
811         (add_attribute_ro): New function to use this coder.
812         (attribute_coder_notify): Rename from attribute_coder_callback.
813         (add_attribute_notify): New function to use this coder.
814         (remove_attribute): Assert existence of about-to-be removed 
815         attribute.
816         
817 1999-04-03  Ron Unrau  <runrau@cygnus.com>
818
819         * sidcomp.h, sidbusutil.h: swap addr<->data in bus::read and bus::write
820
821 1999-04-01  Ron Unrau  <runrau@cygnus.com>
822
823         * Scheduler.h: add forgotten inline keywords.
824
825 1999-03-30  Frank Ch. Eigler  <fche@cygnus.com>
826
827         * sidtypes.h (operator <<, operator >>): Rewrite streaming
828         operators for *_int_* types.
829
830 1999-03-26  Frank Ch. Eigler  <fche@cygnus.com>
831
832         * sidpinutil.h (callback_pin): Accept callback function pointers
833         in reverse order too.
834
835 1999-03-26  Frank Ch. Eigler  <fche@cygnus.com>
836
837         * sidcomp.h (component): Remove listAccessorNames, listPinNames,
838         listBusNames from component API.
839         * sidcomputil.h: Ditto.
840         * sidbusutil.h: Ditto.
841         * sidpinutil.h: Ditto.
842
843 1999-03-24  Frank Ch. Eigler  <fche@cygnus.com>
844
845         * configure.in: Use new AC_CONFIG_AUX_DIR.
846         * configure: Regenerated.
847         * Makefile.in: Regenerated.
848
849         * sidcomp.h: Style cleanup.
850         * sidso.h: Junk cleanup.
851         * sidtypes.h: Add istream>> for host_int types.
852         
853 1999-03-17  Frank Ch. Eigler  <fche@cygnus.com>
854
855         * sidtypes.h (any_int_base): New base type for types.
856         (readByte,writeByte): Fix & collect functions in new base class.
857         (bytereverse): Add template functions for specific types.
858         Add x86-specific assembly for quick byte reversals.
859         * sidpinutil.h (input_pin): Style cleanups.
860
861 1999-03-16  Frank Ch. Eigler  <fche@cygnus.com>
862
863         * sidattrutil.h: Formatting tweaks.
864         (fixed_attribute_map_component): Add remove_attribute call.
865         * sidcomp.h (API_*_VERSION): New const values.
866         (SID_COMPONENT_API_*_VERSION): Gone.
867         (pin::driven): Put back reference host_int_4 argument.
868         * sidpinutil.h: Formatting tweaks.  Adapt to changed
869         pin::driven(...) signature.
870         (output_pin::drive): New method.
871         (fixed_pin_map_component): Add remove_pin call.
872         (class callback_pin): Derive from output_pin.  Add new pmf for value-less
873         pin event callbacks.  Add new constructors to set it.
874         (class callback_event_pin): Remove.
875         (class callback_output_pin): Remove.    
876         * sidso.h (COMPONENT_LIBRARY_MAGIC): New const value.
877         (SID_COMPONENT_LIBRARY_MAGIC): Gone.
878         
879 1999-03-12  Ron Unrau  <runrau@cygnus.com>
880
881         * Scheduler.h: do not use component* for callback object state
882
883 1999-03-12  Ron Unrau  <runrau@cygnus.com>
884
885         * sidcomp.h: setAccessor, connectPin, disconnectPin, and setAttrValue 
886           now return status
887         * sid{bus,pin,attr,comp}util.h: track changes in sidcomp.h
888
889 1999-03-05  Frank Ch. Eigler  <fche@cygnus.com>
890
891         * sidcomp.h (class component): Make destructor public - temporarily.
892         Add abstract relationship API.
893         * sidcomputil.h (class no_relation_component): New mix-in class for
894         uninterested components.  
895         (class fixed_relation_map_component): New mix-in class for social
896         components.
897         * sidattrutil.h (class fixed_attribute_map_component): Make some
898         members mutable.
899         * sidbusutil.h (class fixed_accessor_map_component): Ditto.
900         (class fixed_accessor_map_component): Ditto.
901         * sidpinutil.h (class fixed_pin_map_component): Ditto.
902         (class callback_storage_pin): Use value-less callback fn.
903         
904 1999-03-01  Frank Ch. Eigler  <fche@cygnus.com>
905
906         * Makefile.am: Don't install sidutil mix-in headers.
907         * Makefile.in: Rebuilt.
908
909 1999-02-26  Frank Ch. Eigler  <fche@cygnus.com>
910
911         * sidbusutil.h: Remove some warnings.
912         (word_bus): Propagate sid::bus::status from word_read/word_write.
913         (value_control_register): Add assignment/conversion operators.
914
915         * Makefile.am (INCLUDE_HEADERS): Also install recently added
916         headers.
917         * Makefile.in: Rebuilt.
918         
919 1999-02-21  Ron Unrau <runrau@cygnus.com>
920
921         * Scheduler.h: new file
922
923 1999-02-16  Frank Ch. Eigler  <fche@cygnus.com>
924
925         * sidbusutil.h (*_control_register): New abstraction family for
926         peripheral control registers.
927         (control_register_bus): New bus that maps a group of control
928         registers.
929         (word_bus::write_any): Fix typo.
930
931         * sidtypes.h (HOST_IS_*_ENDIAN): Use #ifdef *BIG/LITTLE* consistently.
932         (big/little/host_int_N): Add assignment operator.
933         
934 1999-02-12  Frank Ch. Eigler  <fche@cygnus.com>
935
936         * sidattrutil.h (attribute_coder_callback): New helper class for
937         fixed_attribute_map_component that wants to monitor attribute
938         writes with a callback member function.
939         * sidcomp.h (*): Declare all component API calls as "throw ()".
940         
941         * Makefile.am: Switch to foreign mode.  Adjust for automake 1.4.
942         * configure.in: Adjust for autoconf 2.13.
943         * Makefile.in: Rebuilt.
944         * aclocal.m4: Rebuilt.
945         * configure: Rebuilt.
946         * sidconf.in: Rebuilt.
947
948 1999-02-02  Frank Ch. Eigler  <fche@cygnus.com>
949
950         * sidattrutil.h (parse_attribute): Convert to string more precisely.
951         (attribute_coder*): New classes.
952         (fixed_attribute_map_component): New mix-in for extensible simplified
953         attribute mappings.
954         * sidbusutil.h: Add extra #includes.
955         * sidcomputil.h: Correct #include guard typo.
956         * sidpinutil.h (callback_pin): New pin subtype for component member function 
957         callbacks.
958         (callbcak_storage_pin): As above, except also like storage_pin<>.
959         * sidtypes.h (big_int, host_int, little_int): Add raw() member to return
960         stored integer verbatim.
961
962 1999-01-08  Frank Ch. Eigler  <fche@cygnus.com>
963
964         * sidbusutil.h: New file, containing bus API-related mixin classes.
965
966 1998-12-23  Frank Ch. Eigler  <fche@cygnus.com>
967
968         * configure.in: New file.  Perform API-tuning autoconf checks.
969         * sidconf.in: New file.
970         * configure: Generated new file.
971         * aclocal.m4: Generated new file.
972         * Makefile.am: New file.  Install SID headers.
973         * Makefile.in: Generated new file.
974         * sidconfig.h: New file.  Allow local sidconf.h and component config.h
975         to coexist.
976         * sid*h: Include sidconfig.h.
977
978 1998-12-18  Frank Ch. Eigler  <fche@cygnus.com>
979
980         * sidattrutil.h (parse_attribute): Use istrstream properly.  Use
981         reference argument as output.  Use HAVE_STRSTREAM_H autoconf
982         symbol.
983
984 1998-12-17  Frank Ch. Eigler  <fche@cygnus.com>
985
986         * sidcomp.h: Removed attribute classes.  Using std::string
987         for attribute values instead.
988         * sidso.h: Use explicit std:: namespace ref for some classes. 
989         * sidpinutil.h: Moved contents into sidutil:: namespace.
990         (fixed_pin_map_component): New class for components with a fixed group of pins. 
991         * sidattrutil.h: New file: attribute utilities
992         (make_attribute): Template to stream arbitrary type to string.
993         (parse_attribute): Same, in reverse.
994         * sidcomputil.h: New file: component virtual classes
995         for providing stubs for unused component sub-APIs.
996         (no_bus_component): Stub bus server functions.
997         (no_accessor_component): Stub bus client functions.
998         (no_pin_component): Stub pin functions.
999         (no_attribute_component): Stub attribute functions.
1000         * Makefile.am (include_HEADERS): Install new files.
1001         * Makefile.in: Rebuilt.
1002