|
20 | 20 | help="number of repetitions", metavar="NUMBER")
|
21 | 21 | parser.add_option("-q", action="store_true", dest="quiet", default=False,
|
22 | 22 | help="suppresses rust log output")
|
| 23 | +parser.add_option("-v", action="store_true", dest="valgrind", default=False, |
| 24 | + help="runs under valgrind") |
23 | 25 | parser.add_option("-p", action="store_true", dest="printSource",
|
24 | 26 | default=False, help="prints the test case's source")
|
25 | 27 | parser.add_option("-s", dest="seed", metavar="NUMBER", default=-1,
|
@@ -72,7 +74,14 @@ def getRustTests(filter):
|
72 | 74 | os.putenv("RUST_SEED", options.seed);
|
73 | 75 | else:
|
74 | 76 | os.putenv("RUST_SEED", str(i));
|
75 |
| - result = os.system(rustProgram.replace(".rs", ".x86")); |
| 77 | + command = rustProgram.replace(".rs", ".x86"); |
| 78 | + if (options.valgrind): |
| 79 | + command = "valgrind --leak-check=full " + \ |
| 80 | + "--quiet --vex-iropt-level=0 " + \ |
| 81 | + "--suppressions=etc/x86.supp " + \ |
| 82 | + command; |
| 83 | + print "Running Command: " + command; |
| 84 | + result = os.system(command); |
76 | 85 | exitStatus = result >> 8;
|
77 | 86 | signalNumber = result & 0xF;
|
78 | 87 | if (result == 0):
|
|
0 commit comments