This patch adds basic support for targets to specify the address space for
alloca operations. This is used when converting from FIR->LLVMIR. The resulting pointer from
a mlir::LLVM::AllocaOp, will always be cast with a mlir::LLVM::AddrSpaceCastOp
to the generic address space, unless it is already generic.
Depends on https://reviews.llvm.org/D144657
Nit: Avoid auto if the type is not in the RHS. Here and in other locations.