Re: [PATCH v2] c++: Implement -Wvexing-parse [PR25814]

2020-10-27 Thread Jason Merrill via Gcc-patches
On 10/24/20 7:40 PM, Marek Polacek wrote: On Fri, Oct 23, 2020 at 09:33:38PM -0400, Jason Merrill via Gcc-patches wrote: On 10/23/20 3:01 PM, Marek Polacek wrote: This patch implements the -Wvexing-parse warning to warn about the sneaky most vexing parse rule in C++: the cases when a

Re: move sincos after pre

2020-10-27 Thread Alexandre Oliva
On Oct 27, 2020, Richard Biener wrote: > For trapping math SRC may be a constant? Better be safe > and guard against TREE_CODE (src) != SSA_NAME. *nod* > You also want to guard against SSA_NAME_OCCURS_IN_ABNORMAL_PHI (src) > since you cannot generally propagate or move uses of those. What if

Re: [PATCH][PR target/97540] Don't extract memory from operand for normal memory constraint.

2020-10-27 Thread Hongtao Liu via Gcc-patches
On Tue, Oct 27, 2020 at 7:13 PM Richard Sandiford wrote: > > Hongtao Liu via Gcc-patches writes: > > Hi: > > For inline asm, there could be an operand like (not (mem:)), it's > > not a valid operand for normal memory constraint. > > Bootstrap is ok, regression test is ok for make check > >

[PATCH] Tweaks to ranger API routines.

2020-10-27 Thread Andrew MacLeod via Gcc-patches
There are a couple of little things I've been meaning to get to. 1)  The API routines return TRUE when a range has been computed, and false when one cannot be. The range itself was uninitialized when false was returned, and this was a bit awkward by times. Now, when false is returned, the

Re: PowerPC: Update __float128 and __ibm128 error messages.

2020-10-27 Thread Segher Boessenkool
Hi! On Thu, Oct 22, 2020 at 06:11:35PM -0400, Michael Meissner wrote: > This patch attempts to make the error messages for intermixing IEEE 128-bit > floating point with IBM 128-bit extended double types to be clearer if the > long > double type uses the IEEE 128-bit format. > We have gotten

Re: [RS6000] dg-do !compile and scan-assembler

2020-10-27 Thread Alan Modra via Gcc-patches
On Tue, Oct 27, 2020 at 05:34:45PM -0500, Segher Boessenkool wrote: > Hi! > > On Tue, Oct 27, 2020 at 09:26:10PM +1030, Alan Modra wrote: > > These tests never checked assembly, because .s files were not > > produced. One test was looking for the wrong instructions. > > -/* { dg-final {

Avoid typeless storage in trailing wide ints

2020-10-27 Thread Jan Hubicka
Hi, this patch avoid typeless storage in trailing_wide_ints. This improves TBAA disambiguation rate on cc1plus by 7%. Bootstrapped/regtested x86_64-linux, OK? * wide-int.h (trailing_wide_ints ): Turn len to array of structures so it does not imply typeless storage.

Handle builtins on local modref, v2

2020-10-27 Thread Jan Hubicka
Hi, this is updated patch to handle fnspec in local modref. There are the following fortran failues: gfortran.dg/assumed_type_9.f90 -O2 execution test gfortran.dg/assumed_type_9.f90 -Os execution test gfortran.dg/class_alias.f90 -O1 execution test gfortran.dg/finalize_25.f90 -O2

Re: [RS6000] power10 scan-assembler tests

2020-10-27 Thread Segher Boessenkool
On Tue, Oct 27, 2020 at 09:48:48PM +1030, Alan Modra wrote: > On power10 these are "dg-do run" tests, so need -save-temps for the > assembler scanning. > > Regression tested powerpc64le-linux power8 and power10. OK? Yes please. Thanks! Segher > *

Re: [RS6000] dg-do !compile and scan-assembler

2020-10-27 Thread Segher Boessenkool
Hi! On Tue, Oct 27, 2020 at 09:26:10PM +1030, Alan Modra wrote: > These tests never checked assembly, because .s files were not > produced. One test was looking for the wrong instructions. -/* { dg-final { scan-assembler-times {\msldbi\M} 6 } } */ > -/* { dg-final { scan-assembler-times

Re: [PATCH 2/2] combine: Don't turn (mult (extend x) 2^n) into extract

2020-10-27 Thread Segher Boessenkool
On Tue, Oct 27, 2020 at 10:35:59AM +, Alex Coplan wrote: > On 26/10/2020 12:43, Segher Boessenkool wrote: > > I do not like handling both mult and ashift in one case like this, it > > complicates things for no good reason. Write it as two cases, and it > > should be good. > > OK, the

c: Allow duplicate C2x standard attributes

2020-10-27 Thread Joseph Myers
N2557, accepted into C2x at the October WG14 meeting, removes the requirement that duplicates of standard attributes cannot appear within an attribute list (so allowing e.g. [[deprecated, deprecated]], where previously that was disallowed but [[deprecated]] [[deprecated]] was OK). Remove the code

[r11-4427 Regression] FAIL: gfortran.dg/vect/pr83232.f90 -O scan-tree-dump-times slp1 "vectorizing stmts using SLP" 3 on Linux/x86_64

2020-10-27 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 5af1e827bbb624eb28f80d2c5e0da46185af3708 is the first bad commit commit 5af1e827bbb624eb28f80d2c5e0da46185af3708 Author: Richard Biener Date: Tue Oct 27 11:03:27 2020 +0100 Avoid uniform lane BB vectorization caused FAIL: gfortran.dg/vect/pr83232.f90 -O

[r11-4404 Regression] FAIL: g++.dg/pr97560.C -std=gnu++98 (test for excess errors) on Linux/x86_64

2020-10-27 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 18cb6195fda69ea8ab8b8a5290dd8c9f8d52b0e6 is the first bad commit commit 18cb6195fda69ea8ab8b8a5290dd8c9f8d52b0e6 Author: Aldy Hernandez Date: Tue Oct 27 07:29:42 2020 +0100 Add test for pr97560. caused FAIL: g++.dg/pr97560.C -std=gnu++98 (test for excess errors) with

Re: [patch, shared coarrays, committed] Make header use more consistent

2020-10-27 Thread David Edelsohn via Gcc-patches
The current COARRAYS branch correctly bootstraps on AIX. Thanks for correcting the contents and ordering of the header files. Thanks, David On Tue, Oct 27, 2020 at 1:31 PM Thomas Koenig wrote: > > I just committed > > https://gcc.gnu.org/g:0c261d5b5c931d9e9214d06531bdc7e9e16aeaab > > to

[PATCH][driver] Don't add suffix for non-files

2020-10-27 Thread Tamar Christina via Gcc-patches
Hi All, This patch fixes an issue where on systems that are HAVE_TARGET_EXECUTABLE_SUFFIX the driver calls convert_filename in order to add the suffix to the filename. However while it excludes `-` it doesn't exclude the null device. This patches changes the check to exclude anything that is

[PATCH] PR libgfortran/97581 - clean up size calculation of random generator state

2020-10-27 Thread Harald Anlauf
As mentioned in the PR, gcc has a new warning about size calculations of arrays ([-Wsizeof-array-div]), which fired in libgfortran/intrinsics/random.c, and complained about the macro SZ that determines the size of the internal state of the random number generator for different integer kinds. A

libgo patch committed: Update to Go 1.15.3 release

2020-10-27 Thread Ian Lance Taylor via Gcc-patches
This patch updates libgo to the Go 1.15.3 release. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian c1ddc4818479413a967694cf6b5e322c0549890f diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 7d065954502..1f65809fc81 100644 ---

Re: [PATCH] c++: Check constraints only on candidate conversion functions

2020-10-27 Thread Patrick Palka via Gcc-patches
On Tue, 27 Oct 2020, Jason Merrill wrote: > On 10/26/20 5:37 PM, Patrick Palka wrote: > > In the testcase below, we're overeagerly checking the constraints on > > the conversion function B::operator bool() as part of finding an > > implicit conversion sequence from B to const A&. > > > > This

[Committed] Fix PR97497

2020-10-27 Thread Andreas Krebbel via Gcc-patches
This works around a limitation of gcse with handling of partially clobbered registers. With this patch our GOT pointer register r12 is not marked as partially clobbered anymore for the -m31 -mzarch -fpic combination. This is correct since all the bits in r12 we actually care about are in fact

Re: [PATCH v2] builtins: rs6000: Add builtins for fegetround, feclearexcept and feraiseexcept [PR94193]

2020-10-27 Thread Segher Boessenkool
Hi! On Sun, Oct 04, 2020 at 09:56:01PM -0400, Hans-Peter Nilsson wrote: > Please excuse a comment from the gallery: :-) Thanks! > > > + rtx tmp = gen_rtx_CONST_INT (SImode, __builtin_clz (INTVAL > > > (operands[1]))); > > This doesn't appear to be very portable, to any-cxx11-compiler > that

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Qing Zhao via Gcc-patches
> On Oct 27, 2020, at 12:34 PM, Uros Bizjak wrote: > > On Tue, Oct 27, 2020 at 5:10 PM Qing Zhao > wrote: >> >> Uros, >> >> The following is the change compared to version 4 after fix all the issues >> you raised in the previous email. >> >> Let me know if

Re: [PATCH v2] RISC-V: Add configure option: --with-multilib-config to flexible config multi-lib settings.

2020-10-27 Thread Jim Wilson
On Mon, Oct 19, 2020 at 2:35 AM Kito Cheng wrote: > - I was consider to implmenet this into `--with-multilib-list` option, >but I am not sure who will using that with riscv*-*-elf*, so I decide to >using another option name for that. > I believe that --with-multllib-list is only useful

Re: *PING^4* [PATCH] doc: gcc.c: Update documentation for spec files

2020-10-27 Thread Joseph Myers
First, as a general principle I don't think it's really a good idea to have the documentation for specs duplicated in two places. It would be better to have it in exactly one place, and so avoid having two copies getting out of sync in future. I'd say that specs are an internal implementation

Go patch committed: Export notinheap annotation

2020-10-27 Thread Ian Lance Taylor via Gcc-patches
This Go frontend patch adds the notinheap annotation to the export data. This is the Go frontend version of https://golang.org/cl/259297. This is required now because that change is in the 1.15.3 release. This requires changing the go/internal/gccgoimporter package, to skip the new annotation.

Go patch committed: Remove unused Type::in_heap_ member variable

2020-10-27 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend removes the unused Type::in_heap_ member variable. This member variable was added in https://golang.org/cl/46490, but it was never used. The code uses Named_type::in_heap_ instead. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline.

Re: [PATCH] c++: Implement DR2303 [PR97453]

2020-10-27 Thread Jason Merrill via Gcc-patches
On 10/22/20 1:31 PM, kamlesh kumar wrote: Attaching the patch file. >>Instead of building a hash table, would it work to handle ambiguity by >>checking whether one of the classes is a base of the other? Fixing for cases like: struct B: A,A may not be cleaner this way. Why not? Your

Re: [PATCH] c++: Prevent warnings for value-dependent exprs [PR96742]

2020-10-27 Thread Jason Merrill via Gcc-patches
On 10/24/20 6:52 PM, Marek Polacek wrote: Here, in r11-155, I changed the call to uses_template_parms to type_dependent_expression_p_push to avoid a crash in C++98 in value_dependent_expression_p on a non-constant expression. But that prompted a host of complaints that we now warn for

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Uros Bizjak via Gcc-patches
On Tue, Oct 27, 2020 at 5:10 PM Qing Zhao wrote: > > Uros, > > The following is the change compared to version 4 after fix all the issues > you raised in the previous email. > > Let me know if there is any other issue. LGTM for x86 part, with a couple of small review comments inline. Thanks,

[patch, shared coarrays, committed] Make header use more consistent

2020-10-27 Thread Thomas Koenig via Gcc-patches
I just committed https://gcc.gnu.org/g:0c261d5b5c931d9e9214d06531bdc7e9e16aeaab to hopefully fix the header issue on the native_coarray branch. If anybody wants to give this a spin, please go right ahead. I've also discussed with Nicolas on how best to proceed. The best way forward is

c++: Kill nested_udts

2020-10-27 Thread Nathan Sidwell
During the implementation of modules I added myself a note to implement nested_udt handling. It wasn't obvious to me what they were for and nothing seemed to be broken in ignoring them. I figured something would eventually pop up and I'd add support. Nothing popped up. Investigating on trunk

Re: [PATCH] c++: Check constraints only on candidate conversion functions

2020-10-27 Thread Jason Merrill via Gcc-patches
On 10/26/20 5:37 PM, Patrick Palka wrote: In the testcase below, we're overeagerly checking the constraints on the conversion function B::operator bool() as part of finding an implicit conversion sequence from B to const A&. This behavior seems to be nonconforming because according to

Re: [RS6000] Unsupported test options for -m32

2020-10-27 Thread Segher Boessenkool
On Mon, Oct 26, 2020 at 08:48:37PM -0400, David Edelsohn wrote: > Or we enable -mcmodel= for all powerpc targets and make it a nop for > Darwin and PPC32 Linux. That is starting to sound more and more attractive (it is also how we handle pretty much all other machine flags: just igmore it if it

Re: [RS6000] Unsupported test options for -m32

2020-10-27 Thread Segher Boessenkool
On Tue, Oct 27, 2020 at 10:05:45AM +1030, Alan Modra wrote: > aix64.opt is used for all rs6000-aix targets, linux64.opt for 64-bit > and biarch powerpc linux targets. powerpc linux errors for -mcmodel > when -m32 (yes, even when biarch Segher). >From sysv4.h: #ifndef RS6000_BI_ARCH # define

[committed] libstdc++: Fix ODR violations caused by

2020-10-27 Thread Jonathan Wakely via Gcc-patches
The placeholders for std::tr1::bind are defined in an anonymous namespace, which means they have internal linkage. This will cause ODR violations when used in function templates (such as std::tr1::bind) from multiple translation units. Although probably harmless (every definition will generate

Re: [PATCH V2] aarch64: Add vcopy(q)__lane(q)_bf16 intrinsics

2020-10-27 Thread Andrea Corallo via Gcc-patches
Richard Sandiford writes: > Andrea Corallo via Gcc-patches writes: >> diff --git >> a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vcopy_lane_bf16_indices_1.c >> b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vcopy_lane_bf16_indices_1.c >> new file mode 100644 >> index

Re: [PATCH] tree-optimization/97428 - split SLP groups for loop vectorization

2020-10-27 Thread Richard Biener
On Tue, 27 Oct 2020, Richard Sandiford wrote: > Sorry for the very late comment (was out last week)? > > Richard Biener writes: > > This enables SLP store group splitting also for loop vectorization. > > For the existing testcase gcc.dg/vect/vect-complex-5.c this then > > generates much better

[committed] libstdc++: Remove unused variables in special functions

2020-10-27 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * include/tr1/ell_integral.tcc (__ellint_rf, __ellint_rd) (__ellint_rc, __ellint_rj): Remove unused variables. * include/tr1/modified_bessel_func.tcc (__airy): Likewise. Tested x86_64-linux. Committed to trunk. commit

Re: [RS6000] Unsupported test options for -m32

2020-10-27 Thread Peter Bergner via Gcc-patches
On 10/26/20 7:48 PM, David Edelsohn via Gcc-patches wrote: >> -/* { dg-do compile } */ >> +/* { dg-do compile { target { *-*-aix* || { *-*-linux* && lp64 } } } } */ >> /* { dg-require-effective-target powerpc_p8vector_ok } */ >> /* { dg-options "-O2 -mdejagnu-cpu=power8 -maltivec -mcmodel=large"

[committed] libstdc++: Fix -Wsign-compare warnings in headers

2020-10-27 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * include/bits/locale_conv.h (__str_codecvt_out_all): Add cast to compare operands of the same signedness. * include/bits/locale_facets_nonio.tcc (time_get::_M_extract_wday_or_month): Likewise. * include/bits/sstream.tcc

Re: [PATCH 2/2] arm: Improve handling of relocations with small offsets with -mpure-code on v6m (PR96770)

2020-10-27 Thread Richard Earnshaw via Gcc-patches
On 28/09/2020 10:09, Christophe Lyon via Gcc-patches wrote: > With -mpure-code on v6m (thumb-1), we can use small offsets with > upper/lower relocations to avoid the extra addition of the > offset. > > This patch accepts expressions symbol+offset as legitimate constants > when the literal pool is

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Qing Zhao via Gcc-patches
Uros, The following is the change compared to version 4 after fix all the issues you raised in the previous email. Let me know if there is any other issue. Thanks. Qing --- gcc/config/i386/i386.c | 162 +

Re: [PATCH 1/2] arm: Avoid indirection with -mpure-code on v6m (PR96967)

2020-10-27 Thread Richard Earnshaw via Gcc-patches
On 28/09/2020 10:09, Christophe Lyon via Gcc-patches wrote: > With -mpure-code on v6m (thumb-1), to avoid a useless indirection when > building the address of a symbol, we want to consider SYMBOL_REF as a > legitimate constant. This way, we build the address using a series of > upper/lower

Re: [PATCH] Selectively trap if ranger and vr-values disagree on range builtins.

2020-10-27 Thread Aldy Hernandez via Gcc-patches
For the record, this is what I envision the follow-up patch to be (untested). Aldy diff --git a/gcc/vr-values.c b/gcc/vr-values.c index 9f5943a1ab6..3db72a360a6 100644 --- a/gcc/vr-values.c +++ b/gcc/vr-values.c @@ -1159,188 +1159,16 @@ check_for_binary_op_overflow (range_query *query,

Re: [PATCH] tree-optimization/97428 - split SLP groups for loop vectorization

2020-10-27 Thread Richard Sandiford via Gcc-patches
Sorry for the very late comment (was out last week)… Richard Biener writes: > This enables SLP store group splitting also for loop vectorization. > For the existing testcase gcc.dg/vect/vect-complex-5.c this then > generates much better code, likewise for the PR97428 testcase. > > Both of those

c++: Small cleanup for do_type_instantiation

2020-10-27 Thread Nathan Sidwell
In working on a bigger cleanup I noticed some opportunities to make do_type_instantiation's control flow simpler. gcc/cp/ * parser.c (cp_parser_explicit_instantiation): Refactor some RAII. * pt.c (bt_instantiate_type_proc): DATA is the tree, pass type to

[PATCH] c++: Don't purge the satisfaction caches

2020-10-27 Thread Patrick Palka via Gcc-patches
The adoption of P2104 means we can memoize the result of satisfaction indefinitely and no longer have to clear the satisfaction caches on various events that would affect satisfaction. To that end, this patch removes clear_satisfaction_cache and adjusts its callers appropriately. This provides a

Re: [PATCH] arm: Fix multiple inheritance thunks for thumb-1 with -mpure-code

2020-10-27 Thread Richard Earnshaw via Gcc-patches
On 26/10/2020 10:52, Christophe Lyon via Gcc-patches wrote: > On Thu, 22 Oct 2020 at 17:22, Richard Earnshaw > wrote: >> >> On 22/10/2020 09:45, Christophe Lyon via Gcc-patches wrote: >>> On Wed, 21 Oct 2020 at 19:36, Richard Earnshaw >>> wrote: On 21/10/2020 17:11, Christophe Lyon via

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Richard Sandiford via Gcc-patches
Qing Zhao writes: >>> diff --git a/gcc/flag-types.h b/gcc/flag-types.h >>> index 852ea76..0f7e503 100644 >>> --- a/gcc/flag-types.h >>> +++ b/gcc/flag-types.h >>> @@ -285,6 +285,15 @@ enum sanitize_code { >>> | SANITIZE_BOUNDS_STRICT >>> }; >>> >>> +enum

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

2020-10-27 Thread Richard Sandiford via Gcc-patches
Kewen asked me to have a look at this since Richard was reluctant to approve it (given that it was his idea). TBH I don't know much about the pass machinery, so I'm not sure I'm really best placed. There again, perhaps I know just enough to realise that this is indeed the hack that it's billed

[PATCH] Selectively trap if ranger and vr-values disagree on range builtins.

2020-10-27 Thread Aldy Hernandez via Gcc-patches
The UBSAN builtins degrade into PLUS/MINUS/MULT and call extract_range_from_binary_expr, which as the PR shows, can special case some symbolics which the ranger doesn't currently handle. Looking at vr_values::extract_range_builtin(), I see that every single place where we ask for a range, we bail

Fix signature updates in ipa-modref

2020-10-27 Thread Jan Hubicka
Hi, ipa-modref updates summaries for changed function signatures in transform hook. This has a problem with program partitioning because transform happens only in one partition. So I moved the logic to the ipa pass itself and added a check that we produce no more clones (if we will ever do, we

Re: PowerPC: Map q built-ins to *l instead of *f128 if IEEE 128-bit long double.

2020-10-27 Thread will schmidt via Gcc-patches
On Thu, 2020-10-22 at 18:08 -0400, Michael Meissner via Gcc-patches wrote: > PowerPC: Map q built-ins to *l instead of *f128 if IEEE 128-bit long double. > > I have split all of these patches into separate patches to hopefully get them > into the tree. > > If we map nanq to nanf128 when long

Re: PowerPC: Update long double IEEE 128-bit tests.

2020-10-27 Thread will schmidt via Gcc-patches
On Thu, 2020-10-22 at 18:07 -0400, Michael Meissner via Gcc-patches wrote: > PowerPC: Update long double IEEE 128-bit tests. > > I have split all of these patches into separate patches to hopefully get them > into the tree. > > This patch fixes 3 tests in the testsuite that fail if long double

Re: [committed] testsuite: restrict test to c++11 and later [PR97590]

2020-10-27 Thread Aldy Hernandez via Gcc-patches
On Tue, Oct 27, 2020 at 3:29 PM Jakub Jelinek wrote: > > On Tue, Oct 27, 2020 at 03:20:55PM +0100, Aldy Hernandez wrote: > > > g++.dg/opt/, g++.dg/ itself shouldn't really have any tests directly. > > > > Wait, what? I've always put them into g++.dg. And it looks like that > > Many people

[PATCH] Fix BB store group splitting group size compute

2020-10-27 Thread Richard Biener
This fixes a mistake in the previous change in this area to what was desired - figure the largest power-of-two group size fitting in the matching area. Bootstrap and regtest running on x86_64-unknown-linux-gnu. 2020-10-27 Richard Biener * tree-vect-slp.c (vect_build_slp_instance):

[committed] libstdc++: Add missing noexcept to std::from_chars declarations

2020-10-27 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * include/std/charconv (from_chars): Add noexcept to match definitions in src/c++17/floating_from_chars.cc Tested x86_64-linux. Committed to trunk. commit e579f66c3c6566e94be842bea7f2a93370489626 Author: Jonathan Wakely Date: Tue Oct 27 14:49:47 2020

[committed] libstdc++: Fix directory_iterator exception specification

2020-10-27 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * src/c++17/fs_dir.cc (fs::directory_iterator::operator*): Add noexcept. Do not throw on precondition violation. Tested x86_64-linux. Committed to trunk. commit 044b04348cfdc12848f1c6d5a8f45087c3075390 Author: Jonathan Wakely Date: Tue Oct 27 14:49:37

[committed] libstdc++: Add noexcept to declaration of path::_List members

2020-10-27 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * include/bits/fs_path.h (path::_List::begin, path::_List::end): Add noexcept to match definitions in src/c++17/fs_path.cc. Tested x86_64-linux. Committed to trunk. commit fe9d058ca28e0e3a50c44096ce112763057e686e Author: Jonathan Wakely Date: Tue Oct

Re: PowerPC: Add __float128 conversions to/from Decimal

2020-10-27 Thread will schmidt via Gcc-patches
On Thu, 2020-10-22 at 18:06 -0400, Michael Meissner via Gcc-patches wrote: > PowerPC: Add __float128 conversions to/from Decimal. > > I have split all of these patches into separate patches to hopefully get them > into the tree. > > This patch adds the various decimal to/from IEEE 128-bit

Re: [PATCH] Combine logical OR ranges properly. pr97567

2020-10-27 Thread Andrew MacLeod via Gcc-patches
On 10/27/20 10:44 AM, H.J. Lu wrote: On Tue, Oct 27, 2020 at 7:18 AM Andrew MacLeod via Gcc-patches wrote: On 10/27/20 7:23 AM, Christophe Lyon wrote: Hi, On Mon, 26 Oct 2020 at 22:51, Andrew MacLeod via Gcc-patches wrote: In the core of gori_compute::logical_combine we are suppose to

[patch] vxworks: Extract VX_CPU_PREFIX up into config/vxworks.h

2020-10-27 Thread Olivier Hainque
Hello, This change moves the VX_CPU_PREFIX definition in rs6000/vxworks.h to a place where it can be reused by other target ports. Committing after a successful build of both the ppc and x86 ports (patch to come for the latter). 2020-10-21 Olivier Hainque gcc/ *

Re: [PATCH] Combine logical OR ranges properly. pr97567

2020-10-27 Thread H.J. Lu via Gcc-patches
On Tue, Oct 27, 2020 at 7:18 AM Andrew MacLeod via Gcc-patches wrote: > > On 10/27/20 7:23 AM, Christophe Lyon wrote: > > Hi, > > > > On Mon, 26 Oct 2020 at 22:51, Andrew MacLeod via Gcc-patches > > wrote: > >> In the core of gori_compute::logical_combine we are suppose to combine > >> the

[patch] vxworks: Fix glitch on VX_CPU selection for E6500

2020-10-27 Thread Olivier Hainque
Hello, The proper VxWorks CPU macro name for -mcpu=e6500 is PPCE6500, not E6500. Committing after checking that it lets a powerpc64-wrs-vxworks7r2 build proceed to termination in a freshly setup environment. Olivier 2020-10-27 Olivier Hainque gcc/ * config/rs6000/vxworks.h

Re: [PING #2][PATCH] use get_size_range to get allocated size (PR 92942)

2020-10-27 Thread Martin Sebor via Gcc-patches
This patch was never reviewed and I forgot all about it but I wound up reimplementing the same solution in r11-3827, so I just committed the tests from this one in r11-4441. On 9/30/20 4:25 PM, Martin Sebor wrote: Ping: https://gcc.gnu.org/pipermail/gcc-patches/2020-August/552903.html (I lost

Re: libstdc++: Attempt to resolve PR83562

2020-10-27 Thread Liu Hao via Gcc-patches
在 2020/10/8 22:56, Jason Merrill 写道: > > Hmm, why isn't the mingw implementation used for all programs?  That would > avoid the bug. > There was a little further discussion about this [1]. TL;DR: The mingw-w64 function is linked statically and subject to issues about order of destruction.

Re: PowerPC: Update IEEE 128-bit built-ins for long double is IEEE 128-bit.

2020-10-27 Thread will schmidt via Gcc-patches
On Thu, 2020-10-22 at 18:09 -0400, Michael Meissner via Gcc-patches wrote: > PowerPC: Update IEEE 128-bit built-ins for long double is IEEE 128-bit. "for when .." > > I have split all of these patches into separate patches to hopefully get them > into the tree. > > This patch adds long double

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Qing Zhao via Gcc-patches
> On Oct 26, 2020, at 1:47 PM, Richard Sandiford > wrote: > > Qing Zhao writes: >> diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi >> index c9f7299..3a884e1 100644 >> --- a/gcc/doc/extend.texi >> +++ b/gcc/doc/extend.texi >> @@ -3992,6 +3992,49 @@ performing a link with relocatable

Re: PowerPC: Use __builtin_pack_ieee128 if long double is IEEE 128-bit.

2020-10-27 Thread will schmidt via Gcc-patches
On Thu, 2020-10-22 at 18:10 -0400, Michael Meissner via Gcc-patches wrote: > PowerPC: Use __builtin_pack_ieee128 if long double is IEEE 128-bit. > > I have split all of these patches into separate patches to hopefully get them > into the tree. > > This patch changes the __ibm128 emulator to use

Re: [committed] testsuite: restrict test to c++11 and later [PR97590]

2020-10-27 Thread Jakub Jelinek via Gcc-patches
On Tue, Oct 27, 2020 at 03:20:55PM +0100, Aldy Hernandez wrote: > > g++.dg/opt/, g++.dg/ itself shouldn't really have any tests directly. > > Wait, what? I've always put them into g++.dg. And it looks like that Many people violate that. > directory is chock-full of PR.C files. When did

Re: [committed] testsuite: restrict test to c++11 and later [PR97590]

2020-10-27 Thread Aldy Hernandez via Gcc-patches
On Tue, Oct 27, 2020 at 3:10 PM Jakub Jelinek wrote: > > On Tue, Oct 27, 2020 at 07:38:53AM +0100, Aldy Hernandez via Gcc-patches > wrote: > > This was already fixed by the patch for PR97520, but it can't hurt to > > keep this test around as well :). > > Small tweaks for that. Note, it would be

Re: PowerPC: Update __float128 and __ibm128 error messages.

2020-10-27 Thread will schmidt via Gcc-patches
On Thu, 2020-10-22 at 18:11 -0400, Michael Meissner via Gcc-patches wrote: > PowerPC: Update __float128 and __ibm128 error messages. > > I have split all of these patches into separate patches to hopefully get them > into the tree. > > This patch attempts to make the error messages for

Re: [PATCH] Combine logical OR ranges properly. pr97567

2020-10-27 Thread Andrew MacLeod via Gcc-patches
On 10/27/20 7:23 AM, Christophe Lyon wrote: Hi, On Mon, 26 Oct 2020 at 22:51, Andrew MacLeod via Gcc-patches wrote: In the core of gori_compute::logical_combine we are suppose to combine the calculated true and false ranges on each side of the operation. when encountering [0,0] = c_3 |

Re: [PATCH v7] genemit.c (main): split insn-emit.c for compiling parallelly

2020-10-27 Thread Richard Sandiford via Gcc-patches
Jojo R writes: > gcc/ChangeLog: > > * genemit.c (main): Print 'split line'. > * Makefile.in (insn-emit.c): Define split count and file > > --- > gcc/Makefile.in | 19 + > gcc/genemit.c | 104 +--- > 2 files changed, 83

[committed] analyzer: don't assume extern const vars are zero-initialized [PR97568]

2020-10-27 Thread David Malcolm via Gcc-patches
Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Pushed to master as r11-4437-g16ad9ae85bb5b9acf80f9d1cf2be5a989ef7ba49. gcc/analyzer/ChangeLog: PR analyzer/97568. * region-model.cc (region_model::get_initial_value_for_global): Move check that !DECL_EXTERNAL

[PING 2][PATCH] issue -Wstring-compare in more case (PR 95673)

2020-10-27 Thread Martin Sebor via Gcc-patches
Ping: https://gcc.gnu.org/pipermail/gcc-patches/2020-October/555225.html On 10/8/20 8:43 AM, Martin Sebor wrote: Ping: https://gcc.gnu.org/pipermail/gcc-patches/2020-October/555225.html On 9/30/20 6:14 PM, Martin Sebor wrote: -Wstring-compare triggers under the same strict conditions as the

[committed] testsuite: restrict test to c++11 and later [PR97590]

2020-10-27 Thread Jakub Jelinek via Gcc-patches
On Tue, Oct 27, 2020 at 07:38:53AM +0100, Aldy Hernandez via Gcc-patches wrote: > This was already fixed by the patch for PR97520, but it can't hurt to > keep this test around as well :). Small tweaks for that. Note, it would be better to put such tests into g++.dg/opt/, g++.dg/ itself shouldn't

Re: [PATCH 1/2] Enable OpenMP efficient performance profiling via ITT tracing

2020-10-27 Thread Jakub Jelinek via Gcc-patches
On Tue, Oct 27, 2020 at 12:55:36PM +, Vitaly Slobodskoy wrote: > I'd like to propose instrumentation of GCC OpenMP runtime with ITT API > (https://github.com/intel/ittapi) like it was already done for LLVM >

Re: [PATCH] c++: Check constraints before instantiation from mark_used [PR95132]

2020-10-27 Thread Jason Merrill via Gcc-patches
On 10/26/20 5:37 PM, Patrick Palka wrote: This makes mark_used check constraints of a function _before_ calling maybe_instantiate_decl, so that we don't try instantiating a function (as part of return type deduction) with unsatisfied constraints. Bootstrapped and regtested on

Re: [PATCH] [PR96608] analyzer: Change cast from long to intptr_t

2020-10-27 Thread David Malcolm via Gcc-patches
On Wed, 2020-09-30 at 09:43 +0200, Markus Böck wrote: > Casting to intptr_t states the intent of an integer to pointer cast > more clearly and ensures that the cast causes no loss of precision on > any platforms. LLP64 platforms eg. have a long value of 4 bytes and > pointer values of 8 bytes

[PATCH] Adjust BB vectorization function splitting

2020-10-27 Thread Richard Biener
This adjusts the condition when to split at control altering stmts, only when there's a definition. It also removes the only use of --param slp-max-insns-in-bb which a previous change left doing nothing (but repeatedly print a message for each successive instruction...). Bootstrapped on

[committed 1/2] analyzer: eliminate non-determinism in logs

2020-10-27 Thread David Malcolm via Gcc-patches
This patch and the followup eliminate various forms of non-determinism in the analyzer due to changing pointer values. This patch fixes churn seen when diffing analyzer logs. The patch avoids embedding pointers in various places, and adds sorting when dumping hash_set and hash_map for various

[committed 2/2] analyzer: eliminate non-deterministic behavior

2020-10-27 Thread David Malcolm via Gcc-patches
This patch is a followup to the previous one, eliminating non-determinism in the behavior of the analyzer (rather than just in the logs), by sorting whenever the result previously depended on pointer values. Tested as per the previous patch. Successfully bootstrapped & regrtested on

[committed] analyzer: fix param "analyzer-max-enodes-per-program-point"

2020-10-27 Thread David Malcolm via Gcc-patches
This was effectively checking for one beyond the limit, rather than the limit itself. Seen when fixing PR analyzer/97514. Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Pushed to master as ea0ae4e77a89d4a0492dcbbc13e9cbc19bcc2361. gcc/analyzer/ChangeLog: * engine.cc

[committed] analyzer: implement region_model::get_representative_path_var for labels

2020-10-27 Thread David Malcolm via Gcc-patches
This fixes an ICE seen e.g. with gcc.dg/analyzer/data-model-16.c when enabling -fdump-analyzer. Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Pushed to master as 9e78634c74c540cad6a2ca447af0d5df1ac4c60b. gcc/analyzer/ChangeLog: * region-model.cc

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Qing Zhao via Gcc-patches
> On Oct 27, 2020, at 3:09 AM, Uros Bizjak wrote: > > On Tue, Oct 27, 2020 at 12:08 AM Qing Zhao > wrote: >> >> Hi, Uros, >> >> Could you please check the change compared to the previous version for >> i386.c as following: >> Let me know any issue there. > >

[committed] libstdc++: Include in tests that use std::uintptr_t

2020-10-27 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * testsuite/experimental/memory_resource/new_delete_resource.cc: Add missing header. * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise. Tested x86_64-linux. Committed to trunk. commit

Re: [PATCH] Refactor array descriptor field access

2020-10-27 Thread Richard Biener
On Tue, 27 Oct 2020, Paul Richard Thomas wrote: > Hi Richard, > > This looks good to me. OK for master. Thanks, pushed. > Do you have any plans to backport to > 10-branch, say? No, it's just refactoring to remove the GENERIC building duplication. Richard. > Thanks > > Paul > > > On Tue,

Re: [PATCH] Refactor array descriptor field access

2020-10-27 Thread Paul Richard Thomas via Gcc-patches
Hi Richard, This looks good to me. OK for master. Do you have any plans to backport to 10-branch, say? Thanks Paul On Tue, 27 Oct 2020 at 09:28, Richard Biener via Fortran < fort...@gcc.gnu.org> wrote: > On Fri, Oct 16, 2020 at 10:47 AM Richard Biener wrote: > > > > This refactors the array

Re: [PATCH] nvptx: Cache stacks block for OpenMP kernel launch

2020-10-27 Thread Julian Brown
(Apologies if threading is broken, for some reason I didn't receive this reply directly!) On Mon Oct 26 14:26:34 GMT 2020, Jakub Jelinek wrote: > On Mon, Oct 26, 2020 at 07:14:48AM -0700, Julian Brown wrote: > > This patch adds caching for the stack block allocated for offloaded > > OpenMP kernel

[PATCH 2/2] Enable OpenMP efficient performance profiling via ITT tracing

2020-10-27 Thread Vitaly Slobodskoy
This patch adds the remaining part of ITT API (src folder), enables its compilation and includes modifications within autogenerated files (as result of autoreconf within libgomp folder). >From fee569f2fc016a864aca7941d5396fa4497507a0 Mon Sep 17 00:00:00 2001 From: Vitaly Slobodskoy Date: Tue,

[PATCH] SLP vectorize across PHI nodes

2020-10-27 Thread Richard Biener
This makes SLP discovery detect backedges by seeding the bst_map with the node to be analyzed so it can be picked up from recursive calls. This removes the need to discover backedges in a separate walk. This enables SLP build to handle PHI nodes in full, continuing the SLP build to non-backedges.

[PATCH] Avoid uniform lane BB vectorization

2020-10-27 Thread Richard Biener
This makes sure to use splats early when facing uniform internal operands in BB SLP discovery rather than relying on the late heuristincs re-building nodes from scratch. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-10-27 Richard Biener * tree-vect-slp.c

Re: [PATCH][middle-end][i386][Version 4] Add -fzero-call-used-regs=[skip|used-gpr-arg|used-arg|all-arg|used-gpr|all-gpr|used|all]

2020-10-27 Thread Richard Sandiford via Gcc-patches
To review my review… Richard Sandiford via Gcc-patches writes: >> +In addition to the above three basic choices, the register set can be >> further >> +limited by adding "-gpr" (i.e., general purpose register), "-arg" (i.e., >> +argument register), or both as following: > > How about: > >

Re: [PATCH] PR fortran/97491 - Wrong restriction for VALUE arguments of pure procedures

2020-10-27 Thread Paul Richard Thomas via Gcc-patches
Hi Harald, OK for master and 10-branch if you want. Thanks Paul On Mon, 26 Oct 2020 at 21:00, Harald Anlauf wrote: > As found/reported by Thomas, the redefinition of dummy arguments with the > VALUE attribute was erroneously rejected for pure procedures. A related > purity check did not

Re: [PATCH 2/2] combine: Don't turn (mult (extend x) 2^n) into extract

2020-10-27 Thread Alex Coplan via Gcc-patches
On 27/10/2020 10:35, Alex Coplan via Gcc-patches wrote: > On 26/10/2020 12:43, Segher Boessenkool wrote: > > I do not like handling both mult and ashift in one case like this, it > > complicates things for no good reason. Write it as two cases, and it > > should be good. > > OK, the attached

[PATCH 2/2] Implement the "persistent" attribute

2020-10-27 Thread Jozef Lawrynowicz
The "persistent" attribute is used for variables that are initialized by the program loader, but are not initialized by the runtime startup code. "persistent" variables are placed in a non-volatile area of memory, which allows their value to "persist" between processor resets. Successfully

[PATCH 1/2] Fix "noinit" attribute being ignored for -O0 and -fdata-sections

2020-10-27 Thread Jozef Lawrynowicz
Variables with the "noinit" attribute are ignored at -O0 because they are treated like a regular .bss variable and placed in the .bss section. With -fdata-sections they are ignored because they are not handled in resolve_unique_section. Successfully bootstrapped/regtested x86_64-pc-linux-gnu and

[PATCH 0/2] arm: "noinit" and "persistent" attributes

2020-10-27 Thread Jozef Lawrynowicz
This patch series fixes behavior related to the "noinit" attribute, and makes the MSP430 "persistent" attribute generic, so it can be used for ARM. These attributes are related because they are both used to mark variables that should not be initialized by the target's runtime startup code. The

Re: [PATCH] Combine logical OR ranges properly. pr97567

2020-10-27 Thread H.J. Lu via Gcc-patches
On Tue, Oct 27, 2020 at 4:24 AM Christophe Lyon via Gcc-patches wrote: > > Hi, > > On Mon, 26 Oct 2020 at 22:51, Andrew MacLeod via Gcc-patches > wrote: > > > > In the core of gori_compute::logical_combine we are suppose to combine > > the calculated true and false ranges on each side of the

  1   2   >