These are the libgomp patches (including testcases). Not much has changed from last submission besides renaming to 'non-contiguous', etc. and rebasing. Thanks, Chung-Lin libgomp/ * target.c (struct gomp_ncarray_dim): New struct declaration. (struct gomp_ncarray_descr_type): Likewise. (struct ncarray_info): Likewise. (gomp_noncontig_array_count_rows): New function. (gomp_noncontig_array_compute_info): Likewise. (gomp_noncontig_array_fill_rows_1): Likewise. (gomp_noncontig_array_fill_rows): Likewise. (gomp_noncontig_array_create_ptrblock): Likewise. (gomp_map_vars): Add code to handle non-contiguous array map kinds. * testsuite/libgomp.oacc-c-c++-common/noncontig_array-1.c: New test. * testsuite/libgomp.oacc-c-c++-common/noncontig_array-2.c: New test. * testsuite/libgomp.oacc-c-c++-common/noncontig_array-3.c: New test. * testsuite/libgomp.oacc-c-c++-common/noncontig_array-4.c: New test. * testsuite/libgomp.oacc-c-c++-common/noncontig_array-utils.h: New test.