1 2001-06-25 Ben Elliston <bje@redhat.com>
3 * sidcomp.h (bus::status::code): Change type to host_int_1.
4 (bus::status constructors): Cast status_t to host_int_1.
5 (API_MINOR_VERSION): Bump it.
7 2001-06-24 Ben Elliston <bje@redhat.com>
9 * sidcpuutil.h (basic_cpu::total_latency): New member.
10 (basic_cpu constructor): Initialise it.
11 (basic_cpu::step_pin_handler): Include latency in cycle counts.
12 (basic_cpu::latency_to_cycles): New virtual method.
13 (basic_cpu::read_insn_memory): Add bus latency to total_latency.
14 (basic_cpu::write_insn_memory): Ditto.
15 (basic_cpu::read_data_memory): Ditto.
16 (basic_cpu::write_data_memory): Ditto.
17 (basic_cpu::stream_state): Add total_latency to state snapshot.
18 (basic_cpu::destream_state): Likewise.
20 2001-06-22 Frank Ch. Eigler <fche@redhat.com>
22 * sidcomp.h (API_MAJOR_VERSION, API_MINOR_VERSION): Relabel
23 previous change impact to 3/1 from 4/0.
25 2001-06-22 Ben Elliston <bje@redhat.com>
27 * sidcomp.h (API_MAJOR_VERSION): Bump to 4.
28 (bus::status_t): Remove "delayed" enumerator.
30 2001-06-21 Ben Elliston <bje@redhat.com>
32 * sidcomp.h (API_MAJOR_VERSION): Bump to 3.
33 (API_MINOR_VERSION): Zero.
34 (bus::status_t): New name for enum status.
35 (bus::status): New struct.
37 2001-05-30 Frank Ch. Eigler <fche@redhat.com>
39 * sidcpuutil.h (step_pin_handler): Check for triggerpoints due right
40 now, before instruction evaluation loop.
42 2001-05-25 Will Cohen <wcohen@redhat.com>
44 * sidmiscutil.h: Added #include <sys/cygwin.h> for cygwin builds.
46 2001-05-24 Ben Elliston <bje@redhat.com>
48 * sidcpuutil.h (basic_cpu::create_gdb_register_attrs): Document
49 the meaning of the expedited_regno_list argument.
51 2001-04-14 Harri Porten <porten@kde.org>
53 * sidmiscutil.h (sidutil): added std:: prefixes for C++ ISO compliance.
55 2001-03-28 Dave Brolley <brolley@redhat.com>
57 * sidbusutil.h (mux_passthrough_bus::select_bus): New function.
59 2001-03-26 Dave Brolley <brolley@redhat.com>
61 * sidcpuutil.h (basic_cpu::stepped): Make it virtual and public so
64 2001-03-26 Frank Ch. Eigler <fche@redhat.com>
66 * sidmiscutil.h (sid_file_search_path): New function for returning
67 a canonical file search path based on SID_LIBRARY_PATH and
69 (find_sid_data_file): New function to use the above to locate sid
71 * configure.in (SID_EXEC_PREFIX): AC_DEFINE.
72 * configure, sidconfutil.h: Regenerated.
74 2001-03-21 Ben Elliston <bje@redhat.com>
76 * Makefile.in: Regenerate.
78 2001-03-05 Frank Ch. Eigler <fche@redhat.com>
80 On advice from Momchil Velikov <velco@fadata.bg>:
81 * configure.in: Test for compiler support of __builtin_expect.
82 * sidconfig.h: Define LIKELY/UNLIKEY depending on this test.
83 * configure, sidconfutil.in: Regenerated.
85 2001-03-01 Frank Ch. Eigler <fche@redhat.com>
87 * sidconfig.h (LIKELY, UNLIKELY): New conditional cover macros
88 for gcc's __builtin_expect branch probability hinting function.
89 * sidbusutil.h (passthrough_bus, mux_password_bus, harvard_bus):
90 Add some branch probability hints.
91 * sidcpuutil.h (step_pin_handler, stop_after_insns_p,
92 {read,write}_{insn,data}_memory): Ditto.
93 * sidpinutil.h (callback_pin::driven): Remove unnecessary assert
95 (callback_pin ctor, set_callback): Put them here instead.
97 2001-01-12 Jeff Johnston <jjohnstn@redhat.com>
99 * sidbusutil.h (mux_passthrough_bus): New bus allowing one
100 input bus tied to one of two accessors with dynamic switching.
102 2001-01-10 Frank Ch. Eigler <fche@redhat.com>
104 * sidcpuutil.h (basic_cpu): Inherit from fixed_relation_map_component.
105 Define a operator new/delete pair to poison new memory.
107 2000-11-27 Frank Ch. Eigler <fche@redhat.com>
109 * sidattrutil.h (attribute_coder_alias): New coder for attribute
111 (fixed_attribute_map_component::add_attribute_alias): New functions.
113 2000-10-13 Jeff Johnston <jjohnstn@redhat.com>
115 * sidbusutil.h (passthrough_word_bus): Made target protected.
116 * sidcpuutil.h (add_watchable_register): Overloaded to allow
117 specifying using a virtual attribute and a parameterized virtual
119 (add_watchable_ro_register): New method to specify a read-only
122 2000-09-22 Frank Ch. Eigler <fche@redhat.com>
124 * Makefile.in: Regenerated.
126 2000-09-13 Jeff Johnston <jjohnstn@redhat.com>
128 * sidbusutil.h (passthrough_word_bus): Made word_write and
129 word_read methods abstract virtual.
130 (harvard_bus): Changed map_addr_to_bus to accept a pointer to
131 address so address can be modified once segment information is
132 used. Address subtracts first appropriate segment. GB_READ
133 and GB_WRITE macros changed appropriately to pass pointer to
136 2000-09-06 Frank Ch. Eigler <fche@redhat.com>
138 * sidbusutil.h (harvard_bus): Switch "unsigned int" -> "host_int_4"
140 * sidcpuutil.h (basic_cpu ctor): Reorder initializers.
142 2000-08-30 Jeff Johnston <jjohnstn@redhat.com>
144 * sidbusutil.h (passthrough_word_bus): Changed SID_GB_READ and
145 SID_GB_WRITE macros to properly access bus pointer.
146 (harvard_bus): Changed protected and private members to be
147 public and protected, respectively.
148 * sidcpuutil.h (basic_cpu): Made data_bus and insn_bus protected
149 members instead of private. Also changed read_insn_memory template
150 to add address parameter in addition to pc. Added write_insn_memory
151 template. Changed read_insn_memory_1, read_insn_memory_2,
152 read_insn_memory_4, and read_insn_memory_8 to use extra parameter
153 to get storage and to use pc when reporting memory fault.
154 Added write_insn_memory_1, write_insn_memory_2, write_insn_memory_4,
155 and write_insn_memory_8.
156 (basic_big_endian_cpu, basic_little_endian_cpu, basic_bi_endian_cpu):
157 Changed all read_insn_memory_x routines to have extra address
158 parameter. Added write_insn_memory_x routines.
159 * Makefile.in: Regenerated.
161 2000-08-25 Frank Ch. Eigler <fche@redhat.com>
163 * sidbusutil.h (passthrough_word_bus): Correct pointer usage error.
165 2000-06-22 Jeff Johnston <jjohnstn@redhat.com>
167 * sidbusutil.h (harvard_bus): New class to provide mapping
168 between single virtual address space and harvard architecture.
169 (passthrough_word_bus): New class that combines passthrough_bus
170 and word_bus, plus allows short circuiting of accesses to the
172 (fixed_bus_map_component): Added disconnect_bus member function which
173 corresponds to class fixed_accessor_map_component member function:
176 2000-05-26 Frank Ch. Eigler <fche@redhat.com>
178 * sidcpuutil.h, sidmiscutil.h, sidpinutil.h: Use std:: more.
180 * configure.in: Test std:: prefix for ctype functions.
181 * sidattrutil.h: Use result.
182 * configure, sidconfutil.in: Regenerated.
184 2000-05-22 Ben Elliston <bje@redhat.com>
186 * Makefile.in: Regenerate.
188 2000-04-05 Frank Ch. Eigler <fche@redhat.com>
190 * sidcpuutil.h (create_gdb_register_attrs): Make this a template
191 function to allow 64-bit PC type.
193 2000-03-16 matthew green <mrg@redhat.com>
195 * sidtypes.h: Add complete NetBSD support via <machine/endian.h>.
196 Fix alpha (was big endian).
198 2000-03-14 Frank Ch. Eigler <fche@redhat.com>
200 * sidcpuutil.h (cpu_trap_type, cpu_trap_disposition): Rearranged.
201 (cpu_exception*): New exception types.
202 (basic_cpu): New component type for common features of cpu models.
203 (basic_*_endian_cpu): New derived classes for various-endian models.
205 2000-03-15 matthew green <mrg@redhat.com>
207 * sidbusutil.h: Add several `throw()' specifiers to functions whose
208 virtual declaration included the throw. New GCC checks this more
210 * sidpinutil.h: Likewise.
212 2000-02-29 Frank Ch. Eigler <fche@redhat.com>
214 * sidwatchutil.h (test_range): New predicate for watchables.
215 (state_watcher_range): New watcher class.
216 (create_virtual_pin): Parse "range" triggerpoint type.
218 2000-02-03 Frank Ch. Eigler <fche@redhat.com>
220 * sidbusutil.h (word_bus::readAny): Correct mask calculation.
222 2000-01-25 Frank Ch. Eigler <fche@redhat.com>
224 * sidbusutil.h (callback_word_bus): New template class.
226 2000-01-18 Frank Ch. Eigler <fche@cygnus.com>
228 * sidmiscutil.h (ok): New member function in recursion_limited,
230 (recursion_limited): Print supplied label and counts in error
231 message in case of recursion overflow. Do not abort().
233 2000-01-10 Frank Ch. Eigler <fche@cygnus.com>
235 * sidattrutil.h (add_attribute_virtual_parameterized): New functions.
236 * sidtypes.h (*): Simplified comments, mildly reformatted.
237 (any_int<>::size_N_type): New utility typedefs.
239 2000-01-05 Frank Ch. Eigler <fche@cygnus.com>
241 * sidmiscutil.h (string2stream op <<): Use %-encoding on more
242 semiprintable characters.
243 * sidpinutil.h (input_pin op <<,>>): New functions.
244 (output_pin op <<,>>): Ditto.
245 (inputoutput_pin op <<,>>): Ditto.
247 1999-12-29 Frank Ch. Eigler <fche@cygnus.com>
249 * sidattrutil.h (make_attribute): Make these static, non-inline
251 (parse_attribute, make_numeric_attribute): Ditto.
252 (parse_unsigned_numeric_attribute): Ditto.
254 1999-12-06 Frank Ch. Eigler <fche@cygnus.com>
256 * sidbusutil.h (byte_bus): Return sid::bus::unmapped for all
257 non-byte-sized accesses.
259 1999-12-03 Frank Ch. Eigler <fche@cygnus.com>
261 * sidbusutil.h (connect_accessor): Reject duplicate operand.
262 (disconnect_accessor): Reject mismatching operand.
264 1999-12-02 Frank Ch. Eigler <fche@cygnus.com>
266 * sidwatchutil (checking_any_p): New function.
268 1999-11-30 Ben Elliston <bje@cygnus.com>
270 * sidtypes.h: Specify endianness for Alpha hosts.
272 1999-11-29 Ben Elliston <bje@cygnus.com>
274 * sidcomp.h (API_MINOR_VERSION): Bump it.
275 (sid::component::disconnect_accessor): New method.
277 (fix_accessor_map_component::disconnect_accessor): New method.
279 (no_accessor_component::disconnect_accessor): Likewise.
281 1999-11-26 Frank Ch. Eigler <fche@cygnus.com>
283 * sidwatchutil.h (map_watchable_name): Export as standalone function.
285 1999-11-23 Frank Ch. Eigler <fche@cygnus.com>
287 * sidcomp.h: (API_MAJOR,MINOR_VERSION): Bump to 2/1.
288 (*): Unverbosify comments throughout.
289 (sid::pin::driven): Remove (void) variety.
290 (sid::component::*): Make all members non-const.
291 (relationship_names): New, replaces relationships().
292 (set_related_components): Gone, replaced by:
293 (relate, unrelate): New functions.
295 * sidattrutil.h (make_numeric_attribute): Really set incoming flags.
296 (parse_unsigned_numeric_attribute): Reject empty strings.
298 (fixed_attribute_map_component): Make
299 inherited members non-const.
300 * sidbusutil.h (fixed_accessor_map_component): Ditto.
301 (fixed_bus_map_component): Ditto.
302 * sidcomputil.h (no_bus_component, no_accessor_component): Ditto.
303 (no_pin_component, no_attribute_component): Ditto.
304 (no_relationship_component): Ditto. Update for new API functions.
305 (fixed_relationship_map_component): Rewrite.
306 (sid_breakpoint): Remove this debugging hook.
307 * sidpinattrutil.h (*): Remove support for (void) pin values.
308 * sidpinutil.h (*): Ditto.
309 (callback_pin): Simplified.
310 * sidschedutil (scheduler_event_subscription): Simplify.
311 (event_handler): New callthrough function.
312 (now): Drive output pin with sentinel value.
313 * sidwatchutil.h (check_and_inform): Ditto.
315 1999-11-19 Frank Ch. Eigler <fche@cygnus.com>
317 * sidpinutil.h (output_pin): Rewrite. No longer is-a sid::pin.
318 (inputoutput_pin): New class.
319 (add_pin): Overload for classes separately.
320 (find_pin): Search only input_pin list.
321 (connect_pin): Return error code from output_pin::connect.
322 Defend better against null pointers.
323 (disconnect_pin): Ditto.
325 * sidpinattrutil.h (make_attribute, parse_attribute): Rewrote
326 functions. Replaced attribute_coder<> templates.
328 1999-11-12 Ben Elliston <bje@cygnus.com>
330 * sidattrutil.h (attribute_coder_virtual_parameterized): Rename
331 from the misspelled addtribute_coder_virtual_parametrized.
333 1999-11-08 Frank Ch. Eigler <fche@cygnus.com>
335 * sidmiscutil.h (tokenize): Handle the case of a separator terminating
338 1999-11-02 Frank Ch. Eigler <fche@cygnus.com>
340 * sidwatchutil.h (state_watchable_base): Add new members for
341 multiple-watcher tracking.
342 (one_more_watcher, one_less_watcher): New functions.
343 (test_change_value): New function: renamed from test_change().
344 (test_change): New function. Replay return value from
345 test_change_value multiple times, once for each watcher.
346 (state_watcher_base): Register self with target watchable during
349 1999-10-19 Frank Ch. Eigler <fche@cygnus.com>
351 * Makefile.in: Regenerated.
352 * configure: Regenerated.
354 1999-10-10 Faisal Khoja <fkhoja@cygnus.com>
356 * sidattrutil.h (class attribute_coder_base): Introduced virtual
358 (class attribute_coder_virtual): Introduced destructor
359 (class attribute_coder_virtual_parametrized): Likewise
360 (class attribute_coder): Likewise
361 (class attribute_coder_ro): Likewise
362 (class attribute_coder_ro_value): Likewise
363 (class attribute_coder_bus_rw): Likewise
364 (class attribute_coder_bus_wo): Likewise
365 * sidtypes.h (operator <<): Introduced return.
367 1999-10-08 Faisal Khoja <fkhoja@cygnus.com>
369 * sidattrutil.h (parse_unsigned_numeric_attribute): changed type of var
370 c from char to unsigned char.
372 1999-10-08 Frank Ch. Eigler <fche@cygnus.com>
374 * sidcomp.h (bus, pin): Take integers as values, not const-refs.
375 (API_MINOR_VERSION): Bump it.
376 * sidtypes.h (any_int ctor, operator =): Take values, not const-refs.
377 Use constructor initializers when possible.
378 * sidso.h (COMPONENT_LIBRARY_MAGIC): Declare as host_int_4.
379 * sidbusutil.h (*): Corresponding changes.
380 * sidpinutil.h (*): Corresponding changes.
382 1999-10-07 Faisal Khoja <fkhoja@cygnus.com>
384 * sidattrutil.h: Removed try and catch. Did some indenting
385 * sidbusutil.h: Likewise
386 * sidcomputil.h: Likewise
387 * sidcomp.h: Likewise
388 * sidpinutil.h: Likewise
390 1999-10-04 Frank Ch. Eigler <fche@cygnus.com>
392 * sidcomp.h: Don't depend on installed sidconfig.h.
394 * sidtypes.h: Ditto. Determine host endianness via platform #ifdefs.
395 * sidconfutil.in: New file; replace old
396 * sidconf.in: Deleted.
397 * sidconfig.h: Adapt to renaming.
398 * configure.in: Adapt to renaming. Don't check for host endianness.
399 * configure: Regenerated.
400 * Makefile.am: Don't install sidconfutil and friends.
401 * Makefile.in: Regenerated.
403 1999-09-28 Frank Ch. Eigler <fche@cygnus.com>
405 * sidwatchutil.h (create_virtual_pin): Use ":" as name separator for
406 triggerpoint watcher pins. Accept "watch:WATCHABLE:value:VALUE" to
409 1999-09-25 Doug Evans <devans@casey.cygnus.com>
411 * sidattrutil.h (parse_unsigned_numeric_attribute): Renamed
412 from parse_numeric_attribute. All callers changed.
413 Template parameter Value renamed to unsignedValue.
414 (make_attribute): Add versions for signed numbers.
415 (parse_attribute): Add versiosn for signed numbers.
417 * sidcpuutil.h (cpu_trap_type): New values cpu_trap_breakpoint,
418 cpu_trap_syscall. Renumber values.
420 1999-09-23 Frank Ch. Eigler <fche@cygnus.com>
422 * sidtypes.h (operator <<,>>): Remove stream flag changing.
423 * sidcomp.h (API_MINOR_VERSION): Bump it.
425 * sidattrutil.h: Revamped make_attribute & parse_attribute family
426 for bool and numeric types.
427 (parse_numeric_attribute, make_numeric_attribute): New functions.
429 * sidstringutil.h: Deleted.
430 * Makefile.am: Forget about it.
431 * Makefile.in: Regenerated.
433 1999-09-22 Ben Elliston <bje@cygnus.com>
435 * sidattrutil.h: Reformat for clarity and consistency.
436 * sidbusutil.h: Likewise.
437 * sidcomp.h: Likewise.
438 * sidcomputil.h: Likewise.
439 * sidconfig.h: Likewise.
440 * sidcpuutil.h: Likewise.
441 * sidmiscutil.h: Likewise.
442 * sidpinattrutil.h: Likewise.
443 * sidpinutil.h: Likewise.
444 * sidschedutil.h: Likewise.
446 * sidstringutil.h: Likewise.
447 * sidtypes.h: Likewise.
448 * sidwatchutil.h: Likewise.
450 1999-09-16 Frank Ch. Eigler <fche@cygnus.com>
452 * Makefile.am (ACLOCAL_AMFLAGS): Define.
453 * Makefile.in: Regenerated.
455 1999-09-13 Frank Ch. Eigler <fche@cygnus.com>
457 * sidcomp.h (API_MINOR_VERSION): Bump it.
458 * sidtypes.h: Remove compiler_int_X type. Replace with host_int_X.
459 (bytereverse - 8): Use divide-and-conquer unconditionally.
460 * sidattrutil.h (*): Use host_int_X, not compiler_int_X.
461 * sidbusutil.h, sidschedutil.h, sidstringutil.h: Ditto.
463 1999-09-10 Frank Ch. Eigler <fche@cygnus.com>
465 * sidwatchutil.h (map_watchable_name): New function.
466 (add_watchable): Call it to preprocess arbitrary watchable name.
468 (destroy_virtual_pin): Unregister about-to-be orphaned pin.
470 1999-08-31 Frank Ch. Eigler <fche@cygnus.com>
472 * Makefile.am (noinst_HEADERS): Add new file.
473 * Makefile.in: Regenerated.
474 * sidstringutil.h (hex_string): Use freeze(0) instead of freeze().
477 1999-08-31 Ian Carmichael <iancarm@cygnus.com>
479 * sidstringutil.h: New file.
481 1999-08-31 Ben Elliston <bje@cygnus.com>
483 * sidattrutil.h (sidutil::make_attribute): Free ostrstream buffer
484 on destruction. Fix for CR 101044.
485 (sidutil::MAKE_UNSIGNED_ATTRIBUTE): Likewise.
487 1999-08-24 Frank Ch. Eigler <fche@cygnus.com>
489 * sidmiscutil.h (std_error_string): New function.
490 * configure.in: Look for strerror.
491 * configure: Regenerated.
492 * sidconf.in: Regenerated.
494 1999-08-20 Frank Ch. Eigler <fche@cygnus.com>
496 * sidcomp.h: Amputate component::supervisory().
497 (API_MINOR_VERSION): Bump it.
498 * supervisory.h: Removed file.
499 * sidcomputil.h (no_attribute_component): Remove supervisory() stub.
500 * sidtypes.h (endian): Remove endian enum from here.
501 * sidcpuutil.h (endian): Move endian enum here.
502 (operator <<,>>): New streaming ops for sidutil::endian.
503 * sidattrutil.h: Cleaned up comments.
504 (attribute_coder_virtual_parametrized): New template class.
505 (fixed_attribute_map_component): Remove supervisory() stub.
506 (parse_attribute): Check for stream errors more ANSI-abidingly.
507 * sidbusutil.h (passthrough_bus): New class.
508 * sidmiscutil.h (operator >>): Use ANSI setstate() instead of setf().
510 1999-08-16 Ian Carmichael <iancarm@cygnus.com>
512 * sidbusutil.h: readByte and writeByte members renamed.
513 * sidtypes.h: readByte and writeByte members renamed.
515 1999-08-16 Ian Carmichael <iancarm@cygnus.com>
517 * sidattrutil.h: sid::component members renamed.
518 * sidbusutil.h: sid::component members renamed.
519 * sidcomp.h: sid::component members renamed.
520 * sidcomputil.h: sid::component members renamed.
521 * sidpinattrutil.h: sid::component members renamed.
522 * sidpinutil.h: sid::component members renamed.
523 * sidso.h: sid::component members renamed.
524 * sidtypes.h: sid::component members renamed.
525 * sidwatchutil.h: sid::component members renamed.
527 1999-08-11 Ian Carmichael <iancarm@cygnus.com>
529 * sidtypes.h: (*): Change big_int_N and little_int_N so that
530 the default operations all use their integer values.
531 * sidattrutil.h, sidbusutil.h: (*): Ditto.
533 * sidattrutil.h: (make_attribute_*, parse_attribute_*): All
534 attributes now in HEX format. TODO: Change these to 0xHEX
537 1999-08-02 Ben Elliston <bje@cygnus.com>
539 * sidso.h: Reformat and document.
541 1999-07-30 Frank Ch. Eigler <fche@cygnus.com>
543 * sidattrutil.h (parse_attribute): Add better error reporting.
545 1999-07-27 Ben Elliston <bje@cygnus.com>
547 * Makefile.am (noinst_HEADERS): Remove Scheduler.h.
548 * Makefile.in: Regenerate.
549 * Scheduler.h: Remove deprecated file.
551 1999-07-27 Frank Ch. Eigler <fche@cygnus.com>
553 * sidcpuutil.h (sid_cpu_stepped): New enum.
555 1999-07-26 Faisal Khoja <fkhoja@cygnus.com>
557 * sidbusutil.h (class byte_bus): Removed exception handling from
558 macros defined in byte_bus to avoid compiler bug.
560 1999-07-25 Faisal Khoja <fkhoja@cygnus.com>
562 * sidcomp.h: Formatting.
563 * sidattrutil.h: Introduced exception handlings.
564 * sidbusutil.h: Likewise.
565 * sidpinutil.h: Likewise.
566 * sidcomputil.h: Exception handlers and documentation.
568 1999-07-21 Frank Ch. Eigler <fche@cygnus.com>
570 * sidcomp.h (pin::status): Revert extension: remove type.
571 (component): Simplify some comments.
572 * sidpinutil (disconnect): Change return type to
573 sid::component::status.
575 1999-07-21 Faisal Khoja <fkhoja@cygnus.com>
577 * sidtypes.h: Document.
578 * sidcomp.h: Likewise.
579 * sidbusutil.h: Likewise.
580 * sidattrutil.h: Likewise.
581 * sidpinutil.h: Likewise.
582 * sidcomputil.h: Likewise.
583 * sidcomp.h: Introduced enum in sid::pin class.
584 * sidpinutil.h (disconnect): Change return type from void to
587 1999-07-17 Ron Unrau <runrau@cygnus.com>
589 * supervisory.h: Add SUP_REG_NUM to get number of registers.
591 1999-07-16 Frank Ch. Eigler <fche@cygnus.com>
593 * sidwatchutil.h (create_virtual_pin): Return not_found if request
596 * sidmiscutil.h (recursion_limited ctor): Use a default recursion
599 1999-07-16 Frank Ch. Eigler <fche@cygnus.com>
601 * sidbusutil.h (fixed_accessor_map_component::listAccessorNames):
602 Remove debugging output to cerr.
603 (*): Change idiom "(*iterator).field" => "iterator->field".
605 1999-07-15 Frank Ch. Eigler <fche@cygnus.com>
607 * sidwatchutil.h (*): Comment out debugging output.
608 (add_watchable_value): Reverse argument order.
610 1999-07-06 Frank Ch. Eigler <fche@cygnus.com>
612 * sidattrutil.h (attribute_coder_bus_rw): New class.
613 (attribute_coder_bus_ro): Ditto.
614 (attribute_coder_bus_wo): Ditto.
616 * sidbusutil.h (word_bus::post_access_hook): New virtual function.
617 (readAny, writeAny): Call it after access.
618 (byte_bus::read): Reorganize.
620 * sidmiscutil.h (tokenize): New function.
622 * sidpinattrutil.h <binary_output_pin attribute_coder>: Use sid::
623 namespace prefix consistently.
625 * sidpinutil.h (output_pin): Slightly reorganize
626 inline member functions.
627 (fixed_pin_map_component::pin_factory): New virtual function.
628 (connectPin): Call it if needed output pin does not exist.
629 (fixed_pin_map_component::pin_junkyard): New virtual function.
630 (disconnectPin): Call it if an output pin has become orphaned.
632 * sidwatchutil.h: New class. Triggerpoint implementation classes.
634 1999-07-05 Frank Ch. Eigler <fche@cygnus.com>
636 * sidbusutil.h (control_register_bank): Move all member functions
639 1999-07-05 Frank Ch. Eigler <fche@cygnus.com>
641 * sidcomp.h: Remove unnecessary #include <memory> that arouses
642 a conflict with source tree directory ../component/memory.
644 1999-06-23 Frank Ch. Eigler <fche@cygnus.com>
646 * sidconfig.h: Remove ineffectual macro collision prevention.
648 1999-06-22 Frank Ch. Eigler <fche@cygnus.com>
650 * sidmiscutil.h (recursion_limited): Change order of member init
651 to allay compiler warning.
653 1999-06-22 Frank Ch. Eigler <fche@cygnus.com>
655 * sidattrutil.h (attribute_coder_ro_value): New class.
656 (add_attribute_ro_value): New function to use new coder class.
658 1999-06-16 Frank Ch. Eigler <fche@cygnus.com>
660 * sidschedutil.h (generic_scheduler_interface): Dropped class.
661 (scheduler_event_subscription): Smaller & faster utility class for
663 (scheduler_time_query): Small utility class for "time" query.
665 * sidtypes.h (HOST_BIG_ENDIAN): New t/f macro for host endianness.
666 (any_int::host_int_type): Use it.
667 (operator =): Fork into two operand endianness varieties.
668 (operator +=, /=, ++): New functions for host_int_X. May the barrage
670 (operator <<,>>): Print any_int number in natural digit order by
671 converting to/from host-endian.
673 1999-06-16 Faisal Khoja <fkhoja@cygnus.com>
675 * sidtypes.h (operator<<, operator>>): Removed the seperate
676 copies of the function for boolean value true and boolean value
677 false. Operator overloading is back to its original format.
679 1999-06-16 Faisal Khoja <fkhoja@cygnus.com>
681 * sidtypes.h (any_int(copyconstructor)): made two copies of copy
682 constructor one with bool true and other with bool false to compile on
684 (operator<<, operator>>): seperate copies for bool equals true & bool
687 1999-06-15 Frank Ch. Eigler <fche@cygnus.com>
689 * sidcomp.h (bus::read, bus::write): Remove 8-byte address
690 variants. Replace host_int_X data with little_* and big_*
692 (API_MINOR_VERSION): Bump it.
694 * sidbusutil.h (word_bus): Remove AddrType template parameter.
695 Use host_int_4 address type throughout.
696 (writeAny, readAny): Clean up data endianness handling.
697 (byte_bus): Match sid::bus API changes.
698 (control_register_bank): Replace AddrType with host_int_4 througout.
699 (control_register_bus): Ditto.
701 * sidtypes.h (any_int): Add host_int_type derived typedef.
702 Designate all members inline.
704 1999-06-14 Frank Ch. Eigler <fche@cygnus.com>
706 * sidattrutil.h (fixed_attribute_map_component): Use simpler
707 vector<string> pair for tracking attribute/category settings.
708 (categorize): Use new members.
709 (uncategorize): Ditto.
710 (listAttrNames): Ditto.
712 1999-06-14 Frank Ch. Eigler <fche@cygnus.com>
714 * sidcomp.h (listAttrNames): New overloaded function in
715 sid::component. Return attribute names of a category.
716 (API_MINOR_VERSION): Bump it.
717 * sidcomputil.h (no_attribute_component): Implement stub function.
718 * sidattrutil.h (fixed_attribute_map_component): Implement
719 new function by interpointing string->set<string> maps.
720 (categorize, uncategorize): New functions to manage maps.
721 (add_attribute*): New overloaded functions with category arguments.
722 (remove_attribute): Uncategorize dying attribute.
724 (attribute_coder_virtual ctor): Allow getter/setter arguments to
727 (listExtraAttrNames): Removed unneeded function. Adjust callers.
728 (getExtraAttrValue): Ditto.
729 (setExtraAttrValue): Ditto.
731 1999-06-11 Ron Unrau <runrau@cygnus.com>
733 * sidbusutil.h: byte_bus, callback_byte_bus: New Classes.
735 1999-06-11 Frank Ch. Eigler <fche@cygnus.com>
737 * sidmiscutil.h (string2stream): New class for safely streaming
739 (stream2string): Ditto.
741 1999-06-09 Frank Ch. Eigler <fche@cygnus.com>
743 * sidso.h (component_library): Add "deleteComponent" member.
744 * sidcomp.h (API_MINOR_VERSION): Bump up number to account for
745 component_library ABI change.
747 1999-06-08 Frank Ch. Eigler <fche@cygnus.com>
749 * sidmiscutil.h (recursion_limited): New class.
750 (recursion_record): New class.
752 1999-06-08 Ron Unrau <runrau@cygnus.com>
754 * sidpinattrutil.h: new file
755 * sidpinutil.h: (callback_pin::driven): make public
757 1999-06-07 Frank Ch. Eigler <fche@cygnus.com>
759 * sidcomp.h (component): Reincarnate listAccessorNames, listPinNames,
760 listBusNames into component API.
761 * sidcomputil.h: Ditto.
762 * sidbusutil.h: Ditto.
763 * sidpinutil.h: Ditto.
765 1999-06-06 Ron Unrau <runrau@cygnus.com>
767 * sidcpuutil.h: add cpu_trap_reissue for handling breakpoints that
768 are based on SWIs instead of invalid insns.
770 1999-06-01 Frank Ch. Eigler <fche@cygnus.com>
772 * sidattrutil.h (fixed_attribute_map_component::setAttrValue): Pass
773 back status value from parse_attribute().
775 1999-05-26 Frank Ch. Eigler <fche@cygnus.com>
777 * sidmiscutil.h: New file.
778 * Makefile.am: Know of it, but don't install it.
779 * Makefile.in: Regenerated.
781 1999-05-21 Frank Ch. Eigler <fche@cygnus.com>
783 * configure.in: Add "--disable-assert" option. Stop building
784 useless libtool here.
785 * aclocal.m4: Regenerated.
786 * configure: Regenerated.
787 * sidconf.in: Regenerated.
789 1999-05-19 Frank Ch. Eigler <fche@cygnus.com>
791 * sidattrutil.h (parse_attribute): Return sid::component::status.
792 (attribute_coder*): Ditto for all parse_attribute callbacks.
793 (add_attribute_virtual): Change setter callback signature.
795 1999-05-18 Frank Ch. Eigler <fche@cygnus.com>
797 * sidcomp.h (setRelatedComponents): Return component::status.
798 * sidcomputil.h (no_relationship_map_component): Return "not_found"
799 to setRelatedComponents.
800 (fixed_relationship_map_component): Return appropariate status
801 to setRelatedComponents.
803 (sid_breakpoint): #ifdef for !__CYGWIN__.
805 1999-05-13 Frank Ch. Eigler <fche@cygnus.com>
807 * configure.in: Correct use of AC_CONFIG_AUX_DIR.
808 * configure: Regenerated.
809 * aclocal.m4: Regenerated.
811 1999-05-13 Ron Unrau <runrau@cygnus.com>
813 * sidcomp.h: add supervisory call
814 * supervisory.h: new file - opcodes for supervisory call
815 * sidcomputil.h, sidattrutil.h: add skeleton for supervisory call
817 1999-05-11 Frank Ch. Eigler <fche@cygnus.com>
819 * sidbusutil.h (value_control_register): Provide more proper
821 * sidcpuutil.h: Fix typo in comment.
823 1999-05-09 Doug Evans <devans@casey.cygnus.com>
825 * sidtypes.h (endian): New enum.
827 1999-05-08 Doug Evans <devans@casey.cygnus.com>
829 * sidtypes.h (sid::signed_compiler_int[1248]): New types.
831 1999-05-07 Doug Evans <devans@casey.cygnus.com>
833 * sidcpuutil.h: New file.
835 1999-05-04 Frank Ch. Eigler <fche@cygnus.com>
837 * sidso.h: Define DLLEXPORT/DLLIMPORT for CYGWIN.
839 * sidbusutil.h: Revert last two sets of changes temporarily.
841 * Makefile.in: Regenerated for new libtool.
845 1999-05-01 Ron Unrau <runrau@cygnus.com>
847 * sidbusutil.h (word_bus::readAny): fix thinko on shift defs
849 1999-05-01 Ron Unrau <runrau@cygnus.com>
851 * sidbusutil.h (word_bus::readAny/writeAny): some progress towards
854 1999-04-27 Frank Ch. Eigler <fche@cygnus.com>
856 * configure.in: Look for hash_map and ext/hash_map headers.
857 * sidattrutil.h (HAVE_HASHING): Define if either of above headers
859 (attribute_map_t): If !HAVE_HASHING, use plain map<>, not hash_map<>.
860 * configure: Regenerated.
861 * sidconf.in: Regenerated.
863 * sidattrutil.h (make_attribute): Correct ostringstream usage typo.
865 1999-04-21 Frank Ch. Eigler <fche@cygnus.com>
867 * sidbusutil.h (control_register*): Language police cleanup in
868 ctors of classes derived from class templates.
869 * sidattrutil.h (attribute_coder*): Ditto.
871 1999-04-20 Doug Evans <devans@casey.cygnus.com>
873 * sidpinutil.h (callback_pin): New method set_callback.
875 1999-04-18 Frank Ch. Eigler <fche@cygnus.com>
877 * Scheduler.h: Mark as depracated.
878 * Makefile.am: Don't install Scheduler.h any more.
879 * Makefile.in: Regenerated.
881 1999-04-18 Doug Evans <devans@casey.cygnus.com>
883 * sidcomputil.h (sid_breakpoint): Declare.
885 1999-04-15 Frank Ch. Eigler <fche@cygnus.com>
887 * sidtypes.h: (any_int): Rewrite, templatize further, simplify.
888 (host_int*, big_int*, little_int*): Replace classes with typedefs.
890 1999-04-14 Frank Ch. Eigler <fche@cygnus.com>
892 * sidtypes.h (operator <<): Correct infinite recursion bug for
893 printing big_int_X and little_int_X.
895 1999-04-09 Frank Ch. Eigler <fche@cygnus.com>
897 * sidschedutil.h: New file for new class generic_scheduler_interface,
898 a functional interface to an external scheduler component.
899 * Makefile.am: Include it in noinst_HEADERS.
900 * Makefile.in: Regenerated.
902 1999-04-06 Frank Ch. Eigler <fche@cygnus.com>
904 * sidcomp.h (component::status): Renamed enum from connect_status.
905 Renamed "bad_arg"->"bad_value".
906 * sidbusutil.h (*): Ditto.
907 * sidcomputil.h (*): Ditto.
908 * sidpinutil.h (*): Ditto.
909 * sidattrutil.h (*): Ditto.
910 (fixed_attribute_map_component): Use hash_map instead of map for
912 (attribute_coder_virtual): New attribute coder class for attribute
913 make/parse callbacks.
914 (add_attribute_virtual): New function to use this coder.
915 (attribute_coder_ro): New attribute coder class for read-only
917 (add_attribute_ro): New function to use this coder.
918 (attribute_coder_notify): Rename from attribute_coder_callback.
919 (add_attribute_notify): New function to use this coder.
920 (remove_attribute): Assert existence of about-to-be removed
923 1999-04-03 Ron Unrau <runrau@cygnus.com>
925 * sidcomp.h, sidbusutil.h: swap addr<->data in bus::read and bus::write
927 1999-04-01 Ron Unrau <runrau@cygnus.com>
929 * Scheduler.h: add forgotten inline keywords.
931 1999-03-30 Frank Ch. Eigler <fche@cygnus.com>
933 * sidtypes.h (operator <<, operator >>): Rewrite streaming
934 operators for *_int_* types.
936 1999-03-26 Frank Ch. Eigler <fche@cygnus.com>
938 * sidpinutil.h (callback_pin): Accept callback function pointers
939 in reverse order too.
941 1999-03-26 Frank Ch. Eigler <fche@cygnus.com>
943 * sidcomp.h (component): Remove listAccessorNames, listPinNames,
944 listBusNames from component API.
945 * sidcomputil.h: Ditto.
946 * sidbusutil.h: Ditto.
947 * sidpinutil.h: Ditto.
949 1999-03-24 Frank Ch. Eigler <fche@cygnus.com>
951 * configure.in: Use new AC_CONFIG_AUX_DIR.
952 * configure: Regenerated.
953 * Makefile.in: Regenerated.
955 * sidcomp.h: Style cleanup.
956 * sidso.h: Junk cleanup.
957 * sidtypes.h: Add istream>> for host_int types.
959 1999-03-17 Frank Ch. Eigler <fche@cygnus.com>
961 * sidtypes.h (any_int_base): New base type for types.
962 (readByte,writeByte): Fix & collect functions in new base class.
963 (bytereverse): Add template functions for specific types.
964 Add x86-specific assembly for quick byte reversals.
965 * sidpinutil.h (input_pin): Style cleanups.
967 1999-03-16 Frank Ch. Eigler <fche@cygnus.com>
969 * sidattrutil.h: Formatting tweaks.
970 (fixed_attribute_map_component): Add remove_attribute call.
971 * sidcomp.h (API_*_VERSION): New const values.
972 (SID_COMPONENT_API_*_VERSION): Gone.
973 (pin::driven): Put back reference host_int_4 argument.
974 * sidpinutil.h: Formatting tweaks. Adapt to changed
975 pin::driven(...) signature.
976 (output_pin::drive): New method.
977 (fixed_pin_map_component): Add remove_pin call.
978 (class callback_pin): Derive from output_pin. Add new pmf for value-less
979 pin event callbacks. Add new constructors to set it.
980 (class callback_event_pin): Remove.
981 (class callback_output_pin): Remove.
982 * sidso.h (COMPONENT_LIBRARY_MAGIC): New const value.
983 (SID_COMPONENT_LIBRARY_MAGIC): Gone.
985 1999-03-12 Ron Unrau <runrau@cygnus.com>
987 * Scheduler.h: do not use component* for callback object state
989 1999-03-12 Ron Unrau <runrau@cygnus.com>
991 * sidcomp.h: setAccessor, connectPin, disconnectPin, and setAttrValue
993 * sid{bus,pin,attr,comp}util.h: track changes in sidcomp.h
995 1999-03-05 Frank Ch. Eigler <fche@cygnus.com>
997 * sidcomp.h (class component): Make destructor public - temporarily.
998 Add abstract relationship API.
999 * sidcomputil.h (class no_relation_component): New mix-in class for
1000 uninterested components.
1001 (class fixed_relation_map_component): New mix-in class for social
1003 * sidattrutil.h (class fixed_attribute_map_component): Make some
1005 * sidbusutil.h (class fixed_accessor_map_component): Ditto.
1006 (class fixed_accessor_map_component): Ditto.
1007 * sidpinutil.h (class fixed_pin_map_component): Ditto.
1008 (class callback_storage_pin): Use value-less callback fn.
1010 1999-03-01 Frank Ch. Eigler <fche@cygnus.com>
1012 * Makefile.am: Don't install sidutil mix-in headers.
1013 * Makefile.in: Rebuilt.
1015 1999-02-26 Frank Ch. Eigler <fche@cygnus.com>
1017 * sidbusutil.h: Remove some warnings.
1018 (word_bus): Propagate sid::bus::status from word_read/word_write.
1019 (value_control_register): Add assignment/conversion operators.
1021 * Makefile.am (INCLUDE_HEADERS): Also install recently added
1023 * Makefile.in: Rebuilt.
1025 1999-02-21 Ron Unrau <runrau@cygnus.com>
1027 * Scheduler.h: new file
1029 1999-02-16 Frank Ch. Eigler <fche@cygnus.com>
1031 * sidbusutil.h (*_control_register): New abstraction family for
1032 peripheral control registers.
1033 (control_register_bus): New bus that maps a group of control
1035 (word_bus::write_any): Fix typo.
1037 * sidtypes.h (HOST_IS_*_ENDIAN): Use #ifdef *BIG/LITTLE* consistently.
1038 (big/little/host_int_N): Add assignment operator.
1040 1999-02-12 Frank Ch. Eigler <fche@cygnus.com>
1042 * sidattrutil.h (attribute_coder_callback): New helper class for
1043 fixed_attribute_map_component that wants to monitor attribute
1044 writes with a callback member function.
1045 * sidcomp.h (*): Declare all component API calls as "throw ()".
1047 * Makefile.am: Switch to foreign mode. Adjust for automake 1.4.
1048 * configure.in: Adjust for autoconf 2.13.
1049 * Makefile.in: Rebuilt.
1050 * aclocal.m4: Rebuilt.
1051 * configure: Rebuilt.
1052 * sidconf.in: Rebuilt.
1054 1999-02-02 Frank Ch. Eigler <fche@cygnus.com>
1056 * sidattrutil.h (parse_attribute): Convert to string more precisely.
1057 (attribute_coder*): New classes.
1058 (fixed_attribute_map_component): New mix-in for extensible simplified
1060 * sidbusutil.h: Add extra #includes.
1061 * sidcomputil.h: Correct #include guard typo.
1062 * sidpinutil.h (callback_pin): New pin subtype for component member function
1064 (callbcak_storage_pin): As above, except also like storage_pin<>.
1065 * sidtypes.h (big_int, host_int, little_int): Add raw() member to return
1066 stored integer verbatim.
1068 1999-01-08 Frank Ch. Eigler <fche@cygnus.com>
1070 * sidbusutil.h: New file, containing bus API-related mixin classes.
1072 1998-12-23 Frank Ch. Eigler <fche@cygnus.com>
1074 * configure.in: New file. Perform API-tuning autoconf checks.
1075 * sidconf.in: New file.
1076 * configure: Generated new file.
1077 * aclocal.m4: Generated new file.
1078 * Makefile.am: New file. Install SID headers.
1079 * Makefile.in: Generated new file.
1080 * sidconfig.h: New file. Allow local sidconf.h and component config.h
1082 * sid*h: Include sidconfig.h.
1084 1998-12-18 Frank Ch. Eigler <fche@cygnus.com>
1086 * sidattrutil.h (parse_attribute): Use istrstream properly. Use
1087 reference argument as output. Use HAVE_STRSTREAM_H autoconf
1090 1998-12-17 Frank Ch. Eigler <fche@cygnus.com>
1092 * sidcomp.h: Removed attribute classes. Using std::string
1093 for attribute values instead.
1094 * sidso.h: Use explicit std:: namespace ref for some classes.
1095 * sidpinutil.h: Moved contents into sidutil:: namespace.
1096 (fixed_pin_map_component): New class for components with a fixed group of pins.
1097 * sidattrutil.h: New file: attribute utilities
1098 (make_attribute): Template to stream arbitrary type to string.
1099 (parse_attribute): Same, in reverse.
1100 * sidcomputil.h: New file: component virtual classes
1101 for providing stubs for unused component sub-APIs.
1102 (no_bus_component): Stub bus server functions.
1103 (no_accessor_component): Stub bus client functions.
1104 (no_pin_component): Stub pin functions.
1105 (no_attribute_component): Stub attribute functions.
1106 * Makefile.am (include_HEADERS): Install new files.
1107 * Makefile.in: Rebuilt.