Re: [PATCH v2] match.pd: rewrite select to branchless expression

2022-11-10 Thread Prathamesh Kulkarni via Gcc-patches
On Fri, 11 Nov 2022 at 07:58, Michael Collison wrote: > > This patches transforms ((x & 0x1) == 0) ? y : z y -into > (-(typeof(y))(x & 0x1) & z) y, where op is a '^' or a '|'. It also > transforms (cond (and (x , 0x1) != 0), (z op y), y ) into (-(and (x , > 0x1)) & z ) op y. > > Matching this

[PATCH] c++: Implement CWG 2654 - Un-deprecation of compound volatile assignments

2022-11-10 Thread Jakub Jelinek via Gcc-patches
Hi! Again, because stage1 close is near, posting the following patch to implement CWG 2654. Ok for trunk if it passes bootstrap/regtest and is voted into C++23 and C++20 as a DR? 2022-11-11 Jakub Jelinek * typeck.cc (cp_build_modify_expr): Implement CWG 2654 - Un-deprecation

[PATCH] c++: Implement C++23 P2589R1 - - static operator[]

2022-11-10 Thread Jakub Jelinek via Gcc-patches
Hi! As stage1 is very close, here is a patch that implements the static operator[] paper. One thing that doesn't work properly is the same problem as I've filed yesterday for static operator() - PR107624 - that side-effects of the postfix-expression on which the call or subscript operator are

[committed] libstdc++: Fix tests with non-const operator==

2022-11-10 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- These tests fail in strict -std=c++20 mode but their equality ops don't need to be non-const, it looks like an accident. This fixes two FAILs with -std=c++20: FAIL: 20_util/tuple/swap.cc (test for excess errors) FAIL: 26_numerics/valarray/87641.cc

[committed] libstdc++: Add missing definition for in C++14 mode

2022-11-10 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- We support in C++14 as an extension, but that means that constexpr static data members are not implicitly inline. Add an out-of-class definition for C++14 mode. This fixes a FAIL when -std=gnu++14 is used: FAIL: 20_util/from_chars/1.cc (test for

[committed] libstdc++: Fix test that uses C++17 variable template in C++14

2022-11-10 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- This test fails if run with -std=gnu++14 because it should be using is_convertible instead of is_convertible_v. libstdc++-v3/ChangeLog: * testsuite/experimental/propagate_const/observers/107525.cc: Use type trait instead of C++17

[committed] libstdc++: Avoid redundant checks in std::use_facet [PR103755]

2022-11-10 Thread Jonathan Wakely via Gcc-patches
As discussed in the PR, this makes it three times faster to construct iostreams objects. Tested x86_64-linux. Pushed to trunk. -- >8 -- We do not need to do bounds checks or a runtime dynamic_cast when using std::has_facet and std::use_facet to access the default facets that are guaranteed to

Re: [PATCH v2 2/4] LoongArch: Add ftint{,rm,rp}.{w,l}.{s,d} instructions

2022-11-10 Thread Xi Ruoyao via Gcc-patches
Lulu: So I think the code is correct: + ( +|| flag_fp_int_builtin_inexact +|| !flag_trapping_math)" is 1 for lrint, 0 for lceil and lfloor. As N3054 says: The lrint and llrint functions provide floating-to-integer conversion as prescribed by IEC 60559. They round according

[PATCH v2] Add condition coverage profiling

2022-11-10 Thread Jørgen Kvalsvik via Gcc-patches
From: Jørgen Kvalsvik This patch adds support in gcc+gcov for modified condition/decision coverage (MC/DC) with the -fprofile-conditions flag. MC/DC is a type of test/code coverage and it is particularly important in the avation and automotive industries for safety-critical applications. MC/DC

[PATCH] configure: Implement --enable-host-bind-now

2022-11-10 Thread Marek Polacek via Gcc-patches
This is a rebased version of the patch I posted in February: . Fortunately it is much simpler than the patch implementing --enable-host-pie. I've converted the install.texi part into configuration.rst, otherwise there are no

[PATCH] configure: Implement --enable-host-pie

2022-11-10 Thread Marek Polacek via Gcc-patches
This is a rebased version of the patch I posted in March: which Alex sort of approved here: but it was too late to commit the patch in GCC 12. There are no changes

[PATCH] i386: Add AMX-TILE dependency for AMX related ISAs

2022-11-10 Thread Haochen Jiang via Gcc-patches
Hi all, For all AMX related ISAs, we have a potential dependency on AMX-TILE or we even won't have the basic support on AMX. This patch added those dependency. Ok for trunk? BRs, Haochen gcc/ChangeLog: * common/config/i386/i386-common.cc (OPTION_MASK_ISA2_AMX_INT8_SET): Add

[PATCH v2] match.pd: rewrite select to branchless expression

2022-11-10 Thread Michael Collison
This patches transforms ((x & 0x1) == 0) ? y : z y -into (-(typeof(y))(x & 0x1) & z) y, where op is a '^' or a '|'. It also transforms (cond (and (x , 0x1) != 0), (z op y), y ) into (-(and (x , 0x1)) & z ) op y. Matching this patterns allows GCC to generate branchless code for one of the

Re: [PATCH] range-op: Implement floating point multiplication fold_range [PR107569]

2022-11-10 Thread Jakub Jelinek via Gcc-patches
On Thu, Nov 10, 2022 at 08:20:06PM +0100, Jakub Jelinek via Gcc-patches wrote: > So, maybe for now a selftest will be better than a testcase, or > alternatively a plugin test which acts like a selftest. For a testsuite/g*.dg/plugin/ range-op-plugin.c test, would be nice to write a short plugin

RE: [PATCH V2] Enable small loop unrolling for O2

2022-11-10 Thread Wang, Hongyu via Gcc-patches
Thanks for the notification! I’m not aware of the compile farm before. Will see what’s the impact of my patch then. Regards, Hongyu, Wang From: David Edelsohn Sent: Thursday, November 10, 2022 1:22 AM To: Wang, Hongyu Cc: GCC Patches Subject: Re: [PATCH V2] Enable small loop unrolling for O2

Re: [PATCH] i386: Add ISA check for newly introduced prefetch builtins.

2022-11-10 Thread Hongtao Liu via Gcc-patches
On Wed, Nov 9, 2022 at 3:15 PM Haochen Jiang via Gcc-patches wrote: > > Hi all, > > As Hongtao said, the fail on pentiumpro is caused by missing ISA check > since we are using emit_insn () through new builtins and it won't check > if the TARGET matches. Previously, the builtin in middle-end will

[PATCH 0/2] Support HWASAN with Intel LAM

2022-11-10 Thread liuhongt via Gcc-patches
2 years ago, ARM folks support HWASAN[1] in GCC[2], and introduced several target hooks(Many thanks to their work) so other backends can do similar things if they have similar feature. Intel LAM(linear Address Masking)[3 Charpter 14] supports similar feature with the upper bits of pointers can

[PATCH 1/2] Implement hwasan target_hook.

2022-11-10 Thread liuhongt via Gcc-patches
gcc/ChangeLog: * config/i386/i386-opts.h (enum lam_type): New enum. * config/i386/i386.c (ix86_memtag_can_tag_addresses): New. (ix86_memtag_set_tag): Ditto. (ix86_memtag_extract_tag): Ditto. (ix86_memtag_add_tag): Ditto. (ix86_memtag_tag_size):

[PATCH 2/2] Enable hwasan for x86-64.

2022-11-10 Thread liuhongt via Gcc-patches
libsanitizer * configure.tgt: Enable hwasan for x86-64. --- libsanitizer/configure.tgt | 1 + 1 file changed, 1 insertion(+) diff --git a/libsanitizer/configure.tgt b/libsanitizer/configure.tgt index 87d8a2c3820..72385a4a39d 100644 --- a/libsanitizer/configure.tgt +++

Re: [PATCH v2 2/4] LoongArch: Add ftint{,rm,rp}.{w,l}.{s,d} instructions

2022-11-10 Thread Joseph Myers
On Thu, 10 Nov 2022, Xi Ruoyao via Gcc-patches wrote: > Joseph: can you confirm that -ftrapping-math allows floor and ceil to > raise inexact exception? The man page currently says: > > The default is -ffp-int-builtin-inexact, allowing the exception to be > raised, unless C2X or a later C

Re: [PATCH] c-family: Support #pragma region/endregion [PR85487]

2022-11-10 Thread Joseph Myers
On Thu, 10 Nov 2022, Jonathan Wakely via Gcc-patches wrote: > Something similar has been proposed before, but didn't get approval. > Jeff wanted a more general framework for ignoring pragmas. It might make > sense to do that, and reuse it for the Darwin-specific 'mark' pragmas. > But as I said in

demangler: Templated lambda demangling

2022-11-10 Thread Nathan Sidwell via Gcc-patches
Templated lambdas have a template-head, which is part of their signature. GCC ABI 18 mangles that into the lambda name. This adds support to the demangler. We have to introduce artificial template parameter names, as we need to refer to them from later components of the lambda signature. We

[PATCH] d: Update __FreeBSD_version values [PR107469]

2022-11-10 Thread Lorenzo Salvadore via Gcc-patches
Hello, I would like to submit the patch below. Gerald Pfeifer already volunteered to commit it once approved. Thanks, Lorenzo Salvadore --- Update __FreeBSD_version values for the latest FreeBSD supported versions. In particular, add __FreeBSD_version for FreeBSD 14, which is necessary to

[PATCH] Fortran: fix treatment of character, value, optional dummy arguments [PR107444]

2022-11-10 Thread Harald Anlauf via Gcc-patches
Dear Fortranners, the attached patch is a follow-up to the fix for PR107441, as it finally fixes the treatment of character dummy arguments that have the value,optional attribute, and allows for checking of the presence of such arguments. This entails a small ABI clarification, as the previous

[PATCH] RISC-V: Optimize masking with two clear bits not a SMALL_OPERAND

2022-11-10 Thread Philipp Tomsich
Add a split for cases where we can use two bclri (or one bclri and an andi) to clear two bits. gcc/ChangeLog: * config/riscv/bitmanip.md (*bclri_nottwobits): New pattern. (*bclridisi_nottwobits): New pattern, handling the sign-bit. * config/riscv/predicates.md

[PATCH] RISC-V: Use binvi to cover more immediates than with xori alone

2022-11-10 Thread Philipp Tomsich
Sequences of the form "a ^ C" with C being the positive half of a signed immediate's range with one extra bit set in addtion are mapped to xori and one binvi to avoid using a temporary (and a multi-insn sequence to load C into that temporary). gcc/ChangeLog: * config/riscv/bitmanip.md

[PATCH] RISC-V: Use bseti to cover more immediates than with ori alone

2022-11-10 Thread Philipp Tomsich
Sequences of the form "a | C" with C being the positive half of a signed immediate's range with one extra bit set in addtion are mapped to ori and one binvi to avoid using a temporary (and a multi-insn sequence to load C into that temporary). gcc/ChangeLog: * config/riscv/bitmanip.md

[PATCH v2] RISC-V: costs: support shift-and-add in strength-reduction

2022-11-10 Thread Philipp Tomsich
The strength-reduction implementation in expmed.cc will assess the profitability of using shift-and-add using a RTL expression that wraps a MULT (with a power-of-2) in a PLUS. Unless the RISC-V rtx_costs function recognizes this as expressing a sh[123]add instruction, we will return an inflated

Re: [PATCH] RISC-V: costs: support shift-and-add in strength-reduction

2022-11-10 Thread Philipp Tomsich
On Thu, 10 Nov 2022 at 21:47, Palmer Dabbelt wrote: > > On Thu, 10 Nov 2022 07:09:35 PST (-0800), philipp.toms...@vrull.eu wrote: > > On Thu, 10 Nov 2022 at 02:46, Palmer Dabbelt wrote: > >> > >> On Tue, 08 Nov 2022 11:54:34 PST (-0800), philipp.toms...@vrull.eu wrote: > >> > The

Re: [PATCH] RISC-V: costs: support shift-and-add in strength-reduction

2022-11-10 Thread Palmer Dabbelt
On Thu, 10 Nov 2022 07:09:35 PST (-0800), philipp.toms...@vrull.eu wrote: On Thu, 10 Nov 2022 at 02:46, Palmer Dabbelt wrote: On Tue, 08 Nov 2022 11:54:34 PST (-0800), philipp.toms...@vrull.eu wrote: > The strength-reduction implementation in expmed.c will assess the > profitability of using

Re: [PATCH 2/2] c++: remove i_c_e_p parm from tsubst_copy_and_build

2022-11-10 Thread Patrick Palka via Gcc-patches
On Thu, 10 Nov 2022, Patrick Palka wrote: > AFAICT the only purpose of tsubst_copy_and_build's > integral_constant_expression_p boolean parameter is to diagnose certain > constructs that aren't allowed to appear in a C++98 integral constant > expression context, specifically casts to a

[PATCH 2/2] c++: remove i_c_e_p parm from tsubst_copy_and_build

2022-11-10 Thread Patrick Palka via Gcc-patches
AFAICT the only purpose of tsubst_copy_and_build's integral_constant_expression_p boolean parameter is to diagnose certain constructs that aren't allowed to appear in a C++98 integral constant expression context, specifically casts to a non-integral type (diagnosed from the *_CAST_EXPR case of

[PATCH 1/2] c++: remove function_p parm from tsubst_copy_and_build

2022-11-10 Thread Patrick Palka via Gcc-patches
The function_p parameter of tsubst_copy_and_build (added in r69316) is inspected only in its IDENTIFIER_NODE case, where it controls whether we diagnose unqualified name lookup failure for the given identifier. But I think ever since r173965, we never substitute an IDENTIFIER_NODE with

Re: [PATCH][GCC] arm: Add support for Cortex-X1C CPU.

2022-11-10 Thread Ramana Radhakrishnan via Gcc-patches
On Thu, Nov 10, 2022 at 10:24 AM Srinath Parvathaneni via Gcc-patches wrote: > > Hi, > > This patch adds the -mcpu support for the Arm Cortex-X1C CPU. > > Regression tested on arm-none-eabi and bootstrapped on > arm-none-linux-gnueabihf. > > Ok for GCC master? Ok Ramana > > Regards, > Srinath.

Re: [Patch Arm] Fix PR 92999

2022-11-10 Thread Ramana Radhakrishnan via Gcc-patches
On Thu, Nov 10, 2022 at 6:03 PM Richard Earnshaw wrote: > > > > On 10/11/2022 17:21, Richard Earnshaw via Gcc-patches wrote: > > > > > > On 08/11/2022 18:20, Ramana Radhakrishnan via Gcc-patches wrote: > >> PR92999 is a case where the VFP calling convention does not allocate > >> enough FP

Re: old install to a different folder

2022-11-10 Thread Gerald Pfeifer
On Thu, 10 Nov 2022, Martin Liška wrote: > We noticed we'll need the old /install to be available for redirect. > > Gerald, can you please put it somewhere under /install-prev, or > something similar? I'm afraid I am confused now. Based on your original request I had removed the original

Re: [PATCH] range-op: Implement floating point multiplication fold_range [PR107569]

2022-11-10 Thread Jakub Jelinek via Gcc-patches
On Thu, Nov 10, 2022 at 03:50:47PM +0100, Aldy Hernandez wrote: > > @@ -1908,6 +1910,123 @@ class foperator_minus : public range_ope > > } > > } fop_minus; > > +/* Wrapper around frange_arithmetics, that computes the result > > + if inexact rounded to both directions. Also, if one of the

[PATCHv2] Use toplevel configure for GMP and MPFR for gdb

2022-11-10 Thread apinski--- via Gcc-patches
From: Andrew Pinski This patch uses the toplevel configure parts for GMP/MPFR for gdb. The only thing is that gdb now requires MPFR for building. Before it was a recommended but not required library. Also this allows building of GMP and MPFR with the toplevel directory just like how it is done

[committed] analyzer: new warning: -Wanalyzer-deref-before-check [PR99671]

2022-11-10 Thread David Malcolm via Gcc-patches
This patch implements a new -Wanalyzer-deref-before-check within -fanalyzer. It complains about code paths in which a pointer is checked for NULL after it has already been dereferenced. For example, for the testcase in PR 77432 the diagnostic emits: deref-before-check-1.c: In function

Re: [PATCH] c++: Extend -Wdangling-reference for std::minmax

2022-11-10 Thread Marek Polacek via Gcc-patches
On Thu, Nov 10, 2022 at 08:07:25AM -1000, Jason Merrill wrote: > On 11/9/22 15:56, Marek Polacek wrote: > > This patch extends -Wdangling-reference to also warn for > > > >auto v = std::minmax(1, 2); > > > > which dangles because this overload of std::minmax returns > > a std::pair where the

Re: [PATCH] c++: Extend -Wdangling-reference for std::minmax

2022-11-10 Thread Jason Merrill via Gcc-patches
On 11/9/22 15:56, Marek Polacek wrote: This patch extends -Wdangling-reference to also warn for auto v = std::minmax(1, 2); which dangles because this overload of std::minmax returns a std::pair where the two references are bound to the temporaries created for the arguments of std::minmax.

Re: [Patch Arm] Fix PR 92999

2022-11-10 Thread Richard Earnshaw via Gcc-patches
On 10/11/2022 17:21, Richard Earnshaw via Gcc-patches wrote: On 08/11/2022 18:20, Ramana Radhakrishnan via Gcc-patches wrote: PR92999 is a case where the VFP calling convention does not allocate enough FP registers for a homogenous aggregate containing FP16 values. I believe this is the

Re: [Patch Arm] Fix PR 92999

2022-11-10 Thread Richard Earnshaw via Gcc-patches
On 08/11/2022 18:20, Ramana Radhakrishnan via Gcc-patches wrote: PR92999 is a case where the VFP calling convention does not allocate enough FP registers for a homogenous aggregate containing FP16 values. I believe this is the complete fix but would appreciate another set of eyes on this.

[PATCH (pushed)] docs: move label directly before title

2022-11-10 Thread Martin Liška
Otherwise Sphinx can compare if Intersphinx is unavailable: gcc/fortran/doc/gfortran/intrinsic-procedures/atand.rst:50: WARNING: Failed to create a cross reference. A title or caption not found: 'atan' gcc/fortran/doc/gfortran/intrinsic-procedures/atan2.rst:55: WARNING: Failed to create a

Re: [PATCH v3] c++: parser - Support for target address spaces in C++

2022-11-10 Thread Georg-Johann Lay
Am 10.11.22 um 15:08 schrieb Paul Iannetta: On Thu, Nov 03, 2022 at 02:38:39PM +0100, Georg-Johann Lay wrote: [PATCH v3] c++: parser - Support for target address spaces in C++ 2. Will it work with compound literals? === Currently, the following C code

Re: [PATCH] Use toplevel configure for GMP and MPFR for gdb

2022-11-10 Thread Tom Tromey
> "Andrew" == apinski--- via Gcc-patches writes: Andrew> From: Andrew Pinski Andrew> This patch uses the toplevel configure parts for GMP/MPFR for Andrew> gdb. The only thing is that gdb now requires MPFR for building. Andrew> Before it was a recommended but not required library. Andrew>

Re: [PATCH] Remove SLOW_SHORT_ACCESS from target headers

2022-11-10 Thread Andrew Pinski via Gcc-patches
On Thu, Nov 10, 2022 at 12:47 AM Richard Biener wrote: > > On Thu, Nov 10, 2022 at 2:21 AM Andrew Pinski via Gcc-patches > wrote: > > > > On Wed, Nov 9, 2022 at 5:16 PM apinski--- via Gcc-patches > > wrote: > > > > > > From: Andrew Pinski > > > > > > SLOW_SHORT_ACCESS is defined in bfin and

RE: [PATCH 1/2] aarch64: Enable the use of LDAPR for load-acquire semantics

2022-11-10 Thread Kyrylo Tkachov via Gcc-patches
Hi Andre, > -Original Message- > From: Andre Vieira (lists) > Sent: Thursday, November 10, 2022 11:17 AM > To: gcc-patches@gcc.gnu.org > Cc: Kyrylo Tkachov ; Richard Earnshaw > ; Richard Sandiford > > Subject: [PATCH 1/2] aarch64: Enable the use of LDAPR for load-acquire > semantics >

Re: [PATCH v4] c++: parser - Support for target address spaces in C++

2022-11-10 Thread Paul Iannetta via Gcc-patches
Hi, It took a bit of time to rework the rough corners. I tried to be mirror as much as possible the C front-end, especially when it comes to implicit conversions, and warnings; and expose the same hooks as the C front-end does. The C++ front-end produces as much warnings that the C front-end,

Re: [PATCH] Do not specify NAN sign in frange::set_nonnegative.

2022-11-10 Thread Jakub Jelinek via Gcc-patches
On Thu, Nov 10, 2022 at 04:03:46PM +0100, Aldy Hernandez wrote: > [Jakub, how's this? Do you agree?] > > After further reading of the IEEE 754 standard, it has become clear > that there are no guarantees with regards to the sign of a NAN when it > comes to any operation other than copy,

old install to a different folder

2022-11-10 Thread Martin Liška
Hi. We noticed we'll need the old /install to be available for redirect. Gerald, can you please put it somewhere under /install-prev, or something similar? Thanks, Martin

Re: [PATCH] doc: formatting fixes

2022-11-10 Thread Martin Liška
On 11/10/22 14:53, Andreas Schwab via Gcc-patches wrote: gcc/ * doc/gcc/gcc-command-options/option-summary.rst: Fix formatting. --- gcc/doc/gcc/gcc-command-options/option-summary.rst | 8 ++-- 1 file changed, 2 insertions(+), 6 deletions(-) diff --git

[PATCH] Make last DCE remove empty loops

2022-11-10 Thread Richard Biener via Gcc-patches
The following makes the last DCE pass CD-DCE and in turn the last CD-DCE pass a DCE one. That ensues we remove empty loops that become empty between the two. I've also moved the tail-call pass after DCE since DCE can only improve things here. The two testcases were the only ones scanning cddce3

Re: [PATCH] RISC-V: costs: support shift-and-add in strength-reduction

2022-11-10 Thread Philipp Tomsich
On Thu, 10 Nov 2022 at 02:46, Palmer Dabbelt wrote: > > On Tue, 08 Nov 2022 11:54:34 PST (-0800), philipp.toms...@vrull.eu wrote: > > The strength-reduction implementation in expmed.c will assess the > > profitability of using shift-and-add using a RTL expression that wraps > > a MULT (with a

[PATCH] Do not specify NAN sign in frange::set_nonnegative.

2022-11-10 Thread Aldy Hernandez via Gcc-patches
[Jakub, how's this? Do you agree?] After further reading of the IEEE 754 standard, it has become clear that there are no guarantees with regards to the sign of a NAN when it comes to any operation other than copy, copysign, abs, and negate. Currently, set_nonnegative() is only used in one place

Re: [PATCH] range-op: Implement floating point multiplication fold_range [PR107569]

2022-11-10 Thread Aldy Hernandez via Gcc-patches
On 11/10/22 14:44, Jakub Jelinek wrote: Hi! The following patch implements frange multiplication, including the special case of x * x. The callers don't tell us that it is x * x, just that it is either z = x * x or if (x == y) z = x * y; For irange that makes no difference, but for frange

[PATCH RESEND] riscv: improve the cost model for loading a 64bit constant in rv32.

2022-11-10 Thread Lin Sinan via Gcc-patches
The motivation of this patch is to correct the wrong estimation of the number of instructions needed for loading a 64bit constant in rv32 in the current cost model(riscv_interger_cost). According to the current implementation, if a constant requires more than 3 instructions(riscv_const_insn and

Re: [PATCH] Optimize VEC_PERM_EXPR with same permutation index and operation [PR98167]

2022-11-10 Thread Hongyu Wang via Gcc-patches
> Well, with AVX512 v64qi that's 64*64 == 4096 cases to check. I think > a lambda function is fine to use. The alternative (used by the vectorizer > in some places) is to use sth like > > auto_sbitmap seen (nelts); > for (i = 0; i < nelts; i++) >{ > if (!bitmap_set_bit (seen, i)) >

[PATCH] better PHI copy propagation for forwprop

2022-11-10 Thread Richard Biener via Gcc-patches
We can handle _1 = PHI <_1, _2> as a copy. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. PR tree-optimization/84646 * tree-ssa-forwprop.cc (pass_forwprop::execute): Improve copy propagation across PHIs. --- gcc/tree-ssa-forwprop.cc | 7 ++- 1 file

Re: Ping [PATCH] Add condition coverage profiling

2022-11-10 Thread Martin Liška
On 11/2/22 07:16, Jørgen Kvalsvik via Gcc-patches wrote: Ping. I would like to see this become a part of gcc 13, will we be able to commit before the window closes? Hello. I'm sorry but I was interrupted by the Sphinx conversion task. Anyway, please update the coding style and I can return

Re: [PATCH] maintainer-scripts/gcc_release: compress xz in parallel

2022-11-10 Thread Martin Liška
On 11/9/22 03:06, Xi Ruoyao via Gcc-patches wrote: On Wed, 2022-11-09 at 01:52 +, Joseph Myers wrote: On Tue, 8 Nov 2022, Xi Ruoyao via Gcc-patches wrote: I'm wondering if running xz -T0 on different machines (with different core numbers) may produce different compressed data.  The

Re: [PATCH 1/3] STABS: remove -gstabs and -gxcoff functionality

2022-11-10 Thread Martin Liška
On 11/10/22 15:12, Michael Matz wrote: Hello, On Thu, 10 Nov 2022, Martin Liška wrote: These changes are part of commit r13-2361-g7e0db0cdf01e9c885a29cb37415f5bc00d90c029 "STABS: remove -gstabs and -gxcoff functionality". What this does is remove these identifiers from "poisoning": /*

Re: [PATCH 1/3] STABS: remove -gstabs and -gxcoff functionality

2022-11-10 Thread Michael Matz via Gcc-patches
Hello, On Thu, 10 Nov 2022, Martin Liška wrote: > > These changes are part of > > commit r13-2361-g7e0db0cdf01e9c885a29cb37415f5bc00d90c029 > > "STABS: remove -gstabs and -gxcoff functionality". What this does is > > remove these identifiers from "poisoning": > > > > /* As the last action

Re: [PATCH v3] c++: parser - Support for target address spaces in C++

2022-11-10 Thread Paul Iannetta via Gcc-patches
On Thu, Nov 03, 2022 at 02:38:39PM +0100, Georg-Johann Lay wrote: > > [PATCH v3] c++: parser - Support for target address spaces in C++ > > First of all, it is great news that GCC is going to implement named address > spaces for C++. > > I have some questions: > > 1. How is name-mangling going

Re: [PATCH] sphinx: support Sphinx in lib*/Makefile.am.

2022-11-10 Thread Michael Matz via Gcc-patches
Hello, On Thu, 10 Nov 2022, Martin Liška wrote: > This is a patch which adds support for Sphinx in lib*/Makefile.am where > I wrongly modified Makefile.in that are generated. > > One thing that's missing is that the generated Makefile.in does not > contain 'install-info-am' target and thus the

Re: [PATCH 1/3] STABS: remove -gstabs and -gxcoff functionality

2022-11-10 Thread Martin Liška
On 11/4/22 10:32, Thomas Schwinge wrote: Hi! On 2022-09-01T12:05:23+0200, Martin Liška wrote: gcc/ChangeLog: --- a/gcc/system.h +++ b/gcc/system.h @@ -1009,8 +1009,7 @@ extern void fancy_abort (const char *, int, const char *) ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL

Re: [committed] Add another commit to ignore

2022-11-10 Thread Martin Liška
On 11/7/22 09:25, Jakub Jelinek wrote: Hi! We can't handle r13-3652-ge4cba49413ca429dc82f6aa2e88129ecb3fdd943 because that commit removed whole liboffloadmic including its ChangeLog (I'm surprised that touching ChangeLog worked out together with removing the files), but

Re: [PATCH] RISC-V: Fix selection of pipeline model for sifive-7-series

2022-11-10 Thread Philipp Tomsich
Applied to master, thank you! On Thu, 10 Nov 2022 at 02:03, Kito Cheng wrote: > > LGTM, thank you for catching that!! > > On Wed, Nov 9, 2022 at 3:50 PM Philipp Tomsich > wrote: > > > > A few of the gcc.target/riscv/mcpu-*.c tests have been failing for a > > while now, due to the pipeline

[PATCH] doc: formatting fixes

2022-11-10 Thread Andreas Schwab via Gcc-patches
gcc/ * doc/gcc/gcc-command-options/option-summary.rst: Fix formatting. --- gcc/doc/gcc/gcc-command-options/option-summary.rst | 8 ++-- 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/gcc/doc/gcc/gcc-command-options/option-summary.rst

Re: Announcement: Porting the Docs to Sphinx - 9. November 2022

2022-11-10 Thread Richard Biener via Gcc-patches
On Thu, Nov 10, 2022 at 2:05 PM Martin Liška wrote: > > On 11/9/22 18:14, Joseph Myers wrote: > > On Wed, 9 Nov 2022, Martin Liška wrote: > > > >> 1) not synchronized content among lib*/Makefile.in and lib*/Makefile.am. > >> Apparently, I modified the generated Makefile.in file with the rules

[PATCH] range-op: Implement floating point multiplication fold_range [PR107569]

2022-11-10 Thread Jakub Jelinek via Gcc-patches
Hi! The following patch implements frange multiplication, including the special case of x * x. The callers don't tell us that it is x * x, just that it is either z = x * x or if (x == y) z = x * y; For irange that makes no difference, but for frange it can mean x is -0.0 and y is 0.0 if they

Re: [PATCH] RISC-V: Implement movmisalign to enable SLP

2022-11-10 Thread Philipp Tomsich
On Thu, 10 Nov 2022 at 02:24, Kito Cheng wrote: > > I am not sure if I am missing something, your testcase should rely on > movmisalignhi pattern, but you defined movmisalign with ANYF > mode iterator rather than movmisalign with HI, SI, DI? It was already defined with the ANYI iterator in the

[PATCH] Restore CCP copy propagation

2022-11-10 Thread Richard Biener via Gcc-patches
The following restores copy propagation in CCP for the case the lattice was constant before trying to transition to a copy. At some point we changed to use the meet operator to handle integer constant -> integer constant transitions but that screws up the const -> copy lattice transition.

Re: Announcement: Porting the Docs to Sphinx - 9. November 2022

2022-11-10 Thread Martin Liška
On 11/9/22 18:14, Joseph Myers wrote: On Wed, 9 Nov 2022, Martin Liška wrote: 1) not synchronized content among lib*/Makefile.in and lib*/Makefile.am. Apparently, I modified the generated Makefile.in file with the rules like: doc/info/texinfo/libitm.info: $(SPHINX_FILES) + if [

[PATCH (pushed)] sphinx: add missing newline for conf.py files.

2022-11-10 Thread Martin Liška
gcc/d/ChangeLog: * doc/conf.py: Add newline at last line. gcc/ChangeLog: * doc/cpp/conf.py: Add newline at last line. * doc/cppinternals/conf.py: Add newline at last line. * doc/gcc/conf.py: Add newline at last line. * doc/gccint/conf.py: Add newline at

[PATCH (pushed)] sphinx: add missing newline for conf.py files.

2022-11-10 Thread Martin Liška
gcc/d/ChangeLog: * doc/conf.py: Add newline at last line. gcc/ChangeLog: * doc/cpp/conf.py: Add newline at last line. * doc/cppinternals/conf.py: Add newline at last line. * doc/gcc/conf.py: Add newline at last line. * doc/gccint/conf.py: Add newline at

Re: [RFC] docs: remove documentation for unsupported releases

2022-11-10 Thread Alexander Monakov via Gcc-patches
On Thu, 10 Nov 2022, Martin Liška wrote: > On 11/10/22 08:29, Gerald Pfeifer wrote: > > On Wed, 9 Nov 2022, Alexander Monakov wrote: > >> For this I would suggest using the tag to neatly fold links > >> for old releases. Please see the attached patch. > > > > Loving it, Alexander! > > > >

[PATCH] sphinx: support Sphinx in lib*/Makefile.am.

2022-11-10 Thread Martin Liška
Hi. This is a patch which adds support for Sphinx in lib*/Makefile.am where I wrongly modified Makefile.in that are generated. One thing that's missing is that the generated Makefile.in does not contain 'install-info-am' target and thus the created info files are not installed with 'make

Re: [wwwdocs] Add httpd redirects for texinfo trunk docs and for each release series

2022-11-10 Thread Jonathan Wakely via Gcc-patches
On 09/11/22 15:41 +, Jonathan Wakely wrote: I've tested that the redirects work on my own httpd server, and have verified that no new sphinx-generated docs match these patterns, and no old texinfo docs fail to match them (except for cases like index.html where a new file exists with the same

[PATCH 2/2] aarch64: Add support for widening LDAPR instructions

2022-11-10 Thread Andre Vieira (lists) via Gcc-patches
Hi, This patch adds support for the widening LDAPR instructions. Bootstrapped and regression tested on aarch64-none-linux-gnu. OK for trunk? 2022-11-09  Andre Vieira      Kyrylo Tkachov  gcc/ChangeLog:     * config/aarch64/atomics.md (*aarch64_atomic_load_rcpc_zext): New

[PATCH 1/2] aarch64: Enable the use of LDAPR for load-acquire semantics

2022-11-10 Thread Andre Vieira (lists) via Gcc-patches
Hello, This patch enables the use of LDAPR for load-acquire semantics. After some internal investigation based on the work published by Podkopaev et al. (https://dl.acm.org/doi/10.1145/3290382) we can confirm that using LDAPR for the C++ load-acquire semantics is a correct relaxation.

Re: Rust frontend patches v3

2022-11-10 Thread Richard Biener via Gcc-patches
On Wed, Oct 26, 2022 at 10:16 AM wrote: > > This is the fixed version of our previous patch set for gccrs - We've adressed > the comments raised in our previous emails. > > This patch set does not contain any work that was not previously included, > such > as closure support, the constant

[PATCH][GCC] arm: Add support for new frame unwinding instruction "0xb5".

2022-11-10 Thread Srinath Parvathaneni via Gcc-patches
Hi, This patch adds support for Arm frame unwinding instruction "0xb5" [1]. When an exception is taken and "0xb5" instruction is encounter during runtime stack-unwinding, we use effective vsp as modifier in pointer authentication. On completion of stack unwinding if "0xb5" instruction is not

Re: [DOCS] sphinx: use new Sphinx links

2022-11-10 Thread Tobias Burnus
Hi, On 10.11.22 11:03, Gerald Pfeifer wrote: On Thu, 10 Nov 2022, Martin Liška wrote: https://gcc.gnu.org/install/ is back with a new face. But it's not working properly due to some Content Security Policy: Hmm, it worked in my testing before and I just tried again: Firefox 106.0.1 (64-bit)

Re: [DOCS] sphinx: use new Sphinx links

2022-11-10 Thread Martin Liška
On 11/10/22 11:03, Gerald Pfeifer wrote: On Thu, 10 Nov 2022, Martin Liška wrote: https://gcc.gnu.org/install/ is back with a new face. But it's not working properly due to some Content Security Policy: Hmm, it worked in my testing before and I just tried again: Firefox 106.0.1 (64-bit) and

[PATCH][GCC] arm: Add support for Cortex-X1C CPU.

2022-11-10 Thread Srinath Parvathaneni via Gcc-patches
Hi, This patch adds the -mcpu support for the Arm Cortex-X1C CPU. Regression tested on arm-none-eabi and bootstrapped on arm-none-linux-gnueabihf. Ok for GCC master? Regards, Srinath. gcc/ChangeLog: 2022-11-09 Srinath Parvathaneni * config/arm/arm-cpus.in

[PATCH 2/2] Fortran: Add attribute flatten

2022-11-10 Thread Bernhard Reutner-Fischer via Gcc-patches
Bootstrapped and regtested cleanly on x86_unknown-linux. The document bits will be rewritten for rst. Ok for trunk if the prerequisite target_clones patch is approved? gcc/fortran/ChangeLog: * decl.cc (gfc_match_gcc_attributes): Handle flatten. * f95-lang.cc

[PATCH 1/2] Fortran: Cleanup struct ext_attr_t

2022-11-10 Thread Bernhard Reutner-Fischer via Gcc-patches
Tiny cleanup opportunity since we now have ext_attr_args in struct symbol_attribute. Bootstrapped and regtested on x86_64-unknown-linux with no new regressions. Ok for trunk if the prerequisite was approved ([PATCH 2/2] Fortran: add attribute target_clones) ? gcc/fortran/ChangeLog: *

[PATCH 0/2] Fortran: Add attribute flatten

2022-11-10 Thread Bernhard Reutner-Fischer via Gcc-patches
Hi! I could imagine that the flatten attribute might be useful. Do we want to add support for it for gcc-13? Bernhard Reutner-Fischer (2): Fortran: Cleanup struct ext_attr_t Fortran: Add attribute flatten gcc/fortran/decl.cc | 41 +---

Re: [DOCS] sphinx: use new Sphinx links

2022-11-10 Thread Gerald Pfeifer
On Thu, 10 Nov 2022, Martin Liška wrote: >> https://gcc.gnu.org/install/ is back with a new face. > But it's not working properly due to some Content Security Policy: Hmm, it worked in my testing before and I just tried again: Firefox 106.0.1 (64-bit) and now also Chrome 106.0.5249.119 and

[committed] wwwdocs: readings: Remove linux-c6x.org

2022-11-10 Thread Gerald Pfeifer
I pushed this now. Is this an indication we should deprecate the port, Bernd, or would you like to re-add a link at a later point? Gerald linux-c6x.org has been dead for at two-and-a-half months and a web search did not reveal a good alternate site. --- htdocs/readings.html | 1 - 1 file

Re: [PATCH] i386: Fix up ix86_expand_int_sse_cmp [PR107585]

2022-11-10 Thread Uros Bizjak via Gcc-patches
On Thu, Nov 10, 2022 at 10:29 AM Jakub Jelinek wrote: > > Hi! > > The following patch fixes ICE on the testcase. I've used GEN_INT > incorrectly thinking the code punts on the problematic boundaries. > It does, but only for LE and GE, i.e. signed comparisons, for unsigned > the boundaries are 0

Re: [DOCS] sphinx: use new Sphinx links

2022-11-10 Thread Martin Liška
On 11/10/22 10:35, Gerald Pfeifer wrote: On Thu, 10 Nov 2022, Martin Liška wrote: What do you think of keeping the latest under this shorter and simpler URL (too), though? Works for me. : I believe a symlink (in the file system) on gcc.gnu.org could pull that off. Yep, please do so. Done.

Re: [DOCS] sphinx: use new Sphinx links

2022-11-10 Thread Gerald Pfeifer
On Thu, 10 Nov 2022, Martin Liška wrote: >> What do you think of keeping the latest under this shorter and simpler >> URL (too), though? > Works for me. : >> I believe a symlink (in the file system) on gcc.gnu.org could pull that >> off. > Yep, please do so. Done. https://gcc.gnu.org/install/ is

[PATCH] i386: Fix up ix86_expand_int_sse_cmp [PR107585]

2022-11-10 Thread Jakub Jelinek via Gcc-patches
Hi! The following patch fixes ICE on the testcase. I've used GEN_INT incorrectly thinking the code punts on the problematic boundaries. It does, but only for LE and GE, i.e. signed comparisons, for unsigned the boundaries are 0 and unsigned maximum, so when say unsigned char adds one to 127 or

Re: [PATCH] match.pd: rewrite select to branchless expression

2022-11-10 Thread Richard Biener via Gcc-patches
On Wed, Nov 9, 2022 at 10:06 PM Michael Collison wrote: > > Richard, > > Thanks for your feedback. I want to make sure I am following what you > are recommending. Are you suggesting changing: > > (for op (bit_xor bit_ior) > (simplify > (cond (eq (bit_and @0 integer_onep@1) > integer_zerop) > @2 >

Re: [PATCH] Optimize VEC_PERM_EXPR with same permutation index and operation [PR98167]

2022-11-10 Thread Richard Biener via Gcc-patches
On Thu, Nov 10, 2022 at 3:27 AM Hongyu Wang wrote: > > Hi Prathamesh and Richard, > > Thanks for the review and nice suggestions! > > > > I guess the transform should work as long as mask is same for both > > > vectors even if it's > > > not constant ? > > > > Yes, please change accordingly (and

Re: [DOCS] sphinx: use new Sphinx links

2022-11-10 Thread Martin Liška
On 11/10/22 09:28, Gerald Pfeifer wrote: Hi Martin, On Wed, 9 Nov 2022, Martin Liška wrote: Gerald I would like to ask you for further server actions related to the Sphinx documentation: sure, happy to help! 1) https://gcc.gnu.org/install/ - for the future we will use

Re: [PATCH v2 2/4] LoongArch: Add ftint{,rm,rp}.{w,l}.{s,d} instructions

2022-11-10 Thread Xi Ruoyao via Gcc-patches
On Thu, 2022-11-10 at 14:41 +0800, Lulu Cheng wrote: > > 在 2022/11/9 下午9:53, Xi Ruoyao 写道: > > +;; Convert floating-point numbers to integers > > +(define_insn "2" > > +  [(set (match_operand:ANYFI 0 "register_operand" "=f") > > +   (unspec:ANYFI [(match_operand:ANYF 1 "register_operand" > >

Re: [RFC] docs: remove documentation for unsupported releases

2022-11-10 Thread Martin Liška
On 11/10/22 08:29, Gerald Pfeifer wrote: On Wed, 9 Nov 2022, Alexander Monakov wrote: For this I would suggest using the tag to neatly fold links for old releases. Please see the attached patch. Loving it, Alexander! What do you guys think about unfolding all releases we, the GCC project,

  1   2   >