short fullname = 0;
short showfull = 0;
short userinterrupt = 0;
+char contsim = 0;
char *ssdirl = DATADIR LIB_DIR_SUFFIX ":" DATADIR LIB_DIR_SUFFIX "/small" ;
char *simArgs[40];
int nsimArgs = 0;
{
function *func;
symbol *sym;
+ exePoint *ep ;
/* for all functions do */
for ( func = setFirstItem(functions); func;
if (mod->cLines[j]->addr >= sym->addr &&
mod->cLines[j]->addr <= sym->eaddr ) {
- exePoint *ep ;
/* add it to the execution point */
if (func->entryline > j)
addSet(&func->cfpoints,ep);
}
}
-
+ /* check double line execution points of module */
+ for (ep = setFirstItem(mod->cfpoints); ep;
+ ep = setNextItem(mod->cfpoints))
+ {
+ if (ep->addr >= sym->addr &&
+ ep->addr <= sym->eaddr )
+ {
+ addSet(&func->cfpoints,ep);
+ }
+ }
/* do the same for asm execution points */
for ( j = 0 ; j < mod->nasmLines ; j++ ) {
if (mod->asmLines[j]->addr >= sym->addr &&
int passon_args_flag = 0; /* if true, pass on args to simulator */
Dprintf(D_sdcdb, ("sdcdb: parseCmdLine\n"));
+ contsim=0;
for ( i = 1; i < argc ; i++) {
//fprintf(stdout,"%s\n",argv[i]);
continue;
}
#endif
+ if (strncmp(argv[i],"-contsim",8) == 0) {
+ contsim=1;
+ continue;
+ }
/* model string */
if (strncmp(argv[i],"-m",2) == 0) {