unsafe fn i1_to_bool(&self, builder: LLVMBuilderRef, v: LLVMValueRef) -> LLVMValueRef {
        let type_kind = LLVMGetTypeKind(LLVMTypeOf(v));
        if type_kind == llvm_sys::LLVMTypeKind::LLVMVectorTypeKind {
            LLVMBuildZExt(
                builder,
                v,
                LLVMVectorType(self.bool_type(), LLVM_VECTOR_WIDTH),
                c_str!(""),
            )
        } else {
            LLVMBuildZExt(builder, v, self.bool_type(), c_str!(""))
        }
    }
Convert an `i1` to a boolean.

If the input is a vector, a vector of `boolean` is produced.
weld/src/codegen/llvm2/mod.rs