[PATCH][x86] Add missing intrinsics for vrcp14sd/ss instructions.

2017-05-08 Thread Koval, Julia
Hi, This patch adds missing intrinsics for VRCP14SD and VRCP14SS instructions: _mm_mask_rcp14_sd _mm_maskz_rcp14_sd _mm_mask_rcp14_ss _mm_maskz_rcp14_ss These instructions and intrinsics are described in SDM Vol. 2C 5-487. gcc/ * config/i386/avx512fintrin.h (_mm_mask_rcp14_sd, _m

Re: [PATCH] handle enumerated types in -Wformat-overflow (PR 80397)

2017-05-08 Thread Martin Sebor
On 04/28/2017 12:35 PM, Jeff Law wrote: On 04/26/2017 11:05 AM, Martin Sebor wrote: On 04/24/2017 03:35 PM, Jeff Law wrote: On 04/11/2017 12:57 PM, Martin Sebor wrote: In a review of my fix for bug 80364 Jakub pointed out that to determine whether an argument to an integer directive is of an i

Re: [PATCH] xtensa: add support for SSP

2017-05-08 Thread Max Filippov
On Mon, May 8, 2017 at 4:24 PM, augustine.sterl...@gmail.com wrote: > On Mon, May 8, 2017 at 3:55 PM, Max Filippov wrote: >> gcc/ >> 2017-03-27 Max Filippov >> >> * config/xtensa/xtensa-protos.h >> (xtensa_initial_elimination_offset): New declaration. >> * config/xtensa

Re: [PATCH] xtensa: add support for SSP

2017-05-08 Thread augustine.sterl...@gmail.com
On Mon, May 8, 2017 at 3:55 PM, Max Filippov wrote: > gcc/ > 2017-03-27 Max Filippov > > * config/xtensa/xtensa-protos.h > (xtensa_initial_elimination_offset): New declaration. > * config/xtensa/xtensa.c (xtensa_initial_elimination_offset): > New function. Move i

[PATCH] xtensa: add support for SSP

2017-05-08 Thread Max Filippov
gcc/ 2017-03-27 Max Filippov * config/xtensa/xtensa-protos.h (xtensa_initial_elimination_offset): New declaration. * config/xtensa/xtensa.c (xtensa_initial_elimination_offset): New function. Move its body from the INITIAL_ELIMINATION_OFFSET macro definiti

[PATCH] -fdump option docs

2017-05-08 Thread Nathan Sidwell
I've committed this to sort the -fdump options. I left the generic -fdump-noaddr, -fdump-unnumbered and -fdump-unnumbered-links at the start. nathan -- Nathan Sidwell 2017-05-08 Nathan Sidwell * doc/invoke.texi: Alphabetize -fdump options. Index: doc/invoke.texi ===

Re: [PATCH] decl lang hooks

2017-05-08 Thread Joseph Myers
On Mon, 8 May 2017, Nathan Sidwell wrote: > cp/name-lookup has a twisty maze of forwarding functions. One reason is that > a couple of the names are used directly by c-common.c. However, we now have > lang hooks for these things. > > This patch changes the C++ FE to override the pushdecl and ge

[Patch, Fortran, OOP] PR 79311: ICE in generate_finalization_wrapper, at fortran/class.c:1992

2017-05-08 Thread Janus Weil
Hi all, the attached patch fixes an ICE-on-valid problem with finalization by making sure that the finalization procedures are properly resolved. In the test case, the finalizer of the component type was not being resolved if the superordinate type had a finalizer itself. The patch also fixes a

Re: [patch, fortran] Reduce stack use in blocked matmul

2017-05-08 Thread Jerry DeLisle
On 05/08/2017 12:29 PM, Thomas Koenig wrote: > Am 08.05.2017 um 18:58 schrieb Jerry DeLisle: > > he attached patch reduces the stack usage by the blocked >>> version of matmul for cases where we don't need the full buffer. >>> This should improve stack usage. >>> >>> OK for trunk? >>> >> >> OK, th

[committed] correct %D quoting in gcc/config/sol2-c.c

2017-05-08 Thread Martin Sebor
In preparation for committing the meat of the patch for bug 80280 I've committed the following in r247758 as an obvious fix to prevent the new -Wformat warning from breaking Solaris bootstrap. Bootstrap is currently broken due to 80673 (that looks like a separate issue from the warning). Martin

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Peter Bergner
On 05/08/2017 01:20 PM, Peter Bergner wrote: > That is what the previous patch did, but as I mention above, > we generate slightly better code for some test cases (other > tests seemed to generate the same code) if we don't attempt > to handle the decision tree case. I'll note that the current >

Re: [PATCH 2/n] [PR tree-optimization/78496] Simplify ASSERT_EXPRs to facilitate jump threading

2017-05-08 Thread Jeff Law
On 05/08/2017 09:54 AM, Jeff Law wrote: So I'm not sure if changing VRP with your patches is a good thing when you could have used the new API in the first place ... I don't see that the changes to date around 78496 change things significantly in regards to the immediate plans to remove ASSERT_

Re: [PATCH v4 0/12] [i386] Improve 64-bit Microsoft to System V ABI pro/epilogues

2017-05-08 Thread Daniel Santos
On 05/06/2017 03:22 PM, Daniel Santos wrote: gcc-5.4.0 CFLAGS="-march=native -O2 -g": 74 gcc-7.1.0 CFLAGS="-march=native -O2 -g": 74 gcc-7.1.0 CFLAGS="-march=nocona -mtune=generic -O2 -g": 79 gcc-7.1.0 CFLAGS="-march=native -O2 -g -mcall-ms2sysv-xlogues" (patched): 31 I'm building out a clean

Re: [PATCH 1/7] enhance -Wformat to detect quoting problems (PR 80280 et al.)

2017-05-08 Thread Martin Sebor
On 05/05/2017 11:49 AM, Joseph Myers wrote: On Thu, 4 May 2017, Martin Sebor wrote: I like the flags2 idea. I split up the initialization array to also detect quoted %K, and unquoted %R and %r. With that I ran into test failures that took me a bit to debug. It turns out that there's code (a

Re: [patch, fortran] Reduce stack use in blocked matmul

2017-05-08 Thread Thomas Koenig
Am 08.05.2017 um 18:58 schrieb Jerry DeLisle: he attached patch reduces the stack usage by the blocked version of matmul for cases where we don't need the full buffer. This should improve stack usage. OK for trunk? OK, thanks. Is this something we should consider for backporting to gcc-7?

Re: Use "oacc kernels" attribute for OpenACC kernels

2017-05-08 Thread Thomas Schwinge
Hi! On Thu, 4 Aug 2016 16:07:00 +0200, I wrote: > Ping. > > On Wed, 27 Jul 2016 12:06:59 +0200, I wrote: > > On Mon, 25 Jan 2016 16:09:14 +0100, Jakub Jelinek wrote: > > > On Mon, Jan 25, 2016 at 10:06:50AM -0500, Nathan Sidwell wrote: > > > > On 01/04/16 10:39, Nathan Sidwell wrote: > > > > >Th

[PATCH] decl lang hooks

2017-05-08 Thread Nathan Sidwell
cp/name-lookup has a twisty maze of forwarding functions. One reason is that a couple of the names are used directly by c-common.c. However, we now have lang hooks for these things. This patch changes the C++ FE to override the pushdecl and getdecl lang hooks. In addition to simply overridi

C++ PATCH for c++/80178 (ABI of non-copyable class)

2017-05-08 Thread Jason Merrill
Bug 80178 points out that we are doing bitwise copy when passing a class with only deleted copy/move constructors; we should use invisible reference instead. The second patch updates the trunk to use -fabi-version=12 by default for GCC 8. Tested x86_64-pc-linux-gnu, applying to trunk. commit f34d

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Peter Bergner
On 05/08/2017 12:44 PM, Richard Biener wrote: On Wed, 26 Apr 2017, Peter Bergner wrote: One difference from the last patch is that I am no longer setting default_label to NULL when we emit a decision tree. I noticed that the decision tree code seemed to generate slightly better code for some o

[C++ PATCH] function decl pushing

2017-05-08 Thread Nathan Sidwell
This patch implements a couple of changes. 1) set DECL_ANTICIPATED before pushing an anticipated builtin. My overload management changes will keep the overload list ordered, so needs to know this up front. 2) pushdecl has some funky code to detect when we're trying to push a function decl i

[C++ PATCH] pushdecl

2017-05-08 Thread Nathan Sidwell
This small patch replaces pushdecl_with_scope with a more-specific pushdecl_outermost_localscope. It's used in 2 places to inject an artifical decl into the outermost block scope of a function (__FUNCTION__ var and lambda capture proxies). This moves some binding-level handling into name-look

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Richard Biener
On May 8, 2017 6:41:01 PM GMT+02:00, Peter Bergner wrote: >On 05/03/2017 08:32 AM, Richard Biener wrote: > > As for Bernhards concern I share this -- please intead make the > > interface take either a gimple_seq or a gimple_stmt_iterator > > instead of a basic-block. That makes it more obvious yo

Re: [PATCH 1/2] C++ template type diff printing

2017-05-08 Thread Nathan Sidwell
On 05/08/2017 12:51 PM, David Malcolm wrote: On Mon, 2017-05-08 at 07:36 -0400, Nathan Sidwell wrote: On 05/04/2017 07:44 PM, David Malcolm wrote: Is '-felide-type' a good name? Wouldn't something like '-fdiagnostic-elide-template-args' be better? Here I'm merely copying clang's option nam

[PATCH] correct length stpncpy handling in -Wformat-overflow (PR 80669)

2017-05-08 Thread Martin Sebor
The -Wformat-overflow warning newly enhanced in GCC 8.0 to detect reading past the end of the source sequence misinterprets the size argument to stpncpy as a request to read that many bytes from the source sequence, rather than the number of bytes to write. Like strncpy, the function never reads

Re: [PATCH] Don't assume __secure_getenv is available

2017-05-08 Thread Jerry DeLisle
On 05/07/2017 11:37 PM, Janne Blomqvist via fortran wrote: > PING > > On Thu, Apr 27, 2017 at 9:55 PM, Janne Blomqvist > wrote: >> On Thu, Apr 27, 2017 at 9:50 PM, Janne Blomqvist >> wrote: >> [snip] >> >> And on top of that patch this simple typo fix: >> >> diff --git a/libgfortran/runtime/envi

[PATCH] Tweak static assertions in std::optional

2017-05-08 Thread Jonathan Wakely
This simplifies the conditions of some static assertions, using one assertion per condition instead of asserting the conjunction. This means we don't need any string literal, because the conditions are quite readable now. * include/std/optional: Use a separate static_assert per condition.

[PATCH v2,rs6000] Add built-in function support for compare bytes instruction

2017-05-08 Thread Kelvin Nilsen
This patch adds support for the compare bytes instruction, which has been available in the rs6000 architecture since Power6. Thank you to Segher Boessenkool for feedback on the original submission of this patch. The following refinements have been incorporated: 1. Changed the implementation and

Re: Test cases to check OpenACC offloaded function's attributes and classification

2017-05-08 Thread Thomas Schwinge
Hi! Ping. On Thu, 4 Aug 2016 16:06:10 +0200, I wrote: > Ping. > > On Wed, 27 Jul 2016 10:59:02 +0200, I wrote: > > OK for trunk? (In the mean time, I also added some more testing.) commit b7d61270dfc581a6ea130f7a4fa7506a0a5762d8 Author: Thomas Schwinge Date: Mon May 8 18:22:50 2017 +0200

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Nathan Sidwell
On 05/08/2017 11:17 AM, Andreas Schwab wrote: g++.dg/cpp0x/defaulted34.C has the same problem. I'd managed to flub my xcompiler build. The code path for fn-descriptor-using targets is different, and I'd missed that the shadowed outer 'fn' was expected to have been initialized in that case.

Re: [patch, fortran] Reduce stack use in blocked matmul

2017-05-08 Thread Jerry DeLisle
On 05/05/2017 01:31 PM, Thomas Koenig wrote: > Hello world, > > the attached patch reduces the stack usage by the blocked > version of matmul for cases where we don't need the full buffer. > This should improve stack usage. > > Regression-tested. I also added a stress test (around 3 secs of > CP

Re: [PATCH 1/2] C++ template type diff printing

2017-05-08 Thread David Malcolm
On Mon, 2017-05-08 at 07:36 -0400, Nathan Sidwell wrote: > On 05/04/2017 07:44 PM, David Malcolm wrote: > > This patch kit implements two new options to make it easier > > to read diagnostics involving mismatched template types: > >-fdiagnostics-show-template-tree and > >-fno-elide-type. >

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Peter Bergner
On 05/03/2017 08:32 AM, Richard Biener wrote: > As for Bernhards concern I share this -- please intead make the > interface take either a gimple_seq or a gimple_stmt_iterator > instead of a basic-block. That makes it more obvious you > can't use things like gsi_after_labels. Also I think it's mo

Re: [PATCH] [PR79542][Ada] Fix ICE in dwarf2out.c with nested func. inlining

2017-05-08 Thread Jason Merrill
On Wed, May 3, 2017 at 3:22 PM, Jason Merrill wrote: > On Tue, Mar 14, 2017 at 8:24 AM, Pierre-Marie de Rodat > wrote: >> Hello, >> >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79542 reports an ICE in >> dwarf2out.c for an Ada testcase built with optimization. >> >> This crash happens during t

[PATCH 4/4] Vect peeling cost model

2017-05-08 Thread Robin Dapp
gcc/ChangeLog: 2017-05-08 Robin Dapp * tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Remove unused variable. (vect_enhance_data_refs_alignment): Compare best peelings costs to doing no peeling and choose no peeling if equal. diff --git a/gcc

[PATCH 3/4] Vect peeling cost model

2017-05-08 Thread Robin Dapp
gcc/ChangeLog: 2017-05-08 Robin Dapp * tree-vect-data-refs.c (vect_peeling_hash_choose_best_peeling): Return peel info. (vect_enhance_data_refs_alignment): Compute full costs when peeling for unknown alignment, compare to costs for peeling for known alig

Re: [RFC] S/390: Alignment peeling prolog generation

2017-05-08 Thread Robin Dapp
> So the new part is the last point? There's a lot of refactoring in 3/3 that > makes it hard to see what is actually changed ... you need to resist > in doing this, it makes review very hard. The new part is actually spread across the three last "-"s. Attached is a new version of [3/3] split u

Re: [PATCH 1/4][PR tree-optimization/78496] Don't simplify conditionals too early in VRP

2017-05-08 Thread Jeff Law
On 05/08/2017 01:32 AM, Richard Biener wrote: Note that I tried last stage3 (it ended up being too late) to get rid of ASSERT_EXPRs doing substitute-and-fold itself (basically copy-propagate them out at this point rather than as a separate thing later). This is because the ASSERT_EXPR uses inte

Re: [PATCH 2/n] [PR tree-optimization/78496] Simplify ASSERT_EXPRs to facilitate jump threading

2017-05-08 Thread Jeff Law
On 05/08/2017 01:25 AM, Richard Biener via gcc-patches wrote: ps. An astute observer might note that improving the effectiveness of VRP jump threading seems counterproductive since I've stated I want to remove VRP jump threading. These improvements don't significantly change how I was planning

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Nathan Sidwell
On 05/08/2017 08:56 AM, Jason Merrill wrote: On Fri, May 5, 2017 at 4:07 PM, Nathan Sidwell wrote: This cleanup patch kills IDENTIFIER_NAMESPACE_VALUE and replaces {get,set}_namespace_binding with get_namespace_value and set_global_value respectively. I'd prefer to stick with the _binding nam

Re: [PATCH, RFC] warn about raw pointers that can be unique_ptr

2017-05-08 Thread Joseph Myers
Note that the new option will need documenting in invoke.texi for any patch version actually proposed for inclusion. -- Joseph S. Myers jos...@codesourcery.com

[CHKP] Attempt to fix PR79765 (multiversioning and instrumentation)

2017-05-08 Thread Alexander Ivchenko
Hi, I'm trying to fix the problem with function multiversioning and MPX instrumentation (PR79765) and I face several issues. I would appreciate your advice: The first problem that arises is that multiversioning tries to make versions out of thunks, which do not have bodies. This is fixed with th

MinGW compilation warnings in libiberty's xstrndup.c

2017-05-08 Thread Eli Zaretskii
When compiling libiberty (as part of GDB) with MinGW on MS-Windows, I see the following warning: gcc -c -DHAVE_CONFIG_H -O2 -gdwarf-4 -g3 -D__USE_MINGW_ACCESS -I. -I./../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic -D_GNU_SOURCE ./xstrndup.c -o xstrndup.o

MinGW compilation warnings in libiberty's waitpid.c

2017-05-08 Thread Eli Zaretskii
When compiling libiberty (as part of GDB) with MinGW on MS-Windows, I see the following warning: gcc -c -DHAVE_CONFIG_H -O2 -gdwarf-4 -g3 -D__USE_MINGW_ACCESS -I. -I./../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic -D_GNU_SOURCE ./waitpid.c -o waitpid.o

MinGW compilation warnings in libiberty's include/environ.h

2017-05-08 Thread Eli Zaretskii
When compiling libiberty (as part of GDB) with MinGW on MS-Windows, I see the following warning: gcc -c -DHAVE_CONFIG_H -O2 -gdwarf-4 -g3 -D__USE_MINGW_ACCESS -I. -I./../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic -D_GNU_SOURCE ./setenv.c -o setenv.o

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Andreas Schwab
On Mai 08 2017, Nathan Sidwell wrote: > On 05/08/2017 08:07 AM, Andreas Schwab wrote: >> On Mai 05 2017, Nathan Sidwell wrote: >> >>> This cleanup patch kills IDENTIFIER_NAMESPACE_VALUE and replaces >>> {get,set}_namespace_binding with get_namespace_value and set_global_value >>> respectively. >

[PATCH] Clarify mt_allocator documentation w.r.t deallocation

2017-05-08 Thread Jonathan Wakely
The interwebs seem confused by these docs, and think it means that mt_allocator just leaks memory instead of deallocating it. The interwebs are pretty dumb sometimes. * doc/xml/manual/mt_allocator.xml: Clarify deallocation behaviour. * doc/html/*: Regenerate. Committed to trunk.

Re: [PATCH 3/3] [ARC] Add support for advanced mpy/mac instructions.

2017-05-08 Thread Andrew Burgess
* Claudiu Zissulescu [2017-04-25 15:03:44 +0200]: > Add support for MAC and DMPY instructions. ARCv2 Only. > > gcc/ > 2016-12-08 Claudiu Zissulescu > > * config/arc/arc.c (arc_conditional_register_usage): Handle ACCL, > ACCH registers. > * config/arc/arc.md (mulsidi3): Use

Re: [PATCH 2/2] Fast interrupts support.

2017-05-08 Thread Andrew Burgess
* Claudiu Zissulescu [2017-05-05 13:02:44 +0200]: > When a processor enters a fast interrupts handler, and duplicate > register banks are configured, the processor saves the user context by > saving the registers in the main register bank to these additional > registers in the duplicate register

[PATCH, rs6000] Add x86 instrinsic headers to GCC PPC64LE taget

2017-05-08 Thread Steven Munroe
A common issue in porting applications and packages is that someone may have forgotten that there is more than one hardware platform. A specific example is applications using Intel x86 intrinsic functions without appropriate conditional compile guards. Another example is a developer tasked to por

Re: [PATCH 1/2] Automatic context save/restore for regular interrupts.

2017-05-08 Thread Andrew Burgess
* Claudiu Zissulescu [2017-05-05 13:02:43 +0200]: > The AUX_IRQ_CTRL register controls the behavior of automated register > save and restore or prologue and epilogue sequences during a non-fast > interrupt entry and exit, and context save and restore instructions. > > A user passes to the compi

[PATCH, GCC/ARM, FYI] Define TM_MULTILIB_CONFIG for ARM multilib

2017-05-08 Thread Thomas Preudhomme
Hi, TM_MULTILIB_CONFIG is not set in config.gcc when building with multilib for arm targets, leading to config/arm/t-multilib not including any of the files (t-aprofile and t-rmprofile) definining the architecture and FPU to build multilib for. This patch fixes that by setting TM_MULTILIB_CONFIG

Re: [AArch64] Tighten move constraints for symbolic operands

2017-05-08 Thread Richard Earnshaw (lists)
On 31/03/17 09:34, Richard Sandiford wrote: > The movsi and movdi constraints allowed the source to be any > absolute symbolic expression ("S"). That's OK for operands that > have already been vetted by the aarch64_mov_operand predicate but > causes problems if the register allocator substitutes a

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Nathan Sidwell
On 05/08/2017 08:07 AM, Andreas Schwab wrote: On Mai 05 2017, Nathan Sidwell wrote: This cleanup patch kills IDENTIFIER_NAMESPACE_VALUE and replaces {get,set}_namespace_binding with get_namespace_value and set_global_value respectively. I'm getting this regression on ia64: FAIL: g++.dg/temp

Re: [PATCH] disable -Walloc-size-larger-than and -Wstringop-overflow for non-C front ends (PR 80545)

2017-05-08 Thread Martin Sebor
On 05/04/2017 10:13 PM, Jeff Law wrote: On 04/28/2017 04:02 PM, Martin Sebor wrote: The two options were included in -Wall and enabled for all front ends but only made to be recognized by the driver for the C family of compilers. That made it impossible to suppress those warnings when compiling

Re: [Testsuite, committed] Fix vector peeling test failures

2017-05-08 Thread Richard Biener via gcc-patches
On Mon, May 8, 2017 at 2:41 PM, Wilco Dijkstra wrote: > This fixes a few failures on ARM and AArch64 due to a recent change in > alignment peeling by switching the vector cost model off > (https://gcc.gnu.org/ml/gcc-patches/2017-05/msg00407.html). > > Tested on AArch64, ARM and x64 - committed as

[PATCH] Small PRE speedup

2017-05-08 Thread Richard Biener
Was sitting in my tree. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2017-05-08 Richard Biener * tree-ssa-pre.c (bitmap_set_and): Avoid bitmap copy. (bitmap_set_subtract_values): Likewise. Index: gcc/tree-ssa-pre.c =

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Nathan Sidwell
On 05/08/2017 08:56 AM, Jason Merrill wrote: On Fri, May 5, 2017 at 4:07 PM, Nathan Sidwell wrote: This cleanup patch kills IDENTIFIER_NAMESPACE_VALUE and replaces {get,set}_namespace_binding with get_namespace_value and set_global_value respectively. I'd prefer to stick with the _binding nam

Re: {PATCH] New C++ warning -Wcatch-value

2017-05-08 Thread Jason Merrill via gcc-patches
On Sun, May 7, 2017 at 8:05 PM, Martin Sebor wrote: > On 05/07/2017 02:03 PM, Volker Reichelt wrote: >> >> On 2 May, Martin Sebor wrote: >>> >>> On 05/01/2017 02:38 AM, Volker Reichelt wrote: Hi, catching exceptions by value is a bad thing, as it may cause slicing, i.e. >

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Nathan Sidwell
On 05/08/2017 08:07 AM, Andreas Schwab wrote: On Mai 05 2017, Nathan Sidwell wrote: This cleanup patch kills IDENTIFIER_NAMESPACE_VALUE and replaces {get,set}_namespace_binding with get_namespace_value and set_global_value respectively. I'm getting this regression on ia64: Sorry, I'll tak

Re: [C++ Patch/RFC] PR 80145

2017-05-08 Thread Jason Merrill via gcc-patches
OK. On Thu, Mar 23, 2017 at 3:07 PM, Paolo Carlini wrote: > Hi, > > this ICE on invalid code isn't a regression, thus a patch probably doesn't > qualify for Stage 4, but IMHO I made good progress on it and I'm sending > what I have now anyway... The ICE happens during error recovery after a > sen

Re: [C++ Patch] PR 80186 ("ICE on C++ code with invalid constructor...")

2017-05-08 Thread Jason Merrill via gcc-patches
OK. On Mon, May 8, 2017 at 7:25 AM, Paolo Carlini wrote: > Hi, > > in order to avoid this error recovery issue I think we want to check the > return value of grok_ctor_properties, as we do in decl.c, for its only other > use. Tested x86_64-linux. > > Thanks, Paolo. > > // > >

Re: [PATCH 1/2] C++ template type diff printing

2017-05-08 Thread Jason Merrill via gcc-patches
On Mon, May 8, 2017 at 7:36 AM, Nathan Sidwell wrote: I agree with most of Nathan's comments, but > 'tree' sounds implementor-speaky, Perhaps > '-fdiagnostic-expand-template-args' or something? I like "tree" here; I read it as referring to the formatting of the abstract tree data structure, no

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Jason Merrill via gcc-patches
On Fri, May 5, 2017 at 4:07 PM, Nathan Sidwell wrote: > This cleanup patch kills IDENTIFIER_NAMESPACE_VALUE and replaces > {get,set}_namespace_binding with get_namespace_value and set_global_value > respectively. I'd prefer to stick with the _binding naming, as "value" is more ambiguous. Jason

[PATCH] More strict-overflow VRP cleanup

2017-05-08 Thread Richard Biener
The following removes more optimization disabling when strict-overflow sensitive simplifications were done. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2017-05-08 Richard Biener * tree-vrp.c (gimple_assign_nonzero_warnv_p): Rename to ... (

[Testsuite, committed] Fix vector peeling test failures

2017-05-08 Thread Wilco Dijkstra
This fixes a few failures on ARM and AArch64 due to a recent change in alignment peeling by switching the vector cost model off (https://gcc.gnu.org/ml/gcc-patches/2017-05/msg00407.html). Tested on AArch64, ARM and x64 - committed as obvious. ChangeLog: 2017-05-08 Wilco Dijkstra * te

Re: [C++ PATCH] namespace bindings

2017-05-08 Thread Andreas Schwab
++11 (test for excess errors) Excess errors: /usr/local/gcc/gcc-20170508/gcc/testsuite/g++.dg/template/virtual3.C:11:2: error: use of deleted function 'virtual B::~B()' /usr/local/gcc/gcc-20170508/gcc/testsuite/g++.dg/template/virtual3.C:11:2: error: use of deleted function 'virtua

Re: [PATCH GCC8][17/33]Treat complex cand step as invriant expression

2017-05-08 Thread Richard Biener via gcc-patches
On Thu, May 4, 2017 at 7:55 PM, Bin.Cheng wrote: > On Wed, May 3, 2017 at 2:43 PM, Richard Biener > wrote: >> On Tue, Apr 18, 2017 at 12:46 PM, Bin Cheng wrote: >>> Hi, >>> We generally need to compute cand step in loop preheader and use it in loop >>> body. >>> Unless it's an SSA_NAME of const

Re: [PATCH GCC8][28/33]Don't count non-interger PHIs for register pressure

2017-05-08 Thread Richard Biener via gcc-patches
On Thu, May 4, 2017 at 5:33 PM, Bin.Cheng wrote: > On Wed, Apr 26, 2017 at 3:32 PM, Bin.Cheng wrote: >> On Wed, Apr 26, 2017 at 3:23 PM, Richard Biener >> wrote: >>> On Wed, Apr 26, 2017 at 3:37 PM, Bin.Cheng wrote: On Wed, Apr 26, 2017 at 2:32 PM, Richard Biener wrote: > On Tue,

Re: [PATCH GCC8][11/33]New interfaces for tree affine

2017-05-08 Thread Richard Biener via gcc-patches
On Thu, May 4, 2017 at 5:21 PM, Bin.Cheng wrote: > On Mon, Apr 24, 2017 at 11:43 AM, Richard Biener > wrote: >> On Tue, Apr 18, 2017 at 12:43 PM, Bin Cheng wrote: >>> Hi, >>> This patch adds three simple interfaces for tree affine which will be used >>> in >>> cost computation later. >>> >>> Is

Re: [PATCH 1/2] C++ template type diff printing

2017-05-08 Thread Nathan Sidwell
On 05/04/2017 07:44 PM, David Malcolm wrote: This patch kit implements two new options to make it easier to read diagnostics involving mismatched template types: -fdiagnostics-show-template-tree and -fno-elide-type. It adds two new formatting codes: %H and %I which are equivalent to %qT, b

[C++ Patch] PR 80186 ("ICE on C++ code with invalid constructor...")

2017-05-08 Thread Paolo Carlini
Hi, in order to avoid this error recovery issue I think we want to check the return value of grok_ctor_properties, as we do in decl.c, for its only other use. Tested x86_64-linux. Thanks, Paolo. // /cp 2017-05-08 Paolo Carlini PR c++/80186 * pt.c (tsubst

Re: [committed] Get rid of macros for diagnostic_report_current_module

2017-05-08 Thread Nathan Sidwell
On 05/05/2017 05:35 PM, David Malcolm wrote: Committed to trunk as r247664. gcc/ChangeLog: * diagnostic.c (last_module_changed_p): New function. (set_last_module): New function. Given that C++ modules-ts is a thing, I wonder if there's a better name for these functions? that

Re: [PATCH] PR libstdc++/80624 satisfy invariant for char_traits::eof()

2017-05-08 Thread Jonathan Wakely via gcc-patches
On 08/05/17 12:52 +0200, Florian Weimer via libstdc++ wrote: On 05/08/2017 12:24 PM, Jonathan Wakely wrote: On 08/05/17 11:53 +0200, Florian Weimer via libstdc++ wrote: On 05/05/2017 07:05 PM, Jonathan Wakely wrote: As discussed at http://stackoverflow.com/q/43769773/981959 (and kinda hinted a

Re: [PATCH][AArch64] Emit tighter strong atomic compare-exchange loop when comparing against zero

2017-05-08 Thread Kyrill Tkachov
Ping. Thanks, Kyrill On 24/04/17 10:38, Kyrill Tkachov wrote: Pinging this back into context so that I don't forget about it... https://gcc.gnu.org/ml/gcc-patches/2017-03/msg00376.html Thanks, Kyrill On 08/03/17 16:35, Kyrill Tkachov wrote: Hi all, For the testcase in this patch where the

Re: [PATCH][AArch64] Allow const0_rtx operand for atomic compare-exchange patterns

2017-05-08 Thread Kyrill Tkachov
Ping. Thanks, Kyrill On 24/04/17 10:37, Kyrill Tkachov wrote: Pinging this back into context so that I don't forget about it... https://gcc.gnu.org/ml/gcc-patches/2017-02/msg01648.html Thanks, Kyrill On 28/02/17 12:29, Kyrill Tkachov wrote: Hi all, For the testcase in this patch we current

Re: [PATCH, RFC] warn about raw pointers that can be unique_ptr

2017-05-08 Thread Trevor Saunders
On Mon, May 08, 2017 at 10:28:13AM +0200, Marc Glisse wrote: > On Sun, 7 May 2017, Trevor Saunders wrote: > > > On Sun, May 07, 2017 at 07:32:48PM +0200, Marc Glisse wrote: > > > On Sun, 7 May 2017, tbsaunde+...@tbsaunde.org wrote: > > > > > > > This is a start at warning about various resource a

Re: [PATCH] PR libstdc++/80624 satisfy invariant for char_traits::eof()

2017-05-08 Thread Florian Weimer via gcc-patches
On 05/08/2017 12:24 PM, Jonathan Wakely wrote: On 08/05/17 11:53 +0200, Florian Weimer via libstdc++ wrote: On 05/05/2017 07:05 PM, Jonathan Wakely wrote: As discussed at http://stackoverflow.com/q/43769773/981959 (and kinda hinted at by http://wg21.link/lwg1200) there's a problem with char_tra

[C++ Patch Ping] Re: [C++ Patch/RFC] PR 80145

2017-05-08 Thread Paolo Carlini
Hi, gently pinging this... On 23/03/2017 20:07, Paolo Carlini wrote: Hi, this ICE on invalid code isn't a regression, thus a patch probably doesn't qualify for Stage 4, but IMHO I made good progress on it and I'm sending what I have now anyway... The ICE happens during error recovery after

Re: [PATCH] PR libstdc++/80624 satisfy invariant for char_traits::eof()

2017-05-08 Thread Jonathan Wakely via gcc-patches
On 08/05/17 11:53 +0200, Florian Weimer via libstdc++ wrote: On 05/05/2017 07:05 PM, Jonathan Wakely wrote: As discussed at http://stackoverflow.com/q/43769773/981959 (and kinda hinted at by http://wg21.link/lwg1200) there's a problem with char_traits::eof() because it returns int_type(-1) which

Re: [PATCH] PR libstdc++/80624 satisfy invariant for char_traits::eof()

2017-05-08 Thread Jonathan Wakely via gcc-patches
On 08/05/17 09:52 +0200, Stephan Bergmann via libstdc++ wrote: On 05/05/2017 07:05 PM, Jonathan Wakely wrote: As discussed at http://stackoverflow.com/q/43769773/981959 (and kinda hinted at by http://wg21.link/lwg1200) there's a problem with char_traits::eof() because it returns int_type(-1) whi

Re: [PATCH] PR libstdc++/80624 satisfy invariant for char_traits::eof()

2017-05-08 Thread Florian Weimer via gcc-patches
On 05/05/2017 07:05 PM, Jonathan Wakely wrote: As discussed at http://stackoverflow.com/q/43769773/981959 (and kinda hinted at by http://wg21.link/lwg1200) there's a problem with char_traits::eof() because it returns int_type(-1) which is the same value as u'\u', a valid UTF-16 code point.

Re: [PATCH, RFC] warn about raw pointers that can be unique_ptr

2017-05-08 Thread Marc Glisse
On Sun, 7 May 2017, Trevor Saunders wrote: On Sun, May 07, 2017 at 07:32:48PM +0200, Marc Glisse wrote: On Sun, 7 May 2017, tbsaunde+...@tbsaunde.org wrote: This is a start at warning about various resource allocation issues that can be improved. Currently it only warns about functions that

Re: [PATCH] prevent -Wno-system-headers from suppressing -Wstringop-overflow (PR 79214)

2017-05-08 Thread Andreas Schwab
I see these regressions on ia64: FAIL: c-c++-common/Wsizeof-pointer-memaccess2.c -std=gnu++11 (test for excess errors) Excess errors: /usr/local/gcc/gcc-20170508/gcc/testsuite/c-c++-common/Wsizeof-pointer-memaccess2.c:11:53: warning: 'void* __builtin_memcpy(void*, const void*, long uns

[PATCH][x86] Fix ADD[SD,SS] and SUB[SD,SS] runtime tests

2017-05-08 Thread Peryt, Sebastian
Hi, This patch fixes errors in runtime tests for ADDSD, ADDSS, SUBSD and SUBSS instructions. gcc/testsuite/ * gcc.target/i386/avx512f-vaddsd-2.c: Test fixed. * gcc.target/i386/avx512f-vaddss-2.c: Ditto. * gcc.target/i386/avx512f-vsubsd-2.c: Ditto. * gcc.target/i38

Re: [PATCH] PR libstdc++/80624 satisfy invariant for char_traits::eof()

2017-05-08 Thread Stephan Bergmann via gcc-patches
On 05/05/2017 07:05 PM, Jonathan Wakely wrote: As discussed at http://stackoverflow.com/q/43769773/981959 (and kinda hinted at by http://wg21.link/lwg1200) there's a problem with char_traits::eof() because it returns int_type(-1) which is the same value as u'\u', a valid UTF-16 code point. i

Re: [PATCH 1/4][PR tree-optimization/78496] Don't simplify conditionals too early in VRP

2017-05-08 Thread Richard Biener via gcc-patches
On Fri, May 5, 2017 at 10:53 PM, Jeff Law wrote: > On 05/04/2017 08:37 AM, Jeff Law wrote: >> >> >> You understanding is slightly wrong however, The ASSERT_EXPRs and >> conditionals map 100% through propagation and into simplification. It's >> only during simplification that we lose the direct m

Re: [PATCH 2/n] [PR tree-optimization/78496] Simplify ASSERT_EXPRs to facilitate jump threading

2017-05-08 Thread Richard Biener via gcc-patches
On Sat, May 6, 2017 at 5:03 PM, Jeff Law wrote: > This is the 2nd of 3-5 patches to address pr78496. > > Jump threading will examine ASSERT_EXPRs as it walks the IL and record > information from those ASSERT_EXPRs into the available expression and > const/copies tables where they're later used to