Re: [PATCH 1/3, v2] rs6000: Add base support and types for defining MMA built-ins.

2020-06-18 Thread Segher Boessenkool
Hi! On Thu, Jun 18, 2020 at 03:44:04PM -0500, Peter Bergner wrote: > This patch adds the new -mmma option as well as the initial MMA support, > which includes the target specific __vector_pair and __vector_quad types, > the POImode and PXImode partial integer modes they are mapped to, and their >

Re: [PATCH 00/28] rs6000: Auto-generate builtins from descriptions

2020-06-18 Thread will schmidt via Gcc-patches
On Thu, 2020-06-18 at 17:01 -0500, Bill Schmidt wrote: > Thanks for the review, Will! Responses below... > > On 6/18/20 11:08 AM, will schmidt wrote: > > On Wed, 2020-06-17 at 14:46 -0500, Bill Schmidt wrote: > > > I posted a version of these patches back in stage 4 (February), > > > but we agree

[PATCH 3/6 ver 3] rs6000, Add vector replace builtin support

2020-06-18 Thread Carl Love via Gcc-patches
V3 fixes: Fixed bad word breaks in ChangLog. Replace spaces with tabs in ChangeLog. v2 fixes: change log entries config/rs6000/vsx.md, config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-call.c. gcc/config/rs6000/rs6000-call.c: fixed if check for 3rd

[PATCH 4/6 ver 3] rs6000, Add vector shift double builtin support

2020-06-18 Thread Carl Love via Gcc-patches
V3 Fixes Replace spaces with tabs in ChangeLog. Minor edits to ChangeLog entry. Minor edits to vec_sldb description in gcc/doc/extend.texi. v2 fixes: change logs redone gcc/config/rs6000/rs6000-call.c - added spaces

[PATCH 5/6 ver 3] rs6000, Add vector splat builtin support

2020-06-18 Thread Carl Love via Gcc-patches
v3 fixes: Minor cleanup in the ChangeLog description. - v2 fixes: change log fixes gcc/config/rs6000/altivec changed name of define_insn and define_expand for vxxspltiw... to xxspltiw... Fixed spaces in gen_xxsplti32dx_v4sf_inst (ope

[PATCH 6/6 ver 3] rs6000 Add vector blend, permute builtin support

2020-06-18 Thread Carl Love via Gcc-patches
v3 fixes: Replace spaces with tabs in ChangeLog description. Fix implementation comments for define_expand "xxpermx" in file gcc/config/rs6000/alitvec.md. Fix minor typos in the comments for the changes in gcc/config/rs6000/rs6000-call.c. v2 changes: Updated

[PATCH 0/6 ver 3] ] Permute Class Operations

2020-06-18 Thread Carl Love via Gcc-patches
Version 3. Updated the patches based on the comments from Will. The changes were primarily formatting and cleaning up comments and the documentation. - Version 2. The patches in this series have been updated per the comments from Segher. I have put at the top of

[PATCH 1/6 ver 3] rs6000, Update support for vec_extract

2020-06-18 Thread Carl Love via Gcc-patches
V3 changes Redo ChangeLog for code move. Replace spaces with tabs in ChangeLog. Replaced intruction names using * with the actual list of names. For example vextdu*vrx with the explicit instruction names vextdubvrx, vextduhvrx, etc. - v2 changes conf

[PATCH 2/6 ver 3] rs6000 Add vector insert builtin support

2020-06-18 Thread Carl Love via Gcc-patches
V3 changes Replace spaces with of tabs in ChangeLog Ditto in gcc/config/rs6000/vsx.md. Updated description for vec_insertl() builtin. Cleaned up vec_insert description. - v2 changes Fix change log entry for config/rs6000/alt

Re: [PATCH] avoid false positives due to compute_objsize (PR 95353)

2020-06-18 Thread Martin Sebor via Gcc-patches
On 6/17/20 4:37 PM, Jeff Law via Gcc-patches wrote: On Wed, 2020-06-17 at 10:04 +0200, Jakub Jelinek via Gcc-patches wrote: On Wed, Jun 17, 2020 at 09:13:25AM +0200, Richard Biener via Gcc-patches wrote: Not doing the transformation I suggest at all, or not doing it in cases when the member doe

Re: [PATCH 00/28] rs6000: Auto-generate builtins from descriptions

2020-06-18 Thread Bill Schmidt via Gcc-patches
Thanks for the review, Will!  Responses below... On 6/18/20 11:08 AM, will schmidt wrote: On Wed, 2020-06-17 at 14:46 -0500, Bill Schmidt wrote: I posted a version of these patches back in stage 4 (February), but we agreed that holding off until stage 1 was a better idea. Since then I've made m

[PATCH] PR fortran/95587 - ICE in gfc_target_encode_expr, at fortran/target-memory.c:362

2020-06-18 Thread Harald Anlauf
For EQUIVALENCE objects, constraints were only checked for ordinary variables, but not for CLASS variables. Extend the checks to CLASS variable attributes. Regtested on x86_64-pc-linux-gnu. OK for master? Thanks, Harald PR fortran/95587 - ICE in gfc_target_encode_expr, at fortran/target-memor

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Luis Machado via Gcc-patches
On 6/18/20 3:34 PM, Martin Liška wrote: On 6/18/20 7:18 PM, Luis Machado wrote: On 6/18/20 1:02 PM, Martin Liška wrote: On 6/18/20 5:47 PM, Luis Machado wrote: That's another one I noticed alongside the first one I reported. That's good that you managed to reproduce it. Can you please send m

[PATCH 3/3, v2] rs6000: Add testsuite test cases for MMA built-ins.

2020-06-18 Thread Peter Bergner via Gcc-patches
Changes since v1: - No changes from v1. This patch adds the testsuite test cases for all of the MMA built-ins. This patch was tested with patch1 + patch2. Peter 2020-06-18 Peter Bergner gcc/testsuite/ * gcc.target/powerpc/mma-builtin-1.c: New test. * gcc.target/powerpc/mma

[PATCH 2/3, v2] rs6000: Add MMA built-in function definitions

2020-06-18 Thread Peter Bergner via Gcc-patches
Changes since v1: - Updated ChangeLog entry per Segher's suggestion. - Updated doc/extend.texi with correct built-in names for __builtin_vsx_xvcvspbf16 and __builtin_vsx_xvcvbf16sp. This patches adds the actual MMA built-ins. The MMA accumulators are INOUT operands for most MMA instructio

[PATCH 1/3, v2] rs6000: Add base support and types for defining MMA built-ins.

2020-06-18 Thread Peter Bergner via Gcc-patches
Changes since v1: - Modified verbiage in mma.md per Will's suggestion. - Modified rs6000_split_multireg_move to correctly handle BE PXImode and POImode moves. This patch adds the new -mmma option as well as the initial MMA support, which includes the target specific __vector_pair and __vec

[PATCH 0/3, v2] rs6000: Add support for Matrix-Multiply Assist (MMA) built-in functions.

2020-06-18 Thread Peter Bergner via Gcc-patches
POWER ISA 3.1 added new Matrix-Multiply Assist (MMA) instructions. The following patch set adds support for generating these instructions through built-in functions which are enabled with the -mmma option. The patch1 and patch1+patch2+patch3 have been bootstrapped and regtested on powerpc64le-linu

[pushed] c++: More P2002 operator<=> refinements.

2020-06-18 Thread Jason Merrill via Gcc-patches
* Disallow && references. * Allow empty unions. * Improve diagnostics for a subobject comparison with non-comparison-category type. Tested x86_64-pc-linux-gnu, applying to trunk. gcc/cp/ChangeLog: * method.c (early_check_defaulted_comparison): Check for &&. (build_comparison_op

Re: [PATCH] vect: Use vect_relevant_for_alignment_p consistently

2020-06-18 Thread Richard Sandiford
"Yangfei (Felix)" writes: > Hi, > > Noticed two places in tree-vect-data-refs.c where we can use function > vect_relevant_for_alignment_p. > Looks like these two are missed when we were introducing the function. > Bootstrapped and tested on aarch64-linux-gnu. OK to go? > > ChangeLog modi

Re: [PATCH 6/7] [OpenACC] Reference count self-checking (dynamic_refcount version)

2020-06-18 Thread Julian Brown
On Fri, 22 May 2020 15:21:44 -0700 Julian Brown wrote: > This is a new version of the reference count self-checking code, > adjusted to work with the new (old) dynamic_refcount counting scheme. > The key observation is that a target_mem_desc that was created from > a dynamic data lifetime should

Re: [PATCH RFC] Propose Updating Basic Block Checking Limits in variable_tracking_main_1

2020-06-18 Thread Nicholas Krause via Gcc-patches
On 6/18/20 2:32 PM, Nicholas Krause wrote: From: Nicholas Krause Changelog:gcc/ *var-tracking.c(variable_tracking_main): Update numbers for both number of basic blocks per function and number of edges per function to basic blocks to more sane numbers, in order

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Martin Liška
On 6/18/20 7:18 PM, Luis Machado wrote: On 6/18/20 1:02 PM, Martin Liška wrote: On 6/18/20 5:47 PM, Luis Machado wrote: That's another one I noticed alongside the first one I reported. That's good  that you managed to reproduce it. Can you please send me your .config and I can reproduce that

[PATCH RFC] Propose Updating Basic Block Checking Limits in variable_tracking_main_1

2020-06-18 Thread Nicholas Krause via Gcc-patches
From: Nicholas Krause Changelog:gcc/ *var-tracking.c(variable_tracking_main): Update numbers for both number of basic blocks per function and number of edges per function to basic blocks to more sane numbers, in order to avoid extra edge cases. Signed-of

Re: OpenACC 'attach'/'detach' has no business affecting user-visible reference counting (was: [PATCH 07/13] OpenACC 2.6 deep copy: libgomp parts)

2020-06-18 Thread Julian Brown
Hi! On Tue, 9 Jun 2020 12:41:21 +0200 Thomas Schwinge wrote: > Hi Julian! > > On 2020-06-05T21:31:08+0100, Julian Brown > wrote: > > On Fri, 5 Jun 2020 13:17:09 +0200 > > Thomas Schwinge wrote: > >> On 2019-12-17T21:03:47-0800, Julian Brown > >> wrote: > >> > This part contains the libgo

[PATCH] i386: Fix mode of ZERO_EXTRACT RTXes, remove ext_register_operand predicate.

2020-06-18 Thread Uros Bizjak via Gcc-patches
The mode of ZERO_EXTRACT RTX should match the mode of its LOC register operand. The mode should be HI, SI or DImode to enable combine to synthesize extractions from HImode and DImode operands, in addition to existing SImode. Further, these changes tighten allowed modes for extv, extzv and insv nam

Re: [PATCH] Fix stack pointer handling in ms_hook_prologue functions for i386 target.

2020-06-18 Thread Paul Gofman via Gcc-patches
Hello Jeff,     pinging the patch. Regards,     Paul. On 3/26/20 01:49, Jeff Law wrote: > On Mon, 2020-02-10 at 19:22 +0300, Paul Gofman wrote: >> ChangeLog: >> PR target/91489 >> * config/i386/i386.md (simple_return): Also check >> for ms_hook_prologue function attribute. >>

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Luis Machado via Gcc-patches
On 6/18/20 1:02 PM, Martin Liška wrote: On 6/18/20 5:47 PM, Luis Machado wrote: That's another one I noticed alongside the first one I reported. That's good that you managed to reproduce it. Can you please send me your .config and I can reproduce that locally. Thanks, Martin Here it is. It

RE: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code-gen.

2020-06-18 Thread Srinath Parvathaneni
Hi, > -Original Message- > From: Christophe Lyon > Sent: 18 June 2020 16:44 > To: Srinath Parvathaneni > Cc: gcc-patches@gcc.gnu.org; Kyrylo Tkachov > Subject: Re: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics > code-gen. > > On Thu, 18 Jun 2020 at 17:34, Srinath Parvat

Re: [PATCH 00/28] rs6000: Auto-generate builtins from descriptions

2020-06-18 Thread will schmidt via Gcc-patches
On Wed, 2020-06-17 at 14:46 -0500, Bill Schmidt wrote: > I posted a version of these patches back in stage 4 (February), > but we agreed that holding off until stage 1 was a better idea. > Since then I've made more progress and reorganized the patches > accordingly. This group of patches lays grou

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Martin Liška
On 6/18/20 5:47 PM, Luis Machado wrote: That's another one I noticed alongside the first one I reported. That's good  that you managed to reproduce it. Can you please send me your .config and I can reproduce that locally. Thanks, Martin

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Luis Machado via Gcc-patches
On 6/18/20 12:40 PM, Martin Liška wrote: I see the following ICE for aarch64 kernel build: $ cat neon.i #pragma GCC push_options #pragma GCC target "arch=armv8.2-a+bf16" #pragma GCC pop_options $ ./xgcc -B. ~/Programming/testcases/neon.i -c -mbranch-protection=pac-ret /home/marxin/Programming/t

Re: [PATCH] c++: ICE in requires-expressions with invalid args [PR95735]

2020-06-18 Thread Jason Merrill via Gcc-patches
On 6/18/20 11:11 AM, Marek Polacek wrote: This ICE-on-invalid goes back to GCC 6. In finish_template_variable, if coerce_innermost_template_parms returns error_mark_node, we pass it down to constraints_satisfied_p and that error_mark_node flows down to various satisfy_* functions and then to var

Re: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code-gen.

2020-06-18 Thread Christophe Lyon via Gcc-patches
On Thu, 18 Jun 2020 at 17:34, Srinath Parvathaneni wrote: > > Hi, > > > -Original Message- > > From: Christophe Lyon > > Sent: 18 June 2020 16:06 > > To: Kyrylo Tkachov > > Cc: Srinath Parvathaneni ; gcc- > > patc...@gcc.gnu.org > > Subject: Re: [PATCH][GCC-10 Backport] arm: Fix MVE scal

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Martin Liška
I see the following ICE for aarch64 kernel build: $ cat neon.i #pragma GCC push_options #pragma GCC target "arch=armv8.2-a+bf16" #pragma GCC pop_options $ ./xgcc -B. ~/Programming/testcases/neon.i -c -mbranch-protection=pac-ret /home/marxin/Programming/testcases/neon.i:3:9: internal compiler err

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Martin Liška
On 6/18/20 5:02 PM, Jeff Law wrote: On Thu, 2020-06-18 at 14:21 +0200, Martin Liška wrote: On 6/18/20 1:32 PM, Luis Machado wrote: FTR, I'm running into this ICE when attempting to build the Linux Kernel for arm64. Hello. Thanks for the report. More specifically: /repos/linux-arm/kernel/

RE: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code-gen.

2020-06-18 Thread Srinath Parvathaneni
Hi, > -Original Message- > From: Christophe Lyon > Sent: 18 June 2020 16:06 > To: Kyrylo Tkachov > Cc: Srinath Parvathaneni ; gcc- > patc...@gcc.gnu.org > Subject: Re: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics > code-gen. > > Hi, > > On Thu, 18 Jun 2020 at 11:43, Ky

Re: [committed] Fix use of inaccessible member in pr85503.C [PR95716]

2020-06-18 Thread Christophe Lyon via Gcc-patches
On Thu, 18 Jun 2020 at 16:56, Patrick Palka wrote: > > On Thu, 18 Jun 2020, Christophe Lyon wrote: > > > Hi, > > > > On Wed, 17 Jun 2020 at 15:16, Patrick Palka via Gcc-patches > > wrote: > > > > > > The recent PR41437 fix exposed a latent use of an inaccessible member in > > > the below testcase

Re: [PATCH] avoid warning for memset writing over multiple members (PR 95667)

2020-06-18 Thread Jeff Law via Gcc-patches
On Thu, 2020-06-18 at 08:56 -0600, Martin Sebor via Gcc-patches wrote: > In the recent fix to avoid false positives due to compute_objsize > (PR 95353) where I removed the call to compute_builtin_object_size > when computing object sizes for calls to string functions like > strcpy, I kept it out of

[PATCH] c++: ICE in requires-expressions with invalid args [PR95735]

2020-06-18 Thread Marek Polacek via Gcc-patches
This ICE-on-invalid goes back to GCC 6. In finish_template_variable, if coerce_innermost_template_parms returns error_mark_node, we pass it down to constraints_satisfied_p and that error_mark_node flows down to various satisfy_* functions and then to various tsubst_* functions, where we crash. di

Re: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code-gen.

2020-06-18 Thread Christophe Lyon via Gcc-patches
Hi, On Thu, 18 Jun 2020 at 11:43, Kyrylo Tkachov wrote: > > > > > -Original Message- > > From: Srinath Parvathaneni > > Sent: 17 June 2020 17:17 > > To: gcc-patches@gcc.gnu.org > > Cc: Kyrylo Tkachov > > Subject: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code- > > ge

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Jeff Law via Gcc-patches
On Thu, 2020-06-18 at 14:21 +0200, Martin Liška wrote: > On 6/18/20 1:32 PM, Luis Machado wrote: > > FTR, I'm running into this ICE when attempting to build the Linux Kernel > > for arm64. > > Hello. > > Thanks for the report. > > > More specifically: > > > > /repos/linux-arm/kernel/bpf/core.c

[PATCH] avoid warning for memset writing over multiple members (PR 95667)

2020-06-18 Thread Martin Sebor via Gcc-patches
In the recent fix to avoid false positives due to compute_objsize (PR 95353)​ where I removed the call to compute_builtin_object_size when computing object sizes for calls to string functions like strcpy, I kept it out of a misplaced abundance of caution when doing the same for the more permissive

Re: [committed] Fix use of inaccessible member in pr85503.C [PR95716]

2020-06-18 Thread Patrick Palka via Gcc-patches
On Thu, 18 Jun 2020, Christophe Lyon wrote: > Hi, > > On Wed, 17 Jun 2020 at 15:16, Patrick Palka via Gcc-patches > wrote: > > > > The recent PR41437 fix exposed a latent use of an inaccessible member in > > the below testcase. > > > > Committed as obvious after verifying that the testcase no lo

Re: [PATCH] vectorizer: add _bb_vec_info::const_iterator

2020-06-18 Thread Jonathan Wakely via Gcc-patches
On 18/06/20 16:25 +0200, Martin Liška wrote: On 6/18/20 11:43 AM, Jonathan Wakely wrote: On 18/06/20 00:55 +0100, Jonathan Wakely wrote: Does your reverse iterator work correctly? It looks to me like it will fail to visit the region_begin statement, because this loop will terminate when the rev

Re: [PATCH] vectorizer: add _bb_vec_info::const_iterator

2020-06-18 Thread Martin Liška
On 6/18/20 11:43 AM, Jonathan Wakely wrote: On 18/06/20 00:55 +0100, Jonathan Wakely wrote: Does your reverse iterator work correctly? It looks to me like it will fail to visit the region_begin statement, because this loop will terminate when the reverse iterator reaches the end() value, and wil

RE: [PATCH][GCC] arm: Fix the failing mve scalar shift execution tests.

2020-06-18 Thread Srinath Parvathaneni
Hi, > -Original Message- > From: Christophe Lyon > Sent: 18 June 2020 14:38 > To: Srinath Parvathaneni > Cc: gcc Patches > Subject: Re: [PATCH][GCC] arm: Fix the failing mve scalar shift execution > tests. > > Hi, > > > On Thu, 18 Jun 2020 at 15:30, Srinath Parvathaneni > wrote: >

Re: [committed] Fix use of inaccessible member in pr85503.C [PR95716]

2020-06-18 Thread Christophe Lyon via Gcc-patches
Hi, On Wed, 17 Jun 2020 at 15:16, Patrick Palka via Gcc-patches wrote: > > The recent PR41437 fix exposed a latent use of an inaccessible member in > the below testcase. > > Committed as obvious after verifying that the testcase no longer fails to > compile due to the reported access error. > I'

Re: [PATCH] rs6000: fix creation of VEC_COND_EXPR

2020-06-18 Thread Segher Boessenkool
On Thu, Jun 18, 2020 at 10:21:00AM +0200, Martin Liška wrote: > All right, let's do it better. Thanks! (Btw, the MIME sub-type of "x-patch" makes this unviewable on many browsers, in the gcc-patches@ archive (and unusable in many mail clients of course). Anything "x-*" should never be used on pu

[committed][OG10] amdgcn: Switch to HSACO v3 binary format

2020-06-18 Thread Andrew Stubbs
This patch is now backported to the devel/omp/gcc-10 branch. Andrew On 17/06/2020 10:13, Andrew Stubbs wrote: This upgrades the compiler to emit HSA Code Object v3 binaries.  This means changing the assembler directives, and linker command line options. The gcn-run and libgomp loaders need co

Re: [PATCH][GCC] arm: Fix the failing mve scalar shift execution tests.

2020-06-18 Thread Christophe Lyon via Gcc-patches
Hi, On Thu, 18 Jun 2020 at 15:30, Srinath Parvathaneni wrote: > > Hello, > > In GCC testsuite the MVE scalar shift execution tests > (mve_scalar_shifts[1-4].c) are failings > because of executing them on target hardware which doesn't support MVE > instructions. This patch > restricts those tes

[PATCH][GCC] arm: Fix the failing mve scalar shift execution tests.

2020-06-18 Thread Srinath Parvathaneni
Hello, In GCC testsuite the MVE scalar shift execution tests (mve_scalar_shifts[1-4].c) are failings because of executing them on target hardware which doesn't support MVE instructions. This patch restricts those tests to execute only on target hardware that support MVE instructions. Regressio

Re: [Patch]O penMP/Fortran: Reject allocatable components in map clause

2020-06-18 Thread Jakub Jelinek via Gcc-patches
On Thu, Jun 18, 2020 at 03:08:53PM +0200, Tobias Burnus wrote: > OpenMP 4.5 does not permit allocatable components in > list items of the map clause. (OpenMP 5 does.) > As OpenMP 5 support is not implemented, let's avoid > generating wrong code by diagnosing this (until > implemented). > > OK? Ok

[Patch]O penMP/Fortran: Reject allocatable components in map clause

2020-06-18 Thread Tobias Burnus
OpenMP 4.5 does not permit allocatable components in list items of the map clause. (OpenMP 5 does.) As OpenMP 5 support is not implemented, let's avoid generating wrong code by diagnosing this (until implemented). OK? Tobias PS: I wonder whether something similar is needed for 'private' and 'fi

Re: [PATCH] middle-end/95739 - fix vector condition IFN expansion

2020-06-18 Thread Martin Liška
On 6/18/20 2:47 PM, Richard Biener wrote: This fixes the omission of moving the expansion result to the target. Thank you for the fix, it's new for me that this can happen. Martin Bootstrapped and tested on x86_64-unknown-linux-gnu, fixes the observed -m32 FAIL. 2020-06-18 Richard Biener

[PATCH] Fix typo in tree-ssa-reassoc.c.

2020-06-18 Thread Martin Liška
I'm pushing the following fix that caused occasional ICEs: gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/tree-ssa/pr68714.c -O3 -c during GIMPLE pass: reassoc /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/tree-ssa/pr68714.c: In function ‘f’: /home/marxin/Programming/gcc/gcc/testsuit

[PATCH] middle-end/95739 - fix vector condition IFN expansion

2020-06-18 Thread Richard Biener
This fixes the omission of moving the expansion result to the target. Bootstrapped and tested on x86_64-unknown-linux-gnu, fixes the observed -m32 FAIL. 2020-06-18 Richard Biener PR middle-end/95739 * internal-fn.c (expand_vect_cond_optab_fn): Move the result to the ta

[PATCH] gcc-changelog: checkout & pull order

2020-06-18 Thread Martin Liška
This fixes an order of commands. Installed to master. contrib/ChangeLog: * gcc-changelog/git_update_version.py: First checkout and then run git pull ---rebase. --- contrib/gcc-changelog/git_update_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/co

Re: [PATCH] gcc-changelog: support merge commits in git_update_version

2020-06-18 Thread Martin Liška
On 6/18/20 2:28 PM, Jakub Jelinek wrote: On Thu, Jun 18, 2020 at 02:16:32PM +0200, Martin Liška wrote: The patch addresses need to generate ChangeLog for a vendor branch (redhat/gcc-10-branch) that can contain merge commits. Tested on c518050989be3a224a04a8b33d73f37a16c30fbb and current active

Re: [PATCH] gcc-changelog: support merge commits in git_update_version

2020-06-18 Thread Jakub Jelinek via Gcc-patches
On Thu, Jun 18, 2020 at 02:16:32PM +0200, Martin Liška wrote: > The patch addresses need to generate ChangeLog for a vendor branch > (redhat/gcc-10-branch) that can contain merge commits. > > Tested on c518050989be3a224a04a8b33d73f37a16c30fbb and current active > branches. > Jakub: Can you please

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Martin Liška
On 6/18/20 1:32 PM, Luis Machado wrote: FTR, I'm running into this ICE when attempting to build the Linux Kernel for arm64. Hello. Thanks for the report. More specifically: /repos/linux-arm/kernel/bpf/core.c:1368:1: internal compiler error: ‘global_options’ are modified in local context

[PATCH] gcc-changelog: support merge commits in git_update_version

2020-06-18 Thread Martin Liška
The patch addresses need to generate ChangeLog for a vendor branch (redhat/gcc-10-branch) that can contain merge commits. Tested on c518050989be3a224a04a8b33d73f37a16c30fbb and current active branches. Jakub: Can you please test it? Martin contrib/ChangeLog: * gcc-changelog/git_update_

Re: drop -aux{dir,base}, revamp -dump{dir,base}

2020-06-18 Thread Tobias Burnus
On 6/18/20 12:39 PM, Alexandre Oliva wrote: Thanks. I see the main problem besides the dumppfx constness is the double dot before target, fixed in the revised patch below. With this, I think the libgomp testsuite might work with offloading again. Thanks. I have only tried the first one of the

[PATCH] [RFC] Delay asm_out_file initialization

2020-06-18 Thread Richard Biener
This delays asm_out_file initialization to until after IPA. OK, not actually for LTO for which the situation is more complicated since during IPA phases we write LTO IL and very early we output early debug DIEs. The RTL FE bits are a bit ugly and require checking for multiple invocations of init_a

Re: [stage1][PATCH] Add gcc_assert that &global_options are not dirty modified.

2020-06-18 Thread Luis Machado via Gcc-patches
FTR, I'm running into this ICE when attempting to build the Linux Kernel for arm64. More specifically: /repos/linux-arm/kernel/bpf/core.c:1368:1: internal compiler error: ‘global_options’ are modified in local context 1368 | { | ^ 0xc0554b cl_optimization_compare(gcc_options*, gcc_opti

Move simplification of statements using ranges into its own class.

2020-06-18 Thread Aldy Hernandez via Gcc-patches
Howdy. This moves all the simplification code from vr_values into a separate class (simplify_using_ranges). In doing so, we get rid of a bunch of dependencies on the internals of vr_values. The goal is to (a) remove unnecessary interdependendcies (b) be able to use this engine with any rang

Re: drop -aux{dir,base}, revamp -dump{dir,base}

2020-06-18 Thread Alexandre Oliva
On Jun 18, 2020, Tobias Burnus wrote: > On 6/18/20 8:10 AM, Alexandre Oliva wrote: >> Could you possibly give this *completely* untested patch a try and let >> me know whether it does any good? > Otherwise, see attachment. I now added also the @/tmp file which is > passed to mkoffload. Thanks.

Re: [PATCH] avoid early asm output

2020-06-18 Thread Jakub Jelinek via Gcc-patches
On Thu, Jun 18, 2020 at 12:03:26PM +0200, Richard Biener wrote: > Shortly thought about it but then went with int because of the > pre-existing interface of output_constant_def which "interferes" > with this (ripples down into users in expr.c as well). > > If you insist I'll hunt them all down ...

Re: [PATCH] avoid early asm output

2020-06-18 Thread Richard Biener
On Thu, 18 Jun 2020, Jakub Jelinek wrote: > On Thu, Jun 18, 2020 at 11:08:53AM +0200, Richard Biener wrote: > > This avoids early assembler output via the gimplifier creating > > new static CTORs. The output machinery seems to be prepared to > > output constants recursively and it's just a matter

Re: [PATCH] forwprop: simplify_vector_constructor follow-up fix [PR95713]

2020-06-18 Thread Richard Sandiford
Richard Biener writes: > On Thu, 18 Jun 2020, Jakub Jelinek wrote: > >> Hi! >> >> As the following testcase shows, the exception for the aarch64 >> vec_pack_trunc_di is not sufficient on x86, the halfvectype >> "vectors" have SImode but the x86 vec_pack_trunc_si meant for >> the bool bitmasks com

Re: [PATCH] phiopt: Improve minmax optimization [PR95699]

2020-06-18 Thread Richard Biener
On Thu, 18 Jun 2020, Jakub Jelinek wrote: > Hi! > > As discussed in the PR, the > x < 0x8000U to (int) x >= 0 > optimization stands in the way of minmax_replacement optimization, > so for comparisons with most of the constants it works well, but when the > above mentioned optimization trigger

Re: [PATCH] forwprop: simplify_vector_constructor follow-up fix [PR95713]

2020-06-18 Thread Richard Biener
On Thu, 18 Jun 2020, Jakub Jelinek wrote: > Hi! > > As the following testcase shows, the exception for the aarch64 > vec_pack_trunc_di is not sufficient on x86, the halfvectype > "vectors" have SImode but the x86 vec_pack_trunc_si meant for > the bool bitmasks combines 2x SImode into DImode, whil

RE: [PATCH][GCC-10 Backport] arm: Fix the MVE ACLE vaddq_m polymorphic variants.

2020-06-18 Thread Kyrylo Tkachov
> -Original Message- > From: Srinath Parvathaneni > Sent: 17 June 2020 18:32 > To: gcc-patches@gcc.gnu.org > Cc: Kyrylo Tkachov > Subject: [PATCH][GCC-10 Backport] arm: Fix the MVE ACLE vaddq_m > polymorphic variants. > > Hello, > > This patch fixes the MVE ACLE vaddq_m polymorphic v

Re: [PATCH] vectorizer: add _bb_vec_info::const_iterator

2020-06-18 Thread Jonathan Wakely via Gcc-patches
On 18/06/20 00:55 +0100, Jonathan Wakely wrote: Does your reverse iterator work correctly? It looks to me like it will fail to visit the region_begin statement, because this loop will terminate when the reverse iterator reaches the end() value, and will not actually process that gsi: - gimp

RE: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code-gen.

2020-06-18 Thread Kyrylo Tkachov
> -Original Message- > From: Srinath Parvathaneni > Sent: 17 June 2020 17:17 > To: gcc-patches@gcc.gnu.org > Cc: Kyrylo Tkachov > Subject: [PATCH][GCC-10 Backport] arm: Fix MVE scalar shift intrinsics code- > gen. > > Hello, > > This patch modifies the MVE scalar shift RTL patterns.

Re: drop -aux{dir,base}, revamp -dump{dir,base}

2020-06-18 Thread Tobias Burnus
nline/install/opt/codesourcery/x86_64-none-linux-gnu/bin --with-build-time-tools=/net/build5-trusty-cs/scratch/tburnus/openacc.x86_64-linux-gnu-openacc-mainline/install/opt/codesourcery/x86_64-none-linux-gnu/bin SED=sed Thread model: posix Supported LTO compression algorithms: zlib gcc version

Re: [PATCH] avoid early asm output

2020-06-18 Thread Jakub Jelinek via Gcc-patches
On Thu, Jun 18, 2020 at 11:08:53AM +0200, Richard Biener wrote: > This avoids early assembler output via the gimplifier creating > new static CTORs. The output machinery seems to be prepared to > output constants recursively and it's just a matter of > appropriately defering or not defering output

[PATCH] phiopt: Improve minmax optimization [PR95699]

2020-06-18 Thread Jakub Jelinek via Gcc-patches
Hi! As discussed in the PR, the x < 0x8000U to (int) x >= 0 optimization stands in the way of minmax_replacement optimization, so for comparisons with most of the constants it works well, but when the above mentioned optimization triggers, it is unable to do it. The match.pd (cond (cmp (conver

[PATCH] forwprop: simplify_vector_constructor follow-up fix [PR95713]

2020-06-18 Thread Jakub Jelinek via Gcc-patches
Hi! As the following testcase shows, the exception for the aarch64 vec_pack_trunc_di is not sufficient on x86, the halfvectype "vectors" have SImode but the x86 vec_pack_trunc_si meant for the bool bitmasks combines 2x SImode into DImode, while in the testcase the halfvectype is 1x SImode "vector"

Re: [stage1][PATCH] Lower VEC_COND_EXPR into internal functions.

2020-06-18 Thread Martin Liška
On 6/18/20 11:02 AM, Martin Liška wrote: Now I've got it. I've just reduced that to: $ cat pr50310.c double s1[4], s2[4], s3[64]; int main () { s1[0] = 5.0; s1[1] = 6.0; s1[2] = 5.0; s1[3] = __builtin_nan (""); s2[0] = 6.0; s2[1] = 5.0; s2[2] = 5.0; s2[3] = 5.0; asm volatil

Re: [PATCH] recog: Use parameter packs for operator()

2020-06-18 Thread Jonathan Wakely via Gcc-patches
On 18/06/20 10:02 +0100, Jonathan Wakely wrote: On 18/06/20 08:55 +0100, Richard Sandiford wrote: Sebastian Huber writes: On 18/06/2020 09:09, Richard Sandiford wrote: Sebastian Huber writes: On 16/06/2020 12:42, Richard Sandiford wrote: [...] 2020-06-16 Richard Sandiford gcc/

[Ada] Fix small inefficiency in previous change to expander

2020-06-18 Thread Pierre-Marie de Rodat
The procedure Get_Size_For_Range does not need to return the smallest size for a signed integer type covering the range, the important thing is instead to return a size lower than that of the original type; this saves a bunch of lookups in the power-of-two table of the Uint unit. The change also b

[Ada] Small cleanup in constraint checking code for allocators

2020-06-18 Thread Pierre-Marie de Rodat
This consolidates the constraint checking code for allocators in only two places, Expand_Allocator_Expression for the qualified expression case and Expand_N_Allocator for the subtype indication case, getting rid of some duplication and plugging some loopholes in the process. Tested on x86_64-pc-li

[Ada] Small cleanup in the attribute code of the expander

2020-06-18 Thread Pierre-Marie de Rodat
This fixes a few minor glitches in the part of the expander dealing with attributes: missing check for Component_Size, alphabetization issues and wrong classification of few other attributes. No functional changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Eric Botcazou gc

[Ada] Implement AI12-0032 fixes for 'Old attribute accessibility

2020-06-18 Thread Pierre-Marie de Rodat
AI12-0032 modifies/clarifies many of the rules pertaining to uses of the Old attribute. Most of these 7 changes were already implemented by GNAT but a couple having to do with accessibility were not. Implement those unimplemented rules. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18

[Ada] Fix invalid expression sharing in Expand_Array_Equality

2020-06-18 Thread Pierre-Marie de Rodat
The procedure Expand_Array_Equality has an optimization whereby the equality operation for an array of 2 elements is expanded into a simple conjunction of two component comparisons instead of into the generic loop. But this special circuitry reuses the same expression list for the indexed componen

[Ada] ACATS 4.1J - B854003 - Subtype conformance check missed

2020-06-18 Thread Pierre-Marie de Rodat
This test shows that GNAT was missing formal subprogram conformance checking in some cases, now fixed. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Arnaud Charlet gcc/ada/ * sem_ch6.ads, sem_ch6.adb (Check_Formal_Conformance): New subprogram. (Check_Co

[Ada] Narrow large arithmetic and comparison operations

2020-06-18 Thread Pierre-Marie de Rodat
The goal of this enhancement is to make it possible for the expander to rewrite both arithmetic and comparison operations that have been resolved to a large type, namely Universal_Integer, into equivalent operations in a smaller type, namely Integer (or Long_Long_Integer). In certain contexts invo

[Ada] No Default_Initial_Condition check when declaring an imported object

2020-06-18 Thread Pierre-Marie de Rodat
Default initialization is not performed when an imported object is declared, so there should also be no Default_Initial_Condition check generated for such an object declaration. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Steve Baird gcc/ada/ * exp_ch3.adb (Expand_N_

[Ada] Update output of verbose error summary

2020-06-18 Thread Pierre-Marie de Rodat
GNAT does not count warnings originating from a Compile_Time_Warning pragma as an error anymore, even if the -gnatwe flag is provided. This requires updating the output of its error summary. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Ghjuvan Lacambre gcc/ada/ * erro

[Ada] Add support for XDR streaming in the default runtime

2020-06-18 Thread Pierre-Marie de Rodat
Currently we provide a separate implementation of Stream_Attributes via s-stratt__xdr.adb which needs to be recompiled manually. This change introduces instead a new binder switch to choose at bind time which stream implementation to use and replaces s-stratt__xdr.adb by a new unit System.Stream_A

[Ada] Fix host/target confusion for attribute To_Address

2020-06-18 Thread Pierre-Marie de Rodat
The check applied to the expression of the To_Address attribute in the case where it is static is done with the address size of the host instead of the target, resulting in missing error messages. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Eric Botcazou gcc/ada/ * s

[Ada] Minor cleanup in Expand_Call_Helper

2020-06-18 Thread Pierre-Marie de Rodat
This makes a couple of changes in the code dealing with a call to a derived subprogram: first, it removes useless calls to Relocate_Node before calls to OK_Convert_To and Unchecked_Convert_To (these functions already call Relocate_Node on their second operand) and merge calls to Analyze and Resolve

[Ada] Missing error on aspects Input and Output

2020-06-18 Thread Pierre-Marie de Rodat
The frontend does not report an error on the illegal use of a non class-wide subprogram with class-wide aspects Input and Output; similarly it also skips reporting the error when a class-wide subprogram is used with the non class-wide aspects. As a consequence of not reporting these errors at comp

[Ada] Add second warning for convention C_Variadic_n

2020-06-18 Thread Pierre-Marie de Rodat
This adds a second warning related to the new C_Variadic_n convention, for the cases where the aspect/pragma is applied to a subprogram with exactly n parameters since, in this case, the aspect/pragma is useless. The warning is given as such: btest.ads:16:05: warning: subprogram should have at le

[Ada] Improve compile-time evaluation of value ranges

2020-06-18 Thread Pierre-Marie de Rodat
The main goal of this change is to improve the evaluation at compile time of the ranges of values that an expression can have at run time and to apply it in as many cases as possible during the compilation. It turns out that the front-end contains two separate engines that can evaluate value range

[Ada] ACATS 4.1L - B452002 - Wrong universal access "=" rules

2020-06-18 Thread Pierre-Marie de Rodat
This ACATS test shows that: - GNAT does not allow a named access type in the universal access "=" operator. - GNAT does not enforce the static matching requirement for designated elementary and array types. - GNAT does not allow designated types where one covers the other. - GNAT does not enfo

[Ada] List aspect Relaxed_Initialization in GNAT RM

2020-06-18 Thread Pierre-Marie de Rodat
Aspect Relaxed_Initialization and attribute Initialized are now listed as implementation-defined with a reference to the SPARK RM, where their full description will appear shortly. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Piotr Trojanek gcc/ada/ * doc/gnat_rm/impl

[Ada] Do not treat pragma Compile_Time_Warning as error even with -gnatwe

2020-06-18 Thread Pierre-Marie de Rodat
Not treating 'pragma Compile_Time_Warning' warnings as errors even with the -gnatwe switch makes sense because if users desire errors, they can use the Compile_Time_Error pragma. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Ghjuvan Lacambre gcc/ada/ * erroutc.ads: Dec

[Ada] AI12-0293-1 Implement storage streams

2020-06-18 Thread Pierre-Marie de Rodat
This patch implements storage streams, as specified by three Ada Issues: AI12-0293-1, AI12-0329-1, and AI12-0361-1. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-18 Bob Duff gcc/ada/ * libgnat/a-strsto.ads, libgnat/a-ststbo.adb, libgnat/a-ststbo.ads, libgnat/a-sts

[Ada] Small adjustment to Get_Integer_Type function

2020-06-18 Thread Pierre-Marie de Rodat
The Get_Integer_Type function is used by the expander when generating code for the Enum_Rep and Pos attributes applied to an enumeration type. The expansion generates a direct conversion from the enumeration type to the result type, which is nominally Universal_Integer; therefore, in order to prese

  1   2   >