Re: Mention -std=c2x in GCC 9 release notes

2019-05-03 Thread Gerald Pfeifer
On Thu, 2 May 2019, Joseph Myers wrote: > This patch adds a mention of -std=c2x and associated options, and the > single new C2X feature supported (given the early stage of C2X > development when we left development stage 1), to the GCC 9 release > notes. Nice! Thanks for doing this in time for t

Re: [v3 PATCH] Make stateful allocator propagation more consistent for operator+(basic_string) (P1165R1)

2019-05-03 Thread Jonathan Wakely
On 02/05/19 17:54 +0100, Nina Dinka Ranns wrote: Tested on Linux x86_64 Make stateful allocator propagation more consistent for operator+(basic_string) (P1165R1) 2019-05-01 Nina Dinka Ranns Make stateful allocator propagation more consistent for operator+(basic_string) (P1165R1)

Re: [PATCH] libphobos: RISC-V: Fix soft-float build errors with IEEE exception flags

2019-05-03 Thread Maciej W. Rozycki
On Fri, 3 May 2019, Maciej W. Rozycki wrote: > > Technically it is an architecture issue not an ABI issue. If you > > compile for -march=rv32imac -mabi=ilp32 then you can't use FP > > instructions. If you compile for -march=rv32imafc -mabi=ilp32 then > > you can use FP instructions, but we don't

Go patch committed: Optimize array range clear

2019-05-03 Thread Ian Lance Taylor
This patch to the Go frontend by Cherry Zhang recognizes and optimizes array range clear. It looks for for i := range a { a[i] = zero } for array or slice a, and rewrites it to call memclr, as the gc compiler does. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline

Re: [PATCH] libphobos: RISC-V: Fix soft-float build errors with IEEE exception flags

2019-05-03 Thread Maciej W. Rozycki
On Thu, 2 May 2019, Jim Wilson wrote: > > within inline assembly, to access IEEE exception flags. The use of > > these instructions is not allowed when building for a soft-float ABI. > > Technically it is an architecture issue not an ABI issue. If you > compile for -march=rv32imac -mabi=ilp32 t

Re: [PATCH] PR libstdc++/61761 fix std::proj for targets without C99 cproj

2019-05-03 Thread Jonathan Wakely
On 03/05/19 14:34 +, Szabolcs Nagy wrote: On 03/05/2019 13:08, Jonathan Wakely wrote: On 03/05/19 11:21 +, Szabolcs Nagy wrote: On 03/05/2019 12:16, Jonathan Wakely wrote: Hmm, which file in the source tree does the include/cmath symlink in the build tree point to? /work/b/build-aarc

[PATCH] Avoid -Woverflow warning in __numeric_limits_integer

2019-05-03 Thread Jonathan Wakely
This is the same fix as was done for std::numeric_limits in r183905. PR libstdc++/52119 * include/ext/numeric_traits.h (__glibcxx_min): Avoid integer overflow warning with -Wpedantic -Wsystem-headers. Tested powerpc64le-linux, committed to trunk. commit 6320e854115f7bb9b

libgo patch committed: Disable TestGroupIds on AIX

2019-05-03 Thread Ian Lance Taylor
This patch by Clément Chigot disables the os/user package TestGroupIds test on AIX. Bootstrapped and ran os/user tests on x86_64-pc-linux-gnu. Committed to mainline and GCC 9 branch. Ian Index: gcc/go/gofrontend/MERGE === --- gcc/go

Re: [PATCH] Prep for PR88828 fix

2019-05-03 Thread H.J. Lu
On Fri, May 3, 2019 at 6:02 AM Richard Biener wrote: > > > The following refactors simplify_vector_constructor and adds > handling of constants to it in a straight-forward way. > > A followup will handle the testcases posted in HJs patch. > > Bootstrap / regtest running on x86_64-unknown-linux-gnu

V6 [PATCH] Optimize vector constructor

2019-05-03 Thread H.J. Lu
On Thu, May 2, 2019 at 10:53 AM H.J. Lu wrote: > > On Thu, May 2, 2019 at 7:55 AM Richard Biener > wrote: > > > > On Thu, May 2, 2019 at 4:54 PM Richard Biener > > wrote: > > > > > > On Mon, Mar 11, 2019 at 8:03 AM H.J. Lu wrote: > > > > > > > > On Fri, Mar 8, 2019 at 7:03 PM Richard Biener > >

Merge from trunk to gccgo branch

2019-05-03 Thread Ian Lance Taylor
I've merged trunk revision 270851 to the gccgo branch. Ian

[PATCH] simplify_vector_constructor: Rename the second elt to elem

2019-05-03 Thread H.J. Lu
simplify_vector_constructor has constructor_elt *elt; ... FOR_EACH_VEC_SAFE_ELT (CONSTRUCTOR_ELTS (op), i, elt) { ... unsigned int elt; ... } This patch renames the second elt to elem to avoid shadowing the first elt. * tree-ssa-forwprop.c (simplify_vector_c

Re: [PATCH] Silent -Wformat-truncation warnings in date_and_time.c.

2019-05-03 Thread Steve Kargl
On Fri, May 03, 2019 at 12:53:06PM +0200, Martin Liška wrote: > > The patch is about suppression of the following warning: > > /home/gcc/buildworker/zenith-gcc-trunk-weekly/build/libgfortran/intrinsics/date_and_time.c:165:33: > warning: ‘%04d’ directive output may be truncated writing between 4

Re: [PATCH] Silent -Wformat-truncation warnings in date_and_time.c.

2019-05-03 Thread Dominique d'Humières
Martin, With your patch I still see ../../../work/libgfortran/intrinsics/date_and_time.c:168:33: warning: '%03d' directive output may be truncated writing between 3 and 8 bytes into a region of size between 0 and 4 [-Wformat-truncation=] TIA Dominique

Re: [PATCH] PR libstdc++/61761 fix std::proj for targets without C99 cproj

2019-05-03 Thread Szabolcs Nagy
On 03/05/2019 13:08, Jonathan Wakely wrote: > On 03/05/19 11:21 +, Szabolcs Nagy wrote: >> On 03/05/2019 12:16, Jonathan Wakely wrote: >>> Hmm, which file in the source tree does the include/cmath symlink in >>> the build tree point to? >> >> /work/b/build-aarch64-none-elf/obj/gcc2/aarch64-none

[arm] PR target/89400 fix thumb1 unaligned access expansion

2019-05-03 Thread Richard Earnshaw (lists)
Armv6 has support for unaligned accesses to memory. However, the thumb1 code patterns were trying to use the 32-bit code constraints. One failure mode from this was that the patterns are designed to be compatible with conditional execution and this was then causing an assert in the compiler. The

Re: [PATCH] Fix PR90316

2019-05-03 Thread Richard Biener
On Fri, 3 May 2019, Richard Biener wrote: > > I am testing the following patch to remove the code determining > the target virtual operand to walk to and instead compute it > based on the immediate dominator which we will reach anyways > (or a dominating block) during maybe_skip_until. > > More

[PATCH] Prep for PR88828 fix

2019-05-03 Thread Richard Biener
The following refactors simplify_vector_constructor and adds handling of constants to it in a straight-forward way. A followup will handle the testcases posted in HJs patch. Bootstrap / regtest running on x86_64-unknown-linux-gnu. Richard. 2019-05-03 Richard Biener PR tree-optimiz

[wwwdocs] C++17 library is no longer experimental

2019-05-03 Thread Jonathan Wakely
I've committed this patch to /gcc-9/changes.html (and a follow-up to fix some bad HTML markup). Index: htdocs/gcc-9/changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-9/changes.html,v retrieving revision 1.63 diff -u -r1.63 chan

Re: libstdc++/90277 Review rehash policy

2019-05-03 Thread Jonathan Wakely
On 03/05/19 06:21 +0200, François Dumont wrote: Hi     This is a patch I already proposed in another thread but I review it and moreover there is now a PR associated so I am submitting it as a brand new one.     So working on PR 68303 I noticed that one of the performance issue of current i

Re: [PATCH] PR libstdc++/61761 fix std::proj for targets without C99 cproj

2019-05-03 Thread Jonathan Wakely
On 03/05/19 11:21 +, Szabolcs Nagy wrote: On 03/05/2019 12:16, Jonathan Wakely wrote: On 03/05/19 09:23 +, Szabolcs Nagy wrote: On 01/05/2019 01:09, Jonathan Wakely wrote: The current generic implementation of __complex_proj used when cproj is not available calculates the wrong project

Re: [RFC][PATCH] Postpone print of --help=* option.

2019-05-03 Thread Martin Liška
On 5/3/19 1:33 PM, Szabolcs Nagy wrote: > On 01/04/2019 13:11, Martin Liška wrote: >> Hi. >> >> Last week I was curious which warnings are disabled by default on top >> of -Wall and -Wextra. Thus I used --help=warning and noticed some discrepancy >> in between documentation and output of the --help

Re: [RFC][PATCH] Postpone print of --help=* option.

2019-05-03 Thread Szabolcs Nagy
On 01/04/2019 13:11, Martin Liška wrote: > Hi. > > Last week I was curious which warnings are disabled by default on top > of -Wall and -Wextra. Thus I used --help=warning and noticed some discrepancy > in between documentation and output of the --help option. > > I created PR89885 where I explai

Re: [PATCH] PR libstdc++/61761 fix std::proj for targets without C99 cproj

2019-05-03 Thread Szabolcs Nagy
On 03/05/2019 12:16, Jonathan Wakely wrote: > On 03/05/19 09:23 +, Szabolcs Nagy wrote: >> On 01/05/2019 01:09, Jonathan Wakely wrote: >>> The current generic implementation of __complex_proj used when cproj is >>> not available calculates the wrong projection, giving a different result >>> tha

[PATCH] Fix PR90316

2019-05-03 Thread Richard Biener
I am testing the following patch to remove the code determining the target virtual operand to walk to and instead compute it based on the immediate dominator which we will reach anyways (or a dominating block) during maybe_skip_until. More simplifying might be possible but I'm trying to keep the

Re: [PATCH] PR libstdc++/61761 fix std::proj for targets without C99 cproj

2019-05-03 Thread Jonathan Wakely
On 03/05/19 09:23 +, Szabolcs Nagy wrote: On 01/05/2019 01:09, Jonathan Wakely wrote: The current generic implementation of __complex_proj used when cproj is not available calculates the wrong projection, giving a different result than given by C99's cproj. When C99 cproj is not available b

[PATCH] Support again multiple --help options (PR other/90315).

2019-05-03 Thread Martin Liška
Hi. The patch prints all values requested in multiple --help options. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: 2019-05-03 Martin Liska PR other/90315 * opts-global.c (decode_options): Print h

[PATCH] Silent -Wformat-truncation warnings in date_and_time.c.

2019-05-03 Thread Martin Liška
Hi. The patch is about suppression of the following warning: /home/gcc/buildworker/zenith-gcc-trunk-weekly/build/libgfortran/intrinsics/date_and_time.c:165:33: warning: ‘%04d’ directive output may be truncated writing between 4 and 11 bytes into a region of size 9 [-Wformat-truncation=] /home/g

Re: [PATCH] Error only when -mabi=ms is used on a non-MS_ABI system (PR sanitizer/90312).

2019-05-03 Thread Martin Liška
On 5/2/19 5:19 PM, Jakub Jelinek wrote: > On Thu, May 02, 2019 at 05:11:02PM +0200, Martin Liška wrote: >> As mentioned in the PR, we should not provide an error on mingw and cygwin >> targets. >> >> Patch can bootstrap on x86_64-linux-gnu and survives regression tests. > > Can one use sysv_abi in

Re: [PATCH] Avoid epilogue peeling for x264 vectorization in x264_pixel_sad_x4_8x8

2019-05-03 Thread Richard Biener
On Wed, Dec 12, 2018 at 11:54 AM Richard Biener wrote: > > > The following improves x264 vectorization by avoiding peeling for gaps > noticing that when the upper half of a vector is unused we can > load the lower part only (and fill the upper half with zeros - this > is what x86 does automaticall

[PATCH] Fix PR89518

2019-05-03 Thread Richard Biener
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2019-05-03 Richard Biener PR middle-end/89518 * match.pd: Add pattern to optimize (A / B) * B + (A % B) to A. * gcc.dg/pr89518.c: New testcase. Index: gcc/match.pd ==

Re: [PATCH] Fix part of PR87314, folding of &decl != "foo"

2019-05-03 Thread Richard Biener
On Thu, Jan 10, 2019 at 2:41 PM Richard Biener wrote: > > > This fixes $subject and also "foo" != "bar" folding which was > somehow missing. It fixes only parts of the PR since the PR > is about PTA tracking string constants. > > It might help PR88775 but unless I can confirm that this is > just

[PATCH] Improve load/store of non-native vector sizes (PR88963)

2019-05-03 Thread Richard Biener
This helps code generated by vector lowering of large vectors to small target supported ones by applying the same logic to loads and stores. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2019-05-03 Richard Biener PR tree-optimization/88963

[PATCH] Fix compile-time regression with new VN

2019-05-03 Thread Richard Biener
When installing the new VN I forgot to update DOM fast queries before running it from PRE. Bootstrap / regtest running on x86_64-unknown-linux-gnu, will install to trunk and branch. It doesn't solve the PR in full which is about a regression from GCC 7 - working on that. Richard. 2019-05-03

Re: [PATCH][stage1] Prefer to use strlen call instead of inline expansion (PR target/88809).

2019-05-03 Thread Dominique d'Humières
Done as revision r270843. Dominique > Le 3 mai 2019 à 11:06, Martin Liška a écrit : > > Feel free to install the patch please. > > Martin

Re: [PATCH] PR libstdc++/61761 fix std::proj for targets without C99 cproj

2019-05-03 Thread Szabolcs Nagy
On 01/05/2019 01:09, Jonathan Wakely wrote: > The current generic implementation of __complex_proj used when cproj is > not available calculates the wrong projection, giving a different result > than given by C99's cproj. > > When C99 cproj is not available but isinf and copysign are, use those to

Re: [PATCH][stage1] Prefer to use strlen call instead of inline expansion (PR target/88809).

2019-05-03 Thread Martin Liška
On 5/3/19 11:04 AM, Dominique d'Humières wrote: > Hi Martin > > On Tue, Apr 30, 2019 at 10:00:07AM -0600, Jeff Law wrote: >>> 2019-04-23 Martin Liska >>> >>> PR target/88809 >>> * config/i386/i386.c (ix86_expand_strlen): Use strlen call. >>> With -minline-all-stringops use inline ex

Re: [PATCH][stage1] Prefer to use strlen call instead of inline expansion (PR target/88809).

2019-05-03 Thread Dominique d'Humières
Hi Martin On Tue, Apr 30, 2019 at 10:00:07AM -0600, Jeff Law wrote: > > 2019-04-23 Martin Liska > > > > PR target/88809 > > * config/i386/i386.c (ix86_expand_strlen): Use strlen call. > > With -minline-all-stringops use inline expansion using 4B loop. > > * doc/invoke.texi: Doc

Re: [PATCH][stage1] Prefer to use strlen call instead of inline expansion (PR target/88809).

2019-05-03 Thread Martin Liška
On 5/2/19 11:36 PM, Jakub Jelinek wrote: > On Tue, Apr 30, 2019 at 10:00:07AM -0600, Jeff Law wrote: >>> 2019-04-23 Martin Liska >>> >>> PR target/88809 >>> * config/i386/i386.c (ix86_expand_strlen): Use strlen call. >>> With -minline-all-stringops use inline expansion using 4B loop.

Re: [PATCH][GCC][AArch64] Vectorise __builtin_signbit on aarch64

2019-05-03 Thread Przemyslaw Wirkus
Hi Richard, New patch adds a new IFN_SIGNBIT internal function that maps to signbit_optab. gcc/ChangeLog: 2019-05-05 Przemyslaw Wirkus * gcc/internal-fn.def (SIGNBIT): New. * gcc/config/aarch64/aarch64-simd.md (signbitv4sf2): New expand defined. gcc/testsuite/ChangeLo

Patch ping (was Re: [WIP PATCH] Improve tail call analysis and inliner EH clobber through variable life analysis (PR tree-optimization/89060))

2019-05-03 Thread Jakub Jelinek
Hi! I'd like to ping this patch for stage1. Bootstrapped/regtested it again last night successfully. On Fri, Feb 08, 2019 at 08:36:33AM +0100, Jakub Jelinek wrote: > The following patch uses a simple data flow to find live (addressable) > variables at certain spots (for tail call discovery at the

Re: [PATCH] Use _GLIBCXX_NOEXCEPT_IF for std::swap

2019-05-03 Thread Stephan Bergmann
On 03/05/2019 00:30, Jonathan Wakely wrote: On 02/05/19 21:33 +0100, Jonathan Wakely wrote: This was also reported as https://gcc.gnu.org/PR90314 And here's what I've tested and committed. Thanks, that fixes things for me.

Re: [PATCH] Fix ipa-devirt ICEs with types requiring structural equality (PR tree-optimization/90303)

2019-05-03 Thread Richard Biener
On Fri, 3 May 2019, Jakub Jelinek wrote: > Hi! > > The following two functions assume that all types (in the latter case only > the TYPE_MAIN_VARIANT of it) have non-NULL TYPE_CANONICAL. That is > generally not something the FEs guarantee, if TYPE_CANONICAL is NULL, that > is TYPE_STRUCTURAL_EQU

[committed] Remove useless fincludedir from libitm/Makefile.am

2019-05-03 Thread Jakub Jelinek
Hi! When tweaking gcov_cdir, I've noticed libitm has completely useless fincludedir when it doesn't contain any fortran headers/modules. I assume it appeared just as a copy of the libgomp Makefile.am at some point initially. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, co

Re: [PATCH] Fix build with offloading (Re: [RFC][PATCH] Postpone print of --help=* option.)

2019-05-03 Thread Richard Biener
On Fri, 3 May 2019, Jakub Jelinek wrote: > Hi! > > On Thu, May 02, 2019 at 01:04:07PM +0200, Jakub Jelinek wrote: > > Well, that doesn't answer the question. > > I was wondering why you couldn't: > > > > 2019-05-02 Jakub Jelinek > > > > * opts.h (finish_options): Remove lang_mask argumen

[PATCH] Fix ipa-devirt ICEs with types requiring structural equality (PR tree-optimization/90303)

2019-05-03 Thread Jakub Jelinek
Hi! The following two functions assume that all types (in the latter case only the TYPE_MAIN_VARIANT of it) have non-NULL TYPE_CANONICAL. That is generally not something the FEs guarantee, if TYPE_CANONICAL is NULL, that is TYPE_STRUCTURAL_EQUALITY_P and generally the middle-end either punts on t

[PATCH] Fix build with offloading (Re: [RFC][PATCH] Postpone print of --help=* option.)

2019-05-03 Thread Jakub Jelinek
Hi! On Thu, May 02, 2019 at 01:04:07PM +0200, Jakub Jelinek wrote: > Well, that doesn't answer the question. > I was wondering why you couldn't: > > 2019-05-02 Jakub Jelinek > > * opts.h (finish_options): Remove lang_mask argument. > (print_help, help_option_argument): Declare. >

Re: [PATCH] Fold unfolded constants from initializers

2019-05-03 Thread Richard Biener
On Wed, Mar 13, 2019 at 12:35 PM Richard Biener wrote: > > > This fixes a missed optimization in the testcase in PR89698 > where we fail to fold an access to a virtual table slot because > it is (int (*) ()) 0 - yes, an unfolded INTEGER_CST. Callers > are not happy with this so the following make

Re: Let ldist ignore clobbers

2019-05-03 Thread Richard Biener
On Thu, May 2, 2019 at 8:41 PM Marc Glisse wrote: > > Hello, > > this lets ldist ignore clobbers. In the testcase, this makes us lose the > information that b is clobbered, but being able to distribute seems worth > it. > > Bootstrap+regtest on x86_64-pc-linux-gnu. OK. Thanks, Richard. > 2019-0

Patch ping (was Re: [C++ PATCH] Fix up C++ loop construct debug info without -gno-statement-frontiers (PR debug/90197))

2019-05-03 Thread Jakub Jelinek
Hi! On Fri, Apr 26, 2019 at 05:45:27PM +0200, Jakub Jelinek wrote: > 2019-04-26 Jakub Jelinek > > PR debug/90197 > * cp-gimplify.c (genericize_cp_loop): Emit a DEBUG_BEGIN_STMT > before the condition (or if missing or constant non-zero at the end > of the loop. Emit a

Re: [PATCH] Cleanup TODO handling for CFG clenaup & SSA update

2019-05-03 Thread Richard Biener
On Fri, Mar 8, 2019 at 4:59 PM Richard Biener wrote: > > On March 8, 2019 3:52:36 PM GMT+01:00, Jeff Law wrote: > >On 3/8/19 7:23 AM, Richard Biener wrote: > >> > >> There's an old comment > >> > >> /* When cleanup_tree_cfg merges consecutive blocks, it may > >> perform some simpli