LLVM intermediate representation