Code generation with LLVM and AST structure