Можно ли перевести язык ассемблера в LLVM IR, оптимизировать его, а затем перекомпилировать под другую архитектуру? Как бы вы справились с «push» и «pop» в стеке в IR? Это самое простое возражение, которое я нашел, но я уверен, что таких масса.
Я планирую построить динамический рекомпилятор, и кажется, что это было бы отличным решением, так как LLVM автоматически оптимизировал бы мой код под новую архитектуру. Возможно ли все это с LLVM?
Спасибо