linker.cc: fix address space of opencl.imageX_t arguments
linker.cc: fix address space of opencl.imageX_t arguments

For unknown reason (probably a bug in LLVM), llvm::CloneFunction
drops address space global from opencl.imageX_t arguments.

This adds some code in linker which reintroduces the global AS
into kernel library functions as well as user's code itself.

Having both opencl.imageX_t and dev_image_t in default AS while
having dev_image_t->data in global AS segfaults LLVM at
kernellib compilation.

pocl/pocl,franz/pocl,pavanky/pocl,Oblomov/pocl,pocl/pocl,jrprice/pocl,dsandersimgtec/pocl,Oblomov/pocl,Oblomov/pocl,vkorhonen/pocl,dsandersimgtec/pocl,pavanky/pocl,franz/pocl,pocl/pocl,dsandersimgtec/pocl,Oblomov/pocl,vkorhonen/pocl,franz/pocl,pocl/pocl,vkorhonen/pocl,jrprice/pocl,rjodin/pocl,rjodin/pocl,Oblomov/pocl,pavanky/pocl,franz/pocl,pavanky/pocl,jrprice/pocl,vkorhonen/pocl,dsandersimgtec/pocl,rjodin/pocl,rjodin/pocl,pocl/pocl,franz/pocl,jrprice/pocl