Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Finish the new converter of LLVM IR into BIR #211

Closed
s3rvac opened this issue Feb 8, 2018 · 1 comment
Closed

Finish the new converter of LLVM IR into BIR #211

s3rvac opened this issue Feb 8, 2018 · 1 comment

Comments

@s3rvac
Copy link
Member

s3rvac commented Feb 8, 2018

Currently, there are two converters of LLVM IR into BIR in llvmir2hll (see source code in src/llvmir2hll/llvm/llvmir2bir_converters):

  • orig Original converter, which has been in the decompiler since its beginning.
  • new A complete rewrite of the converter.

The used converter can be set via --backend-llvmir2bir-converter when running retdec-decompiler.sh. Currently, the default one is orig, because the new converter is not finished.

We should finish the converter. It has the following two main issues:

  • It generates goto targets without labels (e.g. goto xyz; is generated, but there is no xyz label in the code).
  • It generates more goto statements than the original converter.

A word of caution: Several people have already tried to finish the new converter, but none of them succeeded. It is not an easy task.

@PeterMatula
Copy link
Collaborator

The default LLVM IR to BIR converter was changed in e6f47cf. This commit is already in master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants