A personal journey into LLVM