Re: [PATCH] Remove misleading debug line entries

2020-12-03 Thread Richard Biener
On Wed, 2 Dec 2020, Bernd Edlinger wrote: > On 12/2/20 8:50 AM, Richard Biener wrote: > > On Tue, 1 Dec 2020, Bernd Edlinger wrote: > > > >> Hi! > >> > >> > >> This removes gimple_debug stmts without block info after a > >> NULL INLINE_ENTRY. > >> > >> The line numbers from these stmts are from t

Re: How to traverse all the local variables that declared in the current routine?

2020-12-03 Thread Richard Biener via Gcc-patches
On Wed, Dec 2, 2020 at 4:36 PM Qing Zhao wrote: > > > > On Dec 2, 2020, at 2:45 AM, Richard Biener wrote: > > On Tue, Dec 1, 2020 at 8:49 PM Qing Zhao wrote: > > > Hi, Richard, > > Could you please comment on the following approach: > > Instead of adding the zero-initializer quite late at the pa

Re: [GCC 10 PATCH] expr: Fix REDUCE_BIT_FIELD for constants [PR95694]

2020-12-03 Thread Richard Biener via Gcc-patches
On Wed, Dec 2, 2020 at 5:31 PM Richard Sandiford via Gcc-patches wrote: > > This is a gcc-10 version of: > > Richard Sandiford writes: > > [Sorry, been sitting on this patch for a while and just realised > > I never sent it.] > > > > This is yet another PR caused by constant integer rtxes not st

[PATCH] i386: Fix up ix86_md_asm_adjust for TImode [PR98086]

2020-12-03 Thread Jakub Jelinek via Gcc-patches
Hi! ix86_md_asm_adjust right above this code uses: machine_mode dest_mode = GET_MODE (dest); if (!SCALAR_INT_MODE_P (dest_mode)) { error ("invalid type for % flag output"); continue; } but then assumes that dest_mode can be only [QHSD]Imode and nothi

[committed] testsuite: Add testcase for already fixed PR [PR98104]

2020-12-03 Thread Jakub Jelinek via Gcc-patches
Hi! This testcase got broken with r11-3826 and got fixed with r11-5628. Tested on x86_64-linux -m32/-m64 with current trunk as well as 4 days old compiler, committed to trunk as obvious. 2020-12-03 Jakub Jelinek PR c++/98104 * g++.dg/warn/pr98104.C: New test. --- gcc/testsui

RE: [PATCH][GCC] aarch64: Add +flagm to -march

2020-12-03 Thread Przemyslaw Wirkus via Gcc-patches
> >> gcc/ChangeLog: > >> > >> * config/aarch64/aarch64-option-extensions.def > >> (AARCH64_OPT_EXTENSION): New +flagm option in -march for AArch64. > >> * config/aarch64/aarch64.h (AARCH64_FL_FLAGM): Add new flagm > >> extension bit mask. > >> (AARCH64_FL_FOR_ARCH8_4): Add flagm to Armv8.4-A. > > >

[PATCH] c++: consteval-defarg1.C test variant for templates

2020-12-03 Thread Jakub Jelinek via Gcc-patches
On Wed, Dec 02, 2020 at 10:15:25PM -0500, Jason Merrill wrote: > Jakub noticed that we weren't recognizing a default argument for a consteval > member function as being in immediate function context because there was no > function parameter scope to look at. > > Note that this patch doesn't actual

Re: [PATCH RESEND] tree-ssa-threadbackward.c (profitable_jump_thread_path): Do not allow __builtin_constant_p.

2020-12-03 Thread Ilya Leoshkevich via Gcc-patches
On Wed, 2020-12-02 at 11:42 -0700, Jeff Law wrote: > > On 12/1/20 7:09 PM, Ilya Leoshkevich wrote: > > On Tue, 2020-12-01 at 15:34 -0700, Jeff Law wrote: > > > No strong opinions. I think whichever is less invasive in terms > > > of > > > code > > > quality is probably the way to go. What we wan

Re: [PATCH] ipa: do not DECL_IS_MALLOC for void fns

2020-12-03 Thread Martin Liška
On 12/2/20 4:25 PM, Martin Jambor wrote: Hi, On Wed, Dec 02 2020, Jan Hubicka wrote: We create an IPA SRA (which has DECL_IS_MALLOC set to false), but later IPA pure const propagates malloc attributes. I think we should not set it for a void returning functions. Patch can bootstrap on x86_64-l

Re: [PATCH][GCC] aarch64: Add +flagm to -march

2020-12-03 Thread Richard Sandiford via Gcc-patches
Przemyslaw Wirkus writes: >> >> gcc/ChangeLog: >> >> >> >> * config/aarch64/aarch64-option-extensions.def >> >> (AARCH64_OPT_EXTENSION): New +flagm option in -march for AArch64. >> >> * config/aarch64/aarch64.h (AARCH64_FL_FLAGM): Add new flagm >> >> extension bit mask. >> >> (AARCH64_FL_FOR_ARCH8

RE: [PATCH][GCC] aarch64: Add +flagm to -march

2020-12-03 Thread Przemyslaw Wirkus via Gcc-patches
> >> >> gcc/ChangeLog: > >> >> > >> >> * config/aarch64/aarch64-option-extensions.def > >> >> (AARCH64_OPT_EXTENSION): New +flagm option in -march for AArch64. > >> >> * config/aarch64/aarch64.h (AARCH64_FL_FLAGM): Add new flagm > >> >> extension bit mask. > >> >> (AARCH64_FL_FOR_ARCH8_4): Add flag

Re: [PATCH][GCC] aarch64: Add +flagm to -march

2020-12-03 Thread Richard Sandiford via Gcc-patches
Przemyslaw Wirkus writes: >> >> >> gcc/ChangeLog: >> >> >> >> >> >> * config/aarch64/aarch64-option-extensions.def >> >> >> (AARCH64_OPT_EXTENSION): New +flagm option in -march for AArch64. >> >> >> * config/aarch64/aarch64.h (AARCH64_FL_FLAGM): Add new flagm >> >> >> extension bit mask. >> >> >>

Re: [PR66791][ARM] Replace calls to __builtin_neon_vmvn* by ~ for vmvn intrinsics

2020-12-03 Thread Prathamesh Kulkarni via Gcc-patches
On Wed, 25 Nov 2020 at 22:01, Prathamesh Kulkarni wrote: > > Hi, > This patch replaces calls to __builtin_neon_vmvnv* builtins with ~ > operator in arm_neon.h. > Cross-tested on arm*-*-*. > OK to commit ? ping https://gcc.gnu.org/pipermail/gcc-patches/2020-November/560223.html Thanks, Prathamesh

RE: [PR66791][ARM] Replace calls to __builtin_neon_vmvn* by ~ for vmvn intrinsics

2020-12-03 Thread Kyrylo Tkachov via Gcc-patches
> -Original Message- > From: Gcc-patches On Behalf Of > Prathamesh Kulkarni via Gcc-patches > Sent: 03 December 2020 10:30 > To: gcc Patches ; Kyrill Tkachov > > Subject: Re: [PR66791][ARM] Replace calls to __builtin_neon_vmvn* by ~ for > vmvn intrinsics > > On Wed, 25 Nov 2020 at 22:0

Re: introduce overridable clear_cache emitter

2020-12-03 Thread Christophe Lyon via Gcc-patches
Hi Alexandre, On Wed, 2 Dec 2020 at 19:23, Jeff Law via Gcc-patches wrote: > > > > On 11/10/20 7:35 PM, Alexandre Oliva wrote: > > This patch introduces maybe_emit_call_builtin___clear_cache for the > > builtin expander machinery and the trampoline initializers to use to > > clear the instruction

Re: [PATCH] i386: Fix up ix86_md_asm_adjust for TImode [PR98086]

2020-12-03 Thread Uros Bizjak via Gcc-patches
On Thu, Dec 3, 2020 at 9:50 AM Jakub Jelinek wrote: > > Hi! > > ix86_md_asm_adjust right above this code uses: > machine_mode dest_mode = GET_MODE (dest); > if (!SCALAR_INT_MODE_P (dest_mode)) > { > error ("invalid type for % flag output"); > continue; >

[patch] Fix PR middle-end/98099

2020-12-03 Thread Eric Botcazou
Hi, this replaces the ICE by a sorry message for the use of reverse scalar storage order with a 128-bit decimal floating-point type on 32-bit platforms. Tested on x86-64/Linux, OK for the mainline? 2020-12-03 Eric Botcazou * expmed.c (flip_storage_order): In the case of a non-integ

[patch] Fix PR middle-end/98082

2020-12-03 Thread Eric Botcazou
Hi, this fixes an ICE introduced on the mainline by my fix for PR middle-end/97078 where I changed use_register_for_decl to return true at -O0 for a parameter of a thunk. It turns out that we need to do the same for a result in this case. Tested on x86-64/Linux, OK for the mainline? 2020-12-

[PR66791][ARM] Replace __builtin_neon_vcreate* for vcreate intrinsics

2020-12-03 Thread Prathamesh Kulkarni via Gcc-patches
Hi, This patch replaces calls to __builtin_neon_vcreate* builtins for vcreate intrinsics in arm_neon.h. Cross-tested on arm*-*-*. OK to commit ? Thanks, Prathamesh vcreate-1.diff Description: Binary data

[PR66791][ARM] Replace __builtin_neon_vneg* by - for vneg intrinsics

2020-12-03 Thread Prathamesh Kulkarni via Gcc-patches
Hi, This patch replaces calls to __builtin_neon_vneg* builtins by - operator, for vneg intrinsics in arm_neon.h. Cross-tested on arm*-*-*. OK to commit ? Thanks, Prathamesh vneg-1.diff Description: Binary data

Re: introduce overridable clear_cache emitter

2020-12-03 Thread Alexandre Oliva
On Dec 3, 2020, Christophe Lyon wrote: > This patches causes a lot of regressions in fortran on arm and aarch64, Thanks, on it. -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer Vim, Vi, Voltei pro Emacs -- GNUlius

Re: [PATCH] ipa: do not DECL_IS_MALLOC for void fns

2020-12-03 Thread Jan Hubicka
> On 12/2/20 4:25 PM, Martin Jambor wrote: > > Hi, > > > > On Wed, Dec 02 2020, Jan Hubicka wrote: > > > > We create an IPA SRA (which has DECL_IS_MALLOC set to false), but later > > > > IPA pure const propagates malloc attributes. I think we should not set > > > > it for a void returning function

Re: [gcc r11-4816] Fix Ada build failure for the SuSE PowerPC64/Linux compiler

2020-12-03 Thread Andreas Schwab
On Nov 07 2020, Eric Botcazou via Gcc-cvs wrote: > https://gcc.gnu.org/g:df784801daf0185a1e22ebf03d48363530717882 > > commit r11-4816-gdf784801daf0185a1e22ebf03d48363530717882 > Author: Eric Botcazou > Date: Sat Nov 7 11:07:11 2020 +0100 > > Fix Ada build failure for the SuSE PowerPC64/Linu

RE: [PR66791][ARM] Replace __builtin_neon_vcreate* for vcreate intrinsics

2020-12-03 Thread Kyrylo Tkachov via Gcc-patches
Hi Prathamesh, > -Original Message- > From: Prathamesh Kulkarni > Sent: 03 December 2020 10:50 > To: gcc Patches ; Kyrylo Tkachov > > Subject: [PR66791][ARM] Replace __builtin_neon_vcreate* for vcreate > intrinsics > > Hi, > This patch replaces calls to __builtin_neon_vcreate* builtins

Re: [gcc r11-4816] Fix Ada build failure for the SuSE PowerPC64/Linux compiler

2020-12-03 Thread Eric Botcazou
> This breaks build of libada, it is missing all of $(GNATRTL_128BIT_OBJS). In the default multilib? Yes, that's the point, since it's 32-bit apparently. -- Eric Botcazou

[PATCH 0/6] Add missing calls to `onlyjump_p'

2020-12-03 Thread Maciej W. Rozycki
Hi, As discussed here: here is a small patch series adding missing calls to `onlyjump_p' around `any_condjump_p' and `any_uncondjump_p' use where the jump in question is about to be removed. Note that I have included unr

[PATCH 1/6] ifcvt: Add missing call to `onlyjump_p'

2020-12-03 Thread Maciej W. Rozycki
Do not convert a conditional jump into conditional execution (and remove the jump as a consequence) if the jump has side effects. gcc/ * ifcvt.c (dead_or_predicable) [!IFCVT_MODIFY_TESTS]: Bail out if `!onlyjump_p'. --- gcc/ifcvt.c |6 ++ 1 file changed, 6 insert

[PATCH 2/6] loop-iv: Add missing calls to `onlyjump_p'

2020-12-03 Thread Maciej W. Rozycki
Ignore jumps that have side effects in loop processing as pasting the body of a loop multiple times within is semantically equivalent to jump deletion (between the iterations unrolled) even if we do not physically delete the jump RTL insn. gcc/ * loop-iv.c (simplify_using_initia

[PATCH 3/6] sel-sched-ir: Add missing call to `onlyjump_p'

2020-12-03 Thread Maciej W. Rozycki
Do not try to remove a conditional jump if it has side effects. gcc/ * sel-sched-ir.c (maybe_tidy_empty_bb): Only try to remove a conditional jump if `onlyjump_p'. --- gcc/sel-sched-ir.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) gcc-sel-sched-ir-empty-bb

[PATCH 4/6] cfgrtl: Add missing call to `onlyjump_p'

2020-12-03 Thread Maciej W. Rozycki
If any unconditional jumps within a block have side effects then the block cannot be considered empty. gcc/ * cfgrtl.c (rtl_block_empty_p): Return false if `!onlyjump_p' too. --- gcc/cfgrtl.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) gcc-cfgrtl-block-em

[PATCH 5/6] loop-doloop: Add missing call to `onlyjump_p'

2020-12-03 Thread Maciej W. Rozycki
Keep any jump that has side effects as those must not be removed. gcc/ * loop-doloop.c (add_test): Only remove the jump if `onlyjump_p'. --- gcc/loop-doloop.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) gcc-loop-doloop-add-test-only-jump.diff Index: gcc/gcc/loop-dolo

[RFC 6/6] ifcvt: Fall through to NCE if getting the CE condition failed

2020-12-03 Thread Maciej W. Rozycki
If getting the condition for conditional execution has failed then fall through and try the non-conditional execution approach instead rather than giving up with dead code elimination altogether, for a better code structure if nothing else. The case may well now be that whenever `cond_exec_get_

Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms

2020-12-03 Thread Andreas Schwab
On Nov 20 2020, Maciej W. Rozycki wrote: > For the record: in a native `powerpc64le-linux-gnu' build despite the > issue a functional compiler used to be built, except for the acats test > suite reporting a catastrophic failure: > > === acats support === > Generating support files

Re: [PATCH] i386: Fix up ix86_md_asm_adjust for TImode [PR98086]

2020-12-03 Thread Uros Bizjak via Gcc-patches
On Thu, Dec 3, 2020 at 11:39 AM Uros Bizjak wrote: > > > ix86_md_asm_adjust right above this code uses: > > machine_mode dest_mode = GET_MODE (dest); > > if (!SCALAR_INT_MODE_P (dest_mode)) > > { > > error ("invalid type for % flag output"); > > continue; >

Re: [PATCH] i386: Fix up ix86_md_asm_adjust for TImode [PR98086]

2020-12-03 Thread Jakub Jelinek via Gcc-patches
On Thu, Dec 03, 2020 at 12:49:49PM +0100, Uros Bizjak wrote: > On Thu, Dec 3, 2020 at 11:39 AM Uros Bizjak wrote: > > > > > ix86_md_asm_adjust right above this code uses: > > > machine_mode dest_mode = GET_MODE (dest); > > > if (!SCALAR_INT_MODE_P (dest_mode)) > > > { > > >

[BUG/PATCH] ppc64 g5 and cell optimizations result in .machine power7

2020-12-03 Thread René Rebe
Hi, Since reworking the rs6000 .machine output selection in commit e154242724b084380e3221df7c08fcdbd8460674 22 May 2019, compiling glibc with either G5 or cell results in power7 assembly optimizations to be chosen, which obviously crash with illegal instructions. This is because gcc's .machine

Re: introduce overridable clear_cache emitter

2020-12-03 Thread Andreas Schwab
../../../../libffi/src/aarch64/ffi.c: In function 'ffi_prep_closure_loc': ../../../../libffi/src/aarch64/ffi.c:67:3: error: both arguments to '__builtin___clear_cache' must be pointers 67 | __builtin___clear_cache (start, end); | ^~~~ Andreas. -- And

Re: [patch] Fix PR middle-end/98099

2020-12-03 Thread Richard Biener via Gcc-patches
On Thu, Dec 3, 2020 at 11:49 AM Eric Botcazou wrote: > > Hi, > > this replaces the ICE by a sorry message for the use of reverse scalar storage > order with a 128-bit decimal floating-point type on 32-bit platforms. > > Tested on x86-64/Linux, OK for the mainline? OK. Richard. > > 2020-12-03 E

Re: [patch] Fix PR middle-end/98082

2020-12-03 Thread Richard Biener via Gcc-patches
On Thu, Dec 3, 2020 at 11:49 AM Eric Botcazou wrote: > > Hi, > > this fixes an ICE introduced on the mainline by my fix for PR middle-end/97078 > where I changed use_register_for_decl to return true at -O0 for a parameter of > a thunk. It turns out that we need to do the same for a result in this

Re: [gcc r11-4816] Fix Ada build failure for the SuSE PowerPC64/Linux compiler

2020-12-03 Thread Andreas Schwab
On Dez 03 2020, Eric Botcazou wrote: >> This breaks build of libada, it is missing all of $(GNATRTL_128BIT_OBJS). > > In the default multilib? Yes, that's the point, since it's 32-bit apparently. Nope. The default is 64-bit. Andreas. -- Andreas Schwab, sch...@linux-m68k.org GPG Key fingerpri

Re: introduce overridable clear_cache emitter

2020-12-03 Thread Andreas Schwab
On Dez 03 2020, Andreas Schwab wrote: > ../../../../libffi/src/aarch64/ffi.c: In function 'ffi_prep_closure_loc': > ../../../../libffi/src/aarch64/ffi.c:67:3: error: both arguments to > '__builtin___clear_cache' must be pointers >67 | __builtin___clear_cache (start, end); > | ^~

Re: [stage1][PATCH] Change semantics of -frecord-gcc-switches and add -frecord-gcc-switches-format.

2020-12-03 Thread Richard Biener via Gcc-patches
On Thu, Nov 26, 2020 at 2:55 PM Martin Liška wrote: > > On 11/25/20 2:48 PM, Richard Biener wrote: > > On Mon, Nov 23, 2020 at 2:02 PM Martin Liška wrote: > >> > >> On 11/23/20 12:00 PM, Richard Biener wrote: > >>> Can you split out the unifying of -[gf]record-gcc-switches processing > >>> and th

[PATCH] tree-optimization/98113 - vectorize a sequence of BIT_INSERT_EXPRs

2020-12-03 Thread Richard Biener
This adds the capability to handle a sequence of vector BIT_INSERT_EXPRs to be vectorized similar as to how we vectorize vector constructors. Bootstrapped and tested on x86_64-unknown-linux-gnu, OK at this stage or do we want to defer to stage1 and regress for the PRs testcase? The testcase can s

C++ patch ping

2020-12-03 Thread Jakub Jelinek via Gcc-patches
Hi! I'd like to ping https://gcc.gnu.org/pipermail/gcc-patches/2020-November/560372.html - v3 of the __builtin_bit_cast (with (hopefully) all earlier feedback incorporated). Thanks Jakub

Re: [PATCH] c++: consteval-defarg1.C test variant for templates

2020-12-03 Thread Jason Merrill via Gcc-patches
On 12/3/20 4:29 AM, Jakub Jelinek wrote: On Wed, Dec 02, 2020 at 10:15:25PM -0500, Jason Merrill wrote: Jakub noticed that we weren't recognizing a default argument for a consteval member function as being in immediate function context because there was no function parameter scope to look at. N

Re: introduce overridable clear_cache emitter

2020-12-03 Thread Alexandre Oliva
On Dec 3, 2020, Christophe Lyon wrote: > This patches causes a lot of regressions in fortran on arm and aarch64, On Dec 3, 2020, Andreas Schwab wrote: > On Dez 03 2020, Andreas Schwab wrote: >> ../../../../libffi/src/aarch64/ffi.c: In function 'ffi_prep_closure_loc': >> ../../../../libffi/s

Re: [PATCH 3/4] rs6000: Enable vec_insert for P8 with rs6000_expand_vector_set_var_p8

2020-12-03 Thread Xionghu Luo via Gcc-patches
Ping. Thanks. On 2020/11/27 09:04, Xionghu Luo via Gcc-patches wrote: Hi Segher, Thanks for the approval of [PATCH 1/4] and [PATCH 2/4], what's your opinion of this [PATCH 3/4] for P8, please? xxinsertw only exists since v3.0, so we had to implement by another way. Xionghu On 2020/10/10 16

[PATCH] c++: Distinguish unsatisfaction vs errors during satisfaction [PR97093]

2020-12-03 Thread Patrick Palka via Gcc-patches
During satisfaction, the flag info.noisy() controls three things: whether to diagnose fatal errors (such as the satisfaction value of an atom being non-bool); whether to diagnose unsatisfaction; and whether to bypass the satisfaction cache. This flag turns out to be too coarse however, for sometim

Re: [PATCH] c++: v3: Add __builtin_bit_cast to implement std::bit_cast [PR93121]

2020-12-03 Thread Jason Merrill via Gcc-patches
On 11/26/20 10:09 AM, Jakub Jelinek wrote: Sorry, thought I had replied to this before. The following patch removes the mask from the new native_interpret_aggregate moved to fold-const.c altogether. Instead, the code uses the __builtin_clear_padding infrastructure (new entrypoint in there). If

[PATCH] [X86_64]: Enable support for next generation AMD Zen3 CPU

2020-12-03 Thread Kumar, Venkataramanan via Gcc-patches
[AMD Official Use Only - Internal Distribution Only] Hi Maintainers, PFA, the patch that enables support for the next generation AMD Zen3 CPU via -march=znver3. This is a very basic enablement patch. As of now the cost, tuning and scheduler changes are kept same as znver2. Further changes to th

Re: [PATCH] [X86_64]: Enable support for next generation AMD Zen3 CPU

2020-12-03 Thread Uros Bizjak via Gcc-patches
The message says that it is for internal distribution. Please repost. Thanks, Uros. On Thu, Dec 3, 2020 at 4:11 PM Kumar, Venkataramanan wrote: > > [AMD Official Use Only - Internal Distribution Only] > > > Hi Maintainers, > > > > PFA, the patch that enables support for the next generation AMD Z

RE: [PATCH] [X86_64]: Enable support for next generation AMD Zen3 CPU

2020-12-03 Thread Kumar, Venkataramanan via Gcc-patches
[AMD Public Use] Thanks Uros, I forgot to change. Please ignore this thread . I will send fresh one. Regards, Venkat. -Original Message- From: Uros Bizjak Sent: Thursday, December 3, 2020 8:44 PM To: Kumar, Venkataramanan Cc: gcc-patches@gcc.gnu.org; Jan Hubicka Subject: Re: [PATCH

[PATCH] [X86_64]: Enable support for next generation AMD Zen3 CPU

2020-12-03 Thread Kumar, Venkataramanan via Gcc-patches
[AMD Public Use] Hi Maintainers, PFA, the patch that enables support for the next generation AMD Zen3 CPU via -march=znver3. This is a very basic enablement patch. As of now the cost, tuning and scheduler changes are kept same as znver2. Further changes to the cost and tunings will be done lat

[committed] aarch64: Don't fold svundef* at the gimple level

2020-12-03 Thread Richard Sandiford via Gcc-patches
As the testcase shows, folding svundef*() at the gimple level has the unfortunate side-effect of introducing -Wuninitialized or -Wmaybe-uninitialized warnings. We don't have a testcase that relies on the fold, so the easiest fix seems to be to remove it. Tested on aarch64-linux-gnu and aarch64_be

Re: OpenMP patch ping ** 2

2020-12-03 Thread Tobias Burnus
Hi, I would like to ping the following OpenMP-related patches: On 27.11.20 17:09, Tobias Burnus wrote: OpenMP-related patch pings: Kwok's: * Re: [PATCH] openmp: Implicit 'declare target' for C++ static initializers https://gcc.gnu.org/pipermail/gcc-patches/2020-November/559624.html * openmp:

c++: Fix array type dependency [PR 98107]

2020-12-03 Thread Nathan Sidwell
I'd missed somepaths through build_cplus_array_type, plus, some arrays come via the C-type builder. This propagates dependencyin more places and asserts that in the cases where TYPE_DEPENDENT_P_VALID is unset, the type is non-dependent. PR c++/98107 gcc/cp/ * tree.c (

[Committed] IBM Z: Fix mode in probe_stack pattern

2020-12-03 Thread Andreas Krebbel via Gcc-patches
The probe pattern uses Pmode but the middle-end wants to emit a word_mode probe check. This - as usual - breaks on Z with -m31 -mzarch were word_mode doesn't match Pmode. Bootstrapped and regression-tested on s390x. gcc/ChangeLog: * config/s390/s390.md ("@probe_stack2"): Change mode

Re: How to traverse all the local variables that declared in the current routine?

2020-12-03 Thread Qing Zhao via Gcc-patches
> On Dec 3, 2020, at 2:45 AM, Richard Biener wrote: > > On Wed, Dec 2, 2020 at 4:36 PM Qing Zhao > wrote: >> >> >> >> On Dec 2, 2020, at 2:45 AM, Richard Biener >> wrote: >> >> On Tue, Dec 1, 2020 at 8:49 PM Qing Zhao wrote: >> >> >> Hi, Richard, >> >> C

Go patch committed: Defer to middle-end for complex division

2020-12-03 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend and libgo defers to the middle-end for complex division. Go used to use slightly different semantics than C99 for complex division, so we used runtime routines to handle the difference. The gc compiler has changed its behavior to match C99, so change ours as well. T

Go patch committed: Convert comparison function result to expected bool type

2020-12-03 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend converts the result type of calling a comparison function to the expected bool type. Otherwise cases like type mybool bool var b mybool = [10]string{} == [10]string{} get an incorrect type checking error. Bootstrapped and ran Go testsuite on x86_64-pc-linux-g

Re: How to traverse all the local variables that declared in the current routine?

2020-12-03 Thread Richard Biener via Gcc-patches
On December 3, 2020 5:07:28 PM GMT+01:00, Qing Zhao wrote: > > >> On Dec 3, 2020, at 2:45 AM, Richard Biener > wrote: >> >> On Wed, Dec 2, 2020 at 4:36 PM Qing Zhao > wrote: >>> >>> >>> >>> On Dec 2, 2020, at 2:45 AM, Richard Biener > wrote: >>> >>> On Tue, Dec 1

Re: How to traverse all the local variables that declared in the current routine?

2020-12-03 Thread Qing Zhao via Gcc-patches
> On Dec 3, 2020, at 10:36 AM, Richard Biener > wrote: > > On December 3, 2020 5:07:28 PM GMT+01:00, Qing Zhao > wrote: >> >> of uninitialized analysis in the later stage. >>> >>> I don't see how the issue can be resolved, you can't get both, uninit >>> w

Re: c++: Fix array type dependency [PR 98107]

2020-12-03 Thread Nathan Sidwell
These two testcases provide coverage for 98115, which doesn't trigger on all hosts. PR c++/98115 PR c++/98116 gcc/testsuite/ * g++.dg/template/pr98115.C: New. * g++.dg/template/pr98116.C: New. nathan -- Nathan Sidwell diff --git c/gcc/testsuite/g++.d

Re: introduce overridable clear_cache emitter

2020-12-03 Thread Jeff Law via Gcc-patches
On 12/3/20 7:08 AM, Alexandre Oliva wrote: > On Dec 3, 2020, Christophe Lyon wrote: > >> This patches causes a lot of regressions in fortran on arm and aarch64, > On Dec 3, 2020, Andreas Schwab wrote: > >> On Dez 03 2020, Andreas Schwab wrote: >>> ../../../../libffi/src/aarch64/ffi.c: In fun

Re: How to traverse all the local variables that declared in the current routine?

2020-12-03 Thread Richard Sandiford via Gcc-patches
Richard Biener via Gcc-patches writes: > On December 3, 2020 5:07:28 PM GMT+01:00, Qing Zhao > wrote: >> >> >>> On Dec 3, 2020, at 2:45 AM, Richard Biener >> wrote: >>> >>> On Wed, Dec 2, 2020 at 4:36 PM Qing Zhao >> wrote: On Dec 2, 2020, at

c++: templatey type creation

2020-12-03 Thread Nathan Sidwell
This patch makes a couple of type-creation routines available to modules. That needs to create unbound template parms, and canonical template parms. gcc/cp/ * cp-tree.h (make_unbound_class_template_raw): Declare. (canonical_type_parameter): Declare. * decl.c (mak

[PATCH v2]: i386: Fix up ix86_md_asm_adjust for TImode [PR98086]

2020-12-03 Thread Uros Bizjak via Gcc-patches
ix86_md_asm_adjust assumes that dest_mode can be only [QHSD]Imode and nothing else. The patch rewrites zero-extension part to use convert_to_mode to handle TImode and hypothetically even wider modes. 2020-12-03 Uroš Bizjak Jakub Jelinek gcc/ PR target/98086 * config/i386/i38

Re: [PATCH] implement pre-c++20 contracts

2020-12-03 Thread Andrew Sutton via Gcc-patches
> > > > Attached is a new squashed revision of the patch sans ChangeLogs. The > > current work is now being done on github: > > https://github.com/lock3/gcc/tree/contracts-jac-alt > > I'm starting to review this now, sorry for the delay. Is this still the > branch you want me to consider for GCC 11

[PATCH][GCC10][1/6] arm: Add vld1_lane_bf16 + vldq_lane_bf16 intrinsics

2020-12-03 Thread Andrea Corallo via Gcc-patches
Hi all, first patch of the series to backport a number of bfloat16 intrinsics from trunk to gcc-10. These patch are including the fixes to the tests that we have applied into master. Please see refer to: ACLE ISA

[PATCH][GCC10][2/6] arm: Add vst1_lane_bf16 + vstq_lane_bf16 intrinsics

2020-12-03 Thread Andrea Corallo via Gcc-patches
Hi all, second patch of the series to backport a number of bfloat16 intrinsics from trunk to gcc-10. These patch are including the fixes to the tests that we have applied into master. Please see refer to: ACLE ISA

Re: [PATCH] 2/2 Remove debug/array

2020-12-03 Thread Jonathan Wakely via Gcc-patches
On 09/11/20 13:07 +, Jonathan Wakely wrote: On 08/11/20 15:27 +0100, François Dumont via Libstdc++ wrote: Following a recent fix on std::array this test started to fail in _GLIBCXX_DEBUG mode. FAIL: 23_containers/array/comparison_operators/96851.cc (test for excess errors) Rather than

[PATCH][GCC10][3/6] arm: Add vld1_bf16 + vld1q_bf16 intrinsics

2020-12-03 Thread Andrea Corallo via Gcc-patches
Hi all, third patch of the series to backport a number of bfloat16 intrinsics from trunk to gcc-10. These patch are including the fixes to the tests that we have applied into master. Please see refer to: ACLE ISA

[PATCH][GCC10][4/6] arm: Add vst1_bf16 + vst1q_bf16 intrinsics

2020-12-03 Thread Andrea Corallo via Gcc-patches
Hi all, forth patch of the series to backport a number of bfloat16 intrinsics from trunk to gcc-10. These patch are including the fixes to the tests that we have applied into master. Please see refer to: ACLE ISA

[PATCH][GCC10][5/6] arm: Add vldN_lane_bf16 + vldNq_lane_bf16 intrisics

2020-12-03 Thread Andrea Corallo via Gcc-patches
Hi all, fifth patch of the series to backport a number of bfloat16 intrinsics from trunk to gcc-10. These patch are including the fixes to the tests that we have applied into master. Please see refer to: ACLE ISA

Re: [PATCH] 2/2 Remove debug/array

2020-12-03 Thread Daniel Krügler via Gcc-patches
Am Do., 3. Dez. 2020 um 18:10 Uhr schrieb Jonathan Wakely via Libstdc++ : > [..] > >>Ok to commit ? > > > >Yes, this is a nice simplification, thanks. > > This broke the C++11 constexpr support in std::array. Fixed with this > patch. Tested x86_64-linux, committed to trunk. Wouldn't a transformati

[PATCH][GCC10][6/6] arm: Add vstN_lane_bf16 + vstNq_lane_bf16 intrisics

2020-12-03 Thread Andrea Corallo via Gcc-patches
Hi all, last patch of the series to backport a number of bfloat16 intrinsics from trunk to gcc-10. These patch are including the fixes to the tests that we have applied into master. Please see refer to: ACLE ISA

[committed] libstdc++: Update powerpc-linux baselines for GCC 10.1

2020-12-03 Thread Jonathan Wakely via Gcc-patches
This should have been done before the GCC 10.1 release. libstdc++-v3/ChangeLog: * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update. * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update. Tested powerpc64-linux. Committed to trunk. Bac

Re: [PATCH] 2/2 Remove debug/array

2020-12-03 Thread Jonathan Wakely via Gcc-patches
On 03/12/20 18:14 +0100, Daniel Krügler via Libstdc++ wrote: Am Do., 3. Dez. 2020 um 18:10 Uhr schrieb Jonathan Wakely via Libstdc++ : [..] >>Ok to commit ? > >Yes, this is a nice simplification, thanks. This broke the C++11 constexpr support in std::array. Fixed with this patch. Tested x86

Re: [pushed] c++: Push parms when late parsing default args

2020-12-03 Thread Rainer Orth
Hi Jason, > In this testcase we weren't catching the error in A::f because the parameter > 'I' wasn't in scope, so the default argument for 'b' found the global > typedef I. Fixed by pushing the parms before parsing. This is a bit > complicated because pushdecl clears DECL_CHAIN; do_push_parm_de

Re: How to traverse all the local variables that declared in the current routine?

2020-12-03 Thread Richard Sandiford via Gcc-patches
Richard Biener via Gcc-patches writes: > On Tue, Nov 24, 2020 at 4:47 PM Qing Zhao wrote: >> Another issue is, in order to check whether an auto-variable has >> initializer, I plan to add a new bit in “decl_common” as: >> /* In a VAR_DECL, this is DECL_IS_INITIALIZED. */ >> unsigned decl_is

Re: [PATCH] implement pre-c++20 contracts

2020-12-03 Thread Jason Merrill via Gcc-patches
On 12/3/20 12:07 PM, Andrew Sutton wrote: > Attached is a new squashed revision of the patch sans ChangeLogs. The > current work is now being done on github: > https://github.com/lock3/gcc/tree/contracts-jac-alt I'm st

[PATCH RFA] vec: Simplify use with C++11 range-based 'for'.

2020-12-03 Thread Jason Merrill via Gcc-patches
It looks cleaner if we can use a vec* directly as a range for the C++11 range-based 'for' loop, without needing to indirect from it, and also works with null pointers. The change in cp_parser_late_parsing_default_args is an example of how this can be used to simplify many loops over vec*. I delib

Re: [PATCH RFA] vec: Simplify use with C++11 range-based 'for'.

2020-12-03 Thread Marek Polacek via Gcc-patches
On Thu, Dec 03, 2020 at 12:53:22PM -0500, Jason Merrill via Gcc-patches wrote: > It looks cleaner if we can use a vec* directly as a range for the C++11 > range-based 'for' loop, without needing to indirect from it, and also works > with null pointers. Nice. > The change in cp_parser_late_parsing

Go testsuite: update existing tests to source repo

2020-12-03 Thread Ian Lance Taylor via Gcc-patches
I've committed a patch to update the existing Go tests, the ones under go.test, to the versions in the source repo at https://go.googlesource.com/. This does not include any of the new tests, just updates the ones we already have and removes the ones that no longer exist in the source. The attach

Re: [gcc r11-4816] Fix Ada build failure for the SuSE PowerPC64/Linux compiler

2020-12-03 Thread Eric Botcazou
> Nope. The default is 64-bit. That's not what Richard said under PR ada/97504 though: "Yes, we're building a 64bit compiler defaulting to -m32. Our "ppc" target was never a true 32bit system but a 64bit system with a 32bit "default" runtime and 64bit multilibs, so most binaries in the system w

Re: [gcc r11-4816] Fix Ada build failure for the SuSE PowerPC64/Linux compiler

2020-12-03 Thread Andreas Schwab
On Dez 03 2020, Eric Botcazou wrote: > I'm afraid we cannot support both given the current setup, so you'll have to > make a choice for the powerpc64-suse-linux compiler. I'm using the same configuration as the system compiler. There is no choice to make. Andreas. -- Andreas Schwab, sch...@l

Go testsuite patch committed: Add -I. when compiling in directory

2020-12-03 Thread Ian Lance Taylor via Gcc-patches
This Go testsuite patch adds a -I. argument when compiling sources in a directory. This tells the compiler to import packages in the current directory first, which is what we want in the testsuite. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian * go.test/go

[patch] Fix checking failure in IPA-SRA

2020-12-03 Thread Eric Botcazou
Hi, this is a regression present on the mainline and 10 branch: on the one hand, IPA-SRA does *not* disqualify accesses with zero size but, on the other hand, it checks that accesses present in the tree have a (strictly) positive size, thus trivially yielding an ICE, for example on the attached

[PATCH] v2: doc/implement-c.texi: About same-as-scalar-type volatile aggregate accesses, PR94600

2020-12-03 Thread Hans-Peter Nilsson via Gcc-patches
Belatedly, here's an updated version, using Martin Sebor's suggested wording from "https://gcc.gnu.org/pipermail/gcc-patches/2020-July/549580.html";. I added two commas, hopefully helpfully. Albeit ok'd by Richard Biener in "https://gcc.gnu.org/pipermail/gcc-patches/2020-July/549922.html";, better

Go testsuite patch committed: Add a bunch of new tests

2020-12-03 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go testsuite adds a bunch of new tests from the source repo. These are mostly tests that were added specifically to test gccgo. There are still other tests in the source repo that are not reflected in the gccgo copy. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Co

c++: uninstantiated template friends

2020-12-03 Thread Nathan Sidwell
template friends need to be recognized by module streaming and associated with the befriending class. but their context is that of the friend (a namespace or other class). This adds a flag to mark such templates, and uses their DECL_CHAIN to point at the befriender. gcc/cp * cp

[committed] libstdc++: Add std::bit_cast for C++20 [PR 93121]

2020-12-03 Thread Jonathan Wakely via Gcc-patches
Thanks to Jakub's addition of the built-in, we can add this to the library now. The compiler tests for the built-in are quite extensive, including verifying the constraints, so this only adds minimal tests to the library testsuite. This doesn't add a new _GLIBCXX_HAVE_BUILTIN_BIT_CAST because usin

[committed] libstdc++: Update C++20 library implementation status

2020-12-03 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * doc/xml/manual/status_cxx2020.xml: Update C++20 status. * doc/html/*: Regenerate. Tested powerpc64le-linux. Committed to trunk. commit 44ac1ea0e2244343b798ff1ccc7048029cb9fa02 Author: Jonathan Wakely Date: Thu Dec 3 19:17:13 2020 libstdc++: Updat

Re: [ PATCH ] [ C++ ] [ libstdc++ ] P1208r6 Merge source_location

2020-12-03 Thread Jonathan Wakely via Gcc-patches
On 02/01/20 17:20 -0500, JeanHeyd Meneide wrote: On Thu, Jan 2, 2020 at 5:07 PM Jakub Jelinek wrote: On Thu, Jan 02, 2020 at 04:57:01PM -0500, JeanHeyd Meneide wrote: > +#if defined(_GLIBCXX_HAVE_BUILTIN_SOURCE_LOCATION) > +# define __cpp_lib_source_location 201907L > +#elif defined(_GLIBCXX_H

Re: [committed] libstdc++: Add std::bit_cast for C++20 [PR 93121]

2020-12-03 Thread Jonathan Wakely via Gcc-patches
On 03/12/20 19:25 +, Jonathan Wakely wrote: Thanks to Jakub's addition of the built-in, we can add this to the library now. The compiler tests for the built-in are quite extensive, including verifying the constraints, so this only adds minimal tests to the library testsuite. This doesn't add

Re: [PATCH v2] rs6000, vector integer multiply/divide/modulo instructions

2020-12-03 Thread will schmidt via Gcc-patches
On Tue, 2020-12-01 at 15:48 -0800, Carl Love via Gcc-patches wrote: > Segher, Pat: > > I have updated the patch to address the comments below. > > On Wed, 2020-11-25 at 20:30 -0600, Segher Boessenkool wrote: > > On Tue, Nov 24, 2020 at 08:34:51PM -0600, Pat Haugen wrote: > > > On 11/24/20 8:17 PM

Re: Go testsuite patch committed: Add a bunch of new tests

2020-12-03 Thread Ian Lance Taylor via Gcc-patches
On Thu, Dec 3, 2020 at 11:15 AM Ian Lance Taylor wrote: > > This patch to the Go testsuite adds a bunch of new tests from the > source repo. These are mostly tests that were added specifically to > test gccgo. There are still other tests in the source repo that are > not reflected in the gccgo c

c++: Exported using decls

2020-12-03 Thread Nathan Sidwell
With modules we need to record whethe a (namespace-scope) using decl is exporting the named entities. Record this on the OVERLOAD marking the used decl. gcc/cp/ * cp-tree.h (OVL_EXPORT): New. (class ovl_iterator): Add get_using, exporting_p. * tree.c (ovl_insert)

Re: [PATCH RFA] vec: Simplify use with C++11 range-based 'for'.

2020-12-03 Thread Jeff Law via Gcc-patches
On 12/3/20 10:53 AM, Jason Merrill via Gcc-patches wrote: > It looks cleaner if we can use a vec* directly as a range for the C++11 > range-based 'for' loop, without needing to indirect from it, and also works > with null pointers. > > The change in cp_parser_late_parsing_default_args is an exam

Re: [PATCH 1/6] ifcvt: Add missing call to `onlyjump_p'

2020-12-03 Thread Jeff Law via Gcc-patches
On 12/3/20 4:34 AM, Maciej W. Rozycki wrote: > Do not convert a conditional jump into conditional execution (and remove > the jump as a consequence) if the jump has side effects. > > gcc/ > * ifcvt.c (dead_or_predicable) [!IFCVT_MODIFY_TESTS]: Bail out > if `!onlyjump_p'. OK

  1   2   >