Commit Graph

  • 371f5c4555 Implement ABI-based register state deductions Ivan Krysak 2022-01-19 17:16:10 +02:00
  • 9771ae29d6 Move RegisterState to ABI Ivan Krysak 2022-02-11 11:34:00 +02:00
  • cafe44097b ABI: introduce default function type generation Ivan Krysak 2022-02-04 16:27:41 +02:00
  • 8d876b0def ABI: introduce bulk function conversion Ivan Krysak 2022-02-04 16:25:02 +02:00
  • e20e65ca9a Require a description when registering a pass Ivan Krysak 2022-02-04 12:17:11 +02:00
  • 7369e49eba Implement "best effort" function type convertion Ivan Krysak 2022-01-19 17:15:08 +02:00
  • 5c671e8446 Add abi::Trait specialization for s390x ABI Ivan Krysak 2022-01-19 16:57:16 +02:00
  • 75c00f5112 Add abi::Trait specialization for mips ABI Ivan Krysak 2022-01-19 16:57:10 +02:00
  • c9daab2ce4 Add abi::Trait specializations for arm ABIs Ivan Krysak 2022-02-11 17:39:22 +02:00
  • 4069d547b6 Add abi::Trait specializations for x86 ABIs Ivan Krysak 2022-02-11 17:39:05 +02:00
  • 756d0f7376 Add abi::Trait specializations for x86_64 ABIs Ivan Krysak 2022-02-11 17:38:38 +02:00
  • d30c4c54fb Introduce trait to describe ABIs Ivan Krysak 2022-01-19 16:55:49 +02:00
  • 68129c9221 Add model::Binary::DefaultABI field Ivan Krysak 2022-02-02 16:37:07 +02:00
  • d108f7f049 Extend model::ABI enumeration Ivan Krysak 2022-01-19 16:53:35 +02:00
  • c14567e3d0 Make TupleTree::visitReferences public Ivan Krysak 2022-01-19 17:11:28 +02:00
  • fd3e7243c1 Remove an unused parameter from TupleTree::clone Ivan Krysak 2022-01-24 10:58:41 +02:00
  • ec625e8533 Define architecture-specific register access Ivan Krysak 2022-02-02 09:43:24 +02:00
  • 9b7eb76ac4 Introduce enumSwitch Ivan Krysak 2022-01-19 17:13:31 +02:00
  • a67bc8d1a6 revng-model-diff: return error on mismatch Ivan Krysak 2022-02-11 11:36:54 +02:00
  • bac670a38a monotone_framework_lattice: move generation notice Ivan Krysak 2022-02-11 11:32:42 +02:00
  • 3bb266125c Add always_true and always_false traits Ivan Krysak 2022-02-02 09:42:08 +02:00
  • a21dff02de Add additional registers to the model Ivan Krysak 2022-01-19 16:50:13 +02:00
  • 7151c587f9 Prevent TupleTreeReference::isValid() asserts Ivan Krysak 2022-01-13 18:17:11 +02:00
  • dfeb437b45 Fix a minor convertible_to concept issue Ivan Krysak 2022-01-19 17:09:30 +02:00
  • a38819d8d9 revng-pipeline tests: cleanup temporary files Alessandro Di Federico 2022-02-11 08:26:53 +01:00
  • ec6d4dbe74 Ensure all files end with a newline Alessandro Di Federico 2022-02-09 09:27:02 +01:00
  • 806f076709 Minor changes Alessandro Di Federico 2022-02-11 08:26:10 +01:00
  • 7593d4da23 PromoteCSVs: promote PC CSVs Alvise de Faveri 2022-02-11 09:51:02 +01:00
  • ef1b59158f revng-translate: propagate arguments after -- Massimo Fioravanti 2022-02-10 14:17:37 +01:00
  • f8535a9085 Merge feature/limit-stack-size into develop Pietro Fezzardi 2022-02-11 17:32:30 +01:00
  • 48fcca58ae DetectStackSize: limit stack arguments/frame size Alessandro Di Federico 2022-02-10 18:02:29 +01:00
  • f2fcf93aea Revert "Drop torture tests" Pietro Fezzardi 2022-02-11 16:53:20 +01:00
  • 812b73f2a2 Remove opaquepc() Alvise de Faveri 2022-02-07 11:55:58 +01:00
  • d02a3f3d7d Merge feature/helpers-to-header into develop Pietro Fezzardi 2022-02-10 18:04:51 +01:00
  • e65b313e5e Drop torture tests Pietro Fezzardi 2022-02-10 17:27:40 +01:00
  • 8c14fe180c Add assets/ folder and restructure CMakeLists Alvise de Faveri 2022-02-01 17:22:52 +01:00
  • 1a39994759 Add HelpersToHeader pass Alvise de Faveri 2022-01-10 12:29:03 +01:00
  • 73c743597b Pull out DepGraph and naming from ModelToHeader Alvise de Faveri 2022-01-13 23:35:44 +01:00
  • 9a4da22e8c Move ModelToHeaderMain to a new tools/ folder Alvise de Faveri 2022-01-13 22:43:32 +01:00
  • 70724920bb Move ModelToHeader to HeadersGeneration Alvise de Faveri 2022-01-13 22:32:00 +01:00
  • cb3ee3c8ac Remove body of non-isolated functions from the IR Alvise de Faveri 2022-01-13 22:05:14 +01:00
  • 15d0d207f4 Merge feature/fix-ghast-upgrading into develop Pietro Fezzardi 2022-02-09 18:53:52 +01:00
  • 691e55097c Add the condition's BB to ASTNode's debug info Alvise de Faveri 2022-02-09 16:51:28 +01:00
  • 19ae8757b0 Add -single-decompilation to BeautifyGHAST Alvise de Faveri 2022-02-09 16:48:18 +01:00
  • 6411302bfd Fix handling of dispatcher fallthrough in Tiling Alvise de Faveri 2022-02-09 16:23:31 +01:00
  • 0c3a8904c6 Prefer while over do-while in BeautifyGHAST Alvise de Faveri 2022-02-09 17:10:20 +01:00
  • 7b144b2556 Don't upgrade while and doWhile in the GHAST Alvise de Faveri 2022-02-07 11:35:27 +01:00
  • 0639cc8042 Enforce check-revng-conventions Pietro Fezzardi 2022-02-09 17:48:54 +01:00
  • 3baf3323ed Merge branch 'feature/pipeline-improvements' Alessandro Di Federico 2022-02-08 18:35:03 +01:00
  • 8f73438a8b Ban tabs and spaces at end of lines Alessandro Di Federico 2022-02-08 17:52:55 +01:00
  • e80d159944 revng-pipline: simplify Kinds.h Alessandro Di Federico 2022-02-08 16:45:45 +01:00
  • 9788c49529 Fix pipeline test suite names Alessandro Di Federico 2022-02-08 17:38:48 +01:00
  • fa8061b805 Drop dead Kinds Alessandro Di Federico 2022-02-08 16:04:49 +01:00
  • 80d92e2fed Drop FunctionCounter-related files Alessandro Di Federico 2022-02-08 17:31:29 +01:00
  • c8026ac401 Minor changes Alessandro Di Federico 2022-02-08 16:02:50 +01:00
  • 29c50fa909 Model: reserve names defined in stdint.h Pietro Fezzardi 2022-02-01 12:40:57 +01:00
  • d9c893547f Merge branch 'feature/revng-pipes' Alessandro Di Federico 2022-02-08 08:45:17 +01:00
  • d696197597 scripts/revng: adopt revng-pipeline feature/revng-pipes Massimo Fioravanti 2021-12-23 16:26:37 +01:00
  • 67f9cbdf4c Introduce the revng-pipeline CLI tool Massimo Fioravanti 2022-01-12 10:38:03 +01:00
  • fe9686be03 revng-pipeline: introduce C API Massimo Fioravanti 2022-01-12 10:42:03 +01:00
  • a8a8da3bae Introduce revng pipes Massimo Fioravanti 2021-12-23 16:19:45 +01:00
  • 6f0d0c4f9d CodeGenerator: accept an external model Massimo Fioravanti 2021-12-23 16:29:46 +01:00
  • 98ecd38162 Drop PureLLVMPipe Massimo Fioravanti 2022-01-21 15:49:07 +01:00
  • 3b7d7c5f7e Don't use llvm::outs Alessandro Di Federico 2022-02-07 20:37:05 +01:00
  • fec5f3537b s/Granularity/Rank/ Alessandro Di Federico 2022-02-07 20:36:52 +01:00
  • e2cd7cbcdf Pipeline: simplify LLVMContainer Alessandro Di Federico 2022-02-02 15:21:56 +01:00
  • 396095706f Minor changes to revngPipeline Massimo Fioravanti 2022-01-19 17:45:28 +01:00
  • 91fd04079a AllPasses.h: include Verify.h Alessandro Di Federico 2022-02-02 14:38:17 +01:00
  • 0f084ed620 Minor changes Alessandro Di Federico 2022-02-01 11:49:35 +01:00
  • 21f16ce95d Drop *.orig files Alessandro Di Federico 2022-02-02 14:36:00 +01:00
  • 212816753a Introduce TwosComplementArithmeticNormalizationPass Antonio Frighetto 2022-02-02 17:30:56 +01:00
  • b0f3683a99 Merge branch feature/model-tooling into develop Pietro Fezzardi 2022-02-01 08:49:25 +01:00
  • 2b5610bc93 Merge branch 'feature/model-tooling' Alessandro Di Federico 2022-01-31 19:24:29 +01:00
  • d15f73b20b Upgrade testing to model tooling Alessandro Di Federico 2022-01-31 18:20:35 +01:00
  • 1c2527f6fa mv tools/{revng-,}lift feature/model-tooling Alessandro Di Federico 2022-01-31 16:37:22 +01:00
  • 60b2dbab72 revng: support model subcommands Alessandro Di Federico 2022-01-28 18:39:49 +01:00
  • 78be0e9268 Explode TupleTree.h Alessandro Di Federico 2022-01-28 18:03:52 +01:00
  • 280848484e SerializeModelPass: verify model Alessandro Di Federico 2022-01-28 17:16:20 +01:00
  • c0f8110e4e s/revng-compare-yaml/revng-model-compare/ Alessandro Di Federico 2022-01-28 16:48:27 +01:00
  • 0d7decccb3 s/revng-dump-model/revng-model-to-json/ Alessandro Di Federico 2022-01-28 16:46:22 +01:00
  • 7fba073058 Enable testing model diff Alessandro Di Federico 2022-01-28 16:41:34 +01:00
  • a353e00ac1 Introduce model passes Alessandro Di Federico 2022-01-31 16:23:05 +01:00
  • 3980ee3fad Introduce model tools Alessandro Di Federico 2022-01-28 16:37:40 +01:00
  • 29cf330fc8 TupleTreeDiff: use streams Alessandro Di Federico 2022-01-28 16:39:16 +01:00
  • 5c89a6a858 callOnPathSteps: fix UpcastablePointer handling Alessandro Di Federico 2022-01-28 15:54:13 +01:00
  • c1ec001f46 TupleTreeDiff: dump any object Alessandro Di Federico 2022-01-28 15:58:09 +01:00
  • 2c2832c027 Merge branch 'feature/dedup-model-types' Alessandro Di Federico 2022-01-27 13:46:17 +01:00
  • 05a4d72a08 Drop model::EnumEntry::Aliases Alessandro Di Federico 2022-01-26 13:53:13 +01:00
  • c9f2b24b0b MakeModelGEP: Index might be larger than BaseOff Alessandro Di Federico 2022-01-27 09:31:32 +01:00
  • b3d6c721ad Introduce purgeUnnamedAndUnreachableTypes Alessandro Di Federico 2022-01-25 17:25:41 +01:00
  • f14e722c86 Introduce deduplicateEquivalentTypes Alessandro Di Federico 2022-01-25 16:43:28 +01:00
  • f3634e165f Introduce model::Type::localCompare Alessandro Di Federico 2022-01-25 16:45:13 +01:00
  • d0bb3d4c2c CodeGenerator.cpp: use OriginalName for symbols Alessandro Di Federico 2022-01-25 17:30:12 +01:00
  • 445066bd0a CodeGenerator.cpp: posticipate DWARF import Alessandro Di Federico 2022-01-25 17:29:56 +01:00
  • 2d08050220 DwarfImporter: adopt OriginalName Alessandro Di Federico 2022-01-25 17:28:31 +01:00
  • dd7477664c Update CustomName verification criteria Alessandro Di Federico 2022-01-25 17:27:41 +01:00
  • 74a7496020 deduplicateNames -> promoteOriginalName Alessandro Di Federico 2022-01-25 17:18:53 +01:00
  • 3d1df0ab7d Use OriginalName in tests/analysis/*.yml Alessandro Di Federico 2022-01-25 16:41:44 +01:00
  • 863652f480 Introduce OriginalName in the type system Alessandro Di Federico 2022-01-25 16:41:07 +01:00
  • 8d22c5205f Push CustomName to model::Type Alessandro Di Federico 2022-01-25 16:36:53 +01:00