use cases for LLVM?