1 2000-11-27 Frank Ch. Eigler <fche@redhat.com>
3 * sidattrutil.h (attribute_coder_alias): New coder for attribute
5 (fixed_attribute_map_component::add_attribute_alias): New functions.
7 2000-10-13 Jeff Johnston <jjohnstn@redhat.com>
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
13 (add_watchable_ro_register): New method to specify a read-only
16 2000-09-22 Frank Ch. Eigler <fche@redhat.com>
18 * Makefile.in: Regenerated.
20 2000-09-13 Jeff Johnston <jjohnstn@redhat.com>
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
30 2000-09-06 Frank Ch. Eigler <fche@redhat.com>
32 * sidbusutil.h (harvard_bus): Switch "unsigned int" -> "host_int_4"
34 * sidcpuutil.h (basic_cpu ctor): Reorder initializers.
36 2000-08-30 Jeff Johnston <jjohnstn@redhat.com>
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.
55 2000-08-25 Frank Ch. Eigler <fche@redhat.com>
57 * sidbusutil.h (passthrough_word_bus): Correct pointer usage error.
59 2000-06-22 Jeff Johnston <jjohnstn@redhat.com>
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
66 (fixed_bus_map_component): Added disconnect_bus member function which
67 corresponds to class fixed_accessor_map_component member function:
70 2000-05-26 Frank Ch. Eigler <fche@redhat.com>
72 * sidcpuutil.h, sidmiscutil.h, sidpinutil.h: Use std:: more.
74 * configure.in: Test std:: prefix for ctype functions.
75 * sidattrutil.h: Use result.
76 * configure, sidconfutil.in: Regenerated.
78 2000-05-22 Ben Elliston <bje@redhat.com>
80 * Makefile.in: Regenerate.
82 2000-04-05 Frank Ch. Eigler <fche@redhat.com>
84 * sidcpuutil.h (create_gdb_register_attrs): Make this a template
85 function to allow 64-bit PC type.
87 2000-03-16 matthew green <mrg@redhat.com>
89 * sidtypes.h: Add complete NetBSD support via <machine/endian.h>.
90 Fix alpha (was big endian).
92 2000-03-14 Frank Ch. Eigler <fche@redhat.com>
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.
99 2000-03-15 matthew green <mrg@redhat.com>
101 * sidbusutil.h: Add several `throw()' specifiers to functions whose
102 virtual declaration included the throw. New GCC checks this more
104 * sidpinutil.h: Likewise.
106 2000-02-29 Frank Ch. Eigler <fche@redhat.com>
108 * sidwatchutil.h (test_range): New predicate for watchables.
109 (state_watcher_range): New watcher class.
110 (create_virtual_pin): Parse "range" triggerpoint type.
112 2000-02-03 Frank Ch. Eigler <fche@redhat.com>
114 * sidbusutil.h (word_bus::readAny): Correct mask calculation.
116 2000-01-25 Frank Ch. Eigler <fche@redhat.com>
118 * sidbusutil.h (callback_word_bus): New template class.
120 2000-01-18 Frank Ch. Eigler <fche@cygnus.com>
122 * sidmiscutil.h (ok): New member function in recursion_limited,
124 (recursion_limited): Print supplied label and counts in error
125 message in case of recursion overflow. Do not abort().
127 2000-01-10 Frank Ch. Eigler <fche@cygnus.com>
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.
133 2000-01-05 Frank Ch. Eigler <fche@cygnus.com>
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.
141 1999-12-29 Frank Ch. Eigler <fche@cygnus.com>
143 * sidattrutil.h (make_attribute): Make these static, non-inline
145 (parse_attribute, make_numeric_attribute): Ditto.
146 (parse_unsigned_numeric_attribute): Ditto.
148 1999-12-06 Frank Ch. Eigler <fche@cygnus.com>
150 * sidbusutil.h (byte_bus): Return sid::bus::unmapped for all
151 non-byte-sized accesses.
153 1999-12-03 Frank Ch. Eigler <fche@cygnus.com>
155 * sidbusutil.h (connect_accessor): Reject duplicate operand.
156 (disconnect_accessor): Reject mismatching operand.
158 1999-12-02 Frank Ch. Eigler <fche@cygnus.com>
160 * sidwatchutil (checking_any_p): New function.
162 1999-11-30 Ben Elliston <bje@cygnus.com>
164 * sidtypes.h: Specify endianness for Alpha hosts.
166 1999-11-29 Ben Elliston <bje@cygnus.com>
168 * sidcomp.h (API_MINOR_VERSION): Bump it.
169 (sid::component::disconnect_accessor): New method.
171 (fix_accessor_map_component::disconnect_accessor): New method.
173 (no_accessor_component::disconnect_accessor): Likewise.
175 1999-11-26 Frank Ch. Eigler <fche@cygnus.com>
177 * sidwatchutil.h (map_watchable_name): Export as standalone function.
179 1999-11-23 Frank Ch. Eigler <fche@cygnus.com>
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.
189 * sidattrutil.h (make_numeric_attribute): Really set incoming flags.
190 (parse_unsigned_numeric_attribute): Reject empty strings.
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.
209 1999-11-19 Frank Ch. Eigler <fche@cygnus.com>
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.
219 * sidpinattrutil.h (make_attribute, parse_attribute): Rewrote
220 functions. Replaced attribute_coder<> templates.
222 1999-11-12 Ben Elliston <bje@cygnus.com>
224 * sidattrutil.h (attribute_coder_virtual_parameterized): Rename
225 from the misspelled addtribute_coder_virtual_parametrized.
227 1999-11-08 Frank Ch. Eigler <fche@cygnus.com>
229 * sidmiscutil.h (tokenize): Handle the case of a separator terminating
232 1999-11-02 Frank Ch. Eigler <fche@cygnus.com>
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
243 1999-10-19 Frank Ch. Eigler <fche@cygnus.com>
245 * Makefile.in: Regenerated.
246 * configure: Regenerated.
248 1999-10-10 Faisal Khoja <fkhoja@cygnus.com>
250 * sidattrutil.h (class attribute_coder_base): Introduced virtual
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.
261 1999-10-08 Faisal Khoja <fkhoja@cygnus.com>
263 * sidattrutil.h (parse_unsigned_numeric_attribute): changed type of var
264 c from char to unsigned char.
266 1999-10-08 Frank Ch. Eigler <fche@cygnus.com>
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.
276 1999-10-07 Faisal Khoja <fkhoja@cygnus.com>
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
284 1999-10-04 Frank Ch. Eigler <fche@cygnus.com>
286 * sidcomp.h: Don't depend on installed sidconfig.h.
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.
297 1999-09-28 Frank Ch. Eigler <fche@cygnus.com>
299 * sidwatchutil.h (create_virtual_pin): Use ":" as name separator for
300 triggerpoint watcher pins. Accept "watch:WATCHABLE:value:VALUE" to
303 1999-09-25 Doug Evans <devans@casey.cygnus.com>
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.
311 * sidcpuutil.h (cpu_trap_type): New values cpu_trap_breakpoint,
312 cpu_trap_syscall. Renumber values.
314 1999-09-23 Frank Ch. Eigler <fche@cygnus.com>
316 * sidtypes.h (operator <<,>>): Remove stream flag changing.
317 * sidcomp.h (API_MINOR_VERSION): Bump it.
319 * sidattrutil.h: Revamped make_attribute & parse_attribute family
320 for bool and numeric types.
321 (parse_numeric_attribute, make_numeric_attribute): New functions.
323 * sidstringutil.h: Deleted.
324 * Makefile.am: Forget about it.
325 * Makefile.in: Regenerated.
327 1999-09-22 Ben Elliston <bje@cygnus.com>
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.
340 * sidstringutil.h: Likewise.
341 * sidtypes.h: Likewise.
342 * sidwatchutil.h: Likewise.
344 1999-09-16 Frank Ch. Eigler <fche@cygnus.com>
346 * Makefile.am (ACLOCAL_AMFLAGS): Define.
347 * Makefile.in: Regenerated.
349 1999-09-13 Frank Ch. Eigler <fche@cygnus.com>
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.
357 1999-09-10 Frank Ch. Eigler <fche@cygnus.com>
359 * sidwatchutil.h (map_watchable_name): New function.
360 (add_watchable): Call it to preprocess arbitrary watchable name.
362 (destroy_virtual_pin): Unregister about-to-be orphaned pin.
364 1999-08-31 Frank Ch. Eigler <fche@cygnus.com>
366 * Makefile.am (noinst_HEADERS): Add new file.
367 * Makefile.in: Regenerated.
368 * sidstringutil.h (hex_string): Use freeze(0) instead of freeze().
371 1999-08-31 Ian Carmichael <iancarm@cygnus.com>
373 * sidstringutil.h: New file.
375 1999-08-31 Ben Elliston <bje@cygnus.com>
377 * sidattrutil.h (sidutil::make_attribute): Free ostrstream buffer
378 on destruction. Fix for CR 101044.
379 (sidutil::MAKE_UNSIGNED_ATTRIBUTE): Likewise.
381 1999-08-24 Frank Ch. Eigler <fche@cygnus.com>
383 * sidmiscutil.h (std_error_string): New function.
384 * configure.in: Look for strerror.
385 * configure: Regenerated.
386 * sidconf.in: Regenerated.
388 1999-08-20 Frank Ch. Eigler <fche@cygnus.com>
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().
404 1999-08-16 Ian Carmichael <iancarm@cygnus.com>
406 * sidbusutil.h: readByte and writeByte members renamed.
407 * sidtypes.h: readByte and writeByte members renamed.
409 1999-08-16 Ian Carmichael <iancarm@cygnus.com>
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.
421 1999-08-11 Ian Carmichael <iancarm@cygnus.com>
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.
427 * sidattrutil.h: (make_attribute_*, parse_attribute_*): All
428 attributes now in HEX format. TODO: Change these to 0xHEX
431 1999-08-02 Ben Elliston <bje@cygnus.com>
433 * sidso.h: Reformat and document.
435 1999-07-30 Frank Ch. Eigler <fche@cygnus.com>
437 * sidattrutil.h (parse_attribute): Add better error reporting.
439 1999-07-27 Ben Elliston <bje@cygnus.com>
441 * Makefile.am (noinst_HEADERS): Remove Scheduler.h.
442 * Makefile.in: Regenerate.
443 * Scheduler.h: Remove deprecated file.
445 1999-07-27 Frank Ch. Eigler <fche@cygnus.com>
447 * sidcpuutil.h (sid_cpu_stepped): New enum.
449 1999-07-26 Faisal Khoja <fkhoja@cygnus.com>
451 * sidbusutil.h (class byte_bus): Removed exception handling from
452 macros defined in byte_bus to avoid compiler bug.
454 1999-07-25 Faisal Khoja <fkhoja@cygnus.com>
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.
462 1999-07-21 Frank Ch. Eigler <fche@cygnus.com>
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.
469 1999-07-21 Faisal Khoja <fkhoja@cygnus.com>
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
481 1999-07-17 Ron Unrau <runrau@cygnus.com>
483 * supervisory.h: Add SUP_REG_NUM to get number of registers.
485 1999-07-16 Frank Ch. Eigler <fche@cygnus.com>
487 * sidwatchutil.h (create_virtual_pin): Return not_found if request
490 * sidmiscutil.h (recursion_limited ctor): Use a default recursion
493 1999-07-16 Frank Ch. Eigler <fche@cygnus.com>
495 * sidbusutil.h (fixed_accessor_map_component::listAccessorNames):
496 Remove debugging output to cerr.
497 (*): Change idiom "(*iterator).field" => "iterator->field".
499 1999-07-15 Frank Ch. Eigler <fche@cygnus.com>
501 * sidwatchutil.h (*): Comment out debugging output.
502 (add_watchable_value): Reverse argument order.
504 1999-07-06 Frank Ch. Eigler <fche@cygnus.com>
506 * sidattrutil.h (attribute_coder_bus_rw): New class.
507 (attribute_coder_bus_ro): Ditto.
508 (attribute_coder_bus_wo): Ditto.
510 * sidbusutil.h (word_bus::post_access_hook): New virtual function.
511 (readAny, writeAny): Call it after access.
512 (byte_bus::read): Reorganize.
514 * sidmiscutil.h (tokenize): New function.
516 * sidpinattrutil.h <binary_output_pin attribute_coder>: Use sid::
517 namespace prefix consistently.
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.
526 * sidwatchutil.h: New class. Triggerpoint implementation classes.
528 1999-07-05 Frank Ch. Eigler <fche@cygnus.com>
530 * sidbusutil.h (control_register_bank): Move all member functions
533 1999-07-05 Frank Ch. Eigler <fche@cygnus.com>
535 * sidcomp.h: Remove unnecessary #include <memory> that arouses
536 a conflict with source tree directory ../component/memory.
538 1999-06-23 Frank Ch. Eigler <fche@cygnus.com>
540 * sidconfig.h: Remove ineffectual macro collision prevention.
542 1999-06-22 Frank Ch. Eigler <fche@cygnus.com>
544 * sidmiscutil.h (recursion_limited): Change order of member init
545 to allay compiler warning.
547 1999-06-22 Frank Ch. Eigler <fche@cygnus.com>
549 * sidattrutil.h (attribute_coder_ro_value): New class.
550 (add_attribute_ro_value): New function to use new coder class.
552 1999-06-16 Frank Ch. Eigler <fche@cygnus.com>
554 * sidschedutil.h (generic_scheduler_interface): Dropped class.
555 (scheduler_event_subscription): Smaller & faster utility class for
557 (scheduler_time_query): Small utility class for "time" query.
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
564 (operator <<,>>): Print any_int number in natural digit order by
565 converting to/from host-endian.
567 1999-06-16 Faisal Khoja <fkhoja@cygnus.com>
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.
573 1999-06-16 Faisal Khoja <fkhoja@cygnus.com>
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
578 (operator<<, operator>>): seperate copies for bool equals true & bool
581 1999-06-15 Frank Ch. Eigler <fche@cygnus.com>
583 * sidcomp.h (bus::read, bus::write): Remove 8-byte address
584 variants. Replace host_int_X data with little_* and big_*
586 (API_MINOR_VERSION): Bump it.
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.
595 * sidtypes.h (any_int): Add host_int_type derived typedef.
596 Designate all members inline.
598 1999-06-14 Frank Ch. Eigler <fche@cygnus.com>
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.
606 1999-06-14 Frank Ch. Eigler <fche@cygnus.com>
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.
618 (attribute_coder_virtual ctor): Allow getter/setter arguments to
621 (listExtraAttrNames): Removed unneeded function. Adjust callers.
622 (getExtraAttrValue): Ditto.
623 (setExtraAttrValue): Ditto.
625 1999-06-11 Ron Unrau <runrau@cygnus.com>
627 * sidbusutil.h: byte_bus, callback_byte_bus: New Classes.
629 1999-06-11 Frank Ch. Eigler <fche@cygnus.com>
631 * sidmiscutil.h (string2stream): New class for safely streaming
633 (stream2string): Ditto.
635 1999-06-09 Frank Ch. Eigler <fche@cygnus.com>
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.
641 1999-06-08 Frank Ch. Eigler <fche@cygnus.com>
643 * sidmiscutil.h (recursion_limited): New class.
644 (recursion_record): New class.
646 1999-06-08 Ron Unrau <runrau@cygnus.com>
648 * sidpinattrutil.h: new file
649 * sidpinutil.h: (callback_pin::driven): make public
651 1999-06-07 Frank Ch. Eigler <fche@cygnus.com>
653 * sidcomp.h (component): Reincarnate listAccessorNames, listPinNames,
654 listBusNames into component API.
655 * sidcomputil.h: Ditto.
656 * sidbusutil.h: Ditto.
657 * sidpinutil.h: Ditto.
659 1999-06-06 Ron Unrau <runrau@cygnus.com>
661 * sidcpuutil.h: add cpu_trap_reissue for handling breakpoints that
662 are based on SWIs instead of invalid insns.
664 1999-06-01 Frank Ch. Eigler <fche@cygnus.com>
666 * sidattrutil.h (fixed_attribute_map_component::setAttrValue): Pass
667 back status value from parse_attribute().
669 1999-05-26 Frank Ch. Eigler <fche@cygnus.com>
671 * sidmiscutil.h: New file.
672 * Makefile.am: Know of it, but don't install it.
673 * Makefile.in: Regenerated.
675 1999-05-21 Frank Ch. Eigler <fche@cygnus.com>
677 * configure.in: Add "--disable-assert" option. Stop building
678 useless libtool here.
679 * aclocal.m4: Regenerated.
680 * configure: Regenerated.
681 * sidconf.in: Regenerated.
683 1999-05-19 Frank Ch. Eigler <fche@cygnus.com>
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.
689 1999-05-18 Frank Ch. Eigler <fche@cygnus.com>
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.
697 (sid_breakpoint): #ifdef for !__CYGWIN__.
699 1999-05-13 Frank Ch. Eigler <fche@cygnus.com>
701 * configure.in: Correct use of AC_CONFIG_AUX_DIR.
702 * configure: Regenerated.
703 * aclocal.m4: Regenerated.
705 1999-05-13 Ron Unrau <runrau@cygnus.com>
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
711 1999-05-11 Frank Ch. Eigler <fche@cygnus.com>
713 * sidbusutil.h (value_control_register): Provide more proper
715 * sidcpuutil.h: Fix typo in comment.
717 1999-05-09 Doug Evans <devans@casey.cygnus.com>
719 * sidtypes.h (endian): New enum.
721 1999-05-08 Doug Evans <devans@casey.cygnus.com>
723 * sidtypes.h (sid::signed_compiler_int[1248]): New types.
725 1999-05-07 Doug Evans <devans@casey.cygnus.com>
727 * sidcpuutil.h: New file.
729 1999-05-04 Frank Ch. Eigler <fche@cygnus.com>
731 * sidso.h: Define DLLEXPORT/DLLIMPORT for CYGWIN.
733 * sidbusutil.h: Revert last two sets of changes temporarily.
735 * Makefile.in: Regenerated for new libtool.
739 1999-05-01 Ron Unrau <runrau@cygnus.com>
741 * sidbusutil.h (word_bus::readAny): fix thinko on shift defs
743 1999-05-01 Ron Unrau <runrau@cygnus.com>
745 * sidbusutil.h (word_bus::readAny/writeAny): some progress towards
748 1999-04-27 Frank Ch. Eigler <fche@cygnus.com>
750 * configure.in: Look for hash_map and ext/hash_map headers.
751 * sidattrutil.h (HAVE_HASHING): Define if either of above headers
753 (attribute_map_t): If !HAVE_HASHING, use plain map<>, not hash_map<>.
754 * configure: Regenerated.
755 * sidconf.in: Regenerated.
757 * sidattrutil.h (make_attribute): Correct ostringstream usage typo.
759 1999-04-21 Frank Ch. Eigler <fche@cygnus.com>
761 * sidbusutil.h (control_register*): Language police cleanup in
762 ctors of classes derived from class templates.
763 * sidattrutil.h (attribute_coder*): Ditto.
765 1999-04-20 Doug Evans <devans@casey.cygnus.com>
767 * sidpinutil.h (callback_pin): New method set_callback.
769 1999-04-18 Frank Ch. Eigler <fche@cygnus.com>
771 * Scheduler.h: Mark as depracated.
772 * Makefile.am: Don't install Scheduler.h any more.
773 * Makefile.in: Regenerated.
775 1999-04-18 Doug Evans <devans@casey.cygnus.com>
777 * sidcomputil.h (sid_breakpoint): Declare.
779 1999-04-15 Frank Ch. Eigler <fche@cygnus.com>
781 * sidtypes.h: (any_int): Rewrite, templatize further, simplify.
782 (host_int*, big_int*, little_int*): Replace classes with typedefs.
784 1999-04-14 Frank Ch. Eigler <fche@cygnus.com>
786 * sidtypes.h (operator <<): Correct infinite recursion bug for
787 printing big_int_X and little_int_X.
789 1999-04-09 Frank Ch. Eigler <fche@cygnus.com>
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.
796 1999-04-06 Frank Ch. Eigler <fche@cygnus.com>
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
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
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
817 1999-04-03 Ron Unrau <runrau@cygnus.com>
819 * sidcomp.h, sidbusutil.h: swap addr<->data in bus::read and bus::write
821 1999-04-01 Ron Unrau <runrau@cygnus.com>
823 * Scheduler.h: add forgotten inline keywords.
825 1999-03-30 Frank Ch. Eigler <fche@cygnus.com>
827 * sidtypes.h (operator <<, operator >>): Rewrite streaming
828 operators for *_int_* types.
830 1999-03-26 Frank Ch. Eigler <fche@cygnus.com>
832 * sidpinutil.h (callback_pin): Accept callback function pointers
833 in reverse order too.
835 1999-03-26 Frank Ch. Eigler <fche@cygnus.com>
837 * sidcomp.h (component): Remove listAccessorNames, listPinNames,
838 listBusNames from component API.
839 * sidcomputil.h: Ditto.
840 * sidbusutil.h: Ditto.
841 * sidpinutil.h: Ditto.
843 1999-03-24 Frank Ch. Eigler <fche@cygnus.com>
845 * configure.in: Use new AC_CONFIG_AUX_DIR.
846 * configure: Regenerated.
847 * Makefile.in: Regenerated.
849 * sidcomp.h: Style cleanup.
850 * sidso.h: Junk cleanup.
851 * sidtypes.h: Add istream>> for host_int types.
853 1999-03-17 Frank Ch. Eigler <fche@cygnus.com>
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.
861 1999-03-16 Frank Ch. Eigler <fche@cygnus.com>
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.
879 1999-03-12 Ron Unrau <runrau@cygnus.com>
881 * Scheduler.h: do not use component* for callback object state
883 1999-03-12 Ron Unrau <runrau@cygnus.com>
885 * sidcomp.h: setAccessor, connectPin, disconnectPin, and setAttrValue
887 * sid{bus,pin,attr,comp}util.h: track changes in sidcomp.h
889 1999-03-05 Frank Ch. Eigler <fche@cygnus.com>
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
897 * sidattrutil.h (class fixed_attribute_map_component): Make some
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.
904 1999-03-01 Frank Ch. Eigler <fche@cygnus.com>
906 * Makefile.am: Don't install sidutil mix-in headers.
907 * Makefile.in: Rebuilt.
909 1999-02-26 Frank Ch. Eigler <fche@cygnus.com>
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.
915 * Makefile.am (INCLUDE_HEADERS): Also install recently added
917 * Makefile.in: Rebuilt.
919 1999-02-21 Ron Unrau <runrau@cygnus.com>
921 * Scheduler.h: new file
923 1999-02-16 Frank Ch. Eigler <fche@cygnus.com>
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
929 (word_bus::write_any): Fix typo.
931 * sidtypes.h (HOST_IS_*_ENDIAN): Use #ifdef *BIG/LITTLE* consistently.
932 (big/little/host_int_N): Add assignment operator.
934 1999-02-12 Frank Ch. Eigler <fche@cygnus.com>
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 ()".
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.
948 1999-02-02 Frank Ch. Eigler <fche@cygnus.com>
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
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
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.
962 1999-01-08 Frank Ch. Eigler <fche@cygnus.com>
964 * sidbusutil.h: New file, containing bus API-related mixin classes.
966 1998-12-23 Frank Ch. Eigler <fche@cygnus.com>
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
976 * sid*h: Include sidconfig.h.
978 1998-12-18 Frank Ch. Eigler <fche@cygnus.com>
980 * sidattrutil.h (parse_attribute): Use istrstream properly. Use
981 reference argument as output. Use HAVE_STRSTREAM_H autoconf
984 1998-12-17 Frank Ch. Eigler <fche@cygnus.com>
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.