On 5/19/24 02:01, Tobias Burnus wrote:
I noticed that gfortran's coarray support did not link to the
http://www.opencoarrays.org/ >
[snip]
diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi
index 40e8e4a7cdd..78a2910b8d8 100644
--- a/gcc/fortran/invoke.texi
+++
This patch extends the mechanisms previously added to support dynamic
selectors in metavariant constructs to also apply to "declare
variant". The front-end mechanisms used to handle "declare variant"
via attributes attached to the function decls remain the same, but the
gimplifier now uses the
irective-5.f90: New.
* testsuite/libgomp.fortran/metadirective-6.f90: New.
Co-Authored-By: Kwok Cheung Yeung
Co-Authored-By: Sandra Loosemore
Co-Authored-By: Tobias Burnus
Co-Authored-By: Paul-Antoine Arras
---
gcc/fortran/decl.cc | 29 +
gcc/fortran/dump-parse-tre
The code and test case previously implemented the OpenMP 5.0 spec,
which said in section 2.3.1:
"For functions within a declare target block, the target trait is added
to the beginning of the set..."
In OpenMP 5.1, this was changed to
"For device routines, the target trait is added to the
After reimplementing late resolution of "declare variant" to use the
same mechanisms as metadirective, the declare_variant_alt and
calls_declare_variant_alt flags on struct cgraph_node are no longer
used by anything. For the purposes of marking functions that need
late resolution, the
-metadirective-8.C: New.
libgomp/ChangeLog
* testsuite/libgomp.c++/metadirective-template-1.C: New.
* testsuite/libgomp.c++/metadirective-template-2.C: New.
* testsuite/libgomp.c++/metadirective-template-3.C: New.
Co-Authored-By: Kwok Cheung Yeung
Co-Authored-By: Sandra
.
* testsuite/libgomp.c-c++-common/metadirective-4.c: New.
* testsuite/libgomp.c-c++-common/metadirective-5.c: New.
Co-Authored-By: Kwok Cheung Yeung
Co-Authored-By: Sandra Loosemore
---
.../c-c++-common/gomp/metadirective-1.c | 52 +
.../c-c++-common/gomp/metadirective-2.c
The OpenMP spec says:
"If trait-property any is specified in the kind trait-selector of the
device selector set or the target_device selector sets, no other
trait-property may be specified in the same selector set."
GCC was not previously enforcing this restriction and several testcases
included
y: Kwok Cheung Yeung
Co-Authored-By: Sandra Loosemore
---
gcc/c-family/c-common.h | 4 +-
gcc/c-family/c-gimplify.cc | 27 ++
gcc/c-family/c-omp.cc | 60 ++-
gcc/c-family/c-pragma.cc| 1 +
gcc
libgomp/ChangeLog
* libgomp.texi (OpenMP 5.0): Mark metadirective and declare variant
as implemented.
(OpenMP 5.1): Mark target_device as supported.
Add changed interaction between declare target and OpenMP context
and dynamic selector support.
plugin function.
Co-Authored-By: Kwok Cheung Yeung
Co-Authored-By: Sandra Loosemore
---
include/cuda/cuda.h | 2 +
libgomp/Makefile.am | 2 +-
libgomp/Makefile.in | 5 +-
libgomp/config/gcn/selector.c | 102 +++
libgomp/config
.
(tree_function_versioning): Likewise.
* tree-ssa-operands.cc: Include omp-general.h.
(operands_scanner::parse_ssa_operands): Handle
GIMPLE_OMP_METADIRECTIVE.
Co-Authored-By: Kwok Cheung Yeung
Co-Authored-By: Sandra Loosemore
Co-Authored-By: Marcel Vollweiler
---
gcc
re_variant): Update calls to
omp_check_context_selector and omp_context_selector_matches.
* types.def (BT_FN_BOOL_INT_CONST_PTR_CONST_PTR_CONST_PTR): New.
Co-Authored-By: Kwok Cheung Yeung
Co-Authored-By: Sandra Loosemore
---
gcc/Makefile.in | 2 +-
gcc/builtin
sed with follow-up
patches. This is already a large and complicated patch set, and I
hope that by submitting it for review early in stage 1 it will be
possible to get at least some parts of it committed in a timely manner
and reduce the burden of maintaining these patches out of tree.
-Sandra
Sandra Loos
OMP_TARGET
in the same way.
I think this patch is a candidate for backporting to the GCC 14 branch
once it is unfrozen after the release, too.
-SandraFrom 001d166819525dcef43b980298c2f85af77cd8ad Mon Sep 17 00:00:00 2001
From: Sandra Loosemore
Date: Mon, 22 Apr 2024 18:24:25 +
Subject: [PATC
I've committed the attached patch, per
https://gcc.gnu.org/pipermail/gcc/2024-April/243749.html
-SandraFrom a6afbd07ee3d669dc6ac396d68a99926a30818f9 Mon Sep 17 00:00:00 2001
From: Sandra Loosemore
Date: Mon, 15 Apr 2024 17:17:35 +
Subject: [committed, wwwdocs] gcc-14/changes.html: nios2
I've committed the attach patch, per
https://gcc.gnu.org/pipermail/gcc/2024-April/243749.html
-SandraFrom 71ba5a721749174815dec712d113f3afb251deda Mon Sep 17 00:00:00 2001
From: Sandra Loosemore
Date: Mon, 8 Apr 2024 14:36:08 +
Subject: [committed] Add nios2*-*-* to the list of obsolete
On 3/27/24 04:57, Jakub Jelinek wrote:
Hi!
We got internally a question about the Spec File syntax, misunderstanding
what is the literal syntax and what are the placeholder variables in
the syntax descriptions.
The following patch attempts to use @var{S} etc. instead of just S
to clarify it
On 3/5/24 13:33, Alejandro Colomar wrote:
Warn about the following:
char s[3] = "foo";
Initializing a char array with a string literal of the same length as
the size of the array is usually a mistake. Rarely is the case where
one wants to create a non-terminated character sequence from
On 3/1/24 17:29, Sandra Loosemore wrote:
On 3/1/24 08:23, Tobias Burnus wrote:
Aside: Shouldn't all the HTML documents start with a and
before
the table of content? Currently, it has:
Top (GNU libgomp)
and the body starts with
Short Table of Contents
I think this is a bug
On 3/1/24 08:23, Tobias Burnus wrote:
Not very often, but do I keep running into issues (fails, segfaults)
related to testing programs compiled with a GCC without offload
configured and then using the system libraries. - That's equivalent
to having the system compiler (or any offload compiler)
On 2/26/24 09:19, Joseph Myers wrote:
On Mon, 26 Feb 2024, Alejandro Colomar wrote:
The idea seems reasonable, but the patch needs documentation for the new
option in invoke.texi.
Thanks! Will do.
I don't see an obvious order in that file. Where would you put the
option? Do you want me
On 2/2/24 02:09, Andi Kleen wrote:
gcc/ChangeLog:
* doc/extend.texi: Document [[musttail]]
---
gcc/doc/extend.texi | 16
1 file changed, 16 insertions(+)
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 142e41ab8fbf..866f6c4a9fed 100644
---
Clifton
nds32 port Chung-Ju Wu
nds32 port Shiva Chen
nios2 port Chung-Lin Tang
-nios2 port Sandra Loosemore
+nios2 port Sandra Loosemore
nvptx port Tom de Vries
In spite of the plea "Please try to keep this file in ASCII collating
order" at the top of the file, the sorting of the entries for the
various -Wfoo options had increased in entropy. This made it hard to
correlate them against e.g. the list of options enabled by -Wall in
the manual (see
gcc/ChangeLog
PR c++/90463
* doc/invoke.texi (Warning Options): Correct lists of options
enabled by -Wall and -Wextra by checking against common.opt
and c-family/c.opt.
---
gcc/doc/invoke.texi | 79 -
1 file changed, 50
gcc/ChangeLog
PR c++/90464
* doc/invoke.texi (Warning Options): Document that -Wunused-parameter
isn't enabled by -Wunused unless -Wextra is provided, and that
-Wunused does enable -Wunused-const-variable=1 for C. Clarify that
-Wunused doesn't enable
gcc/ChangeLog
PR c/109708
* doc/invoke.texi (Warning Options): Fix broken example and
clean up/reorganize the others. Also describe what the short-form
options mean.
---
gcc/doc/invoke.texi | 56 +++--
1 file changed, 34
gcc/ChangeLog
PR c/102998
* doc/invoke.texi (Option Summary): Add -Warray-parameter.
(Warning Options): Correct/edit discussion of -Warray-parameter
to make the first example less confusing, and fill in missing info.
---
gcc/doc/invoke.texi | 24
gcc/ChangeLog
PR c/110029
* doc/extend.texi (Common Variable Attributes): Explain what
happens when multiple variables with cleanups are in the same scope.
---
gcc/doc/extend.texi | 5 +
1 file changed, 5 insertions(+)
diff --git a/gcc/doc/extend.texi
gcc/ChangeLog
PR ipa/108470
* doc/extend.texi (Common Function Attributes): Document that
noinline also disables some interprocedural optimizations and
improve flow to the part about using inline asm instead to
disable calls from being optimized away
On 1/18/24 12:41, Sandra Loosemore wrote:
From: Brian Inglis
The -mcygwin option for x86 Windows was removed in 2010 by commit
3edeb30d044a4852881c34229e618b34f95b0d9e, but this reference was
overlooked.
gcc/ChangeLog
PR target/108521
* doc/invoke.texi (Option Summary): Remove
From: Brian Inglis
The -mcygwin option for x86 Windows was removed in 2010 by commit
3edeb30d044a4852881c34229e618b34f95b0d9e, but this reference was
overlooked.
gcc/ChangeLog
PR target/108521
* doc/invoke.texi (Option Summary): Remove -mcygwin and -mno-cygwin
from x86
In r5-7698-g8648c55f3b703a I accidentally removed the documentation of
GCC's special interpretation of const/volatile qualifiers on functions
from the function attributes section, thinking this was just a
bit-rotten leftover from old versions of GCC. PR107942 points out
that this functionality is
These warnings are enabled by default, thus the manual should document the
-no form instead of the positive form.
gcc/ChangeLog
PR middle-end/110847
* doc/invoke.texi (Option Summary): Document negative forms of
-Wtsan and -Wxor-used-as-pow.
(Warning Options):
These sections used to be alphabetized, but when I was working on the
fix for PR111659 I noticed documentation for some newer attributes had
been inserted at random places in the tables instead of maintaining
alphabetical order. There's no change to content here, just moving
blocks of text
gcc/ChangeLog
PR middle-end/111659
* doc/extend.texi (Common Variable Attributes): Fix long lines
in documentation of strict_flex_array + other minor copy-editing.
Add a cross-reference to -Wstrict-flex-arrays.
* doc/invoke.texi (Option Summary): Fix
These options were categorized as C++ options, but they apply to all
C-family languages.
gcc/ChangeLog
PR c/111693
* doc/invoke.texi (Option Summary): Move -Wuseless-cast
from C++ Language Options to Warning Options. Add entry for
-Wuse-after-free.
(C++
gcc/Changelog
PR target/112973
* doc/extend.texi (BPF Built-in Functions): Wrap long lines and
give the section a light copy-editing pass.
---
gcc/doc/extend.texi | 38 --
1 file changed, 24 insertions(+), 14 deletions(-)
diff --git
On 1/14/24 16:15, Tobias Burnus wrote:
+@node omp_target_memcpy
+@subsection @code{omp_target_memcpy} -- Copy data between devices
+@table @asis
+@item @emph{Description}:
+This routine tests copies @var{length} of bytes of data from the device
+identified by device number @var{src_device_num}
On 1/14/24 07:26, Tobias Burnus wrote:
This documents two more OpenMP (5.0) routines, omp_pause_resource and
omp_pause_resource_all.
Comments, remarks, suggestions - to the patch or the documentation in general?
I have some minor nits about typos and copy-editing. I assume the formatting
On 1/10/24 14:28, Jonny Grant wrote:
>
> 2024-01-10 Jonathan Grant
> gcc/ChangeLog:
>* doc/extend.texi: Update builtin example for __builtin_FILE
> __builtin_LINE __builtin_FUNCTION.
>
>
>
>>From 66290eb477dd1a99310ad9972c45391c2a87c1c7 Mon Sep 17 00:00:00 2001
> From: Jonathan Grant
>
Exception handling on nios2-linux-gnu with -fpic has been broken since
revision 790854ea7670f11c14d431c102a49181d2915965, "Use _dl_find_object
in _Unwind_Find_FDE". For whatever reason, this doesn't work on nios2.
Nios2 uses the GOT address as the base for DW_EH_PE_datarel
relocations in PIC;
/metadirective-3.c: New.
* testsuite/libgomp.c-c++-common/metadirective-4.c: New.
* testsuite/libgomp.c-c++-common/metadirective-5.c: New.
Co-Authored-By: Sandra Loosemore
---
.../c-c++-common/gomp/metadirective-1.c | 52 +
.../c-c++-common/gomp/metadirective-2.c
libgomp/ChangeLog
* libgomp.texi (OpenMP 5.0): Mark metadirective as implemented.
(OpenMP 5.1): Mark target_device as partially supported.
(OpenMP 5.2): Mark otherwise clause as supported, note that
default is also still accepted.
---
libgomp/libgomp.texi | 15
stant user condition.
(c_parser_omp_context_selector_specification): Add metadirective_p
flag.
(c_parser_finish_omp_declare_variant): Adjust call.
(analyze_metadirective_body): New.
(c_parser_omp_metadirective): New.
gcc/testsuite/ChangeLog
* gcc.dg/gomp/metadirective-1.c: New.
Co
.
Co-Authored-By: Sandra Loosemore
---
gcc/cp/parser.cc | 524 +-
gcc/cp/parser.h | 7 +
gcc/cp/pt.cc | 118
.../g++.dg/gomp/attrs-metadirective-1.C | 40 ++
.../g++.dg/gomp
New.
* testsuite/libgomp.fortran/metadirective-4.f90: New.
* testsuite/libgomp.fortran/metadirective-5.f90: New.
* testsuite/libgomp.fortran/metadirective-6.f90: New.
Co-Authored-By: Sandra Loosemore
Co-Authored-By: Tobias Burnus
Co-Authored-By: Paul
From: Kwok Cheung Yeung
This patch implements the libgomp runtime support for the dynamic
target_device selector via the GOMP_evaluate_target_device function.
include/ChangeLog
* cuda/cuda.h (CUdevice_attribute): Add definitions for
CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR
.
(operands_scanner::parse_ssa_operands): Handle
GIMPLE_OMP_METADIRECTIVE.
Co-Authored-By: Sandra Loosemore
Co-Authored-By: Marcel Vollweiler
---
gcc/cgraph.h | 3 +
gcc/cgraphclones.cc| 1 +
gcc/gimple-low.cc | 36
gcc/gimple-pretty-print.cc | 64
or_patches to pass additional arguments.
* types.def (BT_FN_BOOL_INT_CONST_PTR_CONST_PTR_CONST_PTR): New.
Co-Authored-By: Sandra Loosemore
---
gcc/Makefile.in | 2 +-
gcc/builtin-types.def | 2 +
gcc/c/c-parser.cc | 4 +-
gcc/cp/decl.cc | 2
++ testcases for metadirectives
OpenMP: Fortran front-end support for metadirectives.
Sandra Loosemore (1):
OpenMP: Update documentation of metadirective implementation status.
gcc/Makefile.in | 2 +-
gcc/builtin-types.def | 2 +
gcc/c
gcc/ChangeLog
* omp-general.cc: Fix comment typos and misplaced/confusing
comments. Delete redundant include of omp-general.h.
---
gcc/omp-general.cc | 21 +
1 file changed, 9 insertions(+), 12 deletions(-)
diff --git a/gcc/omp-general.cc b/gcc/omp-general.cc
On 1/3/24 11:31, Tobias Burnus wrote:
Another small step in my side project of documenting all OpenMP routines in
libgomp.texi
Here, only 'omp_display_env' is added. (New since OpenMP 5.1 but since a long
time in GCC,
some fineprint in both the implementation and in the documentation is based
This testcase was failing on uses of int8_t, int64_t, etc without
including .
gcc/testsuite/ChangeLog
* g++.dg/analyzer/placement-new-size.C: Include . Also
add missing newline to end of file.
---
gcc/testsuite/g++.dg/analyzer/placement-new-size.C | 3 ++-
1 file changed, 2
On 12/6/23 22:11, Ken Matsui wrote:
This patch series optimizes type traits compilation performance by
implementing built-in type traits and using them in libstdc++.
I'm finding that all the new g++.dg/ext/is_*.C testcases added by this patch
series are failing due
to the "#include ". If
With the change to use enumerators instead of strings to represent
context selector and selector-set names, the default tree-list output
for dumping selectors is less helpful for debugging and harder to use
in test cases. This patch adds support for dumping context selectors
using syntax similar
This patch introduces enumerators to represent trait-set names and
trait names, which makes it easier to use tables to control other
behavior and for switch statements to dispatch on the tags. The tags
are stored in the same place in the TREE_LIST structure (OMP_TSS_ID or
OMP_TS_ID) and are
On 12/12/23 05:05, Tobias Burnus wrote:
Hi Sandra,
On 07.12.23 16:52, Sandra Loosemore wrote:
This patch introduces enumerators to represent trait-set names and
trait names, which makes it easier to use tables to control other
behavior and for switch statements to dispatch on the tags
On 12/4/23 00:36, Jakub Jelinek wrote:
On Fri, Dec 01, 2023 at 10:43:57AM -0700, Sandra Loosemore wrote:
On 12/1/23 10:33, Jakub Jelinek wrote:
Shall we tweak that somehow? If the argument names are unimportant, perhaps
it is fine to leave that out, but shouldn't we always use @var
This patch introduces enumerators to represent trait-set names and
trait names, which makes it easier to use tables to control other
behavior and for switch statements to dispatch on the tags. The tags
are stored in the same place in the TREE_LIST structure (OMP_TSS_ID or
OMP_TS_ID) and are
This patch adds "hpe" to the known properties for the "vendor" selector,
and support for "acquire" and "release" for "atomic_default_mem_order".
gcc/ChangeLog
* omp-general.cc (vendor_properties): Add "hpe".
(atomic_default_mem_order_properties): Add "acquire" and "release".
This patch hides the underlying nested TREE_LIST structure of context
selectors behind accessor macros that have more meaningful names than
the generic TREE_PURPOSE/TREE_VALUE accessors. There is a slight
change to the representation in that the score expression in
trait-selectors has a
Previously, name-list properties specified as identifiers were stored
in the TREE_PURPOSE/OMP_TP_NAME slot, while those specified as strings
were stored in the TREE_VALUE/OMP_TP_VALUE slot. This patch puts both
representations in OMP_TP_VALUE with a magic cookie in OMP_TP_NAME.
gcc/ChangeLog
instead of the translate phase, where I'd had it before.
I think this is a cleaner design anyway as it allows getting rid of the
duplicate set of allowed names in the Fortran front end and sharing the
same tables used everywhere else.
-Sandra
Sandra Loosemore (4):
OpenMP: Introduce accessor
On 12/1/23 10:33, Jakub Jelinek wrote:
On Fri, Dec 01, 2023 at 10:04:38AM -0700, Sandra Loosemore wrote:
Thanks, this looks good to me. I think I also noticed this weird formatting
in passing recently when I was looking for something else and did not have
time to track it down myself
On 12/1/23 03:26, Jakub Jelinek wrote:
Hi!
In
https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html#index-_005f_005fbuiltin_005fstdc_005fbit_005ffloor>>
I've noticed that while e.g. __builtin_stdc_bit_floor builtin is properly
rendered in bold and bigger size, for the
This patch introduces enumerators to represent trait-set names and
trait names, which makes it easier to use tables to control other
behavior and for switch statements to dispatch on the tags. The tags
are stored in the same place in the TREE_LIST structure (OMP_TSS_ID or
OMP_TS_ID) and are
On 11/19/23 02:21, Sandra Loosemore wrote:
This patch introduces enumerators to represent trait-set names and
trait names, which makes it easier to use tables to control other
behavior and for switch statements to dispatch on the tags. The tags
are stored in the same place in the TREE_LIST
This patch introduces enumerators to represent trait-set names and
trait names, which makes it easier to use tables to control other
behavior and for switch statements to dispatch on the tags. The tags
are stored in the same place in the TREE_LIST structure (OMP_TSS_ID or
OMP_TS_ID) and are
like to get feedback on the general direction before continuing too
much farther with this, and adapting the metadirective patches to match it.
-Sandra
Sandra Loosemore (3):
OpenMP: Introduce accessor macros and constructors for context
selectors.
OpenMP: Unify representation of name-list prope
This patch hides the underlying nested TREE_LIST structure of context
selectors behind accessor macros that have more meaningful names than
the generic TREE_PURPOSE/TREE_VALUE accessors. There is a slight
change to the representation in that the score expression in
trait-selectors has a
Previously, name-list properties specified as identifiers were stored
in the TREE_PURPOSE/OMP_TP_NAME slot, while those specified as strings
were stored in the TREE_VALUE/OMP_TP_VALUE slot. This patch puts both
representations in OMP_TP_VALUE with a magic cookie in OMP_TP_NAME.
gcc/ChangeLog
On 10/15/23 04:42, Tobias Burnus wrote:
Updated patch attached.
This version looks OK to me.
-Sandra
On 10/15/23 04:40, Tobias Burnus wrote:
Hi Sandra,
thanks for the comments.
On 15.10.23 00:46, Sandra Loosemore wrote:
+Semicolon separated list of dynamic libraries to be loaded as
profiling library.
s/Semicolon separated/Semicolon-separated/
There's also a semantic issue with "
On 10/15/23 04:39, Tobias Burnus wrote:
@@ -905,8 +905,8 @@ For @code{omp_sched_auto} the @var{chunk_size} argument is
ignored.
@subsection @code{omp_get_schedule} -- Obtain the runtime scheduling method
@table @asis
@item @emph{Description}:
-Obtain the runtime scheduling method. The
On 10/14/23 13:51, Tobias Burnus wrote:
@@ -5003,6 +5001,17 @@ The variable @env{GCC_ACC_NOTIFY} is used for diagnostic
purposes.
@node ACC_DEVICE_TYPE
@section @code{ACC_DEVICE_TYPE}
@table @asis
+@item @emph{Description}:
+Control the default device type to use when executing compute
On 10/14/23 13:43, Tobias Burnus wrote:
When browsing libgomp doc, I came across
https://gcc.gnu.org/onlinedocs/libgomp/Enabling-OpenMP.html>>
First, I found especially the Fortran part difficult to read. Secondly,
it missed the C++ attribute syntax. And I also missed a reference to
On 10/12/23 10:37, Tobias Burnus wrote:
@@ -3133,15 +3134,25 @@ variable can be set to one of three values -
@code{MANDATORY}, @code{DISABLED}
or @code{DEFAULT}.
If set to @code{MANDATORY}, the program will terminate with an error if
-the offload device is not present or is not supported.
On 10/12/23 04:53, Tobias Burnus wrote:
libgomp.texi: Note to 'Memory allocation' sect and missing mem-memory routines
This commit completes the documentation of the OpenMP memory-management
routines, except for the unimplemented TR11 additions. It also makes clear
in the 'Memory allocation'
gcc/ChangeLog:
* doc/extend.texi (Function Attributes): Mention standard attribute
syntax.
(Variable Attributes): Likewise.
(Type Attributes): Likewise.
(Attribute Syntax): Likewise.
---
gcc/doc/extend.texi | 74
On 10/3/23 08:19, Joseph Myers wrote:
On Mon, 2 Oct 2023, Sandra Loosemore wrote:
Going beyond that, though, I think we should also document that the standard
syntax is now the preferred way to do it, and change the examples (except for
the parts documenting the old syntax) to use the new
When I was working on something else recently, I realized that the GCC manual
had nothing in its attributes section saying that you could use the various
documented GCC extension attributes with C/C++ standard attribute syntax too,
or how (you have to use the "gnu::" prefix); I ended up finding
(Optimize Options): Document the new parameters.
Co-Authored-By: Sandra Loosemore
---
gcc/Makefile.in|1 +
gcc/doc/invoke.texi|9 +
gcc/gimple-pretty-print.cc |6 +
gcc/gimple.h |1 +
gcc/gimplify.cc| 65 +-
gcc/omp-general.cc
This series of patches is an update of Frederik's previous loop
transformation patch set, previously posted here:
https://gcc.gnu.org/pipermail/gcc-patches/2023-March/614564.html
that has been updated to resolve conflicts with my set of
imperfectly-nested loops patches and other changes on
From: Frederik Harwath
OMP_CLAUSE_TILE will be used for the OpenMP 5.1 loop transformation
construct "omp tile".
gcc/ChangeLog:
* tree-core.h (enum omp_clause_code): Rename OMP_CLAUSE_TILE.
* tree.h (OMP_CLAUSE_TILE_LIST): Rename to ...
(OMP_CLAUSE_OACC_TILE_LIST): ...
xed an ICE in the newly-added
tests for that. This is clearly just a bug in existing code unrelated to the
new functionality, though.
-Sandra
commit 4c3db8cf0611fa99886d698b62102ba15058776f
Author: Sandra Loosemore
Date: Wed Sep 27 03:21:43 2023 +
OpenMP: GIMPLE_OMP_STRUCTURED_BLO
On 9/7/23 02:56, Tobias Burnus wrote:
Main reason was to fix an ICV value; as collateral change, I also added
documentation for some of the memory-management functions.
Comments, suggestions? If not, I will commit it soon.
I only have one nit:
+@node omp_destroy_allocator
+@subsection
This ICE was caused by an invalid assumption that all BIND_EXPRs have
a non-null BIND_EXPR_BLOCK. In C++ these do exist and are used for
temporaries introduced in expressions that are not full-expressions.
Since they have no block to fix up, the traversal can just ignore
these tree nodes.
On 8/31/23 05:27, Iain Sandoe wrote:
Hi FX,
+Sandra
On 31 Aug 2023, at 12:13, FX Coudert wrote:
This patch homogenizes to some extent the use of “Mac OS X” or “OS X” or “Mac
OS” in the gcc/ folder to “macOS”, which is the modern way of writing it. It is
not a global replacement though,
OpenMP 5.0 removed the restriction that multiple collapsed loops must
be perfectly nested, allowing "intervening code" (including nested
BLOCKs) before or after each nested loop. In GCC this code is moved
into the inner loop body by the respective front ends.
In the Fortran front end, most of
gcc/testsuite/ChangeLog
* c-c++-common/gomp/imperfect-attributes.c: New.
* c-c++-common/gomp/imperfect-badloops.c: New.
* c-c++-common/gomp/imperfect-blocks.c: New.
* c-c++-common/gomp/imperfect-extension.c: New.
* c-c++-common/gomp/imperfect-gotos.c: New.
OpenMP 5.0 removed the restriction that multiple collapsed loops must
be perfectly nested, allowing "intervening code" (including nested
BLOCKs) before or after each nested loop. In GCC this code is moved
into the inner loop body by the respective front ends.
This patch changes the C front end
libgomp/ChangeLog
* libgomp.texi (OpenMP 5.0): Imperfectly-nested loops are done.
---
libgomp/libgomp.texi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi
index 5c91163893f..4aad8cc52f4 100644
--- a/libgomp/libgomp.texi
+++
OpenMP 5.0 removed the restriction that multiple collapsed loops must
be perfectly nested, allowing "intervening code" (including nested
BLOCKs) before or after each nested loop. In GCC this code is moved
into the inner loop body by the respective front ends.
This patch changes the C++ front end
In order to detect invalid jumps in and out of intervening code in
imperfectly-nested loops, the front ends need to insert some sort of
marker to identify the structured block sequences that they push into
the inner body of the loop. The error checking happens in the
diagnose_omp_blocks pass,
. Part 5 (Fortran) also includes the whitespace
fix Tobias pointed out, and part 6 (documentation) is new.
-Sandra
Sandra Loosemore (6):
OpenMP: Add OMP_STRUCTURED_BLOCK and GIMPLE_OMP_STRUCTURED_BLOCK.
OpenMP: C front end support for imperfectly-nested loops
OpenMP: C++ support for imperfectly
On 8/22/23 07:23, Jakub Jelinek wrote:
diff --git a/gcc/testsuite/c-c++-common/goacc/collapse-1.c
b/gcc/testsuite/c-c++-common/goacc/collapse-1.c
index 11b14383983..0feac8f8ddb 100644
--- a/gcc/testsuite/c-c++-common/goacc/collapse-1.c
+++ b/gcc/testsuite/c-c++-common/goacc/collapse-1.c
@@
c/c-family/ChangeLog.omp
@@ -1,3 +1,7 @@
+2023-08-18 Sandra Loosemore
+
+ * c-omp.cc (c_omp_directives): Uncomment "declare mapper" entry.
+
2023-08-10 Julian Brown
* c-common.h (c_omp_region_type): Add C_ORT_UPDATE and C_ORT_OMP_UPDATE
diff --git a/gcc/c-family/c-omp.cc b/g
create mode 100644
gcc/testsuite/g++.dg/gomp/loop-transforms/attrs-unroll-inner-3.C
diff --git a/gcc/cp/ChangeLog.omp b/gcc/cp/ChangeLog.omp
index 1b2d71422d8..fe5ef67a7ad 100644
--- a/gcc/cp/ChangeLog.omp
+++ b/gcc/cp/ChangeLog.omp
@@ -1,3 +1,18 @@
+2023-08-18 Sandra Loosemore
1 - 100 of 1102 matches
Mail list logo