Alessandro Di Federico
8cd4ee3b59
Move Kinds.h to revng
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
98903f6b07
Move Ranks.h to revng
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
f544a39195
Move STLExtras.h to revng
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
2e4f4d09b9
Remaining FunctionTags have been moved to revng
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
e239e18b0c
Adopt FunctionPoolTag
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
800340d6e8
IRHelpers.cpp has been moved to revng
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
2ed940dc3a
FunctionTags have been moved to revng
2024-11-04 15:09:56 +01:00
Alessandro Di Federico
fdd0d6d06c
CMakeLists.txt: reduce revng differences
2024-11-04 15:09:56 +01:00
Lauri Vasama
2d2fe890fb
Add Clift expression operations
2024-10-31 08:41:25 +01:00
Lauri Vasama
4338607257
Add Clift operand type parser
2024-10-31 08:41:25 +01:00
Lauri Vasama
eb20e745a3
Add Clift op type constraints
2024-10-31 08:41:25 +01:00
Lauri Vasama
ecf4869473
Move CliftTypeHelpers.h functions to CliftType.h
...
Also added some new type functions.
2024-10-31 08:41:25 +01:00
Lauri Vasama
ac013efb1d
Improve Clift op constraint formatting
2024-10-31 08:41:25 +01:00
Lauri Vasama
3e0b0d3fd7
Add Clift_ExpressionOp class
2024-10-31 08:41:25 +01:00
Lauri Vasama
26adce6182
Add isLvalueExpression on ExpressionOpInterface
2024-10-31 08:41:25 +01:00
Lauri Vasama
9479086bc4
Improve CliftTypes.td formatting
2024-10-31 08:41:25 +01:00
Lauri Vasama
e1b55fd5c3
Add custom assembly format for Clift FunctionOp
2024-10-31 08:41:25 +01:00
Lauri Vasama
2350f91c48
Use symbol attribute for GlobalVariableOp
2024-10-31 08:41:25 +01:00
Lauri Vasama
596244a5a2
Add NoTerminator trait to Clift_Op
2024-10-31 08:41:25 +01:00
Lauri Vasama
5385ea7e7f
Add result for LocalVariableOp
2024-10-31 08:41:25 +01:00
Lauri Vasama
8dc04776a6
Add Clift_StatementOp class
2024-10-31 08:41:25 +01:00
Lauri Vasama
8e6adb5268
Add addConst and removeConst for ValueType
2024-10-31 08:41:25 +01:00
Lauri Vasama
8a613dc9f0
Remove Clift ArrayType const
...
Use the qualification of the element type instead.
2024-10-31 08:41:25 +01:00
Lauri Vasama
b8f0e7d99b
Add missing const qualifiers in DefinedType
2024-10-31 08:41:25 +01:00
Lauri Vasama
c29a71a0d9
Add colon in clift.undef assembly format
2024-10-31 08:41:25 +01:00
Ivan Krysak
63a3c9cec0
PTML: move location creation to the type builder
2024-10-15 10:45:13 +03:00
Ivan Krysak
94d860e2b2
Clean up builder configuration
...
This also re-enables stack inlining by default.
2024-10-15 10:45:13 +03:00
Ivan Krysak
1a35cbcb77
Introduce PTMLCTypeBuilder
2024-10-15 10:45:13 +03:00
Ivan Krysak
f523edc863
Pipeline: toString -> locationString
2024-10-15 09:13:28 +02:00
Ivan Krysak
8aa7b55e2d
PTMLIndentedOstream: rename into IndentedOstream
2024-10-15 09:13:28 +02:00
Ivan Krysak
8288bd68d2
PTMLCBuilder: rename into ptml::CBuilder
2024-10-15 09:13:28 +02:00
Ivan Krysak
0e13b20730
PTMLBuilder: rename into ptml::MarkupBuilder
2024-10-15 09:13:28 +02:00
Ivan Krysak
8dbbbd3552
Minor Improvements
2024-10-15 09:13:28 +02:00
Alessandro Di Federico
19d033958e
Drop TargetListContainer
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
5d0d4005c5
s/Ctxt?/Context/g
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
8a5ae5f9c1
s/ExecutionContext &Ctx/ExecutionContext &EC/g
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
8706fd8459
Initialize pointers to nullptr
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
9c99ac33ac
s/serializeToLLVMString/toLLVMString/
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
08e1dc0f05
Drop no-op Pipe::checkPrecondition
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
4653796008
Drop Pipe::print
2024-09-27 10:35:10 +02:00
Alessandro Di Federico
ca99bbbb66
Adopt toString()
2024-09-26 17:51:08 +02:00
Alessandro Di Federico
e1f46264f8
Ensure every pipe commits what it should
2024-09-26 17:51:07 +02:00
Alessandro Di Federico
835a00d80c
Minor changes
2024-09-25 10:00:22 +02:00
Andrea Gussoni
5849deee50
Remove CycleEquivalenceInfo
2024-09-20 21:06:46 +02:00
Andrea Gussoni
76cb852c28
Implement GenericRegionInfo
...
We implement the `GenericRegionInfo` analysis.
The analysis accepts a template parameter which enables to run it on
every graph which exposes `llvm::GraphTraits`.
The `GenericRegionPass` is responsible for instantiating and running the
analysis on a `llvm::Function`.
The `GenericRegionInfo` analysis uses, and takes insipiration from the
`GenericCycleInfo` LLVM analysis.
The analysis exposes a tree of well nested `GenericRegion`s, which are
constructed starting from the well nested tree of `GenericCycle`s.
In addition, we perform the election of the `Head` of each
`GenericRegion`, and the election of the retreating edges.
2024-09-19 18:11:19 +02:00
Ivan Krysak
77c8e4b927
PTML: move annotation data to a new header
2024-09-04 16:43:57 +02:00
Ivan Krysak
7b00b85647
PTMLCBuilder: introduce a code tag annotation
2024-09-04 13:04:44 +03:00
Ivan Krysak
2c9c780a3d
PTMLCBuilder: introduce a _SIZE annotation
2024-09-04 13:04:44 +03:00
Ivan Krysak
4a080cae0c
PTMLCBuilder: introduce a _START_AT annotation
2024-09-04 13:04:44 +03:00
Ivan Krysak
cae04be8fd
PTMLCBuilder: clean up annotation method naming
2024-09-04 13:04:44 +03:00