2011-11-27 11 views
9

Czy można przetłumaczyć język asemblera na LLVM IR, zoptymalizować go, a następnie przekompilować do innej architektury? Jak poradzisz sobie z "push" i "pop" na stosie w IR? Jest to najprostszy zarzut, jaki znalazłem, ale jestem pewien, że jest takich ton.Czy można przetłumaczyć język asemblera na LLVM IR, zoptymalizować go, a następnie przekompilować do innej architektury?

Mam zamiar zbudować dynamiczny rekompilator i wydaje się, że byłoby to doskonałe rozwiązanie, ponieważ LLVM automatycznie zoptymalizuje mój kod dla nowej architektury. Czy to wszystko jest możliwe z LLVM?

Dzięki

Odpowiedz

1

Jest to możliwe.

Musisz jednak stworzyć bazę kodu, aby LLVM zaimplementować proces tłumaczenia języka asemblerowego na LLVM IR.

Następnie LLVM może pomóc zoptymalizować i wygenerować nową architekturę.

Chodzi o to, że trzeba rozwinąć tłumacza, który może przetłumaczyć język asemblerowy na LLVM IR. Widziałem już kogoś, kto to zrobił, możesz przeszukać stronę.

Powiązane problemy