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

2020-06-19 Thread Segher Boessenkool
On Fri, Jun 19, 2020 at 02:43:36PM -0500, Peter Bergner wrote: > Heh, now I'm not so sure after reading the comment before the test. :-) > Mike added this code. > > Mike, it looks like you explicitly added XImode here, even though we > will never generate XImode uses. Is there some code somewhere

Re: [PATCH] Handle TYPE_PACK_EXPANSION in cxx_incomplete_type_diagnostic

2020-06-19 Thread Jason Merrill via Gcc-patches
On 6/19/20 2:39 PM, Nicholas Krause wrote: This fixs the PR95672 by adding the missing TYPE_PACK_EXPANSION case in cxx_incomplete_type_diagnostic in order to avoid ICES on diagnosing incomplete template pack expansion cases. Signed-off-by: Nicholas Krause Changelog: *cp/type2ck.c: Add missing c

[PATCH] simplify-rtx: Two easy pieces.

2020-06-19 Thread Roger Sayle
My recent patch to add scalar integer simplification unit tests to simplify_rtx_c_tests identified two "trivial" corner cases that could be improved in simplify-rtx.c. I don't believe that either case can currently be triggered from GCC current front-end/back-end combinations, but hopefully the r

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

2020-06-19 Thread Peter Bergner via Gcc-patches
On 6/19/20 2:33 PM, Peter Bergner wrote: > On 6/19/20 1:12 PM, Segher Boessenkool wrote: >> On Fri, Jun 19, 2020 at 11:47:35AM -0500, Peter Bergner wrote: Why are OImode and XImode handled here? > static bool > rs6000_modes_tieable_p (machine_mode mode1, machine_mode mode2)

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

2020-06-19 Thread Peter Bergner via Gcc-patches
On 6/19/20 1:12 PM, Segher Boessenkool wrote: > On Fri, Jun 19, 2020 at 11:47:35AM -0500, Peter Bergner wrote: >>> Why are OImode and XImode handled here? >>> static bool rs6000_modes_tieable_p (machine_mode mode1, machine_mode mode2) { >> >> Do you mean why *aren't* they handled

[committed] libstdc++: Fix some -Wsystem-headers warnings (PR 95765)

2020-06-19 Thread Jonathan Wakely via Gcc-patches
PR libstdc++/95765 * include/bits/stl_algobase.h (__size_to_integer(float)) (__size_to_integer(double), __size_to_integer(long double)) (__size_to_integer(__float128)): Cast return type explicitly. * include/bits/stl_uninitialized.h (__uninitialized_default_1

[PATCH] Handle TYPE_PACK_EXPANSION in cxx_incomplete_type_diagnostic

2020-06-19 Thread Nicholas Krause via Gcc-patches
This fixs the PR95672 by adding the missing TYPE_PACK_EXPANSION case in cxx_incomplete_type_diagnostic in order to avoid ICES on diagnosing incomplete template pack expansion cases. Signed-off-by: Nicholas Krause Changelog: *cp/type2ck.c: Add missing case TYPE_PACK_EXPANSION for diagnosticing inc

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

2020-06-19 Thread Segher Boessenkool
Hi! On Fri, Jun 19, 2020 at 11:47:35AM -0500, Peter Bergner wrote: > >>(define_mode_iterator RELOAD): Add POI and PXI. > > > > Why POI and PXI, but not OI and XI? > > We don't have an enabled XI or OI move pattern, so I don't think > we'll ever see those modes at all in rtl. Yeah good point

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

2020-06-19 Thread Peter Bergner via Gcc-patches
On 6/19/20 11:45 AM, Segher Boessenkool wrote: > On Thu, Jun 18, 2020 at 03:45:17PM -0500, Peter Bergner wrote: >> +;; Return 1 if this operand is valid for a MMA assemble accumulator insn. >> +(define_special_predicate "mma_input_operand" >> + (match_test "(mode == PXImode >> +&& (GET

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

2020-06-19 Thread Segher Boessenkool
Hi! On Thu, Jun 18, 2020 at 03:46:31PM -0500, Peter Bergner wrote: > +/* { dg-final { scan-assembler-times {\mlxv\M} 40 } } */ > +/* { dg-final { scan-assembler-times {\mlxvp\M} 12 } } */ > +/* { dg-final { scan-assembler-times {\mstxvp\M} 40 } } */ > +/* { dg-final { scan-assembler-times {\mxxmfa

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

2020-06-19 Thread Peter Bergner via Gcc-patches
On 6/18/20 6:44 PM, Segher Boessenkool wrote: >> (rs6000_builtin_mask_calculate): Add support for RS6000_BTM_MMA >> and RS6000_BTM_FUTURE. > The latter is already there? Oops, yes. I'll remove it. >> * config/rs6000/rs6000.md (define_attr "isa"): Add mma. > > Is this ever usefu

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

2020-06-19 Thread Segher Boessenkool
Hi! On Thu, Jun 18, 2020 at 03:45:17PM -0500, Peter Bergner wrote: > +;; Return 1 if this operand is valid for a MMA assemble accumulator insn. > +(define_special_predicate "mma_input_operand" > + (match_test "(mode == PXImode > + && (GET_MODE (op) == V16QImode) > + && (vs

[pushed] c++: Allow defaulted comparison outside class.

2020-06-19 Thread Jason Merrill via Gcc-patches
Implementing P2085, another refinement to the operator<=> specification from the Prague meeting. It was deemed desirable to be able to have a non-inline defaulted definition of a comparison operator just like you can with other defaulted functions. Tested x86_64-pc-linux-gnu, applying to trunk.

Re: [Patch] amdgcn: Silence compile warnings

2020-06-19 Thread Andrew Stubbs
On 19/06/2020 17:00, Tobias Burnus wrote: OK for mainline? OK, thank you. Andrew

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

2020-06-19 Thread Tobias Burnus
On 6/19/20 11:53 AM, Alexandre Oliva wrote: Here's an incremental patch, on top of the one you kindly tested the other day (thanks!), that attempts to introduce per-offload-target dump name variation. Could you possibly give it a spin with the offloading targets you've got? Done; nvptx compil

[Patch] amdgcn: Silence compile warnings

2020-06-19 Thread Tobias Burnus
OK for mainline? Tobias - Mentor Graphics (Deutschland) GmbH, Arnulfstraße 201, 80634 München / Germany Registergericht München HRB 106955, Geschäftsführer: Thomas Heurung, Alexander Walter amdgcn: Silence compile warnings gcc/ChangeLog: * config/gcn/gcn.c (gcn_related_vector

Re: [PATCH] RISC-V: Fix compilation failed for frflags builtin in C++ mode

2020-06-19 Thread Jason Merrill via Gcc-patches
On 6/19/20 3:08 AM, Kito Cheng wrote: - g++ will complain too few arguments for frflags builtin like bellow message: error: too few arguments to function 'unsigned int __builtin_riscv_frflags(void)' - However it's no arguments needed, it because we declare the function typ

RE: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern

2020-06-19 Thread Alex Coplan
> -Original Message- > From: Gcc-patches On Behalf Of Przemyslaw > Wirkus > Sent: 19 June 2020 15:06 > To: Richard Biener > Cc: gcc-patches@gcc.gnu.org; Marc Glisse > Subject: RE: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern > > > From: Richard Biener > > Subject: R

[wwwdocs] Fix typo in docs for Git write access

2020-06-19 Thread Jonathan Wakely via Gcc-patches
Committed to wwwdocs. commit 2b70f89ff4df991b32d3680f56485470ec978bc6 Author: Jonathan Wakely Date: Fri Jun 19 16:06:05 2020 +0100 Fix typo in docs for Git write access diff --git a/htdocs/gitwrite.html b/htdocs/gitwrite.html index 36bb1a20..5332e2f5 100644 --- a/htdocs/gitwrite.html +++

[committed] libstdc++: Remove redundant std:: qualification

2020-06-19 Thread Jonathan Wakely via Gcc-patches
* include/bits/stl_pair.h (_Index_tuple): Remove redundant namespace qualification. (pair::pair(tuple<>&, tuple<>&, _Index_tuple, _Index_tuple)): Likewise. * include/std/tuple (_Head_base, _Tuple_impl, tuple_size) (tuple_element, __get_helper, get, __

[PATCH] Handle SLP_TREE_LANE_PERMUTATION in scalar costing

2020-06-19 Thread Richard Biener
This properly handles a lane permutation in scalar costing. For the current only use this doesn't matter much but with permutes that change the number of lanes it will eventually ICE. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard, 2020-06-19 Richard Biener * t

[committed] libstdc++: Define all std::function members inline

2020-06-19 Thread Jonathan Wakely via Gcc-patches
* include/bits/std_function.h (function): Define all member functions inline. There doesn't seem to be a good reason for these to be non-inline. Tested powerpc64le-linux, committed to master. commit abed8b56b92b103275e6871b689862c0495b761b Author: Jonathan Wakely Date: Fri Ju

RE: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern

2020-06-19 Thread Przemyslaw Wirkus
> From: Richard Biener > Subject: Re: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn > pattern Snip... > The patch is OK. I do not have write access yet. Can I ask someone to push my patch to master please ? Thanks in advance, Przemyslaw > Thanks, > Richard. > > > > On Fri, 19 Jun

[PATCH] Split load permutation

2020-06-19 Thread Richard Biener
This splits SLP load nodes with load permutation into a SLP load node (with load "permutation" removing gaps) and a lane permutation node. The first and foremost goal of this is to be able to have a single SLP node for each load group so we can start making decisions about how to vectorize them

[PATCH wwwdocs] gcc-11/changes: Document TSAN changes

2020-06-19 Thread Marco Elver via Gcc-patches
Document TSAN changes to support alternative runtimes, such as KCSAN. --- htdocs/gcc-11/changes.html | 15 +++ 1 file changed, 15 insertions(+) diff --git a/htdocs/gcc-11/changes.html b/htdocs/gcc-11/changes.html index 9dba1e14..dc22f216 100644 --- a/htdocs/gcc-11/changes.html +++ b/h

Re: std::includes performance tweak

2020-06-19 Thread Jonathan Wakely via Gcc-patches
On 19/06/20 12:17 +0100, Jonathan Wakely wrote: On 19/06/20 12:49 +0200, Marc Glisse wrote: Anyway, while I blame the compiler for not generating very good code with the current implementation, I believe the change can be seen as a simplification and should be pushed to master. It regtests fine

Re: std::optional defaut constructor

2020-06-19 Thread Jonathan Wakely via Gcc-patches
On 04/06/20 14:46 +0100, Jonathan Wakely wrote: On 04/06/20 00:50 +0200, Marc Glisse wrote: (I don't currently have a setup that would enable me to commit anything. I'll try to fix it eventually, but likely not so soon) Ah, I missed this bit. I'll take care of it for you. If it's due to the G

[PATCH] Handle SLP_TREE_LANE_PERMUTATION in scalar costing

2020-06-19 Thread Richard Biener
This properly handles a lane permutation in scalar costing. For the current only use this doesn't matter much but with permutes that change the number of lanes it will eventually ICE. Bootstrap / regtest running on x86_64-unknown-linux-gnu.y 2020-06-19 Richard Biener * tree-vect-slp.c

[PATCH] tree-optimization/95761 - fix vector insertion place compute

2020-06-19 Thread Richard Biener
I missed that indeed SLP permutation code generation can end up refering to a non-last vectorized stmt in the last SLP_TREE_VEC_STMTS element as optimization. So walk them all. Bootstrapped / tested on x86_64-unknown-linux-gnu, pushed. 2020-06-19 Richard Biener PR tree-optimization/9

Re: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern

2020-06-19 Thread Richard Biener via Gcc-patches
On Fri, Jun 19, 2020 at 12:37 PM Przemyslaw Wirkus wrote: > > > On Fri, Jun 19 2020 Marc Glisse wrote: > > (not a reviewer) > > > > It looks fine to me. Do we already handle the related (x|y)^y and (x|y)&~y ? > > These are already in match.pd: > > /* (X | Y) ^ X -> Y & ~ X*/ > /* (x | y) & ~x -> y

Re: std::includes performance tweak

2020-06-19 Thread Jonathan Wakely via Gcc-patches
On 19/06/20 12:49 +0200, Marc Glisse wrote: Hello, I am proposing a small tweak to the implementation of __includes, which in my application saves 20% of the running time. I noticed it because using range-v3 was giving unexpected performance gains. The unified diff is attached, but let me fi

std::includes performance tweak

2020-06-19 Thread Marc Glisse
Hello, I am proposing a small tweak to the implementation of __includes, which in my application saves 20% of the running time. I noticed it because using range-v3 was giving unexpected performance gains. The unified diff is attached, but let me first show a more readable context diff. ***

RE: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern

2020-06-19 Thread Przemyslaw Wirkus
On Fri, Jun 19 2020 Marc Glisse wrote: > (not a reviewer) > > It looks fine to me. Do we already handle the related (x|y)^y and (x|y)&~y ? These are already in match.pd: /* (X | Y) ^ X -> Y & ~ X*/ /* (x | y) & ~x -> y & ~x */ > On Fri, 19 Jun 2020, Przemyslaw Wirkus wrote: > > > Hi all, >

Re: [PATCH] RISC-V: Fix compilation failed for frflags builtin in C++ mode

2020-06-19 Thread Kito Cheng via Gcc-patches
Oh I missed the -mabi in testcase, v2 patch attached, same as V1 but add -mabi flag to testcase. On Fri, Jun 19, 2020 at 3:08 PM Kito Cheng wrote: > > - g++ will complain too few arguments for frflags builtin like bellow > message: > > error: too few arguments to function 'unsigned int

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

2020-06-19 Thread Alexandre Oliva
On Jun 18, 2020, Tobias Burnus wrote: > Thus, without the offload_target prefix, they would dump into the same file! Here's an incremental patch, on top of the one you kindly tested the other day (thanks!), that attempts to introduce per-offload-target dump name variation. Could you possibly gi

[PATCH] RISC-V: Normalize arch string in driver time

2020-06-19 Thread Kito Cheng
- Normalize arch string would help the multi-lib handling, e.g. rv64gc and rv64g_c are both valid and same arch, but latter one would confuse the detection of multi-lib, earlier normalize can resolve this issue. gcc/ChangeLog: * config/riscv/riscv.h (DRIVER_SELF_SPECS): New. --- g

RE: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern

2020-06-19 Thread Marc Glisse
(not a reviewer) It looks fine to me. Do we already handle the related (x|y)^y and (x|y)&~y ? On Fri, 19 Jun 2020, Przemyslaw Wirkus wrote: Hi all, Pattern "(x | y) - y" can be optimized to simple "(x & ~y)" andn pattern. Bootstrapped and tested on aarch64-none-linux-gnu. OK for master ? C

RE: [PATCH][GCC]: Fix for PR94880: Failure to recognize andn pattern

2020-06-19 Thread Przemyslaw Wirkus
Hi all, Pattern "(x | y) - y" can be optimized to simple "(x & ~y)" andn pattern. Bootstrapped and tested on aarch64-none-linux-gnu. OK for master ? Cheers, Przemyslaw gcc/ChangeLog: PR tree-optimization/94880 * match.pd (A | B) - B -> (A & ~B): New simplification. gcc/testsu

[Ada] Further cleanup in constraint checking code for allocators

2020-06-19 Thread Pierre-Marie de Rodat
There is a second case where Expand_N_Assignment_Statement was applying range checks for allocators and it is also obsolete. No functional changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Eric Botcazou gcc/ada/ * exp_ch5.adb (Expand_N_Assignment_Statement): Do n

[Ada] Crash on compiling project with multiple subunits per file

2020-06-19 Thread Pierre-Marie de Rodat
This patch fixes the compiler whereby a project with manually specified Naming for subunits such that several of the subunits exist in the same file as the unit they are defined in. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Justin Squirek gcc/ada/ * lib.adb (Check_

[Ada] Deal with enumeration types with very large size

2020-06-19 Thread Pierre-Marie de Rodat
It is permitted to put very large size clauses on enumeration types so we need to deal with them in Get_Integer_Type. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Eric Botcazou gcc/ada/ * exp_attr.adb (Get_Integer_Type): Return the largest supported unsigned i

[Ada] Attempt to hide public entities in nested instance bodies

2020-06-19 Thread Pierre-Marie de Rodat
The procedure Hide_Public_Entities is responsible for (conservatively) attempting to hide entities that have been previously made public by the semantic analyzer in package bodies. But it effectively does not run on nested instance bodies because instantiations are still pending by the time the en

[Ada] AI12-0293-1 Remove pragma Assert

2020-06-19 Thread Pierre-Marie de Rodat
...and replace it with an explicit check, so it is enabled whether or not assertions are enabled. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Bob Duff gcc/ada/ * libgnat/a-ststbo.adb (Write): Replace pragma Assert with "if ... raise Constraint_Error".--- gcc/

[Ada] Reject junk expressions in attribute Update

2020-06-19 Thread Pierre-Marie de Rodat
Attribute Update only makes sense with named component associations. The positional component associations were silently ignored by both analysis, resolution and expansion; now they are rejected as illegal. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Piotr Trojanek gcc/ada/

[Ada] Fix check for bounds in aggregate expansion of allocator

2020-06-19 Thread Pierre-Marie de Rodat
The predicate function In_Place_Assign_OK is responsible for finding out whether the in-place assignment of an aggregate is possible; for array aggregates, it checks among other things whether sliding will occur during the assignment. But, in an allocator context, it does so by comparing the bound

[Ada] Fix internal error on component of class-wide parameter in instance body

2020-06-19 Thread Pierre-Marie de Rodat
This fixes a Program_Error raised by Analyze_Selected_Component because it didn't manage to find the proper selector for a selected component applied to a parameter of class-wide type in an instance body. The problem is that the tagged type is derived in the private part of the generic spec from a

[Ada] Fix small fallout of previous change for Analyze_Selected_Component

2020-06-19 Thread Pierre-Marie de Rodat
The removal of the obsolete code path originally implemented for ASIS has exposed a latent issue for components of discriminated tagged types in instance bodies: Is_Visible_Component can wrongly return false for them even though the ancestor type is perfectly visible in the instance. No functional

[Ada] Spurious condition warning on type conversion in return

2020-06-19 Thread Pierre-Marie de Rodat
This patch fixes the compiler whereby a conversion to Interfaces.C.Bool within a return statement may cause a spurious "condition always X" warning. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Justin Squirek gcc/ada/ * sem_warn.adb (Warn_On_Known_Condition): Add gene

[Ada] Small cleanup in Apply_Range_Check implementation

2020-06-19 Thread Pierre-Marie de Rodat
The procedure Apply_Range_Check is the only caller of the procedure Apply_Selected_Range_Checks and always passes Do_Static as False, which means that the True path is unreachable in the latter, so this change merges the latter in the former. Moveover, it adds a new parameter Insert_Node to Apply_

[Ada] Fix small fallout of previous change for allocator

2020-06-19 Thread Pierre-Marie de Rodat
Resolve_Qualified_Expression propagates the type of the operand into the node itself if the original type of the node is unconstrained, but this is not needed for an allocator and might be problematic, e.g. for the CCG compiler which expects unconstrained array types. No functional changes. Teste

[Ada] Spurious error on private type in ghost expression function

2020-06-19 Thread Pierre-Marie de Rodat
The compiler rejects an expression function declared in a generic package with Ghost aspect, when the expression of the function includes a reference to a private type declared outside of the package, whose full view has not yet been analyzed, and the Ghost mode is Ignore. Tested on x86_64-pc-linu

[Ada] Style checks on invalid UTF character cause crash

2020-06-19 Thread Pierre-Marie de Rodat
This patch fixes the compiler whereby style checks for extranious whitespace (under the flag -gnatyb) may crash the compiler when a manually specified UTF character is present directly before such an extranious whitespace. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Justin Squir

[Ada] AI12-0366 Changes to Big_Integer and Big_Real

2020-06-19 Thread Pierre-Marie de Rodat
This AI changes the API to move the validity checks to a subtype Valid_Big_Integer/Real with a dynamic predicate. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Arnaud Charlet gcc/ada/ * libgnat/a-nbnbin.adb, libgnat/a-nbnbin.ads, libgnat/a-nbnbin__gmp.adb, libg

[Ada] Plug small loophole in implementation of AI12-0100

2020-06-19 Thread Pierre-Marie de Rodat
The qualified expressions present in allocators use a specific circuitry during type resolution and, therefore, escape the new static predicate check required by AI12-0100 and present in Resolve_Qualified_Expression. This removes the specific circuitry, as well as makes small adjustments to Resolv

[Ada] Remove second warning for convention C_Variadic_n

2020-06-19 Thread Pierre-Marie de Rodat
It turns out that there are legitimate cases now flagged by the warning. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Eric Botcazou gcc/ada/ * sem_prag.adb (Process_Convention): Revert previous change.--- gcc/ada/sem_prag.adb +++ gcc/ada/sem_prag.adb @@ -8304,7 +8304,

[Ada] universal_access equality and 'Access attributes

2020-06-19 Thread Pierre-Marie de Rodat
For any object Foo, Foo'Access can never be passed as a parameter of a call to the equality op for Universal_Access, so add this check and do some code cleanup on recent changes at the same time. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Arnaud Charlet gcc/ada/ * s

[Ada] Decorate record delta aggregate for GNATprove

2020-06-19 Thread Pierre-Marie de Rodat
For a record delta aggregate like "(X with delta C => 1)" the component choice identifier "C" had empty Entity and Etype fields. For GNAT this was fine, because it expands delta aggregates into assignments using component names alone; for GNATprove this was troublesome, because it keeps delta aggr

[Ada] Add comments about attribute 'Valid_Scalars on private tagged types

2020-06-19 Thread Pierre-Marie de Rodat
Attribute 'Valid_Scalars on private tagged types doesn't work as it should on private tagged types. Fix most likely needs to modify three routines. This patch document the problem with a ??? comment. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Piotr Trojanek gcc/ada/

[Ada] Fix validity checking for class-wide objects

2020-06-19 Thread Pierre-Marie de Rodat
When applying 'Valid_Scalars attribute to a class-wide object (either explicitly or as a result of a command line switch like -gnateV), we must strip away type privacy. Note: this is just a minimal fix to avoid a crash. Attribute 'Valid_Scalars is not really working as expected on tagged types, es

[Ada] Simplify processing of 'Valid_Scalars on array types

2020-06-19 Thread Pierre-Marie de Rodat
When calling routine Build_Array_VS_Func that expands attribute Valid_Scalars on array objects we tested Scalar_Part_Present on the array's component type. This was unnecessary, because Build_Array_VS_Func is only called after checking Scalar_Part_Present on the array's type, which internally Scala

[Ada] Fix validity checks on attribute 'Old prefix

2020-06-19 Thread Pierre-Marie de Rodat
Validity checks for 'Old prefixes (enabled by the -gnatVo switch) are now executed when the 'Old prefix is evaluated, i.e. at the very beginning of a subprogram and not when evaluating the postcondition. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Piotr Trojanek gcc/ada/

[Ada] Remove repeated testing of Check_Validity_Of_Parameters

2020-06-19 Thread Pierre-Marie de Rodat
Routine Apply_Parameter_Validity_Checks is only called when flag Check_Validity_Of_Parameters is true, so repeated testing of this flag within that routine itself was unnecessary. Tested on x86_64-pc-linux-gnu, committed on trunk 2020-06-19 Piotr Trojanek gcc/ada/ * checks.adb (Apply

[PATCH] Fortran : ICE in resolve_fl_procedure PR95708

2020-06-19 Thread Mark Eggleston
Please find attached a fix for PR95708. OK for commit and backport? Commit message: Fortran  : ICE in resolve_fl_procedure PR95708 Now issues an error "Intrinsic procedure 'num_images' not allowed in PROCEDURE" instead of an ICE. 2020-06-19  Steven G. Kargl  gcc/fortran/     PR fortran/PR9

[PATCH] RISC-V: Fix compilation failed for frflags builtin in C++ mode

2020-06-19 Thread Kito Cheng
- g++ will complain too few arguments for frflags builtin like bellow message: error: too few arguments to function 'unsigned int __builtin_riscv_frflags(void)' - However it's no arguments needed, it because we declare the function type with VOID arguments, that seems like requir