[MLIR][LLVM] Don't use void return type in `getCallableResults`.
In the LLVM IR dialect, `LLVMVoidType` is used to model the return type
of LLVM IR functions with no return value. This is inconsistent with
MLIR APIs, which expect a function with no return value to have an
empty return type. Handle this special case in `LLVMFuncOp` to avoid
mismatches between the number of return values and return types between
caller and callee.
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D141676