> -Original Message-
> From: Richard Sandiford [mailto:richard.sandif...@arm.com]
> Sent: Tuesday, July 28, 2020 1:33 AM
> To: Zhongyunde
> Cc: gcc-patches@gcc.gnu.org; Yangfei (Felix)
> Subject: Re: [PATCH PR95696] regrename creates overlapping register
> allocations for vliw
>
> Zhong
On Thu, Jul 30, 2020 at 8:55 PM Patrick Palka via Gcc-patches
wrote:
>
> On Thu, 30 Jul 2020, Jason Merrill wrote:
>
> > On 7/30/20 9:49 AM, Patrick Palka wrote:
> > > On Thu, 30 Jul 2020, Jason Merrill wrote:
> > >
> > > > On 7/21/20 3:07 PM, Patrick Palka wrote:
> > > > > In the testcase from th
This patch adds functions defined in the section 5.5.5 Thread Handles in
OpenMP API Specification 5.0. It currently omits CUDA support, and
hard-codes the offset and sizeof values. I would appreciate any
suggestions.
2020-07-30 Tony Sim
libgomp/ChangeLog:
* Makefile.am (libgompd_la_SO
Hi!
As I explained in the other mail, please split this into two: one the
core thing, adding the flag and all code generation (maybe using some
new macros or such for section selection, for example); and the second
patch hooking it up and enabling this by default for powerpc64* (or only
for powerp
Hi!
On Thu, Jul 30, 2020 at 04:35:57AM -0400, David Edelsohn wrote:
> The purpose should not be to exclude AIX. If there is no fundamental
> limitation with use of the new tablejump design on AIX then the patch
> is not acceptable without AIX support.
The patch should work on all subtargets. It
IIRC, I didn't use this approach originally because I wanted to avoid
the additional dynamic instruction. But I agree that code size is the
more important metric for users of this feature. LGTM.
On Thu, Jul 30, 2020 at 1:56 PM Maciej W. Rozycki via Gcc-patches
wrote:
>
> Rewrite code sequences
The GCN backend uses tree nodes like MEM((__lds TYPE *) )
for reduction temporaries. Unlike e.g. var decls and SSA names, these
nodes cannot be shared during gimplification, but are so in some
circumstances. This is detected when appropriate --enable-checking
options are used. This patch unshares s
This test appears to have been missed on the og10 branch when enabling
worker partitioning support for AMD GCN. It was still assuming num_workers
was fixed at 1.
Tested with offloading to AMD GCN. I will apply shortly.
Thanks,
Julian
2020-07-30 Julian Brown
libgomp/
* testsuite/libg
This is an obvious cleanup to get rid of an unnecessary temporary
variable.
I will apply shortly to the og10 branch.
Thanks,
Julian
2020-07-30 Julian Brown
gcc/
* config/gcn/gcn-tree.c (gcn_goacc_reduction_teardown): Remove useless
temporary variable "decl".
---
gcc/ChangeL
On 7/30/20 10:57 AM, Jakub Jelinek wrote:
On Thu, Jul 30, 2020 at 10:16:46AM -0400, Jason Merrill wrote:
It checks the various std::bit_cast requirements, when not constexpr
evaluated acts pretty much like VIEW_CONVERT_EXPR of the source argument
to the destination type and the hardest part is o
Hi,
This patch fixes an assert that is triggered at run-time due to the hash
of an associative array literal not matching a non-literal with the same
contents. Associative array literals are now filled using memset()
prior to usage, with LTR evalution of side-effects enforced.
Bootstrapped and r
Hi,
This patch fixes an ICE in the D front-end in the va_arg intrinsic
functions. Both intrinsics did not handler the case where the va_list
object comes from a ref parameter.
Bootstrapped and regression tested on x86_64-linux-gnu, committed to
mainline.
Regards
Iain.
---
gcc/d/ChangeLog:
Hi,
This patch adds the -Wvarargs warning flag to the D front-end. The
language has C-style variadic functions and va_start/va_arg, so it is
right to also have warnings for inproper use.
Bootstrapped and regression tested on x86_64-linux-gnu, committed to
mainline.
Regards
Iain
---
gcc/d/Chang
Rewrite code sequences throughout the 64-bit RISC-V `__riscv_save_*'
routines replacing `li t1, -48', `li t1, -64', and `li t1, -80',
instructions, which do not have a compressed encoding, respectively with
`li t1, 3', `li t1, 4', and `li t1, 4', which do, and then adjusting the
remaining code
When compiled as C++20 the COW std::string fails due to assuming that
the allocator always defines size_type and difference_type. That has
been incorrect since C++11, but we got away with it for specializations
using std::allocator until those members were removed in C++20.
libstdc++-v3/ChangeLog:
On Thu, 30 Jul 2020 11:53:10 +0200
Thomas Schwinge wrote:
> Hi Julian, Tobias!
>
> On 2020-07-27T15:33:41+0100, Julian Brown
> wrote:
> > You can still get a "leak" if you try to attach a
> > synthesized/temporary array descriptor that goes out of scope
> > before the pointed-to data it refers
On 7/30/20 12:25 PM, Martin Sebor wrote:
On 7/29/20 2:27 PM, Jason Merrill wrote:
On 7/23/20 3:08 PM, Martin Sebor wrote:
Another test case added to the bug since I posted the patch shows
that the no-warning bit set by the C++ front end is easily lost
during early folding, triggering the -Wnonu
On Thu, 30 Jul 2020, Jason Merrill wrote:
> On 7/30/20 9:49 AM, Patrick Palka wrote:
> > On Thu, 30 Jul 2020, Jason Merrill wrote:
> >
> > > On 7/21/20 3:07 PM, Patrick Palka wrote:
> > > > In the testcase from the PR we are seeing excessive memory use (> 5GB)
> > > > during constexpr evaluation,
On 7/30/20 12:15 PM, will schmidt wrote:
On Mon, 2020-07-27 at 09:14 -0500, Bill Schmidt wrote:
From: Bill Schmidt
2020-07-26 Bill Schmidt
* config/rs6000/rs6000-builtin-new.def: Add power9,
power9-vector, and power9-64 builtins.
---
gcc/config/rs6000/rs6000-builtin-new.d
On 29/07/20 11:33 +0200, François Dumont via Libstdc++ wrote:
+using type4 = std::unordered_set, std::equal_to,
+ not_noexcept_dflt_cons_alloc>>;
A couple of these tests use the wrong allocator type, which means they
fail when compiled as C++20.
Fixed with this
"yangyang (ET)" writes:
>> -Original Message-
>> From: Richard Sandiford [mailto:richard.sandif...@arm.com]
>> Sent: Tuesday, July 21, 2020 2:49 AM
>> To: yangyang (ET)
>> Cc: gcc-patches@gcc.gnu.org
>> Subject: Re: [PATCH PR96195] aarch64: ICE during GIMPLE pass:vect
>>
>> Sorry for the
On Mon, 2020-07-27 at 09:14 -0500, Bill Schmidt wrote:
> From: Bill Schmidt
>
> 2020-07-26 Bill Schmidt
>
> * config/rs6000/rs6000-builtin-new.def: Add power9,
> power9-vector, and power9-64 builtins.
> ---
> gcc/config/rs6000/rs6000-builtin-new.def | 354
> ++
Hi Cooper:
Thanks for your patch! committed to trunk.
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=c931e8d5a96463427040b0d11f9c4352ac22b2b0
On Wed, Jul 29, 2020 at 8:34 PM Cooper Qu via Gcc-patches
wrote:
>
> Sorry for later replay, I will add testcases on a following patch if the
> patch is a
On 7/29/20 2:27 PM, Jason Merrill wrote:
On 7/23/20 3:08 PM, Martin Sebor wrote:
Another test case added to the bug since I posted the patch shows
that the no-warning bit set by the C++ front end is easily lost
during early folding, triggering the -Wnonull again despite
the suppression. The att
Hi,
This patch breaks out all private functions from ExprVisitor into free
standing static functions. None of them need access to the context
pointer of the visitor class.
Bootstrapped and regression tested on x86_64-linux-gnu, and committed to
mainline.
Regards
Iain
---
gcc/d/ChangeLog:
Hi,
This patch adds three codegen helper functions for generating calls to
memcmp, memcpy and memset. All parts of the front-end have been updated
to call them instead of doing it themselves.
Bootstrapped and regression tested on x86_64-linux-gnu, and committed to
mainline.
Regards
Iain
---
gc
Hi,
This patch implements a small optimization to the code generation of
simple array assignments, inlining the array bounds checking code so
there is no reliance on the library routine _d_arraycopy(), which also
deals with postblit and copy constructors for non-trivial arrays.
Bootstrapped and r
On 30/07/20 15:29 +0100, Jonathan Wakely wrote:
On 12/05/19 21:22 +, Andrew Luo wrote:
It's been a while, but thought I'd check in again now that GCC 9 has been
branched, and master is now on GCC 10.
I've merged my changes with the latest code and attached a diff... Let me know
if there's
The COW string doesn't accept const_iterator arguments in insert and
related member functions. Pass a mutable iterator instead.
libstdc++-v3/ChangeLog:
* testsuite/20_util/from_chars/4.cc: Pass non-const iterator
to string::insert.
Tested x86_64-linux, committed to trunk.
commit
On Thu, Jul 30, 2020 at 10:16:46AM -0400, Jason Merrill wrote:
> > It checks the various std::bit_cast requirements, when not constexpr
> > evaluated acts pretty much like VIEW_CONVERT_EXPR of the source argument
> > to the destination type and the hardest part is obviously the constexpr
> > evalua
On 7/30/20 9:49 AM, Patrick Palka wrote:
On Thu, 30 Jul 2020, Jason Merrill wrote:
On 7/21/20 3:07 PM, Patrick Palka wrote:
In the testcase from the PR we are seeing excessive memory use (> 5GB)
during constexpr evaluation, almost all of which is due to the call to
decl_constant_value in the V
On 12/05/19 21:22 +, Andrew Luo wrote:
It's been a while, but thought I'd check in again now that GCC 9 has been
branched, and master is now on GCC 10.
I've merged my changes with the latest code and attached a diff... Let me know
if there's any thoughts on this.
Well I failed to get aro
On 7/18/20 2:50 PM, Jakub Jelinek wrote:
Hi!
The following patch adds __builtin_bit_cast builtin, similarly to
clang or MSVC which implement std::bit_cast using such an builtin too.
Great!
It checks the various std::bit_cast requirements, when not constexpr
evaluated acts pretty much like VI
On Thu, 30 Jul 2020, Jason Merrill wrote:
> On 7/21/20 3:07 PM, Patrick Palka wrote:
> > In the testcase from the PR we are seeing excessive memory use (> 5GB)
> > during constexpr evaluation, almost all of which is due to the call to
> > decl_constant_value in the VAR_DECL/CONST_DECL branch of
>
Hello.
What's the reason for sending the same patch multiple times
from a different sender?
Thanks,
Martin
2020-07-30 Joe Ramsay
* MAINTAINERS (Write After Approval): Add myself.
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 300c10e..0b825c7 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -563,6 +563,7 @@ Vladimir Prus
On Thu, Jul 30, 2020 at 01:55:03PM +0100, Roger Sayle wrote:
> Now that you mention it, I'm not sure whether PR rtl-optimization 94543
> is a bug at all, but with you and Richard Henderson weighing in, I suspect
> that I must be missing something subtle.
>
> The initial text of the bug report comp
On 7/29/20 3:47 PM, Richard Biener wrote:
On Tue, Jul 28, 2020 at 12:23 PM Martin Liška wrote:
On 7/27/20 1:31 PM, Richard Biener wrote:
No, add gro*_exact variants and replace existing ones with this, then switch
to exact = false for the non-_exact variants. Or add a exact=false argument
to
Hi Richard,
>> This patch tweaks the way that min and max are expanded, so that the
>> semantics of these operations are visible to the early RTL
>> optimization passes, until split into explicit comparison and
>> conditional move instructions.
>
> Btw, I'm sure some variants of those are in
From: cooper.joshua
gcc/
* config/riscv/riscv.c (asan_shadow_offset): Implement the offset of
asan shadow memory for risc-v.
(asan_shadow_offset): new macro definition.
libsanitizer/
* sanitizer_common/sanitizer_common.h (ModuleArch): New enumerator.
On Wed, 29 Jul 2020, Joseph Myers wrote:
> On Wed, 29 Jul 2020, Richard Biener wrote:
>
> > Note that any workable solution is fine with me, I just
> > don't feel comfortable approving the solution involving
> > ../curr_stage and friends. Joseph, would HJs latest
> > patch be OK technically?
>
On Thu, Jul 30, 2020 at 1:24 PM Roger Sayle wrote:
>
>
> This patch tweaks the way that min and max are expanded, so that the
> semantics of these operations are visible to the early RTL optimization
> passes, until split into explicit comparison and conditional move
> instructions. The good news
On 29/07/20 11:33 +0200, François Dumont via Libstdc++ wrote:
I eventually committed the attached patch which consider all your
remarks and moreover put back the move constructor implementation
where it used to be (not inline). It limits the size of the patch.
I also added comments on true_ty
libstdc++-v3/ChangeLog:
* include/bits/iterator_concepts.h (__detail::__cv_bool): New
helper concept.
(__detail::__integral_nonbool): Likewise.
(__detail::__is_integer_like): Use __integral_nonbool.
* testsuite/std/ranges/access/lwg3467.cc: New test.
Tested
libstdc++-v3/ChangeLog:
* testsuite/20_util/from_chars/4.cc: Use dg-add-options ieee.
* testsuite/29_atomics/atomic_float/1.cc: Likewise.
Tested powerpc64le-linux, committed to trunk.
commit eeb45f8a41f7214d8682151bff7c7f00b06a
Author: Jonathan Wakely
Date: Thu Jul 30 12:
Previously it was not possible to add -fno-exceptions to the testsuite
flags, because some files that are compiled by the v3-build_support
procedure failed with exceptions disabled.
This adjusts those files to still compile without exceptions (with
degraded functionality in some cases).
The sole
This patch tweaks the way that min and max are expanded, so that the
semantics of these operations are visible to the early RTL optimization
passes, until split into explicit comparison and conditional move
instructions. The good news is that i386.md already contains all of
the required logic (man
On Thu, 30 Jul 2020, Jakub Jelinek wrote:
> On Thu, Jul 30, 2020 at 11:55:19AM +0200, Richard Biener wrote:
> > For cc1 this affects debug information size as follows:
> >
> > VM SIZE FILE SIZE
> > ++ GROWING ++
> > [ = ] 0 .debug_in
Hi,
Following on from the last patch, this implements rol() and ror() in the
core.bitop module as D intrinsics.
Bootstrapped and regression tested on x86_64-linux-gnu and committed to
mainline.
Regards
Iain
---
gcc/d/ChangeLog:
* intrinsics.cc (expand_intrinsic_rotate): Add function.
On 29/07/2020 15:05, Andrew Stubbs wrote:
This patch does not implement anything new, but simply separates OpenACC
'enter data' and 'exit data' into two libgomp API functions. The
original API name is kept for backward compatibility, but no longer
referenced by the compiler.
The previous imp
Hi,
This patch cleans up D intrinsic handling in the front-end.
Intrinsics are now matched explicitly, rather than through a common
alias where there are multiple overrides for a common intrinsic.
Where there is a corresponding DECL_FUNCTION_CODE, that is now stored in
the D intrinsic array. All
On Thu, 30 Jul 2020, Andreas Schwab wrote:
> On Jul 30 2020, Richard Biener wrote:
>
> > diff --git a/gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
> > b/gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
> > new file mode 100644
> > index 000..ede30f9a95e
> > --- /dev/null
> > +++ b/gcc/test
I recently wanted to use { dg-require-effective-target fenv } in a
libstdc++ test, but it uses -std=gnu99 which is only valid for C.
This allows C++ tests to use the fenv and fenv_exceptions
effective-target keywords.
gcc/testsuite/ChangeLog:
* lib/target-supports.exp (check_effective_ta
On Jul 30 2020, Richard Biener wrote:
> diff --git a/gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
> b/gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
> new file mode 100644
> index 000..ede30f9a95e
> --- /dev/null
> +++ b/gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
> @@ -0,0 +1,17 @@
> +
On Thu, Jul 30, 2020 at 11:55:19AM +0200, Richard Biener wrote:
> For cc1 this affects debug information size as follows:
>
> VM SIZE FILE SIZE
> ++ GROWING ++
> [ = ] 0 .debug_info +1.63Mi +1.3%
> [ = ] 0 .debug_str +2
This makes sure to emit full declaration DIEs including
formal parameters for used external functions. This helps
debugging when debug information of the external entity is
not available and also helps external tools cross-checking
ABI compatibility which was the bug reporters use case.
For cc1 t
On Tue, Jul 28, 2020 at 05:44:47PM -0400, Marek Polacek via Gcc-patches wrote:
> We will still have a surfeit of bugs that we've given short shrift to, but
> let's at least automate what we can. The initial addition of the relevant
> old(-ish) tests won't of course happen automagically, but it's a
Hi Julian, Tobias!
On 2020-07-27T15:33:41+0100, Julian Brown wrote:
> On Fri, 17 Jul 2020 13:16:11 +0200
> Thomas Schwinge wrote:
>> On 2020-07-15T12:28:42+0200, Thomas Schwinge
>> wrote:
>> > On 2020-07-14T13:43:37+0200, I wrote:
>> >> On 2020-06-16T15:39:44-0700, Julian Brown
>> >> wrote:
>>
In the face of the more complex tricks in reassoc with respect
to negate processing it can happen that the expression rewrite
is fooled to recurse on a leaf and pick up a bogus expression
code. The following patch makes the expression rewrite more
robust in providing the expression code to it dire
Hello.
I support the initiative!
What would be nice to add leading 'PR component/12345'
to a git commit so that these test additions are linked to bugzilla issues.
Martin
On 7/15/20 9:13 AM, Roger Sayle wrote:
>
> This patch provides standard vec_extract and vec_set patterns to the
> nvptx backend, to extract an element from a PTX vector and set an
> element of a PTX vector respectively. PTX vectors (I hesitate to
> call them SIMD vectors) may contain up to four e
On Thu, Jul 30, 2020 at 1:22 AM HAO CHEN GUI wrote:
>
> David,
>
> Seems there is something wrong with my email box. I lost your email. I
> reconfigured the box and it should be OK now.
>
> Could you inform me how to exclude AIX from the condition testing? By
> the ABI? Thanks a lot.
The purpose
Hi All,
My previous fix added an unchecked call to fgets in the new function readline.
fgets can fail when there's an error reading the file in which case it returns
NULL. It also returns NULL when the next character is EOF.
The EOF case is already covered by the existing code but the error case
On Thu, Jul 30, 2020 at 10:17:29AM +0200, Tobias Burnus wrote:
> --- a/htdocs/gcc-11/changes.html
> +++ b/htdocs/gcc-11/changes.html
> @@ -67,6 +67,17 @@ a work-in-progress.
>
> New Languages and Language specific improvements
>
> + GCC 11 adds the nonrectangular loops features and the alloca
This does a first update of the GCC 11 changes for
OpenMP. Wording improvements highly welcome. The new features
are not fully supported yet – but I did not know how to
best state this. And especially on the Fortran side there
are still many loose ends – but Stage 1 is long and many more
patches a
We noticed that when analyzing LTRANS memory peak that happens right
after the start:
https://gist.github.com/marxin/223890df4d8d8e490b6b2918b77dacad
In case of chrome, we have symtab->order == 200M, so we allocate
16B * 200M = 3.2GB.
Patch can bootstrap on x86_64-linux-gnu and survives regressi
When vector comparisons were forced to use vec_cond_expr, we lost a number
of optimizations (my fault for not adding enough testcases to prevent
that). This patch tries to unwrap vec_cond_expr a bit so some
optimizations can still happen.
I wasn't planning to add all those transformations toge
67 matches
Mail list logo