Is it possible to translate an assembly language to LLVM IR, optimize it and then recompile it to a different architecture?
Is it possible to translate an assembly language to LLVM IR, optimize it and then recompile it to a different architecture? How would you handle "push"es and "pop"s on the stack in the IR? This is the simplest objection I found, but I'm sure that there're tons like this. I'm planning to build a dynamic recompiler, and it seems that this would be an excellent solution, since LLVM would automatically optimize my code for the new architecture. Is all this possible with LLVM? Thanks Richard Pennington This is a similar question: Recompile a x86 code with LLVM to some faster one x86 The answer is