Print out instruction counts.
authorbdemsky <bdemsky>
Wed, 8 Nov 2006 19:50:24 +0000 (19:50 +0000)
committerbdemsky <bdemsky>
Wed, 8 Nov 2006 19:50:24 +0000 (19:50 +0000)
Robust/src/Runtime/runtime.c

index 23e5b29a3896ace74bd2e417454b603e843a8133..8a0ecbac3da1186cfc72a819a309a9fee4867b7d 100644 (file)
@@ -38,6 +38,7 @@ int injectinstructionfailures;
 int failurecount;
 float instfailurechance=0;
 int numfailures;
+int instaccum=0;
 
 void processOptions() {
   int i;
@@ -82,6 +83,7 @@ void processOptions() {
       options=strchr(options,' ');
       if (options!=NULL) options++;
 
+      instaccum=failurecount;
       instructioncount=failurecount;
       injectinstructionfailures=1;
       printf("Number of failures=%d\n",numfailures);
@@ -413,9 +415,9 @@ void executetasks() {
          }
          /* Actually call task */
          if (debugtask) {
-           printf("ENTER %s\n",tpd->task->name);
+           printf("ENTER %s count=%d\n",tpd->task->name, (instaccum-instructioncount));
            ((void (*) (void **)) tpd->task->taskptr)(taskpointerarray);
-           printf("EXIT %s\n",tpd->task->name);
+           printf("EXIT %s count=%d\n",tpd->task->name, (instaccum-instructioncount));
          } else
            ((void (*) (void **)) tpd->task->taskptr)(taskpointerarray);
        }
@@ -463,6 +465,7 @@ void injectinstructionfailure() {
     if (numfailures>0)
       numfailures--;
     instructioncount=failurecount;    
+    instaccum+=failurecount;
     if ((((double)random())/RAND_MAX)<instfailurechance) {
       printf("FAILURE!!!\n");
       longjmp(error_handler,11);