clover: add printf runtime support

The implementation is based on what LLVM AMD target expect.
The compiler provided an id link to argument desc and format used.
The runtime need to store them to be able to parse the buffer filled by
the device during the kernel execution, ie, an id value to find the
format and followed by the arguments values
31 jobs for !6040 with clover/printf
latest detached
Status Job ID Name Coverage
  Container+Docs
manual #4885164
aarch64 manual
arm_build
manual #4885165
manual
arm_test-base
manual #4885159
manual
x86_build-base
manual #4885162
manual
x86_build_old
manual #4885160
manual
x86_test-base
 
  Container 2
created #4885183
arm64_test
created #4885174
i386_build
created #4885167
kernel+rootfs_amd64
created #4885169
aarch64
kernel+rootfs_arm64
created #4885171
aarch64
kernel+rootfs_armhf
created #4885176
ppc64el_build
created #4885178
s390x_build
created #4885173
x86_build
created #4885179
x86_test-gl
created #4885181
x86_test-vk
 
  Meson X86 64
created #4885191
meson-android
created #4885193
meson-clang
created #4885189
meson-classic
created #4885194
meson-clover
created #4885186
meson-gallium
created #4885188
meson-release
created #4885184
meson-testing
created #4885196
meson-vulkan
 
  Scons
created #4885198
allowed to fail
scons-win64
 
  Meson Misc
created #4885201
aarch64
meson-arm64
created #4885203
aarch64
meson-arm64-build-test
created #4885200
aarch64
meson-armhf
created #4885206
meson-i386
created #4885212
meson-mingw32-x86_64
created #4885209
kvm
meson-ppc64el
created #4885207
kvm
meson-s390x