
My First LLVM Compiler (2015) - lrsjng
http://www.wilfred.me.uk/blog/2015/02/21/my-first-llvm-compiler/
======
JoshMcguigan
I recently wrote a brainfuck compiler using Rust [0], but I targeted x86-64
asm directly. I implemented some very basic optimization (as you show at the
bottom of your post), but I'd imagine llvm is able to take things much
further. I'd be curious to see a performance comparison.

[0]:
[https://github.com/JoshMcguigan/nerve](https://github.com/JoshMcguigan/nerve)

~~~
mhh__
State of the art compilers are ridiculously clever sometimes, so I imagine
quite a lot.

I wonder how good they are at extracting information from code generated from
BF however.

------
quasarj
So why did he use gcc to link the program at the end?

~~~
daniel-levin
I imagine it is because gcc -o is a convenient way to call the linker such
that it correctly links the binary and libc. Doing this manually with ld would
require several (non-portable) command line arguments that would be
distracting from the main point of the post.

