Massimo Fioravanti
|
370b081c0e
|
Moved kinds to kinds namespace
|
2022-08-25 17:09:15 +02:00 |
|
Alessandro Di Federico
|
1d91ed9beb
|
tuple_tree_generator: make C++ just a regular backend
The `tuple_tree_generator` component was still heavily treating C++ as a
special citizen.
This commit normalizes the situation.
|
2022-08-11 16:20:42 +02:00 |
|
Massimo Fioravanti
|
5894867786
|
revng-pipeline: s/-p/--resume/
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
d250d43ee4
|
revng-pipeline: factor out common CLI options
Common CLI options that were used by multiple tools and have now been
isolated into a single include file to be used before declaring main.
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
261a114d6d
|
Pipeline: corner-case fix in backward deduction
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
b49062b2d6
|
revng-pipeline: introduce --produce-all-single
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
4cd5abe2b0
|
revng-pipeline: introduce --produce and --analyze
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
9c13f8dbdd
|
Introduce revng-artifact
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
96bd5835d8
|
revng-pipeline: rework file-to-container syntax
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
85a9c9637f
|
revng-pipeline: rework logging
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
aa36cb7127
|
LLVMContainer: deduplicate linkage-related code
|
2022-08-10 09:49:24 +02:00 |
|
Massimo Fioravanti
|
14d71289fc
|
Minor changes
|
2022-08-10 09:49:16 +02:00 |
|
Pietro Fezzardi
|
c1641afeb6
|
Add LayoutTypeSystem::createArtificialLayoutTypes
This helper allows creating many artifical types at once.
|
2022-08-09 08:02:10 +02:00 |
|
Pietro Fezzardi
|
f8bc4a2e77
|
Move isCallToIsolatedFunction to FunctionTags.h
|
2022-08-09 08:02:10 +02:00 |
|
Pietro Fezzardi
|
e920ef040d
|
Switch to dyn_cast_or_null in isCallToTagged
This allows to call the function passing null pointers without crashes.
|
2022-08-09 08:02:10 +02:00 |
|
Alessandro Di Federico
|
b2a0c62618
|
RegionCFG: rename functions to avoid conflicts
|
2022-08-08 16:22:14 +02:00 |
|
Alessandro Di Federico
|
6a6cd939db
|
Rework EarlyFunctionAnalysis
|
2022-08-08 13:55:34 +02:00 |
|
Alessandro Di Federico
|
a844589739
|
ProgramCounterHandler: align PC address
ProgramCounterHandler now emits code masked with an alignment mask to
ease the job of various analyses.
|
2022-08-08 13:55:26 +02:00 |
|
Alessandro Di Federico
|
cf9a0bc3fc
|
getPrototype: don't fail on indirect calls
|
2022-08-08 13:55:26 +02:00 |
|
Alessandro Di Federico
|
562bb9959d
|
Reimplement GCBI::getBlocksGeneratedByPC
GCBI::getBlocksGeneratedByPC has been reimplemented using recursive
coroutines. Caching dominator trees was very error-prone.
|
2022-08-08 13:55:26 +02:00 |
|
Alessandro Di Federico
|
ff8ca0aaff
|
AVI: relax allowed operations on symbol
It is now legal to `and` and `bswap` the address of a symbol.
|
2022-08-08 13:55:26 +02:00 |
|
Alessandro Di Federico
|
4d69437548
|
Split moveBlocksInto off moveToNewFunctionType
|
2022-08-08 13:55:25 +02:00 |
|
Alessandro Di Federico
|
40f672ead9
|
EFA debug passes: raw_{fd_,}ostream
|
2022-08-08 13:55:25 +02:00 |
|
Alessandro Di Federico
|
b07d134b73
|
Introduce CanonicalRegisterValues in the model
These canonical values ease certain analysis that can assume their value
at function entry.
|
2022-08-08 13:55:25 +02:00 |
|
Alessandro Di Federico
|
6d0fd9ada5
|
Make abi::FunctionType::Layout::Layout() public
|
2022-08-08 13:55:25 +02:00 |
|
Alessandro Di Federico
|
bdfcbdd8d9
|
Implement std::set intersection
|
2022-08-08 13:55:23 +02:00 |
|
Alessandro Di Federico
|
2088a65fa0
|
Implement SuccessorsList::operator==
|
2022-08-08 13:54:41 +02:00 |
|
Alessandro Di Federico
|
c4ca2e5d14
|
Introduce MetaAddress::isIn
|
2022-08-08 13:54:41 +02:00 |
|
Alessandro Di Federico
|
c2f16b0907
|
Minor changes
|
2022-08-08 13:54:40 +02:00 |
|
Ivan Krysak
|
7b7c4c25b9
|
Standardize the pipe names to use CamelCase
|
2022-08-05 21:46:46 +03:00 |
|
Ivan Krysak
|
dff7c5f37d
|
Move yield pipes into revngYield
|
2022-08-05 21:46:28 +03:00 |
|
Massimo Fioravanti
|
c97187fd0e
|
Add cross relations role
|
2022-08-05 21:45:19 +03:00 |
|
Ivan Krysak
|
191fc99c1c
|
Add a pipe for call-graph processing
|
2022-08-05 20:45:16 +02:00 |
|
Ivan Krysak
|
8f4590bf00
|
Outline the cross-relation interface
|
2022-08-05 21:42:58 +03:00 |
|
Ivan Krysak
|
fe04a13a5b
|
Introduce basic location support
|
2022-08-05 20:42:41 +02:00 |
|
Ivan Krysak
|
1ac6d6ea0d
|
Introduce constexpr string splitter
|
2022-08-05 21:02:29 +03:00 |
|
Ivan Krysak
|
1b0fb2adfc
|
Introduce constexpr repeat helpers
|
2022-08-05 20:59:02 +03:00 |
|
Ivan Krysak
|
792da8151e
|
Redesign the rank definition process
|
2022-08-05 19:58:57 +02:00 |
|
Ivan Krysak
|
44fbe3e18b
|
Rename abi::IsTrait into abi::TraitLike
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
65d1a016d4
|
Standardize concept naming across the codebase
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
4ee2835d52
|
Fix a trait inheritance problem
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
409486609c
|
Add EqualityComparable concept
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
240f334d78
|
Fix minor wording issues
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
9610051df9
|
Fix yaml traits to correctly [de]serialize scalars
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
de99de78ae
|
Add key overloads for model::getTypePath
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
165964bde1
|
Add a ConstexprString container to ADT
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
8305e020b0
|
Move ranks into their own namespace
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
c21d8398e6
|
Move ranks into a separate header
|
2022-08-05 17:27:56 +03:00 |
|
Ivan Krysak
|
2e83058e83
|
Update rank naming convention
|
2022-08-05 13:55:24 +02:00 |
|
Djordje Todorovic
|
1243d1061c
|
Introduce revng model hard-purge
In addition, introduce a new model Pass:
revng model opt -prune-unsused-types
|
2022-07-28 15:02:55 +02:00 |
|