Ivan Krysak
3bec80c9ba
PTML: introduce c.macro token type
2026-02-27 18:28:12 +00:00
Pietro Fezzardi
5415f81204
CTokenEmitter: set actions for the macro location
2026-02-27 18:28:12 +00:00
Ivan Krysak
c1f05e4d24
Ranks: introduce the macro location
2026-02-27 18:28:12 +00:00
Pietro Fezzardi
d9816bc69b
Merge branch 'feature/prepare-clift-based-headers'
2026-02-25 14:22:15 +01:00
Ivan Krysak
de4c816147
CTokenEmitter: improve an error message
2026-02-25 14:10:44 +01:00
Ivan Krysak
3a699abdcf
Clift: fix helper misuse
2026-02-25 14:10:44 +01:00
Ivan Krysak
d521651b1e
ImportModelNamesPipe: set helper names too
2026-02-25 14:10:44 +01:00
Ivan Krysak
1a91707a2b
GenericGraph: introduce empty() method
2026-02-25 14:10:44 +01:00
Ivan Krysak
1c56e34350
NameBuilder: introduce isAutomaticName
2026-02-25 14:10:44 +01:00
Ivan Krysak
95650e593d
primitive-types.h: include stdbool.h
2026-02-25 14:10:44 +01:00
Ivan Krysak
1c3d11096d
primitive-types.h: define NULL if absent
2026-02-25 14:10:44 +01:00
Ivan Krysak
ad822abc53
Fix static IR helper object names
2026-02-25 14:10:44 +01:00
Ivan Krysak
14c2b4e5da
Fix unset allowed actions local identifiers
2026-02-25 14:10:44 +01:00
Ivan Krysak
8a6706e7ac
Doxygen: leave a TODO
2026-02-25 14:10:44 +01:00
Ivan Krysak
bdc1dfcc8d
CTokenEmitter: set actions explicitly
2026-02-25 14:10:44 +01:00
Ivan Krysak
7501ef998b
NameBuilder: unconditionally ban some prefixes
2026-02-25 12:47:27 +01:00
Ivan Krysak
1541d4b402
CEmitter: allow argumentless function declarations
2026-02-25 12:47:27 +01:00
Ivan Krysak
532f81edd3
Old Headers: fix a broken comment
2026-02-25 12:47:27 +01:00
Ivan Krysak
4514620e9f
CEmitter: introduce chooseEntityKind helper
2026-02-25 12:47:27 +01:00
Ivan Krysak
83304a14df
Annotations: introduce a way to assert the name
2026-02-25 12:47:27 +01:00
Ivan Krysak
91ed5e33a8
PTML: make enum scope named for consistency sake
2026-02-25 12:47:27 +01:00
Ivan Krysak
5bcccf57d3
CEmitter: rename C field into Tokens
2026-02-25 12:47:27 +01:00
Ivan Krysak
f73bbf7a08
Annotation: expose raw access
...
This allows the existing annotation registry to be reused in a more
convenient nature. Before now, it was only used for *parsing* or,
rather, *verifying* annotations. Now that we can take advantage of
it for emission as well, there's more control it needs to provide
in particular as far as annotation arguments are concerned.
2026-02-25 12:47:27 +01:00
Ivan Krysak
0b2853f624
Extract emitFunctionPrototype helper
2026-02-25 12:47:27 +01:00
Ivan Krysak
69d006382b
Fix revng build with coroutines disabled
2026-02-25 12:47:27 +01:00
Ivan Krysak
f0e00d66ab
Do not use doxygen for TODOs
2026-02-25 12:47:27 +01:00
Ivan Krysak
22fe32afa2
Minor improvements
2026-02-25 12:47:27 +01:00
Ivan Krysak
b5f98fcae9
check-conventions: ban anonymous header namespaces
2026-02-25 12:47:27 +01:00
Ivan Krysak
a1f2853a04
check-conventions: reallow namespace x = a::b
2026-02-25 12:47:15 +01:00
Alessandro Di Federico
cd09b0688b
Merge branch 'feature/pypeline-tracing-2'
2026-02-17 11:06:16 +01:00
Giacomo Vercesi
5ed18e65b7
docs: drop use of orc shell
2026-02-16 14:01:04 +01:00
Giacomo Vercesi
728ee2bb96
Add end-to-end test for --debug
2026-02-16 12:17:56 +01:00
Giacomo Vercesi
cdfe858840
clift NameImporter: handle empty FunctionOps
...
Handle the case where a clift `FunctionOp` is present but has no body in
`NameImporter`.
2026-02-16 12:17:56 +01:00
Lauri Vasama
43c0c8435b
Fix Clift UnionAttr mutation
2026-02-16 10:34:39 +01:00
Giacomo Vercesi
e14d1cee6f
Add native runner tests
2026-02-16 10:34:39 +01:00
Giacomo Vercesi
df4f8b76ac
pypeline: re-organize tests
...
Split the tests into two subdirectories: those that work in pure python
and those that use the C++ bindings.
2026-02-16 10:34:39 +01:00
Giacomo Vercesi
f1878f1194
pypeline: drop TraceRunner
...
Drop the `pypeline-trace-run` executable, as its purposed has been
superseded by the combination of `--debug` and native pipe/analysis
runners.
2026-02-16 10:34:39 +01:00
Giacomo Vercesi
a94c6a2636
pipebox: use native runners
...
When running in debug mode, use the native runners where possible.
2026-02-16 10:34:38 +01:00
Giacomo Vercesi
25ba3115c4
pypeline: implement native run-{pipe,analysis}
...
Implement C++-only command-line executables that allow running a single
pipe/analysis without the involvement of python.
2026-02-16 10:34:38 +01:00
Giacomo Vercesi
6b40322a3c
revng2: implement wrappers
...
Implement wrappers in the `revng2` CLI, this allows running command with
e.g. `--gdb` to allow debugging.
2026-02-16 10:34:38 +01:00
Giacomo Vercesi
27f419c8cd
Fix and ban namespace clobbering
...
Fix an instance where the `std` namespace got clobbered into the global
namespace by accident.
2026-02-16 10:34:38 +01:00
Giacomo Vercesi
f9ac4db8ba
Remove use of PIE compiler options
...
The position-indipendence of the code is set by the build environment.
2026-02-16 10:34:38 +01:00
Alessandro Di Federico
dc74fc4c25
Merge branch 'feature/clift-variables-and-comments'
2026-02-13 16:46:24 +01:00
Lauri Vasama
d37d32e4b2
Add Clift function type to-do
2026-02-13 08:41:39 +02:00
Lauri Vasama
b8348f17b2
Overhaul Clifter structure
...
Split function specific state into a separate FunctionClifter class with
limited lifetime.
2026-02-13 08:41:39 +02:00
Lauri Vasama
07fbf344c2
Implement Clift PTML instruction tag emission
2026-02-13 08:41:39 +02:00
Lauri Vasama
57c49e4302
Implement Clift statement comment import
2026-02-13 08:41:39 +02:00
Lauri Vasama
db8fd8de39
Avoid sanitizing identifiers in Clift name import
2026-02-13 08:41:39 +02:00
Lauri Vasama
46e8b64bb9
Implement Clift backend statement comment emission
2026-02-13 08:41:39 +02:00
Lauri Vasama
60e1684127
Generalize CommentPlacementHelper
2026-02-13 08:41:39 +02:00