1118 Commits
Author SHA1 Message Date
pancake d1bda5dec3 The old bin.minstr is now bin.str.min 2026-05-06 12:38:02 +02:00
0xllx0 0f05d60cd8 analysis: move inst_combine module
Moves the `inst_combine/mod.rs` file to the more modern
`analysis/inst_combine.rs` file hierarchy.
2026-03-22 02:16:16 +00:00
0xllx0 378e4167ab analysis: remove panics + QoL/style refactors
Bubbles up `Err`/`None` results instead of calling panicking functions
(`expect`/`unwrap`).

Applies refactors for idiomatic Rust style.
2026-03-22 02:12:56 +00:00
0xllx0 a512b47cd2 analysis: modernize infer regusage module
Applies egonomic and quality-of-life refactors to the
`functions::infer_regusage` module.

Replaces calls to `unwrap` with bubbling up the `Option`.

Future revisions may replace the `Option` return with `Result`,
but that would require a design discussion.
2026-03-18 19:00:00 +00:00
0xllx0 12659899d1 analysis: small quality-of-life refactors
Provides small refactors to modernize the `functions::fix_ssa_opcalls`
module.

Adds function-level documentation, and moves free-functions to associate
methods in the `CallSiteFixer`.
2026-03-18 18:59:49 +00:00
0xllx0 82268bae84 analysis: move functions module file
Uses the modern convention for the `functions` module file.
2026-03-16 18:45:51 +00:00
0xllx0 1c83c23f47 log: put unused macro args behind cfg block
Moves the unused formatting arguments supplied to `radeco_*` logging
macros behind a conditional compilation guard when the `trace_log`
feature is disabled.
2026-03-07 10:42:24 +00:00
0xllx0 dfdcbb42ba domtree: remove implicit panics
Removes implicit panics by replacing indexing calls, e.g. `list[index]`,
with the fallible `get` equivalent, and returning errors on missing
entries.
2026-03-07 10:02:50 +00:00
0xllx0 84aad2d9a1 domtree: add docs + fallible functions
Adds missing documentation to public functions, and adds to the
module-level documentation.

Fixes a couple of the `FIXME` comments by converting to the associated
trait type, instead of hard-coded types.

Converts functions with explicit panics (via `assert_*`) to fallible
functions that return a `Result`.
2026-03-06 17:22:11 +00:00
0xllx0 713cc46484 utils: move the mod.rs to utils.rs
Uses the newer file hierarchy for the `utils` module.
2026-03-06 15:23:50 +00:00
0xllx0 7fb11e4be9 utils: remove dead code 2026-03-06 15:23:24 +00:00
0xllx0 5c1b6eb265 log: make logging macros consistent
Makes `radeco_*` logging macros more consistent with other Rust macros
that take formatting strings/arguments.

Increases the intuitiveness + ergonomics of the logging macros.
2026-03-06 15:21:22 +00:00
0xllx0 0ed6592545 analysis: re-enable ignored fixcall tests
Re-enables the ignored fixcall tests.

It is unclear why they were ignored, they all pass, and run very quickly.
2026-03-06 14:35:30 +00:00
0xllx0 e51596ed74 analysis: make sort fallible
Makes the `sort_operands` and its callers fallible.

Bubbles up the error to callers in `engine` and `interproc::fixcall`,
but does not make those functions fallible. Left for a future refactor.
2026-02-24 15:47:08 +00:00
0xllx0 094f6d887e analysis: create new SortPriority type
Creates the `SortPriority` type to represents SSA element sort priority.

Allows for more idiomatic handling of priority levels, and encapsulates
logic for converting between raw numbers and priority levels.
2026-02-24 14:33:50 +00:00
0xllx0 aeb8ec9223 analysis: rename copy_propagation module 2026-02-24 13:49:11 +00:00
0xllx0 c84da28198 analysis: cleanup of copy_propagation
Small code cleanup of `copy_propagation` module.

Moves some constants around, and uses a more functional style for
`gather_copies` implementation.
2026-02-24 13:46:35 +00:00
0xllx0 170bea064a rune: remove explicit panic
Replaces explicit panicking calls with error handling.
2026-02-03 22:41:59 +01:00
0xllx0 c30eb12a11 rune: explorer error handling
Replaces explicit panics with error handling in the `explorer` module.
2026-01-21 05:46:00 +01:00
0xllx0 ce435e3ad4 fixup: tests: lint fixes 2026-01-19 07:58:23 +01:00
0xllx0 d29bc16d05 fixup: radeco: lint fixes 2026-01-19 07:58:23 +01:00
0xllx0 a4ba7b95b4 fixup: radeco-lib: lint fixes 2026-01-19 07:58:23 +01:00
0xllx0 f20cbeeb27 fixup: rune: lint fixes 2026-01-19 07:58:23 +01:00
0xllx0 dcb2ef7962 fixup: arch-rs: lint fixes 2026-01-19 07:58:23 +01:00
0xllx0 e6b99febf1 fixup: esil-rs: lint fixes 2026-01-19 07:58:23 +01:00
0xllx0 7a04523dd4 fixup: formatting 2026-01-19 07:58:23 +01:00
0xllx0 08e8bf8ac0 fixup: compiler error fixes 2026-01-18 06:11:24 +01:00
Anton Kochkov 7ada2d24fd Update dependencies 2020-05-22 14:12:00 +08:00
Anton Kochkov 39cd7c8755 Update dependencies, CI fixes 2020-03-31 16:11:39 +08:00
Anton Kochkov 50666e2efb Update dependencies 2020-03-31 16:11:39 +08:00
Anton Kochkov d71f3f6bb2 Try to fix Travis 2020-02-11 10:19:44 +08:00
Florian Märkl 727ed9e53c Enable CI only on master (#335) 2020-02-10 19:01:41 +01:00
Florian Märkl 126528ac7e Don't fail Travis on rustfmt install fail (#334) 2020-02-10 19:01:31 +01:00
Florian Märkl ebd5495ce5 Remove custom_attribute feature (#332) 2020-02-10 17:17:54 +01:00
Florian Märkl 98776fd1d2 Update petgraph to 0.5.0 (#333) 2020-02-10 17:17:38 +01:00
Anton Kochkov 188db806c2 Use petgraph from git until 0.5.0 2019-09-12 16:05:33 +08:00
Anton Kochkov c12c7adb39 Fix a typo 2019-09-12 16:02:30 +08:00
Anton Kochkov 2864f93eb1 Update dependencies 2019-09-12 16:02:08 +08:00
Anton Kochkov 823ad31ad4 Fix AppVeyor badge 2019-06-18 23:07:52 +08:00
Anton Kochkov 7a17827d18 Fix Travis CI badge 2019-06-18 23:06:26 +08:00
Anton Kochkov 88afdb0837 Clarify project structure 2019-06-18 21:30:49 +08:00
Anton Kochkov 17ea96db04 Fix #263 - switch to cargo-travis 2019-06-18 17:03:20 +08:00
Anton Kochkov fc7c09c17c Radeco - integrate into the Travis build 2019-06-18 17:03:20 +08:00
Anton Kochkov c1c4b4be29 Improve radeco integration 2019-06-18 17:03:20 +08:00
Anton Kochkov 6d40bfd8b7 Add radeco project 2019-06-18 17:03:20 +08:00
radare e2560a213b Force install to allow reinstalls without errors 2019-06-18 17:03:20 +08:00
kriw 944a2c89b2 Apply cargo fmt 2019-06-18 17:03:20 +08:00
kriw e605fe4432 Fixing #64 try to open r2pipe if no argument is provided 2019-06-18 17:03:20 +08:00
Marco Milanese c719134364 Use RadecoEngine to run the analyzers. 2019-06-18 17:03:20 +08:00
Marco Milanese 155fe784b6 Fix the trace_log build option 2019-06-18 17:03:20 +08:00