Add the -N switch to the iverilog command.

This commit is contained in:
steve 2000-08-09 01:34:00 +00:00
parent d58533fd7b
commit 91a462e38c
2 changed files with 44 additions and 4 deletions

View File

@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT)
#ident "$Id: iverilog.c,v 1.19 2000/07/29 17:58:20 steve Exp $"
#ident "$Id: iverilog.c,v 1.20 2000/08/09 01:34:00 steve Exp $"
#endif
#include <stdio.h>
@ -39,6 +39,7 @@
const char*base = IVL_ROOT;
const char*mtm = 0;
const char*opath = "a.out";
const char*npath = 0;
const char*targ = "vvm";
const char*start = 0;
@ -73,6 +74,14 @@ static int t_null(char*cmd, unsigned ncmd)
ncmd += rc;
}
if (npath) {
sprintf(tmp, " -N%s", npath);
rc = strlen(tmp);
cmd = realloc(cmd, ncmd+rc+1);
strcpy(cmd+ncmd, tmp);
ncmd += rc;
}
if (mtm) {
sprintf(tmp, " -T%s", mtm);
rc = strlen(tmp);
@ -150,6 +159,14 @@ static int t_vvm(char*cmd, unsigned ncmd)
ncmd += rc;
}
if (npath) {
sprintf(tmp, " -N%s", npath);
rc = strlen(tmp);
cmd = realloc(cmd, ncmd+rc+1);
strcpy(cmd+ncmd, tmp);
ncmd += rc;
}
if (start) {
sprintf(tmp, " -s%s", start);
rc = strlen(tmp);
@ -228,6 +245,14 @@ static int t_xnf(char*cmd, unsigned ncmd)
ncmd += rc;
}
if (npath) {
sprintf(tmp, " -N%s", npath);
rc = strlen(tmp);
cmd = realloc(cmd, ncmd+rc+1);
strcpy(cmd+ncmd, tmp);
ncmd += rc;
}
if (start) {
sprintf(tmp, " -s%s", start);
rc = strlen(tmp);
@ -280,7 +305,7 @@ int main(int argc, char **argv)
int opt, idx;
char*cp;
while ((opt = getopt(argc, argv, "B:D:Ef:I:m:o:Ss:T:t:vW:")) != EOF) {
while ((opt = getopt(argc, argv, "B:D:Ef:I:mN::o:Ss:T:t:vW:")) != EOF) {
switch (opt) {
case 'B':
@ -341,9 +366,15 @@ int main(int argc, char **argv)
strcat(mod_list, optarg);
}
break;
case 'N':
npath = optarg;
break;
case 'o':
opath = optarg;
break;
case 'S':
synth_flag = 1;
break;
@ -460,6 +491,9 @@ int main(int argc, char **argv)
/*
* $Log: iverilog.c,v $
* Revision 1.20 2000/08/09 01:34:00 steve
* Add the -N switch to the iverilog command.
*
* Revision 1.19 2000/07/29 17:58:20 steve
* Introduce min:typ:max support.
*

View File

@ -1,10 +1,10 @@
.TH iverilog 1 "$Date: 2000/07/29 17:58:20 $" Version "$Date: 2000/07/29 17:58:20 $"
.TH iverilog 1 "$Date: 2000/08/09 01:34:00 $" Version "$Date: 2000/08/09 01:34:00 $"
.SH NAME
iverilog - Icarus Verilog compiler
.SH SYNOPSIS
.B iverilog
[-ESv] [-Dmacro[=defn]] [-fflag=value] [-Iincludepath] [-mmodule] [-ooutputfilename] [-s topmodule] [-ttype] [-Tmin/typ/max] [-Wclass] sourcefile[s]
[-ESv] [-Dmacro[=defn]] [-fflag=value] [-Iincludepath] [-mmodule] [-Nfile] [-ooutputfilename] [-s topmodule] [-ttype] [-Tmin/typ/max] [-Wclass] sourcefile[s]
.SH DESCRIPTION
.PP
@ -56,6 +56,12 @@ Add this module to the list of VPI modules to be loaded by the
simulation. Many modules can be specified, and all will be loaded, in
the order specified.
.TP 8
.B -N\fIpath\fP
This is used for debugging the compiler proper. Dump the final netlist
form of the design to the specified file. It otherwise does not affect
operation of the compiler. The dump happens after the design is
elaborated and optimized.
.TP 8
.B -o \fIfilename\fP
Place output in the file \fIfilename\fP. If no output file name is
specified, \fIiverilog\fP uses the default name \fBa.out\fP.