Commit Graph

78 Commits

Author SHA1 Message Date
Alessandro Di Federico 3dee046e09 tmp 2023-01-05 17:49:43 +01:00
Alessandro Di Federico 9b79518770 Drop PrimitiveType.h 2023-01-05 17:49:42 +01:00
Djordje Todorovic 809ea798a6 Introduce revng import debug-info
It supports both PDB and DWARF formats.
We get rid of `import dwarf` tool.
2022-12-13 11:25:46 +01:00
Alessandro Di Federico bffbd58434 tuple_tree_generator: generate one .cpp only 2022-12-09 09:07:06 +01:00
Alessandro Di Federico 58c6e095b6 TTG CMake: one target, many schemas
This commit ensures that `target_tuple_tree_generator` can handle being
invoke multiple times on the same target.
This avoids the need to create a dedicated library as a workaround.
2022-12-09 09:05:14 +01:00
Alessandro Di Federico 821f3b169a abi/test.sh: fix shellcheck warning 2022-12-09 09:02:29 +01:00
Alessandro Di Federico 0ed1c6f9ee daemon-self-test: disable testing
Running `revng daemon-self-test` runs steps and analyses that are part
of downstream projects, leading to unexpected and unstable results.
We can still run this downstream.
We can re-enable this once we can run it on a specific step and with a
custom set of analyses.
2022-11-30 15:06:54 +01:00
Alessandro Di Federico 9470e2582b abi/test.sh: use temporary directory 2022-11-30 15:06:54 +01:00
Alessandro Di Federico 036963b0b7 Rework tests 2022-11-30 15:06:54 +01:00
Alessandro Di Federico 762cc63d96 CollectCFG: purge addresses from test ground truth 2022-11-30 15:06:54 +01:00
Alessandro Di Federico 085f44b0ad tests: adopt temp 2022-11-30 15:06:54 +01:00
Alessandro Di Federico 009c0c2434 flake8: disable R505 (else after return statement) 2022-11-22 15:10:52 +01:00
Giacomo Vercesi f7ec377aa4 mktemp: use --tmpdir
Without the --tmpdir argument the current directory is used to generate
the temporary file
2022-10-24 09:58:55 +02:00
Alessandro Di Federico 368f27b876 yields test: use one-per-architecture 2022-10-22 00:42:53 +02:00
Massimo Fioravanti d55aa9b9e6 Pipeline: remove * from targets
Now * is just a pipeline frontend shorthand.
2022-10-20 14:20:12 +02:00
Alessandro Di Federico 8aa2c2ac44 daemon/test.py: do not use memfd 2022-10-11 19:08:10 +02:00
Alessandro Di Federico 12191a8d01 daemon/test.py: use log function 2022-10-11 19:08:10 +02:00
Alessandro Di Federico 6fae9fc1c5 Stop checking Python requirements 2022-10-11 19:08:10 +02:00
Giacomo Vercesi ff48b9de75 Introduce revng daemon-self-test
This new command will, given an executable, try to produce all
artifacts. By default it will run `revng daemon`, however an external
address can be provided to test remote daemons, e.g. running inside a
container.
2022-10-06 15:12:36 +02:00
Giacomo Vercesi e5963395dc Drop requests in favor of aiohttp
Drop the use of requests in the daemon tests, use aiohttp instead as
it allows the use of unix sockets, which simplifies the creation of
multiple ephimeral daemons
2022-10-04 14:20:03 +02:00
Giacomo Vercesi 5d02e7258f revng.daemon test: fail if daemon exit code != 0 2022-10-04 14:13:56 +02:00
Giacomo Vercesi bf4122ed0a Introduce v2 of revng-check-conventions 2022-09-29 15:21:59 +02:00
Alessandro Di Federico f6d5cd24dd Give pretty names to temporary files 2022-09-26 18:09:01 +02:00
Ivan Krysak f0afb1066b Yield: rework testing and add call graph tests 2022-09-26 12:11:13 +02:00
Ivan Krysak bb37d48dad Yield: introduce YieldCallGraphSlicePipe 2022-09-26 12:09:28 +02:00
Ivan Krysak ed8279fe08 Pipes: introduce a call graph emitting pipe 2022-09-26 10:33:43 +02:00
Alessandro Di Federico 7935af70a4 revng_add_executable_internal: force -pie
clang does not do -pie by default.
2022-09-22 17:43:55 +02:00
Alessandro Di Federico 85d574b305 test-abi: various fixes 2022-09-21 18:39:28 +02:00
Djordje Todorovic 2e5a6dc167 model: add tests for import-idb 2022-09-21 18:39:22 +02:00
Alessandro Di Federico 137fad57e9 revng-daemon tests: increase verbosity 2022-09-08 09:44:41 +02:00
Ivan Krysak 4c08f2153d install_pattern: do not use git ls-files 2022-08-31 19:42:35 +02:00
Alessandro Di Federico c6c66e70f4 revng.cfg-svg: use one-per-architecture 2022-08-26 18:12:23 +02:00
Alessandro Di Federico ef3d24eb08 test.py: get ephemeral port, drop psutil 2022-08-26 09:50:42 +02:00
Alessandro Di Federico 73ae7c89b4 test.py: run preliminary analyses 2022-08-26 09:50:42 +02:00
Alessandro Di Federico 178b58b9d5 ImportBinary: turn into an analysis 2022-08-26 09:50:42 +02:00
Alessandro Di Federico 38d91a793b AddPrimitiveTypes: turn into an analysis 2022-08-26 09:50:42 +02:00
Giacomo Vercesi 2ce7b216e8 GraphQL: drop step name conversion 2022-08-26 09:50:42 +02:00
Alessandro Di Federico 1d91ed9beb tuple_tree_generator: make C++ just a regular backend
The `tuple_tree_generator` component was still heavily treating C++ as a
special citizen.
This commit normalizes the situation.
2022-08-11 16:20:42 +02:00
Massimo Fioravanti 0bb115a4f3 revng-pipeline: rework syntax for targets
Was: step:container:p/a/t/h:kind
Now: step/container/p/a/t/h:kind
2022-08-10 09:49:24 +02:00
Massimo Fioravanti 4cd5abe2b0 revng-pipeline: introduce --produce and --analyze 2022-08-10 09:49:24 +02:00
Massimo Fioravanti 96bd5835d8 revng-pipeline: rework file-to-container syntax 2022-08-10 09:49:24 +02:00
Alessandro Di Federico 74eab89e35 CMake: unset GIT_DIR before git ls-files 2022-08-10 09:49:20 +02:00
Alessandro Di Federico 1cf9a06009 EnforceABI: use read-only model 2022-08-08 13:55:36 +02:00
Alessandro Di Federico fab6b4133b Tests for ARM, i386, x86-64 and MIPS dynamic calls 2022-08-08 13:55:35 +02:00
Alessandro Di Federico 6a6cd939db Rework EarlyFunctionAnalysis 2022-08-08 13:55:34 +02:00
Ivan Krysak 7b7c4c25b9 Standardize the pipe names to use CamelCase 2022-08-05 21:46:46 +03:00
Massimo Fioravanti c97187fd0e Add cross relations role 2022-08-05 21:45:19 +03:00
Ivan Krysak 191fc99c1c Add a pipe for call-graph processing 2022-08-05 20:45:16 +02:00
Ivan Krysak 792da8151e Redesign the rank definition process 2022-08-05 19:58:57 +02:00
Djordje Todorovic ee686ef158 import-pe: Add more tests for type system 2022-07-28 15:04:26 +02:00