Massimo Fioravanti
19b2b23ce7
Dropped the steps in favor of begin steps
2022-03-10 13:51:28 +01:00
Giacomo Vercesi
1e4291a21a
Add 0-length checks
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
8852c73cf9
Add global serialization
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
807d9d56ba
Introduce serialization primitives for containers
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
091376ddfa
Added kind verification
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
8032142c92
Renamed Pass Name to Type in the yml dsl
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
0aaead45ab
Add: Command line explanation of pipes invocation
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
9b7a81f3f2
Drop: pipeline implicit rank 0
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
36b18b9fc5
Fix: loader error message
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
c3b8b76d05
Add multistep invalidation test
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
c0f3e34a6a
Add pipelineC invalidation trigger
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
b12760ccf2
Add invalidate all pipeline manager
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
f53f062e41
TupleTreeDiff<Binary> now compiles
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
ddd80f34ec
Model Invalidation Event
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
37b1dbd6c0
Implement remove on FileContainer
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
c233737216
Fix: 0 elements removal is not a failure
...
ContainerSet is now the one that has the burden to check that removal of
0 elements is always a success, rather than offloading that check onto
containers
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
e7d3d6a211
Fix: llvm container mergeBack
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
de9fb4ae7e
Add CallGraphCache
2022-03-10 13:51:28 +01:00
Massimo Fioravanti
361faa5a80
Factor out yaml generation into a single call
2022-03-10 13:51:28 +01:00
Alessandro Di Federico
d5843e807f
Merge branch 'feature/various-improvements'
2022-03-02 16:11:32 +01:00
Alvise de Faveri
9e326682bc
Check-conventions: handle dirs with 0 python files
2022-03-02 15:40:27 +01:00
Pietro Fezzardi
269d729554
FilteredGraphs: add filter() method
...
The method allows to access the filter function and is useful for
templating.
2022-03-02 15:40:27 +01:00
Alvise de Faveri
0659e6b6a3
Model: Improve getCallSitePrototype() helper
...
1. Hoist the logic to retrieve a model CallEdge from an llvm::CallInst
out of `getCallSitePrototype()`, in a separate `getCallEdge()`
function.
2. Modify `getCallSitePrototype()` so that the parent function's type is
optional.
2022-03-02 15:40:27 +01:00
Alvise de Faveri
ea53846fa0
Add Qualifier::createPointer(Architecture)
2022-03-02 15:40:27 +01:00
Alvise de Faveri
62b5ec38cd
Add CallEdge::isDirect()
2022-03-02 15:40:27 +01:00
Antonio Frighetto
e798131082
O2Pipe: fix pipe name
2022-03-02 15:40:27 +01:00
Massimo Fioravanti
b982b69c5d
revng-model-inject: support model-less modules
...
Inject is meant to inject a model into an `llvm::Module`, but it fails
when operating on a Module that had no model metadata.
This commit fixes the bug.
2022-03-02 15:40:27 +01:00
Alessandro Di Federico
9608b337c6
Python formatting: switch to black 22
2022-03-02 15:40:27 +01:00
Alessandro Di Federico
24e6873d20
Merge branch 'feature/describe-function-type'
2022-02-25 08:21:49 +01:00
Alessandro Di Federico
984aea88ae
Minor changes
2022-02-25 00:32:46 +01:00
Ivan Krysak
bc0e6d1392
ABI: preliminary FinalStackOffset computation
2022-02-25 00:32:24 +01:00
Ivan Krysak
868970c5e7
ABI: specify stack alignment
2022-02-25 00:32:01 +01:00
Ivan Krysak
fca0df8dd2
ABI: specify who's responsible for stack cleanup
2022-02-25 00:31:37 +01:00
Ivan Krysak
2c35fc87d5
Conversion to RawFunctionType cannot fail
2022-02-25 00:31:14 +01:00
Ivan Krysak
11989b316b
Ensure model is untouched RawToCABI
...
It's now guaranteed to leave the model unmodified if the converstion
from `RawFunctionType` to `CABIFunctionType` fails.
2022-02-25 00:30:51 +01:00
Ivan Krysak
d811321538
InvokeIsolatedFunctions: adopt Layout
2022-02-25 00:30:38 +01:00
Ivan Krysak
f30ed88eb5
EnforceABI: adopt FunctionType::Layout
2022-02-25 00:30:27 +01:00
Ivan Krysak
b14fee7515
Implement abi::FunctionType::layout()
...
The `Layout` data structure works as a common view over
`RawFunctionType` and `CABIFunctionType`.
2022-02-25 00:30:14 +01:00
Ivan Krysak
541643afc3
Move function type conversion to librevngABI
2022-02-24 23:56:30 +01:00
Alessandro Di Federico
d193c6435e
Merge branch 'feature/python-model'
2022-02-24 14:18:43 +01:00
Alessandro Di Federico
3f52078950
Use BYPRODUCTS after POST_BUILD copy
2022-02-24 14:18:17 +01:00
Alessandro Di Federico
e7ae70e9a4
Record grandiso as a dependency
2022-02-23 18:03:45 +01:00
Filippo Cremonese
7f7a222410
python-model: handle importing multiple versions
2022-02-23 18:03:36 +01:00
Filippo Cremonese
09a995ba51
python-model: generate from jsonschema
2022-02-23 18:03:35 +01:00
Filippo Cremonese
23c40e3b51
revng: fix imports
...
Add missing log_error include and remove other unused imports.
2022-02-23 18:02:50 +01:00
Filippo Cremonese
6672eb8dbc
Turn Python scripts into modules
2022-02-23 18:02:42 +01:00
Filippo Cremonese
d5e5e16887
Apply and enforce python formatting with black
2022-02-23 18:02:39 +01:00
Filippo Cremonese
1dc7efe2b0
tuple_tree_generator: emit jsonschema
2022-02-23 17:37:03 +01:00
Filippo Cremonese
2877ead7ed
revng-model-to-json: handle SIGINT
2022-02-23 17:36:38 +01:00
Filippo Cremonese
8511cbf40b
tuple_tree_generator: drop tags
...
They were more harmful than beneficial.
2022-02-23 17:36:34 +01:00