emit ll from llvm opt directly, to skip writing and reading all the bitcode