tfzxyinhao
tfzxyinhao

Reputation: 354

use llvm to implement a arm disassembler

recently, i want to analyze some library which in android. but arm assembler is hardly to understand,so i want to use llvm to implement a disassembler i find a document about this topic at here:http://llvm.org/docs/MarkedUpDisassembly.html#instruction-annotations and a cpp file at here http://llvm.org/docs/doxygen/html/ARMDisassembler_8cpp_source.html and then use some rules to translate assembler code to c code.

Upvotes: 0

Views: 2166

Answers (1)

Eli Bendersky
Eli Bendersky

Reputation: 273366

There is nothing within LLVM that will help you translate assembly to C code. The disassembly capabilities LLVM provides can disassemble machine code (binaries) for the targets it supports to assembly.

Moreover, if you're finding the assembly hard to understand, I should say that you probably won't understand the resulting C code. C code created by decompilation tools (the usual name for converting assembly to C) isn't very readable and you must have a strong knowledge of assembly language to understand it anyway.

Upvotes: 1

Related Questions