Re: [PATCH 1/3] Rework 128-bit complex multiply and divide, PR target/107299

2022-12-06 Thread Kewen.Lin via Gcc-patches
Hi Mike, on 2022/12/7 14:44, Michael Meissner wrote: > On Tue, Dec 06, 2022 at 05:36:54PM +0800, Kewen.Lin wrote: >> Hi Mike, >> >> Thanks for fixing this! >> >> Could you help to elaborate why we need to disable it during libgcc building? > > When you are building libgcc, you are building the __

Re: [PATCH v2 1/2] Allow subtarget customization of CC1_SPEC

2022-12-06 Thread Sebastian Huber
On 07.12.22 08:10, Thomas Schwinge wrote: Hi! On 2022-12-07T07:04:10+0100, Sebastian Huber wrote: On 06.12.22 22:06, Thomas Schwinge wrote: I suppose I just fail to see some detail here, but: On 2022-11-21T08:25:25+0100, Sebastian Huber wrote: gcc/ChangeLog: * gcc.cc (SUBTARG

Re: [PATCH v2 1/2] Allow subtarget customization of CC1_SPEC

2022-12-06 Thread Thomas Schwinge
Hi! On 2022-12-07T07:04:10+0100, Sebastian Huber wrote: > On 06.12.22 22:06, Thomas Schwinge wrote: > I suppose I just fail to see some detail here, but: > >> On 2022-11-21T08:25:25+0100, Sebastian >> Huber wrote: >>> gcc/ChangeLog: >>> >>>* gcc.cc (SUBTARGET_CC1_SPEC): Define if not d

Re: [PATCH] i386: Avoid fma_chain for -march=alderlake and sapphirerapids.

2022-12-06 Thread Uros Bizjak via Gcc-patches
On Wed, Dec 7, 2022 at 7:36 AM Hongyu Wang wrote: > > For Alderlake there is similar issue like PR 81616, enable > avoid_fma256_chain will also benefit on Intel latest platforms > Alderlake and Sapphire Rapids. > > Bootstrapped/regtested on x86_64-pc-linux-gnu{-m32,}. > > Ok for master? > > gcc/Ch

Re: [PATCH 1/3] Rework 128-bit complex multiply and divide, PR target/107299

2022-12-06 Thread Michael Meissner via Gcc-patches
On Tue, Dec 06, 2022 at 05:36:54PM +0800, Kewen.Lin wrote: > Hi Mike, > > Thanks for fixing this! > > Could you help to elaborate why we need to disable it during libgcc building? When you are building libgcc, you are building the __mulkc3, __divkc3 functions. The mapping in the compiler interf

[PATCH] i386: Avoid fma_chain for -march=alderlake and sapphirerapids.

2022-12-06 Thread Hongyu Wang via Gcc-patches
For Alderlake there is similar issue like PR 81616, enable avoid_fma256_chain will also benefit on Intel latest platforms Alderlake and Sapphire Rapids. Bootstrapped/regtested on x86_64-pc-linux-gnu{-m32,}. Ok for master? gcc/ChangeLog: * config/i386/x86-tune.def (X86_TUNE_AVOID_256FMA_

Re: [PATCH v2 1/2] Allow subtarget customization of CC1_SPEC

2022-12-06 Thread Sebastian Huber
On 06.12.22 22:06, Thomas Schwinge wrote: Hi! I suppose I just fail to see some detail here, but: On 2022-11-21T08:25:25+0100, Sebastian Huber wrote: gcc/ChangeLog: * gcc.cc (SUBTARGET_CC1_SPEC): Define if not defined. (cc1_spec): Append SUBTARGET_CC1_SPEC. --- v2: Append SUBT

Re: [PATCH v3, rs6000] Enable have_cbranchcc4 on rs6000

2022-12-06 Thread Kewen.Lin via Gcc-patches
on 2022/12/7 13:24, HAO CHEN GUI wrote: > Hi Kewen, > Thanks so much for your review comments. I will fix them. > > 在 2022/12/7 11:06, Kewen.Lin 写道: >> Does this issue which relies on the fix for generic part make bootstrapping >> fail? >> If no, how many failures it can cause? I'm thinking if

Re: [PATCH v3, rs6000] Enable have_cbranchcc4 on rs6000

2022-12-06 Thread HAO CHEN GUI via Gcc-patches
Hi Kewen, Thanks so much for your review comments. I will fix them. 在 2022/12/7 11:06, Kewen.Lin 写道: > Does this issue which relies on the fix for generic part make bootstrapping > fail? > If no, how many failures it can cause? I'm thinking if we can commit this > firstly, > then in the commi

[PATCH v2] Add a new conversion for conditional ternary set into ifcvt [PR106536]

2022-12-06 Thread HAO CHEN GUI via Gcc-patches
Hi, This patch adds a new conversion to convert a certain branch to conditional ternary set in ifcvt. The branch commonly has following insns. cond_jump ? pc : label setcc (neg/subreg) label: set a constant cond_jump and setcc use the same CC reg and neg/subreg is optional. The br

Re: [PATCH v3, rs6000] Enable have_cbranchcc4 on rs6000

2022-12-06 Thread Kewen.Lin via Gcc-patches
Hi Haochen, on 2022/12/6 13:44, HAO CHEN GUI wrote: > Hi, > This patch enables "have_cbranchcc4" on rs6000 by defining > a "cbranchcc4" expander. "have_cbrnachcc4" is a flag in ifcvt.cc > to indicate if branch by CC bits is invalid or not. With this > flag enabled, some branches can be optimized

Re: [PATCH] Fix aarch64 PR 99657: ICE with SVE types used without an error

2022-12-06 Thread Kewen.Lin via Gcc-patches
Hi, In the recent discussion on how to make some built-in type only valid for some target features efficiently[1], Andrew mentioned this patch which he made previously (Thanks!). I confirmed it can help rs6000 related issue, and noticed PR99657 is still opened, so I think we still want this to be

[PATCH] doc: Correct a clerical error in the document.

2022-12-06 Thread Lulu Cheng
gcc/ChangeLog: * doc/rtl.texi: Correct a clerical error in the document. --- gcc/doc/rtl.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi index 43c9ee8bffe..44858d12892 100644 --- a/gcc/doc/rtl.texi +++ b/gcc/doc/rtl.texi @@ -214

RE: [EXTERNAL] Re: [PATCH] Fix count comparison in ipa-cp

2022-12-06 Thread Eugene Rozenfeld via Gcc-patches
I initially ran into this while reviving autoprofiledbootstrap build. I was able to create a simple reliable test for this bug and captured it in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108000 I also included the test case in the updated patch below. Eugene ===

Re: AArch64: Add UNSPECV_PATCHABLE_AREA [PR98776]

2022-12-06 Thread Pop, Sebastian via Gcc-patches
Thanks Richard for your review and for pointing out the issue with BTI. The current patch removes the existing BTI instruction, and then adds the BTI hint when expanding the patchable_area pseudo. The attached patch passed bootstrap and regression test on arm64-linux. Ok to commit to gcc trun

[committed] analyzer: don't create bindings or binding keys for empty regions [PR107882]

2022-12-06 Thread David Malcolm via Gcc-patches
PR analyzer/107882 reports an ICE, due to trying to get a compound svalue for this binding: cluster for: a: key: {bytes 0-3} value: {UNKNOWN()} key: {empty} value: {UNKNOWN()} key: {bytes 4-7} value: {UNKNOWN()} where there's an binding to the unknown value of z

Re: [PATCH] libstdc++: Add error handler for

2022-12-06 Thread Jonathan Wakely via Gcc-patches
On Wed, 30 Nov 2022 at 18:00, François Dumont wrote: > > On 30/11/22 14:07, Jonathan Wakely wrote: > > On Wed, 30 Nov 2022 at 11:57, Jonathan Wakely wrote: > >> > >> > >> On Wed, 30 Nov 2022 at 11:54, Jonathan Wakely wrote: > >>> > >>> > >>> On Wed, 30 Nov 2022 at 06:04, François Dumont via Libs

[committed] libstdc++: Fix test that fails due to name clash with old glibc [PR107979]

2022-12-06 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- This test was recently modified to check that the library doesn't use __unused anywhere, because that's a macro in newlib. But it's also a macro in old versions of glibc, so the test now fails for those targets. Disable that check for those targets a

[committed] libstdc++: Add casts for integer-like difference type [PR107871]

2022-12-06 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- libstdc++-v3/ChangeLog: PR libstdc++/107871 * include/std/format (_Iter_sink::_M_overflow): Add cast to size_t. (_Iter_sink::_M_make_span): Use typedef instead of decltype. * testsuite/std/format/funct

Re: [PATCH] libstdc++: Make chrono::hh_mm_ss more compact

2022-12-06 Thread Jonathan Wakely via Gcc-patches
I've pushed this to trunk. Tested x86_64-linux. On Mon, 21 Nov 2022 at 20:44, Jonathan Wakely via Libstdc++ wrote: > > While finishing the time zone support for C++20, I noticed that the > chrono::hh_mm_ss type is surprisingly large: 40 bytes. That's because > we use duration for each of the four

[committed] libstdc++: Add hint to compiler about vector invariants [PR106434]

2022-12-06 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- The PR shows a bogus warning where jump threading generates code for the undefined case that the insertion point is a value-initialized iterator but _M_finish and _M_end_of_storage are unequal (so at least one must be non-null). Using __builtin_unrea

[committed] libstdc++: Add nodiscard attribute to mutex try_lock functions

2022-12-06 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- libstdc++-v3/ChangeLog: * include/bits/std_mutex.h (mutex): Add nodiscard attribute to try_lock member function. * include/bits/unique_lock.h (unique_lock): Likewise for try_lock, try_lock_until, try_lock_for member f

[committed] libstdc++: The Trouble with Tribbles

2022-12-06 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux. Pushed to trunk. -- >8 -- Fix digit grouping for integers formatted with "{:#Lx}" which were including the "0x" prefix in the grouped digits. This resulted in output like "0,xff,fff" instead of "0xff,fff". Also change std:::basic_format_parse_context to not throw for an arg-

Re: [PATCH] libgcc: Fix uninitialized RA signing on AArch64 [PR107678]

2022-12-06 Thread Szabolcs Nagy via Gcc-patches
The 12/06/2022 11:58, Wilco Dijkstra wrote: > > i don't think how[*RA_STATE] can ever be set to REG_SAVED_OFFSET, > > this pseudo reg is not spilled to the stack, it is reset to 0 in > > each frame and then toggled within a frame. > > It's is just a state, we can use any state we want since it is

Re: [PATCH v2 1/2] Allow subtarget customization of CC1_SPEC

2022-12-06 Thread Thomas Schwinge
Hi! I suppose I just fail to see some detail here, but: On 2022-11-21T08:25:25+0100, Sebastian Huber wrote: > gcc/ChangeLog: > > * gcc.cc (SUBTARGET_CC1_SPEC): Define if not defined. > (cc1_spec): Append SUBTARGET_CC1_SPEC. > --- > v2: Append SUBTARGET_CC1_SPEC directly to cc1_spec

[PATCH 2/4] libbacktrace: detect executable path on windows

2022-12-06 Thread Björn Schäpers
From: Björn Schäpers This is actually needed so that libstdc++'s implementation to be able to work on windows. Tested on x86_64-linux and i686-w64-mingw32. -- >8 -- * configure.ac: Add a check for windows.h. * configure, config.h.in: Regenerate. * fileline.c: Add windo

[PATCH 3/4] libbacktrace: work with aslr on windows

2022-12-06 Thread Björn Schäpers
From: Björn Schäpers Any underflow which might happen, will be countered by an overflow in dwarf.c. Tested on x86_64-linux and i686-w64-mingw32. -- >8 -- Fixes https://github.com/ianlancetaylor/libbacktrace/issues/89 and https://github.com/ianlancetaylor/libbacktrace/issues/82. * peco

[PATCH 4/4] libbacktrace: get debug information for loaded dlls

2022-12-06 Thread Björn Schäpers
From: Björn Schäpers Fixes https://github.com/ianlancetaylor/libbacktrace/issues/53, except that libraries loaded after the backtrace_initialize are not handled. But as far as I can see that's the same for elf. Tested on x86_64-linux and i686-w64-mingw32. -- >8 -- * pecoff.c (coff_add)

[PATCH 1/4] libbacktrace: change all pc related variables to uintptr_t

2022-12-06 Thread Björn Schäpers
From: Björn Schäpers It's the right thing to do, since the PC shouldn't go out of the uintptr_t domain, and in backtrace_pcinfo the pc is uintptr_t. This is a preparation for a following patch. Tested on x86_64-linux and i686-w64-mingw32. -- >8 -- * dwarf.c: changed variables holding p

[PATCH v4 15/19] modula2 front end: cc1gm2 additional non modula2 source files

2022-12-06 Thread Gaius Mulley via Gcc-patches
Version 4 contains two missed feedback suggestions (namespace in m2pp.cc) and use build_nonstandard_integer_type in gm2-lang.cc:gm2_type_for_size. This patch set contains the .h, .cc and .flex files found in gcc/m2. The files are tightly coupled with the gimple interface (see 04-gimple-interfac

Re: [PATCH] range-op-float: Fix up ICE in lower_bound [PR107975]

2022-12-06 Thread Toon Moene
On 12/5/22 19:35, Jakub Jelinek via Gcc-patches wrote: Hi! According to https://gcc.gnu.org/pipermail/gcc-regression/2022-December/077258.html Seen in the wild too - compiling one of the two weather forecasting programs I use: during GIMPLE pass: dom /home/toon/scratch/hm_home/my_CY46h1/l

[committed] analyzer: use __attribute__((nonnull)) at top level of analysis [PR106325]

2022-12-06 Thread David Malcolm via Gcc-patches
PR analyzer/106325 reports false postives from -Wanalyzer-null-dereference on code like this: __attribute__((nonnull)) void foo_a (Foo *p) { foo_b (p); switch (p->type) { /* ... */ } } where foo_b (p) has a: g_return_if_fail (p); that expands to: if (!p) { retu

[committed] contrib: doxygen: add gcc/analyzer subdirectory to INPUT

2022-12-06 Thread David Malcolm via Gcc-patches
Lightly tested with doxygen; with this patch it generates docs for the analyzer internals (e.g. class hierarchies). Pushed to trunk as r13-4519-gfa19bfbb0a1995. contrib/ChangeLog: * gcc.doxy (INPUT): Add gcc/analyzer subdirectory. Signed-off-by: David Malcolm --- contrib/gcc.doxy | 2 +

[committed] analyzer: update internal docs

2022-12-06 Thread David Malcolm via Gcc-patches
Successfully built on x86_64-pc-linux-gnu. Pushed to trunk as r13-4518-g14b0d6c4bd973c. gcc/ChangeLog: * doc/analyzer.texi: Drop out-of-date ideas for other checkers. Signed-off-by: David Malcolm --- gcc/doc/analyzer.texi | 10 -- 1 file changed, 10 deletions(-) diff --git a/gc

[committed] analyzer: split out more stuff from region-model-impl-calls.cc

2022-12-06 Thread David Malcolm via Gcc-patches
Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Pushed to trunk as r13-4517-g861c917a972dc9. gcc/ChangeLog: * Makefile.in (ANALYZER_OBJS): Add analyzer/call-details.o, analyzer/kf-analyzer.o, and kf-lang-cp.o. gcc/analyzer/ChangeLog: * analyzer.h (register_k

Re: [PATCH] c++: NTTP object wrapper substitution fixes [PR103346, ...]

2022-12-06 Thread Patrick Palka via Gcc-patches
On Tue, 6 Dec 2022, Patrick Palka wrote: > This patch fixes some issues with substitution into a C++20 template > parameter object wrapper: > > * The first testcase demonstrates a situation where the same_type_p > assert in relevant case of tsubst_copy doesn't hold, because (partial) > substi

Qualified Contacts - DISTRIBUTECH International 2023

2022-12-06 Thread Brenda Jerez
Hello, I'm happy to give you a current report on the email participant database for "DISTRIBUTECH International 2023". Delegates are: * Transmission grid owner / operator * Distribution grid owner / operator * Energy service provider * Publicly owned * Municipal * IOU / Co

Re: [GCC][PATCH v2] arm: Add pacbti related multilib support for armv8.1-m.main.

2022-12-06 Thread Richard Earnshaw via Gcc-patches
On 31/10/2022 15:36, Srinath Parvathaneni via Gcc-patches wrote: Hi, This patch adds the support for pacbti multlilib linking by making "-mbranch-protection=none" as default in the command line for all M-profile targets and uses "-mbranch-protection=none" for multilib matching. If any valid v

[PATCH] c++: NTTP object wrapper substitution fixes [PR103346, ...]

2022-12-06 Thread Patrick Palka via Gcc-patches
This patch fixes some issues with substitution into a C++20 template parameter object wrapper: * The first testcase demonstrates a situation where the same_type_p assert in relevant case of tsubst_copy doesn't hold, because (partial) substitution of {int,} into the VIEW_CONVERT_EXPR wrapper yi

Re: [PATCH 10/15 V4] arm: Implement cortex-M return signing address codegen

2022-12-06 Thread Andrea Corallo via Gcc-patches
Richard Earnshaw writes: > On 06/12/2022 15:46, Andrea Corallo wrote: >> Hi Richard, >> thanks for reviewing. >> Just one clarification before I complete the respin of this patch. >> Richard Earnshaw writes: >> [...] >> >>> Also, I think (out of an abundance of caution) we really need a >>> sch

Re: [PATCH 10/15 V4] arm: Implement cortex-M return signing address codegen

2022-12-06 Thread Richard Earnshaw via Gcc-patches
On 06/12/2022 15:46, Andrea Corallo wrote: Hi Richard, thanks for reviewing. Just one clarification before I complete the respin of this patch. Richard Earnshaw writes: [...] Also, I think (out of an abundance of caution) we really need a scheduling barrier placed before calls to gen_au

Re: [V3][PATCH 1/2] Update -Warray-bounds with -fstrict-flex-arrays.

2022-12-06 Thread Richard Biener via Gcc-patches
On Tue, 6 Dec 2022, Qing Zhao wrote: > A. add the following to clarify the relationship between -Warray-bounds > and the LEVEL of -fstrict-flex-array: > > By default, the trailing array of a structure will be treated as a > flexible array member by '-Warray-bounds' or '-War

[V3][PATCH 2/2] Add a new warning option -Wstrict-flex-arrays.

2022-12-06 Thread Qing Zhao via Gcc-patches
'-Wstrict-flex-arrays' Warn about inproper usages of flexible array members according to the LEVEL of the 'strict_flex_array (LEVEL)' attribute attached to the trailing array field of a structure if it's available, otherwise according to the LEVEL of the option '-fstrict-fl

Re: [V2][PATCH 1/1] Add a new warning option -Wstrict-flex-arrays.

2022-12-06 Thread Qing Zhao via Gcc-patches
Sorry, Please ignore this email. Qing > On Dec 6, 2022, at 11:14 AM, Qing Zhao wrote: > > '-Wstrict-flex-arrays' > Warn about inproper usages of flexible array members according to > the LEVEL of the 'strict_flex_array (LEVEL)' attribute attached to > the trailing array field of a s

[V2][PATCH 1/1] Add a new warning option -Wstrict-flex-arrays.

2022-12-06 Thread Qing Zhao via Gcc-patches
'-Wstrict-flex-arrays' Warn about inproper usages of flexible array members according to the LEVEL of the 'strict_flex_array (LEVEL)' attribute attached to the trailing array field of a structure if it's available, otherwise according to the LEVEL of the option '-fstrict-fl

[V3][PATCH 1/2] Update -Warray-bounds with -fstrict-flex-arrays.

2022-12-06 Thread Qing Zhao via Gcc-patches
A. add the following to clarify the relationship between -Warray-bounds and the LEVEL of -fstrict-flex-array: By default, the trailing array of a structure will be treated as a flexible array member by '-Warray-bounds' or '-Warray-bounds=N' if it is declared as either a

[V3][PATCH 0/2]Update -Warray-bounds with -fstrict-flex-arrays

2022-12-06 Thread Qing Zhao via Gcc-patches
Hi, this is the 3rd version of the patch. Per Richard's request, I split the patch into two seperate patches: 1. Update -Warray-bounds with -fstrict-flex-arrays. 2. Add a new warning option -Wstrict-flex-arrays. I have bootstrapped and regression tested on both X86 and aarch64 without any issu

Re: [PATCH 7/8]AArch64: Consolidate zero and sign extension patterns and add missing ones.

2022-12-06 Thread Richard Sandiford via Gcc-patches
Tamar Christina via Gcc-patches writes: > Hi All, > > The target has various zero and sign extension patterns. These however live > in > various locations around the MD file and almost all of them are split > differently. Due to the various patterns we also ended up missing valid > extensions.

Re: [PATCH 10/15 V4] arm: Implement cortex-M return signing address codegen

2022-12-06 Thread Andrea Corallo via Gcc-patches
Hi Richard, thanks for reviewing. Just one clarification before I complete the respin of this patch. Richard Earnshaw writes: [...] > Also, I think (out of an abundance of caution) we really need a > scheduling barrier placed before calls to gen_aut_nop() pattern is > emitted, to ensure that

Re: Extend fold_vec_perm to fold VEC_PERM_EXPR in VLA manner

2022-12-06 Thread Richard Sandiford via Gcc-patches
Prathamesh Kulkarni via Gcc-patches writes: > On Fri, 4 Nov 2022 at 14:00, Prathamesh Kulkarni > wrote: >> >> On Mon, 31 Oct 2022 at 15:27, Richard Sandiford >> wrote: >> > >> > Prathamesh Kulkarni writes: >> > > On Wed, 26 Oct 2022 at 21:07, Richard Sandiford >> > > wrote: >> > >> >> > >> Sor

Re: Patch [0/3] for PR target/107299 (GCC does not build on PowerPC when long double is IEEE 128-bit)

2022-12-06 Thread Jakub Jelinek via Gcc-patches
On Tue, Dec 06, 2022 at 08:56:09AM -0600, Segher Boessenkool wrote: > > In the past, _Float128 was a C extended type, > > but now it is a part of the C/C++ 2x standards. > > Only if you select a new enough -std=, it still is an extended type if > not? No, as an extension _Float{16,32,64,1

Re: Patch [0/3] for PR target/107299 (GCC does not build on PowerPC when long double is IEEE 128-bit)

2022-12-06 Thread Segher Boessenkool
Hi! On Tue, Nov 01, 2022 at 10:39:04PM -0400, Michael Meissner wrote: > The basic issue is internally within GCC there are several types for 128-bit > floating point. The types are: > > 1)The long double type (TFmode or possibly DFmode). Please be very careful to call types types an

[PATCH v3 14/19] modula2 front end: gimple interface remainder

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patchset contains the gimple interface. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/gcc/m2/gm2-gcc/init.cc --- /dev/null 2022-08-24 16:22:16.88870 +0100 +++ gcc-git-devel-modula2/gcc/m2/gm2-gcc/init.cc2

[PATCH v3 11/19] modula2 front end: gimple interface *[a-d]*.cc

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patchset contains the gimple interface. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/gcc/m2/gm2-gcc/m2assert.cc --- /dev/null 2022-08-24 16:22:16.88870 +0100 +++ gcc-git-devel-modula2/gcc/m2/gm2-gcc/m2assert.cc

[PATCH v3 0/19] modula-2 front end patches overview

2022-12-06 Thread Gaius Mulley via Gcc-patches
Here are the latest modula-2 front end patches. Since the posting in https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603161.html I've rewritten the python3 documentation scripts (feedback from patchset 16) and applied all the suggestions from the feedback in patchset 15 (gm2-lang.cc). Al

[PATCH v3 13/19] modula2 front end: gimple interface *[g-m]*.cc

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patchset contains the gimple interface. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/gcc/m2/gm2-gcc/m2linemap.cc --- /dev/null 2022-08-24 16:22:16.88870 +0100 +++ gcc-git-devel-modula2/gcc/m2/gm2-gcc/m2linemap.c

[PATCH v3 16/19] modula2 front end: bootstrap and documentation tools

2022-12-06 Thread Gaius Mulley via Gcc-patches
Hi Martin, here is the revised patch having applied all previous recommendations: https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603436.html. Is this ok now? Thanks for the improvement suggestions. --8<--8<--8<--8<--8<--8< diff -ruw /d

[PATCH v3 2/19] modula2 front end: Make-lang.in

2022-12-06 Thread Gaius Mulley via Gcc-patches
The makefile fragment for modula2 which builds the gm2 driver and cc1gm2. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/gcc/m2/Make-lang.in --- /dev/null 2022-08-24 16:22:16.88870 +0100 +++ gcc-git-devel-modula2/gcc/m

[PATCH v3 15/19] modula2 front end: cc1gm2 additional non modula2 source files

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set contains the .h, .cc and .flex files found in gcc/m2. The files are tightly coupled with the gimple interface (see 04-gimple-interface) and built using the rules found in (01-03-make). --8<--8<--8<--8<--8<--8< diff -ruw /dev/nul

[PATCH v3 4/19] modula2 front end: libgm2/libm2pim contents

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set consists of the makefiles, autoconf sources necessary to build the various libgm2/libm2pim libraries. The c/c++/h files are included in the patch set. The modula-2 sources are found in gcc/m2/ as they are used by the compiler. --8<--8<--8<--8<-

[PATCH v3 17/19] modula2 front end: dejagnu expect library scripts

2022-12-06 Thread Gaius Mulley via Gcc-patches
Here are the dejagnu expect library scripts for the gm2 testsuite. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/gcc/testsuite/lib/gm2.exp --- /dev/null 2022-08-24 16:22:16.88870 +0100 +++ gcc-git-devel-modula2/gcc/te

[PATCH v3 3/19] modula2 front end: gm2 driver files.

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patchset contains the c++, h and option related files necessary to build the driver program gm2. The patch also consists of the autoconf/configure related build infastructure sources found in gcc/m2. The reviewer might need to look at the 01-02-make patchset. The gm2 driver is heavily bas

[PATCH v3 8/19] modula2 front end: libgm2 contents

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set consists of the libgm2 makefile, autoconf sources necessary to build the libm2pim, libm2iso, libm2min, libm2cor and libm2log. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/libgm2/ChangeLog --- /dev/null 202

[PATCH v3 1/19] modula2 front end: changes outside gcc/m2, libgm2 and gcc/testsuite.

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set contains the non machine generated changes found in / for example the language die and documentation changes. It also contains the changes to the top level build Makefile infastructure and the install.texi sourcebuild.texi documentation. --8<--8<--8<---

[PATCH v3 9/19] modula2 front end: plugin source files

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patchset contains the modula2 plugin which detects some runtime errors at compiletime. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/gcc/m2/plugin/m2rte.cc --- /dev/null 2022-08-24 16:22:16.88870 +0100 +++ gcc-gi

[PATCH v3 5/19] modula2 front end: libgm2/libm2iso contents

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set consists of the makefiles, autoconf sources necessary to build the various libgm2/libm2iso libraries. The c/c++/h files are also included in the patch set. The modula-2 sources are found in gcc/m2. --8<--8<--8<--8<--8<--8< diff

[PATCH v3 6/19] modula2 front end: libgm2/libm2min contents

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set consists of the makefiles, autoconf and a few C sources to build the libgm2/libm2min libraries. --8<--8<--8<--8<--8<--8< diff -ruw /dev/null gcc-git-devel-modula2/libgm2/libm2min/Makefile.am --- /dev/null 2022-08-24 16:22:16.88

[PATCH v3 7/19] modula2 front end: libgm2/libm2log contents

2022-12-06 Thread Gaius Mulley via Gcc-patches
This patch set consists of the makefiles, autoconf sources necessary to build the various libgm2 libraries. The c/c++/h files are included in the patch set. The modula-2 sources are found in gcc/m2. --8<--8<--8<--8<--8<--8< diff -ruw /dev/nul

[COMMITTED] ada: Allow No_Caching on volatile types

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Yannick Moy SPARK RM now allow the property No_Caching on volatile types, to indicate that they should be considered volatile for compilation, but not by GNATprove's analysis. gcc/ada/ * contracts.adb (Add_Contract_Item): Allow No_Caching on types. (Check_Type_Or_Object_Ex

[COMMITTED] ada: Fix spurious error in checking of SPARK elaboration

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Eric Botcazou The problem is that the computation of early call regions skips freeze nodes but scenarios involving procedures declared as actions of these freeze nodes are taken into account. As a consequence if a subprogram body, typically of an expression function, is placed just after a

[COMMITTED] ada: Suppress warning for specific constant valid condition

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Eric Botcazou Like in Exp_Ch4, we do not want to give warnings in Sem_Warn on a membership test with a mark for a subtype that is predicated. gcc/ada/ * sem_warn.adb (Warn_On_Constant_Valid_Condition): Bail out for a membership test with a mark for a subtype that is predic

[COMMITTED] ada: Small adjustment to special resolution of membership test

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Eric Botcazou It's needed because, in GNAT, universal_integer does not cover all the values of all the supported integer types. gcc/ada/ * sem_res.adb (Resolve_Membership_Op): Adjust latest change. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/sem_res.adb | 18

[COMMITTED] ada: Elide the copy in extended returns for nonlimited by-reference types

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Eric Botcazou This implements elision of the copy operation for extended return statements in the case of nonlimited by-reference types (the copy operation is already elided for limited types by the front-end and nonlimited non-by-reference types by the code generator), which comprise contr

[COMMITTED] ada: Spurious error on nested call using the prefix notation

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Javier Miranda gcc/ada/ * exp_ch6.adb (Build_Static_Check_Helper_Call): Perform implicit type conversion to ensure matching types and avoid reporting spurious errors. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/exp_ch6.adb | 7 --- 1 file

[COMMITTED] ada: Use larger type for membership test of universal value

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Eric Botcazou When a membership test is applied to a nonstatic expression of a universal type, for example an attribute whose type is universal_integer and whose prefix is not static, the operation is performed using the tested type that is determined by the choice list. In particular, a c

[COMMITTED] ada: Add Codepeer Exemption + simplify TO_C code.

2022-12-06 Thread Marc Poulhiès via Gcc-patches
From: Liaiss Merzougue This patch simplify the TO_C code to have a single branch for raising exception. Furthermore, adding pragma annotate for codepeer to ignore uninitialized value since this is caused because we have input check before the initialization. gcc/ada/ * libgnat/i-c.adb (

[PATCH RFA] build: add -Wconditionally-supported to strict_warn [PR64867]

2022-12-06 Thread Jason Merrill via Gcc-patches
Tested x86_64-pc-linux-gnu, OK for trunk? -- 8< -- The PR (which isn't resolved by this commit) pointed out to me that GCC should build with -Wconditionally-supported to support bootstrapping with a C++11 compiler that makes different choices. PR c++/64867 gcc/ChangeLog: * conf

Re: [committed] onlinedocs: Add documentation links to gdc

2022-12-06 Thread Gerald Pfeifer
On Tue, 6 Dec 2022, Iain Buclaw wrote: > Now that the D front-end documentation has been generated and pushed to > the site after r13-4421, this can be added to the main index page. > > This is a simple copy from other entries, so have gone ahead and > committed it. Cool, thank you. And sorry, I

Re: Rust front-end patches v4

2022-12-06 Thread Mark Wielaard
Hi John, On Tue, Dec 06, 2022 at 12:57:17PM +0100, John Paul Adrian Glaubitz wrote: > On 12/6/22 12:40, Arthur Cohen wrote: > > > Can't wait to see this becoming available in the distributions :D. > > > > > > I will make sure we get the frontend enabled in Debian as soon as > > > possible. > >

[committed] onlinedocs: Add documentation links to gdc

2022-12-06 Thread Iain Buclaw via Gcc-patches
Hi, Now that the D front-end documentation has been generated and pushed to the site after r13-4421, this can be added to the main index page. This is a simple copy from other entries, so have gone ahead and committed it. Regards, Iain. --- htdocs/onlinedocs/index.html | 6 ++ 1 file chang

Re: [PATCH] Add a new conversion for conditional ternary set into ifcvt [PR106536]

2022-12-06 Thread Segher Boessenkool
Hi! On Thu, Nov 24, 2022 at 11:24:15AM +0100, Richard Biener wrote: > On Thu, Nov 24, 2022 at 8:25 AM HAO CHEN GUI wrote: > > 在 2022/11/24 4:06, Richard Biener 写道: > > > Wouldn't we usually either add an optab or try to recog a canonical > > > RTL form instead of adding a new target hook for thin

Re: [PATCH 14/56] middle-end: Set TREE_ADDRESSABLE in folding debug stmts.

2022-12-06 Thread Zopolis0 via Gcc-patches
New plan-- this patch is entirely pointless! I have reverted it in a local build and had no regressions. As such, simply do not review or consider this patch. I am not not planning on re-sending the patchset even though it adjusts the patch numbers because it is such an arduous process given that

Re: [PATCH] libgcc: Fix uninitialized RA signing on AArch64 [PR107678]

2022-12-06 Thread Wilco Dijkstra via Gcc-patches
Hi, > i don't think how[*RA_STATE] can ever be set to REG_SAVED_OFFSET, > this pseudo reg is not spilled to the stack, it is reset to 0 in > each frame and then toggled within a frame. It's is just a state, we can use any state we want since it is a pseudo reg. These registers are global and shar

Re: Rust front-end patches v4

2022-12-06 Thread John Paul Adrian Glaubitz
On 12/6/22 12:40, Arthur Cohen wrote: Can't wait to see this becoming available in the distributions :D. I will make sure we get the frontend enabled in Debian as soon as possible. Haha, I appreciate the enthusiasm :) Please note however that despite the language being in, the compiler is sti

Re: Rust front-end patches v4

2022-12-06 Thread Iain Buclaw via Gcc-patches
Excerpts from Richard Biener via Gcc-patches's message of Dezember 6, 2022 12:03 pm: > On Tue, Dec 6, 2022 at 11:11 AM wrote: >> >> This patchset contains the fixed version of our most recent patchset. We >> have fixed most of the issues noted in the previous round of reviews, and are >> keeping

Re: Rust front-end patches v4

2022-12-06 Thread Arthur Cohen
On 12/6/22 12:09, John Paul Adrian Glaubitz wrote: On 12/6/22 12:03, Richard Biener via Gcc-rust wrote: On Tue, Dec 6, 2022 at 11:11 AM wrote: This patchset contains the fixed version of our most recent patchset. We have fixed most of the issues noted in the previous round of reviews, and

Re: [GCC][PATCH 13/15, v4] arm: Add support for dwarf debug directives and pseudo hard-register for PAC feature.

2022-12-06 Thread Srinath Parvathaneni via Gcc-patches
Ping!! From: Gcc-patches on behalf of Srinath Parvathaneni via Gcc-patches Sent: 09 November 2022 14:32 To: gcc-patches@gcc.gnu.org Cc: Richard Earnshaw ; Kyrylo Tkachov Subject: [GCC][PATCH 13/15, v4] arm: Add support for dwarf debug directives and pseudo h

Re: [GCC][PATCH v2] arm: Add cde feature support for Cortex-M55 CPU.

2022-12-06 Thread Srinath Parvathaneni via Gcc-patches
Ping!! From: Srinath Parvathaneni Sent: 31 October 2022 12:38 To: gcc-patches@gcc.gnu.org Cc: Richard Earnshaw ; Christophe Lyon Subject: RE: [GCC][PATCH v2] arm: Add cde feature support for Cortex-M55 CPU. Hi, > -Original Message- > From: Christophe Ly

Re: [GCC][PATCH v2] arm: Add pacbti related multilib support for armv8.1-m.main.

2022-12-06 Thread Srinath Parvathaneni via Gcc-patches
Ping!! From: Gcc-patches on behalf of Srinath Parvathaneni via Gcc-patches Sent: 31 October 2022 15:36 To: gcc-patches@gcc.gnu.org Cc: Richard Earnshaw Subject: [GCC][PATCH v2] arm: Add pacbti related multilib support for armv8.1-m.main. Hi, This patch adds

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-06 Thread Kewen.Lin via Gcc-patches
Hi Mike, Thanks for fixing this, some comments are inlined below. on 2022/11/2 10:42, Michael Meissner wrote: > This patch fixes the issue that GCC cannot build when the default long double > is IEEE 128-bit. It fails in building libgcc, specifically when it is trying > to buld the __mulkc3 func

Re: Zen4 tuning part 1 - cost tables

2022-12-06 Thread Jan Hubicka via Gcc-patches
> > - COSTS_N_INSNS (5), /* cost of FADD and FSUB insns. */ > > - COSTS_N_INSNS (5), /* cost of FMUL instruction. */ > > + COSTS_N_INSNS (7), /* cost of FADD and FSUB insns. */ > > + COSTS_N_INSNS (7), /* cost of FMUL in

Re: Java front-end and library patches.

2022-12-06 Thread Zopolis0 via Gcc-patches
> Patches 1 and 2 don't seem to have reached the mailing list. File size issues on the receiving server. I bzip3 compressed them, but they were still too big.

RE: [PATCH] arm: Fix MVE's vcmp vector-scalar patterns [PR107987]

2022-12-06 Thread Kyrylo Tkachov via Gcc-patches
> -Original Message- > From: Andre Simoes Dias Vieira > Sent: Tuesday, December 6, 2022 11:19 AM > To: 'gcc-patches@gcc.gnu.org' > Cc: Kyrylo Tkachov ; Richard Earnshaw > > Subject: [PATCH] arm: Fix MVE's vcmp vector-scalar patterns [PR107987] > > Hi, > > This patch surrounds the sc

[PATCH] arm: Fix MVE's vcmp vector-scalar patterns [PR107987]

2022-12-06 Thread Andre Simoes Dias Vieira via Gcc-patches
Hi, This patch surrounds the scalar operand of the MVE vcmp patterns with a vec_duplicate to ensure both operands of the comparision operator have the same (vector) mode. Regression tested on arm-none-eabi. Is this OK for trunk? And a backport to GCC 12? gcc/ChangeLog: PR target/107987

Zen4 tuning part 2 - tuning flags

2022-12-06 Thread Jan Hubicka via Gcc-patches
Hi, this patch adds tunes needed for zen4 microarchitecture. I added two new knobs. TARGET_AVX512_SPLIT_REGS which is used to specify that internally 512 vectors are split to 256 vectors. This affects vectorization costs and reassociation width. It probably should also affect RTX costs however I

Re: Rust front-end patches v4

2022-12-06 Thread John Paul Adrian Glaubitz
On 12/6/22 12:03, Richard Biener via Gcc-rust wrote: On Tue, Dec 6, 2022 at 11:11 AM wrote: This patchset contains the fixed version of our most recent patchset. We have fixed most of the issues noted in the previous round of reviews, and are keeping some for later as they would otherwise crea

Re: [PATCH 5/8]AArch64 aarch64: Make existing V2HF be usable.

2022-12-06 Thread Richard Sandiford via Gcc-patches
Tamar Christina writes: >> -Original Message- >> From: Richard Sandiford >> Sent: Tuesday, December 6, 2022 10:28 AM >> To: Tamar Christina >> Cc: gcc-patches@gcc.gnu.org; nd ; Richard Earnshaw >> ; Marcus Shawcroft >> ; Kyrylo Tkachov >> Subject: Re: [PATCH 5/8]AArch64 aarch64: Make ex

Re: Rust front-end patches v4

2022-12-06 Thread Richard Biener via Gcc-patches
On Tue, Dec 6, 2022 at 11:11 AM wrote: > > This patchset contains the fixed version of our most recent patchset. We > have fixed most of the issues noted in the previous round of reviews, and are > keeping some for later as they would otherwise create too many conflicts with > our updated developm

RE: [PATCH 5/8]AArch64 aarch64: Make existing V2HF be usable.

2022-12-06 Thread Tamar Christina via Gcc-patches
> -Original Message- > From: Richard Sandiford > Sent: Tuesday, December 6, 2022 10:28 AM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; Richard Earnshaw > ; Marcus Shawcroft > ; Kyrylo Tkachov > Subject: Re: [PATCH 5/8]AArch64 aarch64: Make existing V2HF be usable. > > Tamar

Re: [PATCH] i386: Fix up expander conditions on cbranchbf4 and cstorebf4 [PR107969]

2022-12-06 Thread Uros Bizjak via Gcc-patches
On Tue, Dec 6, 2022 at 11:47 AM Jakub Jelinek wrote: > > Hi! > > With -msoft-float we ICE on __bf16 comparisons, because the > insns we want to use under the hood (cbranchsf4 and cstoresf4) > after performing the fast extensions aren't available. > > The following patch copies the conditions from

  1   2   >