jeffhammond wrote: Can you remind me why collective buffer arguments are `contiguous, target`? Is there any assumption that the compiler copies non-contiguous subarrays here? What is the `target` attribute doing? Thanks. https://github.com/llvm/llvm-project/pull/76088