Re: [PATCH] expansion: Improve double-word modulo by certain constant divisors [PR97459]

2020-11-30 Thread Richard Biener
On Sat, 28 Nov 2020, Thomas Koenig wrote: > Hello Jakub, > > thanks a lot for taking this on! > > As far as I can tell, the patch works very well, and really speeds up > things. > > As (somewhat confusingly) discussed in the PR, there are a couple of > things that could still be done incrementa

Re: [PATCH] expansion: Improve double-word modulo by certain constant divisors [PR97459]

2020-11-30 Thread Richard Biener
On Sat, 28 Nov 2020, Jakub Jelinek wrote: > Hi! > > As discussed in the PR, e.g. on x86_64 (both -m32 and -m64) there is no > double-word modulo and so we expand it to a __{,u}mod[dt]i3 call. > For certain constant divisors we can do better. E.g. consider > 32-bit word-size, 0x1ULL % 3 =

Re: [PATCH] d: Add freebsd support for D compiler and runtime

2020-11-30 Thread Iain Buclaw via Gcc-patches
Excerpts from Jeff Law's message of November 30, 2020 2:16 am: > > > On 11/28/20 9:04 AM, Iain Buclaw via Gcc-patches wrote: >> Hi, >> >> This patch adds the necessary version conditions and configure rules in >> place to allow building the D compiler on FreeBSD. >> >> Running the testsuite on bo

Re: [PATCH] gcc-changelog: Add libstdc++-v3/testsuite to wildcard prefixes

2020-11-30 Thread Martin Liška
On 11/27/20 5:23 PM, Jonathan Wakely wrote: This allows using "testsuite/*" in libstdc++-v3/ChangeLog entries, which was one of the original motivations for adding wildcard support in the first place: https://gcc.gnu.org/pipermail/gcc/2020-June/232719.html contrib/ChangeLog: * gcc-chang

[PATCH] tree-optimization/98048 - fix vector lowering of ABSU_EXPR

2020-11-30 Thread Richard Biener
This makes sure to use the correct type for the LHS of the scalar replacement statement. Bootstrap & regtest running on x86_64-unknown-linux-gnu. 20220-11-30 Richard Biener PR tree-optimization/98048 * tree-vect-generic.c (expand_vector_operations_1): Use the correct t

Re: Handle EAF_DIRECT and EAF_UNUSED of pure calls

2020-11-30 Thread Richard Biener via Gcc-patches
On Sun, Nov 29, 2020 at 4:37 PM Jan Hubicka wrote: > > > On Wed, Nov 25, 2020 at 3:14 PM Jan Hubicka wrote: > > > > > > Hi, > > > while looking into structalias I noticed that we ignore EAF flags here. > > > This is pity since we still can apply direct and unused. > > > This patch simply copies l

Re: [r11-5391 Regression] FAIL: gcc.target/i386/avx512vl-vxorpd-2.c execution test on Linux/x86_64

2020-11-30 Thread Hongtao Liu via Gcc-patches
Add no strict aliasing to function CALC, since there are "long long tmp = (*(long long *) &src1[i]) ^ (*(long long *) &src2[i]);" in function CALC. modified gcc/testsuite/gcc.target/i386/avx512dq-vandnpd-2.c @@ -9,6 +9,7 @@ #include "avx512f-mask-type.h" void +__attribute__ ((optimize ("no

[PATCH] gimple ISEL: fix BB stmt iteration

2020-11-30 Thread Martin Liška
When gimple_expand_vec_set_expr succeeds, it can remove last statements of a BB and so gsi_next(gsi->ptr) leads to ICE. Fixed with the patch. Ready for master? Thanks, Martin gcc/ChangeLog: PR tree-optimization/98066 * gimple-isel.cc (gimple_expand_vec_exprs): Return when

[PATCH v2] rs6000: Disable HTM for Power10 and later

2020-11-30 Thread Kewen.Lin via Gcc-patches
Hi Segher, on 2020/11/27 上午5:11, Segher Boessenkool wrote: > Hi! > > On Thu, Nov 26, 2020 at 06:15:04PM +0800, Kewen.Lin wrote: >> During previous Power10 testing, I noticed that ISA 3.1 has >> dropped TM support. I think we should not generate TM >> related instructions for Power10 and later, o

Re: [PATCH 1/7] arm: Auto-vectorization for MVE: vand

2020-11-30 Thread Christophe Lyon via Gcc-patches
On Fri, 27 Nov 2020 at 16:29, Christophe Lyon wrote: > > On Fri, 27 Nov 2020 at 15:13, Andre Vieira (lists) > wrote: > > > > Hi Christophe, > > > > On 26/11/2020 15:31, Christophe Lyon wrote: > > > Hi Andre, > > > > > > Thanks for the quick feedback. > > > > > > On Wed, 25 Nov 2020 at 18:17, Andr

[PATCH] Improve double-word mod even on powerpc [PR97459]

2020-11-30 Thread Jakub Jelinek via Gcc-patches
Hi! I have noticed that while my (already committed, thanks for review) patch works on x86, it doesn't work on powerpc*. The problem is that we don't have lshr double-word optab (neither TImode nor for -m32 DImode), but as expander has code for double-word shift, that doesn't really matter. As th

Add pretty-printing support for __is_nothrow_{assignable, constructible}. [PR98054]

2020-11-30 Thread Ville Voutilainen via Gcc-patches
OK for trunk if full testsuite passes? Should we consider having some sort of test that catches such omissions? 2020-11-30 Ville Voutilainen gcc/ PR c++/98054 * cp/cxx-pretty-print.c (pp_cxx_trait_expression): Add support for __is_nothrow_{assignable,constructible}. diff --git

Re: [pushed] c++: Implement C++20 'using enum'. [PR91367]

2020-11-30 Thread Iain Buclaw via Gcc-patches
Excerpts from Jason Merrill via Gcc-patches's message of November 13, 2020 7:35 pm: > > The changes to dwarf2out revealed an existing issue with the D front-end: we > were doing the wrong thing for importing a D CONST_DECL, because > dwarf2out_imported_module_or_decl_1 was looking through it to i

Re: [PATCH] Improve double-word mod even on powerpc [PR97459]

2020-11-30 Thread Richard Biener
On Mon, 30 Nov 2020, Jakub Jelinek wrote: > Hi! > > I have noticed that while my (already committed, thanks for review) > patch works on x86, it doesn't work on powerpc*. The problem is that > we don't have lshr double-word optab (neither TImode nor for -m32 DImode), > but as expander has code f

Re: [PATCH] gimple ISEL: fix BB stmt iteration

2020-11-30 Thread Richard Biener via Gcc-patches
On Mon, Nov 30, 2020 at 11:27 AM Martin Liška wrote: > > When gimple_expand_vec_set_expr succeeds, it can remove last > statements of a BB and so gsi_next(gsi->ptr) leads to ICE. > > Fixed with the patch. > Ready for master? OK. Richard. > Thanks, > Martin > > gcc/ChangeLog: > > PR tree

Re: [PATCH] gcc-changelog: Add libstdc++-v3/testsuite to wildcard prefixes

2020-11-30 Thread Jonathan Wakely via Gcc-patches
On Mon, 30 Nov 2020 at 09:44, Martin Liška wrote: > > On 11/27/20 5:23 PM, Jonathan Wakely wrote: > > This allows using "testsuite/*" in libstdc++-v3/ChangeLog entries, which > > was one of the original motivations for adding wildcard support in the > > first place: > > https://gcc.gnu.org/piperma

Re: [PATCH] gcc-changelog: Add libstdc++-v3/testsuite to wildcard prefixes

2020-11-30 Thread Martin Liška
On 11/30/20 12:58 PM, Jonathan Wakely wrote: I can have a commit which only uses wildcards now, thanks. Good! I still can't use sub-directories with wildcards, but I can live with that. Why? The example I presented did so: libstdc++-v3/ChangeLog: * doc/html/*: All you need is love

Re: [PATCH 3/3] Improve efficiency of copying section from another tree

2020-11-30 Thread Martin Liška
On 11/13/19 7:29 AM, Strager Neds wrote: -/* Worker for set_section. */ +void +symtab_node::set_section_for_node (const symtab_node &other) +{ + if (x_section == other.x_section) +return; + if (get_section () && other.get_section ()) +gcc_checking_assert (strcmp (get_section (), other.

Re: [PATCH] gcc-changelog: Add libstdc++-v3/testsuite to wildcard prefixes

2020-11-30 Thread Jonathan Wakely via Gcc-patches
On Mon, 30 Nov 2020 at 12:14, Martin Liška wrote: > > On 11/30/20 12:58 PM, Jonathan Wakely wrote: > > I can have a commit which only uses wildcards now, thanks. > > Good! > > > > > I still can't use sub-directories with wildcards, but I can live with that. > > Why? The example I presented did so:

Re: [PATCH] gcc-changelog: Add libstdc++-v3/testsuite to wildcard prefixes

2020-11-30 Thread Martin Liška
On 11/30/20 1:23 PM, Jonathan Wakely wrote: On Mon, 30 Nov 2020 at 12:14, Martin Liška wrote: On 11/30/20 12:58 PM, Jonathan Wakely wrote: I can have a commit which only uses wildcards now, thanks. Good! I still can't use sub-directories with wildcards, but I can live with that. Why? T

[PATCH] IPA: drop implicit_section again

2020-11-30 Thread Martin Liška
As mentioned in the PR, since 4656461585bfd0b9 implicit_section was not set to false when set_section was called with the argument equal to NULL. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR ipa/98057

Re: [PATCH] gcc-changelog: Add libstdc++-v3/testsuite to wildcard prefixes

2020-11-30 Thread Jonathan Wakely via Gcc-patches
On Mon, 30 Nov 2020 at 12:43, Martin Liška wrote: > > On 11/30/20 1:23 PM, Jonathan Wakely wrote: > > On Mon, 30 Nov 2020 at 12:14, Martin Liška wrote: > >> > >> On 11/30/20 12:58 PM, Jonathan Wakely wrote: > >>> I can have a commit which only uses wildcards now, thanks. > >> > >> Good! > >> > >>

[PATCH] i386: Optimize vpsubusw compared to 0 into vpcmpleuw or vpcmpnltuw[PR96906]

2020-11-30 Thread Hongtao Liu via Gcc-patches
Hi: This patch is quite similar like what jakub did in https://gcc.gnu.org/pipermail/gcc-patches/2020-November/560151.html but for target avx512bw. .i.e. for -mavx512bw -mavx512vl transform code from vpsubusw%xmm1, %xmm0, %xmm0 vpxor %xmm1, %xmm1, %xmm1 vpcmpw

Re: Modules doc

2020-11-30 Thread Nathan Sidwell
Sandra, thanks for the review, I believe I've addressed all the nits you found except for ... On 11/30/20 1:33 AM, Sandra Loosemore wrote: On 11/20/20 10:12 AM, Nathan Sidwell wrote: @@ -599,7 +609,7 @@ Objective-C and Objective-C++ Dialects}.  -fpreprocessed  -ftabstop=@var{width}  -ftrack

Re: PING^1 Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-30 Thread Nathan Sidwell
On 11/27/20 3:49 PM, Iain Sandoe wrote: Hi I believe this version addressed Joseph’s and Richard’s comment, but it C++ review. ok. Found a doc nit though ... +@item unavailable +@itemx unavailable (@var{msg}) +@cindex @code{unavailable} function attribute +The @code{deprecated} attribute r

[PATCH] tree-optimization/98064 - fix BB SLP live lane extract wrt LC SSA

2020-11-30 Thread Richard Biener
This avoids breaking LC SSA when SLP codegen pulled an out-of-loop def into a loop when merging with in-loop defs for an external def. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-11-30 Richard Biener PR tree-optimization/98064 * tree-vect-loop.c (vectoriz

Re: [PATCH] i386: Optimize vpsubusw compared to 0 into vpcmpleuw or vpcmpnltuw[PR96906]

2020-11-30 Thread Jakub Jelinek via Gcc-patches
On Mon, Nov 30, 2020 at 09:11:10PM +0800, Hongtao Liu wrote: > +;; PR96906 - optimize vpsubusw compared to 0 into vpcmpleuw or vpcmpnltuw. > +(define_split > + [(set (match_operand: 0 "register_operand") > +(unspec: > + [(us_minus:VI12_AVX512VL > + (match_operand:VI12_

Re: Add pretty-printing support for __is_nothrow_{assignable, constructible}. [PR98054]

2020-11-30 Thread Marek Polacek via Gcc-patches
On Mon, Nov 30, 2020 at 01:19:32PM +0200, Ville Voutilainen via Gcc-patches wrote: > OK for trunk if full testsuite passes? Should we consider having some sort > of test that catches such omissions? IMHO this doesn't require a test. > 2020-11-30 Ville Voutilainen > > gcc/ > > PR c++

[PATCH] testsuite: remove LIT annotation and reduce

2020-11-30 Thread Martin Liška
I noticed the test-case contains LIT annotation and it is possible to reduce. I did that with compiler that was affected by the PR. Ready for master? Tahnks, Martin gcc/testsuite/ChangeLog: * g++.dg/torture/pr93347.C: Reduce and remove LIT keywords. --- gcc/testsuite/g++.dg/torture/pr9

[PATCH] ipa: dump symtab to emergency dump file

2020-11-30 Thread Martin Liška
Hi. It's handy to have symbol table when we dump emergency dump. It's likely next stage1 material. Thoughts? Martin gcc/ChangeLog: * passes.c (emergency_dump_function): Dump symtab when we are in an IPA pass. --- gcc/passes.c | 3 +++ 1 file changed, 3 insertions(+) diff --gi

[PATCH] c++, debug: Treat -std=c++20 -gdwarf-5 like C++14 rather than C++98

2020-11-30 Thread Jakub Jelinek via Gcc-patches
Hi! I have noticed that while we use DW_LANG_C_plus_plus_14 for -std=c++17 -gdwarf-5, we use DW_LANG_C_plus_plus (aka C++98) for -std=c++20 -gdwarf-5. The following patch makes those two match. Ok for trunk if it passes bootstrap/regtest? 2020-11-30 Jakub Jelinek * dwarf2out.c (gen

Re: [00/23] Make fwprop use an on-the-side RTL SSA representation

2020-11-30 Thread Richard Sandiford via Gcc-patches
Jeff Law writes: > On 11/26/20 9:03 AM, Richard Sandiford wrote: >> Thanks for the reviews. >> >> Jeff Law via Gcc-patches writes: >>> On 11/13/20 1:10 AM, Richard Sandiford via Gcc-patches wrote: Just after GCC 10 stage 1 closed (oops), I posted a patch to add a new combine pass. One

[Ada] Confusion in Transform_Function_Array and internal subprograms

2020-11-30 Thread Pierre-Marie de Rodat
Generating an internal subprogram (e.g. array comparison functions) returning an array, the Transform_Function_Array mechanism gets confused and references the wrong entities in some cases. Fix this discrepency by directly transforming these functions into procedures instead of triggering the gener

[Ada] Add continuation message when others choice not allowed

2020-11-30 Thread Pierre-Marie de Rodat
In a context where the bounds of an array aggregate are not known, the aggregate is not allowed to include an "others" choice. The error message given by GNAT now includes a suggestion to qualify the aggregate with a constrained subtype to fix the issue. Tested on x86_64-pc-linux-gnu, committed on

[Ada] Spurious visibility error in subprogram body in with_clause

2020-11-30 Thread Pierre-Marie de Rodat
Compiler rejects a use of a name in a subprogram body that appears in a with_clause, when the name is that of an inherited function for a local derived type, and is hidden by an explicit declaration of a non-overloadable homonym, and other homonyms exist in the environment of the subprogram body.

[Ada] Small cleanup in System.Value_F

2020-11-30 Thread Pierre-Marie de Rodat
This removes a superflous processing during the conversion to fixed point. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * libgnat/s-valuef.adb (Integer_To_Fixed): Do not modify numerator or denominator in order to reduce the exponent.diff --git a/gcc/ada/libgnat/s-v

[Ada] Crash on ghost assignment check for illegal code

2020-11-30 Thread Pierre-Marie de Rodat
This patch fixes a bug, where an assignment of the form X(Y).Z := ... causes the compiler to crash when X does not refer to a visible declaration. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * errout.adb (Error_Msg_NEL): Do not call Set_Posted if errors are being i

[Ada] Potential read of uninitialized variable in exp_dist.adb

2020-11-30 Thread Pierre-Marie de Rodat
Found by using -gnatVa and Initialize_Scalars on GNAT sources. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * exp_dist.adb (RCI_Cache): Initialize.diff --git a/gcc/ada/exp_dist.adb b/gcc/ada/exp_dist.adb --- a/gcc/ada/exp_dist.adb +++ b/gcc/ada/exp_dist.adb @@ -902,7 +902,7

[Ada] Spurious error on iterator over container with modified private part

2020-11-30 Thread Pierre-Marie de Rodat
The compiler rejects an element iterator (for .. of) over a container that extends a predefined container with additional operations in the private part, when these added operations overload existing GNAT-specific private operations used to optimize such loops. Tested on x86_64-pc-linux-gnu, commi

[Ada] Fix serial port control setting on GNU/Linux

2020-11-30 Thread Pierre-Marie de Rodat
This fixes an issue when setting the control flags of the serial communication port. The c_cflag termios field should not be set with the baud rate. The speed of the communication is set using the c_ispeed and c_ospeed fields. Setting the baud rate into the c_cflag has unexpected results as it will

[Ada] Fix folding of comparison operators in GNATprove mode

2020-11-30 Thread Pierre-Marie de Rodat
Folding of comparison operators was disabled for GNATprove in assertion expressions (except for some special cases). However, folding itself is harmless. The problem was only in the current value optimizer, which interferes with assertions that act as cut points for proof. Tested on x86_64-pc-linu

[Ada] Improve error recovery

2020-11-30 Thread Pierre-Marie de Rodat
Function P_Formal_Part was unnecessarily calling Scan after calling T_Semicolon: T_Semicolon is already calling Scan to go past the comma-used-insted-of-semicolon. This avoids spurious cascaded errors in case of e.g: procedure P (A : Integer, B : Integer, C : Integer) is where ',' is used inst

[Ada] Compiler crash on limited conditional expressions

2020-11-30 Thread Pierre-Marie de Rodat
This patch fixes a bug in which if the expression of an expression function is a conditional expression of limited type, the compiler crashes. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * exp_ch3.adb (Expand_N_Object_Declaration): Avoid crash in case of conditiona

[Ada] Add stream-oriented attributes support for 128-bit integer types

2020-11-30 Thread Pierre-Marie de Rodat
This was overlooked in the original implementation of these types. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * doc/gnat_ugn/building_executable_programs_with_gnat.rst (-xdr): Document that XDR is not supported for 128-bit integer types. * gnat_ugn.texi: R

[Ada] Implement -gnateb switch

2020-11-30 Thread Pierre-Marie de Rodat
The -gnateb switch instructs gnat to store configuration pragma files by their basename in ALI files instead of using absolute paths. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Describe -gnateb switch.

[Ada] Reimplement Ada.Numerics.Big_Numbers.Big_Reals.Fixed_Conversions

2020-11-30 Thread Pierre-Marie de Rodat
This reimplements the aforementioned generic package according to the requirements of the Ada 2020 RM, namely that To_Big_Real be exact and that From_Big_Real use the common conversion rules. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * libgnat/a-nbnbre.adb (Float_Convers

[Ada] Enable checks on runtime by default

2020-11-30 Thread Pierre-Marie de Rodat
These checks are not very costly these days and bring additional safety and security guarantees built into the Ada language, so enable them by default. It turns out that enabling checks on s-bitfie.adb makes a latent visibility bug appeared on strict alignment platform (related to alignment checks

[Ada] Expand integer-only implementation of ordinary fixed-point types

2020-11-30 Thread Pierre-Marie de Rodat
This change relaxes the conditions under which the implementation of ordinary fixed-point types uses only underlying integer instructions. These conditions are on the Small of the ordinary fixed-point types, which must now be a rational number whose factors are of a magnitude bounded relatively to

[Ada] Implement inheritance for Default_Initial_Condition and address other gaps

2020-11-30 Thread Pierre-Marie de Rodat
The existing (SPARK-based) implementation of Default_Initial_Condition aspects only applies DIC checks based on a type's own DIC (or only one DIC from an ancestor if the type doesn't specify one, but not from further up the ancestor chain), but Ada 202x (AI12-0265) specifies that all DICs of parent

[Ada] Fix internal error on extended return and fixed-point result

2020-11-30 Thread Pierre-Marie de Rodat
This prevents the expander from creating an access before elaboration issue for a temporary generated for a range check applied to the expression of a degenerate extended return statement (an extended return statement without an explicit do/end construct). Expand_N_Extended_Return_Statement has go

[Ada] Wrong replacement of Component.Discriminant

2020-11-30 Thread Pierre-Marie de Rodat
The procedure Replace_Discr_Ref added a few years ago is overzealous and triggers in too many cases in the case of multiple records with discriminants involved. It appears that this procedure is no longer needed at this stage, so simply remove it. Tested on x86_64-pc-linux-gnu, committed on trunk

[Ada] Remove all ^L characters

2020-11-30 Thread Pierre-Marie de Rodat
These control characters are mainly causing confusion at this stage, so remove them. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * gcc-interface/Makefile.in, gcc-interface/trans.c: Remove ^L characters.diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-in

Re: [PATCH] c++, debug: Treat -std=c++20 -gdwarf-5 like C++14 rather than C++98

2020-11-30 Thread Richard Biener via Gcc-patches
On Mon, Nov 30, 2020 at 3:12 PM Jakub Jelinek via Gcc-patches wrote: > > Hi! > > I have noticed that while we use DW_LANG_C_plus_plus_14 for -std=c++17 > -gdwarf-5, > we use DW_LANG_C_plus_plus (aka C++98) for -std=c++20 -gdwarf-5. The > following patch makes those two match. > > Ok for trunk if

[Patch, committed] Fortran's dump-parse-tree.c: Use '==' not '=' for '.eq.'.

2020-11-30 Thread Tobias Burnus
I was a bit confused by the '=' (assignment?) in the dump; hence, in line with /=, >= etc. it now is '==' for '==' or '.eq.'. Committed as r11-5570-g2610c786f7496c5006bb68d6801ef7450bd231a9 Tobias - Mentor Graphics (Deutschland) GmbH, Arnulfstraße 201, 80634 München / Germany Re

Re: [Patch] Fortran: -fno-automatic and -fopenacc / recusion check cleanup

2020-11-30 Thread Tobias Burnus
Now installed as r11-5571-gf4e7ea81d1369d4d6cb6d8e440aefb3407142e05. Tobias On 27.11.20 11:16, Tobias Burnus wrote: Two fixes – simple, see patch + commit text. Longer description: * options: Background: - OpenMP, OpenACC and imply that a function is called concurrently and -frecursive implie

Updating the backend status for h8300 on the wiki

2020-11-30 Thread John Paul Adrian Glaubitz
Hi! Now that h8300 has been converted to use MODE_CC, it might be a good idea to update the documentation on the wiki [1] which still lists h8300 as being cc0. Adrian > [1] https://gcc.gnu.org/backends.html -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer - glaub...@debian.org `.

Re: Fortran: With OpenACC, ignore OpenMP's cond comp sentinels [PR98011]

2020-11-30 Thread Tobias Burnus
... and now committed as r11-5572-g1d6f6ac693a8601bef9fe4ba72eb6fbf7b60b5cd. Thanks again for the suggestions! Tobias On 27.11.20 23:14, Tobias Burnus wrote: On 27.11.20 18:31, Jakub Jelinek via Fortran wrote: Depends on what does the OpenACC standard say. If it has similar wording to OpenMP

Re: [RFC] Decrease default timeout for libstdc++ tests to 6 minutes

2020-11-30 Thread Jonathan Wakely via Gcc-patches
On 27/11/20 21:17 +0100, Christophe Lyon via Libstdc++ wrote: On Fri, 27 Nov 2020 at 17:13, Jonathan Wakely via Gcc-patches wrote: The default for the GCC testsuite is 300, i.e. 5 minutes, which is the same as the DejaGnu default. Libstdc++ overrides this to 600, i.e. 10 minutes. This seems

Re: [committed] libstdc++: Set dg-timeout-factor for some slow tests

2020-11-30 Thread Jonathan Wakely via Gcc-patches
On 26/11/20 16:25 +, Jonathan Wakely wrote: These tests are very, very slow to compile. If the testsuite is run with a low tool_timeout value they are likely to fail. By adding a multiplication factor to those tests, it's still possible to use a low timeout without spurious failures. libstdc

[committed] libstdc++: Add new C++20 headers to Doxygen settings

2020-11-30 Thread Jonathan Wakely via Gcc-patches
This doesn't actually have any effect unless you also change the predefined value of __cplusplus, as it's currently 201703L. But if somebody does want to do that, the new headers will get processed now. libstdc++-v3/ChangeLog: * doc/doxygen/user.cfg.in (INPUT): Add and . Tested x86_64-l

[PATCH] VAX: Fix the LTO compiler downgrading code to non-PIC model

2020-11-30 Thread Maciej W. Rozycki
Fix a testsuite failure: /tmp/ccL65Mmt.s: Assembler messages: /tmp/ccL65Mmt.s:36: Warning: Symbol n used as immediate operand in PIC mode. FAIL: gcc.dg/lto/pr55660 c_lto_pr55660_0.o-c_lto_pr55660_1.o link, -O0 -flto -flto-partition=none -fuse-linker-plugin where non-PIC code is substituted by th

Re: [PATCH] match.pd: Use ranges to optimize some x * y / y to x [PR97997]

2020-11-30 Thread Andrew MacLeod via Gcc-patches
On 11/26/20 3:52 AM, Jakub Jelinek wrote: Hi! For signed integers with undefined overflow we already optimize x * y / y into x, but for signed integers with -fwrapv or unsigned integers we don't. The following patch allows optimizing that into just x if value ranges prove that x * y will never o

[PATCH] dse: Cope with bigger-than-integer modes [PR98037]

2020-11-30 Thread Richard Sandiford via Gcc-patches
dse.c:find_shift_sequence tries to represent a store and load back as a shift right followed by a truncation. It therefore needs to find an integer mode in which to do the shift right. The loop it uses has the form: FOR_EACH_MODE_FROM (new_mode_iter, smallest_int_mode_for_

Re: [PATCH] ipa: dump symtab to emergency dump file

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/30/20 7:04 AM, Martin Liška wrote: > Hi. > > It's handy to have symbol table when we dump emergency dump. > It's likely next stage1 material. > > Thoughts? > Martin > > gcc/ChangeLog: > >     * passes.c (emergency_dump_function): Dump symtab when >     we are in an IPA pass. Your

Re: [PATCH] ipa: dump symtab to emergency dump file

2020-11-30 Thread Jan Hubicka
> > > On 11/30/20 7:04 AM, Martin LiÅ¡ka wrote: > > Hi. > > > > It's handy to have symbol table when we dump emergency dump. > > It's likely next stage1 material. > > > > Thoughts? > > Martin > > > > gcc/ChangeLog: > > > >     * passes.c (emergency_dump_function): Dump symtab when > >    Â

Re: [PATCH 25/31] VAX: Fix predicates for widening multiply and multiply-add insns

2020-11-30 Thread Maciej W. Rozycki
On Fri, 20 Nov 2020, Jeff Law wrote: > ps.  Yes, I skipped the insv/extv changes.  They're usually a rats nest > of special cases.  We'll come back to them. I've thought of actually reducing the number of patterns to the minimum possible by folding the existing ones together, and then getting t

[committed] Fix non-unique testnames

2020-11-30 Thread Jeff Law via Gcc-patches
This patch fixes a handful of tests with non-unique names which confuse the living hell out of compare_tests, particularly if one of two tests [x]fail while the other is [x]pass which compare_tests will flag as a regression each and every run. No doubt there's a lot more of these lying around and

Re: [PATCH][PR target/97770] x86: Add missing popcount2 expander

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/11/20 6:54 PM, Hongyu Wang via Gcc-patches wrote: > Hi, > > According to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97770, x86 > backend need popcount2 expander so __builtin_popcount could be > auto vectorized with AVX512BITALG/AVX512VPOPCNTDQ targets. > > For DImode the middle-end vecto

Re: [24/32] module mapper

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/12/20 9:24 AM, Nathan Sidwell wrote: > On 11/3/20 4:17 PM, Nathan Sidwell wrote: >> this is the module mapper client and server pieces.  It features a >> default resolver that can read a text file, or generate default >> mappings from module name to cmi name. > > Richard rightly suggested

[PATCH] changelog: add hint for a file mismatch

2020-11-30 Thread Martin Liška
Pushed to master. It's supposed to provide a hint, e.g. ERR: unchanged file mentioned in a ChangeLog (did you mean "gcc/testsuite/gfortran.dg/goacc-gomp/free-1.f90"?):"gcc/testsuite/gfortran.dg/goacc-gomp/free-1.f" Martin contrib/ChangeLog: * gcc-changelog/git_commit.py: Suggest clos

Re: [PATCH] Remove redundant builtins for avx512f scalar instructions.

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/12/20 11:21 PM, Hongyu Wang wrote: > Hi > > Thanks for reminding me about this patch. I didn't remove any existing > intrinsics, just remove redundant builtin functions that end-users > would not likely to use. > > Also I'm OK to keep current implementation, in case there might be > someon

Re: How to traverse all the local variables that declared in the current routine?

2020-11-30 Thread Qing Zhao via Gcc-patches
Hi, Martin, Thanks a lot for your suggestion. > On Nov 25, 2020, at 6:08 PM, Martin Sebor wrote: > > On 11/24/20 9:54 AM, Qing Zhao via Gcc-patches wrote: >>> On Nov 24, 2020, at 9:55 AM, Richard Biener >>> wrote: >>> >>> On Tue, Nov 24, 2020 at 4:47 PM Qing Zhao wrote: >>

Re: [PATCH] Remove redundant builtins for avx512f scalar instructions.

2020-11-30 Thread Jakub Jelinek via Gcc-patches
On Mon, Nov 30, 2020 at 09:23:15AM -0700, Jeff Law wrote: > > > On 11/12/20 11:21 PM, Hongyu Wang wrote: > > Hi > > > > Thanks for reminding me about this patch. I didn't remove any existing > > intrinsics, just remove redundant builtin functions that end-users > > would not likely to use. > > >

Re: [PATCH] ipa: dump symtab to emergency dump file

2020-11-30 Thread Martin Liška
On 11/30/20 4:50 PM, Jan Hubicka wrote: On 11/30/20 7:04 AM, Martin Liška wrote: Hi. It's handy to have symbol table when we dump emergency dump. It's likely next stage1 material. Thoughts? Martin gcc/ChangeLog:     * passes.c (emergency_dump_function): Dump symtab when     we are

Re: [PATCH][AVX512]Lower AVX512 vector compare to AVX version when dest is vector

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/16/20 8:10 PM, Hongtao Liu wrote: > On Tue, Nov 17, 2020 at 8:05 AM Jeff Law wrote: >> >> On 9/2/20 3:34 AM, Hongtao Liu via Gcc-patches wrote: >>> Hi: >>> Add define_peephole2 to eliminate potential redundant conversion >>> from mask to vector. >>> Bootstrap is ok, regression test is

Re: [PATCH v3 1/2] generate EH info for volatile asm statements (PR93981)

2020-11-30 Thread J.W. Jagersma via Gcc-patches
On 2020-11-23 09:20, Richard Biener wrote: > On Sun, Nov 22, 2020 at 5:38 PM J.W. Jagersma wrote: >> >> On 2020-11-21 12:27, J.W. Jagersma wrote: >>> ... >>> Another idea I had is to introduce a new operand modifier, eg. '-', which >>> would signify that the output *must* be considered clobbered o

Re: [PATCH] [tree-optimization] Optimize or+and+or pattern to and+or

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/22/20 6:35 PM, Eugene Rozenfeld via Gcc-patches wrote: > Simplify > ((b | c) & a) | b > to > (a & c) | b. > > This fixes PR96679. > > Tested on x86_64-pc-linux-gnu. > > int f(int a, int b, int c) > { > return ((b | c) & a) | b; > } > > Code without the patch: > or edx,esi > and

Re: [PATCH] dse: Cope with bigger-than-integer modes [PR98037]

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/30/20 8:29 AM, Richard Sandiford via Gcc-patches wrote: > dse.c:find_shift_sequence tries to represent a store and load > back as a shift right followed by a truncation. It therefore > needs to find an integer mode in which to do the shift right. > The loop it uses has the form: > > FOR

Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-30 Thread Martin Sebor via Gcc-patches
On 11/29/20 6:56 PM, Iain Sandoe wrote: Hi Martin, Martin Sebor via Gcc-patches wrote: On 11/10/20 12:38 PM, Iain Sandoe wrote: —— commit message. If an interface is marked 'deprecated' then, presumably, at some point it will be withdrawn and no longer available.  The 'unavailable' attri

Re: [PATCH] driver: Don't imply -dD for -g3 -g0 [PR97989]

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/26/20 1:39 AM, Jakub Jelinek via Gcc-patches wrote: > Hi! > > The driver enables -dD when preprocessing when -g3 is specified, for obvious > reasons > that we need the macros to be preserved somewhere for them to make up the > debug > info. But it enables it even if -g3 is later overrid

Re: How to traverse all the local variables that declared in the current routine?

2020-11-30 Thread Martin Sebor via Gcc-patches
On 11/30/20 9:23 AM, Qing Zhao wrote: Hi, Martin, Thanks a lot for your suggestion. On Nov 25, 2020, at 6:08 PM, Martin Sebor > wrote: On 11/24/20 9:54 AM, Qing Zhao via Gcc-patches wrote: On Nov 24, 2020, at 9:55 AM, Richard Biener mailto:richard.guent...@gmail.com>

Re: [PATCH] ipa-cp: Avoid unwanted multiple propagations (PR 97816)

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/20/20 12:41 PM, Martin Jambor wrote: > Hi, > > this is an updated patch based on our conversation on IRC today. So far > I have had a look at the effects on only tramp3d and although it makes > the heuristics more pessimistic more times than optimistic (number of > clones at -Ofast drops

Re: [PATCH] dse: Cope with bigger-than-integer modes [PR98037]

2020-11-30 Thread Richard Biener via Gcc-patches
On November 30, 2020 4:29:41 PM GMT+01:00, Richard Sandiford via Gcc-patches wrote: >dse.c:find_shift_sequence tries to represent a store and load >back as a shift right followed by a truncation. It therefore >needs to find an integer mode in which to do the shift right. >The loop it uses has th

Re: [PATCH] [tree-optimization] Optimize max/min pattern with comparison

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/25/20 3:04 PM, Eugene Rozenfeld via Gcc-patches wrote: > Make the following simplifications: > X <= MAX(X, Y) -> true > X > MAX(X, Y) -> false > X >= MIN(X, Y) -> true > X < MIN(X, Y) -> false > > This fixes PR96708. > > Tested on x86_64-pc-linux-gnu. > > bool f(i

Re: [PATCH] gcc-11/changes: Document new configure flag --enable-s390-excess-float-precision

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/26/20 2:58 AM, Marius Hillenbrand via Gcc-patches wrote: > Hi, > > To document the new behavior around FLT_EVAL_METHOD and configure flag > --enable-s390-excess-float-precision on s390, I propose this update to the > Release Notes. Please commit to git-wwwdocs if you agree. > > Checked aga

Re: [PATCH] profopt-execute: unset testname_with_flags if create_gcov fails

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/26/20 12:22 PM, Ilya Leoshkevich via Gcc-patches wrote: > Bootstrapped and regtested on x86_64-redhat-linux and > s390x-redhat-linux. Ok for master? > > > > When diffing test results, there sometimes occur spurious "New tests > that PASS" / "Old tests that passed, that have disappeared" m

[PATCH] Add feature test macro for atomic::wait

2020-11-30 Thread Thomas Rodgers
From: Thomas Rodgers Adds __cpp_lib_atomic_wait feature test macro which was overlooked in the initial commit of this feature. Replaces uses of _GLIBCXX_HAVE_ATOMIC_WAIT. libstdc++-v3/ChangeLog: * include/bits/atomic_base.h: Replace usage of _GLIBCXX_HAVE_ATOMIC_WAIT with __cpp_

Re: [PATCH] dse: Cope with bigger-than-integer modes [PR98037]

2020-11-30 Thread Richard Sandiford via Gcc-patches
Richard Biener writes: > On November 30, 2020 4:29:41 PM GMT+01:00, Richard Sandiford via Gcc-patches > wrote: >>dse.c:find_shift_sequence tries to represent a store and load >>back as a shift right followed by a truncation. It therefore >>needs to find an integer mode in which to do the shift

Re: [PATCH 25/31] VAX: Fix predicates for widening multiply and multiply-add insns

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/30/20 9:02 AM, Maciej W. Rozycki wrote: > On Fri, 20 Nov 2020, Jeff Law wrote: > >> ps.  Yes, I skipped the insv/extv changes.  They're usually a rats nest >> of special cases.  We'll come back to them. > I've thought of actually reducing the number of patterns to the minimum > possible

Re: [PATCH v3 01/31] PR target/58901: reload: Handle SUBREG of MEM with a mode-dependent address

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/27/20 1:50 PM, Maciej W. Rozycki wrote: > From: Matt Thomas > > Fix an ICE with the handling of RTL expressions like: > > (subreg:QI (mem/c:SI (plus:SI (plus:SI (mult:SI (reg/v:SI 0 %r0 [orig:67 i ] > [67]) > (const_int 4 [0x4])) > (reg/v/f:SI 7 %r7 [o

Re: [PATCH] testsuite: remove LIT annotation and reduce

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/30/20 7:02 AM, Martin Liška wrote: > I noticed the test-case contains LIT annotation and > it is possible to reduce. I did that with compiler that > was affected by the PR. > > Ready for master? > Tahnks, > Martin > > gcc/testsuite/ChangeLog: > >     * g++.dg/torture/pr93347.C: Reduce

[committed] Remove dead cc0 code from H8 port

2020-11-30 Thread Jeff Law via Gcc-patches
This patch removes a bit of now dead cc0 code from the H8 port. In particular it drops the "cc" attribute various insns and removes notice_update_cc.  We keep the attribute, but call it "old_cc" for now.  The compute_*_cc routines get re-purposed in the optimization patches (not yet submitted), th

Re: Updating the backend status for h8300 on the wiki

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/30/20 7:37 AM, John Paul Adrian Glaubitz wrote: > Hi! > > Now that h8300 has been converted to use MODE_CC, it might be a good idea > to update the documentation on the wiki [1] which still lists h8300 as > being cc0. Thanks.  I'd been meaning to update that. I also took care of updating c

Re: Add 'dg-note' next to 'dg-optimized', 'dg-missed' (was: [PATCH] dumpfile.c: use prefixes other that 'note: ' for MSG_{OPTIMIZED_LOCATIONS|MISSED_OPTIMIZATION})

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/24/20 2:53 AM, Thomas Schwinge wrote: > Hi! > > Ping. > > > Grüße > Thomas > > > On 2020-11-06T10:26:46+0100, I wrote: >> Hi, again! >> >> On 2018-09-25T16:00:14-0400, David Malcolm wrote: >>> As noted at Cauldron, dumpfile.c currently emits "note: " for all kinds >>> of dump message, so

Re: [PATCH] dse: Cope with bigger-than-integer modes [PR98037]

2020-11-30 Thread Richard Biener via Gcc-patches
On November 30, 2020 7:18:37 PM GMT+01:00, Richard Sandiford wrote: >Richard Biener writes: >> On November 30, 2020 4:29:41 PM GMT+01:00, Richard Sandiford via >Gcc-patches wrote: >>>dse.c:find_shift_sequence tries to represent a store and load >>>back as a shift right followed by a truncation.

Re: [14/23] simplify-rtx: Put simplify routines into a class

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/13/20 1:18 AM, Richard Sandiford via Gcc-patches wrote: > One of the recurring warts of RTL is that multiplication by a power > of 2 is represented as a MULT inside a MEM but as an ASHIFT outside > a MEM. It would obviously be better if we didn't have this kind of > context sensitivity, b

Re: [09/23] Add a cut-down version of std::span (array_slice)

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/13/20 1:15 AM, Richard Sandiford via Gcc-patches wrote: > A later patch wants to be able to pass around subarray views of an > existing array. The standard class to do that is std::span, but it's > a C++20 thing. This patch just adds a cut-down version of it. > > The intention is just to

Go patch committed: Improve error for import of non-string

2020-11-30 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend improves the error message when using an import statement with something other than a string. This requires updating one of the tests to the current version in the main repo. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian 4f32ec

Re: [15/23] recog: Add a validate_change_xveclen function

2020-11-30 Thread Jeff Law via Gcc-patches
On 11/13/20 1:19 AM, Richard Sandiford via Gcc-patches wrote: > A later patch wants to be able to use the validate_change machinery > to reduce the XVECLEN of a PARALLEL. This should be more efficient > than allocating a separate PARALLEL at a possibly distant memory > location, especially sinc

Go patch committed: Better error messages for missing interface method

2020-11-30 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend generates better error messages for a missing interface method. This is for https://golang.org/issue/10700. This requires updating one test to the one in the source repo. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian 38f1084181

  1   2   >