Now that the interactive debugger exists,
there is no use for the output dump.
This commit is contained in:
parent
4537de8120
commit
a88f030b52
37
vvp/codes.cc
37
vvp/codes.cc
|
|
@ -17,7 +17,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: codes.cc,v 1.7 2001/04/13 03:55:18 steve Exp $"
|
#ident "$Id: codes.cc,v 1.8 2001/05/09 04:23:18 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include "codes.h"
|
# include "codes.h"
|
||||||
|
|
@ -102,40 +102,13 @@ vvp_code_t codespace_index(vvp_cpoint_t point)
|
||||||
return code_table[point]->table[index1]->table + index0;
|
return code_table[point]->table[index1]->table + index0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void codespace_dump(FILE*fd)
|
|
||||||
{
|
|
||||||
for (unsigned idx = 0 ; idx < code_count ; idx += 1) {
|
|
||||||
fprintf(fd, " %8x: ", idx);
|
|
||||||
vvp_code_t cop = codespace_index(idx);
|
|
||||||
|
|
||||||
if (cop->opcode == &of_ASSIGN) {
|
|
||||||
fprintf(fd, "%%assign 0x%u, %u, %u\n",
|
|
||||||
cop->iptr, cop->bit_idx1, cop->bit_idx2);
|
|
||||||
|
|
||||||
} else if (cop->opcode == &of_DELAY) {
|
|
||||||
fprintf(fd, "%%delay %lu\n", (unsigned long)cop->number);
|
|
||||||
|
|
||||||
} else if (cop->opcode == &of_END) {
|
|
||||||
fprintf(fd, "%%end\n");
|
|
||||||
|
|
||||||
} else if (cop->opcode == &of_JMP) {
|
|
||||||
fprintf(fd, "%%jmp 0x%u\n", cop->cptr);
|
|
||||||
|
|
||||||
} else if (cop->opcode == &of_JMP0) {
|
|
||||||
fprintf(fd, "%%jmp/0 0x%u\n", cop->cptr);
|
|
||||||
|
|
||||||
} else if (cop->opcode == &of_SET) {
|
|
||||||
fprintf(fd, "%%set 0x%u, %u\n", cop->iptr, cop->bit_idx1);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
fprintf(fd, "opcode %p\n", cop->opcode);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: codes.cc,v $
|
* $Log: codes.cc,v $
|
||||||
|
* Revision 1.8 2001/05/09 04:23:18 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.7 2001/04/13 03:55:18 steve
|
* Revision 1.7 2001/04/13 03:55:18 steve
|
||||||
* More complete reap of all threads.
|
* More complete reap of all threads.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
52
vvp/codes.h
52
vvp/codes.h
|
|
@ -19,14 +19,13 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: codes.h,v 1.25 2001/05/06 17:42:22 steve Exp $"
|
#ident "$Id: codes.h,v 1.26 2001/05/09 04:23:18 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
# include "pointers.h"
|
# include "pointers.h"
|
||||||
# include "memory.h"
|
# include "memory.h"
|
||||||
# include "vthread.h"
|
# include "vthread.h"
|
||||||
# include <stdio.h>
|
|
||||||
|
|
||||||
typedef struct vvp_code_s *vvp_code_t;
|
typedef struct vvp_code_s *vvp_code_t;
|
||||||
typedef bool (*vvp_code_fun)(vthread_t thr, vvp_code_t code);
|
typedef bool (*vvp_code_fun)(vthread_t thr, vvp_code_t code);
|
||||||
|
|
@ -125,10 +124,13 @@ extern vvp_cpoint_t codespace_next(void);
|
||||||
*/
|
*/
|
||||||
extern vvp_code_t codespace_index(vvp_cpoint_t ptr);
|
extern vvp_code_t codespace_index(vvp_cpoint_t ptr);
|
||||||
|
|
||||||
extern void codespace_dump(FILE*fd);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: codes.h,v $
|
* $Log: codes.h,v $
|
||||||
|
* Revision 1.26 2001/05/09 04:23:18 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.25 2001/05/06 17:42:22 steve
|
* Revision 1.25 2001/05/06 17:42:22 steve
|
||||||
* Add the %ix/get instruction. (Stephan Boettcher)
|
* Add the %ix/get instruction. (Stephan Boettcher)
|
||||||
*
|
*
|
||||||
|
|
@ -165,49 +167,5 @@ extern void codespace_dump(FILE*fd);
|
||||||
*
|
*
|
||||||
* Revision 1.15 2001/04/01 22:25:33 steve
|
* Revision 1.15 2001/04/01 22:25:33 steve
|
||||||
* Add the reduction nor instruction.
|
* Add the reduction nor instruction.
|
||||||
*
|
|
||||||
* Revision 1.14 2001/04/01 07:22:08 steve
|
|
||||||
* Implement the less-then and %or instructions.
|
|
||||||
*
|
|
||||||
* Revision 1.13 2001/04/01 06:40:44 steve
|
|
||||||
* Support empty statements for hanging labels.
|
|
||||||
*
|
|
||||||
* Revision 1.12 2001/04/01 06:12:13 steve
|
|
||||||
* Add the bitwise %and instruction.
|
|
||||||
*
|
|
||||||
* Revision 1.11 2001/04/01 04:34:28 steve
|
|
||||||
* Implement %cmp/x and %cmp/z instructions.
|
|
||||||
*
|
|
||||||
* Revision 1.10 2001/03/31 17:36:02 steve
|
|
||||||
* Add the jmp/1 instruction.
|
|
||||||
*
|
|
||||||
* Revision 1.9 2001/03/31 01:59:58 steve
|
|
||||||
* Add the ADD instrunction.
|
|
||||||
*
|
|
||||||
* Revision 1.8 2001/03/30 04:55:22 steve
|
|
||||||
* Add fork and join instructions.
|
|
||||||
*
|
|
||||||
* Revision 1.7 2001/03/26 04:00:39 steve
|
|
||||||
* Add the .event statement and the %wait instruction.
|
|
||||||
*
|
|
||||||
* Revision 1.6 2001/03/25 03:54:26 steve
|
|
||||||
* Add JMP0XZ and postpone net inputs when needed.
|
|
||||||
*
|
|
||||||
* Revision 1.5 2001/03/22 05:08:00 steve
|
|
||||||
* implement %load, %inv, %jum/0 and %cmp/u
|
|
||||||
*
|
|
||||||
* Revision 1.4 2001/03/20 06:16:24 steve
|
|
||||||
* Add support for variable vectors.
|
|
||||||
*
|
|
||||||
* Revision 1.3 2001/03/16 01:44:34 steve
|
|
||||||
* Add structures for VPI support, and all the %vpi_call
|
|
||||||
* instruction. Get linking of VPI modules to work.
|
|
||||||
*
|
|
||||||
* Revision 1.2 2001/03/11 23:06:49 steve
|
|
||||||
* Compact the vvp_code_s structure.
|
|
||||||
*
|
|
||||||
* Revision 1.1 2001/03/11 00:29:38 steve
|
|
||||||
* Add the vvp engine to cvs.
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: compile.cc,v 1.60 2001/05/09 02:53:25 steve Exp $"
|
#ident "$Id: compile.cc,v 1.61 2001/05/09 04:23:18 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include "compile.h"
|
# include "compile.h"
|
||||||
|
|
@ -1110,23 +1110,6 @@ void compile_cleanup(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void compile_dump(FILE*fd)
|
|
||||||
{
|
|
||||||
fprintf(fd, "FUNCTOR SYMBOL TABLE:\n");
|
|
||||||
sym_dump(sym_functors, fd);
|
|
||||||
fprintf(fd, "FUNCTORS:\n");
|
|
||||||
functor_dump(fd);
|
|
||||||
fprintf(fd, "UNRESOLVED PORT INPUTS:\n");
|
|
||||||
for (struct resolv_list_s*cur = resolv_list ; cur ; cur = cur->next)
|
|
||||||
fprintf(fd, " %08x: %s\n", cur->port, cur->source);
|
|
||||||
|
|
||||||
fprintf(fd, "CODE SPACE SYMBOL TABLE:\n");
|
|
||||||
sym_dump(sym_codespace, fd);
|
|
||||||
|
|
||||||
fprintf(fd, "CODE SPACE DISASSEMBLY:\n");
|
|
||||||
codespace_dump(fd);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* These functions are in support of the debugger.
|
* These functions are in support of the debugger.
|
||||||
*
|
*
|
||||||
|
|
@ -1143,6 +1126,10 @@ vvp_ipoint_t debug_lookup_functor(const char*name)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: compile.cc,v $
|
* $Log: compile.cc,v $
|
||||||
|
* Revision 1.61 2001/05/09 04:23:18 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.60 2001/05/09 02:53:25 steve
|
* Revision 1.60 2001/05/09 02:53:25 steve
|
||||||
* Implement the .resolv syntax.
|
* Implement the .resolv syntax.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: compile.h,v 1.21 2001/05/09 02:53:25 steve Exp $"
|
#ident "$Id: compile.h,v 1.22 2001/05/09 04:23:18 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
|
|
@ -174,14 +174,12 @@ extern void compile_net(char*label, char*name,
|
||||||
int msb, int lsb, bool signed_flag,
|
int msb, int lsb, bool signed_flag,
|
||||||
unsigned argc, struct symb_s*argv);
|
unsigned argc, struct symb_s*argv);
|
||||||
|
|
||||||
/*
|
|
||||||
* This is a diagnostic aid. Dump all the compiler tables to the file
|
|
||||||
* descriptor in a readable form.
|
|
||||||
*/
|
|
||||||
extern void compile_dump(FILE*fd);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: compile.h,v $
|
* $Log: compile.h,v $
|
||||||
|
* Revision 1.22 2001/05/09 04:23:18 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.21 2001/05/09 02:53:25 steve
|
* Revision 1.21 2001/05/09 02:53:25 steve
|
||||||
* Implement the .resolv syntax.
|
* Implement the .resolv syntax.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: functor.cc,v 1.18 2001/05/09 02:53:25 steve Exp $"
|
#ident "$Id: functor.cc,v 1.19 2001/05/09 04:23:18 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include "functor.h"
|
# include "functor.h"
|
||||||
|
|
@ -313,16 +313,6 @@ void functor_propagate(vvp_ipoint_t ptr)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void functor_dump(FILE*fd)
|
|
||||||
{
|
|
||||||
for (unsigned idx = 1 ; idx < functor_count ; idx += 1) {
|
|
||||||
functor_t cur = functor_index(idx*4);
|
|
||||||
fprintf(fd, "%08x: out=%x port={%x %x %x %x}\n",
|
|
||||||
(idx*4), cur->out, cur->port[0],
|
|
||||||
cur->port[1], cur->port[2], cur->port[3]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The variable functor is special. This is the truth table for it.
|
* The variable functor is special. This is the truth table for it.
|
||||||
*/
|
*/
|
||||||
|
|
@ -349,6 +339,10 @@ const unsigned char ft_var[16] = {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: functor.cc,v $
|
* $Log: functor.cc,v $
|
||||||
|
* Revision 1.19 2001/05/09 04:23:18 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.18 2001/05/09 02:53:25 steve
|
* Revision 1.18 2001/05/09 02:53:25 steve
|
||||||
* Implement the .resolv syntax.
|
* Implement the .resolv syntax.
|
||||||
*
|
*
|
||||||
|
|
@ -386,30 +380,5 @@ const unsigned char ft_var[16] = {
|
||||||
*
|
*
|
||||||
* Revision 1.9 2001/03/31 19:29:23 steve
|
* Revision 1.9 2001/03/31 19:29:23 steve
|
||||||
* Fix compilation warnings.
|
* Fix compilation warnings.
|
||||||
*
|
|
||||||
* Revision 1.8 2001/03/29 03:46:36 steve
|
|
||||||
* Support named events as mode 2 functors.
|
|
||||||
*
|
|
||||||
* Revision 1.7 2001/03/26 04:00:39 steve
|
|
||||||
* Add the .event statement and the %wait instruction.
|
|
||||||
*
|
|
||||||
* Revision 1.6 2001/03/25 00:35:35 steve
|
|
||||||
* Add the .net statement.
|
|
||||||
*
|
|
||||||
* Revision 1.5 2001/03/22 05:28:16 steve
|
|
||||||
* no longer need out message.
|
|
||||||
*
|
|
||||||
* Revision 1.4 2001/03/22 05:08:00 steve
|
|
||||||
* implement %load, %inv, %jum/0 and %cmp/u
|
|
||||||
*
|
|
||||||
* Revision 1.3 2001/03/20 06:16:24 steve
|
|
||||||
* Add support for variable vectors.
|
|
||||||
*
|
|
||||||
* Revision 1.2 2001/03/11 22:42:11 steve
|
|
||||||
* Functor values and propagation.
|
|
||||||
*
|
|
||||||
* Revision 1.1 2001/03/11 00:29:38 steve
|
|
||||||
* Add the vvp engine to cvs.
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,11 +19,10 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: functor.h,v 1.20 2001/05/09 02:53:25 steve Exp $"
|
#ident "$Id: functor.h,v 1.21 2001/05/09 04:23:18 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include "pointers.h"
|
# include "pointers.h"
|
||||||
# include <stdio.h>
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -239,11 +238,6 @@ inline unsigned functor_oval(vvp_ipoint_t fptr)
|
||||||
return fp->oval & 3;
|
return fp->oval & 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Dump a readable version of the functor address space to the file.
|
|
||||||
*/
|
|
||||||
extern void functor_dump(FILE*fd);
|
|
||||||
|
|
||||||
|
|
||||||
extern const unsigned char ft_AND[];
|
extern const unsigned char ft_AND[];
|
||||||
extern const unsigned char ft_BUF[];
|
extern const unsigned char ft_BUF[];
|
||||||
|
|
@ -260,6 +254,10 @@ extern const unsigned char ft_var[];
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: functor.h,v $
|
* $Log: functor.h,v $
|
||||||
|
* Revision 1.21 2001/05/09 04:23:18 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.20 2001/05/09 02:53:25 steve
|
* Revision 1.20 2001/05/09 02:53:25 steve
|
||||||
* Implement the .resolv syntax.
|
* Implement the .resolv syntax.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
18
vvp/main.cc
18
vvp/main.cc
|
|
@ -17,7 +17,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: main.cc,v 1.9 2001/05/08 23:32:26 steve Exp $"
|
#ident "$Id: main.cc,v 1.10 2001/05/09 04:23:19 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include "config.h"
|
# include "config.h"
|
||||||
|
|
@ -40,17 +40,13 @@ int main(int argc, char*argv[])
|
||||||
{
|
{
|
||||||
int opt;
|
int opt;
|
||||||
unsigned flag_errors = 0;
|
unsigned flag_errors = 0;
|
||||||
const char*dump_path = 0;
|
|
||||||
const char*design_path = 0;
|
const char*design_path = 0;
|
||||||
bool debug_flag = false;
|
bool debug_flag = false;
|
||||||
|
|
||||||
while ((opt = getopt(argc, argv, "D:dM:m:")) != EOF) switch (opt) {
|
while ((opt = getopt(argc, argv, "dM:m:")) != EOF) switch (opt) {
|
||||||
case 'd':
|
case 'd':
|
||||||
debug_flag = true;
|
debug_flag = true;
|
||||||
break;
|
break;
|
||||||
case 'D':
|
|
||||||
dump_path = optarg;
|
|
||||||
break;
|
|
||||||
case 'M':
|
case 'M':
|
||||||
module_path = optarg;
|
module_path = optarg;
|
||||||
break;
|
break;
|
||||||
|
|
@ -86,12 +82,6 @@ int main(int argc, char*argv[])
|
||||||
return rc;
|
return rc;
|
||||||
compile_cleanup();
|
compile_cleanup();
|
||||||
|
|
||||||
if (dump_path) {
|
|
||||||
FILE*fd = fopen(dump_path, "w");
|
|
||||||
compile_dump(fd);
|
|
||||||
fclose(fd);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (compile_errors > 0) {
|
if (compile_errors > 0) {
|
||||||
fprintf(stderr, "%s: Program not runnable, %u errors.\n",
|
fprintf(stderr, "%s: Program not runnable, %u errors.\n",
|
||||||
design_path, compile_errors);
|
design_path, compile_errors);
|
||||||
|
|
@ -108,6 +98,10 @@ int main(int argc, char*argv[])
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: main.cc,v $
|
* $Log: main.cc,v $
|
||||||
|
* Revision 1.10 2001/05/09 04:23:19 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.9 2001/05/08 23:32:26 steve
|
* Revision 1.9 2001/05/08 23:32:26 steve
|
||||||
* Add to the debugger the ability to view and
|
* Add to the debugger the ability to view and
|
||||||
* break on functors.
|
* break on functors.
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: symbols.cc,v 1.2 2001/03/18 00:37:55 steve Exp $"
|
#ident "$Id: symbols.cc,v 1.3 2001/05/09 04:23:19 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# include "symbols.h"
|
# include "symbols.h"
|
||||||
|
|
@ -269,31 +269,12 @@ symbol_value_t sym_get_value(symbol_table_t tbl, const char*key)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void dump_tree(struct tree_node_*cur, unsigned ind, FILE*fd)
|
|
||||||
{
|
|
||||||
if (cur->leaf_flag) {
|
|
||||||
|
|
||||||
fprintf(fd, "%*s%p: %u keys\n", ind, "", cur, cur->count);
|
|
||||||
for (unsigned idx = 0 ; idx < cur->count ; idx += 1) {
|
|
||||||
fprintf(fd, "%*s %3d: key=%s, val=0x%lx\n", ind, "",
|
|
||||||
idx, cur->leaf[idx].key, cur->leaf[idx].val.num);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
fprintf(fd, "%*s%p: %u children\n", ind, "", cur, cur->count);
|
|
||||||
for (unsigned idx = 0 ; idx < cur->count ; idx += 1) {
|
|
||||||
dump_tree(cur->child[idx], ind+4, fd);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void sym_dump(symbol_table_t tbl, FILE*fd)
|
|
||||||
{
|
|
||||||
dump_tree(tbl->root, 0, fd);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: symbols.cc,v $
|
* $Log: symbols.cc,v $
|
||||||
|
* Revision 1.3 2001/05/09 04:23:19 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.2 2001/03/18 00:37:55 steve
|
* Revision 1.2 2001/03/18 00:37:55 steve
|
||||||
* Add support for vpi scopes.
|
* Add support for vpi scopes.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: symbols.h,v 1.2 2001/03/18 00:37:55 steve Exp $"
|
#ident "$Id: symbols.h,v 1.3 2001/05/09 04:23:19 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -39,7 +39,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
# include "config.h"
|
# include "config.h"
|
||||||
# include <stdio.h>
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the basic type of a symbol table. It is opaque. Don't even
|
* This is the basic type of a symbol table. It is opaque. Don't even
|
||||||
|
|
@ -78,13 +77,12 @@ void sym_set_value(symbol_table_t tbl, const char*key, symbol_value_t val);
|
||||||
*/
|
*/
|
||||||
symbol_value_t sym_get_value(symbol_table_t tbl, const char*key);
|
symbol_value_t sym_get_value(symbol_table_t tbl, const char*key);
|
||||||
|
|
||||||
/*
|
|
||||||
* Diagnostic dump of the symbol table.
|
|
||||||
*/
|
|
||||||
extern void sym_dump(symbol_table_t tbl, FILE*fd);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: symbols.h,v $
|
* $Log: symbols.h,v $
|
||||||
|
* Revision 1.3 2001/05/09 04:23:19 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.2 2001/03/18 00:37:55 steve
|
* Revision 1.2 2001/03/18 00:37:55 steve
|
||||||
* Add support for vpi scopes.
|
* Add support for vpi scopes.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
*/
|
*/
|
||||||
#if !defined(WINNT)
|
#if !defined(WINNT)
|
||||||
#ident "$Id: vpi_signal.cc,v 1.10 2001/05/08 23:32:26 steve Exp $"
|
#ident "$Id: vpi_signal.cc,v 1.11 2001/05/09 04:23:19 steve Exp $"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
|
|
||||||
# include "vpi_priv.h"
|
# include "vpi_priv.h"
|
||||||
# include "functor.h"
|
# include "functor.h"
|
||||||
|
# include <stdio.h>
|
||||||
# include <malloc.h>
|
# include <malloc.h>
|
||||||
# include <assert.h>
|
# include <assert.h>
|
||||||
|
|
||||||
|
|
@ -399,6 +400,10 @@ vpiHandle vpip_make_net(char*name, int msb, int lsb, bool signed_flag,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log: vpi_signal.cc,v $
|
* $Log: vpi_signal.cc,v $
|
||||||
|
* Revision 1.11 2001/05/09 04:23:19 steve
|
||||||
|
* Now that the interactive debugger exists,
|
||||||
|
* there is no use for the output dump.
|
||||||
|
*
|
||||||
* Revision 1.10 2001/05/08 23:32:26 steve
|
* Revision 1.10 2001/05/08 23:32:26 steve
|
||||||
* Add to the debugger the ability to view and
|
* Add to the debugger the ability to view and
|
||||||
* break on functors.
|
* break on functors.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue