Re: PR83648

2018-05-14 Thread Richard Biener
On Tue, 15 May 2018, Prathamesh Kulkarni wrote: > On 12 January 2018 at 18:26, Richard Biener wrote: > > On Fri, 12 Jan 2018, Prathamesh Kulkarni wrote: > > > >> On 12 January 2018 at 05:02, Jeff Law wrote: > >> > On 01/10/2018 10:04 PM, Prathamesh Kulkarni wrote: > >> >> On 11 January 2018 at 0

Re: PR83648

2018-05-14 Thread Prathamesh Kulkarni
On 12 January 2018 at 18:26, Richard Biener wrote: > On Fri, 12 Jan 2018, Prathamesh Kulkarni wrote: > >> On 12 January 2018 at 05:02, Jeff Law wrote: >> > On 01/10/2018 10:04 PM, Prathamesh Kulkarni wrote: >> >> On 11 January 2018 at 04:50, Jeff Law wrote: >> >>> On 01/09/2018 05:57 AM, Pratham

Re: Rb_tree constructor optimization

2018-05-14 Thread François Dumont
On 11/05/2018 14:16, Jonathan Wakely wrote: On 06/05/18 16:06 +0200, François Dumont wrote: Here is the rework of this patch. On 02/05/2018 13:49, Jonathan Wakely wrote: There's no changelog entry with the patch, so to recap, the changes are: - noexcept specifications are automatically deduc

Re: PING^1: [PATCH] C/C++: Add -Waddress-of-packed-member

2018-05-14 Thread Martin Sebor
On 05/14/2018 01:10 PM, H.J. Lu wrote: On Mon, May 14, 2018 at 10:40 AM, H.J. Lu wrote: $ cat c.i struct B { int i; }; struct C { struct B b; } __attribute__ ((packed)); long* g8 (struct C *p) { return p; } $ gcc -O2 -S c.i -Wno-incompatible-pointer-types c.i: In function ‘g8’: c.i:4:33: warn

[PATCH] restore -Wstringop-overflow for checked strcpy/strcat (PR 85259)

2018-05-14 Thread Martin Sebor
r256683 committed to GCC 8 to avoiding duplicate instances of -Wstringop-overflow warnings on some targets has the unintended side-effect of suppressing even singleton instances of the warning in cases such as 'strcat (strcpy (buf, "hello "), "world!")' when _FORTIFY_SOURCE is defined. The attach

Re: [PATCH] improve -Wrestrict for struct members (PR 85753)

2018-05-14 Thread Jeff Law
On 05/11/2018 05:09 PM, Martin Sebor wrote: > The attached patch extends -Wrestrict to constrain valid offset > ranges into objects of struct types to the bounds of the object > type, the same way the warning already handles arrays.  This > makes it possible to detect overlapping accesses in cases 

Re: [PATCH 1/2] Introduce prefetch-minimum stride option

2018-05-14 Thread Luis Machado
Hi, Here's an updated version of the patch (now reverted) that addresses the previous bootstrap problem (signedness and long long/int conversion). I've checked that it bootstraps properly on both aarch64-linux and x86_64-linux and that tests look sane. James, would you please give this one

Re: [PATCH] consider offsets when handling nonstrings in -Wstringop-truncation (PR 85643)

2018-05-14 Thread Jeff Law
On 05/11/2018 10:21 AM, Martin Sebor wrote: > The attached tweak suppresses some -Wstringop-truncation false > positives when a pointer into an array declared nonstring is > passed to a function that expects a string argument such as in: > >   char a[8] __attribute__ ((nonstring)); >   strncpy (a 

Re: [PATCH] DWARF: Use DW_OP_addrx and DW_OP_constx for DWARF5.

2018-05-14 Thread Jeff Law
On 05/14/2018 07:35 AM, Mark Wielaard wrote: > For older DWARF and -gsplit-dwarf we want to emit DW_OP_GNU_addr_index > and DW_OP_GNU_const_index, but for DWARF5 we should use DW_OP_addrx > and DW_OP_constx. > > gcc/ChangeLog: > > * dwarf2out.c (dwarf_OP): Handle DW_OP_addrx and DW_OP_const

Re: [PATCH] DWARF calculate the number of indexed addresses.

2018-05-14 Thread Jeff Law
On 05/14/2018 07:36 AM, Mark Wielaard wrote: > The length in the .debug_addr unit header was calculated using the number > of elements in the addr_index_table. This is wrong because the entries in > the table are refcounted and only those with a refcount > 0 are actually > put in the index. Add a h

Re: [PR63185][RFC] Improve DSE with branches

2018-05-14 Thread Jeff Law
On 05/13/2018 09:37 PM, Kugan Vivekanandarajah wrote: > Hi, > > Attached patch handles PR63185 when we reach PHI with temp != NULLL. > We could see the PHI and if there isn't any uses for PHI that is > interesting, we could ignore that ? > > Bootstrapped and regression tested on x86_64-linux-gnu.

Re: [PATCH, v2] Recognize a missed usage of a sbfiz instruction

2018-05-14 Thread Luis Machado
On 05/11/2018 06:46 AM, Kyrill Tkachov wrote: Hi Luis, On 10/05/18 11:31, Luis Machado wrote: On 05/09/2018 10:44 AM, Kyrill Tkachov wrote: On 09/05/18 13:30, Luis Machado wrote: Hi Kyrill, On 05/08/2018 11:09 AM, Kyrill Tkachov wrote: Hi Luis, On 07/05/18 15:28, Luis Machado wrote: Hi,

Re: [RFC] Improve tree DSE

2018-05-14 Thread Jeff Law
On 05/01/2018 05:16 PM, Kugan Vivekanandarajah wrote: >> I'm also struggling a little bit to see much value in handling this >> case. In the included testcases we've got a memset in a loop where the >> args do not vary across the loop iterations and there are no reads from >> the memory location w

Re: Improve std::rotate usages

2018-05-14 Thread François Dumont
Any feedback regarding this patch ? On 02/05/2018 07:26, François Dumont wrote: Hi     std::rotate already returns the expected iterator so there is no need for calls to std::advance/std::distance. Tested under Linux x86_64, ok to commit ? François

C++ PATCH to improve C++ function type variant handling

2018-05-14 Thread Jason Merrill
I haven't been able to create a testcase to demonstrate a bug, but I've been uneasy for a while about how we blithely set TYPE_HAS_LATE_RETURN_TYPE on function types without regard to how they might be shared. This patch handles that flag like TYPE_RAISES_EXCEPTIONS and the ref-qualifier flags, an

[PATCH] rs6000: Fix -mreadonly-in-sdata documentation

2018-05-14 Thread Segher Boessenkool
For some reason I made both an @item and an @itemx for -mreadonly-in-sdata. This fixes it. Committing. Segher 2018-05-14 Segher Boessenkool * doc/invoke.texi (RS/6000 and PowerPC Options): Delete @itemx for -mreadonly-in-sdata. --- gcc/doc/invoke.texi | 1 - 1 file chang

Re: PING^1: [PATCH] C/C++: Add -Waddress-of-packed-member

2018-05-14 Thread H.J. Lu
On Mon, May 14, 2018 at 10:40 AM, H.J. Lu wrote: $ cat c.i struct B { int i; }; struct C { struct B b; } __attribute__ ((packed)); long* g8 (struct C *p) { return p; } $ gcc -O2 -S c.i -Wno-incompatible-pointer-types c.i: In function ‘g8’: c.i:4:33: warning

[PATCH] PR libstdc++/81256 fix exception handling in basic_filebuf::close

2018-05-14 Thread Jonathan Wakely
As explained in the PR, we were incorrectly swallowing exceptions from basic_filebuf::close(). They should propagate from that function, but still be swallowed in the destructor. PR libstdc++/81256 * include/bits/fstream.tcc (basic_filebuf::close): Do not swallow exception

Re: [PATCH] use string length to relax -Wstringop-overflow for nonstrings (PR 85623)

2018-05-14 Thread Martin Sebor
On 05/14/2018 10:43 AM, Franz Sirl wrote: Am 2018-05-10 um 21:26 schrieb Martin Sebor: GCC 8.1 warns for unbounded (and some bounded) string comparisons involving arrays declared attribute nonstring (i.e., char arrays that need not be nul-terminated). For instance: extern __attribute__((non

Re: PING^1: [PATCH] C/C++: Add -Waddress-of-packed-member

2018-05-14 Thread H.J. Lu
On Mon, May 14, 2018 at 9:18 AM, Martin Sebor wrote: > On 05/14/2018 07:44 AM, H.J. Lu wrote: >> >> On Wed, Apr 25, 2018 at 7:54 PM, H.J. Lu wrote: >>> >>> When address of packed member of struct or union is taken, it may result >>> in an unaligned pointer value. This patch adds >>> -Waddress-of

Re: [PATCH] gcc/configure.ac: add --disable-systemtap switch

2018-05-14 Thread Joseph Myers
Any new configure options need to be documented in install.texi. -- Joseph S. Myers jos...@codesourcery.com

Re: [PATCH] use string length to relax -Wstringop-overflow for nonstrings (PR 85623)

2018-05-14 Thread Franz Sirl
Am 2018-05-10 um 21:26 schrieb Martin Sebor: GCC 8.1 warns for unbounded (and some bounded) string comparisons involving arrays declared attribute nonstring (i.e., char arrays that need not be nul-terminated).  For instance:   extern __attribute__((nonstring)) char a[4];   int f (void)   {

Re: [PATCH, aarch64] Patch to update pipeline descriptions in thunderx2t99.md

2018-05-14 Thread Kyrill Tkachov
Hi Steve, On 09/05/18 23:37, Steve Ellcey wrote: On Fri, 2018-05-04 at 14:05 -0700, Andrew Pinski wrote: > > >(thunderx2t99_loadpair): Fix cpu unit ordering. > I think the original ordering was correct. The address calculation > happens before the actual load. > thunderx2t99_asimd_load1

Re: [wwwdocs] Describe how to validate wwwdocs changes

2018-05-14 Thread Martin Sebor
On 05/13/2018 10:19 PM, Gerald Pfeifer wrote: This is triggered by a report from Martin who rightfully pointed out that it's not straightforward to validate wwwdocs changes before committing a change. Martin, what do you think? Would that have avoided the challenges your ran into? Anything to

Re: [PATCH, rs6000] Improved Documentation of Built-in Functions Part 2

2018-05-14 Thread Segher Boessenkool
Hi Kelvin, On Mon, May 14, 2018 at 09:59:25AM -0500, Kelvin Nilsen wrote: > 2018-05-14 Kelvin Nilsen > > * doc/extend.texi (Basic PowerPC Built-in Functions): Rename this > subsection to be "PowerPC Built-in Functions". > (PowerPC Altivec/VSX Built-in Functions): Change this

Re: [PATCH][AArch64] Add combine pattern to fuse AESE/AESMC instructions

2018-05-14 Thread Richard Earnshaw (lists)
On 11/05/18 14:29, Kyrill Tkachov wrote: > Hi all, > > When the AESE,AESD and AESMC, AESMC instructions are generated through > the appropriate arm_neon.h intrinsics > we really want to keep them together when the AESE feeds into an AESMC > and fusion is supported by the target CPU. > We have macr

Re: PING^1: [PATCH] C/C++: Add -Waddress-of-packed-member

2018-05-14 Thread Martin Sebor
On 05/14/2018 07:44 AM, H.J. Lu wrote: On Wed, Apr 25, 2018 at 7:54 PM, H.J. Lu wrote: When address of packed member of struct or union is taken, it may result in an unaligned pointer value. This patch adds -Waddress-of-packed-member to check alignment at pointer assignment and warn unaligned

Re: [PATCH v2][AArch64] Remove remaining uses of * in patterns

2018-05-14 Thread Wilco Dijkstra
James Greenhalgh wrote: > On Tue, Jan 16, 2018 at 04:32:36PM +, Wilco Dijkstra wrote: >> v2: Rebased after the big SVE commits >> >> Remove the remaining uses of '*' from aarch64.md. >> Using '*' in alternatives is typically incorrect as it tells the register >> allocator to ignore those alte

Re: [Patch / RFC] Rename POINTER_TYPE_P to INDIRECT_TYPE_P ?

2018-05-14 Thread Jeff Law
On 05/11/2018 09:06 AM, Jakub Jelinek wrote: > On Fri, May 11, 2018 at 10:42:13AM -0400, Jason Merrill wrote: >> On Fri, May 11, 2018 at 8:48 AM, Paolo Carlini >> wrote: >>> we got this very old comment in tree.h: >>> >>> /* Nonzero if TYPE represents a pointer or reference type. >>>(It shoul

Re: [PATCH] Disallow minus in mem {+,-,&,|,^}= x; mem != 0 peepholes (PR target/85756)

2018-05-14 Thread Uros Bizjak
On Mon, May 14, 2018 at 5:08 PM, Marek Polacek wrote: > On Mon, May 14, 2018 at 03:07:54PM +0200, Jakub Jelinek wrote: >> On Mon, May 14, 2018 at 02:54:18PM +0200, Uros Bizjak wrote: >> > > --- gcc/config/i386/i386.md.jj 2018-05-11 18:44:32.0 +0200 >> > > +++ gcc/config/i386/i386.md 2

[PATCH] Add __attribute__((malloc) to allocator and remove unused code

2018-05-14 Thread Jonathan Wakely
As discussed at https://gcc.gnu.org/ml/libstdc++/2018-01/msg00073.html we can simplify the allocator function for valarray memory. I also noticed that the _Array(size_t) constructor is never used. * include/bits/valarray_array.h (__valarray_get_memory): Remove. (__valarray_get_sto

[PATCH] PR libstdc++/67554 Do not pass null pointers to memcpy

2018-05-14 Thread Jonathan Wakely
PR libstdc++/67554 * include/bits/valarray_array.h (_Array_copy_ctor<_Tp, true>) (_Array_copier<_Tp, true>): Do not pass null pointers to memcpy. Tested powerpc64le-linux, committed to trunk. Backports to follow. There's no new test for this, as we're not able to use san

Re: [PATCH] Disallow minus in mem {+,-,&,|,^}= x; mem != 0 peepholes (PR target/85756)

2018-05-14 Thread Marek Polacek
On Mon, May 14, 2018 at 03:07:54PM +0200, Jakub Jelinek wrote: > On Mon, May 14, 2018 at 02:54:18PM +0200, Uros Bizjak wrote: > > > --- gcc/config/i386/i386.md.jj 2018-05-11 18:44:32.0 +0200 > > > +++ gcc/config/i386/i386.md 2018-05-14 13:50:28.100482520 +0200 > > > @@ -19397,11 +19397

[PATCH, rs6000] Improved Documentation of Built-in Functions Part 2

2018-05-14 Thread Kelvin Nilsen
The focus of this patch is to restructure the section headers within the PowerPC portion of the extend.texi documentation file. Restructuring section headers prepares the foundation for subsequent documentation improvements which will be delivered in follow-on patches. I have bootstrapped and r

[PATCH] PR libstdc++/82966 fix swapping of node handles

2018-05-14 Thread Jonathan Wakely
PR libstdc++/82966 * include/bits/node_handle.h (_Node_handle_common::_M_swap): Use value instead of type. * testsuite/23_containers/set/modifiers/node_swap.cc: New. Tested powerpc64le-linux, committed to trunk. Backports to gcc-7 and gcc-8 will follow. commit b6

Re: PR85734

2018-05-14 Thread Richard Biener
On May 14, 2018 2:30:27 PM GMT+02:00, Prathamesh Kulkarni wrote: >On 14 May 2018 at 15:06, Richard Biener wrote: >> On Mon, 14 May 2018, Prathamesh Kulkarni wrote: >> >>> On 14 May 2018 at 14:46, Richard Biener wrote: >>> > On Mon, 14 May 2018, Prathamesh Kulkarni wrote: >>> > >>> >> Hi, >>> >>

Re: [Patch / RFC] Rename POINTER_TYPE_P to INDIRECT_TYPE_P ?

2018-05-14 Thread Nathan Sidwell
On 05/11/2018 11:06 AM, Jakub Jelinek wrote: If any change needs to be done, yeah. For the middle-end, having POINTER_TYPE_P including reference type is highly desirable, otherwise people will just forget to handle REFERENCE_TYPE; after all, useless_type_conversion_p says that POINTER_TYPE <->

Re: [C++ Patch] Add TYPE_REF_P

2018-05-14 Thread Jason Merrill
OK. On Sun, May 13, 2018 at 7:56 PM, Paolo Carlini wrote: > Hi, > > this simply adds the missing TYPE_REF_P - counterpart of TYPE_PTR_P - and > uses it throughout (also adjusts a few places to consistently use the > existing TYPE_PTR_P). Tested x86_64-linux. > > Thanks, Paolo. > > ///

PING^2: [PATCH] Don't mark IFUNC resolver as only called directly

2018-05-14 Thread H.J. Lu
On Wed, Apr 25, 2018 at 8:49 PM, H.J. Lu wrote: > On Thu, Apr 12, 2018 at 3:50 PM, H.J. Lu wrote: >> On Thu, Apr 12, 2018 at 6:39 AM, H.J. Lu wrote: >>> On Thu, Apr 12, 2018 at 5:17 AM, Jan Hubicka wrote: > On Thu, Apr 12, 2018 at 1:29 PM, H.J. Lu wrote: > > Since IFUNC resolver is cal

PING^1: [PATCH] C/C++: Add -Waddress-of-packed-member

2018-05-14 Thread H.J. Lu
On Wed, Apr 25, 2018 at 7:54 PM, H.J. Lu wrote: > When address of packed member of struct or union is taken, it may result > in an unaligned pointer value. This patch adds -Waddress-of-packed-member > to check alignment at pointer assignment and warn unaligned address as > well as unaligned point

Re: RFC: bash completion

2018-05-14 Thread Martin Liška
On 05/14/2018 02:41 PM, Martin Liška wrote: > Yes, I will work on that as soon as GCC's part is ready. Hi. I've just done branch of bash-completion where I implemented that: https://github.com/marxin/bash-completion/tree/gcc-completion Martin

Re: [PATCH] DWARF: Emit DWARF5 forms for indirect addresses and string offsets.

2018-05-14 Thread Mark Wielaard
On Mon, 2018-04-30 at 14:35 +0200, Mark Wielaard wrote: > We already emit DWARF5 attributes and tables for indirect addresses > and string offsets, but still use GNU forms. Add a new helper function > dwarf_FORM () for emitting the right form. > > Currently we only use the uleb128 forms. But DWARF

Re: [PATCH] DWARF: Add header for .debug_str_offsets table for dwarf_version 5.

2018-05-14 Thread Mark Wielaard
On Mon, 2018-04-30 at 14:34 +0200, Mark Wielaard wrote: > DWARF5 defines a small header for .debug_str_offsets.  Since we only use > it for split dwarf .dwo files we don't need to keep track of the actual > index offset in an attribute. Ping. gcc/ChangeLog: * dwarf2out.c (count_index_str

[PATCH][AArch64] Implement usadv16qi and ssadv16qi standard names

2018-05-14 Thread Kyrill Tkachov
Hi all, This patch implements the usadv16qi and ssadv16qi standard names. See the thread at on g...@gcc.gnu.org [1] for background. The V16QImode variant is important to get right as it is the most commonly used pattern: reducing vectors of bytes into an int. The midend expects the optab to com

[PATCH] DWARF calculate the number of indexed addresses.

2018-05-14 Thread Mark Wielaard
The length in the .debug_addr unit header was calculated using the number of elements in the addr_index_table. This is wrong because the entries in the table are refcounted and only those with a refcount > 0 are actually put in the index. Add a helper function count_index_addrs to get the correct n

[PATCH] DWARF: Use DW_OP_addrx and DW_OP_constx for DWARF5.

2018-05-14 Thread Mark Wielaard
For older DWARF and -gsplit-dwarf we want to emit DW_OP_GNU_addr_index and DW_OP_GNU_const_index, but for DWARF5 we should use DW_OP_addrx and DW_OP_constx. gcc/ChangeLog: * dwarf2out.c (dwarf_OP): Handle DW_OP_addrx and DW_OP_constx. (size_of_loc_descr): Likewise. (output

Re: [PATCH] Disallow minus in mem {+,-,&,|,^}= x; mem != 0 peepholes (PR target/85756)

2018-05-14 Thread Jakub Jelinek
On Mon, May 14, 2018 at 02:54:18PM +0200, Uros Bizjak wrote: > > --- gcc/config/i386/i386.md.jj 2018-05-11 18:44:32.0 +0200 > > +++ gcc/config/i386/i386.md 2018-05-14 13:50:28.100482520 +0200 > > @@ -19397,11 +19397,11 @@ > > (set (match_dup 0) (match_dup 2))]) > > (s

Re: [PATCH] Disallow minus in mem {+,-,&,|,^}= x; mem != 0 peepholes (PR target/85756)

2018-05-14 Thread Uros Bizjak
On Mon, May 14, 2018 at 2:48 PM, Jakub Jelinek wrote: > Hi! > > The last peephole I've recently added is as the testcase shows fundamentally > incompatible with non-commutative operations, because we need to swap the > operands. > > The pattern right before this one already is: > (define_peephole2

Re: [PATCH] PR 85075, Fix PowerPC __float182/__ibm128 types and mangling

2018-05-14 Thread Segher Boessenkool
On Tue, Apr 24, 2018 at 05:42:39PM +, Joseph Myers wrote: > On Mon, 16 Apr 2018, Segher Boessenkool wrote: > > > > The manglings that are now used are: > > > > > > For -mabi=ieeelongdouble: > > > > > > __float128 "u10__float128" > > > __ibm128"u8__ibm128" > > > long double

Re: [PATCH] Disallow minus in mem {+,-,&,|,^}= x; mem != 0 peepholes (PR target/85756)

2018-05-14 Thread Uros Bizjak
On Mon, May 14, 2018 at 2:48 PM, Jakub Jelinek wrote: > Hi! > > The last peephole I've recently added is as the testcase shows fundamentally > incompatible with non-commutative operations, because we need to swap the > operands. > > The pattern right before this one already is: > (define_peephole2

[PATCH 3/3] Come up with new --completion option.

2018-05-14 Thread Martin Liška
Main part where I still need to write ChangeLog file and gcc.sh needs to be moved to bash-completions project. Martin >From cb544b3136559eb3710790dcd582d7bbf36d3792 Mon Sep 17 00:00:00 2001 From: marxin Date: Mon, 14 May 2018 11:49:52 +0200 Subject: [PATCH 3/3] Come up with new --completion optio

[PATCH 2/3] Refactoring to opt-suggestions.[ch].

2018-05-14 Thread Martin Liška
Second part refactors function from gcc.c into a new class option_proposer. Martin >From c42bb9072242ab44884a71effee9398c6bcf998e Mon Sep 17 00:00:00 2001 From: marxin Date: Mon, 14 May 2018 11:47:08 +0200 Subject: [PATCH 2/3] Refactoring to opt-suggestions.[ch]. gcc/ChangeLog: 2018-05-14 Mart

[PATCH 1/3] Introduce auto_string_vec class.

2018-05-14 Thread Martin Liška
First part with introduction of auto_string_vec class. Martin >From c05ad6d3715fcc99e94dbe2fd3fa1ef94552bea4 Mon Sep 17 00:00:00 2001 From: marxin Date: Mon, 14 May 2018 14:00:07 +0200 Subject: [PATCH 1/3] Introduce auto_string_vec class. gcc/ChangeLog: 2018-05-14 Martin Liska * vec.h (cla

[PATCH] Disallow minus in mem {+,-,&,|,^}= x; mem != 0 peepholes (PR target/85756)

2018-05-14 Thread Jakub Jelinek
Hi! The last peephole I've recently added is as the testcase shows fundamentally incompatible with non-commutative operations, because we need to swap the operands. The pattern right before this one already is: (define_peephole2 [(parallel [(set (match_operand:SWI 0 "register_operand")

Re: RFC: bash completion

2018-05-14 Thread Martin Liška
On 04/26/2018 01:13 AM, David Malcolm wrote: > [moving from gcc to gcc-patches mailing list] > > On Wed, 2018-04-25 at 15:12 +0200, Martin Liška wrote: >> On 04/24/2018 06:27 PM, David Malcolm wrote: >>> On Tue, 2018-04-24 at 16:45 +0200, Martin Liška wrote: Hi. Some time ago, I inv

Re: PR85734

2018-05-14 Thread Prathamesh Kulkarni
On 14 May 2018 at 15:06, Richard Biener wrote: > On Mon, 14 May 2018, Prathamesh Kulkarni wrote: > >> On 14 May 2018 at 14:46, Richard Biener wrote: >> > On Mon, 14 May 2018, Prathamesh Kulkarni wrote: >> > >> >> Hi, >> >> The attached patch tries to fix PR85734, by gating on >> >> !function_alwa

Re: [RFC] Improve tree DSE

2018-05-14 Thread Richard Biener
On Mon, May 14, 2018 at 5:32 AM, Kugan Vivekanandarajah wrote: > Hi Richard, > >>> Given the simple testcases you add I wonder if you want a cheaper >>> implementation, >>> namely check that when reaching a loop PHI the only aliasing stmt in >>> its use-chain >>> is the use_stmt you reached the PH

[PATCH] Merge SLP and non-SLP vectorization costing

2018-05-14 Thread Richard Biener
One difficulty in vectorizer costing is currently that SLP and non-SLP go a different path and while the latter is costed during vectorizable_* the former is done in a separate walk over the SLP trees. This leads to defects in the former for example costing all "operations" the same rather than u

[PATCH] Adjust match.pd :s docs

2018-05-14 Thread Richard Biener
Committed. Richard. 2018-05-14 Richard Biener * doc/match-and-simplify.texi: Adjust :s documentation. diff --git a/gcc/doc/match-and-simplify.texi b/gcc/doc/match-and-simplify.texi index 6bc2c47bee7..024d747cafd 100644 --- a/gcc/doc/match-and-simplify.texi +++ b/gcc/doc/match-and-si

Re: PR85734

2018-05-14 Thread Richard Biener
On Mon, 14 May 2018, Prathamesh Kulkarni wrote: > On 14 May 2018 at 14:46, Richard Biener wrote: > > On Mon, 14 May 2018, Prathamesh Kulkarni wrote: > > > >> Hi, > >> The attached patch tries to fix PR85734, by gating on > >> !function_always_visible_to_compiler_p. > >> Bootstrap+test in progress

Re: PR85734

2018-05-14 Thread Prathamesh Kulkarni
On 14 May 2018 at 14:46, Richard Biener wrote: > On Mon, 14 May 2018, Prathamesh Kulkarni wrote: > >> Hi, >> The attached patch tries to fix PR85734, by gating on >> !function_always_visible_to_compiler_p. >> Bootstrap+test in progress on x86_64. >> OK to commit if passes ? > > This looks redundan

Re: PR85734

2018-05-14 Thread Richard Biener
On Mon, 14 May 2018, Prathamesh Kulkarni wrote: > Hi, > The attached patch tries to fix PR85734, by gating on > !function_always_visible_to_compiler_p. > Bootstrap+test in progress on x86_64. > OK to commit if passes ? This looks redundant - suggest_attribute does that very same check but warn_fu

PR85734

2018-05-14 Thread Prathamesh Kulkarni
Hi, The attached patch tries to fix PR85734, by gating on !function_always_visible_to_compiler_p. Bootstrap+test in progress on x86_64. OK to commit if passes ? Thanks, Prathamesh 2018-05-14 Prathamesh Kulkarni PR ipa/85734 * ipa-pure-const.c (propagate_malloc): Gate call towar

Re: [PATCH 1/2] gcc_qsort: source code changes

2018-05-14 Thread Richard Biener
On Mon, May 14, 2018 at 8:37 AM, Alexander Monakov wrote: > On Sun, 13 May 2018, H.J. Lu wrote: >> This breaks bootstrap on Fedora 28/i686: >> >> https://gcc.gnu.org/ml/gcc-regression/2018-05/msg00088.html >> >> ../../src-trunk/gcc/sort.cc:112:5: note: in expansion of macro ‘REORDER_45’ >> RE