Pietro Fezzardi
31da8c5891
Update to new revng ptml cli
2022-09-29 18:38:11 +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
Alessandro Di Federico
f8867f9220
Give pretty names to temporary files
2022-09-26 16:52:41 +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
Giacomo Vercesi
8e996d2394
Output PTML in revng-c
...
Change the output of the backend of revng-c to PTML
2022-09-01 16:59:29 +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
Massimo Fioravanti
36da1ced9f
revng pipeline: handle new syntax for targets
2022-08-09 12:25:56 +02:00
Massimo Fioravanti
bd1a4aab95
revng pipeline: handle new --produce argument
2022-08-09 12:25:56 +02:00
Massimo Fioravanti
5efda4640d
revng pipeline: handle new syntax for outputs
2022-08-09 12:25:56 +02:00
Alessandro Di Federico
c15fae2065
CheckDLA.ll: fix ground truth
...
* `model::Function::Type` no longer exists
* We dropped `IndirectCall` edge type in favor of simply `FunctionCall`
2022-08-08 16:22:14 +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
929bb58e68
Handle float80 type
...
This was needed in order to handle some PDB files.
2022-07-29 09:24:21 +02:00
Djordje Todorovic
ee686ef158
import-pe: Add more tests for type system
2022-07-28 15:04:26 +02:00
Djordje Todorovic
d69020745d
import-pe: Add tests
2022-07-28 15:02:49 +02:00
Giacomo Vercesi
3e9058393e
Rework YieldAssemblyHTML to output PTML
2022-07-28 08:47:34 +02:00
Giacomo Vercesi
930bac9bca
daemon test: filter out environment variables
...
When running `revng daemon` for tests, remove a selection of
environment variables that could negatively impact the correct
execution of the tests.
2022-07-22 14:56:15 +02:00
Antonio Frighetto
cb2df465fa
Recompilation: add type mismatch flags
2022-07-19 13:54:28 +02:00
Antonio Frighetto
d9bc64b29d
Introduce MakeSegmentRefPass
...
A simple pass that scans constant expressions and literals and
replaces them with opaque calls so that they can be easily dealt
with by the Backend, in an attempt of emitting better-looking
decompiled code.
2022-07-19 13:48:50 +02:00
Giacomo Vercesi
80afd71721
Add singleTargetFilename to pipelines
...
A step's artifacts now include singleTargetFilename, which gives a
suggested filename to use when a single element is extracted from the
underlying container.
2022-06-29 14:50:58 +02:00
Giacomo Vercesi
30ef77e6fa
GraphQL: introduce queries to retrieve globals
...
Change the schema to allow introspection of context globals.
2022-06-29 14:50:58 +02:00
Giacomo Vercesi
62e9baeddb
GraphQL: rework schema to be camelCase
...
GraphQL conventions, encourage the use of camelCase for query fields
and PascalCase for types, as detailed here:
https://graphql-rules.com/rules/naming-fields-args
2022-06-29 14:50:58 +02:00
Giacomo Vercesi
ffab18ee48
revng daemon: identify valid port
...
This commit resolves a non-deterministic test failure in `revng daemon`.
When running daemon tests, `randint` was used for selecting the listen
port, this caused test failures when the same port number was used for
reused. This has been replaced with the use of port 0 that guarantees
the use of an unused port and psutil to find the port number once it has
been bound by the daemon process.
2022-06-29 14:50:58 +02:00
Giacomo Vercesi
a741e39f76
revng-check-conventions: introduce prettier
...
Adds the formatting tool prettier to allow formatting JS, TS, JSON,
YAML and HTML files.
2022-06-28 15:29:09 +02:00
Giacomo Vercesi
661821b45c
Add SingleTargetFilename to pipelines
...
Add SingleTargetFilename for pipeline artifacts
2022-06-28 11:26:40 +02:00
Giacomo Vercesi
29d55849c5
Sync formatting changes
...
revng-check-conventions now includes the use of prettier for
formatting yaml files.
2022-06-28 11:25:56 +02:00
Alvise de Faveri
d98db76ce1
IRCanonicalization: Add DuplicateReferences pass
...
This pass adds robustness to the IRCanonicalization pipeline. It
ensures that no reference opcode has more than one use.
2022-06-28 10:30:32 +02:00