Giacomo Vercesi
82591a72c9
mass-testing: exclude paths from flamegraph
...
Add a new option to the mass-testing `meta.yml` that allows skipping
some paths when generating the flamegraph. In the case of revng this
allows skipping the intermediate python frames.
2025-12-11 17:25:36 +01:00
Giacomo Vercesi
8af5e1d05c
Implement revng2 quick artifact
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
e3b263d9da
Implement revng2 project init
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
f7231a29da
Add yield-cfg to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
255748228a
Add yield-call-graph-slice to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
83e770551b
Add yield-call-graph to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
0d732f7a72
Add emit-cfg artifact to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
3a387238dc
Add cleanup-ir to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
05dc279ef2
Add emit-c-as-single-file to pypeline
2025-12-10 16:16:14 +01:00
Giacomo Vercesi
0ffce5c5b2
Add emit-c to pypeline
2025-12-10 16:16:14 +01:00
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