Set up the LLVM context and optimise the module