C++ PATCH to implement C++20 P0806R2, Deprecate implicit capture of this via [=]

2018-08-11 Thread Marek Polacek
When we capture the current object (*this) implicitly, it is always captured by reference, even if the capture default is =. This is surprising and irregular so this proposal deprecates implicit capture of this via [=] (not via [&]). Users should now use [=, this]

[committed] hppa: Revise atomic support to use sync barrier

2018-08-11 Thread John David Anglin
It recently came to my attention that PA 2.0 supports out-of-order execution for loads and stores.  Loads and stores are strongly ordered on PA 1.x.  This has caused no end of confusion. This out-of-order execution is discussed in the following article:

C++ PATCH for c++/86915, ICE with auto[]

2018-08-11 Thread Marek Polacek
This fixes ICE-on-invalid with an array of auto. The problem was that create_array_type_for_decl got null name, so the error call crashed. We need to handle this case as elsewhere in the function. Bootstrapped/regtested on x86_64-linux, ok for trunk? 2018-08-11 Marek Polacek PR

[RFC] [PATCH][C][ADA] use function descriptors instead of trampolines in C

2018-08-11 Thread Uecker, Martin
A while ago Eric Botcazou added support for function descriptors as a replacement for trampolines. This is used in Ada, but not in C where it would also imply a change of ABI. Still, as nested functions are generally not used across interface boundaries, I thought it would be really useful to

Re: C++ PATCH for c++/57891, narrowing conversions in non-type template arguments

2018-08-11 Thread Marek Polacek
On Sat, Aug 11, 2018 at 11:32:24PM +1200, Jason Merrill wrote: > On Fri, Aug 10, 2018 at 8:59 AM, Marek Polacek wrote: > > On Mon, Aug 06, 2018 at 12:02:31AM +1000, Jason Merrill wrote: > >> > OK -- see the patch below. Now, I'm not crazy about adding another bit > >> > to struct conversion, but

Re: C++ PATCH for c++/57891, narrowing conversions in non-type template arguments

2018-08-11 Thread Jason Merrill
On Fri, Aug 10, 2018 at 8:59 AM, Marek Polacek wrote: > On Mon, Aug 06, 2018 at 12:02:31AM +1000, Jason Merrill wrote: >> > OK -- see the patch below. Now, I'm not crazy about adding another bit >> > to struct conversion, but reusing any of the other bits didn't seem >> > safe/possible. Maybe

Re: Patch ping: [PATCH] Fix thinko in insert_reciprocals (PR tree-optimization/86835)

2018-08-11 Thread Richard Biener
On August 11, 2018 1:06:59 PM GMT+02:00, Jakub Jelinek wrote: >On Fri, Aug 03, 2018 at 05:59:24PM +0200, Jakub Jelinek wrote: >> 2018-08-03 Jakub Jelinek >> >> PR tree-optimization/86835 >> * tree-ssa-math-opts.c (insert_reciprocals): Even when inserting >> new_stmt after

Patch ping: [PATCH] Fix thinko in insert_reciprocals (PR tree-optimization/86835)

2018-08-11 Thread Jakub Jelinek
On Fri, Aug 03, 2018 at 05:59:24PM +0200, Jakub Jelinek wrote: > 2018-08-03 Jakub Jelinek > > PR tree-optimization/86835 > * tree-ssa-math-opts.c (insert_reciprocals): Even when inserting > new_stmt after def_gsi, make sure to insert new_square_stmt after > that stmt,

C++ PATCH for c++/86728, stdarg generic lambda

2018-08-11 Thread Jason Merrill
My patch for 64095 regressed this testcase because the moved code wasn't checking for a declarator-id before turning the implicit template parameter into a pack. Tested x86_64-pc-linux-gnu, applying to trunk, 8, and 7. commit ba6b0740aa4f5e649ccf5d75381ae378e07567c0 Author: Jason Merrill Date:

Re: [PATCH][x86] Match movss and movsd "blend" instructions

2018-08-11 Thread Allan Sandfeld Jensen
On Samstag, 11. August 2018 11:18:39 CEST Jakub Jelinek wrote: > On Sat, Aug 11, 2018 at 10:59:26AM +0200, Allan Sandfeld Jensen wrote: > > +/* A subroutine of ix86_expand_vec_perm_builtin_1. Try to implement D > > + using movss or movsd. */ > > +static bool > > +expand_vec_perm_movs (struct

Re: [PATCH][x86] Match movss and movsd "blend" instructions

2018-08-11 Thread Jakub Jelinek
On Sat, Aug 11, 2018 at 10:59:26AM +0200, Allan Sandfeld Jensen wrote: > +/* A subroutine of ix86_expand_vec_perm_builtin_1. Try to implement D > + using movss or movsd. */ > +static bool > +expand_vec_perm_movs (struct expand_vec_perm_d *d) > +{ > + machine_mode vmode = d->vmode; > +

Re: [PATCH][x86] Match movss and movsd "blend" instructions

2018-08-11 Thread Allan Sandfeld Jensen
Updated: Match movss and movsd "blend" instructions Adds the ability to match movss and movsd as blend patterns, implemented in a new method to be able to match these before shuffles, while keeping other blends after. 2018-08-11 Allan Sandfeld Jensen gcc/config/i386 * i386.cc

Re: [Patch][GCC] Document and fix -r (partial linking)

2018-08-11 Thread Allan Sandfeld Jensen
On Freitag, 3. August 2018 13:56:12 CEST Allan Sandfeld Jensen wrote: > On Mittwoch, 1. August 2018 18:32:30 CEST Joseph Myers wrote: > > On Wed, 1 Aug 2018, Allan Sandfeld Jensen wrote: > > > gcc/ > > > > > > * gcc.c: Correct default specs for -r > > > > I don't follow why your changes