From: Luke Lau Date: Sun, 19 May 2019 14:58:31 +0000 (+0100) Subject: Set up the LLVM context and optimise the module X-Git-Url: http://git.lukelau.me/?a=commitdiff_plain;h=8386b89c4a269b7ba16a3a26517894c33393a795;hp=8386b89c4a269b7ba16a3a26517894c33393a795;p=kaleidoscope-hs.git Set up the LLVM context and optimise the module Now that we have some LLVM IR generated, we can run PassManager on our module to get a bunch of neat optimisations on it. Try it out with 3 + 2 to see some constant folding. Note that the original tutorial uses FunctionPassManager which optimises on a function per function basis: llvm-hs doesn't expose this yet (and this is all using the legacy pass manager anyway), so for now we just optimise the entire module at the end. ---