Re: [00/23] Make fwprop use an on-the-side RTL SSA representation

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/26/20 9:03 AM, Richard Sandiford wrote: > Thanks for the reviews. > > Jeff Law via Gcc-patches writes: >> On 11/13/20 1:10 AM, Richard Sandiford via Gcc-patches wrote: >>> Just after GCC 10 stage 1 closed (oops), I posted a patch to add a new >>> combine pass. One of its main aims was to

Re: Modules doc

2020-11-29 Thread Sandra Loosemore
On 11/20/20 10:12 AM, Nathan Sidwell wrote: @@ -214,14 +215,21 @@ in the following sections. -faligned-new=@var{n} -fargs-in-order=@var{n} -fchar8_t -fcheck-new @gol -fconstexpr-depth=@var{n} -fconstexpr-cache-depth=@var{n} @gol -fconstexpr-loop-limit=@var{n} -fconstexpr-ops-limit=@var{n

Re: [21/23] doc: Add documentation for rtl-ssa

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/13/20 1:22 AM, Richard Sandiford via Gcc-patches wrote: > This patch adds some documentation to rtl.texi about the SSA form. > It only really describes the high-level structure -- I think for > API-level stuff it's better to rely on function comments instead. > > gcc/ > * doc/rtl.tex

Re: [11/23] Split update_cfg_for_uncondjump out of combine

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/13/20 1:16 AM, Richard Sandiford via Gcc-patches wrote: > Later patches want to reuse combine's update_cfg_for_uncondjump, > so this patch makes it a public cfgrtl.c function. > > gcc/ > * cfgrtl.h (update_cfg_for_uncondjump): Declare. > * combine.c (update_cfg_for_uncondjump):

Re: [PATCH] RISC-V: Always define MULTILIB_DEFAULTS

2020-11-29 Thread Kito Cheng via Gcc-patches
Committed to trunk :) On Sat, Nov 28, 2020 at 7:49 AM Jim Wilson wrote: > > On Fri, Nov 20, 2020 at 10:38 PM Kito Cheng wrote: > > > On Sat, Nov 21, 2020 at 6:12 AM Jim Wilson wrote: > > > On Fri, Nov 20, 2020 at 12:34 AM Kito Cheng > > wrote: > > > > > > > - Define MULTILIB_DEFAULTS can redu

Re: [PATCH] Fix print_multilib_info when default arguments appear in the option list with '!'

2020-11-29 Thread Kito Cheng via Gcc-patches
Committed :) On Sat, Nov 28, 2020 at 7:45 AM Jim Wilson wrote: > > On Thu, Nov 26, 2020 at 1:04 AM Kito Cheng wrote: > > > * gcc.c (print_multilib_info): Check default arguments not > > appeared in multi-lib option list with '!' > > > > OK. > > Jim

[PATCH] Add a new pattern in 4-insn combine

2020-11-29 Thread HAO CHEN GUI via Gcc-patches
Hi,   This patch adds a new pattern(combine 4 insns to 3 insns) in 4-insn combine. In the patch, newpat is split twice. The newpat, newi2pat and newi1pat replace i3, i2 and i1 respectively. The 4 to 3 combine is done at the end where all former attempts fail. In 4 insn combine pre-check, the

Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-29 Thread Iain Sandoe
Hi Martin, Martin Sebor via Gcc-patches wrote: On 11/10/20 12:38 PM, Iain Sandoe wrote: —— commit message. If an interface is marked 'deprecated' then, presumably, at some point it will be withdrawn and no longer available. The 'unavailable' attribute makes it possible to mark up interface

[committed] Fix minor bug in ft32 widening multiply

2020-11-29 Thread Jeff Law via Gcc-patches
Combine has this little check: /* Replacing the operand of a SUBREG or a ZERO_EXTEND with a CONST_INT is not valid, because after the replacement, the original mode would be gone.  Unfortunately, we can't tell when do_SUBST is called to replace the operand thereof,

Re: [07/23] Add a class that multiplexes two pointer types

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/26/20 9:15 AM, Richard Sandiford wrote: > Jeff Law writes: >> On 11/13/20 1:14 AM, Richard Sandiford via Gcc-patches wrote: >>> This patch adds a pointer_mux class that provides similar >>> functionality to: >>> >>> union { T1 *a; T2 *b; }; >>> ... >>> bool is_b_rather_than_a;

Re: [PATCH] testsuite: Correct check_effective_target_hwaddress_exec

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/27/20 11:46 AM, Matthew Malcomson via Gcc-patches wrote: > Hello, > > - > > This test should ensure that we can compile with hwasan, that such a compiled > binary runs as expected, *and* that we're running on a kernel which implements > the capability to ignore the top bytes of pointer

Re: [C++ patch] Re: Free more of CFG in release_function_body

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/27/20 6:26 AM, Jan Hubicka wrote: >>> On Wed, Nov 25, 2020 at 3:11 PM Jan Hubicka wrote: > On Tue, 24 Nov 2020, Jan Hubicka wrote: > >> Hi, >> at the end of processing function body we loop over basic blocks and >> free all edges while we do not free the rest. I think

Re: [PATCH] d: Add freebsd support for D compiler and runtime

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/28/20 9:04 AM, Iain Buclaw via Gcc-patches wrote: > Hi, > > This patch adds the necessary version conditions and configure rules in > place to allow building the D compiler on FreeBSD. > > Running the testsuite on both i386 and x86_64, all tests except for one > passes (gdc.test/runnable/t

Re: [PATCH] rtl_dump_bb: fix segfault when reporting internal error

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/26/20 12:24 PM, Ilya Leoshkevich via Gcc-patches wrote: > Bootstrapped and regtested on x86_64-redhat-linux and > s390x-redhat-linux. Ok for master? > > > > During ICE reporting, sometimes rtl_dump_bb is called on partially > initialized basic blocks. This produces another ICE, obscuring

Re: [PATCH] doc: Fix description of dg-require-effective-target

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/26/20 9:32 AM, Jonathan Wakely via Gcc-patches wrote: > The optional target selector for the dg-require-effective-target > directive needs to be { target selector } not just { selector } as > currently documented. > > gcc/ChangeLog: > > * doc/sourcebuild.texi (Directives): Fix descri

Re: [PATCH] Better __ashlDI3, __ashrDI3 and __lshrDI3 functions, plus fixed __bswapsi2 function

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/11/20 1:33 AM, Stefan Kanthak wrote: > Jakub Jelinek wrote: > >> On Tue, Nov 10, 2020 at 04:48:10PM -0700, Jeff Law via Gcc-patches wrote: @@ -486,10 +425,10 @@ SItype __bswapsi2 (SItype u) { - return u) & 0xff00) >> 24) - | (((u) & 0x00ff)

Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-29 Thread Martin Sebor via Gcc-patches
On 11/10/20 12:38 PM, Iain Sandoe wrote: Hi Jospeh, Joseph Myers wrote: This patch seems to be missing documentation for the new attribute in extend.texi. Apologies, for that omission, revised patch includes the documentation and also addresses Richi’s comments. documentation patch tested

Re: [PATCH] PR fortran/98017 - [8/9/10/11 Regression] Suspected regression using PACK

2020-11-29 Thread Harald Anlauf
Hi Thomas, > I don't think that this is a feature of gfc_copy_expr, I think it is a > bug which probably also bites us in other circumstances which we may > work around in other places and/or which causes other instances of > wrong code. > > So, I'd very much prefer that the character length is se

Re: [PATCH] handle conditionals in -Wstringop-overflow et al. (PR 92936)

2020-11-29 Thread Martin Sebor via Gcc-patches
On 11/13/20 2:34 PM, Jeff Law wrote: On 11/2/20 7:24 PM, Martin Sebor wrote: The attached patch extends compute_objsize() to handle conditional expressions represented either as PHIs or MIN_EXPR and MAX_EXPR. To simplify the handling of the -Wstringop-overflow/-overread warnings the change fac

Fix freeing of thunk_info

2020-11-29 Thread Jan Hubicka
Hi, thunk_info should be freed with ggc_delete since it is ggc allocated. Bootstrapped/regtested x86_64-linux, Honza PR jit/97867 * symtab-thunks.h (thunk_info::release): Use ggc_delete. diff --git a/gcc/symtab-thunks.h b/gcc/symtab-thunks.h index 41a684995b3..0dba2217793 100644 --

Re: [PATCH] d: Add darwin support for D language front-end

2020-11-29 Thread Iain Buclaw via Gcc-patches
Excerpts from Iain Sandoe's message of November 29, 2020 1:49 pm: > Hi Iain > > Iain Buclaw wrote: > >> This patch adds necessary predefined version symbols and support for >> moduleinfo sections for darwin to allow testing libphobos support. >> >> OK for mainline? > > As we discussed off-list,

Re: [PATCH] configure: Support building D front-end on *-*-darwin*

2020-11-29 Thread Iain Buclaw via Gcc-patches
Excerpts from Iain Sandoe's message of November 29, 2020 10:35 am: > Hi Iain > > Iain Buclaw wrote: > >> The bootstrap has been succeeding for some time now, there's no need to >> set it as an unsupported language. >> >> OK for mainline? > > At present, this breaks bootstrap on 32 bit Darwin ho

[committed] Fix hppa64-hpux11 build to remove source paths from embedded path.

2020-11-29 Thread John David Anglin
Fix hppa64-hpux11 build to remove source build paths from embedded path. This change adds the +nodefaultrpath ld option to remove all library paths that were specified with the -L option from the embedded path. Without this options, the emebedded path for installed shared libraries contains pat

[PATCH] modulo-sched: Carefully process loop counter initialization [PR97421]

2020-11-29 Thread Roman Zhuykov via Gcc-patches
Hi all! Same patch attached with commit message and inlined below. It was successfully reg-strapped on aarch64-linux. Planning also to briefly check amd64 build before push. Pushing in a few days if no objections. Any opinion about backports? Roman -- modulo-sched: Carefully process loop

Re: [PATCH 00/31] VAX: Bring the port up to date (yes, MODE_CC conversion is included)

2020-11-29 Thread Martin Sebor via Gcc-patches
On 11/25/20 11:36 AM, Maciej W. Rozycki wrote: On Fri, 20 Nov 2020, Maciej W. Rozycki wrote: These changes have been regression-tested throughout development with the `vax-netbsdelf' target running NetBSD 9.0, using said VAXstation 4000/60, which uses the Mariah implemementation of the VAX ar

Re: [PATCH v2 01/31] PR target/58901: reload: Handle SUBREG of MEM with a mode-dependent address

2020-11-29 Thread Jeff Law via Gcc-patches
On 11/27/20 12:22 PM, Maciej W. Rozycki wrote: > On Fri, 27 Nov 2020, Ulrich Weigand wrote: > >>> NB I find the reindentation resulting in `push_reload' awful, just as I >>> do either version of the massive logical expression involved. Perhaps we >>> could factor these out into `static inlin

[committed] Fix PR ada/97504 on hppa*-*-hpux*

2020-11-29 Thread John David Anglin
The following change fixes PR ada/97504 on hppa*-*-hpux*. Tested on hppa2.0w-hp-hpux11.11. Committed to trunk. Regards, Dave 2020-11-29 John David Anglin gcc/ada/ PR ada/97504 * Makefile.rtl (LIBGNAT_TARGET_PAIRS) : Use wraplf version of Aux_Long_Long_Float. diff -

Re: Handle EAF_DIRECT and EAF_UNUSED of pure calls

2020-11-29 Thread Jan Hubicka
> On Wed, Nov 25, 2020 at 3:14 PM Jan Hubicka wrote: > > > > Hi, > > while looking into structalias I noticed that we ignore EAF flags here. > > This is pity since we still can apply direct and unused. > > This patch simply copies logic from normal call handling. I relaize that > > it is bit more

Detect unused parameters in ipa-modref

2020-11-29 Thread Jan Hubicka
Hi, ipa-modref tracks only parameters with SSA_NAMES. This makes completely unused parameters to get no flags, while EAF_UNUSED should be right one. This patch implements it. I also noticed that EAF_UNUSED implies all other flags, but we set only EAF_UNUSED. This measn that we should special cas

Re: [PATCH] configure: Support building D front-end on *-*-darwin*

2020-11-29 Thread Iain Buclaw via Gcc-patches
Excerpts from Iain Sandoe's message of November 29, 2020 10:35 am: > Hi Iain > > Iain Buclaw wrote: > >> The bootstrap has been succeeding for some time now, there's no need to >> set it as an unsupported language. >> >> OK for mainline? > > At present, this breaks bootstrap on 32 bit Darwin ho

Re: [committed] d: Remove d_size_t from front-end sources (PR 87788)

2020-11-29 Thread Iain Buclaw via Gcc-patches
Excerpts from Iain Sandoe's message of November 29, 2020 1:54 pm: > Iain Buclaw via Gcc-patches wrote: >> >> The typedef for d_size_t assumes that the implementation of the >> front-end is written in D itself, where size_t can map only to uint32_t >> or uint64_t. As that is not the case for the c

Re: [committed] d: Remove d_size_t from front-end sources (PR 87788)

2020-11-29 Thread Iain Sandoe
Iain Buclaw via Gcc-patches wrote: The typedef for d_size_t assumes that the implementation of the front-end is written in D itself, where size_t can map only to uint32_t or uint64_t. As that is not the case for the current D front-end, the typedef should be removed. This would fix the bootstr

Re: [PATCH] d: Add darwin support for D language front-end

2020-11-29 Thread Iain Sandoe
Hi Iain Iain Buclaw wrote: This patch adds necessary predefined version symbols and support for moduleinfo sections for darwin to allow testing libphobos support. OK for mainline? As we discussed off-list, this sets ABI (the section names are visible and part of the contract with the run

[committed] d: Remove d_size_t from front-end sources (PR 87788)

2020-11-29 Thread Iain Buclaw via Gcc-patches
Hi, The typedef for d_size_t assumes that the implementation of the front-end is written in D itself, where size_t can map only to uint32_t or uint64_t. As that is not the case for the current D front-end, the typedef should be removed. This would fix the bootstrap on targets where in C++ size_t

Re: [PATCH] PR fortran/98017 - [8/9/10/11 Regression] Suspected regression using PACK

2020-11-29 Thread Tobias Burnus
On 28.11.20 23:16, Harald Anlauf wrote: When substituting an array-valued character parameter variable, the call to gfc_copy_expr returns character length 1. Fix up the resulting length. [...] I disagree. @@ -2096,6 +2096,10 @@ simplify_parameter_variable (gfc_expr *p, int type) retur

Re: [PATCH] configure: Support building D front-end on *-*-darwin*

2020-11-29 Thread Iain Sandoe
Hi Iain Iain Buclaw wrote: The bootstrap has been succeeding for some time now, there's no need to set it as an unsupported language. OK for mainline? At present, this breaks bootstrap on 32 bit Darwin hosts. Once that’s resolved, then it seems a reasonable to make sure that the D FE is bu

Re: [PATCH] PR fortran/98017 - [8/9/10/11 Regression] Suspected regression using PACK

2020-11-29 Thread Thomas Koenig via Gcc-patches
HI Harald, When substituting an array-valued character parameter variable, the call to gfc_copy_expr returns character length 1. Fix up the resulting length. I could not figure out whether this is a bug or a feature of gfc_copy_expr. But the fix to simplify_parameter_variable would not do any