Djordje Todorovic
2abd250ae0
model: Skip nameless dyn functions in PE
2022-08-31 18:07:47 +02:00
Pietro Fezzardi
28346484f5
Merge branch feature/pipeline-analysis-args
2022-08-31 17:56:48 +02:00
Alessandro Di Federico
cd7429d100
pipes::Lift: fail if Architecture is Invalid
2022-08-29 15:13:25 +02:00
Massimo Fioravanti
9ce7b1e527
Drop Pipe suffix from pipe names
2022-08-29 14:45:45 +02:00
Massimo Fioravanti
633f49c1ef
Introduce dedicated namespace for kinds and ranks
2022-08-29 14:44:53 +02:00
Massimo Fioravanti
915c083661
Pipes: reorganize who defines pipes
2022-08-29 14:44:35 +02:00
Massimo Fioravanti
a8a8eda9ac
Pipeline/Invokable.h: split
2022-08-29 14:44:20 +02:00
Massimo Fioravanti
2a996ef666
Pipeline: allow analyses to fail
2022-08-29 14:44:10 +02:00
Massimo Fioravanti
7e75a1a4b8
Pipeline: introduce preconditions for pipes
2022-08-29 14:44:02 +02:00
Massimo Fioravanti
6b099c57e8
Pipeline: introduce options for analyses
2022-08-29 14:43:25 +02:00
Alessandro Di Federico
c6c66e70f4
revng.cfg-svg: use one-per-architecture
2022-08-26 18:12:23 +02:00
Alessandro Di Federico
b4c5d3d37e
Merge branch 'feature/import-binary-as-analysis'
2022-08-26 10:42:09 +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
Alessandro Di Federico
f00a86d491
manager.py: check manager.produce_targets success
2022-08-26 09:50:42 +02:00
Alessandro Di Federico
d81fc9a5f6
getAcceptedKinds: introduce new assertion
2022-08-26 09:50:42 +02:00
Giacomo Vercesi
2ce7b216e8
GraphQL: drop step name conversion
2022-08-26 09:50:42 +02:00
Giacomo Vercesi
f281b5930b
revng.daemon: rework schema_generator.py
...
Rework both classes in schema_generator.py, main changes:
* Drop manager.pipeline_artifact_structure as it was used exclusively
by SchemaGenerator and is no longer needed
* Rename SchemaGen and BindableGen to SchemaGenerator and
DynamicBindableGenerator to better express their role, add
docstrings that explain what they do
* Decouple Artifacts and Analyses discovery, since a step can have
analyses and no artifacts (and vice-versa)
2022-08-26 09:50:37 +02:00
Massimo Fioravanti
14d4d4e11a
Rename pipes contained in namespace pipes
2022-08-25 18:17:46 +02:00
Massimo Fioravanti
370b081c0e
Moved kinds to kinds namespace
2022-08-25 17:09:15 +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
Alessandro Di Federico
ebc9a41044
CMake: fix regeneration of TypeScript code
...
In `add_custom_command` is one of the entries of `DEPENDS` is not a file
(i.e., it's a custom command), the dependency is only an ordering
dependency. This means that the command is not actually re-run when its
dependencies are invalidated.
2022-08-11 11:16:04 +02:00
Alessandro Di Federico
033aca5d9d
Merge branch 'feature/pipeline-cl-reworking'
2022-08-10 09:49:53 +02:00
Massimo Fioravanti
55b2e42139
revng-pipeline: introduce --apply-model-diff
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
bf39373f87
revng-invalidate: drop superfluous dependency
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
42b623db06
Pipeline: rework CLI organization
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
5894867786
revng-pipeline: s/-p/--resume/
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
d250d43ee4
revng-pipeline: factor out common CLI options
...
Common CLI options that were used by multiple tools and have now been
isolated into a single include file to be used before declaring main.
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
261a114d6d
Pipeline: corner-case fix in backward deduction
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
b49062b2d6
revng-pipeline: introduce --produce-all-single
2022-08-10 09:49:24 +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
9c13f8dbdd
Introduce revng-artifact
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
Massimo Fioravanti
85a9c9637f
revng-pipeline: rework logging
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
aa36cb7127
LLVMContainer: deduplicate linkage-related code
2022-08-10 09:49:24 +02:00
Massimo Fioravanti
84d6c2a4a8
revng-pipeline: drop redundant Logger
2022-08-10 09:49:24 +02:00
Giacomo Vercesi
e23d238e85
revng.cli: explicitly initialize Commands
...
Commands now require a `setup` function, where the will register the
command instance manually
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
14d71289fc
Minor changes
2022-08-10 09:49:16 +02:00
Pietro Fezzardi
30f43fed35
Merge branch feature/pipeline-cl-reworking
2022-08-09 12:26:37 +02:00
Massimo Fioravanti
4abc358815
Add pipes required early outs on empty inputs
2022-08-09 12:26:01 +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
Pietro Fezzardi
ff563204d5
Merge branch feature/rework-efa
2022-08-09 09:38:59 +02:00
Alessandro Di Federico
62a77fcdda
Merge branch 'feature/rework-efa'
2022-08-09 08:52:16 +02:00
Pietro Fezzardi
a60fa30d5b
DLA/Frontend: handle indirect calls prototypes
2022-08-09 08:02:10 +02:00