diff options
author | Julian Brown <julian@codesourcery.com> | 2024-04-30 19:21:22 +0200 |
---|---|---|
committer | Sandra Loosemore <sloosemore@baylibre.com> | 2025-05-15 20:25:49 +0000 |
commit | 7431820c24b68001c614b26208be9c9f53c712b8 (patch) | |
tree | 6a6a35b958cc3cd08776f81a73e3e9b40febb166 /gcc/c/c-parser.cc | |
parent | 3ea1f835c3775431634ffe1ad44b0c742664a3dd (diff) | |
download | gcc-7431820c24b68001c614b26208be9c9f53c712b8.zip gcc-7431820c24b68001c614b26208be9c9f53c712b8.tar.gz gcc-7431820c24b68001c614b26208be9c9f53c712b8.tar.bz2 |
OpenMP: Allow complete replacement of clause during map/to/from expansion
At present, map/to/from clauses on OpenMP "target" directives may be
expanded into several mapping nodes if they describe array sections with
pointer or reference bases, or similar. This patch allows the original
clause to be replaced during that expansion, mostly by passing the list
pointer to the node to various functions rather than the node itself.
This is needed by the following patch. There shouldn't be any functional
changes introduced by this patch itself.
2023-09-05 Julian Brown <julian@codesourcery.com>
gcc/c-family/
* c-common.h (expand_array_base, expand_component_selector,
expand_map_clause): Adjust member declarations.
* c-omp.cc (omp_expand_access_chain): Pass and return pointer to
clause.
(c_omp_address_inspector::expand_array_base): Likewise.
(c_omp_address_inspector::expand_component_selector): Likewise.
(c_omp_address_inspector::expand_map_clause): Likewise.
gcc/c/
* c-typeck.cc (handle_omp_array_sections): Pass pointer to clause to
process instead of clause.
(c_finish_omp_clauses): Update calls to handle_omp_array_sections.
Handle cases where initial clause might be replaced.
gcc/cp/
* semantics.cc (handle_omp_array_sections): Pass pointer to clause
instead of clause. Add PNEXT return parameter for next clause in list
to process.
(finish_omp_clauses): Update calls to handle_omp_array_sections.
Handle cases where initial clause might be replaced.
Diffstat (limited to 'gcc/c/c-parser.cc')
0 files changed, 0 insertions, 0 deletions