[cfe-commits] r77072 - in /cfe/trunk/utils/test: MultiTestRunner.pyTestRunner.py
Nuno Lopes
nunoplopes at sapo.pt
Sat Jul 25 11:30:57 PDT 2009
Hi,
What's the problem with valgrind? It was working well last time I tried it
(last week or so). Now you even have official support from valgrind for
Darwin.. :)
I think it's very helpful to be able to run the tests under valgrind.
Although it takes a while, it's a cheap way to find bugs.
I don't mind maintaining valgrind's support. I also do it for LLVM's and
PHP's test suites. (for example, you can see here the amount of bugs it can
catch: http://gcov.php.net/viewer.php?version=PHP_5_3&func=valgrind)
Nuno
----- Original Message -----
> Author: ddunbar
> Date: Sat Jul 25 08:13:06 2009
> New Revision: 77072
>
> URL: http://llvm.org/viewvc/llvm-project?rev=77072&view=rev
> Log:
> MultiTestRunner: Disable valgrind support for now, I don't feel like
> maintaining
> it currently.
>
> Modified:
> cfe/trunk/utils/test/MultiTestRunner.py
> cfe/trunk/utils/test/TestRunner.py
>
> Modified: cfe/trunk/utils/test/MultiTestRunner.py
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/test/MultiTestRunner.py?rev=77072&r1=77071&r2=77072&view=diff
>
> ==============================================================================
> --- cfe/trunk/utils/test/MultiTestRunner.py (original)
> +++ cfe/trunk/utils/test/MultiTestRunner.py Sat Jul 25 08:13:06 2009
> @@ -172,7 +172,6 @@
> startTime = time.time()
> code = TestRunner.runOneTest(path, command, output,
> testname,
> opts.clang, opts.clangcc,
> -
> useValgrind=opts.useValgrind,
> useDGCompat=opts.useDGCompat,
> useScript=opts.testScript,
> output=open(testresults,'w'))
> @@ -267,6 +266,9 @@
>
> if not args:
> parser.error('No inputs specified')
> + if opts.useValgrind:
> + parser.error('Support for running with valgrind is '
> + 'temporarily disabled')
>
> if opts.clang is None:
> opts.clang = TestRunner.inferClang()
>
> Modified: cfe/trunk/utils/test/TestRunner.py
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/test/TestRunner.py?rev=77072&r1=77071&r2=77072&view=diff
>
> ==============================================================================
> --- cfe/trunk/utils/test/TestRunner.py (original)
> +++ cfe/trunk/utils/test/TestRunner.py Sat Jul 25 08:13:06 2009
> @@ -69,17 +69,10 @@
> f.close()
>
> def runOneTest(FILENAME, SUBST, OUTPUT, TESTNAME, CLANG, CLANGCC,
> - useValgrind=False,
> useDGCompat=False,
> useScript=None,
> output=sys.stdout):
> OUTPUT = os.path.abspath(OUTPUT)
> - if useValgrind:
> - VG_OUTPUT = '%s.vg'%(OUTPUT,)
> - os.system('rm -f %s.*'%(VG_OUTPUT))
> - VALGRIND =
> 'valgrind -q --tool=memcheck --leak-check=full --trace-children=yes --log-file=%s.%%p'%(VG_OUTPUT)
> - CLANG = '%s %s'%(VALGRIND, CLANG)
> - CLANGCC = '%s %s'%(VALGRIND, CLANGCC)
>
> # Create the output directory if it does not already exist.
> mkdir_p(os.path.dirname(OUTPUT))
> @@ -174,9 +167,9 @@
> f = open(SCRIPT,'w')
> if kSystemName == 'Windows':
> f.write('\nif %ERRORLEVEL% NEQ 0 EXIT\n'.join(scriptLines))
> - f.write('\n')
> else:
> f.write(' &&\n'.join(scriptLines))
> + f.write('\n')
> f.close()
>
> outputFile = open(OUTPUT,'w')
> @@ -208,16 +201,7 @@
> if xfailLines:
> SCRIPT_STATUS = not SCRIPT_STATUS
>
> - if useValgrind:
> - if kSystemName == 'Windows':
> - raise NotImplementedError,'Cannot run valgrind on windows'
> - else:
> - VG_OUTPUT = capture(['/bin/sh','-c','cat %s.*'%(VG_OUTPUT)])
> - VG_STATUS = len(VG_OUTPUT)
> - else:
> - VG_STATUS = 0
> -
> - if SCRIPT_STATUS or VG_STATUS:
> + if SCRIPT_STATUS:
> print >>output, "******************** TEST '%s' FAILED!
> ********************"%(TESTNAME,)
> print >>output, "Command: "
> output.writelines(scriptLines)
> @@ -226,9 +210,6 @@
> else:
> print >>output, "Incorrect Output:"
> cat(OUTPUT, output)
> - if VG_STATUS:
> - print >>output, "Valgrind Output:"
> - print >>output, VG_OUTPUT
> print >>output, "******************** TEST '%s' FAILED!
> ********************"%(TESTNAME,)
> output.flush()
> if xfailLines:
> @@ -334,9 +315,6 @@
> parser.add_option("", "--clang-cc", dest="clangcc",
> help="Program to use as \"clang-cc\"",
> action="store", default=None)
> - parser.add_option("", "--vg", dest="useValgrind",
> - help="Run tests under valgrind",
> - action="store_true", default=False)
> parser.add_option("", "--dg", dest="useDGCompat",
> help="Use llvm dejagnu compatibility mode",
> action="store_true", default=False)
> @@ -357,7 +335,6 @@
>
> res = runOneTest(path, command, output, testname,
> opts.clang, opts.clangcc,
> - useValgrind=opts.useValgrind,
> useDGCompat=opts.useDGCompat,
> useScript=os.getenv("TEST_SCRIPT"))
More information about the cfe-commits
mailing list