Comment Re:still slow (Score 1) 61
LLVM is probably too heavy-weight to run dynamically. It generates high quality code, but it isn't designed to compile short traces of instructions like you would need to do in a dynamic binary translator.
This might not be a bad idea if it could be done once when the binary is installed. However, this is just impossible to do in general for x86 because it isn't always possible to tell the difference between data and code before the program tries to execute it. This is especially true for applications that do any kind of runtime code generation themselves because they would be generating x86 (not ARM) instructions on the fly.
I'm somewhat sad that no one ships LLVM byte code binaries that are lowered to the native ISA at install time. It was one of the original design goals of LLVM, and it would have eliminated all of these issues.