You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue lists a few examples of binaries and functions that have had optimizations applied on them. These opts are documented in the SAILR paper into three categories:
Irreducible Statement Duplication: opts that duplicate code
Irreducible Statement Condensing: opts that turn ncode statements into less statements
Misc: currently on Switch Lowering (converts switches into bad ifs)
The attached binaries and source are from Coreutils 9.1 and have been compiled with GCC 9 on optimization level O2, with inlining disabled. Each case below is shown as binary_name: function_name. Some cases come with a testcase to see what they should look like. In every case below, the SAILR version of angr should produce better results than IDA Pro 8.0. The best way to understand what happened in each of these cases is to take look at the corresponding source file to the function.
Overview
This issue lists a few examples of binaries and functions that have had optimizations applied on them. These opts are documented in the SAILR paper into three categories:
n
code statements into less statementsThe attached binaries and source are from
Coreutils 9.1
and have been compiled withGCC 9
on optimization levelO2
, with inlining disabled. Each case below is shown asbinary_name: function_name
. Some cases come with a testcase to see what they should look like. In every case below, the SAILR version of angr should produce better results than IDA Pro 8.0. The best way to understand what happened in each of these cases is to take look at the corresponding source file to the function.Cases
ISD Opts
ISC Opts
Misc Opts (Switch Lowering)
Binaries and Source
Both are attached here:
coreutils_src_and_bin.tar.gz
In this directory, you will also find
angr_sailr_*
,ida_*
andghidra_*
, which is the associated decompilation for each of those files :).The text was updated successfully, but these errors were encountered: