unsafe fn with_codegen<'ll, F, R>(
    tm: &'ll TargetMachine,
    llmod: &'ll Module,
    no_builtins: bool,
    f: F
) -> Rwhere
    F: FnOnce(&'ll mut PassManager<'ll>) -> R,