Hi Kashyap,

> What would you recommend if I had to write an assembler for RISC V? Can I
> look at llvm.l in pil21 or should I look at lib/asm.l in pil64?

I would say that lib/asm.l is the way to go. It maps directly to a target
assembly language (or C in case of 'emu').

llvm is a different, special machinery.


> I mean, I could always write a program that takes the assembly as a text
> file input and parses it - but where's the fun in that? ... I mean, I
> really liked the idea that lib/asm.l uses the reader to read the symbols.

Right.

On the other hand, llvm.l goes even a step further. It not only uses the reader,
but the whole interpreter, and simply *redefines* all needed functions (like
'de', 'let', 'if', 'cond', 'while', 'car', 'cdr' and many many more) in a 'llvm'
namespace, so that they compile LLVM-IR code instead of executing something. 
This
is well in the tradition of Forth compilers.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to