reverse @zhemao commit on htif: need to parse args for verilator

This commit is contained in:
abejgonzalez
2019-07-08 14:34:17 -07:00
parent 87e4090e38
commit a408422ac1

View File

@@ -121,6 +121,7 @@ int main(int argc, char** argv)
FILE * vcdfile = NULL; FILE * vcdfile = NULL;
uint64_t start = 0; uint64_t start = 0;
#endif #endif
char ** htif_argv = NULL;
int verilog_plusargs_legal = 1; int verilog_plusargs_legal = 1;
while (1) { while (1) {
@@ -242,6 +243,10 @@ done_processing:
usage(argv[0]); usage(argv[0]);
return 1; return 1;
} }
int htif_argc = 1 + argc - optind;
htif_argv = (char **) malloc((htif_argc) * sizeof (char *));
htif_argv[0] = argv[0];
for (int i = 1; optind < argc;) htif_argv[i++] = argv[optind++];
if (verbose) if (verbose)
fprintf(stderr, "using random seed %u\n", random_seed); fprintf(stderr, "using random seed %u\n", random_seed);
@@ -264,8 +269,8 @@ done_processing:
#endif #endif
jtag = new remote_bitbang_t(rbb_port); jtag = new remote_bitbang_t(rbb_port);
dtm = new dtm_t(argc, argv); dtm = new dtm_t(htif_argc, htif_argv);
tsi = new tsi_t(argc, argv); tsi = new tsi_t(htif_argc, htif_argv);
signal(SIGTERM, handle_sigterm); signal(SIGTERM, handle_sigterm);
@@ -346,5 +351,6 @@ done_processing:
if (tsi) delete tsi; if (tsi) delete tsi;
if (jtag) delete jtag; if (jtag) delete jtag;
if (tile) delete tile; if (tile) delete tile;
if (htif_argv) free(htif_argv);
return ret; return ret;
} }