Basic module with main llvm ir generation