external llvm