Giacomo Vercesi
281484ad79
Add initial-auto-analysis list to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
e35f5750de
Add ConvertFunctionsToCABI analysis to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
9e8e4cdf85
Add AnalyzeDataLayout analysis to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
5a6efb0fa2
Add DetectStackSize analysis to pypeline
2025-12-10 15:05:53 +01:00
Giacomo Vercesi
c1217dcfc3
Add DetectABI analysis to pypeline
2025-12-10 15:05:53 +01:00
Giacomo Vercesi
405733369b
Add ImportWellKnownModelsAnalysis to pypeline
2025-12-10 15:05:53 +01:00
Giacomo Vercesi
47038d46ec
Add ParseBinaryAnalysis to pypeline
2025-12-10 15:05:53 +01:00
Giacomo Vercesi
4086469dc1
Add make-segment-ref to pypeline
2025-12-10 15:05:53 +01:00
Giacomo Vercesi
d664a59827
Add detect-stack-size to pypeline
2025-12-10 15:05:53 +01:00
Giacomo Vercesi
35ef98e83f
LLVMPipe: make passes key lowercase
...
Since the rest of the pypeline yaml file is lowercase, convert the
`Passes` key of the configuration used by `pure-llvm-passes-*` to
lowercase.
2025-12-10 15:05:53 +01:00
Alessandro Di Federico
bce32d9669
Default to --emit-hex-constant-literals-from=4096
2025-11-28 11:21:18 +01:00
Giacomo Vercesi
b1b5778822
Add infrastructure for custom invalidation
...
Add infrastructure to pypeline to allow for pipes to provide custom
invalidation, by implementing an `invalidate` function.
2025-11-26 16:13:28 +01:00
Giacomo Vercesi
8cff10e13b
Introduce analyses that manipulate the model
...
Add 4 analyses to the pipebox that allow setting and verifying the model
and its diffs.
2025-11-26 16:13:28 +01:00
Giacomo Vercesi
2f7a055121
pypeline: convert pipe names to kebab-case
2025-11-26 16:13:28 +01:00
Giacomo Vercesi
4a1edec018
get_registry: use name for selected classes
...
Use the `name` class attribute to build the registry when discovering
subclasses of `Pipe`, `Analysis` and `Container`.
2025-11-26 14:59:43 +01:00
Tommaso Fontana
9f5ca81401
Pypeline: introduce analysis lists
...
Now in the pipeline.yml you can specify lists of analysis that are run
sequentially.
2025-11-24 16:41:15 +01:00
Giacomo Vercesi
ca3c5113d9
Add recompile-isolated to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
8f5e7feb4f
Add recompile savepoint to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
159ca6b965
Add LinkForTranslation to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
af4b447f89
Add CompileRootModule to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
7462c2daeb
Add LinkSupport to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
d5aeb306f6
Add YieldAssembly to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
a834f874c9
Add ProcessAssembly to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
080c5017f1
Add HexDump to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
b77833d2bf
Add enforce-abi savepoint to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
77f925c792
Add PromoteCSVs to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
a685cd1055
Add EnforceABI to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
9f46ddac6b
Add isolate savepoint to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
0758a95110
Add AttachDebugInfo to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
0df05f97b7
Add Isolate to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
819538a5df
Add CollectCFG to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
cf52901d6d
Add GenerateModelTypeDefinition to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
ddb36fc70f
Add ModelToHeader to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
fe9dda7a13
Add lifted savepoint to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
95365c1fb9
Add PureLLVMPasses{Root,}Pipe to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
97b471c888
Add Lift to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
25d3541864
Add ImportFiles to pypeline
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
3a5b5de96b
ImportFiles: fix returned dependencies
...
Also return a dependency on the `/Binaries` vector, so that if an
element is added it also invalidates.
2025-11-18 17:47:54 +01:00
Giacomo Vercesi
1c07656448
pipebox.py: add initialize function
...
Add the `initialize` function to `pipebox.py`. This allows passing
command-line arguments to the pipebox.
2025-11-17 10:04:13 +01:00
Giacomo Vercesi
d90f6ff0f5
revng2: use cache_directory from support
2025-11-17 10:04:12 +01:00
Tommaso Fontana
8ae70d85d4
Pypeline: replace logging with custom log
...
Now the pype command has a `--verbose` argument that to enable debug
logging in the pypelien code.
Adapted the codebase to use this new logging format but replacing
`logging` with `revng.pypeline.utils.logger`, this is done in
preparation of debug-log.
2025-11-11 17:15:28 +01:00
Tommaso Fontana
036411b441
Pypeline: add pipebox initialize and -- args
...
The pipebox now has to have an initialize function that is called with
all arguments passed to the CLI after --.
2025-11-11 17:15:28 +01:00
Tommaso Fontana
639593164a
Pypeline: add autocomplete and refactor CLI
...
Now pype has an `autocomplete` command usable to enable autocompletion
and revng2 now is based on `pype`, modifying its defalults and
injecting new commands.
2025-11-11 17:15:27 +01:00
Alessandro Di Federico
fd216ef374
daemon: improve logging
2025-10-28 11:43:22 +01:00
Giacomo Vercesi
6abba05d7e
Introduce ImportFiles pipe
...
Introduce the `ImportFiles` pipe which leverages the newly-introduced
`FileStorage` to fetch the required files and store them in the
`BinariesContainer`.
2025-10-16 17:48:45 +02:00
Giacomo Vercesi
145bd01279
generate-migrations: remove __init__
...
Remove the `__init__` function from the template used by the
`revng generate-migrations` command, so far it hasn't been used.
2025-10-16 16:08:05 +02:00
Giacomo Vercesi
6bdc3c9179
fetch-debuginfo: fix parsing of PDB filename
...
The PDB filename is up to the first `\x00`, everything else after should
be discarded.
2025-10-15 11:58:11 +02:00
Ivan Krysak
00ea93c99e
TTG: move metaschema.yml to share/revng/
2025-10-13 18:33:10 +03:00
Ivan Krysak
04fdc2028a
migrations: do not duplicate the template
2025-10-13 18:33:10 +03:00
Ivan Krysak
e56f543b1a
Split module.bc.zstd
2025-10-13 10:26:41 +03:00