Зашел глянуть на github происходит ли что-нибудь с проектом.
Месяц назад некто Seth Traverse (https://github.com/WinMac32) склонировал проект EARL'а и добавил пару коммитов.
См. https://github.com/WinMac32/llvm-z80/commits/z80
Initial implementation of inline asm …
WinMac32 authored on Nov 2
Based heavily (almost completely) off of the "CPU0" implementation
with modifications to make it output correct z80 operands
Next step is testing to see what CPU0-specific features need to be
changed, or removed, so that it works in all use cases.(склонировал он, правда, как-то некорректно, github не показывает связь с проектом EARL'a)We now output "correct" z80 syntax. …
WinMac32 authored on Nov 6
Also temp fix on some C programs not compiling...
It seems LLVM sometimes wants to put HL onto the stack, but it first
moves it to IY (seriously wtf) and then tries to move IY to memory
indirectly using the IX register. Originally (and correctly, I
suppose), it would crash here.
However, I'm temporarily allowing it for testing. This isn't an
instruction, and it should't even be using IY for stuff like that
in the first place. LLVM needs to be stopped from getting to this
point.
---------- Post added at 12:52 ---------- Previous post was at 12:49 ----------
Упомянутый у него CPU0 - некий китайский процессор (выдуманный что ли для этой книги подобно MIX Asm Дональда Кнута?), процесс создания LLVM-бэкенда для которого подробнейшим образом описан здесь: http://jonathan2251.github.io/lbd/ (онлайн + epub и pdf книжки) - выглядит как отличное руководство по созданию бэкендов. (пусть и на ужасно ломаном англ. языке)




Ответить с цитированием