Re: [arm-perf-staging branch] Add support for -fno-alias

2020-10-13 Thread Richard Biener via Gcc-patches
On Tue, Oct 13, 2020 at 10:36 AM Tamar Christina via Gcc-patches wrote: > > Hi, > > I am sending some old patches that we have internally since GCC 10 to the Arm > Branch but feel free to comment as we will be looking to submit them for GCC > 12 to mainline. > > This patch adds the option

Re: [PATCH] [PR target/97194] [AVX2] Support variable index vec_set.

2020-10-19 Thread Richard Biener via Gcc-patches
On Mon, Oct 19, 2020 at 10:21 AM Hongtao Liu wrote: > > Hi: > It's implemented as below: > V setg (V v, int idx, T val) > > { > V idxv = (V){idx, idx, idx, idx, idx, idx, idx, idx}; > V valv = (V){val, val, val, val, val, val, val, val}; > V mask = ((V){0, 1, 2, 3, 4, 5, 6, 7} == idxv); >

Re: [PATCH] [PR target/97194] [AVX2] Support variable index vec_set.

2020-10-19 Thread Richard Biener via Gcc-patches
On Mon, Oct 19, 2020 at 11:37 AM Hongtao Liu wrote: > > On Mon, Oct 19, 2020 at 5:07 PM Richard Biener > wrote: > > > > On Mon, Oct 19, 2020 at 10:21 AM Hongtao Liu wrote: > > > > > > Hi: > > > It's implemented as below: > > > V setg (V v, int idx, T val) > > > > > > { > > > V idxv =

Re: [PATCH] [PR target/97194] [AVX2] Support variable index vec_set.

2020-10-20 Thread Richard Biener via Gcc-patches
On Tue, Oct 20, 2020 at 4:35 AM Hongtao Liu wrote: > > On Mon, Oct 19, 2020 at 5:55 PM Richard Biener > wrote: > > > > On Mon, Oct 19, 2020 at 11:37 AM Hongtao Liu wrote: > > > > > > On Mon, Oct 19, 2020 at 5:07 PM Richard Biener > > > wrote: > > > > > > > > On Mon, Oct 19, 2020 at 10:21 AM

Re: [PATCH] Avoid re-allocating PHIs in split_edge

2020-10-20 Thread Richard Biener via Gcc-patches
On Tue, Aug 22, 2017 at 4:11 PM Jeff Law wrote: > > On 08/22/2017 03:03 AM, Richard Biener wrote: > > > > The following patch makes sure to not grow the number of incoming > > edges in the destination when doing split_edge on GIMPLE. That's > > easy by first redirecting the existing edge to the

Re: [PATCH] Implement no_stack_protect attribute.

2020-10-20 Thread Richard Biener via Gcc-patches
On Tue, Oct 20, 2020 at 1:24 PM Martin Liška wrote: > > PING^5 So can we use the same identifier as clang here as Nick requests? Thus, OK with re-naming everything alongside no_stack_protector. It isn't really the opposite of the stack_protect attribute since that only protects when

Re: [RFA,PATCH] Bail in bounds_of_var_in_loop if no step found.

2020-10-14 Thread Richard Biener via Gcc-patches
On Wed, Oct 14, 2020 at 4:19 PM Aldy Hernandez wrote: > > > > On 10/14/20 9:43 AM, Richard Biener wrote: > > On Tue, Oct 13, 2020 at 6:12 PM Aldy Hernandez wrote: > >> > >> > >> > >> On 10/13/20 6:02 PM, Richard Biener wrote: > >>> On October 13, 2020 5:17:48 PM GMT+02:00, Aldy Hernandez via

Re: [PATCH] i386: Improve chaining of _{addcarry, subborrow}_u{32, 64} [PR97387]

2020-10-14 Thread Richard Biener via Gcc-patches
On Wed, Oct 14, 2020 at 11:49 AM Jakub Jelinek wrote: > > On Wed, Oct 14, 2020 at 11:22:48AM +0200, Richard Biener wrote: > > > + if (mode == CCCmode > > > + && GET_CODE (XEXP (x, 0)) == NEG > > > + && GET_CODE (XEXP (XEXP (x, 0), 0)) == GEU > > > + && REG_P (XEXP

Re: [PATCH] [PR rtl-optimization/97249]Simplify vec_select of paradoxical subreg.

2020-10-14 Thread Richard Biener via Gcc-patches
On October 14, 2020 7:35:32 PM GMT+02:00, Segher Boessenkool wrote: >Hi! > >On Wed, Oct 14, 2020 at 01:43:45PM +0800, Hongtao Liu wrote: >> On Wed, Oct 14, 2020 at 4:01 AM Segher Boessenkool >> wrote: >> > On Tue, Oct 13, 2020 at 04:40:53PM +0800, Hongtao Liu wrote: >> > > For rtx like >> > >

Re: [PATCH 0/6] Parallelize Intra-Procedural Optimizations using the LTO Engine.

2020-08-25 Thread Richard Biener via Gcc-patches
On Mon, Aug 24, 2020 at 8:39 PM Giuliano Belinassi via Gcc-patches wrote: > > Ho, Josh. > > On 08/24, Josh Triplett wrote: > > On Sat, Aug 22, 2020 at 06:04:48PM -0300, Giuliano Belinassi wrote: > > > Hi, Josh > > > > > > On 08/21, Josh Triplett wrote: > > > > On Thu, Aug 20, 2020 at 07:00:13PM

Re: [PATCH 1/6] Modify gcc driver for parallel compilation

2020-08-25 Thread Richard Biener via Gcc-patches
On Mon, Aug 24, 2020 at 8:06 PM Giuliano Belinassi wrote: > > Hi, Richi. > > On 08/24, Richard Biener wrote: > > On Fri, Aug 21, 2020 at 12:00 AM Giuliano Belinassi > > wrote: > > > > > > Update the driver for parallel compilation. This process work as > > > follows: > > > > > > When calling

Re: [PATCH 1/5] Don't enable -gvariable-location-views by default for DWARF5.

2020-08-25 Thread Richard Biener via Gcc-patches
On Tue, Aug 25, 2020 at 6:05 AM Alexandre Oliva wrote: > > On Aug 24, 2020, Jakub Jelinek wrote: > > > On Mon, Aug 24, 2020 at 02:56:54PM +0200, Mark Wielaard wrote: > >> DWARF5 makes it possible to read loclists tables without consulting > >> the debuginfo tree by introducing a table header.

Re: [PATCH] lto: fix documentation about -fpie and -fpic options

2020-08-26 Thread Richard Biener via Gcc-patches
On Wed, Aug 26, 2020 at 10:13 AM Martin Liška wrote: > > Hey. > > We should document how we currently merge pie and pie options > as we fixed PR80838. > > Ready for master? OK. > Thanks, > Martin > > gcc/ChangeLog: > > * doc/invoke.texi: Document how are pie and pic options merged. >

Re: [PATCH v3] libgcc: Use `-fasynchronous-unwind-tables' for LIB2_DIVMOD_FUNCS

2020-08-26 Thread Richard Biener via Gcc-patches
On Tue, Aug 25, 2020 at 6:32 PM Maciej W. Rozycki wrote: > > Hi Kito, > > > I just found the mail thread about div mod with -fnon-call-exceptions, > > I think keeping the default LIB2_DIVMOD_EXCEPTION_FLAGS unchanged > > should be the best way to go. > > > > Non-call exceptions and libcalls > >

Re: [PATCH] [AVX512] [PR87767] Optimize memory broadcast for constant vector under AVX512

2020-08-28 Thread Richard Biener via Gcc-patches
On Thu, Aug 27, 2020 at 3:20 PM Jakub Jelinek wrote: > > On Thu, Aug 27, 2020 at 03:07:59PM +0200, Richard Biener wrote: > > > Also, isn't the pass also useful for TARGET_AVX and above (but in that > > > case > > > only if it is a simple memory load)? Or are avx/avx2 broadcast slower > > >

Re: [PATCH] [AVX512] [PR87767] Optimize memory broadcast for constant vector under AVX512

2020-08-28 Thread Richard Biener via Gcc-patches
On Fri, Aug 28, 2020 at 10:52 AM Jakub Jelinek wrote: > > On Fri, Aug 28, 2020 at 08:47:06AM +0200, Richard Biener via Gcc-patches > wrote: > > IIRC elsewhere it was discussed to use ld to perform merging by > > emitting separate rodata sections for constant sizes (4, 8

Re: [PATCH] c: Silently ignore pragma region [PR85487]

2020-08-28 Thread Richard Biener via Gcc-patches
On Fri, Aug 28, 2020 at 3:26 AM Austin Morton via Gcc-patches wrote: > > #pragma region is a feature introduced by Microsoft in order to allow > manual grouping and folding of code within Visual Studio. It is > entirely ignored by the compiler. Clang has supported this feature > since 2012 when

Re: [PATCH] [AVX512] [PR87767] Optimize memory broadcast for constant vector under AVX512

2020-08-28 Thread Richard Biener via Gcc-patches
On Fri, Aug 28, 2020 at 12:47 PM Jakub Jelinek wrote: > > On Fri, Aug 28, 2020 at 12:36:00PM +0200, Richard Biener wrote: > > Guess this would work indeed. It's probably quite common to have > > both vector and non-vector constants because of vectorization > > and scalar epilogues. But note

Re: [PATCH 3/3] vec: use inexact growth where possible.

2020-08-27 Thread Richard Biener via Gcc-patches
On Wed, Aug 26, 2020 at 11:02 PM Jeff Law wrote: > > On Tue, 2020-08-11 at 13:37 +0200, Martin Liška wrote: > > From cc1d41a469d76f2f8e4f44bed788ace77a1c6d62 Mon Sep 17 00:00:00 2001 > > From: Martin Liska > > Date: Mon, 10 Aug 2020 12:09:19 +0200 > > Subject: [PATCH 3/3] vec: use inexact growth

Re: [PATCH] testsuite: add -fno-tree-fre in gcc.dg/guality

2020-08-27 Thread Richard Biener via Gcc-patches
On Thu, Aug 27, 2020 at 3:38 AM Hu Jiangping wrote: > > This patch add -fno-tree-fre to dg-options in gcc.dg/guality/sra-1.c, > to make the following testcases passed. > > FAIL: gcc.dg/guality/sra-1.c -Og -DPREVENT_OPTIMIZATION line 43 a.i == 4 > FAIL: gcc.dg/guality/sra-1.c -Og

Re: [PATCH] x86: Reject target("no-general-regs-only")

2020-08-27 Thread Richard Biener via Gcc-patches
On Wed, Aug 26, 2020 at 9:40 PM H.J. Lu via Gcc-patches wrote: > > Reject target("no-general-regs-only") pragma and attribute. mgeneral-regs-only Target Report RejectNegative Mask(GENERAL_REGS_ONLY) Var(ix86_target_flags) Save Generate code which uses only the general registers. it has already

Re: [PATCH] hppa: Improve expansion of ashldi3 when !TARGET_64BIT

2020-08-27 Thread Richard Biener via Gcc-patches
On Thu, Aug 27, 2020 at 9:17 AM Roger Sayle wrote: > > > >On 2020-08-26 5:23 p.m., Roger Sayle wrote: > >> These more accurate target rtx_costs are used by the > >> gimple-ssa-strength-reduction.c (via a call to mult_by_coeff_cost) to > >> decide whether applying strength reduction would be

Re: [PATCH] [AVX512] [PR87767] Optimize memory broadcast for constant vector under AVX512

2020-08-27 Thread Richard Biener via Gcc-patches
On Thu, Aug 27, 2020 at 2:25 PM Jakub Jelinek via Gcc-patches wrote: > > On Thu, Jul 09, 2020 at 04:33:46PM +0800, Hongtao Liu via Gcc-patches wrote: > > +static void > > +replace_constant_pool_with_broadcast (rtx_insn* insn) > > +{ > > + subrtx_ptr_iterator::array_type array; > > +

Re: RFQ: -R remark options

2020-08-26 Thread Richard Biener via Gcc-patches
On Wed, Aug 26, 2020 at 3:37 PM Nathan Sidwell wrote: > > Hi, > I had a need to add a new type of informative message on the modules > branch, with an option to enable it. The message is not a warning or an > error, but just 'hey, you asked if X happens. It happens just here'. > This is emitted

Re: [PATCH] Check calls before loop unrolling

2020-08-24 Thread Richard Biener via Gcc-patches
On Thu, Aug 20, 2020 at 6:35 AM guojiufu via Gcc-patches wrote: > > Hi, > > When unroll loops, if there are calls inside the loop, those calls > may raise negative impacts for unrolling. This patch adds a param > param_max_unrolled_calls, and checks if the number of calls inside > the loop

Re: [PATCH] [FIX] Remove object adjustment to preserve object attributes

2020-08-24 Thread Richard Biener via Gcc-patches
On Thu, Aug 20, 2020 at 11:09 AM Petro Karashchenko via Gcc-patches wrote: > > Hello Ricard! > > Thank you very much for your reply. > The case is that currently the "uncached" attribute is used to generate > special "cache bypass" instructions instead of regular one by ARC backend. > That

Re: [PATCH] SLP: support entire BB.

2020-08-24 Thread Richard Biener via Gcc-patches
On Mon, Aug 10, 2020 at 12:29 PM Martin Liška wrote: > > On 8/3/20 12:29 PM, Richard Biener wrote: > > You are always passing NULL here so simply avoid this and the following > > changes. > > Are you sure about this? > > Note that vect_slp_bb does: > > + if (!vect_find_stmt_data_reference

Re: [PATCH] Add cold attribute to one time construction APIs

2020-08-24 Thread Richard Biener via Gcc-patches
On Tue, Aug 18, 2020 at 4:36 PM Jonathan Wakely via Gcc-patches wrote: > > On 17/08/20 18:15 +, Aditya K via Libstdc++ wrote: > >This would help compiler optimize local static objects. > > > >Added changelog. > > Please don't :-) > > GCC patch policies always said NOT to change the ChangeLog

Re: [PATCH PR96698] aarch64: ICE during GIMPLE pass:vect

2020-08-24 Thread Richard Biener via Gcc-patches
On Thu, Aug 20, 2020 at 4:45 AM yangyang (ET) wrote: > > Hi, > > This is a simple fix for PR96698. > > For the test case, there are two PHIs in the inner loop in pass_vect > > [local count: 719407024]: > # b_26 = PHI <0(4), b_15(10)> >

Re: [PATCH] Add missing vn_reference_t::punned initialization

2020-08-24 Thread Richard Biener via Gcc-patches
On Thu, Aug 13, 2020 at 2:49 PM Martin Liška wrote: > > As mentioned in the PR, we miss one initialization of ::punned > in vn_reference_lookup_call. > > Patch can bootstrap on x86_64-linux-gnu and survives regression tests. > > Ready to be installed? OK. Thanks, Richard. > Thanks, > Martin >

Re: [PATCH 4/6] Add `+' for Jobserver Integration

2020-08-24 Thread Richard Biener via Gcc-patches
On Fri, Aug 21, 2020 at 12:34 AM Joseph Myers wrote: > > On Thu, 20 Aug 2020, Giuliano Belinassi via Gcc-patches wrote: > > > libbacktrace/Makefile.in | 2 +- > > zlib/Makefile.in | 64 ++-- > > These directories use makefiles generated by automake. Rather than > modifying the

Re: [PATCH 1/6] Modify gcc driver for parallel compilation

2020-08-24 Thread Richard Biener via Gcc-patches
On Fri, Aug 21, 2020 at 12:00 AM Giuliano Belinassi wrote: > > Update the driver for parallel compilation. This process work as > follows: > > When calling gcc, the driver will check if the flag > "-fparallel-jobs" was provided by the user. If yes, then we will > check what is the desired output,

Re: [PATCH 0/6] Parallelize Intra-Procedural Optimizations using the LTO Engine.

2020-08-24 Thread Richard Biener via Gcc-patches
On Fri, Aug 21, 2020 at 12:00 AM Giuliano Belinassi wrote: > > This patch series add a new flag "-fparallel-jobs=" to control if the > compiler should try to compile the current file in parallel. > > There are three modes which is supported by now: > > 1. -fparallel-jobs=: Try to compile the file

Re: [PATCH] assorted improvements for fold_truth_andor_1

2020-09-29 Thread Richard Biener via Gcc-patches
On Tue, Sep 29, 2020 at 9:23 AM Alexandre Oliva wrote: > > On Sep 28, 2020, Richard Biener wrote: > > > On Fri, Sep 25, 2020 at 3:39 PM Alexandre Oliva wrote: > > >> This patch introduces various improvements to the logic that merges > >> field compares. > > > Sorry for throwing a wrench in

Re: [PATCH] Add if-chain to switch conversion pass.

2020-09-29 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 4:05 PM Martin Liška wrote: > > On 9/24/20 2:41 PM, Richard Biener wrote: > > On Wed, Sep 2, 2020 at 1:53 PM Martin Liška wrote: > >> > >> On 9/1/20 4:50 PM, David Malcolm wrote: > >>> Hope this is constructive > >>> Dave > >> > >> Thank you David. All of them very very

Re: [PATCH] pass: Run cleanup passes before SLP [PR96789]

2020-09-29 Thread Richard Biener via Gcc-patches
On Tue, Sep 29, 2020 at 1:30 PM Kewen.Lin wrote: > > Hi, > > As the discussion in PR96789, we found that some scalar stmts > which can be eliminated by some passes after SLP, but we still > modeled their costs when trying to SLP, it could impact > vectorizer's decision. One typical case is the

Re: [PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-24 Thread Richard Biener via Gcc-patches
On September 25, 2020 5:50:40 AM GMT+02:00, xionghu luo wrote: >Hi, > >On 2020/9/24 21:27, Richard Biener wrote: >> On Thu, Sep 24, 2020 at 10:21 AM xionghu luo >wrote: >> >> I'll just comment that >> >> xxperm 34,34,33 >> xxinsertw 34,0,12 >> xxperm 34,34,32 >> >>

Re: [PATCH][GCC 10] Fix build failure with zstd versio9n 1.2.0 or older.

2020-09-30 Thread Richard Biener via Gcc-patches
On Wed, Sep 30, 2020 at 5:56 AM Jim Wilson wrote: > > This is the gcc-10 branch version of the patch on mainline. > > Extends the configure check for zstd.h to also verify the zstd version, > since gcc requires features that only exist in 1.3.0 and newer. Without > this patch we get a build

Re: [PATCH 6/6] ipa-cp: Separate and increase the large-unit parameter

2020-09-30 Thread Richard Biener via Gcc-patches
On Tue, Sep 29, 2020 at 9:31 PM Jan Hubicka wrote: > > > > > gcc/ChangeLog: > > > > 2020-09-07 Martin Jambor > > > > * params.opt (ipa-cp-large-unit-insns): New parameter. > > * ipa-cp.c (get_max_overall_size): Use the new parameter. > OK, Maybe the IPA CP large-unit should be a

Re: [PATCH] assorted improvements for fold_truth_andor_1

2020-09-30 Thread Richard Biener via Gcc-patches
On Tue, Sep 29, 2020 at 3:07 PM Alexandre Oliva wrote: > > On Sep 29, 2020, Richard Biener wrote: > > > On Tue, Sep 29, 2020 at 9:23 AM Alexandre Oliva wrote: > > >> On Sep 28, 2020, Richard Biener wrote: > > > ifcombine should stop using fold*, yeah > > Wow, that's quite a lot of work for no

Re: [PATCH] Add type arg to TARGET_LIBC_HAS_FUNCTION

2020-09-30 Thread Richard Biener via Gcc-patches
On Tue, Sep 29, 2020 at 2:18 PM Tom de Vries wrote: > > On 9/29/20 8:59 AM, Richard Biener wrote: > > On Mon, Sep 28, 2020 at 7:28 PM Tom de Vries wrote: > >> > >> [ was: Re: [Patch][nvptx] return true in libc_has_function for > >> function_sincos ] > >> > >> On 9/26/20 6:47 PM, Tobias Burnus

Re: [PATCH v3 1/2] IFN: Implement IFN_VEC_SET for ARRAY_REF with VIEW_CONVERT_EXPR

2020-09-23 Thread Richard Biener via Gcc-patches
On Tue, Sep 22, 2020 at 5:55 AM xionghu luo wrote: > > Thanks for the review, > > > On 2020/9/21 16:31, Richard Biener wrote: > >> + > >> +static gimple * > >> +gimple_expand_vec_set_expr (gimple_stmt_iterator *gsi) > >> +{ > >> + enum tree_code code; > >> + gcall *new_stmt = NULL; > >> +

Re: Cleanup handling of local/readonly memory in modref and ipa-pure-const

2020-09-23 Thread Richard Biener via Gcc-patches
On Wed, Sep 23, 2020 at 2:32 PM Jan Hubicka wrote: > > > On Wed, Sep 23, 2020 at 11:55 AM Jan Hubicka wrote: > > > > > > > > +/* Return true if T is a pointer pointing to memory location that is > > > > > local > > > > > + for the function (that means, dead after return) or read-only. */ > >

Re: [PATCH] VEC_COND_EXPR: fix ICE in gimple_expand_vec_cond_expr

2020-09-23 Thread Richard Biener via Gcc-patches
On Tue, Sep 22, 2020 at 1:28 PM Martin Liška wrote: > > @Richi: May I please ping this? I have commented in the PR and am testing a patch - other PRs may prevail. Richard. > On 9/1/20 4:27 PM, Martin Liška wrote: > > On 8/31/20 10:01 AM, Richard Biener wrote: > >> On Fri, Aug 28, 2020 at 4:18

Re: Do we need to do a loop invariant motion after loop interchange ?

2020-09-22 Thread Richard Biener via Gcc-patches
On Tue, Sep 22, 2020 at 4:31 AM HAO CHEN GUI via Gcc-patches wrote: > > Bin, > > I just tested your patch on current trunk. Here is my summary. > > 1. About some iv aren't moved out of inner loop (Lijia mentioned in his > last email) > >[local count: 955630226]: ># l_32 = PHI <1(12),

Re: [gcc-7-arm] Backport -moutline-atomics flag

2020-09-24 Thread Richard Biener via Gcc-patches
On Fri, Sep 11, 2020 at 12:38 AM Pop, Sebastian via Gcc-patches wrote: > > Hi, > > the attached patches are back-porting the flag -moutline-atomics to the > gcc-7-arm vendor branch. > The flag enables a very important performance optimization for N1-neoverse > processors. > The patches pass

Re: [Patch] LTO: Force externally_visible for offload_vars/funcs (PR97179)

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 11:41 AM Tobias Burnus wrote: > > On 9/24/20 10:03 AM, Richard Biener wrote: > > >> The symbols are added to offload_vars + offload_funcs. > >> In lto-cgraph.c's output_offload_tables there is the last chance > >> to remove now unused nodes ? as once the tables are

Re: [Patch] LTO: Force externally_visible for offload_vars/funcs (PR97179)

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 11:50 AM Jakub Jelinek via Gcc-patches wrote: > > On Thu, Sep 24, 2020 at 11:41:00AM +0200, Tobias Burnus wrote: > > Following Jakub's suggestion, I also added > > __attribute__((used)) > > to the tree belonging to both tables in omp-offload.c's omp_finish > > but that

Re: Add access through parameter derference tracking to modref

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 11:06 AM Jan Hubicka wrote: > > Hi, > this patch re-adds tracking of accesses which was unfinished in David's patch. > At the moment I only implemented tracking of the fact that access is based on > derefernece of the parameter (so we track THIS pointers). > Patch does not

Re: Add access through parameter derference tracking to modref

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 12:54 PM Jan Hubicka wrote: > > > > + else if (TREE_CODE (op) == SSA_NAME > > > + && POINTER_TYPE_P (TREE_TYPE (op))) > > > +{ > > > + if (DECL_P (base) && !ptr_deref_may_alias_decl_p (op, base)) > > > + return false; > > > + if (TREE_CODE

Re: Add access through parameter derference tracking to modref

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 1:26 PM Jan Hubicka wrote: > > > > > > > I will do (but need to think bit of a redundancy between comment in > > > ipa-modref and ipa-modref-tree) > > > > One place is enough - just add a pointer to the other place. > Here is updated patch I am testing. I adds

Re: [PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 10:21 AM xionghu luo wrote: > > Hi Segher, > > The attached two patches are updated and split from > "[PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple > [PR79251]" > as your comments. > > > [PATCH v3 2/3] rs6000: Fix lvsl mode and change

Re: Disable modref for ipa-pta-13.c testcase

2020-09-25 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 1:04 PM Jan Hubicka wrote: > > Hi, > parameter tracking in ipa-modref causes failure of ipa-pta-13 testcase. > In partiuclar the check for "= x;" in fre3 is failing since we optimize > it out in fre1. As far as I can tell this is correct transform because > ipa-modref

Re: [PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-25 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 9:38 PM Segher Boessenkool wrote: > > Hi! > > On Thu, Sep 24, 2020 at 04:55:21PM +0200, Richard Biener wrote: > > Btw, on x86_64 the following produces sth reasonable: > > > > #define N 32 > > typedef int T; > > typedef T V __attribute__((vector_size(N))); > > V setg (V v,

Re: [PATCH] switch lowering: limit number of cluster attemps

2020-09-25 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 11:13 AM Martin Liška wrote: > > Hello. > > All right, I come up with a rapid speed up that can allow us to remove > the introduced parameter. It contains 2 parts: > - BIT TEST: we allow at maximum a range that is smaller GET_MODE_BITSIZE > - JT: we spent quite some time

Re: [PATCH v4 1/3] IFN: Implement IFN_VEC_SET for ARRAY_REF with VIEW_CONVERT_EXPR

2020-09-25 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 8:51 AM xionghu luo wrote: > > Hi, > > On 2020/9/24 20:39, Richard Sandiford wrote: > > xionghu luo writes: > >> @@ -2658,6 +2659,43 @@ expand_vect_cond_mask_optab_fn (internal_fn, gcall > >> *stmt, convert_optab optab) > >> > >> #define expand_vec_cond_mask_optab_fn

Re: [PATCH] switch lowering: limit number of cluster attemps

2020-09-25 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 3:32 PM Martin Liška wrote: > > On 9/25/20 3:18 PM, Richard Biener wrote: > > On Fri, Sep 25, 2020 at 11:13 AM Martin Liška wrote: > >> > >> Hello. > >> > >> All right, I come up with a rapid speed up that can allow us to remove > >> the introduced parameter. It contains

Re: Fix handling of gimple_clobber in ipa_modref

2020-09-25 Thread Richard Biener via Gcc-patches
On September 26, 2020 12:04:24 AM GMT+02:00, Jan Hubicka wrote: >Hi, >while adding check for gimple_clobber I reversed the return value >so instead of ignoring the statement ipa-modref gives up. Fixed thus. >This explains the drop between originally reported disambinguations >stats and ones I

Re: [PATCH] switch lowering: limit number of cluster attemps

2020-09-22 Thread Richard Biener via Gcc-patches
On September 22, 2020 1:22:12 PM GMT+02:00, "Martin Liška" wrote: >Hi. > >The patch is about a bail out limit that needs to be added to switch >lowering. >Currently the algorithm is quadratic and needs some bail out. I've >tested value >of 100K which corresponds to about 0.2s in the problematic

Re: Problem with static const objects and LTO

2020-09-17 Thread Richard Biener via Gcc-patches
On Wed, Sep 16, 2020 at 10:24 PM Jeff Law via Gcc-patches wrote: > > > On 9/16/20 11:52 AM, Joseph Myers wrote: > > On Wed, 16 Sep 2020, Jeff Law via Gcc-patches wrote: > > > >> ISTM this is a lot like the problem we have where we inline functions > >> with static data. To fix those we use

Re: [PATCH] vect: Fix epilogue loop handling of partial vectors

2020-09-23 Thread Richard Biener via Gcc-patches
On Tue, Sep 22, 2020 at 4:34 PM Richard Sandiford wrote: > > Richard Sandiford writes: > > I'll try to have a patch ready tomorrow morning European time. > > Well, I totally failed to hit that deadline. When testing on Power, > I saw a couple of extra failures, but I now think they're

Re: Cleanup handling of local/readonly memory in modref and ipa-pure-const

2020-09-23 Thread Richard Biener via Gcc-patches
On Wed, Sep 23, 2020 at 10:44 AM Jan Hubicka wrote: > > Hi, > this is first of cleanup patches for mod-ref interfaces. It removes code > duplication between ipa-pure-const and ipa-modref that both wants to check > whether given memory access can interfere with memory acesses before function >

Re: [PATCH] avoid modifying type in place (PR 97206)

2020-10-01 Thread Richard Biener via Gcc-patches
On Wed, Sep 30, 2020 at 9:20 PM Martin Sebor via Gcc-patches wrote: > > On 9/30/20 3:57 AM, Jakub Jelinek wrote: > > On Tue, Sep 29, 2020 at 03:40:40PM -0600, Martin Sebor via Gcc-patches > > wrote: > >> I will commit this patch later this week unless I hear concerns > >> or suggestions for

Re: [PATCH] assorted improvements for fold_truth_andor_1

2020-09-28 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 3:39 PM Alexandre Oliva wrote: > > > This patch introduces various improvements to the logic that merges > field compares. > > Before the patch, we could merge: > > (a.x1 EQNE b.x1) ANDOR (a.y1 EQNE b.y1) > > into something like: > > (((type *))[Na] & MASK) EQNE

Re: [PATCH] switch lowering: limit number of cluster attemps

2020-09-28 Thread Richard Biener via Gcc-patches
On Fri, Sep 25, 2020 at 4:15 PM Martin Liška wrote: > > On 9/25/20 3:45 PM, Richard Biener wrote: > > On Fri, Sep 25, 2020 at 3:32 PM Martin Liška wrote: > >> > >> On 9/25/20 3:18 PM, Richard Biener wrote: > >>> On Fri, Sep 25, 2020 at 11:13 AM Martin Liška wrote: > > Hello. > >

Re: [PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-28 Thread Richard Biener via Gcc-patches
On Sat, Sep 26, 2020 at 12:41 AM Segher Boessenkool wrote: > > On Fri, Sep 25, 2020 at 08:58:35AM +0200, Richard Biener wrote: > > On Thu, Sep 24, 2020 at 9:38 PM Segher Boessenkool > > wrote: > > > after which I get (-march=znver2) > > > > > > setg: > > > vmovd %edi, %xmm1 > > >

Re: [PATCH] Add type arg to TARGET_LIBC_HAS_FUNCTION

2020-09-29 Thread Richard Biener via Gcc-patches
On Mon, Sep 28, 2020 at 7:28 PM Tom de Vries wrote: > > [ was: Re: [Patch][nvptx] return true in libc_has_function for > function_sincos ] > > On 9/26/20 6:47 PM, Tobias Burnus wrote: > > Found when looking at PR97203 (but having no effect there). > > > > The GCC ME optimizes with -O1 (or higher)

Re: [PATCH] Fix GCC 10+ build failure with zstd version 1.2.0 or older.

2020-09-29 Thread Richard Biener via Gcc-patches
On Tue, Sep 29, 2020 at 2:46 AM Jim Wilson wrote: > > Extends the configure check for zstd.h to also verify the zstd version, > since gcc requires features that only exist in 1.3.0 and newer. Without > this patch we get a build error for lto-compress.c when using an old zstd > version. > >

Re: [PATCH] Add if-chain to switch conversion pass.

2020-09-24 Thread Richard Biener via Gcc-patches
On Wed, Sep 2, 2020 at 1:53 PM Martin Liška wrote: > > On 9/1/20 4:50 PM, David Malcolm wrote: > > Hope this is constructive > > Dave > > Thank you David. All of them very very useful! > > There's updated version of the patch. I noticed several functions without a function-level comment. -

Re: Cleanup handling of local/readonly memory in modref and ipa-pure-const

2020-09-23 Thread Richard Biener via Gcc-patches
On Wed, Sep 23, 2020 at 11:55 AM Jan Hubicka wrote: > > > > +/* Return true if T is a pointer pointing to memory location that is > > > local > > > + for the function (that means, dead after return) or read-only. */ > > > + > > > +bool > > > +points_to_local_or_readonly_memory_p (tree t) > >

Re: [PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-24 Thread Richard Biener via Gcc-patches
On Thu, Sep 24, 2020 at 3:27 PM Richard Biener wrote: > > On Thu, Sep 24, 2020 at 10:21 AM xionghu luo wrote: > > > > Hi Segher, > > > > The attached two patches are updated and split from > > "[PATCH v2 2/2] rs6000: Expand vec_insert in expander instead of gimple > > [PR79251]" > > as your

Re: [pushed] c++: Layout decls with newly-complete type.

2020-09-18 Thread Richard Biener via Gcc-patches
On Fri, Sep 18, 2020 at 5:20 AM Jason Merrill via Gcc-patches wrote: > > Martin's -Wplacement-new patch ran into a problem with DECL_SIZE not being > set on an extern variable for which the type was not complete until after > its declaration. complete_vars was deliberately not calling

Re: [patch] Add support for __builtin_bswap128

2020-05-27 Thread Richard Biener via Gcc-patches
On Wed, May 27, 2020 at 3:33 PM Eric Botcazou wrote: > > > Please use int128 effective target rather than lp64 in the tests that need > > __int128 type. > > OK, thanks, adjusted locally. OK. Thanks, Richard. > -- > Eric Botcazou

Re: [stage1][PATCH] Lower VEC_COND_EXPR into internal functions.

2020-05-27 Thread Richard Biener via Gcc-patches
On May 27, 2020 6:13:24 PM GMT+02:00, Richard Sandiford wrote: >Martin Liška writes: >> On 5/26/20 12:15 PM, Richard Sandiford wrote: >>> So longer-term, I think we should replace VCOND(U) with individual >ifns, >>> like for VCONDEQ. We could reduce the number of optabs needed by >>>

Re: [PATCH 1/2] Introduce flag_cunroll_grow_size for cunroll

2020-05-28 Thread Richard Biener via Gcc-patches
On Thu, May 28, 2020 at 10:52 AM guojiufu wrote: > > From: Jiufu Guo > > Currently GIMPLE complete unroller(cunroll) is checking > flag_unroll_loops and flag_peel_loops to see if allow size growth. > Beside affects curnoll, flag_unroll_loops also controls RTL unroler. > To have more freedom to

Re: [patch] Fix internal error on store to FP component at -O2

2020-05-25 Thread Richard Biener via Gcc-patches
On Mon, May 25, 2020 at 12:33 PM Eric Botcazou wrote: > > Hi, > > the attached Ada testcase triggers a GIMPLE verification failure at -O2 or > above because the GIMPLE store merging pass generates a NOP_EXPR between a FP > type and an integral type. This happens when the bit-field insertion path

Re: [PATCH] Implement no_stack_protect attribute.

2020-05-25 Thread Richard Biener via Gcc-patches
On Mon, May 25, 2020 at 11:27 AM Martin Liška wrote: > > On 5/22/20 12:51 PM, Richard Biener wrote: > > On Thu, May 21, 2020 at 12:09 PM Martin Liška wrote: > >> > >> On 5/18/20 1:49 PM, Richard Biener wrote: > >>> On Mon, May 18, 2020 at 1:10 PM Jakub Jelinek via Gcc-patches > >>> wrote: >

Re: [PATCH 1/2] Seperate -funroll-loops for GIMPLE unroller and RTL unroller

2020-05-25 Thread Richard Biener via Gcc-patches
On Mon, May 25, 2020 at 1:10 PM guojiufu wrote: > > Currently option -funroll-loops controls both GIMPLE unroler and > RTL unroller. It is not able to control GIMPLE cunroller and > RTL unroller independently. This patch introducing different flags > to control them seperately, and this also

Re: [patch] Fix internal error on store to FP component at -O2

2020-05-25 Thread Richard Biener via Gcc-patches
On Mon, May 25, 2020 at 2:14 PM Eric Botcazou wrote: > > > Hmm, MAX_BITSIZE_MODE_ANY_INT looks a bit arbitrary since on > > x86 it (IIRC) includes things like OImode. Maybe MOVE_MAX or > > MAX_FIXED_MODE_SIZE are better suited here? > > I forgot to mention that I picked MAX_BITSIZE_MODE_ANY_INT

Re: [PATCH 1/2] rs6000: tune cunroll for simple loops at O2

2020-05-25 Thread Richard Biener via Gcc-patches
On Fri, May 22, 2020 at 6:54 PM Segher Boessenkool wrote: > > On Fri, May 22, 2020 at 01:22:10PM +0200, Richard Biener wrote: > > On Wed, May 20, 2020 at 10:37 PM Segher Boessenkool > > wrote: > > > > > > On Wed, May 20, 2020 at 12:30:30PM +0200, Richard Biener wrote: > > > > I think this is the

Re: [PATCH 1/2] Seperate -funroll-loops for GIMPLE unroller and RTL unroller

2020-05-25 Thread Richard Biener via Gcc-patches
On May 25, 2020 7:40:00 PM GMT+02:00, Segher Boessenkool wrote: >On Mon, May 25, 2020 at 02:14:02PM +0200, Richard Biener wrote: >> On Mon, May 25, 2020 at 1:10 PM guojiufu >wrote: >> Since a new flag is not needed to fix the regression please avoid >> adding -fcomplete-unroll-loops. >> >> For

Re: [PATCH 1/2] rs6000: tune cunroll for simple loops at O2

2020-05-26 Thread Richard Biener via Gcc-patches
On Mon, May 25, 2020 at 7:44 PM Segher Boessenkool wrote: > > On Mon, May 25, 2020 at 02:39:54PM +0200, Richard Biener wrote: > > On Fri, May 22, 2020 at 6:54 PM Segher Boessenkool > > wrote: > > > > The split above allows the "bug" to be fixed (even on the branch) > > > > without introducing

Re: [PATCH 1/2] Seperate -funroll-loops for GIMPLE unroller and RTL unroller

2020-05-28 Thread Richard Biener via Gcc-patches
On Tue, May 26, 2020 at 6:58 AM Jiufu Guo wrote: > > David Edelsohn writes: > > > On Mon, May 25, 2020 at 1:58 PM Richard Biener > > wrote: > >> > >> On May 25, 2020 7:40:00 PM GMT+02:00, Segher Boessenkool > >> wrote: > >> >On Mon, May 25, 2020 at 02:14:02PM +0200, Richard Biener wrote: > >>

Re: [PATCH 1/2] Introduce flag_cunroll_grow_size for cunroll

2020-05-28 Thread Richard Biener via Gcc-patches
On Thu, May 28, 2020 at 4:37 PM Jiufu Guo wrote: > > Richard Biener writes: > > > On Thu, May 28, 2020 at 10:52 AM guojiufu wrote: > >> > >> From: Jiufu Guo > >> > >> Currently GIMPLE complete unroller(cunroll) is checking > >> flag_unroll_loops and flag_peel_loops to see if allow size growth.

Re: Simplify tree streaming

2020-05-29 Thread Richard Biener via Gcc-patches
On Tue, May 26, 2020 at 10:44 AM Jan Hubicka wrote: > > Hi, > this patch cleans up tree streaming. The code is prepared to stream nested > trees, but we only handle flat trees. As a result we have quite heavy function > to stream in/out tree reference which is used many times and shows up in >

Re: [stage1][PATCH] Lower VEC_COND_EXPR into internal functions.

2020-05-29 Thread Richard Biener via Gcc-patches
On Thu, May 28, 2020 at 5:28 PM Richard Sandiford wrote: > > Martin Liška writes: > > Hi. > > > > There's a new patch that adds normal internal functions for the 4 > > VCOND* functions. > > > > The patch that survives bootstrap and regression > > tests on x86_64-linux-gnu and ppc64le-linux-gnu.

Re: [stage1][PATCH] Lower VEC_COND_EXPR into internal functions.

2020-05-29 Thread Richard Biener via Gcc-patches
On Fri, May 29, 2020 at 2:17 PM Richard Biener wrote: > > On Thu, May 28, 2020 at 5:28 PM Richard Sandiford > wrote: > > > > Martin Liška writes: > > > Hi. > > > > > > There's a new patch that adds normal internal functions for the 4 > > > VCOND* functions. > > > > > > The patch that survives

Re: [PATCH] Add pattern for pointer-diff on addresses with same base/offset (PR 94234)

2020-06-02 Thread Richard Biener via Gcc-patches
On Mon, Jun 1, 2020 at 10:37 AM Feng Xue OS via Gcc-patches wrote: > > This patch is meant to add match rules to simplify patterns as: > > o. (pointer + offset_a) - (pointer + offset_b) -> (ptrdiff_t) (offset_a - > offset_b) > o. (pointer_a + offset) - (pointer_b + offset) -> (pointer_a

Re: [patch] Make memory copy functions scalar storage order barriers

2020-06-02 Thread Richard Biener via Gcc-patches
On Mon, Jun 1, 2020 at 11:09 AM Eric Botcazou wrote: > > Hi, > > this addresses the issue raised by Andrew a few weeks ago about the usage of > memory copy functions to toggle the scalar storage order. Recall that you > cannot (the compiler errors out) take the address of a scalar which is

Re: [PATCH 1/2] rs6000: tune cunroll for simple loops at O2

2020-05-27 Thread Richard Biener via Gcc-patches
On Wed, May 27, 2020 at 6:36 AM Jiufu Guo wrote: > > Segher Boessenkool writes: > > > Hi! > > > > On Tue, May 26, 2020 at 08:58:13AM +0200, Richard Biener wrote: > >> On Mon, May 25, 2020 at 7:44 PM Segher Boessenkool > >> wrote: > >> > Yes, cunroll does not have its own option, and that is a

Re: [PATCH] Refactor `execute` from gcc.c

2020-05-20 Thread Richard Biener via Gcc-patches
On Tue, May 19, 2020 at 2:24 AM Giuliano Belinassi via Gcc-patches wrote: > > Hi, > > After having so much trouble working on the `execute' function inside > gcc.c, I decided to refactor it so that it could be more digestible. > Since I am using it on my branch, I am submitting this patch for >

Re: [PATCH 1/2] rs6000: tune cunroll for simple loops at O2

2020-05-20 Thread Richard Biener via Gcc-patches
On Wed, May 20, 2020 at 10:27 AM Jiufu Guo wrote: > > Richard Biener writes: > > > On Wed, May 20, 2020 at 5:56 AM Jiufu Guo via Gcc-patches > > wrote: > >> > >> Hi, > >> > >> In r10-4525, and r10-4161, loop unroller was enabled for simply loops at > >> -O2. > >> At the same time, the GIMPLE

Re: [PATCH 1/2] rs6000: tune cunroll for simple loops at O2

2020-05-20 Thread Richard Biener via Gcc-patches
On Wed, May 20, 2020 at 5:56 AM Jiufu Guo via Gcc-patches wrote: > > Hi, > > In r10-4525, and r10-4161, loop unroller was enabled for simply loops at -O2. > At the same time, the GIMPLE cunroll is also enabled, while it is not only for > simple loops. This patch introduces a hook to check if a

Re: [PATCH 1/2] rs6000: tune cunroll for simple loops at O2

2020-05-20 Thread Richard Biener via Gcc-patches
On Wed, May 20, 2020 at 11:08 AM Jiufu Guo wrote: > > Richard Biener writes: > > > On Wed, May 20, 2020 at 5:56 AM Jiufu Guo via Gcc-patches > > wrote: > >> > >> Hi, > >> > >> In r10-4525, and r10-4161, loop unroller was enabled for simply loops at > >> -O2. > >> At the same time, the GIMPLE

Re: [PATCH] rs6000: Use REAL_TYPE to copy when block move array in structure[PR65421]

2020-06-02 Thread Richard Biener via Gcc-patches
On Tue, Jun 2, 2020 at 11:43 AM Xionghu Luo via Gcc-patches wrote: > > Double array in structure as function arguments or return value is accessed > by BLKmode, they are stored to stack and load from stack with redundant > conversion from DF->DI->DF. This patch checks the homogeneous type and >

Re: [PATCH 1/2] Introduce flag_cunroll_grow_size for cunroll

2020-06-02 Thread Richard Biener via Gcc-patches
On Tue, Jun 2, 2020 at 4:10 AM Jiufu Guo wrote: > > Jiufu Guo writes: > > Hi, > > I updated the patch just a little accordinlgy. Thanks! > > diff --git a/gcc/common.opt b/gcc/common.opt > index 4464049fc1f..570e2aa53c8 100644 > --- a/gcc/common.opt > +++ b/gcc/common.opt > @@ -2856,6 +2856,10

Re: [patch 0/5] ipa-initcall-cp

2020-06-02 Thread Richard Biener via Gcc-patches
On Fri, May 29, 2020 at 8:44 PM Erick Ochoa wrote: > > Hello everyone, > > I wanted to highlight this ticket on bugzilla [0]. It is a missed > optimization that I worked on. It involves propagating constants across > function calls at link-time. I am relatively new to GCC and this would > be my

Re: [PATCH 5/5] Adds ipa-initcall-cp pass.

2020-06-02 Thread Richard Biener via Gcc-patches
On Fri, May 29, 2020 at 8:52 PM Erick Ochoa wrote: > > > > This pass is a variant of constant propagation where global > primitive constants with a single write are propagated to multiple > read statements. Just a few small comments while skimming through the code > ChangeLog: > > 2020-05-20

Re: [PATCH 2/5] Add function tree_code_in_cst.

2020-06-02 Thread Richard Biener via Gcc-patches
On Sat, May 30, 2020 at 12:18 AM Jan Hubicka wrote: > > > > > --- > > gcc/tree.h | 11 +++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/gcc/tree.h b/gcc/tree.h > > index bd0c51b2a18..86a4542f58b 100644 > > --- a/gcc/tree.h > > +++ b/gcc/tree.h > > @@ -6156,6 +6156,17 @@

Re: [PATCH] Optimize and+or+sub into xor+not (PR94882)

2020-06-02 Thread Richard Biener via Gcc-patches
On Fri, May 29, 2020 at 5:56 AM Naveen Hurugalawadi via Gcc-patches wrote: > > Hi, > > Please find attached the patch that addresses PR94882. > > Bootstrapped and regression tested on x86_64-pc-linux-gnu. Is the pattern correct for saturating arithmetic? Some related patterns test

<    5   6   7   8   9   10   11   12   13   14   >