Add generic single-step-display for vvp_gen_event_s objects.

This gives a little bit more specificity to the event step
display.
This commit is contained in:
Stephen Williams 2010-01-06 21:40:26 -08:00
parent dda197e39b
commit 5533252cc1
2 changed files with 18 additions and 0 deletions

View File

@ -94,6 +94,11 @@ vvp_gen_event_s::~vvp_gen_event_s()
{ {
} }
void vvp_gen_event_s::single_step_display(void)
{
cerr << "vvp_gen_event_s: Step into event " << typeid(*this).name() << endl;
}
/* /*
* Derived event types * Derived event types
*/ */
@ -326,6 +331,7 @@ struct propagate_vector4_event_s : public event_s {
vvp_vector4_t val; vvp_vector4_t val;
/* Action */ /* Action */
void run_run(void); void run_run(void);
void single_step_display(void);
}; };
void propagate_vector4_event_s::run_run(void) void propagate_vector4_event_s::run_run(void)
@ -333,6 +339,11 @@ void propagate_vector4_event_s::run_run(void)
net->send_vec4(val, 0); net->send_vec4(val, 0);
} }
void propagate_vector4_event_s::single_step_display(void)
{
cerr << "propagate_vector4_event: Propagate val=" << val << endl;
}
struct assign_array_r_word_s : public event_s { struct assign_array_r_word_s : public event_s {
vvp_array_t mem; vvp_array_t mem;
unsigned adr; unsigned adr;
@ -368,6 +379,7 @@ struct generic_event_s : public event_s {
vvp_gen_event_t obj; vvp_gen_event_t obj;
bool delete_obj_when_done; bool delete_obj_when_done;
void run_run(void); void run_run(void);
void single_step_display(void);
static void* operator new(size_t); static void* operator new(size_t);
static void operator delete(void*); static void operator delete(void*);
@ -383,6 +395,11 @@ void generic_event_s::run_run(void)
} }
} }
void generic_event_s::single_step_display(void)
{
obj->single_step_display();
}
static const size_t GENERIC_CHUNK_COUNT = 131072 / sizeof(struct generic_event_s); static const size_t GENERIC_CHUNK_COUNT = 131072 / sizeof(struct generic_event_s);
static slab_t<sizeof(generic_event_s),GENERIC_CHUNK_COUNT> generic_event_heap; static slab_t<sizeof(generic_event_s),GENERIC_CHUNK_COUNT> generic_event_heap;

View File

@ -125,6 +125,7 @@ struct vvp_gen_event_s
{ {
virtual ~vvp_gen_event_s() =0; virtual ~vvp_gen_event_s() =0;
virtual void run_run() =0; virtual void run_run() =0;
virtual void single_step_display(void);
}; };
/* /*