Limitations

The decompiler comes in 9 different flavors:

  • x86 decompiler (32-bit code)

  • x64 decompiler (64-bit code)

  • ARM decompiler (32-bit code)

  • ARM64 decompiler (64-bit code)

  • PowerPC decompiler (32-bit code)

  • PowerPC64 decompiler (64-bit code)

  • MIPS decompiler (O32 and N32 ABI)

  • MIPS64 decompiler (N64 ABI)

  • ARC Decompiler (32-bit code)

Currently the decompiler can handle compiler generated code. Manually crafted code may be decompiled too but the results are usually worse than for compiler code. Support for other processors will eventually be added (no deadlines are available, sorry).

Below are the most important limitations of our decompilers (all processors):

  • exception handling is not supported

  • type recovery is not performed

  • global program analysis is not performed

Limitations specific to x86:

  • only 32-bit code can be analyzed with ida32

Limitations specific to x64:

  • only 64-bit code can be analyzed with ida64

Limitations specific to ARM32:

  • only 32-bit code can be analyzed with ida32

  • hard-float abi is not supported

Limitations specific to ARM64:

  • only 64-bit code can be analyzed with ida64

Limitations specific to PPC:

  • only 32-bit code can be analyzed with ida32

  • Vector/DFP/VSX/SPE instructions are not supported

Limitations specific to MIPS:

  • only 32-bit code can be analyzed

  • only O32 and N32 ABI are supported

  • only 32-bit FPR in O32 and 64-bit FPR in N32 are supported

Limitations specific to MIPS64:

  • only 64-bit code can be analyzed

  • only N64 ABI is supported

  • only 64-bit FPR are supported

Limitations specific to ARC:

  • only 32-bit code can be analyzed with ida32

Last updated