Ivan Krysak
b656381ec5
Update ptml documentation
...
This also reorders definitions in `revng/Pipes/Ranks.h` to match
the order used by the docs.
2025-07-23 11:38:53 +02:00
Ivan Krysak
461c49df25
Model: bump version to 5 and introduce migration
2025-07-23 11:38:52 +02:00
Giacomo Vercesi
29d7f2d8a8
artifacts: allow parsing the recompilable archive
...
Allow the artifacts machinery to parse, via `pycparser`, the
recompilable archive provided by revng via the
`emit-recompilable-archive` artifact.
2025-07-18 09:30:56 +02:00
Giacomo Vercesi
460ffbf965
project: move some methods to Binary
...
Move some methods from the `Project` class to `model.Binary`.
2025-07-18 09:30:55 +02:00
Alessandro Di Federico
4378576eed
Python scripting: get_example_binary{,_path}
2025-07-18 09:29:09 +02:00
Lauri Vasama
e9b18d448b
Add Clift emit-c pipe and end-to-end tests
2025-07-17 16:45:03 +02:00
Lauri Vasama
9d39020034
Add LLVM-to-Clift import pipe
2025-07-17 16:45:03 +02:00
Ivan Krysak
63bf36621c
Docs: update the supported location list
2025-05-08 15:42:01 +02:00
Ivan Krysak
6fd6a0af43
Pipes: add a rank for raw stack arguments
2025-05-08 15:42:00 +02:00
Ivan Krysak
0d868894a2
model::Function: switch to indices as comment keys
2025-05-08 15:42:00 +02:00
Giacomo Vercesi
89b17d2325
Python client: add user manual
2025-05-07 12:04:15 +02:00
Giacomo Vercesi
591107cdce
Overhaul PTML functionality
...
The logic of the `revng ptml` command was too tightly coupled with the
parsing of the xml. Overhaul the structure of the ptml code and split it
in two locations:
* `revng.ptml`: this module contains functions that allow easy
manipulation of PTML, both for printing it and for obtaining the split
metadata/text version.
* `revng.internal.cli._commands.ptml`: this implements the actual `revng
ptml` command. This leverages the new logic in the `revng.ptml` module
while maintaining the same functionality.
2025-05-05 17:28:48 +02:00
Giacomo Vercesi
6f481a3127
docs: fix tip admonition
...
Fix the tip admonition using the `:::` marker which is incorrect. Use
the `!!!` marker which is the correct one.
2025-05-05 16:02:40 +02:00
Khaled Ismaeel
030becfeba
Adapt the build to the new schema version field
...
This is a followup to the commit where we introduced the `version`
field in the schema YAML.
2025-04-30 15:08:45 +02:00
Ivan Krysak
f070f1f1e1
Model: sunset double name system
2025-04-17 11:19:17 +03:00
Ivan Krysak
a93ffd3760
Rename UnusedStackArgumentBytes
...
Old name was `StackBytesAllocatedForRegisterArguments`.
2025-02-12 16:43:19 +02:00
Pietro Fezzardi
1f0c8e1ae5
Pipeline: remove import-clift-types Pipe
...
At the moment this pipe is broken, because it claims to be producing
artifacts with function rank, while it only produces types.
This pipe should be extended and turned into a pipe that generates
the whole Clift module including functions from LLVM IR, and not just
types.
We should add an input LLVMContainer, and the run() method should first
import types, and then create the functions and their bodies.
For the time being the Pipe is removed from the pipeline.
2025-01-29 23:55:49 +01:00
Pietro Fezzardi
9e0f015eb8
Drop old conversion from LLVM to MLIR
...
The previous conversion from LLVM to MLIR was translating plain LLVM IR
to LLVM MLIR Dialect, as a preliminary step for further conversion from
LLVM MLIR Dialect to Clift.
This is not how things are expected to work anymore, so the old code is
now dead and can be removed.
2025-01-29 23:55:49 +01:00
Pietro Fezzardi
186798c2aa
Add initial part of clift-based decompilation
2025-01-29 23:55:49 +01:00
Alessandro Di Federico
dfe0970715
FromUnusedAddressesPass: use simple literals
...
Consider simple literals as candidates for the second run of function
collection.
2025-01-28 15:20:45 +01:00
Alessandro Di Federico
797ad1678b
Document CLI commands
2024-12-11 16:15:43 +01:00
Alessandro Di Federico
620d142d53
Reroganize and expand documentation
2024-12-11 16:15:37 +01:00
Alessandro Di Federico
d2d32b304e
Model: improve documentation
2024-12-11 16:15:09 +01:00
Alessandro Di Federico
686083bdab
Remove mentions to revng-c
2024-11-21 15:54:23 +01:00
Ivan Krysak
a67ba96644
Adopt name builder across the model users
2024-11-06 15:43:13 +02:00
Alessandro Di Federico
bd84bd7f2e
Rework --analyze and --analyses-list
2024-10-31 17:19:51 +01:00
Giacomo Vercesi
8e65716ad8
Use zstd compression in pipeline
...
Use the zstd compression for:
* The `LLVMContainer` when serializing
* The invalidation cache when writing to disk
2024-10-30 21:57:55 +01:00
Alessandro Di Federico
892a0fc62a
working-environment.md: add the Docker option
2024-10-16 10:46:31 +02:00
Ivan Krysak
a3ab8e2415
ABI-docs: add a basic explanation
2024-10-08 13:53:53 +02:00
Ivan Krysak
724f8bfb59
ABI: streamline terminology
...
"packed" is used instead of "unnaturally aligned".
2024-10-08 13:53:53 +02:00
Ivan Krysak
5150fbd8c8
ABI: Limit usage of the StackAlignment option
2024-10-08 13:53:53 +02:00
Ivan Krysak
ce11f37334
abi::Definition: move documentation out
2024-10-08 13:53:53 +02:00
Ivan Krysak
70a39678ff
OperatorPrecedence: introduce forced parentheses
2024-09-05 14:33:12 +03:00
Pietro Fezzardi
a1bc9b10f4
Add emit-recompilable-archive artifact to doc
2024-06-27 22:10:01 +02:00
Alessandro Di Federico
e7c4952377
Add cleanup-ir to docs
2024-06-27 22:10:01 +02:00
Ivan Krysak
cd36ef1963
Update the docs
2024-06-27 11:05:52 +02:00
Ivan Krysak
dfa7478685
Adopt reworked model::Type
2024-06-27 11:05:51 +02:00
Ivan Krysak
ac587cbb4f
Model: rename Type into TypeDefinition
2024-06-27 11:05:48 +02:00
Alessandro Di Federico
bce1d6c0f3
Adopt invalidation along the core pipeline
2024-06-20 10:24:50 +02:00
Djordje Todorovic
6349299806
docs: Add simplify-switch artifact
2024-05-29 16:25:53 +02:00
Lauri Vasama
4636bb736f
Fix MIME types documentation
2024-05-29 15:42:15 +02:00
Alessandro Di Federico
84e3fac538
Minor changes
2024-05-29 12:06:03 +02:00
Alessandro Di Federico
738da4fbb5
Minor changes
2024-05-22 10:25:25 +02:00
Djordje Todorovic
e3f191ff67
doc: Adjust tests because of cast reduction
2024-05-16 17:55:19 +02:00
Giacomo Vercesi
f7b1130dc2
mkdocs: add additional.js
...
Add an empty `additional.js` file which can be used by downstream users
for additional javascript code.
2024-03-26 11:30:14 +01:00
Ivan Krysak
5894201920
Yield: update model-tutorial.md
2024-03-18 17:23:07 +01:00
Ivan Krysak
44e5328477
Yield: add explicit directive support
2024-03-18 11:40:32 +00:00
Ivan Krysak
7403f09b7d
docs: add new asm tokens
2024-03-18 07:20:41 +00:00
Ivan Krysak
aa44fdbe91
docs: fix some typos
2024-03-18 07:20:41 +00:00
Alessandro Di Federico
85abd9b6fc
revng artifact: introduce --analyze
2024-02-29 18:04:35 +01:00