Re: [PATCH] implement pre-c++20 contracts

2019-12-09 Thread Jason Merrill
On 12/10/19 12:58 AM, Jason Merrill wrote: On 11/13/19 2:07 PM, Jeff Chapman wrote: Attached is a patch that implements pre-c++20 contracts. This comes from a long running development branch which included ChangeLog entries as we went, which are included in the patch itself. The repo and initial

Re: [PATCH] implement pre-c++20 contracts

2019-12-09 Thread Jason Merrill
On 11/13/19 2:07 PM, Jeff Chapman wrote: Attached is a patch that implements pre-c++20 contracts. This comes from a long running development branch which included ChangeLog entries as we went, which are included in the patch itself. The repo and initial wiki are located here: https://gitlab.com/l

[PATCH] Fix unrecognizable insn of pr92865

2019-12-09 Thread Hongtao Liu
Hi jakub: This patch is to enable integer mask cmp/cmov under AVX512F even with TARGET_XOP . Bootstrap and regression test on i386/x86_64 backend is ok. Changelog: PR target/92865 * gcc/config/i386/i386-expand.c (ix86_valid_mask_cmp_mode): Enable integer mask cmov when available ev

libbacktrace patch committed: Remove duplication of address handling

2019-12-09 Thread Ian Lance Taylor
Before this patch libbacktrace duplicated the handling of DW_AT_low_pc, DW_AT_high_pc, and DW_AT_ranges, once to build a mapping from addresses to compilation units, and then again to build a mapping from addresses to functions within a compilation unit. This patch removes the duplication into a p

[RFC] ipa-cp: Fix PGO regression caused by r278808

2019-12-09 Thread Xiong Hu Luo
The performance of exchange2 built with PGO will decrease ~28% by r278808 due to profile count set incorrectly. The cloned nodes are updated to a very small count caused later pass cunroll fail to unroll the recursive function in exchange2, This patch enables adding orig_sum to the new nodes for s

Re: [PATCH 03/49] diagnostic_show_locus: move initial newline to callers

2019-12-09 Thread David Malcolm
On Sat, 2019-12-07 at 07:30 -0700, Jeff Law wrote: > On Fri, 2019-11-15 at 20:22 -0500, David Malcolm wrote: > > diagnostic_show_locus adds a newline before doing anything > > (including > > the do-nothing-else case). > > > > This patch removes this initial newline, adding it to all callers > > of

Re: [PATCH 29/49] analyzer: new files: tristate.{cc|h}

2019-12-09 Thread Martin Sebor
On 11/15/19 6:23 PM, David Malcolm wrote: gcc/ChangeLog: * analyzer/tristate.cc: New file. * analyzer/tristate.h: New file. --- gcc/analyzer/tristate.cc | 222 +++ gcc/analyzer/tristate.h | 82 + 2 files changed, 30

Re: [PATCH 26/49] analyzer: new files: digraph.{cc|h} and shortest-paths.h

2019-12-09 Thread Martin Sebor
On 11/15/19 6:23 PM, David Malcolm wrote: This patch adds template classes for directed graphs, their nodes and edges, and for finding the shortest path through such a graph. Just a few mostly minor comments from me, in a similar vein as on some of the other patches. gcc/ChangeLog: *

Re: [PATCH] add -Wmismatched-tags (PR 61339)

2019-12-09 Thread Martin Sebor
On 12/6/19 12:08 PM, Jason Merrill wrote: On 12/5/19 6:47 PM, Jakub Jelinek wrote: On Thu, Dec 05, 2019 at 04:33:10PM -0700, Martin Sebor wrote: It's hard to distinguish between this type and the previous one by name; this one should probably have "map" in its name. +static GTY (()) record_t

Re: [PATCH 28/49] analyzer: new files: analyzer.{cc|h}

2019-12-09 Thread David Malcolm
On Fri, 2019-12-06 at 22:38 -0500, Eric Gallager wrote: > On 11/15/19, David Malcolm wrote: [...] > > diff --git a/gcc/analyzer/analyzer.h b/gcc/analyzer/analyzer.h > > new file mode 100644 > > index 000..ace8924 > > --- /dev/null > > +++ b/gcc/analyzer/analyzer.h > > @@ -0,0 +1,126 @@ > > +/*

[PR92116, PR92877] [OpenACC] Replace 'openacc.data_environ' by standard libgomp mechanics (was: [PATCH] OpenACC reference count overhaul)

2019-12-09 Thread Thomas Schwinge
Hi! \o/ Yay for the first split-out piece of the big "OpenACC reference count overhaul" going in: On 2019-10-29T12:15:01+, Julian Brown wrote: > On Mon, 21 Oct 2019 16:14:11 +0200 > Thomas Schwinge wrote: >> Remeber to look into "Potential null >> pointer deref

Re: [PATCH 17/49] Support for adding selftests via a plugin

2019-12-09 Thread David Malcolm
On Sat, 2019-12-07 at 07:40 -0700, Jeff Law wrote: > On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote: > > This patch provides a plugin callback for invoking selftests, so > > that > > a > > plugin can add tests to those run by -fself-test=DIR. The callback > > invocation uses invoke_plugin_

Re: [PATCH 29/49] analyzer: new files: tristate.{cc|h}

2019-12-09 Thread David Malcolm
On Sat, 2019-12-07 at 08:03 -0700, Jeff Law wrote: > On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote: > > gcc/ChangeLog: > > * analyzer/tristate.cc: New file. > > * analyzer/tristate.h: New file. > Nothing really concerning here. Seems like a generic facility we'd > like to be able

Re: [PATCH 26/49] analyzer: new files: digraph.{cc|h} and shortest-paths.h

2019-12-09 Thread David Malcolm
On Sat, 2019-12-07 at 07:58 -0700, Jeff Law wrote: > On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote: > > This patch adds template classes for directed graphs, their nodes > > and edges, and for finding the shortest path through such a graph. > > > > gcc/ChangeLog: > > * analyzer/digrap

Re: [PATCH 25/49] analyzer: new files: graphviz.{cc|h}

2019-12-09 Thread David Malcolm
On Sat, 2019-12-07 at 07:54 -0700, Jeff Law wrote: > On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote: > > This patch adds a simple wrapper class to make it easier to > > write human-readable .dot files. > > > > gcc/ChangeLog: > > * analyzer/graphviz.cc: New file. > > * analyzer/grap

[PR92503] [OpenACC] Don't silently 'acc_unmap_data' in 'acc_free'

2019-12-09 Thread Thomas Schwinge
Hi! See attached "[PR92503] [OpenACC] Don't silently 'acc_unmap_data' in 'acc_free'", committed to trunk in r279146. As mentioned in PR92503, further work can be done later on, incrementally, to avoid "expensive device-to-host-address lookup": possibly "we might actually keep such additional/expe

Re: [PATCH] Fix multibyte-related issues in pretty-print.c (PR 91843)

2019-12-09 Thread Lewis Hyatt
On Mon, Dec 9, 2019 at 4:58 PM David Malcolm wrote: > > On Thu, 2019-10-10 at 16:27 -0400, Lewis Hyatt wrote: > > Hello- > > > > This short patch addresses > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91843 > > by adding the needed multibyte awareness to pretty-print.c. > > Together with my ot

Re: [PATCH] Multibyte awareness for diagnostics (PR 49973)

2019-12-09 Thread Lewis Hyatt
On Mon, Dec 09, 2019 at 03:12:31PM -0500, David Malcolm wrote: > On Fri, 2019-12-06 at 15:31 -0500, Lewis Hyatt wrote: > > On Fri, Dec 06, 2019 at 10:54:30AM -0500, David Malcolm wrote: > > [...] > > > > The patch is OK for trunk with the nits above fixed. Do you have > > > commit access? (I've

[PR92840] [OpenACC] Refuse 'acc_unmap_data' unless mapped by 'acc_map_data'

2019-12-09 Thread Thomas Schwinge
Hi! See attached "[PR92840] [OpenACC] Refuse 'acc_unmap_data' unless mapped by 'acc_map_data'", committed to trunk in r279145. As mentioned in the patch, some further checking can be applied, later, incrementally. Grüße Thomas From bea573cb7ea13cece9c51ca9eb1cc9c34005dedf Mon Sep 17 00:00:00

Re: [PATCH] Fix multibyte-related issues in pretty-print.c (PR 91843)

2019-12-09 Thread David Malcolm
On Thu, 2019-10-10 at 16:27 -0400, Lewis Hyatt wrote: > Hello- > > This short patch addresses > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91843 > by adding the needed multibyte awareness to pretty-print.c. > Together with my other patch awaiting review > (https://gcc.gnu.org/ml/gcc-patches/201

[PING][PATCH v3] Add `--with-toolexeclibdir=' configuration option

2019-12-09 Thread Maciej W. Rozycki
On Mon, 2 Dec 2019, Maciej W. Rozycki wrote: > Provide means, in the form of a `--with-toolexeclibdir=' configuration > option, to override the default installation directory for target > libraries, otherwise known as $toolexeclibdir. This is so that it is > possible to get newly-built librari

[PING^3][PATCH 0/4] Fix library testsuite compilation for build sysroot

2019-12-09 Thread Maciej W. Rozycki
On Mon, 11 Nov 2019, Maciej W. Rozycki wrote: > This patch series addresses a problem with the testsuite compiler being > set up across libatomic, libffi, libgo, libgomp with no correlation > whatsoever to the target compiler being used in GCC compilation. > Consequently there in no arrangeme

[PING][PATCH v2 2/2] testsuite: Fix run-time tracking down of `libgcc_s'

2019-12-09 Thread Maciej W. Rozycki
On Fri, 29 Nov 2019, Maciej W. Rozycki wrote: > Fix a catastrophic libgo testsuite failure in cross-compilation where > the shared `libgcc_s' library cannot be found by the loader at run time > in build-tree testing and consequently all test cases fail the execution > stage, giving output (here

Re: [PATCH][Hashtable 0/6] Code review

2019-12-09 Thread François Dumont
This patch also require an update of the printers.py file. Here is an updated version. François On 11/17/19 9:42 PM, François Dumont wrote: This is the begining of a patch series for _Hashtable Initial patch to clarify code. I was tired to see true/false or true_type/false_type without knowi

Re: [PATCH] rs6000: Fix 2 for PR92661, Do not define builtins that overload disabled builtins

2019-12-09 Thread Peter Bergner
On 12/6/19 5:12 PM, Segher Boessenkool wrote: > On Thu, Dec 05, 2019 at 08:44:57AM +, Iain Sandoe wrote: >> .. or I can just force a false return from effective_target_dfp as we >> do for other cases where assembler support does not imply system >> support. > > That's what I would do, yes.

Re: [PATCH] Multibyte awareness for diagnostics (PR 49973)

2019-12-09 Thread David Malcolm
On Fri, 2019-12-06 at 15:31 -0500, Lewis Hyatt wrote: > On Fri, Dec 06, 2019 at 10:54:30AM -0500, David Malcolm wrote: [...] > > The patch is OK for trunk with the nits above fixed. Do you have > > commit access? (I've got my own patch [1] that touches diagnostic- > > show-locus.c which I'll ne

Re: [C++ Patch] Improve build_*_cast locations

2019-12-09 Thread Jason Merrill
On 12/9/19 7:06 AM, Paolo Carlini wrote: Hi, On 08/12/19 18:51, Jason Merrill wrote: Hmm, is the change to cp_expr really necessary vs. using protected_set_expr_location? Yes, using protected_set_expr_location works fine in this case, I suppose because we are dealing with expressions anyway

[PATCH] PR 92846: [ARC] generate signaling FDCMPF for hard float comparisons

2019-12-09 Thread Vineet Gupta
ARC gcc generates FDCMP instructions which raises Invalid operation for signaling NaN only. This causes glibc iseqsig() primitives to fail (in the current ongoing glibc port to ARC) So split up the hard float compares into two categories and for unordered compares generate the FDCMPF instruction (

Re: [PING^3] Re: [PATCH 1/2] Add a pass to automatically add ptwrite instrumentation

2019-12-09 Thread Andi Kleen
Andi Kleen writes: Ping! > Andi Kleen writes: > > Ping! > >> Andi Kleen writes: >> >> Ping! >> >>> From: Andi Kleen >>> >>> [v4: Rebased on current tree. Avoid some redundant log statements >>> for locals and a few other fixes. Fix some comments. Improve >>> documentation. Did some studies o

Re: libgo patch committed: Hurd fix

2019-12-09 Thread Ian Lance Taylor
On Sun, Dec 8, 2019 at 7:43 PM Ian Lance Taylor wrote: > > I've committed this Hurd fix by Samuel Thibault for GCC PR 92861. And a followup patch, also by Samuel Thibault. Committed to mainline. Ian Index: gcc/go/gofrontend/MERGE =

[PING][PATCH][GCC][ARM] Arm generates out of range conditional branches in Thumb2 (PR91816)

2019-12-09 Thread Stam Markianos-Wright
On 12/2/19 4:43 PM, Stam Markianos-Wright wrote: > > > On 11/15/19 5:26 PM, Stam Markianos-Wright wrote: >> Pinging with more correct maintainers this time :) >> >> Also would need to backport to gcc7,8,9, but need to get this approved >> first! >> >> Thank you, >> Stam >> >> >> Forwa

[PATCH] libstdc++: Implement ranges::safe_range for C++20 (P1870R1)

2019-12-09 Thread Jonathan Wakely
This change replaces the __forwarding_range implementation detail with the ranges::safe_range concept and adds the ranges::enable_safe_range variable template for opt-in in to the concept. It also adjusts the begin/end/rbegin/rend customization point objects to match the new rules for accessing r

Re: [PATCH] bring -Warray-bounds closer to -Wstringop-overflow (PR91647, 91463, 91679)

2019-12-09 Thread Martin Sebor
On 12/9/19 9:11 AM, Matthew Malcomson wrote: On 01/11/2019 21:09, Martin Sebor wrote: diff --git a/gcc/gimple-match-head.c b/gcc/gimple-match-head.c index 53278168a59..d7c74a1865a 100644 --- a/gcc/gimple-match-head.c +++ b/gcc/gimple-match-head.c @@ -837,8 +837,8 @@ try_conditional_simplificatio

Re: [PATCH, Modula-2 (C/C++/D/F/Go/Jit)] (Register spec fn) (v3)

2019-12-09 Thread Gaius Mulley
Matthias Klose writes: > On 17.11.19 07:49, Gaius Mulley wrote: >> >> Hello, >> >> while spending the weekend on the Howland and Baker islands :-) I >> thought I'd post version three of the patches which introduce Modula-2 >> into the GCC trunk. The patches include: > > [...] > >> At a later p

Re: [PATCH] Fix typos in 2 functions.

2019-12-09 Thread Jan Hubicka
> Hi. > > I'm sending fix for 2 locations where we have a typo. > Second hunk is pre-approved by Rich, first one needs to be approved > by Honza? > > Patch can bootstrap on x86_64-linux-gnu and survives regression tests. > > Ready to be installed? > Thanks, > Martin > > gcc/ChangeLog: > > 2019

Re: [patch, fortran] Introduce -finline-pack

2019-12-09 Thread Thomas Koenig
Hi Richard, Just as a suggestion, maybe we'd want to extend this to other intrinsics in future so a -fno-inline-intrinsic=pack[,...] is more future proof? (I'd inline all intrinsics by default thus only provide the negative form). You can avoid the extra option parsing complexity by only litera

Re: [PATCH] bring -Warray-bounds closer to -Wstringop-overflow (PR91647, 91463, 91679)

2019-12-09 Thread Matthew Malcomson
On 01/11/2019 21:09, Martin Sebor wrote: > diff --git a/gcc/gimple-match-head.c b/gcc/gimple-match-head.c > index 53278168a59..d7c74a1865a 100644 > --- a/gcc/gimple-match-head.c > +++ b/gcc/gimple-match-head.c > @@ -837,8 +837,8 @@ try_conditional_simplification (internal_fn ifn, > gimple_match_op

Re: [PATCH] Fix column information for omp_clauses in Fortran code

2019-12-09 Thread Tobias Burnus
LGTM. Thanks for the patch! Tobias On 12/9/19 4:58 PM, Harwath, Frederik wrote: Hi, Tobias has recently fixed a problem with the column information in gfortran locations ("PR 92793 - fix column used for error diagnostic"). Diagnostic messages for OpenMP/OpenACC clauses do not contain the righ

Re: [RFC, vectorizer] Fix ICE with masked vectors

2019-12-09 Thread Richard Sandiford
Andrew Stubbs writes: > Hi, > > This patch fixes an ICE in testcase gcc.dg/vect/vect-ctor-1.c: > > during GIMPLE pass: vect > dump file: vect-ctor-1.c.159t.vect > .../gcc.dg/vect/vect-ctor-1.c: In function 'intrapred_luma_16x16': > .../gcc.dg/vect/vect-ctor-1.c:9:6: internal compiler error: in >

[PATCH] Fix column information for omp_clauses in Fortran code

2019-12-09 Thread Harwath, Frederik
Hi, Tobias has recently fixed a problem with the column information in gfortran locations ("PR 92793 - fix column used for error diagnostic"). Diagnostic messages for OpenMP/OpenACC clauses do not contain the right column information yet. The reason is that the location information of the first

Re: [PATCH v2][MSP430] Add msp430-elfbare target

2019-12-09 Thread Jozef Lawrynowicz
On Sat, 07 Dec 2019 11:40:33 -0700 Jeff Law wrote: > On Fri, 2019-11-29 at 21:00 +, Jozef Lawrynowicz wrote: > > The attached patch consolidates some configuration tweaks I > > previously submitted > > as modifications to the msp430-elf target into a new target called > > "msp430-elfbare" i.e

[RFC, vectorizer] Fix ICE with masked vectors

2019-12-09 Thread Andrew Stubbs
Hi, This patch fixes an ICE in testcase gcc.dg/vect/vect-ctor-1.c: during GIMPLE pass: vect dump file: vect-ctor-1.c.159t.vect .../gcc.dg/vect/vect-ctor-1.c: In function 'intrapred_luma_16x16': .../gcc.dg/vect/vect-ctor-1.c:9:6: internal compiler error: in exact_div, at poly-int.h:2162 0xdf845f

[PATCH] Fix typos in 2 functions.

2019-12-09 Thread Martin Liška
Hi. I'm sending fix for 2 locations where we have a typo. Second hunk is pre-approved by Rich, first one needs to be approved by Honza? Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: 2019-12-09 Martin Liska

Re: [PATCH] OpenACC reference count overhaul

2019-12-09 Thread Julian Brown
On Mon, 9 Dec 2019 15:44:25 +0100 Thomas Schwinge wrote: > Hi Julian! > > On 2019-10-03T09:35:04-0700, Julian Brown > wrote: > > --- a/libgomp/oacc-mem.c > > +++ b/libgomp/oacc-mem.c > > > @@ -715,48 +684,34 @@ delete_copyout (unsigned f, void *h, size_t > > s, int async, const char *libfnna

Re: [committed, amdgcn] Fix unrecognised instruction

2019-12-09 Thread Andrew Stubbs
On 06/12/2019 17:57, Andrew Stubbs wrote: Hi all, I've committed the attached to fix a failure-to-assemble bug that can occur in some vectorized code.  This has been hidden for a long time because sub-word vectors were disabled on GCN, but this is no longer the case. The gather load instruc

Re: [PATCH] OpenACC reference count overhaul

2019-12-09 Thread Thomas Schwinge
Hi Julian! On 2019-10-03T09:35:04-0700, Julian Brown wrote: > --- a/libgomp/oacc-mem.c > +++ b/libgomp/oacc-mem.c > @@ -715,48 +684,34 @@ delete_copyout (unsigned f, void *h, size_t s, int > async, const char *libfnname) >if (f & FLAG_COPYOUT) > [...] > gomp_copy_dev2host (acc_

Re: [patch] Fix ICE on VLA in LTO mode

2019-12-09 Thread Richard Biener
On Mon, Dec 9, 2019 at 1:23 PM Eric Botcazou wrote: > > Hi, > > this is a regression present on the mainline and 9 branch: the compiler gives > an ICE for the attached Ada testcase on the following assertion: > > if (DECL_P (ref)) > { > /* We shouldn't have true variables h

[PATCH, COMMITTED] arm: fix v[78]-r multilibs when configured with --with-multlib-list=aprofile

2019-12-09 Thread Richard Earnshaw (lists)
When gcc for Arm is configured with --with-multilib-list=aprofile a misplaced endif directive in the makefile was causing the arm->thumb mapping for multilibs to be omitted from the reuse rules. This resulted in the default multilib being picked rather than the thumb2 opimized version.

Re: [PATCH][RFC] Add new ipa-reorder pass

2019-12-09 Thread Martin Liška
Hi. I've just updated the script a bit and I added also address histogram: https://drive.google.com/file/d/11s9R_JnEMohDE6ctqzsj092QD22HKXJI/view?usp=sharing Martin

Re: [PATCH][RFC] Add new ipa-reorder pass

2019-12-09 Thread Jan Hubicka
> > On the first glance the difference between gcc9 and gcc10 is explained > > by the changes to profile updating. gcc9 makes very small cold > > partitions compared to gcc10. It is very nice that we have a way to > > measure it. I will also check if some of the more important profiling > > update

Ping: [GCC][PATCH] Add ARM-specific Bfloat format support to middle-end

2019-12-09 Thread Stam Markianos-Wright
On 12/3/19 10:31 AM, Stam Markianos-Wright wrote: > > > On 12/2/19 9:27 PM, Joseph Myers wrote: >> On Mon, 2 Dec 2019, Jeff Law wrote: >> 2019-11-13  Stam Markianos-Wright      * real.c (struct arm_bfloat_half_format,     encode_arm_bfloat_half, decode_arm_bfloat_ha

Re: [PATCH][RFC] Add new ipa-reorder pass

2019-12-09 Thread Martin Liška
On 12/9/19 2:03 PM, Jan Hubicka wrote: On 12/9/19 1:14 PM, Martin Liška wrote: Hello. Based on presentation that had Sriraman Tallam at a LLVM conference: https://www.youtube.com/watch?v=DySuXFGmB40 I made a heatmap based on executed instruction addresses. I used $ perf record -F max -- ./cc1p

Re: [PATCH 3/3] libgcc: Implement TARGET_LIBGCC_REMOVE_DSO_HANDLE

2019-12-09 Thread Jozef Lawrynowicz
On Sat, 07 Dec 2019 11:27:54 -0700 Jeff Law wrote: > On Wed, 2019-11-06 at 16:19 +, Jozef Lawrynowicz wrote: > > From 7bc0971d2936ebe71e7b7d3d805cf1bbf9f9f5af Mon Sep 17 00:00:00 2001 > > From: Jozef Lawrynowicz > > Date: Mon, 4 Nov 2019 17:38:13 + > > Subject: [PATCH 3/3] libgcc: Implem

Re: [PATCH][RFC] Add new ipa-reorder pass

2019-12-09 Thread Jan Hubicka
> On 12/9/19 1:14 PM, Martin Liška wrote: > > Hello. > > > > Based on presentation that had Sriraman Tallam at a LLVM conference: > > https://www.youtube.com/watch?v=DySuXFGmB40 > > > > I made a heatmap based on executed instruction addresses. I used > > $ perf record -F max -- ./cc1plus -fprepro

Re: [mid-end] Add notes to dataflow insn info when re-emitting (PR92410)

2019-12-09 Thread Segher Boessenkool
On Mon, Dec 09, 2019 at 01:48:51PM +0100, Martin Liška wrote: > - gcc_assert (INSN_UID (insn) < DF_INSN_SIZE ()); > + gcc_assert (INSN_UID (insn) < (int)DF_INSN_SIZE ()); Space after cast please. Segher

Re: [mid-end] Add notes to dataflow insn info when re-emitting (PR92410)

2019-12-09 Thread Matthew Malcomson
Ah, apologies -- you're right. I'd already committed the patch this morning, so I'll update it with the obvious fix. Thanks for the catch, Matthew On 09/12/2019 12:48, Martin Liška wrote: > Hello. > > The patch triggers the following warning: > > In file included from /home/marxin/Programming

Re: [mid-end] Add notes to dataflow insn info when re-emitting (PR92410)

2019-12-09 Thread Matthew Malcomson
Ah, apologies -- you're right. I'd already committed the patch this morning, so I'll update it with the obvious fix. Thanks for the catch, Matthew On 09/12/2019 12:48, Martin Liška wrote: > Hello. > > The patch triggers the following warning: > > In file included from /home/marxin/Programming

Re: [mid-end] Add notes to dataflow insn info when re-emitting (PR92410)

2019-12-09 Thread Martin Liška
Hello. The patch triggers the following warning: In file included from /home/marxin/Programming/gcc/gcc/regstat.c:23: /home/marxin/Programming/gcc/gcc/regstat.c: In function ‘void regstat_bb_compute_calls_crossed(unsigned int, bitmap)’: /home/marxin/Programming/gcc/gcc/regstat.c:327:35: warning

Re: [PATCH][RFC] Add new ipa-reorder pass

2019-12-09 Thread Martin Liška
On 12/9/19 1:14 PM, Martin Liška wrote: Hello. Based on presentation that had Sriraman Tallam at a LLVM conference: https://www.youtube.com/watch?v=DySuXFGmB40 I made a heatmap based on executed instruction addresses. I used $ perf record -F max -- ./cc1plus -fpreprocessed /home/marxin/Program

[PATCH] rs6000: Name set_cc, and delete some old mfcr patterns

2019-12-09 Thread Segher Boessenkool
This names the so far unnamed basic mfcr pattern "set_cc", and it deletes all the others (only the ashift one ever was generated, and even that one only once during a whole bootstrap+regtest, and that one is questionable -- we don't cost that pattern correctly). Tested on powerpc64-linux {-m32,-m6

Re: [PATCH 2/3] libgcc: Dont define __do_global_dtors_aux if it will be empty

2019-12-09 Thread Jozef Lawrynowicz
On Mon, 9 Dec 2019 13:19:22 +0100 Tobias Burnus wrote: > Hi, I see now the following error: > > …/libgcc/crtstuff.c:372:52: error: operator '||' has no right operand >372 | || USE_TM_CLONE_REGISTRY || USE_EH_FRAME_REGISTRY >|^ > /

Re: [PATCH] Refactor IPA devirt a bit.

2019-12-09 Thread Richard Sandiford
Martin Liška writes: > diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c > index a884a465a5d..e53461b1f5c 100644 > --- a/gcc/ipa-devirt.c > +++ b/gcc/ipa-devirt.c > @@ -1036,20 +1036,13 @@ warn_types_mismatch (tree t1, tree t2, location_t > loc1, location_t loc2) >/* If types have mangled ODR

[patch] Fix ICE on VLA in LTO mode

2019-12-09 Thread Eric Botcazou
Hi, this is a regression present on the mainline and 9 branch: the compiler gives an ICE for the attached Ada testcase on the following assertion: if (DECL_P (ref)) { /* We shouldn't have true variables here. */ gcc_assert (TREE_READONLY (ref)); subst

Re: [PATCH 2/3] libgcc: Dont define __do_global_dtors_aux if it will be empty

2019-12-09 Thread Tobias Burnus
Hi, I see now the following error: …/libgcc/crtstuff.c:372:52: error: operator '||' has no right operand 372 | || USE_TM_CLONE_REGISTRY || USE_EH_FRAME_REGISTRY |^ /net/build5-trusty-cs/scratch/tburnus/mainline-nv/src/gcc-mainline/libg

Re: [PATCH][RFC] Add new ipa-reorder pass

2019-12-09 Thread Martin Liška
Hello. Based on presentation that had Sriraman Tallam at a LLVM conference: https://www.youtube.com/watch?v=DySuXFGmB40 I made a heatmap based on executed instruction addresses. I used $ perf record -F max -- ./cc1plus -fpreprocessed /home/marxin/Programming/tramp3d/tramp3d-v4.ii and $ perf scr

Re: [C++ Patch] Improve build_*_cast locations

2019-12-09 Thread Paolo Carlini
Hi, On 08/12/19 18:51, Jason Merrill wrote: Hmm, is the change to cp_expr really necessary vs. using protected_set_expr_location? Yes, using protected_set_expr_location works fine in this case, I suppose because we are dealing with expressions anyway plus the cp_expr constructor from a tree

Re: [PATCH] OpenACC "present" subarrays: runtime API return value and unmapping fixes

2019-12-09 Thread Thomas Schwinge
Hi! On 2019-11-14T17:02:02+0100, I wrote: > [...] I couldn't really find wording in the > OpenACC specification that explicitly permits such things. But given > that, for example, in OpenACC 2.7, 3.2.20. "acc_copyin", 'acc_copyin' is > described to be "equivalent to the 'enter data' directive wit

Add 'libgomp.oacc-c-c++-common/map-data-1.c'

2019-12-09 Thread Thomas Schwinge
Hi! See attached "Add 'libgomp.oacc-c-c++-common/map-data-1.c'", committed to trunk in r279121. Grüße Thomas From 524aec42ea4d0a98fd6a0815e7573bf94fa70ee3 Mon Sep 17 00:00:00 2001 From: tschwinge Date: Mon, 9 Dec 2019 11:40:27 + Subject: [PATCH] Add 'libgomp.oacc-c-c++-common/map-data-1.

[PR92854] Add 'libgomp.oacc-c-c++-common/pr92854-1.c'

2019-12-09 Thread Thomas Schwinge
Hi! See attached "[PR92854] Add 'libgomp.oacc-c-c++-common/pr92854-1.c'", committed to trunk in r279120, "to document the status quo", which does match my understanding of the OpenACC 2.6 semantics. Grüße Thomas From e14bd9d202bc4140d825a396ddaf64a5930ee3d1 Mon Sep 17 00:00:00 2001 From: tsch

Add 'libgomp.oacc-c-c++-common/host_data-6.c'

2019-12-09 Thread Thomas Schwinge
Hi! See attached "Add 'libgomp.oacc-c-c++-common/host_data-6.c'", committed to trunk in r279119. Grüße Thomas From e5247d4a6930ca12fef2d38922cf6dbd9812da22 Mon Sep 17 00:00:00 2001 From: tschwinge Date: Mon, 9 Dec 2019 11:40:08 + Subject: [PATCH] Add 'libgomp.oacc-c-c++-common/host_data-

In 'libgomp/target.c:gomp_exit_data', remove open-coded 'gomp_remove_var' (was: [OpenACC] Update OpenACC data clause semantics to the 2.5 behavior - runtime)

2019-12-09 Thread Thomas Schwinge
Hi! On 2018-06-19T10:01:20-0700, Cesar Philippidis wrote: > --- a/libgomp/target.c > +++ b/libgomp/target.c > +attribute_hidden bool > +gomp_remove_var (struct gomp_device_descr *devicep, splay_tree_key k) > +{ > + bool is_tgt_unmapped = false; > + splay_tree_remove (&devicep->mem_map, k); > +

[Patch, committed] libgomp/testsuite/*fortran – make 'stop' values unique

2019-12-09 Thread Tobias Burnus
Somehow, I managed to commit non-unique stop codes, again. While they do not harm, they make debugging a bit harder. Hence: Committed as obvious. (Rev. 279117). Tobias Index: libgomp/ChangeLog === --- libgomp/ChangeLog (revision 2

Re: [PATCH] Use OPTION_MASK_ISA2_$target_[SET, UNSET, ] to indicate those for x_ix86_isa_flags2

2019-12-09 Thread Uros Bizjak
On Mon, Dec 9, 2019 at 11:25 AM Hongtao Liu wrote: > > Hi uros: > This patch is about to rename OPTION_MASK_ISA_$target_[SET,UNSET, ] > to OPTION_MASK_ISA2_$target_[SET,UNSET, ] for those targets setting > x_ix86_isa_flags2. > target list as bellow: > - > 188static struct ix86_target_opts

Re: [committed, amdgcn] Enable QI/HImode vector moves

2019-12-09 Thread Andrew Stubbs
Oops, please consider this patch as submitted from my @codesourcery.com address, for copyright assignment purposes. Andrew On 06/12/2019 17:31, Andrew Stubbs wrote: Hi all, This patch re-enables the V64QImode and V64HImode for GCN. GCC does not make these easy to work with because there is (

Re: [PATCH v2 2/2][ARM] Improve max_cond_insns setting for Cortex cores

2019-12-09 Thread Wilco Dijkstra
Hi Christophe, >> The warning is off by default so there is no need to do anything in the >> testsuite, >> you just need a fixed binutils. >> > > Don't we want to fix GCC to stop generating the offending sequence? Why? All ARMv8 implementations have to support it, and despite the warning code a

[PATCH] Extend std::copy_n optimization

2019-12-09 Thread François Dumont
Last patch of my series following this one: https://gcc.gnu.org/ml/libstdc++/2019-12/msg00028.html This time I work on std::copy_n/std::copy overloads for istreambuf_iterator so that it works also for deque iterators and transparently in _GLIBCXX_DEBUG mode.     * include/bits/stl_algo.h (_

Re: [PATCH] Canonicalize fancy ways of expressing blend operation into COND_EXPR (PR tree-optimization/92834)

2019-12-09 Thread Jakub Jelinek
On Mon, Dec 09, 2019 at 10:54:34AM +0100, Marc Glisse wrote: > On Fri, 6 Dec 2019, Jakub Jelinek wrote: > > > --- gcc/match.pd.jj 2019-12-06 14:07:26.877749065 +0100 > > +++ gcc/match.pd2019-12-06 15:06:08.042953309 +0100 > > @@ -2697,6 +2697,31 @@ (define_operator_list COND_TERNARY > > (cmp

[PATCH] Use OPTION_MASK_ISA2_$target_[SET, UNSET, ] to indicate those for x_ix86_isa_flags2

2019-12-09 Thread Hongtao Liu
Hi uros: This patch is about to rename OPTION_MASK_ISA_$target_[SET,UNSET, ] to OPTION_MASK_ISA2_$target_[SET,UNSET, ] for those targets setting x_ix86_isa_flags2. target list as bellow: - 188static struct ix86_target_opts isa2_opts[] = 189{ 190 { "-mcx16", OPTION_MASK_ISA2_CX

Re: Fwd: [PATCH, GCC, Vect] Fix costing for vector shifts

2019-12-09 Thread Sudakshina Das
Hi Jeff On 07/12/2019 17:44, Jeff Law wrote: > On Fri, 2019-12-06 at 14:05 +, Sudakshina Das wrote: >> Hi >> >> While looking at the vectorization for following example, we >> realized >> that even though vectorizable_shift function was distinguishing >> vector >> shifted by vector from vector

Re: [committed, amdgcn] Enable QI/HImode vector moves

2019-12-09 Thread Richard Sandiford
Andrew Stubbs writes: > On 06/12/2019 18:21, Richard Sandiford wrote: >> Andrew Stubbs writes: >>> Hi all, >>> >>> This patch re-enables the V64QImode and V64HImode for GCN. >>> >>> GCC does not make these easy to work with because there is (was?) an >>> assumption that vector registers do not ha

Re: [SVE] PR89007 - Implement generic vector average expansion

2019-12-09 Thread Prathamesh Kulkarni
On Thu, 5 Dec 2019 at 18:17, Richard Biener wrote: > > On Thu, 5 Dec 2019, Prathamesh Kulkarni wrote: > > > On Fri, 29 Nov 2019 at 15:41, Richard Biener > > wrote: > > > > > > On Fri, Nov 22, 2019 at 12:40 PM Prathamesh Kulkarni > > > wrote: > > > > > > > > On Wed, 20 Nov 2019 at 16:54, Richard

[PATCH] Extend std::lexicographical_compare optimizations

2019-12-09 Thread François Dumont
Following: https://gcc.gnu.org/ml/libstdc++/2019-12/msg00028.html I've done the same kind of work on std::lexicographical_compare algo. I had to make the internal lexicographical_compare functions return int rather than bool cause with bool you can't use a chunck based approach unless you dou

Re: [PATCH] libstdc++: fix buffer overflow in path::operator+= (PR92853)

2019-12-09 Thread Jonathan Wakely
On 09/12/19 09:55 +, Jonathan Wakely wrote: When concatenating a path ending in a root-directory onto another path, we added an empty filename to the end of the path twice, but only reserved space for one. That meant the second write went past the end of the allocated buffer. PR libs

[PATCH] libstdc++: fix buffer overflow in path::operator+= (PR92853)

2019-12-09 Thread Jonathan Wakely
When concatenating a path ending in a root-directory onto another path, we added an empty filename to the end of the path twice, but only reserved space for one. That meant the second write went past the end of the allocated buffer. PR libstdc++/92853 * src/c++17/fs_path.cc (files

Re: [PATCH] Canonicalize fancy ways of expressing blend operation into COND_EXPR (PR tree-optimization/92834)

2019-12-09 Thread Marc Glisse
On Fri, 6 Dec 2019, Jakub Jelinek wrote: --- gcc/match.pd.jj 2019-12-06 14:07:26.877749065 +0100 +++ gcc/match.pd2019-12-06 15:06:08.042953309 +0100 @@ -2697,6 +2697,31 @@ (define_operator_list COND_TERNARY (cmp (minmax @0 INTEGER_CST@1) INTEGER_CST@2) (comb (cmp @0 @2) (cmp @1 @

[PATCH] [ARC] Use hardware support for double-precision compare instructions.

2019-12-09 Thread Claudiu Zissulescu
Although the FDCMP (the double precision floating point compare instruction) is added to the compiler, it is not properly used via cstoredi pattern. Fix it. OK to apply? Claudidu -xx-xx Claudiu Zissulescu * config/arc/arc.md (iterator SDF): Check TARGET_FP_DP_BASE. (cstor

Re: [committed, amdgcn] Enable QI/HImode vector moves

2019-12-09 Thread Andrew Stubbs
On 06/12/2019 18:21, Richard Sandiford wrote: Andrew Stubbs writes: Hi all, This patch re-enables the V64QImode and V64HImode for GCN. GCC does not make these easy to work with because there is (was?) an assumption that vector registers do not have excess bits in vector registers, and therefo

Re: introduce -fcallgraph-info option

2019-12-09 Thread Richard Biener
On Tue, 3 Dec 2019, Alexandre Oliva wrote: > On Nov 14, 2019, Alexandre Oliva wrote: > > > In order to address this, I propose we add an internal option (not for > > the driver), -dumpbase-ext, that names the extension to be discarded > > from dumpbase to form aux output names. > > Here's a WIP

Re: [PATCH v2 2/2][ARM] Improve max_cond_insns setting for Cortex cores

2019-12-09 Thread Christophe Lyon
On Fri, 6 Dec 2019 at 19:47, Wilco Dijkstra wrote: > > Hi Christophe, > > > In practice, how do you activate it when running the GCC testsuite? Do > > you plan to send a GCC patch to enable this assembler flag, or do you > > locally enable that option by default in your binutils? > > The warning i

Re: copy/copy_backward/fill/fill_n/equal rework

2019-12-09 Thread François Dumont
After completing this work and running more tests I realized that the declaration of algos was still not ideal. So here is another version where algos are not re-declare in stl_deque.h, I rather include stl_algobase.h in deque.tcc. The problem was spotted but another patch I am going to submit

Re: [PATCH] Canonicalize fancy ways of expressing blend operation into COND_EXPR (PR tree-optimization/92834)

2019-12-09 Thread Richard Biener
On Fri, 6 Dec 2019, Jakub Jelinek wrote: > Hi! > > The following patch canonicalizes fancy ways of writing cond ? A : B > into COND_EXPR, which is what we expect people writing and thus are able to > optimize it better. If in some case we wouldn't optimize it better, > the right way would be imp

Re: [PATCH] Come up with constructors of symtab_node, cgraph_node and varpool_node.

2019-12-09 Thread Martin Liška
On 12/5/19 5:25 PM, Martin Sebor wrote: On 12/5/19 8:13 AM, Martin Liška wrote: On 12/5/19 2:03 PM, Jan Hubicka wrote: Hi. As mentioned in the PR, there are classes in cgraph.h that are not PODs and are initialized with ggc_alloc_cleared. So that I'm suggesting to use proper constructors. I ad

Re: [PATCH] Enhance _GLIBCXX_DEBUG constexpr support

2019-12-09 Thread François Dumont
After completing execution of all tests I had to fix implementation of __check_singular to get only 1 return statement. On 12/2/19 8:31 PM, François Dumont wrote: Hi     Here is a patch to enhance constexpr support in _GLIBCXX_DEBUG. I work on std::lower_bound/upper_bound to find out if Deb

Re: [PATCH] Come up with constructors of symtab_node, cgraph_node and varpool_node.

2019-12-09 Thread Martin Liška
On 12/7/19 12:49 AM, Bernhard Reutner-Fischer wrote: On 5 December 2019 16:24:53 CET, "Martin Liška" wrote: -/* Allocate new callgraph node. */ - -inline cgraph_node * -symbol_table::allocate_cgraph_symbol (void) -{ - cgraph_node *node; - - node = ggc_cleared_alloc (); - node->type = SYMTAB

[PATCH] Fix _GLIBCXX_DEBUG tests static_assert lines

2019-12-09 Thread François Dumont
When applying: 2019-11-26  François Dumont      * include/debug/array (array<>::fill): Add C++20 constexpr.     (array<>::swap): Likewise. I forgot to adapt some line numbers. Committed as trivial. François diff --git a/libstdc++-v3/testsuite/23_containers/array/tuple_interface/get_debug_ne

Re: [PATCH 09/49] gimple const-correctness fixes

2019-12-09 Thread Richard Biener
On Fri, Dec 6, 2019 at 6:47 PM David Malcolm wrote: > > On Fri, 2019-12-06 at 11:52 +0100, Richard Biener wrote: > > On Sat, Nov 16, 2019 at 2:20 AM David Malcolm > > wrote: > > > This patch converts various "gimple *" to "const gimple *" and > > > similar > > > fixes for gimple subclasses, addin

Re: [PATCH 09/49] gimple const-correctness fixes

2019-12-09 Thread Richard Biener
On Sat, Dec 7, 2019 at 3:28 PM Jeff Law wrote: > > On Fri, 2019-11-15 at 20:22 -0500, David Malcolm wrote: > > This patch converts various "gimple *" to "const gimple *" and > > similar > > fixes for gimple subclasses, adding is_a_helper for gimple subclasses > > to support the const form of as_a,

Re: [patch, fortran] Introduce -finline-pack

2019-12-09 Thread Richard Biener
On Sat, Dec 7, 2019 at 2:53 PM Thomas Koenig wrote: > > Hello world, > > the attached patch introduces a new option, -finline-pack. > > Since the fix for PR88821, we now do inline packing of > arguments (if required) via the scalarizer, instead of > using _gfortran_internal_[un]pack when optimizin

Re: [PATCH 00/49] RFC: Add a static analysis framework to GCC

2019-12-09 Thread Richard Biener
On Fri, Dec 6, 2019 at 11:31 PM Jeff Law wrote: > > On Wed, 2019-12-04 at 12:55 -0700, Martin Sebor wrote: > > On 11/15/19 6:22 PM, David Malcolm wrote: > > > This patch kit introduces a static analysis pass for GCC that can > > > diagnose > > > various kinds of problems in C code at compile-time

Re: [PATCH] Allow entry point markers without debug support in accelerator compiler

2019-12-09 Thread Richard Biener
On Fri, Dec 6, 2019 at 6:27 PM Kwok Cheung Yeung wrote: > > Hello > > A number of the libgomp tests running with AMD GCN offloading fail with > the following internal compiler error: > > during RTL pass: final > /scratch/ci-cs/amdtest/upstream-offload/src/gcc-mainline/libgomp/testsuite/libgomp.for

  1   2   >