Pretty-print LLVM .ll output files
When working on the LLVM backend you sometimes have to read the generated LLVM assembly (stored in .ll files). The current output is quite hard to read. I suggest we try to mimic the output of llvm-dis by:
- indenting each instruction by one tab (or two spaces if we want to be identical to llvm-dis),
- adding a newline after each basic block (this will also have the effect of separating defines from each other as they all have at least on basic block), and
- adding a newline after each declare.