Re: [PATCH v3 1/2] c++: Initial support for P0847R7 (Deducing This) [PR102609]

2023-11-17 Thread waffl3x
The patch is coming along, I just have a quick question regarding style. I make use of IILE's (immediately invoked lambda expression) a whole lot in my own code. I know that their use is controversial in general so I would prefer to ask instead of just submitting the patch using them a bunch

[PATCH] LoongArch: Optimize the loading of immediate numbers with the same high and low 32-bit values

2023-11-17 Thread Guo Jie
For the following immediate load operation in gcc/testsuite/gcc.target/loongarch/imm-load1.c: long long r = 0x0101010101010101; Before this patch: lu12i.w $r15,16842752>>12 ori $r15,$r15,257 lu32i.d $r15,0x10101>>32 lu52i.d

Ping: [PATCH V2] introduce light expander sra

2023-11-17 Thread Jiufu Guo
Hi, I would like to have a ping for this patch. There are some aspects(TODOs) that can be improved for this patch. I had some statistics to see if these aspects occur often, by checking the gcc source code(including test suite) and spec2017. - Reverse storage order. This only occurs in very

[PATCH v1 1/3] LoongArch: Add LA664 support.

2023-11-17 Thread Lulu Cheng
Define ISA_BASE_LA64V110, which represents the base instruction set defined in LoongArch1.1. Support the configure setting --with-arch =la664, and support -march=la664,-mtune=la664. gcc/ChangeLog: * config.gcc: Support LA664. * config/loongarch/genopts/loongarch-strings:

[PATCH v1 2/3] LoongArch: Implement atomic operations using LoongArch1.1 instructions.

2023-11-17 Thread Lulu Cheng
1. short and char type calls for atomic_add_fetch and __atomic_fetch_add are implemented using amadd{_db}.{b/h}. 2. Use amcas{_db}.{b/h/w/d} to implement __atomic_compare_exchange_n and __atomic_compare_exchange. 3. The short and char types of the functions __atomic_exchange and

[PATCH v1 3/3] LoongArch: atomic_load and atomic_store are implemented using dbar grading.

2023-11-17 Thread Lulu Cheng
Because the la464 memory model design allows the same address load out of order, so in the following test example, the Load of 23 lines may be executed first over the load of 21 lines, resulting in an error. So when memmodel is MEMMODEL_RELAXED, the load instruction will be followed by "dbar

[PATCH v1 0/3] Add LoongarchV1.1 instructions support.

2023-11-17 Thread Lulu Cheng
Lulu Cheng (3): LoongArch: Add LA664 support. LoongArch: Implement atomic operations using LoongArch1.1 instructions. LoongArch: atomic_load and atomic_store are implemented using dbar grading. gcc/config.gcc| 10 +-

Re: [pushed][PATCH v2] LoongArch: Implement C[LT]Z_DEFINED_VALUE_AT_ZERO

2023-11-17 Thread chenglulu
Pushed to r14-5547. 在 2023/11/17 上午10:38, Li Wei 写道: The LoongArch has defined ctz and clz on the backend, but if we want GCC do CTZ transformation optimization in forwprop2 pass, GCC need to know the value of c[lt]z at zero, which may be beneficial for some test cases (like spec2017

[PATCH 9/9] RISC-V: Disable fractional type intrinsics for the XTheadVector extension

2023-11-17 Thread Jun Sha (Joshua)
Because the XTheadVector extension does not support fractional operations, so we need to delete the related intrinsics. The types involved are as follows: v(u)int8mf8_t, v(u)int8mf4_t, v(u)int8mf2_t, v(u)int16mf4_t, v(u)int16mf2_t, v(u)int32mf2_t, vfloat16mf4_t, vfloat16mf2_t, vfloat32mf2_t

Re: PING^1 [PATCH v3] sched: Change no_real_insns_p to no_real_nondebug_insns_p [PR108273]

2023-11-17 Thread Kewen.Lin
on 2023/11/15 17:43, Alexander Monakov wrote: > > On Wed, 15 Nov 2023, Kewen.Lin wrote: > And I suppose it would be OK to do that. Empty BBs are usually removed by CFG cleanup so the situation should only happen in rare corner cases where the fix would be to actually run CFG

Re: [PATCH] libstdc++: Remove UB from operator+ of months and weekdays.

2023-11-17 Thread Jonathan Wakely
On Fri, 17 Nov 2023 at 01:34, Cassio Neri wrote: > > The following functions invoke signed integer overflow (UB) for some extreme > values of days and months [1]: > > weekday operator+(const weekday& x, const days& y); // #1 > month operator+(const month& x, const months& y); // #2 > > For

Re: [committed] libstdc++: Implement std::out_ptr and std::inout_ptr for C++23 [PR111667]

2023-11-17 Thread Jonathan Wakely
On Fri, 17 Nov 2023 at 04:44, Hans-Peter Nilsson wrote: > > > From: Jonathan Wakely > > Date: Thu, 16 Nov 2023 08:12:39 + > > > PR libstdc++/111667 > > * include/Makefile.am: Add new header. > > * include/Makefile.in: Regenerate. > > * include/bits/out_ptr.h: New

Re: [PATCH] RISC-V: Optimize VLA SLP with duplicate VLA shuffle indice

2023-11-17 Thread Robin Dapp
Hi Juzhe, > csrra4,vlenb > csrra5,vlenb Totally unrelated to this patch but this looks odd. I don't remember if we had a patch for this already at some point. In general the idea for the patch is to use the largest vector element mode for the indices and compress several of

Re: [PATCH 2/2] Add i?86-*-* and x86_64-*-* to vect_logical_reduc

2023-11-17 Thread Richard Biener
On Fri, Nov 17, 2023 at 1:12 AM liuhongt wrote: > > x86 backend support reduc_{and,ior,xor>_scal_m for vector integer > modes. > > Ok for trunk? OK > gcc/testsuite/ChangeLog: > > * lib/target-supports.exp (vect_logical_reduc): Add i?86-*-* > and x86_64-*-*. > --- >

[PATCH 3/9] RISC-V: Tests for overlapping RVV and XTheadVector instructions (Part1)

2023-11-17 Thread Jun Sha (Joshua)
For big changes in instruction generation, we can only duplicate some typical tests in testsuite/gcc.target/riscv/rvv/base. This patch is adding some tests for binary operations. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/xtheadvector/binop_vv_constraint-1.c: New test. *

[PATCH 8/9] RISC-V: Add support for xtheadvector-specific load/store intrinsics

2023-11-17 Thread Jun Sha (Joshua)
This patch only involves the generation of xtheadvector special load/store instructions. gcc/ChangeLog: * config/riscv/riscv-vector-builtins-bases.cc (class th_loadstore_width): Define new builtin bases. (BASE): Define new builtin bases. *

[PATCH 7/9] RISC-V: Tests for overlapping RVV and XTheadVector instructions (Part5)

2023-11-17 Thread Jun Sha (Joshua)
For big changes in instruction generation, we can only duplicate some typical tests in testsuite/gcc.target/riscv/rvv/base. This patch is adding some tests for auto-vectorization. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/xtheadvector/autovec/vadd-run-nofm.c: New test. *

Re: [committed] hppa: Revise REG+D address support to allow long displacements before reload

2023-11-17 Thread John David Anglin
On 2023-11-16 10:00 p.m., Jeff Law wrote: I'm not seeing any obvious problems in the gcc testsuite.  It needs testing on  packages that do extensive floating point calculations. OK, I'll focus on those. THe more likely scenario is xmpy which is used for integer multiply, but the operands have

Re: [PATCH] LoongArch: Handle vectorized copysign (x, -1) expansion efficiently

2023-11-17 Thread chenglulu
LGTM. Thanks. 在 2023/11/14 上午4:07, Xi Ruoyao 写道: With LSX or LASX, copysign (x[i], -1) (or any negative constant) can be vectorized using [x]vbitseti.{w/d} instructions to directly set the signbits. Inspired by Tamar Christina's "AArch64: Handle copysign (x, -1) expansion efficiently"

Re: [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext

2023-11-17 Thread Arsen Arsenović
David Edelsohn writes: > On Thu, Nov 16, 2023 at 5:52 PM Arsen Arsenović wrote: > > [snip] >> Sure, but my patch does insert --disable-shared: >> >> --8<---cut here---start->8--- >> host_modules= { module= gettext; bootstrap=true; no_install=true; >>

Re: [PATCH] vect: Use statement vectype for conditional mask.

2023-11-17 Thread Robin Dapp
> But note you can explicitly specify a vector type as well, there's an > overload for it, so we can fix the "invariant" case with the following > (OK if you can test this on relevant targets) > > diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc > index 3f59139cb01..936a3de9534 100644 >

Re: [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext

2023-11-17 Thread Richard Biener
On Fri, Nov 17, 2023 at 9:46 AM Arsen Arsenović wrote: > > > David Edelsohn writes: > > > On Thu, Nov 16, 2023 at 5:52 PM Arsen Arsenović wrote: > > > > [snip] > >> Sure, but my patch does insert --disable-shared: > >> > >> --8<---cut here---start->8--- > >>

Re: [PATCH] RISC-V: Fix bug of tuple move splitter[PR112561]

2023-11-17 Thread Kito Cheng
> diff --git a/gcc/config/riscv/riscv-v.cc b/gcc/config/riscv/riscv-v.cc > index 6a2009ffb05..08bbb657a06 100644 > --- a/gcc/config/riscv/riscv-v.cc > +++ b/gcc/config/riscv/riscv-v.cc > @@ -374,10 +374,24 @@ void > emit_vlmax_insn_lra (unsigned icode, unsigned insn_flags, rtx *ops, rtx vl) > {

Re: building GNU gettext on AIX

2023-11-17 Thread Arsen Arsenović
Richard Biener writes: > On Fri, Nov 17, 2023 at 12:13 AM Arsen Arsenović wrote: >> >> >> Bruno Haible writes: >> >> > Hi David, >> > >> >> the default, distributed libintl library will not allow GCC to be built >> >> with NLS enabled. >> > >> > The problem is this configure test from

[PATCH 5/9] RISC-V: Tests for overlapping RVV and XTheadVector instructions (Part3)

2023-11-17 Thread Jun Sha (Joshua)
For big changes in instruction generation, we can only duplicate some typical tests in testsuite/gcc.target/riscv/rvv/base. This patch is adding some tests for binary operations. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/xtheadvector/binop_vx_constraint-31.c: New test. *

[PATCH 6/9] RISC-V: Tests for overlapping RVV and XTheadVector instructions (Part4)

2023-11-17 Thread Jun Sha (Joshua)
For big changes in instruction generation, we can only duplicate some typical tests in testsuite/gcc.target/riscv/rvv/base. This patch is adding some tests for ternary and unary operations. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/xtheadvector/ternop_vv_constraint-1.c: New test.

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Simon Wright
On 17 Nov 2023, at 08:37, Arnaud Charlet wrote: > >> Also, should the test code below (between %%%) be included in the >> testsuite? > > It would be good but tests shouldn't output anything, they should be self > testing, > and you will need to deal with making the test portable to all

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Arnaud Charlet
> > Please simplify the above to (untested): > > > > #elif defined (__APPLE__) > >/* By default, macOS volumes are case-insensitive, iOS > > volumes are case-sensitive. */ > > #if TARGET_OS_MAC/* macOS, in older SDK. */ > > file_names_case_sensitive_cache = 0; > >

[PATCH 3/3] libphobos: Adjust LoongArch definitons.

2023-11-17 Thread Yang Yujie
Upstream commits: https://github.com/dlang/phobos/commit/870eb5d5d6972b12dd4b69d48ef049abee811b6b https://github.com/dlang/dmd/commit/9cb5517290fac5d28f52c11c254115c0f1086b69 libphobos/ChangeLog: * libdruntime/core/stdc/fenv.d: Fix LongArch FP rounding mode constants. *

[PATCH 2/3] libphobos: Update build scripts for LoongArch64.

2023-11-17 Thread Yang Yujie
libphobos/ChangeLog: * m4/druntime/cpu.m4: Support loongarch* targets. * libdruntime/Makefile.am: Same. * libdruntime/Makefile.in: Regenerate. * configure: Regenerate. --- libphobos/configure | 21 ++- libphobos/libdruntime/Makefile.am | 3 +

[PATCH 0/9] RISC-V: Support XTheadVector extensions

2023-11-17 Thread Jun Sha (Joshua)
This patch series presents gcc implementation of the XTheadVector extension [1]. [1] https://github.com/T-head-Semi/thead-extension-spec/ Contributors: Jun Sha (Joshua) Jin Ma RISC-V: minimal support for xtheadvector RISC-V: Handle differences between xtheadvector and vector

Re: [PATCH] vect: Use statement vectype for conditional mask.

2023-11-17 Thread Richard Biener
On Thu, Nov 16, 2023 at 11:30 PM Robin Dapp wrote: > > > For the fortran testcase we don't even run into this but hit an > > internal def and assert on > > > > gcc_assert (STMT_VINFO_VEC_STMTS (def_stmt_info).length () == > > ncopies); > > > > I think this shows missing handling of .COND_*

Re: Re: [PATCH] RISC-V: testsuite: Fix 32-bit FAILs.

2023-11-17 Thread Kito Cheng
Oh, ok I got why it happened and it is definitely caused by my patch (but not that one, it is caused by another patch[1]), let me describe the reason why I try to emit errors. RISC-V has a crazy number of possible extension combinations, so it's easy to make some mistakes by using some unsupported

Re: building GNU gettext on AIX

2023-11-17 Thread Richard Biener
On Fri, Nov 17, 2023 at 12:13 AM Arsen Arsenović wrote: > > > Bruno Haible writes: > > > Hi David, > > > >> the default, distributed libintl library will not allow GCC to be built > >> with NLS enabled. > > > > The problem is this configure test from gettext.m4 > > > > checking for GNU gettext

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Arnaud Charlet
> Also, should the test code below (between %%%) be included in the > testsuite? It would be good but tests shouldn't output anything, they should be self testing, and you will need to deal with making the test portable to all targets. Given that the compiler itself uses this feature, I don't

Re: [PATCH] vect: Use statement vectype for conditional mask.

2023-11-17 Thread Richard Biener
On Fri, Nov 17, 2023 at 9:45 AM Robin Dapp wrote: > > > But note you can explicitly specify a vector type as well, there's an > > overload for it, so we can fix the "invariant" case with the following > > (OK if you can test this on relevant targets) > > > > diff --git a/gcc/tree-vect-loop.cc

[PATCH 2/9] RISC-V: Handle differences between xtheadvector and vector

2023-11-17 Thread Jun Sha (Joshua)
This patch is to handle the differences in instruction generation between vector and xtheadvector, mainly adding th. prefix to all xtheadvector instructions. gcc/ChangeLog: * config.gcc: Add header for XTheadVector intrinsics. * config/riscv/riscv-c.cc (riscv_pragma_intrinsic):

Re: [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext

2023-11-17 Thread Arsen Arsenović
Richard Biener writes: > On Fri, Nov 17, 2023 at 9:46 AM Arsen Arsenović wrote: >> >> >> David Edelsohn writes: >> >> > On Thu, Nov 16, 2023 at 5:52 PM Arsen Arsenović wrote: >> > >> > [snip] >> >> Sure, but my patch does insert --disable-shared: >> >> >> >> --8<---cut

Re: [PATCH] RISC-V: testsuite: Fix 32-bit FAILs.

2023-11-17 Thread Robin Dapp
> So, going back to our testcases that reported errors with this, I > don't think we should explicitly specify -march and -mabi when > compiling a runnable program, but use the defaults (--with-arch). > Most of our current runnable testcases adhere to this convention, > except for the ones we

Re: PING^1 [PATCH v3] sched: Change no_real_insns_p to no_real_nondebug_insns_p [PR108273]

2023-11-17 Thread Richard Biener
On Fri, Nov 17, 2023 at 10:04 AM Kewen.Lin wrote: > > on 2023/11/15 17:43, Alexander Monakov wrote: > > > > On Wed, 15 Nov 2023, Kewen.Lin wrote: > > > And I suppose it would be OK to do that. Empty BBs are usually removed > by > CFG cleanup so the situation should only happen in

Re: [PATCH] RISC-V: testsuite: Fix 32-bit FAILs.

2023-11-17 Thread Lehua Ding
Hi Kito and Robin, So, going back to our testcases that reported errors with this, I don't think we should explicitly specify -march and -mabi when compiling a runnable program, but use the defaults (--with-arch). Most of our current runnable testcases adhere to this convention, except for

[PATCH 1/9] RISC-V: minimal support for xtheadvector

2023-11-17 Thread Jun Sha (Joshua)
This patch is to introduce basic XTheadVector support (march string parsing and a test for __riscv_xtheadvector) according to https://github.com/T-head-Semi/thead-extension-spec/ gcc/ChangeLog: * common/config/riscv/riscv-common.cc (riscv_subset_list::parse): : Add new vendor

[PATCH 4/9] RISC-V: Tests for overlapping RVV and XTheadVector instructions (Part2)

2023-11-17 Thread Jun Sha (Joshua)
For big changes in instruction generation, we can only duplicate some typical tests in testsuite/gcc.target/riscv/rvv/base. This patch is adding some tests for binary operations. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/xtheadvector/binop_vx_constraint-11.c: New test. *

[PATCH 0/3] LoongArch GDC support.

2023-11-17 Thread Yang Yujie
This patchset is based on Zixing Liu's initial support patch: https://gcc.gnu.org/pipermail/gcc-patches/2023-September/631260.html Yang Yujie (3): LoongArch: Adjust D version strings. libphobos: Update build scripts for LoongArch64. libphobos: Adjust LoongArch definitons.

[PATCH 1/3] LoongArch: Adjust D version strings.

2023-11-17 Thread Yang Yujie
gcc/ChangeLog: * config/loongarch/loongarch-d.cc: Undefine LoongArch32. Define LoongArch_SF, LoongArch_F32, LoongArch_F64 gcc/d/ChangeLog: * dmd/cond.d: Same. * implement-d.texi: Same. --- gcc/config/loongarch/loongarch-d.cc | 27 ++-

Re: [PATCH v1 0/3] Add LoongarchV1.1 instructions support.

2023-11-17 Thread Xi Ruoyao
On Fri, 2023-11-17 at 16:33 +0800, Lulu Cheng wrote: > > Lulu Cheng (3): >   LoongArch: Add LA664 support. >   LoongArch: Implement atomic operations using LoongArch1.1 >     instructions. >   LoongArch: atomic_load and atomic_store are implemented using dbar >     grading. > >  gcc/config.gcc   

RISC-V: Support XTheadVector extensions

2023-11-17 Thread juzhe.zh...@rivai.ai
90% theadvector extension reusing current RVV 1.0 instructions patterns: Just change ASM, For example: @@ -2923,7 +2923,7 @@ (define_insn "*pred_mulh_scalar" (match_operand:VFULLI_D 3 "register_operand" "vr,vr, vr, vr")] VMULH) (match_operand:VFULLI_D 2

Re: [PATCH v1 1/3] LoongArch: Add LA664 support.

2023-11-17 Thread chenglulu
在 2023/11/17 下午8:31, Xi Ruoyao 写道: On Fri, 2023-11-17 at 16:33 +0800, Lulu Cheng wrote: Define ISA_BASE_LA64V110, which represents the base instruction set defined in LoongArch1.1. Support the configure setting --with-arch =la664, and support -march=la664,-mtune=la664. gcc/ChangeLog:

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Arnaud Charlet
> Apple’s naming is definitely confusing in this area! > > In current SDKs, TARGET_OS_MAC means code is being generated for a Mac OS X > variant, > which covers OSX, IOS, Watch … ; to determine which kind of device, you have > to check the > specific define for that device - OSX corresponds

[PATCH] vect: Fix check_reduction_path [PR112374]

2023-11-17 Thread Jakub Jelinek
Hi! As mentioned in the PR, the intent of the r14-5076 changes was that it doesn't count one of the uses on the use_stmt, but what actually got implemented is that it does this processing on any op_use_stmt, even if it is not the use_stmt statement, which means that it can increase count even on

[PATCH] tree-optimization/112585 - new testcase

2023-11-17 Thread Richard Biener
The offending commit r14-5444-g5ea2965b499f9e was reverted. The following adds a testcase. Pushed. PR tree-optimization/112585 * gcc.dg/torture/pr112585.c: New testcase. --- gcc/testsuite/gcc.dg/torture/pr112585.c | 18 ++ 1 file changed, 18 insertions(+)

Re: [PATCH] match.pd: Optimize ctz/popcount/parity/ffs on extended argument [PR112566]

2023-11-17 Thread Richard Biener
On Fri, 17 Nov 2023, Jakub Jelinek wrote: > Hi! > > ctz(ext(X)) is the same as ctz(X) in the UB on zero case (or could be also > in the 2 argument case on large BITINT_TYPE by preserving the argument, not > implemented in this patch), > popcount(zext(X)) is the same as popcount(X), >

[PATCH v5] c-family: Implement __has_feature and __has_extension [PR60512]

2023-11-17 Thread Alex Coplan
Hi, This is a v5 patch to address Marek's feedback here: https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635157.html I also implemented Jason's suggestion to use constexpr for the tables from this review: https://gcc.gnu.org/pipermail/gcc-patches/2023-October/634484.html I'll attach the

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-17 Thread Tamar Christina
> > > > > Yes, but that only works for the inductions marked so. We'd > > > > > need to mark the others as well, but only for the early exits. > > > > > > > > > > > although I don't understand why we use the scalar count, I > > > > > > suppose the reasoning is that we don't really want to keep

Re: [PATCH v2 3/5] ada: Improve attribute exclusion handling

2023-11-17 Thread Andrew Carlotti
On Fri, Nov 17, 2023 at 11:45:16AM +0100, Marc Poulhi�s wrote: > > Hello, > > > I haven't manged to test the Ada frontend, but this patch (and the following > > I don't have an aarch64 setup to test, but I may be able to help with the > issue preventing you from testing. Can you elaborate

Re: [PATCH 1/4] libsanitizer: merge from upstream (c425db2eb558c263)

2023-11-17 Thread FX Coudert
Heads-up: this broke bootstrap on darwin: > +typedef void (^dispatch_mach_handler_t)(dispatch_mach_reason reason, > +dispatch_mach_msg_t message, > +mach_error_t error); Blocks are an Apple/clang extension, not

Re: Re: [PATCH] RISC-V: Fix bug of tuple move splitter[PR112561]

2023-11-17 Thread juzhe.zh...@rivai.ai
>> I didn't get why we need vlmax vsetvl here? >> We use code_for_pred_mov if subpart_mode is fractional LMUL mode >> and will use the whole reg load store if not fractional LMUL. >> So we don't need explicitly vsetvl for the above 2 cases in my understanding? >> I know I must miss something,

[avr, committed] PR target/53372: Don't ignore section attribute with address-space

2023-11-17 Thread Georg-Johann Lay
The address-spaces locate data in their attaches sections like .progmem.data; but that should only be done if the user did not specify a section attribute. Johann -- PR target/53372: Don't ignore section attribute with address-space. gcc/ PR target/53372 * config/avr/avr.cc

Re: [PATCH v1 1/3] LoongArch: Add LA664 support.

2023-11-17 Thread Xi Ruoyao
On Fri, 2023-11-17 at 16:33 +0800, Lulu Cheng wrote: > Define ISA_BASE_LA64V110, which represents the base instruction set defined > in LoongArch1.1. > Support the configure setting --with-arch =la664, and support > -march=la664,-mtune=la664. > > gcc/ChangeLog: > > * config.gcc: Support

Re: PING^1 [PATCH v3] sched: Change no_real_insns_p to no_real_nondebug_insns_p [PR108273]

2023-11-17 Thread Alexander Monakov
On Fri, 17 Nov 2023, Kewen.Lin wrote: > > I don't think you can run cleanup_cfg after sched_init. I would suggest > > to put it early in schedule_insns. > > Thanks for the suggestion, I placed it at the beginning of haifa_sched_init > instead, since schedule_insns invokes haifa_sched_init,

Re: [PATCH v2] A new copy propagation and PHI elimination pass

2023-11-17 Thread Richard Biener
On Thu, 2 Nov 2023, Filip Kastl wrote: > > Hi, > > > > this is a patch that I submitted two months ago as an RFC. I added some > > polish > > since. > > > > It is a new lightweight pass that removes redundant PHI functions and as a > > bonus does basic copy propagation. With Jan Hubi?ka we

Re: [PATCH] vect: Use statement vectype for conditional mask.

2023-11-17 Thread Robin Dapp
> Yes, your version is also OK. The attached was bootstrapped and regtested on aarch64, x86 and regtested on riscv. Going to commit it later unless somebody objects. Regards Robin Subject: [PATCH] vect: Pass truth type to vect_get_vec_defs. For conditional operations the mask is loop

[PATCH] tree-ssa-math-opts: popcount (X) == 1 to (X ^ (X - 1)) > (X - 1) optimization [PR90693]

2023-11-17 Thread Jakub Jelinek
Hi! Per the earlier discussions on this PR, the following patch folds popcount (x) == 1 (and != 1) into (x ^ (x - 1)) > x - 1 (or <=) if the corresponding popcount optab isn't implemented (I think any double-word popcount or call will be necessarily slower than the above cheap 3 op check and even

Re: Re: [PATCH] RISC-V: Fix bug of tuple move splitter[PR112561]

2023-11-17 Thread Kito Cheng
I didn’t take a closer look yet on the ira/lra dump yet, but my feeling is that may cause by the earlyclober modifier isn’t work as expect? Let me take closer look tomorrow. juzhe.zh...@rivai.ai 於 2023年11月17日 週五,20:16寫道: > >> I didn't get why we need vlmax vsetvl here? > > >> We use

Re: [PATCH] c++, v2: Implement C++26 P2741R3 - user-generated static_assert messages [PR110348]

2023-11-17 Thread Jason Merrill
You recently pinged this patch, but I haven't seen an update since this review? On 10/26/23 21:21, Jason Merrill wrote: On 9/18/23 13:21, Jakub Jelinek wrote: Here is an updated version of the patch. Compared to the last version, based on the discussion in the PR, the patch 1) warns (but

Re: Darwin: Replace environment runpath with embedded [PR88590]

2023-11-17 Thread FX Coudert
>> I have done a full rebuild, and having looked more at the structure of >> libtool.m4 I am now convinced that having that line outside of the scope of >> _LT_DARWIN_LINKER_FEATURES is simply wrong (probably a copy-pasto or >> leftover from earlier code). >> Having rebuilt everything, it only

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-17 Thread Richard Biener
On Fri, 17 Nov 2023, Tamar Christina wrote: > > > > > > Yes, but that only works for the inductions marked so. We'd > > > > > > need to mark the others as well, but only for the early exits. > > > > > > > > > > > > > although I don't understand why we use the scalar count, I > > > > > > >

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Simon Wright
> >> Apple’s naming is definitely confusing in this area! >> >> In current SDKs, TARGET_OS_MAC means code is being generated for a Mac OS X >> variant, >> which covers OSX, IOS, Watch … ; to determine which kind of device, you have >> to check the >> specific define for that device - OSX

Re: [committed] hppa: Revise REG+D address support to allow long displacements before reload

2023-11-17 Thread Jeff Law
On 11/17/23 01:27, John David Anglin wrote: On 2023-11-16 10:00 p.m., Jeff Law wrote: I'm not seeing any obvious problems in the gcc testsuite.  It needs testing on  packages that do extensive floating point calculations. OK, I'll focus on those. THe more likely scenario is xmpy which is

Re: [PATCH] c++, v2: Implement C++26 P2741R3 - user-generated static_assert messages [PR110348]

2023-11-17 Thread Jakub Jelinek
On Fri, Nov 17, 2023 at 09:18:39AM -0500, Jason Merrill wrote: > You recently pinged this patch, but I haven't seen an update since this > review? Oops, sorry, I've missed this and DR 2406 review posts in my inbox during vacation, will get to that momentarily. Thanks. Jakub

Re: [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext

2023-11-17 Thread David Edelsohn
On Fri, Nov 17, 2023 at 3:46 AM Arsen Arsenović wrote: > > David Edelsohn writes: > > > On Thu, Nov 16, 2023 at 5:52 PM Arsen Arsenović wrote: > > > > [snip] > >> Sure, but my patch does insert --disable-shared: > >> > >> --8<---cut here---start->8--- > >>

[committed] libstdc++: Fix Doxygen markup

2023-11-17 Thread Jonathan Wakely
Pushed to trunk. -- >8 -- libstdc++-v3/ChangeLog: * include/bits/chrono_io.h: Fix Doxygen markup. --- libstdc++-v3/include/bits/chrono_io.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libstdc++-v3/include/bits/chrono_io.h b/libstdc++-v3/include/bits/chrono_io.h

[committed] libstdc++: Add more Doxygen comments and another test for std::out_ptr

2023-11-17 Thread Jonathan Wakely
Tested x86_64-linux. Pushed to trunk. -- >8 -- Improve Doxygen comments for std::out_ptr etc. and add a test for the feature test macro. Also remove a redundant preprocessor condition. Ideally the docs for std::out_ptr and std::inout_ptr would show examples of how to use them and what they do,

[committed] libstdc++: Adjust std::in_range template parameter name

2023-11-17 Thread Jonathan Wakely
Tested x86_64-linux. Pushed to trunk. -- >8 -- This is more consistent with the specification in the standard. libstdc++-v3/ChangeLog: * include/std/utility (in_range): Rename _Up parameter to _Res. --- libstdc++-v3/include/std/utility | 14 +++--- 1 file changed, 7

Re: [PATCH] RISC-V: Disallow 64-bit indexed loads and stores for rv32gcv.

2023-11-17 Thread Robin Dapp
> OK. Make sense。 I'm wondering whether the VLA modes in the iterator are correct. Looks dubious to me but unsure, will need to create some tests before continuing. > LGTM as long as you remove  all > GET_MODE_BITSIZE (GET_MODE_INNER (mode)) <= GET_MODE_BITSIZE (Pmode) What's the problem with

Re: Darwin: Replace environment runpath with embedded [PR88590]

2023-11-17 Thread Thomas Schwinge
Hi FX! On 2023-11-17T12:56:13+0100, FX Coudert wrote: >> If I remove the line from libtool.m4 (innocent smile) I see that >> fixincludes/configure is better, and it does not appear to change the >> regenerated files in other directories (I didn’t do a build yet, just tried >> to regenerate

Re: building GNU gettext on AIX

2023-11-17 Thread Bruno Haible
David Edelsohn and Richard Biener wrote: > > > * GCC can pass --enable-threads=isoc, to avoid the libpthread dependency > > > on AIX ≥ 7.2. > > > > Hmm, would that option work everywhere, though? Or would we have to > > wire up configury to detect which flag to use? If so, what would it >

Re: building GNU gettext on AIX

2023-11-17 Thread Arsen Arsenović
Bruno Haible writes: > David Edelsohn and Richard Biener wrote: >> > > * GCC can pass --enable-threads=isoc, to avoid the libpthread >> > > dependency >> > > on AIX ≥ 7.2. >> > >> > Hmm, would that option work everywhere, though? Or would we have to >> > wire up configury to detect

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Arnaud Charlet
> OK so then the following is sufficient for our needs: > > #elif defined (__APPLE__) >/* By default, macOS volumes are case-insensitive, iOS > volumes are case-sensitive. */ > #if TARGET_OS_IOS > file_names_case_sensitive_cache = 1; > #else >

Re: [PATCH] vect: Fix check_reduction_path [PR112374]

2023-11-17 Thread Richard Biener
On Fri, 17 Nov 2023, Jakub Jelinek wrote: > Hi! > > As mentioned in the PR, the intent of the r14-5076 changes was that > it doesn't count one of the uses on the use_stmt, but what actually > got implemented is that it does this processing on any op_use_stmt, > even if it is not the use_stmt

Re: [PATCH v2 3/5] ada: Improve attribute exclusion handling

2023-11-17 Thread Marc Poulhiès
Hello, > I haven't manged to test the Ada frontend, but this patch (and the following I don't have an aarch64 setup to test, but I may be able to help with the issue preventing you from testing. Can you elaborate what is the problem? Marc

Re: [PATCH 1/4] libsanitizer: merge from upstream (c425db2eb558c263)

2023-11-17 Thread Jakub Jelinek
On Fri, Nov 17, 2023 at 12:31:40PM +0100, FX Coudert wrote: > I have reported the issue to llvm at > https://github.com/llvm/llvm-project/issues/72639 > There is a trivial one-line patch to fix it, which I hope they will accept. > Not sure what our policy is here, in the meantime. If they

Re: Darwin: Replace environment runpath with embedded [PR88590]

2023-11-17 Thread FX Coudert
Hi, > If I remove the line from libtool.m4 (innocent smile) I see that > fixincludes/configure is better, and it does not appear to change the > regenerated files in other directories (I didn’t do a build yet, just tried > to regenerate with some manual autoconf invocations). I have done a

Re: [PATCH] Fix PR ada/111909 On Darwin, determine filesystem case sensitivity at runtime

2023-11-17 Thread Simon Wright
>>> Please simplify the above to (untested): >>> >>> #elif defined (__APPLE__) >>> /* By default, macOS volumes are case-insensitive, iOS >>> volumes are case-sensitive. */ >>> #if TARGET_OS_MAC/* macOS, in older SDK. */ >>>file_names_case_sensitive_cache = 0; >>>

Re: RISC-V: Support XTheadVector extensions

2023-11-17 Thread juzhe.zh...@rivai.ai
Ok. I just read the theadvector extension. https://github.com/T-head-Semi/thead-extension-spec/blob/master/xtheadvector.adoc Theadvector is not custom extension. Just a uarch to disable some of the RVV1.0 extension Theadvector can be considered as subextension of 'V' extension with disabling

Re: [PATCH 1/4] libsanitizer: merge from upstream (c425db2eb558c263)

2023-11-17 Thread FX Coudert
I have reported the issue to llvm at https://github.com/llvm/llvm-project/issues/72639 There is a trivial one-line patch to fix it, which I hope they will accept. Not sure what our policy is here, in the meantime. FX

Re: [PATCH 1/4] libsanitizer: merge from upstream (c425db2eb558c263)

2023-11-17 Thread FX Coudert
> If they accept it say within a day, wait for it + cherry-pick to GCC, > otherwise apply to GCC as a local patch in anticipation they accept it. > If it is all that fixes Darwin support, great. With that patch, I can finish bootstrap, and regtesting is undergoing but I’m seeing no issue so far.

Re: [Patch] Fortran: Accept -std=f2023, update line-length for Fortran 2023

2023-11-17 Thread Mikael Morin
Le 17/11/2023 à 12:38, Tobias Burnus a écrit : Unless there are follow up comments, I will commit it later today. I skimmed quickly through the patch, and noticed one typo to fix: > diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi > index 10387e39501..5f87b330a22 100644 > ---

Re: gfortran.dg/dg.exp debug messages pollute test output

2023-11-17 Thread Thomas Schwinge
Hi! On 2023-11-15T11:29:20+0100, FX Coudert wrote: >>> it's unclear if those messages can just be removed (they are pretty >>> cryptic as is) or at least changed to use verbose instead of puts. >>> Please fix. > > I don’t see value in this output, so I think it’s best to remove the puts > calls

[PATCH] match.pd: Optimize ctz/popcount/parity/ffs on extended argument [PR112566]

2023-11-17 Thread Jakub Jelinek
Hi! ctz(ext(X)) is the same as ctz(X) in the UB on zero case (or could be also in the 2 argument case on large BITINT_TYPE by preserving the argument, not implemented in this patch), popcount(zext(X)) is the same as popcount(X), parity(zext(X)) is the same as parity(X), parity(sext(X)) is the

[PATCH V2] RISC-V: Fix bug of tuple move splitter

2023-11-17 Thread Juzhe-Zhong
Fix segment fault on tuple move: bbl loader z ra 000102ac sp 003ffaf0 gp 0001c0b8 tp t0 000104a0 t1 000f t2 s0 s1 a0 003ffb30 a1 003ffb58 a2

Re: [PATCH V3 4/7] ira: Support subreg copy

2023-11-17 Thread Vladimir Makarov
On 11/16/23 21:06, Lehua Ding wrote: Hi Vladimir, Thank you so much for your review. Based on your comments, I feel like there are a lot of issues, especially the long compile time issue. So I'm going to reorganize and refactor the patches so that as many of them as possible can be

[PATCH] middle-end, v2: Add new value for vector types for __builtin_classify_type

2023-11-17 Thread Jakub Jelinek
On Thu, Nov 16, 2023 at 11:49:03PM +, Joseph Myers wrote: > > > While filing a clang request to return 18 on _BitInts for > > > __builtin_classify_type instead of -1 they return currently, I've > > > noticed that we return -1 for vector types. I'm not convinced it is a > > > good > > > idea

ping: [PATCH] preprocessor: Reinitialize frontend parser after loading a PCH [PR112319]

2023-11-17 Thread Lewis Hyatt
May I please ping this one? Thanks... https://gcc.gnu.org/pipermail/gcc-patches/2023-November/634931.html On Wed, Nov 1, 2023 at 5:55 PM Lewis Hyatt wrote: > > Hello- > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112319 > > This is a one-line patch to fix the GCC 14 regression noted in the >

Re: [PATCH v3 0/2] Replace intl/ with out-of-tree GNU gettext

2023-11-17 Thread Arsen Arsenović
David Edelsohn writes: > On Fri, Nov 17, 2023 at 3:46 AM Arsen Arsenović wrote: > >> >> David Edelsohn writes: >> >> > On Thu, Nov 16, 2023 at 5:52 PM Arsen Arsenović wrote: >> > >> > [snip] >> >> Sure, but my patch does insert --disable-shared: >> >> >> >> --8<---cut

Re: Re: [PATCH] RISC-V: Disallow 64-bit indexed loads and stores for rv32gcv.

2023-11-17 Thread 钟居哲
>> Yeah, just noticed that myself. Anyway will do some more tests, >> maybe my initial VLS analysis was somehow flawed. You can check binop_vx_constraint-167.c ~ binop_vx_constraint-174.c This patch is pre-approved if you change as my suggestion. I am gonna sleep so I am not able to review

Add 'libgomp.c++/static-local-variable-1.C'

2023-11-17 Thread Thomas Schwinge
Hi! I found that with GCC's '-fthreadsafe-statics' implementation (..., which is enabled by default) instrumented as follows: --- libstdc++-v3/libsupc++/guard.cc +++ libstdc++-v3/libsupc++/guard.cc @@ -271,6 +273,7 @@ namespace __cxxabiv1 extern "C" int

Re: RISC-V: Support XTheadVector extensions

2023-11-17 Thread Jeff Law
On 11/17/23 04:39, juzhe.zh...@rivai.ai wrote: 90% theadvector extension reusing current RVV 1.0 instructions patterns: Just change ASM, For example: @@ -2923,7 +2923,7 @@ (define_insn "*pred_mulh_scalar" (match_operand:VFULLI_D 3 "register_operand" "vr,vr, vr, vr")] VMULH)

[PATCH 20/21] aarch64: Enforce inlining restrictions for SME

2023-11-17 Thread Richard Sandiford
A function that has local ZA state cannot be inlined into its caller, since we only support managing ZA switches at function scope. A function whose body directly clobbers ZA state cannot be inlined into a function with ZA state. A function whose body requires a particular PSTATE.SM setting can

Re: [committed] libstdc++: Define C++26 saturation arithmetic functions (P0543R3)

2023-11-17 Thread Jonathan Wakely
On Fri, 17 Nov 2023 at 17:01, Daniel Krügler wrote: > > Am Fr., 17. Nov. 2023 um 16:32 Uhr schrieb Jonathan Wakely > : > > > > Tested x86_64-linux. Pushed to trunk. > > > > GCC generates better code for add_sat if we use: > > > > unsigned z = x + y; > > z |= -(z < x); > > return z; > > > > If

  1   2   >