This commit implements the existing void buffer used to share
arguments between threads in a team with a byte-wise buffer. For now,
the void buffer is kept for compatibility.
The byte-wise buffer, if used directly, allows to save memory when small
arguments are shared between team threads. It does also allow to track
an additional offset that differentiates two distinct back-to-back
memory regions, e.g., for shared (copy in & out) and firstprivate (copy
in only) variables.
This is a preparation patch for https://reviews.llvm.org/D59319