8 Commits

Author SHA1 Message Date
Giacomo Vercesi 793b8999e9 Adapt mass-testing infrastructure to pypeline
Make the required changes so that `revng2` can be used with mass-testing
and the per-component stats are correct.
2025-12-12 15:46:49 +01:00
Giacomo Vercesi f9b7df163a test-harness: wrap children retrieval
In some corner cases, the `psutil.Process.children()` function might
throw a `NoSuchProcess` in case the parent died in the meantime. Wrap
the `.children()` function in a `_get_children` function to guard
against this case.
2025-10-20 10:28:44 +02:00
Giacomo Vercesi 2ca8776984 test-harness: add missing type annotation 2025-10-20 10:25:03 +02:00
Giacomo Vercesi d098c14afd test-harness: handle race on program PID
The `pid_has_signal` function can throw an exception if in the meantime
the program pid has disappeared (`FileNotFoundError`). Handle this
corner case.
2025-06-04 13:30:42 +02:00
Giacomo Vercesi cdc1120a90 dump-sections: gracefully handle fat Mach-O
Add the needed changes to `revng mass-testing dump-sections` so that a
fat Mach-O does not lead to a crash.
2025-06-04 13:30:41 +02:00
Giacomo Vercesi 8773f3bbd6 mass-testing dump-sections: improve --text-size
Improve text-size detection in the case of PE and Mach-O files. In both
cases if a suitable `.text`-like section is not found then the text size
will be the sum of all segments with an executable flag.
2024-11-13 09:28:12 +01:00
Giacomo Vercesi 023b470473 mass-testing: implement cmd/env overrides
Implement override mechanisms via command-line and/or env for the
following aspects:
* The maximum memory set by `test-harness`
* The timeout handled by `test-harness`
* The number of concurrent jobs to spawn while running `revng mass-testing run`
2024-10-31 08:58:59 +01:00
Giacomo Vercesi 3fe3a8524a Implement mass testing
Add the `revng mass-testing` commands and auxiliary executables which
simplify running revng on a huge quantity of input executables.
2024-10-01 13:38:21 +02:00