From 42bb9314934d76dc032b226d06f61e56ac54c4e3 Mon Sep 17 00:00:00 2001 From: Eric Smith Date: Fri, 12 Sep 2003 08:54:24 +0000 Subject: [PATCH] Initial revision --- trace_queue.c | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 trace_queue.c diff --git a/trace_queue.c b/trace_queue.c new file mode 100644 index 0000000..bf74eb7 --- /dev/null +++ b/trace_queue.c @@ -0,0 +1,38 @@ +#include +#include +#include "dis.h" + + +#define MAX_TRACE_QUEUE 65536 +static int trace_queue_count = 0; +static addr_t trace_queue_val [MAX_TRACE_QUEUE]; + + +void init_trace_queue (void) +{ + trace_queue_count = 0; +} + + +int trace_queue_empty (void) +{ + return (trace_queue_count == 0); +} + + +void push_trace_queue (addr_t addr) +{ + if (trace_queue_count >= MAX_TRACE_QUEUE) + crash ("trace queue overflow"); + trace_queue_val [trace_queue_count++] = addr; +} + + +addr_t pop_trace_queue (void) +{ + if (trace_queue_count == 0) + crash ("trace queue empty"); + return (trace_queue_val [--trace_queue_count]); +} + +