On Wed, 10 Jan 2024 10:14:41 +0100
Jakub Jelinek wrote:
> On Fri, Jan 05, 2024 at 12:23:26PM +0000, Julian Brown wrote:
> > * g++.dg/gomp/bad-array-section-10.C: New test.
>
> This test FAILs in C++23/C++26 modes, just try
> make check-g++ GXX_TESTSUITE_STDS=98
Hi Tobias,
Thanks for review! Here's a new version of the patch which hopefully
addresses this round of comments.
On Tue, 19 Dec 2023 16:41:54 +0100
Tobias Burnus wrote:
> On 16.12.23 14:25, Julian Brown wrote:
> > --- a/gcc/gimplify.cc
> > +++ b/gcc/gimplify.cc
>
On Thu, 14 Dec 2023 08:14:56 +0100
Jakub Jelinek wrote:
> On Wed, Nov 29, 2023 at 11:43:05AM +0000, Julian Brown wrote:
> > * c-c++-common/gomp/target-enter-data-1.c: Adjust scan
> > output.
>
> struct bar { int num_vectors; double *vectors; };
>
> is 16 bytes
evaluate to ensure that it is
> > + not gimplified + is a decl. */
> This is part of my Fortran allocatable-components deep-mapping patch
> that is currently only on OG9 (?) to OG13, badly needs to be
> upstreamed but required that Jakub
On Wed, 27 Sep 2023 00:57:58 +0200
Thomas Schwinge wrote:
> On 2023-09-06T02:34:30-0700, Julian Brown
> wrote:
> > This patch works around behaviour of the 2D and 3D memcpy
> > operations in the CUDA driver runtime. Particularly in Fortran,
> > the "base pointer&
On Thu, 14 Sep 2023 17:13:02 +0200
Bernhard Reutner-Fischer via Gcc-patches
wrote:
> On Tue, 5 Sep 2023 12:28:28 -0700
> Julian Brown wrote:
>
> > + static bool
> > + equal (const omp_name_type &a,
> > +const omp_name_type &b)
> > + {
&
/2023-September/629363.html
and the array-shaping operator and strided/rectangular 'target update'
support series:
https://gcc.gnu.org/pipermail/gcc-patches/2023-September/629422.html
Tested with offloading to NVPTX. OK?
2023-09-06 Julian Brown
gcc/c-family/
* c-common.h (
form that can ultimately be consumed by
omp_target_memcpy_rect_worker. The method for doing this is described
in comments in the patch body.
This version of the patch has been rebased and contains some additional
minor fixes relative to the version posted for the og13 branch.
2023-09-05 Julian B
ecessarily differ for C,
but the general ideas are the same.
This version of the patch has been rebased and contains a couple of
minor fixes relative to versions posted previously.
2023-09-05 Julian Brown
gcc/c/
* c-parser.cc (c_parser_braced_init): Disallow array-shaping operator
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
gcc/c-family/
* c-common.h (expand_array_base, expand_com
ail/gcc-patches/2023-July/623502.html
This version of the series contains several follow-up fixes relative
to the og13 version, and omits some parts that are only present on the
branch for now. Further comments on individual patches.
Tested with offloading to NVPTX and bootstrapped. OK?
Julian
is to make sure that we use the first element of data to be transferred
instead, and adjust parameters accordingly.
2023-09-05 Julian Brown
libgomp/
* plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d): Adjust parameters to
avoid out-of-bounds array checks in CU
mapper' instantiation":
https://gcc.gnu.org/pipermail/gcc-patches/2023-August/627006.html
"OpenMP: Look up 'declare mapper' definitions at resolution time not
parse time":
https://gcc.gnu.org/pipermail/gcc-patches/2023-August/627007.html
2023-09-05 Julian Brown
ps://gcc.gnu.org/pipermail/gcc-patches/2023-June/623356.html
This version supports mappers on "target data", "target enter data" and
"target exit data" directives as well as on "target" directives.
2023-09-05 Julian Brown
gcc/c/
troduced by this patch.
2023-09-05 Julian Brown
gcc/fortran/
* gfortran.h (toc_directive): New enum.
* trans-openmp.cc (gfc_trans_omp_array_section): Take toc_directive
parameter instead of gfc_exec_op and 'openmp' boolean.
(gfc_trans_omp_clau
ious lines are still executed in the same order,
though there is a little harmless reshuffling in a couple of places to
make things fit.
There shouldn't be any behavioural changes introduced by this patch.
2023-09-05 Julian Brown
gcc/fortran/
* openmp.cc (omp_verify_clau
pipermail/gcc-patches/2023-August/627005.html
2023-09-05 Julian Brown
gcc/c-family/
* c-common.h (c_omp_region_type): Add C_ORT_EXIT_DATA,
C_ORT_DECLARE_MAPPER, C_ORT_OMP_EXIT_DATA, C_ORT_OMP_DECLARE_MAPPER
values.
(omp_mapper_list): Add forward declara
This is a cleanup to avoid passing an ever-longer list of boolean
arguments to gfc_free_omp_namelist, in support of the Fortran "declare
mapper" implementation further along this patch series.
This patch isn't intended to cause any behavioural changes.
2023-09-05 Julian Brown
ously posted for mainline here:
https://gcc.gnu.org/pipermail/gcc-patches/2022-December/609038.html
and for the og13 branch here:
https://gcc.gnu.org/pipermail/gcc-patches/2023-June/623355.html
2023-09-05 Julian Brown
gcc/c/
* c-pretty-print.cc (c_pretty_printer::postfix_expressi
rastructural support series posted
here:
https://gcc.gnu.org/pipermail/gcc-patches/2023-August/627895.html
Tested with offloading to NVPTX and bootstrapped. OK?
Julian Brown (8):
OpenMP: lvalue parsing for map/to/from clauses (C++)
OpenMP: lvalue parsing for map/to/from clauses (C)
OpenMP:
ACC: Reorganise OMP map clause handling in gimplify.cc"
https://gcc.gnu.org/pipermail/gcc-patches/2023-June/63.html
Parts of:
"OpenMP: OpenMP 5.2 semantics for pointers with unmapped target"
https://gcc.gnu.org/pipermail/gcc-patches/2023-June/623351.html
2023-08-1
ic array support
(though that is not yet applied to mainline).
2023-08-18 Julian Brown
gcc/
* gimplify.cc (extract_base_bit_offset): Add VARIABLE_OFFSET parameter.
(omp_get_attachment, omp_group_last, omp_group_base,
omp_directive_maps_explic
This patch trivially adds braces and reindents the
OMP_CLAUSE_TO/OMP_CLAUSE_FROM/OMP_CLAUSE__CACHE_ stanza in
c_finish_omp_clause and finish_omp_clause, in preparation for the
following patch (to clarify the diff a little).
2023-08-18 Julian Brown
gcc/c/
* c-typeck.cc
, in favour of using the "correct"
GOMP_MAP_RELEASE/GOMP_MAP_DELETE kinds during early expansion. A new
flag is introduced so the middle-end knows when the latter two kinds
are being used specifically for an array descriptor.
This version of the patch is based on the version posted for
ttps://gcc.gnu.org/pipermail/gcc-patches/2023-June/622213.html
Though rearranged somewhat and without several of the later
OpenACC-specific patches.
Further comments on individual patches. Tested with offloading to NVPTX
and bootstrapped. OK for mainline?
Julian Brown (5):
OpenMP/O
nt directive ("omp target",
"omp target data", etc.), an error will be raised.
Support is also added for the "mapper" modifier on to/from clauses for
all three base languages.
2023-08-10 Julian Brown
gcc/c-family/
* c-common.h (c_omp_region_type): Add
on the mapper modifier for a clause.
2023-08-10 Julian Brown
gcc/fortran/
* gfortran.h (gfc_omp_namelist_udm): Add MAPPER_ID field to store the
mapper name to use for lookup during resolution.
* match.cc (gfc_free_omp_namelist): Handle OMP_LIST_TO and
enumeration values for that purpose instead. This shouldn't
result in any behaviour change, but improves self-documentation.
2023-08-10 Julian Brown
gcc/c-family/
* c-common.h (c_omp_region_type): Add C_ORT_DECLARE_MAPPER and
C_ORT_OMP_DECLARE_MAPPER codes.
gcc/cp/
*
esolve_omp_mapper_clauses', called after mapper instantiation.
This improves diagnostic output.
2023-08-10 Julian Brown
gcc/fortran/
* gfortran.h (gfc_omp_clauses): Add NS field.
* openmp.cc (verify_omp_clauses_symbol_dups,
omp_verify_map_motion_clauses)
he code in openmp.cc is more convenient for the following patch that
introduces the 'resolve_omp_mapper_clauses' function.
2023-08-10 Julian Brown
gcc/fortran/
* gfortran.h (toc_directive): Move here.
(gfc_omp_instantiate_mappers, gfc_get_location): Add p
s. I will apply (to the og13 branch) shortly.
Julian Brown (5):
OpenMP: Move Fortran 'declare mapper' instantiation code
OpenMP: Reprocess expanded clauses after 'declare mapper'
instantiation
OpenMP: Introduce C_ORT_{,OMP_}DECLARE_MAPPER c_omp_region_type types
Open
This patch enables the c-c++-common/gomp/declare-mapper-3.c test for C.
This was seemingly overlooked in commit 393fd99c90e.
Tested with offloading to AMD GCN. I will apply (to og13) shortly.
2023-07-14 Julian Brown
gcc/testsuite/
* c-c++-common/gomp/declare-mapper-3.c: Enable for C
d, not e.g. the indices, lengths
or strides for array sections.
This patch reverses the order used in both omp-low.cc and the Fortran
front-end, so the order should now be correct for all supported base
languages.
Tested with offloading to AMD GCN. I will apply (to og13) shortly.
2023-07-14 Ju
o instead calculate a size for the array that encloses the
elements to be transferred, and is guaranteed to be entirely within the
array (user errors excepted).
Tested with offloading to NVPTX. I will apply (to og13) shortly.
2023-07-11 Julian Brown
gcc/
* omp-low.cc (lower
This patch adds expected "vector length" warnings to several tests
for NVPTX.
Tested with offloading to NVPTX. I will apply (to og13) shortly.
2023-07-11 Julian Brown
libgomp/
* testsuite/libgomp.oacc-c-c++-common/implicit-mapping-1.c: Add
expect
ng to AMD GCN. I will apply (to the og13 branch)
shortly.
2023-07-06 Julian Brown
gcc/c-family/
* c-common.h (c_omp_region_type): Add C_ORT_EXIT_DATA,
C_ORT_OMP_EXIT_DATA.
(c_omp_instantiate_mappers): Add region type parameter.
* c-omp.cc (omp_split_map
details of parsing necessarily differ for C,
but the general ideas are the same.
2023-07-03 Julian Brown
gcc/c/
* c-parser.cc (c_parser_braced_init): Disallow array-shaping operator
in braced init.
(c_parser_conditional_expression): Disallow array-shaping o
onsumed by
omp_target_memcpy_rect_worker. The method for doing this is described
in comments in the patch body.
2023-07-03 Julian Brown
gcc/fortran/
* trans-openmp.cc (gfc_omp_deep_map_kind_p): Handle
GOMP_MAP_{TO,FROM}_GRID, GOMP_MAP_GRID_{DIM,STRIDE}.
(gfc_trans_om
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-07-03 Julian Brown
gcc/c-family/
* c-common.h (expand_array_base, expand_com
MD GCN. I will apply shortly.
Julian Brown (5):
OpenMP: Fix "exit data" for array sections for ref-to-ptr components
OpenMP: Allow complete replacement of clause during map/to/from
expansion
OpenMP: Support strided and shaped-array updates for C++
OpenMP: Noncontiguous
ecognized as a single mapping group
as it should be. This patch fixes that.
(This is covered by a test case added in later patches in this series,
e.g. libgomp/testsuite/libgomp.c++/array-shaping-8.C.)
2023-07-03 Julian Brown
gcc/
* gimplify.cc (omp_get_attachment): Handle GOMP_MAP_D
ropriately transferred
to the offload target (see "OMP_MAP_POINTER_ONLY" and
gimplify.cc:omp_maybe_get_descriptor_from_ptr).
2023-06-30 Julian Brown
gcc/fortran/
* dump-parse-tree.cc (show_attr): Show omp_udm_artificial_var flag.
(show_omp_namelist): Support OMP_
This patch adds support for parsing general lvalues ("locator list item
types") for OpenMP "map", "to" and "from" clauses to the C front-end,
similar to the previously-posted patch for C++.
2023-06-30 Julian Brown
gcc/c/
* c-pretty-print.
This patch adds support for "declare mapper" directives (and the "mapper"
modifier on "map" clauses) for C.
2023-06-30 Julian Brown
gcc/c/
* c-decl.cc (c_omp_mapper_id, c_omp_mapper_decl, c_omp_mapper_lookup,
c_omp_extract_mapper_dire
fix to splay-tree
traversal in gimplify.cc:omp_instantiate_implicit_mappers, and this patch
omits the rearrangement of gimplify.cc:gimplify_{scan,adjust}_omp_clauses
that I separated out into its own patch and applied (to og13) already.
2023-06-30 Julian Brown
gcc/c-family/
* c-common.h (omp_mapper_
with DECL_VALUE_EXPR handling in
gimplify.cc, which this patch also fixes.
2023-06-30 Julian Brown
gcc/
* gimplify.cc (gimplify_scan_omp_clauses): Add note about
DECL_VALUE_EXPR handling for struct mapping nodes.
(gimplify_adjust_omp_clauses): Perform DECL_VALUE
tream previously:
https://gcc.gnu.org/pipermail/gcc-patches/2022-December/609031.html
(parts 7, 8, 9, 10 and 11), with adjustments necessary due to other
patches already on og13 and also a few follow-up fixes.
Tested with offloading to AMD GCN. I will apply (to og13) shortly.
Julian Brown (7):
This patch fixes a couple of minor merge/formatting errors.
2023-06-30 Julian Brown
gcc/fortran/
* parse.cc (decode_omp_directive): Add missing break.
gcc/
* gimplify.cc (gimplify_adjust_omp_clauses): Fix indentation.
---
gcc/fortran/parse.cc | 1 +
gcc/gimplify.cc | 4
em when allocated/deallocated on the host instead. Then, "declare
create" variables are implicitly turned into "present" clauses on in-scope
offload regions.
2023-06-16 Julian Brown
gcc/fortran/
* trans-openmp.cc (gfc_omp_finish_clause): Handle "declare create
"non-contiguous" dynamic array support, so the GOMP_MAP_NONCONTIG_ARRAY_P
macro has been adjusted to account for that.
This behaviour relates to upstream OpenACC issue 490 (not yet resolved).
2023-06-16 Julian Brown
gcc/
* gimplify.cc (gimplify_adjust_omp_clauses_1): Set
eimplements the "present" clause sorting code to avoid
another sorting pass on mapping nodes.
2023-06-16 Julian Brown
gcc/
* gimplify.cc (omp_segregate_mapping_groups): Handle "present" groups.
(gimplify_scan_omp_clauses): Use mapping group functionality to
"acc enter data").
This relates to upstream OpenACC issue 489 (not yet resolved).
2023-06-16 Julian Brown
gcc/fortran/
* trans-openmp.cc (gfc_omp_finish_clause): Treat implicitly-mapped
assumed-size arrays as zero-sized for OpenACC, rather than an e
pointer mapping nodes on equivalent "omp data" regions are
not needed, so remain suppressed during expansion.
2023-06-16 Julian Brown
gcc/c-family/
* c-omp.cc (c_omp_address_inspector::expand_array_base): Don't omit
pointer nodes for OpenACC.
gcc/
* gimplify.c
.
For now, multiple *constant* array indices are still supported (see
map-arrayofstruct-1.c). That could perhaps be addressed with a follow-up
patch, if necessary.
This version of the patch renumbers the GOMP_MAP_STRUCT_UNORD kind to
avoid clashing with the OpenACC "non-contiguous" dynamic
ot;.
To get a pointer attachment with "enter data", you can do, e.g:
#pragma omp target enter data map(s.ptr, s.ptr[0:10])
#pragma omp target
{
...implicit use of 's'...
}
That is, once the attachment has happened, implicit mapping of 's
T dv%arr <-- deleted (array section mapping)
GOMP_MAP_ATTACH_DETACH dv%arr%data
To accommodate for recent changes to mapping nodes made by
Tobias, this version of the patch avoids using GOMP_MAP_TO_PSET
for "exit data" directives, in favour of using the "correct"
GO
This reverts commit 3385743fd2fa15a2a750a29daf6d4f97f5aad0ae.
2023-06-16 Julian Brown
Revert:
2022-02-24 Chung-Lin Tang
gcc/c/ChangeLog:
* c-typeck.cc (handle_omp_array_sections): Add handling for
creating array-reference base-pointer attachment clause.
gcc/cp
This reverts commit c9cd2bac6a5127a01c6f47e5636a926ac39b5e21.
2023-06-16 Julian Brown
gcc/fortran/
Revert:
* trans-openmp.cc (gfc_omp_finish_clause): Guard addition of clauses for
pointers with DECL_P.
gcc/
Revert:
* gimplify.cc
This reverts commit a84b89b8f070f1efe86ea347e98d57e6bc32ae2d.
Relevant tests are temporarily disabled or XFAILed.
2023-06-16 Julian Brown
gcc/
Revert:
* gimplify.cc (oacc_array_mapping_info): New struct.
(gimplify_omp_ctx): Add decl_data_clause hash map
This patch trivially adds braces and reindents the
OMP_CLAUSE_TO/OMP_CLAUSE_FROM/OMP_CLAUSE__CACHE_ stanza in
c_finish_omp_clause and finish_omp_clause, in preparation for the
following patch (to clarify the diff a little).
2022-09-13 Julian Brown
gcc/c/
* c-typeck.cc
This reverts commit 72733f6e6f6ec1bb9884fea8bfbebd3de03d9374.
2023-06-16 Julian Brown
gcc/
Revert:
* gimplify.cc (gimplify_adjust_omp_clauses_1): Raise error for
assumed-size arrays in map clauses for Fortran/OpenMP.
* omp-low.cc (lower_omp_target): Set the
l apply shortly.
Thanks,
Julian
Julian Brown (14):
Revert "Assumed-size arrays with non-lexical data mappings"
Revert "Fix references declared in lexically-enclosing OpenACC data
region"
Revert "Fix implicit mapping for array slices on lexically-enclosing
dat
On Tue, 2 May 2023 12:29:22 +0200
Tobias Burnus wrote:
> On 29.04.23 12:57, Julian Brown wrote:
> > This patch moves several tests introduced by the following patch:
> >
> >https://gcc.gnu.org/pipermail/gcc-patches/2023-April/616939.html
> >
>
> I believe
-pointer attaches, and a case where a pointer
was incorrectly dereferenced. Tests are also adjusted for vector-length
warnings on nvidia accelerators.
Tested with offloading to nvptx. OK?
2023-04-29 Julian Brown
PR fortran/109622
gcc/fortran/
* trans-openmp.cc
cases that "happened to work" previously where
the user attaches/detaches a pointer to array using a descriptor, and
(I think!) the "_data" field has offset zero, hence the same address as
the descriptor as a whole.
Tested with offloading to nvptx. OK?
Thanks,
Julian
2023
arget_memcpy_rect_worker. The method for doing this is described
in comments in the patch body.
Tested with offloading to nvptx. OK?
2023-04-27 Julian Brown
gcc/fortran/
* openmp.cc (resolve_omp_clauses): Don't forbid "target update" with
non-unit stride.
tree code to represent OpenMP
array sections, and rejects array sections in certain expressions where
they make no sense (see new tests).
2022-12-22 Julian Brown
gcc/c/
* c-pretty-print.cc (c_pretty_printer::postfix_expression,
c_pretty_printer::expression): Add OMP_ARRA
refactoring done higher up this patch series.
2022-12-23 Julian Brown
gcc/c/
* c-decl.cc (c_omp_mapper_id, c_omp_mapper_decl, c_omp_mapper_lookup,
c_omp_extract_mapper_directive, c_omp_map_array_section,
c_omp_scan_mapper_bindings_r, c_omp_scan_mapper_bindings): New
er patch
named above.)
2022-11-30 Julian Brown
gcc/
* c-family/c-common.h (c_omp_region_type): Add C_ORT_ACC_TARGET.
(c_omp_address_inspector): Pass c_omp_region_type instead of "target"
bool.
* c-family/c-omp.cc (c_omp_address_inspector::expand_arra
on of the patch is rebased wrt. current-ish mainline and
refactorings that are now done higher up this patch series.
2022-12-23 Julian Brown
gcc/fortran/
* dump-parse-tree.cc (show_attr): Show omp_udm_artificial_var flag.
(show_omp_namelist): Support OMP_MAP_
#x27;t been attempted yet. (I think that means Jakub's concerns
about blow-up of element mappings won't be a problem until that's done.)
New tests added in {gcc,libgomp}/c-c++-common have been restricted to
C++ for now.
2022-11-30 Julian Brown
gcc/c-family/
*
.
For now, multiple *constant* array indices are still supported (see
map-arrayofstruct-1.c). That could perhaps be addressed with a follow-up
patch, if necessary.
2022-10-18 Julian Brown
gcc/
* gimplify.cc (extract_base_bit_offset): Add VARIABLE_OFFSET parameter.
(omp_
P_MAP_TO_PSET dv%arr <-- deleted (array section mapping)
GOMP_MAP_ATTACH_DETACH dv%arr%data
For struct components, the GOMP_MAP_TO_PSET mapping is turned into
GOMP_MAP_RELEASE at gimplify time for "exit data" directives.
2022-12-15 Julian Brown
gcc/fortran/
* dep
ot;.
To get a pointer attachment with "enter data", you can do, e.g:
#pragma omp target enter data map(s.ptr, s.ptr[0:10])
#pragma omp target
{
...implicit use of 's'...
}
That is, once the attachment has happened, implicit mapping of 's
This patch trivially adds braces and reindents the
OMP_CLAUSE_TO/OMP_CLAUSE_FROM/OMP_CLAUSE__CACHE_ stanza in
c_finish_omp_clause and finish_omp_clause, in preparation for the
following patch (to clarify the diff a little).
2022-09-13 Julian Brown
gcc/c/
* c-typeck.cc
tioned in that email. (Several of
the earlier patches are approved already, but dependent or semi-dependent
on other patches that haven't been yet.)
The last three patches have been retested (each, cumulatively) with
offloading to NVPTX.
OK?
Thanks,
Julian
Julian Brown (11):
OpenMP/
On Wed, 1 Jun 2022 11:39:19 -0700
Julian Brown wrote:
> This patch fixes a minor typo in dump output and a stray unicode
> character in a comment.
>
> This one probably counts as obvious.
FYI, I committed this one now.
Julian
On Thu, 15 Dec 2022 14:54:58 +
Julian Brown wrote:
> On Wed, 7 Dec 2022 17:31:20 +0100
> Tobias Burnus wrote:
>
> > Hi Julian,
> >
> > I think this patch is OK; however, at least for gimplify.cc Jakub
> > needs to have a second look.
>
> Thank
ives I found when adding a new test
(map-subarray-8.f90).
(I'm not sure if this patch fixes all the problems you saw previously
with "alloc", etc. for enter/exit data -- there might still be work to
do there.)
Re-tested with offloading to NVPTX. Does this look OK now?
Th
2-November/607543.html
though it might actually make more sense to commit the three patches
squashed together.
Tested with offloading to NVPTX. OK?
Thanks,
Julian
commit abb1e04f9ef93221ecd4292f43cc1ea901843766
Author: Julian Brown
Date: Thu Dec 8 13:31:01 2022 +
OpenMP: implicitly map
show an error in all four cases - but
> only once.
I believe this patch covers all the above cases (hopefully
appropriately generalised), at least for Fortran. I haven't attempted
to fix any missing cases for C, for now.
Re-tested with offloading to NVPTX (with a few supporting patches, as
before).
Does this look O
> Hi Julian,
>
> I had a first quick lock at this patch, I should have a closer look
> later. However, I stumbled over the following:
>
> On 20.10.22 18:14, Julian Brown wrote:
> > typedef struct gfc_symbol
> > {
> > ...
> >struct gfc_symbol *old_sym
sted patches
(in review or approved but waiting for other patches), i.e.:
OpenMP/OpenACC: Rework clause expansion and nested struct handling
OpenMP/OpenACC: Refine condition for when map clause expansion happens
OpenMP: Pointers and member mappings
and the patch following. OK?
2022-12-0
On Wed, 7 Dec 2022 15:54:42 +0100
Tobias Burnus wrote:
> Hi Julian,
>
> If I understand Deepak's comment (on OpenMP.org's omp-lang list, sorry
> it is a nonpublic list) correctly, the following wording implies that
> a 'from: s.w[z:4]' for a pointer 's.w' also implies a mapping of
> 's.w' - if '
nt offset runtime diagnostic"
https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603793.html
[unreviewed also -- "QoI" improvement to above]
"OpenMP: lvalue parsing for map/to/from clauses (C++)"
https://gcc.gnu.org/pipermail/gcc-patches/2022-November/605367.htm
er patch
named above.)
2022-11-30 Julian Brown
gcc/
* c-family/c-common.h (c_omp_region_type): Add C_ORT_ACC_TARGET.
(c_omp_address_inspector): Pass c_omp_region_type instead of "target"
bool.
* c-family/c-omp.cc (c_omp_address_inspector::expand_arra
offloading to NVPTX, and bootstrapped.
Julian Brown (~2):
OpenMP/OpenACC: Refine condition for when map clause expansion happens
[...]
OpenMP: C++ "declare mapper" support
--
2.29.2
On Wed, 2 Nov 2022 12:58:37 +0100
Jakub Jelinek via Fortran wrote:
> On Tue, Nov 01, 2022 at 09:50:38PM +0000, Julian Brown wrote:
> > > I think we should figure out when we should temporarily disable
> > > parser->omp_array_section_p = false;
> > > and resto
er" definitions), and special-case handling TREE_LIST becomes
necessary in more places, which starts to become unwieldy.
This patch has been rebased, but is largely unchanged from the last
version posted.
Tested alongside previous patch with offloading to NVPTX. OK?
Thanks,
Julian
2022-11-01
Hi,
On Tue, 24 May 2022 16:15:31 +0200
Jakub Jelinek via Fortran wrote:
> On Fri, Mar 18, 2022 at 09:26:47AM -0700, Julian Brown wrote:
> > --- a/gcc/cp/parser.cc
> > +++ b/gcc/cp/parser.cc
> > @@ -4266,6 +4266,9 @@ cp_parser_new (cp_lexer *lexer)
> >pars
ap(n) shared(n)").
Tested with offloading to NVPTX. OK?
2022-10-20 Julian Brown
gcc/fortran/
PR fortran/107214
* gfortran.h (gfc_symbol): Add data_mark, dev_mark, gen_mark and
reduc_mark bitfields.
* openmp.cc (resolve_omp_clauses): Use above bitfields t
On Tue, 18 Oct 2022 16:46:07 +0200
Thomas Schwinge wrote:
> Hi Julian!
>
> On 2022-10-14T13:38:56+0000, Julian Brown
> wrote:
> ..., but to my surprised, that did fire in one occasion:
>
> > --- a/libgomp/testsuite/libgomp.oacc-fortran/privatized-ref-2.f90
>
On Tue, 18 Oct 2022 03:39:03 -0700
Julian Brown wrote:
> This patch is an extension and rewrite/rethink of the following two
> patches:
(This one is already approved, apart from minor fixes, rebasing and
testsuite tweaks, so I don't think it needs re-review, but I'm holding
o
i)%arrptr%data
Always moving "[implicit]" full-array mappings after array-section
mappings (without that bit set) means that we'll avoid copying the whole
array unnecessarily -- even in cases where we can't prove that the array
accesses are the same.
Additionally, the next patch
.
For now, multiple *constant* array indices are still supported (see
map-arrayofstruct-1.c). That could perhaps be addressed with a follow-up
patch, if necessary.
2022-10-18 Julian Brown
gcc/
* gimplify.cc (extract_base_bit_offset): Add VARIABLE_OFFSET parameter.
(omp_
This patch trivially adds braces and reindents the
OMP_CLAUSE_TO/OMP_CLAUSE_FROM/OMP_CLAUSE__CACHE_ stanza in
c_finish_omp_clause and finish_omp_clause, in preparation for the
following patch (to clarify the diff a little).
2022-09-13 Julian Brown
gcc/c/
* c-typeck.cc
s) are not being used for multiple mappings -- for cases where
we can't determine if the elements are the same or not at compile time.
Retested with offloading to NVPTX. OK?
Julian Brown (4):
OpenMP/OpenACC: Reindent TO/FROM/_CACHE_ stanza in
{c_}finish_omp_clause
OpenMP/OpenACC: Rework c
output patterns adjusted to compensate.
Tested with offloading to AMD GCN. I will apply shortly (to og12).
2022-10-14 Julian Brown
gcc/
* omp-low.cc (oacc_privatization_candidate_p): Artificial vars are not
privatization candidates.
libgomp/
* testsuite/libgomp.o
now or in the future that this patch may be needed for.
Tested with offloading to AMD GCN. I will apply shortly (to og12).
2022-10-14 Julian Brown
gcc/
* config/gcn/gcn.cc (gcn_detect_incoming_pointer_arg): Any pointer
argument forces FLAT addressing mode, not just
poin
This patch trivially adds braces and reindents the
OMP_CLAUSE_TO/OMP_CLAUSE_FROM/OMP_CLAUSE__CACHE_ stanza in
c_finish_omp_clause and finish_omp_clause, in preparation for the
following patch (to clarify the diff a little).
2022-09-13 Julian Brown
gcc/c/
* c-typeck.cc
1 - 100 of 186 matches
Mail list logo