Is it possible to use LLVM for JIT binary optimization?

Hello everyone!

The question is in the title. There is a need to implement a tool that could parse the machine code of binary files, change it and execute it in real time. Is LLVM suitable for this task?

If so, from which side is it better to approach it in the context of the LLVM infrastructure?

Would appreciate for your feedback!