This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
These are the patches for gimplify, omp-low, and include/gomp-constants.h On issue that Jakub raised in the last review email on omp-low changes [1], was the use of DECL_IGNORED_P. Because the descriptor variables are created was create_tmp_var_raw(), they already have DECL_IGNORED_P set, so this shouldn't be of issue here. The use of '$' in identifier names have also been removed. [1] https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01297.html Thanks, Chung-Lin gcc/ * gimplify.c (gimplify_scan_omp_clauses): For non-contiguous array map kinds, make sure bias in each dimension are put into firstprivate variables. * omp-low.c (struct omp_context): Add 'hash_map<tree_operand_hash, tree> *non_contiguous_arrays' field, also added include of "tree-hash-traits.h". (append_field_to_record_type): New function. (create_noncontig_array_descr_type): Likewise. (create_noncontig_array_descr_init_code): Likewise. (new_omp_context): Add initialize of non_contiguous_arrays field. (delete_omp_context): Add delete of non_contiguous_arrays field. (scan_sharing_clauses): For non-contiguous array map kinds, check for supported dimension structure, and install non-contiguous array variable into current omp_context. (lower_omp_target): Add handling for non-contiguous array map kinds. (noncontig_array_lookup): New function. (noncontig_array_reference_start): Likewise. (scan_for_op): Likewise. (scan_for_reference): Likewise. (ncarray_create_bias): Likewise. (ncarray_dimension_peel): Likewise. (lower_omp_1): Add case to look for start of non-contiguous array reference, and handle bias adjustments for the code sequence. * tree-pretty-print.c (dump_omp_clauses): Add cases for printing GOMP_MAP_NONCONTIG_ARRAY map kinds. include/ * gomp-constants.h (GOMP_MAP_FLAG_SPECIAL_3): Define. (enum gomp_map_kind): Add GOMP_MAP_NONCONTIG_ARRAY, GOMP_MAP_NONCONTIG_ARRAY_TO, GOMP_MAP_NONCONTIG_ARRAY_FROM, GOMP_MAP_NONCONTIG_ARRAY_TOFROM, GOMP_MAP_NONCONTIG_ARRAY_FORCE_TO, GOMP_MAP_NONCONTIG_ARRAY_FORCE_FROM, GOMP_MAP_NONCONTIG_ARRAY_FORCE_TOFROM, GOMP_MAP_NONCONTIG_ARRAY_ALLOC, GOMP_MAP_NONCONTIG_ARRAY_FORCE_ALLOC, GOMP_MAP_NONCONTIG_ARRAY_FORCE_PRESENT. (GOMP_MAP_NONCONTIG_ARRAY_P): Define.
Attachment:
02.openacc-noncontig_arrays.gcc.patch
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |