From 05f6bf9cea4c1f294a40af5ad55abe2970cf6640 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Thu, 4 Jun 1998 06:33:02 +0000 Subject: [PATCH] Memory corruption problems - hw-event list wasn't correct unlinking/freeing events. Couldn't handle the removal of a hw-event that just been scheduled. --- sim/common/ChangeLog | 22 ++++++++++++++++++++++ sim/common/Make-common.in | 12 +++++++++--- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog index f60a1c800c7..50176e86a60 100644 --- a/sim/common/ChangeLog +++ b/sim/common/ChangeLog @@ -1,3 +1,25 @@ +Thu Jun 4 13:53:54 1998 Andrew Cagney + + * hw-events.c (create_hw_event, delete_hw_event): Delete. + (hw_event_queue_schedule, hw_event_queue_deschedule, + bounce_hw_event): Fix hw-event memory corruptions found by Joyce + Janczyn. + + * hw-alloc.h (HW_NZALLOC): Define. + + * Make-common.in (test-hw-events): Add target for testing the + hw-event code. + +Mon May 25 21:11:26 1998 Andrew Cagney + + * Make-common.in (SIM_COMMON_HW_OBJS): Add hw-handles.o and + hw-instances.o. + hw-handles.c, hw-instances.c, hw-handles.h, hw-instances.h: New + files. + * hw-main.h: Include hw-handles.h, hw-instances.h. + * hw-base.h ({create,delete}_hw_{handles,instances}_data): Declare + * hw-base.c (hw_create, hw_delete): Call same. + Mon May 25 18:55:35 1998 Andrew Cagney * dv-core.c: Include hw-main.h and sim-main.h. diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in index b92486ccc33..4d950b81359 100644 --- a/sim/common/Make-common.in +++ b/sim/common/Make-common.in @@ -143,11 +143,13 @@ SIM_EXTRA_CLEAN = SIM_COMMON_HW_OBJS = \ hw-alloc.o \ + hw-base.o \ hw-device.o \ hw-events.o \ + hw-handles.o \ + hw-instances.o \ hw-ports.o \ hw-properties.o \ - hw-base.o \ hw-tree.o \ sim-hw.o \ @@ -319,8 +321,8 @@ hw-alloc_h = $(srccom)/hw-alloc.h hw-base_h = $(srccom)/hw-base.h hw-device_h = $(srccom)/hw-device.h hw-events_h = $(srccom)/hw-events.h -hw-handles_h = #$(srccom)/hw-handles.h -hw-instances_h = #$(srccom)/hw-instances.h +hw-handles_h = $(srccom)/hw-handles.h +hw-instances_h = $(srccom)/hw-instances.h hw-ports_h = $(srccom)/hw-ports.h hw-properties_h = $(srccom)/hw-properties.h hw-tree_h = $(srccom)/hw-tree.h @@ -488,6 +490,10 @@ hw-device.o: $(srccom)/hw-device.c $(hw_main_headers) hw-events.o: $(srccom)/hw-events.c $(hw_main_headers) $(sim_main_headers) $(CC) -c $(srccom)/hw-events.c $(ALL_CFLAGS) +test-hw-events: $(srccom)/hw-events.c libsim.a + $(CC) $(ALL_CFLAGS) -DMAIN -o test-hw-events$(EXEEXT) \ + $(srccom)/hw-events.c libsim.a $(EXTRA_LIBS) + hw-instances.o: $(srccom)/hw-instances.c $(hw_main_headers) $(CC) -c $(srccom)/hw-instances.c $(ALL_CFLAGS) -- 2.30.2