uxmal / reko

Reko is a binary decompiler.

Home Page:https://uxmal.github.io/reko

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Reko fails to recover floating-point code

uxmal opened this issue · comments

(See #1337 opened by @yangzao for the binary in question, program 2)
Original code:

((int)((((double)(i_l)) -((double)(1)))))

Decompiled code:

(int32) ((real64) 1e-45F - 1.0)

(double)(i_1) (i_l equals to 1) is recovered as 1e-45F.

Bonus issue:
Reko's high-level code generation pass is leaving *s (signed multiplication) operations in the generated C code.