Re: [PATCH] PR tree-optimization/108697 - Create a lazy ssa_cache

2023-02-15 Thread Richard Biener via Gcc-patches
On Wed, Feb 15, 2023 at 6:07 PM Andrew MacLeod via Gcc-patches wrote: > > This patch implements the suggestion that we have an alternative > ssa-cache which does not zero memory, and instead uses a bitmap to track > whether a value is currently set or not. It roughly mimics what >

[PATCH V2 2/5] Implement ZBKB, ZBKC and ZBKX extensions

2023-02-15 Thread Liao Shihua
This patch support Zkbk, Zbkc and Zkbx extension. It includes instruction's machine description, built-in funtion, and intrinsics. It is worth mentioning that this patch only adds instructions in Zbkb but no longer in Zbb. If any instructions both in Zbb and Zbkb, they will be generated by

[PATCH V2 4/5] Implement ZKNH extensions

2023-02-15 Thread Liao Shihua
This patch support Zknh extension. It includes instruction's machine description, built-in funtion, and intrinsics. gcc/ChangeLog: * config/riscv/crypto.md (riscv_sha256sig0_):Add ZKNH's instructions. (riscv_sha256sig1_): Likewise. (riscv_sha256sum0_): Likewise.

[PATCH V2 3/5] Implement ZKND and ZKNE extensions

2023-02-15 Thread Liao Shihua
This patch support Zkne and Zknd extension. It includes instruction's machine description, built-in funtion, and intrinsics. gcc/ChangeLog: * config/riscv/constraints.md (D03): New constraints of bs. (DsA):New constraints of rnum. * config/riscv/crypto.md

[PATCH V2 0/5] RISC-V: Implement Scalar Cryptography Extension

2023-02-15 Thread Liao Shihua
This series adds basic support for the Scalar Cryptography extensions: * Zbkb * Zbkc * Zbkx * Zknd * Zkne * Zknh * Zksed * Zksh The implementation follows the version Scalar Cryptography v1.0.0 of the specification, and the intrinsic of Scalar Cryptography extensions follows riscv-c-api which

[PATCH V2 5/5] Implement ZKSH and ZKSED extensions

2023-02-15 Thread Liao Shihua
This patch support Zksh and Zksed extension. It includes instruction's machine description, built-in funtion, and intrinsics. gcc/ChangeLog: * config/riscv/crypto.md (riscv_sm3p0_): Add ZKSH's and ZKSED's instructions. (riscv_sm3p1_): Likewise. (riscv_sm4ed_):

[PATCH V2 1/5] Add prototypes for RISC-V Crypto built-in functions

2023-02-15 Thread Liao Shihua
gcc/ChangeLog: * config/riscv/riscv-builtins.cc (RISCV_FTYPE_NAME2): New enumeration identifier. (RISCV_FTYPE_NAME3): Likewise. (RISCV_ATYPE_QI): New Argument types. (RISCV_ATYPE_HI): Likewise. (RISCV_FTYPE_ATYPES2): New RISCV_ATYPE.

[PATCH V2 2/5] Implement ZBKB, ZBKC and ZBKX extensions

2023-02-15 Thread Liao Shihua
This patch support Zkbk, Zbkc and Zkbx extension. It includes instruction's machine description, built-in funtion, and intrinsics. It is worth mentioning that this patch only adds instructions in Zbkb but no longer in Zbb. If any instructions both in Zbb and Zbkb, they will be generated by

[PATCH V2 4/5] Implement ZKNH extensions

2023-02-15 Thread Liao Shihua
This patch support Zknh extension. It includes instruction's machine description, built-in funtion, and intrinsics. gcc/ChangeLog: * config/riscv/crypto.md (riscv_sha256sig0_):Add ZKNH's instructions. (riscv_sha256sig1_): Likewise. (riscv_sha256sum0_): Likewise.

[PATCH V2 0/5] RISC-V: Implement Scalar Cryptography Extension

2023-02-15 Thread Liao Shihua
This series adds basic support for the Scalar Cryptography extensions: * Zbkb * Zbkc * Zbkx * Zknd * Zkne * Zknh * Zksed * Zksh The implementation follows the version Scalar Cryptography v1.0.0 of the specification, and the intrinsic of Scalar Cryptography extensions follows riscv-c-api which

[PATCH V2 5/5] Implement ZKSH and ZKSED extensions

2023-02-15 Thread Liao Shihua
This patch support Zksh and Zksed extension. It includes instruction's machine description, built-in funtion, and intrinsics. gcc/ChangeLog: * config/riscv/crypto.md (riscv_sm3p0_): Add ZKSH's and ZKSED's instructions. (riscv_sm3p1_): Likewise. (riscv_sm4ed_):

[PATCH V2 3/5] Implement ZKND and ZKNE extensions

2023-02-15 Thread Liao Shihua
This patch support Zkne and Zknd extension. It includes instruction's machine description, built-in funtion, and intrinsics. gcc/ChangeLog: * config/riscv/constraints.md (D03): New constraints of bs. (DsA):New constraints of rnum. * config/riscv/crypto.md

[PATCH 1/5] Add prototypes for RISC-V Crypto built-in functions

2023-02-15 Thread Liao Shihua
Co-Authored-By: SiYu Wu --- gcc/config/riscv/riscv-builtins.cc | 8 gcc/config/riscv/riscv-ftypes.def | 10 ++ 2 files changed, 18 insertions(+) diff --git a/gcc/config/riscv/riscv-builtins.cc b/gcc/config/riscv/riscv-builtins.cc index 25ca407f9a9..ded91e17554 100644 ---

[PATCH] tree-optimization/108791 - checking ICE with sloppy ADDR_EXPR

2023-02-15 Thread Richard Biener via Gcc-patches
The following fixes a checking ICE by choosing a more appropriate type for an ADDR_EXPR built by forwprop. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. PR tree-optimization/108791 * tree-ssa-forwprop.cc (optimize_vector_load): Build the ADDR_EXPR of a

Re: [PING 2] [PATCH 0/3] RISC-V: optimize stack manipulation in save-restore

2023-02-15 Thread Fei Gao
ping. BR,  Fei On 2023-02-03 16:52  Fei Gao wrote: > > >Gentle ping. > >The patch I previously submitted: >| Date: Wed, 30 Nov 2022 00:38:08 -0800 >| Subject: [PATCH] RISC-V: optimize stack manipulation in save-restore >| Message-ID: > >I split the patches as per Palmer's review comment. > >BR

[PATCH 2/2, GCC12] AArch64: Gate various crypto intrinsics availability based on features

2023-02-15 Thread Tejas Belagod via Gcc-patches
The 64-bit variant of PMULL{2} and AES instructions are available if FEAT_AES is implemented according to the Arm ARM [1]. Similarly FEAT_SHA1 and FEAT_SHA256 enable the use of SHA1 and SHA256 instruction variants. This patch fixes arm_neon.h to correctly reflect the feature availability based on

[PATCH 1/2, GCC12] AArch64: Update transitive closures of aes, sha2 and sha3 extensions

2023-02-15 Thread Tejas Belagod via Gcc-patches
Transitive closures of architectural extensions have to be manually maintained for AARCH64_OPT_EXTENSION list. Currently aes, sha2 and sha3 extensions add AARCH64_FL_SIMD has their dependency - this does not automatically pull in the transitive dependence of AARCH64_FL_FP from AARCH64_FL_SIMD's

[PATCH] RISC-V: Add vm* C++ api tests

2023-02-15 Thread juzhe . zhong
From: Ju-Zhe Zhong gcc/testsuite/ChangeLog: * g++.target/riscv/rvv/base/vmand_mm-1.C: New test. * g++.target/riscv/rvv/base/vmand_mm-2.C: New test. * g++.target/riscv/rvv/base/vmand_mm-3.C: New test. * g++.target/riscv/rvv/base/vmandn_mm-1.C: New test. *

[PATCH] RISC-V: Add the res of all mask C api tests

2023-02-15 Thread juzhe . zhong
From: Ju-Zhe Zhong gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/base/vcpop_m_m-1.c: New test. * gcc.target/riscv/rvv/base/vcpop_m_m-2.c: New test. * gcc.target/riscv/rvv/base/vcpop_m_m-3.c: New test. * gcc.target/riscv/rvv/base/vfirst_m_m-1.c: New test.

[PATCH] RISC-V: Fix vmnot asm check (Should check vmnot.m instead of vmnot.mm)

2023-02-15 Thread juzhe . zhong
From: Ju-Zhe Zhong gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/base/binop_vx_constraint-148.c: Change vmnot.mm to vmnot.m. * gcc.target/riscv/rvv/base/binop_vx_constraint-149.c: Change vmnot.mm to vmnot.m. * gcc.target/riscv/rvv/base/binop_vx_constraint-150.c:

[PATCH] RISC-V: Add RVV all mask C/C++ intrinsics support

2023-02-15 Thread juzhe . zhong
From: Ju-Zhe Zhong gcc/ChangeLog: * config/riscv/riscv-vector-builtins-bases.cc (class mask_logic): New class. (class mask_nlogic): Ditto. (class mask_notlogic): Ditto. (class vmmv): Ditto. (class vmclr): Ditto. (class vmset): Ditto.

Re: [PATCH] Fix PR target/90458

2023-02-15 Thread NightStrike via Gcc-patches
On Wed, Feb 15, 2023 at 10:24 AM Eric Botcazou via Gcc-patches wrote: > > Hi, > > this is the incompatibility of -fstack-clash-protection with Windows SEH. Now > the Windows ports always enable TARGET_STACK_PROBE, which means that the stack > is always probed (out of line) so

[PATCH] objs-gcc.sh: Only bootstrap if source-directory contains gcc

2023-02-15 Thread Hans-Peter Nilsson via Gcc-patches
TL;DR: committed as obvious. -- >8 -- I use objs-gcc.sh as a preparatory step before calling btest-gcc.sh in my scripts, for example my cris-elf autotester. I thought, why not use it for native builds too. Except that use, with binutils release-style tarballs and a x86_64-pc-linux-gnu host, was

[PATCH] testsuite: Add CRIS to check_effective_target_lra non-LRA list

2023-02-15 Thread Hans-Peter Nilsson via Gcc-patches
I'd much rather install https://gcc.gnu.org/pipermail/gcc-patches/2023-February/611531.html than this one, because obviously a general solution is better than a target list. But, that would require approval, and I got NAK. This change however, piling on to the target list, is within target

Re: [PATCH 6/7] libstdc++: Fix incorrect __builtin_is_constant_evaluated calls

2023-02-15 Thread Jonathan Wakely via Gcc-patches
On Wed, 15 Feb 2023 at 20:51, Matthias Kretz via Libstdc++ wrote: > > > > Signed-off-by: Matthias Kretz > > libstdc++-v3/ChangeLog: > > * include/experimental/bits/simd_x86.h > (_SimdImplX86::_S_not_equal_to, _SimdImplX86::_S_less) > (_SimdImplX86::_S_less_equal): Do not

Re: [PATCH 1/7] libstdc++: Ensure __builtin_constant_p isn't lost on the way

2023-02-15 Thread Jonathan Wakely via Gcc-patches
On Wed, 15 Feb 2023 at 20:49, Matthias Kretz via Libstdc++ wrote: > > > > The more expensive code path should only be taken if it can be optimized > away. > > Signed-off-by: Matthias Kretz > > libstdc++-v3/ChangeLog: > > * include/experimental/bits/simd.h >

Re: [PATCH 7/7] libstdc++: Fix incorrect function call in -ffast-math optimization

2023-02-15 Thread Jonathan Wakely via Gcc-patches
On Wed, 15 Feb 2023 at 20:52, Matthias Kretz via Libstdc++ wrote: > > > > Signed-off-by: Matthias Kretz > > libstdc++-v3/ChangeLog: > > * include/experimental/bits/simd_math.h (__hypot): Bitcasting > between scalars requires the __bit_cast helper function instead > of

Re: Ping^3: [PATCH] libcpp: Handle extended characters in user-defined literal suffix [PR103902]

2023-02-15 Thread Lewis Hyatt via Gcc-patches
On Wed, Feb 15, 2023 at 1:39 PM Jason Merrill wrote: > > On 9/26/22 15:27, Lewis Hyatt wrote: > > On Wed, Jun 15, 2022 at 03:06:16PM -0400, Lewis Hyatt wrote: > >> On Tue, Jun 14, 2022 at 05:26:49PM -0400, Lewis Hyatt wrote: > >>> Hello- > >>> > >>>

Re: [PATCH 3/7] libstdc++: Document timeout and timeout-factor of simd tests

2023-02-15 Thread Jonathan Wakely via Gcc-patches
On Wed, 15 Feb 2023 at 20:50, Matthias Kretz via Libstdc++ wrote: > > > > Signed-off-by: Matthias Kretz > > libstdc++-v3/ChangeLog: > > * testsuite/experimental/simd/README.md: Document the timeout > and timeout-factor directives. Minor typo fixed. OK for all relevant branches

Re: [PATCH 5/7] libstdc++: printf format string fix in testsuite

2023-02-15 Thread Jonathan Wakely via Gcc-patches
On Wed, 15 Feb 2023 at 20:52, Matthias Kretz via Libstdc++ wrote: > > > > Signed-off-by: Matthias Kretz > > libstdc++-v3/ChangeLog: > > * testsuite/experimental/simd/tests/bits/verify.h > (verify::verify): Use %zx for size_t in format string. > --- >

Re: [PATCH v6] xtensa: Eliminate the use of callee-saved register that saves and restores only once

2023-02-15 Thread Max Filippov via Gcc-patches
Hi Suwa-san, On Thu, Jan 26, 2023 at 7:17 PM Takayuki 'January June' Suwa wrote: > > In the case of the CALL0 ABI, values that must be retained before and > after function calls are placed in the callee-saved registers (A12 > through A15) and referenced later. However, it is often the case that

Re: [PATCH, committed] Fortran: error recovery on invalid assumed size reference [PR104554]

2023-02-15 Thread Steve Kargl via Gcc-patches
On Wed, Feb 15, 2023 at 10:28:00PM +0100, Harald Anlauf via Fortran wrote: > Dear all, > > I've committed the attached obvious and trivial patch for a NULL > pointer dereference on behalf of Steve and after regtesting on > x86_64-pc-linux-gnu as r13-6066-ga418129273725fd02e881e6fb5e0877287a1356c

[PATCH, committed] Fortran: error recovery on checking procedure argument intent [PR103608]

2023-02-15 Thread Harald Anlauf via Gcc-patches
Dear all, I've committed the attached obvious and trivial patch for another NULL pointer dereference on behalf of Steve and after regtesting on x86_64-pc-linux-gnu as r13-6067-gc75cbeba81e5b4737a9ab7dd28cce650965535a9 Thanks, Harald From c75cbeba81e5b4737a9ab7dd28cce650965535a9 Mon Sep 17

Re: [PATCH] c++: ICE with -fno-elide-constructors and trivial fn [PR101073]

2023-02-15 Thread Marek Polacek via Gcc-patches
On Wed, Feb 15, 2023 at 02:39:16PM -0500, Jason Merrill wrote: > On 2/9/23 09:39, Marek Polacek wrote: > > In constexpr-nsdmi3.C, with -fno-elide-constructors, we don't elide > > the Y::Y(const Y&) call used to initialize o.c. So store_init_value > > -> cxx_constant_init must constexpr-evaluate

[PATCH, committed] Fortran: error recovery on invalid assumed size reference [PR104554]

2023-02-15 Thread Harald Anlauf via Gcc-patches
Dear all, I've committed the attached obvious and trivial patch for a NULL pointer dereference on behalf of Steve and after regtesting on x86_64-pc-linux-gnu as r13-6066-ga418129273725fd02e881e6fb5e0877287a1356c Thanks, Harald From a418129273725fd02e881e6fb5e0877287a1356c Mon Sep 17 00:00:00

[PATCH 6/7] libstdc++: Fix incorrect __builtin_is_constant_evaluated calls

2023-02-15 Thread Matthias Kretz via Gcc-patches
Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * include/experimental/bits/simd_x86.h (_SimdImplX86::_S_not_equal_to, _SimdImplX86::_S_less) (_SimdImplX86::_S_less_equal): Do not call __builtin_is_constant_evaluated in constexpr-if. ---

[PATCH 4/7] libstdc++: Use a PCH to speed up check-simd

2023-02-15 Thread Matthias Kretz via Gcc-patches
Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * testsuite/experimental/simd/generate_makefile.sh: Generate and pre-compile pch.h, which includes all headers that do not depend on command-line macros. *

[PATCH 5/7] libstdc++: printf format string fix in testsuite

2023-02-15 Thread Matthias Kretz via Gcc-patches
Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * testsuite/experimental/simd/tests/bits/verify.h (verify::verify): Use %zx for size_t in format string. --- libstdc++-v3/testsuite/experimental/simd/tests/bits/verify.h | 2 +- 1 file changed, 1 insertion(+), 1

[PATCH 2/7] libstdc++: Annotate most lambdas with always_inline

2023-02-15 Thread Matthias Kretz via Gcc-patches
All of the annotated lambdas are simply a necessary means for implementing these functions and should never result in an actual function call. Many of these lambdas would go away if C++ had better language support for packs. Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: PR

[PATCH 7/7] libstdc++: Fix incorrect function call in -ffast-math optimization

2023-02-15 Thread Matthias Kretz via Gcc-patches
Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * include/experimental/bits/simd_math.h (__hypot): Bitcasting between scalars requires the __bit_cast helper function instead of simd_bit_cast. --- libstdc++-v3/include/experimental/bits/simd_math.h | 4 ++-- 1

[PATCH 3/7] libstdc++: Document timeout and timeout-factor of simd tests

2023-02-15 Thread Matthias Kretz via Gcc-patches
Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * testsuite/experimental/simd/README.md: Document the timeout and timeout-factor directives. Minor typo fixed. --- libstdc++-v3/testsuite/experimental/simd/README.md | 10 -- 1 file changed, 8 insertions(+), 2

[PATCH 1/7] libstdc++: Ensure __builtin_constant_p isn't lost on the way

2023-02-15 Thread Matthias Kretz via Gcc-patches
The more expensive code path should only be taken if it can be optimized away. Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * include/experimental/bits/simd.h (_SimdWrapper::_M_is_constprop_none_of) (_SimdWrapper::_M_is_constprop_all_of): Return false unless

[PATCH 0/7] Work on PR108030 and several simd bugfixes and testsuite improvements

2023-02-15 Thread Matthias Kretz via Gcc-patches
As suggested in PR108030, I used __attribute__ syntax to annotate lambdas as always_inline. In few cases the lambda was meant to be a function boundary and the attribute was omitted. PR108030 mentions a few more functions as problematic. But ideally these should not be inline in some

[PATCH] i386: Relax extract location operand mode requirements

2023-02-15 Thread Uros Bizjak via Gcc-patches
There is no requirement on the mode of the location operand, so any supported integer mode is valid. We can relax extract location operand mode requirement of other patterns involving zero_extract RTX. 2023-02-15 Uroš Bizjak gcc/ChangeLog: * config/i386/i386.md (*cmpqi_ext_1): Use

Re: [PATCH 1/2] c++: factor out TYPENAME_TYPE substitution

2023-02-15 Thread Patrick Palka via Gcc-patches
On Wed, 15 Feb 2023, Jason Merrill wrote: > On 2/15/23 09:21, Patrick Palka wrote: > > On Tue, 14 Feb 2023, Jason Merrill wrote: > > > > > On 2/13/23 09:23, Patrick Palka wrote: > > > > [N.B. this is a corrected version of > > > >

[pushed] analyzer: fix uninit false +ves [PR108664, PR108666, PR108725]

2023-02-15 Thread David Malcolm via Gcc-patches
This patch updates poisoned_value_diagnostic so that, where possible, it checks to see if the value is still poisoned along the execution path seen during feasibility analysis, rather than just that seen in the exploded graph. Integration testing shows this reduction in the number of false

Re: [PATCH] c++: ICE with -fno-elide-constructors and trivial fn [PR101073]

2023-02-15 Thread Jason Merrill via Gcc-patches
On 2/9/23 09:39, Marek Polacek wrote: In constexpr-nsdmi3.C, with -fno-elide-constructors, we don't elide the Y::Y(const Y&) call used to initialize o.c. So store_init_value -> cxx_constant_init must constexpr-evaluate the call to Y::Y(const Y&) in cxx_eval_call_expression. It's a trivial

Re: [PATCH] testsuite: Handle "packed" targets in c-c++-common/auto-init-7.c and -8.c

2023-02-15 Thread Qing Zhao via Gcc-patches
Thank you for fixing this issue. Qing > On Feb 15, 2023, at 2:19 PM, Hans-Peter Nilsson wrote: > > Tested for cris-elf. Ok to commit? > > -- >8 -- > Looks like there's a failed assumption that > sizeof (union U { char u1[5]; int u2; float u3; }) == 8. > However, for "packed" targets like

Re: [PATCH 1/2] c++: factor out TYPENAME_TYPE substitution

2023-02-15 Thread Jason Merrill via Gcc-patches
On 2/15/23 09:21, Patrick Palka wrote: On Tue, 14 Feb 2023, Jason Merrill wrote: On 2/13/23 09:23, Patrick Palka wrote: [N.B. this is a corrected version of https://gcc.gnu.org/pipermail/gcc-patches/2022-November/607443.html ] This patch factors out the TYPENAME_TYPE case of tsubst into a

[PATCH] testsuite: Handle "packed" targets in c-c++-common/auto-init-7.c and -8.c

2023-02-15 Thread Hans-Peter Nilsson via Gcc-patches
Tested for cris-elf. Ok to commit? -- >8 -- Looks like there's a failed assumption that sizeof (union U { char u1[5]; int u2; float u3; }) == 8. However, for "packed" targets like cris-elf, it's 5. These two tests have always failed for cris-elf. I see from

Re: [PATCH] Fix PR target/90458

2023-02-15 Thread Jeff Law via Gcc-patches
On 2/15/23 08:24, Eric Botcazou via Gcc-patches wrote: Hi, this is the incompatibility of -fstack-clash-protection with Windows SEH. Now the Windows ports always enable TARGET_STACK_PROBE, which means that the stack is always probed (out of line) so -fstack-clash-protection does nothing

[og12] Fix 'libgomp.{c-c++-common,fortran}/target-present-*' test cases (was: [OG12][committed] openmp: Add support for the 'present' modifier)

2023-02-15 Thread Thomas Schwinge
Hi! On 2023-02-09T21:17:44+, Kwok Cheung Yeung wrote: > I've ported my patch for supporting the OpenMP 5.1 'present' modifier > and committed it to the devel/omp/gcc-12 development branch: > > 229b705862c openmp: Add support for the 'present' modifier > > Tested with offloading on amdgcn and

Re: [PATCH 1/2]middle-end: Fix wrong overmatching of div-bitmask by using new optabs [PR108583]

2023-02-15 Thread Andrew MacLeod via Gcc-patches
On 2/15/23 12:50, Andrew MacLeod wrote: On 2/15/23 12:13, Tamar Christina wrote: On 2/15/23 07:51, Tamar Christina wrote: void operator_plus::wi_fold (irange , tree type,     const wide_int _lb, const wide_int _ub,     const wide_int _lb, const

Re: Ping^3: [PATCH] libcpp: Handle extended characters in user-defined literal suffix [PR103902]

2023-02-15 Thread Jason Merrill via Gcc-patches
On 9/26/22 15:27, Lewis Hyatt wrote: On Wed, Jun 15, 2022 at 03:06:16PM -0400, Lewis Hyatt wrote: On Tue, Jun 14, 2022 at 05:26:49PM -0400, Lewis Hyatt wrote: Hello- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103902 The attached patch resolves PR preprocessor/103902 as described in the

Re: [PATCH 1/2]middle-end: Fix wrong overmatching of div-bitmask by using new optabs [PR108583]

2023-02-15 Thread Andrew MacLeod via Gcc-patches
On 2/15/23 12:13, Tamar Christina wrote: On 2/15/23 07:51, Tamar Christina wrote: Thanks, lots of useful context there. This second pattern replaces the above into: _6 = _3 +w level_14(D); _7 = _6 / 255; _8 = (unsigned char) _7; Thus removing the need to promote before the

Re: [PATCH 1/2] c++: factor out TYPENAME_TYPE substitution

2023-02-15 Thread Patrick Palka via Gcc-patches
On Tue, 14 Feb 2023, Jason Merrill wrote: > On 2/13/23 09:23, Patrick Palka wrote: > > [N.B. this is a corrected version of > > https://gcc.gnu.org/pipermail/gcc-patches/2022-November/607443.html ] > > > > This patch factors out the TYPENAME_TYPE case of tsubst into a separate > > function

RE: [PATCH 1/2]middle-end: Fix wrong overmatching of div-bitmask by using new optabs [PR108583]

2023-02-15 Thread Tamar Christina via Gcc-patches
> On 2/15/23 07:51, Tamar Christina wrote: > >> In any case, if you disagree I don’t' really see a way forward > >> aside from making this its own pattern running it before the > >> overwidening > >>> pattern. > > I think we should look to see if ranger can be persuaded to > >

[PATCH] PR tree-optimization/108697 - Create a lazy ssa_cache

2023-02-15 Thread Andrew MacLeod via Gcc-patches
This patch implements the suggestion that we have an alternative ssa-cache which does not zero memory, and instead uses a bitmap to track whether a value is currently set or not.  It roughly mimics what path_range_query was doing internally. For sparsely used cases, expecially in large

Re: [PATCH] doc: Suggest fix for -Woverloaded-virtual warnings

2023-02-15 Thread Jason Merrill via Gcc-patches
On 2/15/23 05:37, Jonathan Wakely wrote: OK for trunk? OK. -- >8 -- Users are confused about what this warning means, so add a suggested solution to the documentation. gcc/ChangeLog: * doc/invoke.texi (C++ Dialect Options): Suggest adding a using-declaration to unhide

Re: [PATCH 1/2]middle-end: Fix wrong overmatching of div-bitmask by using new optabs [PR108583]

2023-02-15 Thread Andrew MacLeod via Gcc-patches
On 2/15/23 07:51, Tamar Christina wrote: In any case, if you disagree I don’t' really see a way forward aside from making this its own pattern running it before the overwidening pattern. I think we should look to see if ranger can be persuaded to provide the range of the 16-bit addition,

Re: [PATCH] RISC-V: Bugfix for mode tieable of the rvv bool types

2023-02-15 Thread 盼 李 via Gcc-patches
After some investigation, the mode precision adjusting can help to tell the difference from the VxN1BI to VxN64BI, besides the existing mode_size. Thus I would like to prepare the patch for the precision adjustment only first. Unfortunately, there is one selftest failure right now when I try to

[PATCH] reload: Handle generating reloads that also clobbers flags

2023-02-15 Thread Hans-Peter Nilsson via Gcc-patches
Regtested cris-elf with its LEGITIMIZE_RELOAD_ADDRESS disabled, where it regresses gcc.target/cris/rld-legit1.c; as expected, because that test guards proper function of its LEGITIMIZE_RELOAD_ADDRESS i.e., that there's no sign of decomposed address elements. LRA also causes a similar

[PATCH] testsuite/i386: Cleanup target selectors in i386 target directory.

2023-02-15 Thread Uros Bizjak via Gcc-patches
gcc/testsuite/ChangeLog: 2023-02-15 Uroš Bizjak * g++.target/i386/empty-class2.C (dg-additional-options): Remove. * gcc.target/i386/avx512fp16-reduce-op-2.c: Ditto. * gcc.target/i386/pr99464.c: Ditto. * gcc.target/i386/pr103541.c (dg-do): Compile for !ia32 target. *

[PATCH] i386: Rename extr_register_operand to int248_register_operand

2023-02-15 Thread Uros Bizjak via Gcc-patches
No functional changes. gcc/ChangeLog: 2023-02-15 Uroš Bizjak * config/i386/predicates.md (int248_register_operand): Rename from extr_register_operand. * config/i386/i386.md (*extv): Update for renamed predicate. (*extzx): Ditto. (*ashl3_doubleword_mask): Use

3D Printing Software - Gcc 

2023-02-15 Thread Zoe Smith via Gcc-patches
Hello Gcc , Hope You are doing well! I Quickly wanted to understand if would you be interested in reaching out for the mailing list of " 3D Printing Software" Users, Clients & Customers across the world? We also have the data list of below mentioned users: ü Fusion 360. ü

[PATCH] Fix PR target/90458

2023-02-15 Thread Eric Botcazou via Gcc-patches
Hi, this is the incompatibility of -fstack-clash-protection with Windows SEH. Now the Windows ports always enable TARGET_STACK_PROBE, which means that the stack is always probed (out of line) so -fstack-clash-protection does nothing more. Tested on x86-64/Windows and Linux, OK for all active

Re: [PATCH v2] warn-access: wrong -Wdangling-pointer with labels [PR106080]

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Wed, Feb 15, 2023 at 08:46:07AM -0500, Marek Polacek wrote: > > Perhaps add dg-bogus above just to make it more clear what > > we are testing in the test? > > Ok, here it is. Ok? Sure, thanks. > PR middle-end/106080 > > gcc/ChangeLog: > > * gimple-ssa-warn-access.cc

[PATCH v2] warn-access: wrong -Wdangling-pointer with labels [PR106080]

2023-02-15 Thread Marek Polacek via Gcc-patches
On Wed, Feb 15, 2023 at 10:50:08AM +0100, Jakub Jelinek wrote: > On Tue, Feb 14, 2023 at 10:48:15PM -0500, Marek Polacek via Gcc-patches wrote: > > -Wdangling-pointer warns when the address of a label escapes. This > > causes grief in OCaml () as > >

[Patch] harden-sls-6.c: fix warning on LLP64

2023-02-15 Thread Jonathan Yong via Gcc-patches
gcc/testsuite/ChangeLog: * gcc.target/i386/harden-sls-6.c: fix warning on LLP64 targets. Attached patch OK?From c0572a1e95c6f569980d6b7454c8dc293f07389e Mon Sep 17 00:00:00 2001 From: Jonathan Yong <10wa...@gmail.com> Date: Wed, 15 Feb 2023 13:42:12 + Subject: [PATCH]

[PATCH] doc: Suggest fix for -Woverloaded-virtual warnings

2023-02-15 Thread Jonathan Wakely via Gcc-patches
OK for trunk? -- >8 -- Users are confused about what this warning means, so add a suggested solution to the documentation. gcc/ChangeLog: * doc/invoke.texi (C++ Dialect Options): Suggest adding a using-declaration to unhide functions. --- gcc/doc/invoke.texi | 4 1 file

RE: [PATCH 1/2]middle-end: Fix wrong overmatching of div-bitmask by using new optabs [PR108583]

2023-02-15 Thread Tamar Christina via Gcc-patches
> > >>> In any case, if you disagree I don’t' really see a way forward > > >>> aside from making this its own pattern running it before the > > >>> overwidening > > pattern. > > >> I think we should look to see if ranger can be persuaded to provide > > >> the range of the 16-bit addition, even

[PATCH] RISC-V: Rename tu_preds to none_tu_preds [NFC]

2023-02-15 Thread juzhe . zhong
From: Ju-Zhe Zhong To be consistent with other naming of preds array variable. Change tu_preds into none_tu_preds which indicate such preds include vop and vop_tu combinations. gcc/ChangeLog: * config/riscv/riscv-vector-builtins-functions.def (vadc): Rename. (vsbc): Ditto.

[pushed] testsuite, objective-c: Fix a testcase on Windows.

2023-02-15 Thread Iain Sandoe via Gcc-patches
tested by 'nightstrike' on Windows, and on x86_64-darwin21, pushed to master, thanks, Iain --- 8< --- Windows needs to use uintptr_t to represent an integral pointer type (long is not the right type there). Patch from 'nightstike'. Signed-off-by: Iain Sandoe gcc/testsuite/ChangeLog:

Re: [patch] bpf: Fix double whitespace warning

2023-02-15 Thread Jose E. Marchesi via Gcc-patches
> Hi! > > Since a recent commit, the BPF target produces a new warning due to > two consecutive non-quoted spaces in a message. This'll fix it: > > gcc/ > * config/bpf/bpf.cc (bpf_option_override): Fix doubled space. > > > Ok? OK. Thanks for the patch. (Sorry I didn't fix this when you

Re: [PATCH] LoongArch: Fix multiarch tuple canonization

2023-02-15 Thread WANG Xuerui
Hi, On 2023/2/13 18:38, Xi Ruoyao wrote: Multiarch tuple will be coded in file or directory names in multiarch-aware distros, so one ABI should have only one multiarch tuple. For example, "--target=loongarch64-linux-gnu --with-abi=lp64s" and "--target=loongarch64-linux-gnusf" should both set

Re: [PATCH] Speedup DF dataflow solver

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Tue, Feb 14, 2023 at 03:21:53PM +0100, Richard Biener wrote: > The following makes sure to process blocks that follow the current > block in the iteration order in the same iteration and only postpone > blocks that would be visited earlier to the next iteration. > > For the all.i testcase in

[PATCH] Update baseline symbols for aarch64-linux

2023-02-15 Thread Andreas Schwab via Gcc-patches
libstdc++-v3/ * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update. --- .../aarch64-linux-gnu/baseline_symbols.txt| 90 +++ 1 file changed, 90 insertions(+) diff --git a/libstdc++-v3/config/abi/post/aarch64-linux-gnu/baseline_symbols.txt

Re: [Patch] libgomp: Fix reverse-offload for GOMP_MAP_TO_PSET

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Thu, Feb 09, 2023 at 10:23:53AM +0100, Tobias Burnus wrote: > libgomp: Fix reverse-offload for GOMP_MAP_TO_PSET > > libgomp/ > * target.c (gomp_target_rev): Dereference ptr > to get device address. > * libgomp.fortran/reverse-offload-5.f90: Add test > for unallocated

Re: [Patch] libgomp: Fix 'target enter data' with always pointer

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Mon, Feb 13, 2023 at 09:28:15PM +0100, Tobias Burnus wrote: > libgomp: Fix 'target enter data' with always pointer > > As GOMP_MAP_ALWAYS_POINTER operates on the previous map item, ensure that > with 'target enter data' both are passed together to gomp_map_vars_internal. > >

Re: [Patch][v2] OpenMP/Fortran: Fix loop-iter var privatization with !$OMP LOOP [PR108512]

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Fri, Feb 10, 2023 at 12:52:47PM +0100, Tobias Burnus wrote: > > I'm afraid this is needed but insufficient. > > I think > > case EXEC_OMP_MASKED_TASKLOOP: > > case EXEC_OMP_MASKED_TASKLOOP_SIMD: > > case EXEC_OMP_MASTER_TASKLOOP: > > case

[patch] bpf: Fix double whitespace warning

2023-02-15 Thread Jan-Benedict Glaw
Hi! Since a recent commit, the BPF target produces a new warning due to two consecutive non-quoted spaces in a message. This'll fix it: gcc/ * config/bpf/bpf.cc (bpf_option_override): Fix doubled space. Ok? MfG, JBG diff --git a/gcc/config/bpf/bpf.cc b/gcc/config/bpf/bpf.cc index

Re: [committed] powerpc: Fix up expansion for WIDEN_MULT_PLUS_EXPR [PR108787]

2023-02-15 Thread Segher Boessenkool
Hi! On Wed, Feb 15, 2023 at 10:18:29AM +0100, Jakub Jelinek wrote: > If we wanted to get back the signed op1 * op2 + op3 all in the DImode > into TImode op0, we'd need to introduce a new tree code next to > WIDEN_MULT_PLUS_EXPR and maddMN4 expander, because I'm afraid it can't > be done at

Re: [PATCH] warn-access: wrong -Wdangling-pointer with labels [PR106080]

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Tue, Feb 14, 2023 at 10:48:15PM -0500, Marek Polacek via Gcc-patches wrote: > -Wdangling-pointer warns when the address of a label escapes. This > causes grief in OCaml () as > well as in the kernel: >

Re: [PATCH] LoongArch: Fix multiarch tuple canonization

2023-02-15 Thread Yujie Yang
On Tue, Feb 14, 2023 at 11:32:00AM +0800, Lulu Cheng wrote: > add yangyujie. Looks good to me. Thanks for the forward!

[committed] powerpc: Fix up expansion for WIDEN_MULT_PLUS_EXPR [PR108787]

2023-02-15 Thread Jakub Jelinek via Gcc-patches
Hi! WIDEN_MULT_PLUS_EXPR as documented has the factor operands with the same precision and the addend and result another one at least twice as wide. Similarly, {,u}maddMN4 is documented as 'maddMN4' Multiply operands 1 and 2, sign-extend them to mode N, add operand 3, and store the

Re: [patch, gfortran.dg] Allow test to pass on mingw

2023-02-15 Thread Tobias Burnus
Hi Jerry, On 21.01.23 04:21, Jerry DeLisle via Fortran wrote: Similar to a patch I committed a while ago for Cygwin, the attached patch allows it to pass on the mingw version of gfortran. It is trivial. Ok for trunk? As you wrote, adding '*-ming*' alongside '*-cygwin*' as target selector is

Re: [PATCH (pushed)] docs: document new --param=asan-kernel-mem-intrinsic-prefix

2023-02-15 Thread Jakub Jelinek via Gcc-patches
On Wed, Feb 15, 2023 at 09:39:11AM +0100, Martin Liška wrote: > gcc/ChangeLog: > > * doc/invoke.texi: Document --param=asan-kernel-mem-intrinsic-prefix. Ok, thanks. Jakub

[PATCH] RISC-V: Normalize SEW = 64 handling into a simplified function

2023-02-15 Thread juzhe . zhong
From: Ju-Zhe Zhong Co-authored-by: kito-cheng gcc/ChangeLog: * config/riscv/riscv-protos.h (sew64_scalar_helper): New function. * config/riscv/riscv-v.cc (has_vi_variant_p): Adjust. (sew64_scalar_helper): New function. * config/riscv/vector.md: Normalization.

[PATCH (pushed)] docs: document new --param=asan-kernel-mem-intrinsic-prefix

2023-02-15 Thread Martin Liška
gcc/ChangeLog: * doc/invoke.texi: Document --param=asan-kernel-mem-intrinsic-prefix. --- gcc/doc/invoke.texi | 4 1 file changed, 4 insertions(+) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 26de582e41e..0a43720f614 100644 --- a/gcc/doc/invoke.texi +++