Mercurial > projects > dstress
diff dstress.c @ 991:fc296bd82895
fixed Valgrind exclusion bug
author | thomask |
---|---|
date | Wed, 10 May 2006 19:00:12 +0000 |
parents | c6f4a1d57892 |
children | 94714c219f3b |
line wrap: on
line diff
--- a/dstress.c Wed May 10 05:30:02 2006 +0000 +++ b/dstress.c Wed May 10 19:00:12 2006 +0000 @@ -161,13 +161,13 @@ #ifdef USE_VALGRIND #define VALGRIND "valgrind --leak-check=no -q --suppressions=valgrind.suppress" #else -#define VALGRIND "" +#define VALGRIND NULL #endif #define TMP_DIR "./obj" #define RM_DIR "rm -rf" #else #ifdef USE_WINDOWS -#define VALGRIND "" +#define VALGRIND NULL #define TMP_DIR ".\\obj" #define RM_DIR "rd /sq" #else @@ -980,14 +980,17 @@ /* test 2/3 - run */ if((modus & MODE_NORUN) && (strstr(case_file, "/asm_") - || strstr(case_file, "\\asm_"))) + || strstr(case_file, "\\asm_") + || (case_file == strstr(case_file, "asm_")))) { /* Valgrind doesn't support privileged instructions */ goto no_valgrind; - }else if(!strstr(case_file, "/asm_") && !strstr(case_file, "\\asm_")){ + }else if(strstr(case_file, "/asm_") || strstr(case_file, "\\asm_") + || (case_file == strstr(case_file, "asm_"))) + { /* FIXME asm workaround due to Valgrind bugs (mainly SSE3) */ goto no_valgrind; - }else if(VALGRIND && VALGRIND[0]){ + }else if(VALGRIND){ bufferLen = strlen(VALGRIND) + strlen(case_file) + 8; buffer = malloc(bufferLen); snprintf(buffer, bufferLen, "%s %s.exe", VALGRIND, case_file);