Re: [PATCH] csa: Fix --enable-checking=yes, df bootstrap failure in csa [PR94961]

2020-05-07 Thread Eric Botcazou
escan (prev); > and those are the only two callers of this function besides the new one > in combine-stack-adj.c. OK, let's add a parameter no_rescan to remove_reg_equal_equiv_notes and update the two callers accordingly. -- Eric Botcazou

Re: [PATCH v2] csa: Fix --enable-checking=yes, df bootstrap failure in csa [PR94961]

2020-05-07 Thread Eric Botcazou
't call > df_notes_rescan. OK with me modulo the missing documentation for the new parameter, thanks. -- Eric Botcazou

Re: [PATCH] libstdc++: Update {x86_64, i?86, powerpc64, s390x, aarch64}-linux baselines for GCC 10.1

2020-05-07 Thread Eric Botcazou
zou/install --enable-languages=all --enable-gnu-unique- object --with-cpu-32=ultrasparc --with-long-double-128 --enable-default-pie -- enable-checking=yes,rtl --disable-nls Thread model: posix gcc version 9.3.1 20200501 (GCC) 2020-05-07 Eric Botcazou * config/abi/post/sparc64-linux-

[Ada] Small tweak to gnat_to_gnu_param

2020-05-08 Thread Eric Botcazou
We mark the type of In parameters in Ada with the const qualifier, but it is stripped by free_lang_data_in_type so do not do it in LTO mode. Tested on x86-64/Linux, applied on the mainline. 2020-05-08 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_param): Do not make a variant

[Ada] Couple of tweaks to help in LTO mode

2020-05-08 Thread Eric Botcazou
, applied on the mainline. 2020-05-08 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : Deal with artificial maximally-sized types designed by access types. * gcc-interface/utils.c (packable_type_hash): New structure. (packable_type_hasher): Likewise

[Ada] Fix uniqueness of address for aliased objects

2020-05-08 Thread Eric Botcazou
Two aliased objects must have distinct addresses, even if they have size zero, so we make sure to allocate at least one byte for them. Tested on x86-64/Linux, applied on the mainline. 2020-05-08 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : Force at least the

[Ada] Fix missing information in exception messages with -gnateE

2020-05-08 Thread Eric Botcazou
The information was missing in cases the front-end was able to turn the range comparison into a simple comparison. Tested on x86-64/Linux, applied on the mainline. 2020-05-08 Eric Botcazou * gcc-interface/trans.c (Raise_Error_to_gnu): Always compute a lower bound and an

Re: The vendors branch axis/cris-decc0 has been merged to master

2020-05-09 Thread Eric Botcazou
ecause the dbr pass had reordered something. I also used CoreMark for the Visium transition and recouped the (tiny) losses in the end. -- Eric Botcazou

[Ada] Small housekeeping work in gigi

2020-05-09 Thread Eric Botcazou
No functional changes. 2020-05-09 Eric Botcazou * gcc-interface/gigi.h (change_qualified_type): Move around. (maybe_vector_array): Likewise. (maybe_padded_object): New static line function. * gcc-interface/trans.c (Attribute_to_gnu) : Remove useless

Remove last use of expr_align

2020-05-09 Thread Eric Botcazou
It was in the ada/gcc-interface directory and is outdated. Tested on x86-64/Linux, applied on the mainline. 2020-05-09 Eric Botcazou * tree.h (expr_align): Delete. * tree.c (expr_align): Likewise. 2020-05-09 Eric Botcazou * gcc-interface/utils2.c: Include

[Ada] Fix missing back-annotation for Out parameter

2020-05-09 Thread Eric Botcazou
This happens when it is passed by copy and not passed in. Tested on x86-64/Linux, applied on the mainline. 2020-05-09 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_param): Also back-annotate the mechanism in the case of an Out parameter only passed by copy-out. -- Eric

[Ada] Accept qualified aggregates in memset path

2020-05-09 Thread Eric Botcazou
Aggregates can be surrounded by a qualified expression and this prepares the support code in gigi for accepting them. Tested on x86-64/Linux, applied on the mainline. 2020-05-09 Eric Botcazou * gcc-interface/trans.c (gnat_to_gnu) : Deal with qualified "others" agg

[Ada] Do not make a local copy of large aggregate

2020-05-09 Thread Eric Botcazou
This prevents gigi from effectively making a local copy of large aggregates. Tested on x86-64/Linux, applied on the mainline. 2020-05-09 Eric Botcazou * gcc-interface/trans.c (lvalue_required_p) : Merge with N_Slice. : Move to... (lvalue_for_aggregate_p

[Ada] Fix tree sharing issue with slices

2020-05-09 Thread Eric Botcazou
This can happen because we build an array type on the fly in case there is an apparent type inconsistency in the construct. Tested on x86-64/Linux, applied on the mainline. 2020-05-09 Eric Botcazou * gcc-interface/utils2.c (build_binary_op) : Use build_nonshared_array_type

[Ada] Fix small issues with -fgnat-encodings=minimal

2020-05-09 Thread Eric Botcazou
This is the mode where the GNAT compiler does not use special encodings in the debug info to describe some Ada constructs, for example packed array types. Tested on x86-64/Linux, applied on the mainline. 2020-05-09 Eric Botcazou * gcc-interface/ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P

[Ada] Fix PR ada/95035

2020-05-12 Thread Eric Botcazou
This fixes an oversight in the new canonicalization code for packable types: it does not take into account the scalar storage order. Tested on x86-64/Linux and SPARC/Solaris, applied on the mainline. 2020-05-12 Eric Botcazou PR ada/95035 * gcc-interface/utils.c

[Ada] Be prepared for more aggregates in gigi

2020-05-12 Thread Eric Botcazou
This makes sure that gigi is prepared to handle more aggregates in the special memset code path. Tested on x86-64/Linux, applied on the mainline. 2020-05-12 Eric Botcazou * sem_aggr.ads (Is_Single_Aggregate): New function. * sem_aggr.adb (Is_Others_Aggregate): Use local

[Ada] Suppress warning for Interfaces.C with -fdump-ada-spec

2020-05-12 Thread Eric Botcazou
The C/C++ bindings generated by means of -fdump-ada-spec always contain with and use clauses for Interfaces.C, but they can be unused in some cases so make sure to avoid warning about that. Tested on x86-64/Linux, applied on the mainline. 2020-05-12 Eric Botcazou c-family/ * c-ada

Re: [PATCH] Add -fsplit-dwarf

2020-05-13 Thread Eric Botcazou
> Did I mention I dislike -fsplit-dwarf? ;) Seconded, this will be confusing for almost all users. Since the option only affects debug info generation, it should be prefixed with 'g' in any case. -- Eric Botcazou

[Ada] Fix wrong assignment to mutable Out parameter of task entry

2020-05-25 Thread Eric Botcazou
Under very specific circumstances the compiler can generate a wrong assignment to a mutable record object which contains an array component, because it does not correctly handle the update of the discriminant. Tested on x86-64/Linux, applied on the mainline. 2020-05-25 Eric Botcazou

[Ada] Change description of fat pointertype with -fgnat-encodings=minimal

2020-05-25 Thread Eric Botcazou
This makes a step back in the representation of fat pointer types in the debug info with -fgnat-encodings=minimal so as to avoid hiding the data indirection and making it easier for GDB to synthetize the construct. Tested on x86-64/Linux, applied on the mainline. 2020-05-25 Eric Botcazou

[Ada] Fix incorrect handling of Component_Size

2020-05-25 Thread Eric Botcazou
The compiler can mishandle a Component_Size clause on an array type specifying a size multiple of the storage unit, when this size is not a multiple of the alignment of the component type. Tested on x86-64/Linux, applied on the mainline. 2020-05-25 Eric Botcazou * gcc-interface

[Ada] Fix missing back-annotation for derived types

2020-05-25 Thread Eric Botcazou
Gigi fails to back-annotate the Present_Expr field of variants present in a type derived from a discriminated untagged record type, which is for example visible in the output -gnatRj. Tested on x86-64/Linux, applied on the mainline. 2020-05-25 Eric Botcazou * gcc-interface/decl.c

Re: [Ada] Fix small issues with -fgnat-encodings=minimal

2020-05-25 Thread Eric Botcazou
> This is the mode where the GNAT compiler does not use special encodings in > the debug info to describe some Ada constructs, for example packed array > types. This fixes a small fallout of the patch. Tested on x86-64/Linux, applied on the mainline. 2020-05-25 Eric Botcazou

[Ada] Fix internal error on problematic renaming

2020-05-25 Thread Eric Botcazou
on the mainline. 2020-05-25 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity): Add new local variable and use it throughout the function. : Rename local variable and adjust accordingly. In the case of a renaming, materialize the entity if the renamed

[patch] Fix internal error on store to FP component at -O2

2020-05-25 Thread Eric Botcazou
x86-64/Linux, OK for the mainline? 2020-05-25 Eric Botcazou * gimple-ssa-store-merging.c (merged_store_group::can_be_merged_into): Only turn MEM_REFs into bit-field stores for small bit-field regions. (imm_store_chain_info::output_merged_store): Be prepared for sources

Re: [patch] Fix internal error on store to FP component at -O2

2020-05-25 Thread Eric Botcazou
ucible only on Ada(?). Yes, this can only happen in Ada because it effectively can have bit-fields of any type, and not only of integral types. -- Eric Botcazou

Re: [patch] Fix internal error on store to FP component at -O2

2020-05-25 Thread Eric Botcazou
NULL_TREE || (maybe_gt (bitsize, (unsigned int) MAX_BITSIZE_MODE_ANY_INT) && TREE_CODE (rhs) != INTEGER_CST && (TREE_CODE (rhs) != CONSTRUCTOR || CONSTRUCTOR_NELTS (rhs) != 0))); -- Eric Botcazou

[patch] Add support for __builtin_bswap128

2020-05-27 Thread Eric Botcazou
_bswapdi2 in the worst case). Tested on x86-64/Linux, OK for the mainline? 2020-05-27 Eric Botcazou gcc/ChangeLog: * builtin-types.def (BT_UINT128): New primitive type. (BT_FN_UINT128_UINT128): New function type. * builtins.def (BUILT_IN_BSWAP128): New GCC builtin

Re: [patch] Add support for __builtin_bswap128

2020-05-27 Thread Eric Botcazou
> Please use int128 effective target rather than lp64 in the tests that need > __int128 type. OK, thanks, adjusted locally. -- Eric Botcazou

[patch] Make memory copy functions scalar storage order barriers

2020-06-01 Thread Eric Botcazou
Eric Botcazou * gimple-fold.c (gimple_fold_builtin_memory_op): Do not replace with a scalar copy if either type has reverse scalar storage order. * tree-ssa-sccvn.c (vn_reference_lookup_3): Do not propagate through a memory copy if either type has reverse scalar

Fix PR middle-end/95395

2020-06-02 Thread Eric Botcazou
The usual stupid confusion between bits and bytes... The tree-pretty-print.c hunk is unrelated and has been approved by Richard elsewhere. Tested on SPARC64/Linux, applied on the mainline as obvious. 2020-06-02 Eric Botcazou PR middle-end/95395 * optabs.c (expand_unop): Fix

Re: [patch] Make memory copy functions scalar storage order barriers

2020-06-02 Thread Eric Botcazou
[Starting with tne VN issue] > For the VN case the issue is interpreting a read via memcpy (non > reverse-storage) as a reverse-storage one when matching up with a hashtable > entry from a regular reverse-storage order store, correct? It's a read from a scalar (hence native order) combined with a

Re: [PATCH] middle-end/95493 - bogus MEM_ATTRS for variable array access

2020-06-04 Thread Eric Botcazou
ion > expansion ended up expanding a SSA definition RHS which should > already have taken care of setting the appropriate MEM_ATTRS. Do we really need to ditch the entire ARRAY_REF path though? Aren't we going to lose some (trivial) disambiguation possibilities later on by recording the ARRAY_REF instead of DECL or COMPONENT_REF (+ offset)? -- Eric Botcazou

Re: [PATCH] middle-end/95493 - bogus MEM_ATTRS for variable array access

2020-06-05 Thread Eric Botcazou
y also be backported onto the 10 branch without too much risk. -- Eric Botcazou

Re: [PATCH] dojump: Fix up probabilities splitting in dojump.c comparison splitting [PR98212]

2020-12-10 Thread Eric Botcazou
ng to t > + remains the same and first_prob is prob * cprob. */ >else > { > profile_probability first_prob = prob.split (cprob); prob.split adjusts prob so this needs to be reflected in the comment (maybe "adjusted prob" or the formula if it is simple). Otherwise looks good to me. -- Eric Botcazou

Re: [PATCH] dojump, v2: Fix up probabilities splitting in dojump.c comparison splitting [PR98212]

2020-12-10 Thread Eric Botcazou
prob.split (cprob.invert ()).invert (); > + prob = prob.invert (); > /* If we only jump if true, just bypass the second jump. */ > if (! if_false_label) > { OK, thanks, but aren't there missing TABs in the new version? Only one line is changed in the end AFAICS. -- Eric Botcazou

Small fix to PLACEHOLDER_EXPR handling in loc_list_from_tree_1

2020-12-10 Thread Eric Botcazou
nt, so the code needs to be able to deal with this nested type. Tested on x86-64/Linux, applied on the mainline as obvious. 2020-12-10 Eric Botcazou * dwarf2out.c (loc_list_from_tree_1) : Deal with a nested context type -- Eric Botcazoudiff --git a/gcc/dwarf2out.c b/gcc/d

Re: [PATCH] dojump, v2: Fix up probabilities splitting in dojump.c comparison splitting [PR98212]

2020-12-10 Thread Eric Botcazou
> 2020-12-10 Jakub Jelinek > > PR rtl-optimization/98212 > * dojump.c (do_compare_rtx_and_jump): Change computation of > first_prob for and_them. Add comment explaining and_them case. > > * gcc.dg/predict-8.c: Adjust expected probability.

[Ada] Fix PR ada/98230

2020-12-10 Thread Eric Botcazou
Mod): Use base type of argument to obtain static bound and required size. 2020-12-10 Eric Botcazou * gnat.dg/modular6.adb: New test. -- Eric Botcazoudiff --git a/gcc/ada/exp_attr.adb b/gcc/ada/exp_attr.adb index 251fa1449c4..b21592c78b2 100644 --- a/gcc/ada/exp_attr.adb +++

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

2020-12-15 Thread Eric Botcazou
ppc64 BE distro releases defaulted to -m32. > Newer ppc64 BE distro releases now default to -m64. No problem with that, as long as the default is clearly set. -- Eric Botcazou

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

2020-12-15 Thread Eric Botcazou
d two different packages for the system compiler? -- Eric Botcazou

Re: [patch] Fix PR tree-optimization/96344

2020-12-15 Thread Eric Botcazou
the type of case label values, and MINVAL and RANGE are derived from those values). so PR tree-optimization/98272 exhibits a precision mismatch now. Bootstrapped/regtested on x86-64/Linux, OK for the mainline? 2020-12-15 Eric Botcazou PR tree-optimization/98272 * tre

Fix PR testsuite/90806 on the 9 branch

2021-01-06 Thread Eric Botcazou
The underlying bug was fixed by Marc in July 2019: 2019-07-10 Marc Glisse * wide-int.h (wi::lshift): Reject negative values for the fastpath. and Richard B. agreed to the backport onto the 9 branch. Bootstrapped/regtested and applied on the 9 branch. 2021-01-06 Eric Botcazou

Re: [PATCH] Add line debug info for virtual thunks (PR ipa/97937)

2021-01-06 Thread Eric Botcazou
debug info, therefore > the patch is a bit awkward. Please run the GDB testsuite with Ada support on the patch. -- Eric Botcazou

[patch] Reset force_source_line in final.c

2021-01-15 Thread Eric Botcazou
Unlike the other global variables, it is not reset at the beginning of a function so can leak into the next one. Tested on x86-64/Linux, applied on the mainline as obvious. 2021-01-15 Eric Botcazou * final.c (final_start_function_1): Reset force_source_line. -- Eric Botcazoudiff

Re: [COMMITTED] testsuite: i386: Require ifunc support in gcc.target/i386/pr98100.c

2021-01-17 Thread Eric Botcazou
is not supported by this target > > Fixed as follows. > > Tested on i386-pc-solaris2.11 and x86_64-pc-linux-gnu. Installed on > master. Backported into 10 branch as obvious. -- Eric Botcazou

Fix PR ada/98740

2021-01-19 Thread Eric Botcazou
It's a long-standing GENERIC tree sharing issue. Tested on x86_64-suse-linux, applied on the mainline, 10 and 9 branches. 2021-01-19 Eric Botcazou PR ada/98740 * gcc-interface/trans.c (add_decl_expr): Always mark TYPE_ADA_SIZE. -- Eric Botcazoudiff --git a/gcc/ad

Re: [PATCH] sparc, rtems: add __FIX_LEON3FT_TN0018 for affected targets

2021-01-19 Thread Eric Botcazou
> * config/sparch/rtemself.h (TARGET_OS_CPP_BUILTINS): Add built-in define > __FIX_LEON3FT_TN0018. OK for whichever branch(es) you deem appropriate. -- Eric Botcazou

Re: [PATCH] middle-end/95493 - bogus MEM_ATTRS for variable array access

2020-06-05 Thread Eric Botcazou
gine without a testcase how you can end up inheriting anything for CONSTANT_CLASS_P or CONSTRUCTOR though: where do the MEM_ATTRs come from? -- Eric Botcazou

Re: [PATCH RFA] tree-inline: Fix VLA handling [PR95552]

2020-06-06 Thread Eric Botcazou
> This patch fixes walk_tree_1 to call the function on the TYPE_DECL, as we do > for other decls of a DECL_EXPR. Where is that done exactly? The only case handled by DECL_EXPR is TYPE_DECL. The correct thing to do is clearly implied by the first line in your patch. -- Eric Botcazou

Re: [patch] Make memory copy functions scalar storage order barriers

2020-06-08 Thread Eric Botcazou
AT_MODE_P (TYPE_MODE (srctype) ) > > || TREE_CODE (srctype) == BOOLEAN_TYPE > || TREE_CODE (srctype) == ENUMERAL_TYPE) > > srctype = bitwise_type_for_mode (TYPE_MODE (srctype)); > > with || TYPE_REVERSE_STORAGE_ORDER (srctype) (same for desttype)? We don't have TYPE_REVERSE_STORAGE_ORDER qualified types, the flag is only set on aggregate types and bitwise_type_for_mode will return an integer type. -- Eric Botcazou

Re: [PATCH RFA] tree-inline: Fix VLA handling [PR95552]

2020-06-08 Thread Eric Botcazou
calls to remap_decl[s]. And note that remap_decl has had a special handling for DECL_ORIGINAL_TYPE of TYPE_DECLs since 2003. Are you sure the problem is not that the TYPE_DECL is not attached to the enclosing BIND_EXPR? -- Eric Botcazou

Re: [patch] Make memory copy functions scalar storage order barriers

2020-06-09 Thread Eric Botcazou
b is reverse storage order? No, that's supported, again the point of the discussion is precisely to make it work! > Thus, if all this is a problem then I think we're papering over the issue > by not folding memcpy. I don't really see why you're insisting on folding memcpy. It's semantically equivalent to VIEW_CONVERT_EXPR so it needs to be treated the same way. -- Eric Botcazou

Re: [PATCH RFA] tree-inline: Fix VLA handling [PR95552]

2020-06-09 Thread Eric Botcazou
this will mean that remap_decl is invoked 3 times per TYPE_DECL: first twice from copy_bind_expr and then once again for the DECL_EXPR. But probably no big deal in the end. -- Eric Botcazou

Re: [PATCH RFA] tree-inline: Fix VLA handling [PR95552]

2020-06-09 Thread Eric Botcazou
> Like this? Fine with me, thanks! -- Eric Botcazou

[patch] Fix ICE in verify_sra_access_forest

2020-06-11 Thread Eric Botcazou
ted on x86-64/Linux, OK for the mainline? 2020-06-11 Eric Botcazou * tree-sra.c (propagate_subaccesses_from_rhs): When a non-scalar access on the LHS is replaced with a scalar access, propagate the TYPE_REVERSE_STORAGE_ORDER flag of the type of the original access. 2

(patch] Optimize assignment to volatile aggregate variable

2020-06-11 Thread Eric Botcazou
06-11 Eric Botcazou * gimplify.c (gimplify_init_constructor) : Declare new ENSURE_SINGLE_ACCESS constant and move variables down. If it is true and all elements are zero, then always clear. Return GS_ERROR if a temporary would be created for i

Re: [patch] Fix ICE in verify_sra_access_forest

2020-06-11 Thread Eric Botcazou
the same underlying structure. We also block SRA when there is a VIEW_CONVERT_EXPR messing with the storage order, see calls to storage_order_barrier_p. And folding a memcpy between them should be invalid too (see e.g. the ongoing discussion with Richard in an earlier thread). So my underst

Re: [patch] Fix ICE in verify_sra_access_forest

2020-06-15 Thread Eric Botcazou
ld_ref_for_model > instead? Well, the code is a bypass that builds an access on the LHS from a model of the RHS(!), so things need to be patched up and I'd rather not introduce bugs elsewhere if possible... -- Eric Botcazou

[Ada] Streamline implementation of renaming in gigi

2020-06-23 Thread Eric Botcazou
The main changes are 1) the bulk of the implementation is put back entirely in gnat_to_gnu_entity and 2) the handling of lvalues is unified, i.e. no longer depends on the Materialize_Entity flag being present on the entity. Tested on x86-64/Linux, applied on the mainline. 2020-06-23 Eric

[Ada] Emit user subtypes with -fgnat-encodings=minimal

2020-06-23 Thread Eric Botcazou
This changes the compiler to emit debug info for user-defined subtypes even with -fgnat-encodings=minimal, as they might be needed by the debugger. Tested on x86-64/Linux, applied on the mainline. 2020-06-23 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : Set

[Ada] Emit debug info for integral variables first

2020-06-23 Thread Eric Botcazou
This makes it possible for global dynamic types to reference the DIE of these integral variables. Tested on x86-64/Linux, applied on the mainline. 2020-06-23 Eric Botcazou * gcc-interface/utils.c (gnat_write_global_declarations): Output the integral global variables first

[Ada] Fix memory corruption with vector and variant record

2020-06-23 Thread Eric Botcazou
The problem is that Has_Constrained_Partial_View must be tested on the base type of the designated type of an allocator. Tested on x86-64/Linux, applied on all active branches. 2020-06-23 Eric Botcazou * gcc-interface/trans.c (gnat_to_gnu) : Minor tweaks. Call

[patch] Take into account range info to optimize range tests

2020-06-25 Thread Eric Botcazou
optimize_range_tests_to_bit_test to use the range info of the input in order to eliminate the new test if possible. Tested on x86-64/Linux, OK for the mainline? 2020-06-25 Eric Botcazou * tree-ssa-reassoc.c (dump_range_entry): New function. (debug_range_entry): New debug function

[patch] Extend store merging to STRING_CST

2020-06-30 Thread Eric Botcazou
lag. Tested on x86-64/Linux, OK for the mainline? 2020-07-01 Eric Botcazou * gimple-fold.c (gimple_fold_builtin_memory_op): Fold calls that were initially created for the assignment of a variable-sized object. * gimple-ssa-store-merging.c (struct merged_sto

Re: [patch] Extend store merging to STRING_CST

2020-07-01 Thread Eric Botcazou
y folding part looks OK to me, I skimmed the > store-merging change and didn't find anything suspicious but I wonder > whether not special-casing STRING_CSTs would actually simplify > the code? This would mean implementing the 1) though and, in particular, rejecting or splitting long strings, which is precisely what we do not want to do in Ada. -- Eric Botcazou

Re: [patch] Extend store merging to STRING_CST

2020-07-01 Thread Eric Botcazou
> Hmm, that's a good question - so would your patch be replaceable by > simply amending var_decl_component_p by > > (var_decl_component_p (TREE_OPERAND (src, 0)) > >|| TREE_CODE (TREE_OPERAND (src, 0)) == STRING_CST) > > ? The gimple_call_alloca_for_var_p (stmt) kludge is still needed tho

[Ada] Reject components in extensions overlapping with the parent

2020-07-02 Thread Eric Botcazou
aggregate is guaranteed to trigger an ICE with the current implementation. We now reject them again, except if the -gnatd.K switch is passed. Tested on x86-64/Linux, applied on the mainline. 2020-07-02 Eric Botcazou * debug.adb (d.K): Document new usage. * fe.h (Debug_Flag_Dot_KK

Re: [patch] Extend store merging to STRING_CST

2020-07-02 Thread Eric Botcazou
sources at the end for store-merging to be happy. OK. -- Eric Botcazou

Re: [patch] Extend store merging to STRING_CST

2020-07-02 Thread Eric Botcazou
> So this variant combined with the rest of the patch is OK then. Thanks. It occurred to me that using string_constant might be slightly better (iti is already used by gimple_fold_builtin_memchr in the same file). * gimple-fold.c (gimple_fold_builtin_memory_op): Fold calls that were

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

2020-11-18 Thread Eric Botcazou
> that broke the build of an ada cross compiler targeting > powerpc64le-linux-gnu. target_cpu is powerpc64le which is not matched by > the Makefile logic. > > Ok for the trunk? > > PR ada/97859 > * Makefile.rtl (powerpc% linux%): Also match powerpc64le cpu.

Re: [PATCH] configury: --enable-link-serialization support

2020-11-19 Thread Eric Botcazou
the gcc/ directory of the build tree: make [relink of gnat1, brig1, cc1plus, d21, f951, go1, lto1, ...] make [relink of gnat1, brig1, cc1plus, d21, f951, go1, lto1, ...] -- Eric Botcazou

Re: [PATCH] configury: --enable-link-serialization support

2020-11-19 Thread Eric Botcazou
> Does it? > Only with --enable-link-serialization, or without that too? It's the default, i.e. without --enable-link-serialization. > Will have a look. Thanks. -- Eric Botcazou

Fix PR ada/97805

2020-11-19 Thread Eric Botcazou
We need to include limits.h (or ) in adaint.c because of LLONG_MIN. Tested on x86-64/Linux, applied on the mainline. 2020-11-19 Eric Botcazou PR ada/97805 * adaint.c: Include climits in C++ and limits.h otherwise. -- Eric Botcazoudiff --git a/gcc/ada/adaint.c b/gcc/ada

[patch] Plug loophole in string store merging

2020-11-19 Thread Eric Botcazou
is detected in the series of stores, thanks to the handling of STRING_CST by native_encode_expr. Tested on x86-64/Linux, OK for the mainline? 2020-11-19 Eric Botcazou * gimple-ssa-store-merging.c (struct merged_store_group): Add new 'consecutive&#

Re: [PATCH] configury: --enable-link-serialization support

2020-11-19 Thread Eric Botcazou
> Successfully bootstrapped/regtested on x86_64-linux and i686-linux, > including make install which looked problematic in PR97911. > > Ok for trunk? I cannot really approve, but this looks like a step in the right direction. -- Eric Botcazou

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

2020-11-20 Thread Eric Botcazou
&& REGNO (SUBREG_REG (in)) < FIRST_PSEUDO_REGISTER && !REG_CAN_CHANGE_MODE_P (REGNO (SUBREG_REG (in)), GET_MODE (SUBREG_REG (in)), inmode instead? -- Eric Botcazou

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

2020-11-24 Thread Eric Botcazou
bly need a formal ack from Ulrich(?) or Jeff though. -- Eric Botcazou

Re: H8 cc0 conversion

2020-11-24 Thread Eric Botcazou
f saw but, on the other hand, this could have been very marginal a phenomenon in the end. -- Eric Botcazou

[SPARC] Fix PR target/96607

2020-11-26 Thread Eric Botcazou
imized sequence using a delay slot of call instruction related to R_SPARC_TLS_GD_CALL relocation confuses the linker and causes it to produce invalid code." Tested on SPARC64/Linux and SPARC/Solaris, applied on the mainline (for now). 2020-11-26 Eric Botcazou PR target/96607

[SPARC] Fix PR target/97939

2020-11-28 Thread Eric Botcazou
and 9 branches. 2020-11-28 Eric Botcazou PR target/97939 * config/sparc/predicates.md (arith_double_add_operand): Comment. * config/sparc/sparc.md (uaddvdi4): Use arith_double_operand. (addvdi4): Use arith_double_add_operand. (addsi3): Remove useless

[c-family] Improve support of simple bit-fields in -fdump-ada-spec

2020-11-28 Thread Eric Botcazou
This fixes an issue with nested structures and adds an Alignment clause to counter the effect of the Pack aspect. Tested on x86_64/Linux, applied on the mainline. 2020-11-28 Eric Botcazou c-family/ * c-ada-spec.c (dump_nested_type) : Remove obsolete code. (dump_ada_structure

[SPARC] Make -fzero-call-used-regs work

2020-12-01 Thread Eric Botcazou
. 2020-12-01 Eric Botcazou * function.c (gen_call_used_regs_seq): In a function subject to the leaf register optimization, skip registers that are not present. * config/sparc/sparc.c (TARGET_ZERO_CALL_USED_REGS): Define to... (sparc_zero_call_used_regs): ...this

[Ada] Upgrade ACATS testsuite to latest ACATS 2.6

2020-12-02 Thread Eric Botcazou
This upgrades the ACATS tesuite present in ada/acats from 2.5 to latest 2.6, removing 3 tests and adding 11 tests, some of them written very recently. Tested on x86-64/Linux, SPARC64/Linux, PowerPC64/Linux and SPARC/Solaris, applied on the mainline. 2020-12-02 Eric Botcazou

[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

[patch] Fix PR middle-end/98082

2020-12-03 Thread Eric Botcazou
-03 Eric Botcazou PR middle-end/98082 * function.c (use_register_for_decl): Also return true for a result if cfun->tail_call_marked is true. 2020-12-03 Eric Botcazou * g++.dg/cpp2a/pr98082.C: New test. -- Eric Botcazoudiff --git a/gcc/function.c b/

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

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

2020-12-03 Thread Eric Botcazou
cannot support both given the current setup, so you'll have to make a choice for the powerpc64-suse-linux compiler. -- Eric Botcazou

[patch] Fix checking failure in IPA-SRA

2020-12-03 Thread Eric Botcazou
Ada testcase. The attached fix relaxes the check, OK for mainline and 10 branch? 2020-12-03 Eric Botcazou * ipa-sra.c (verify_access_tree_1): Relax assertion on the size. 2020-12-03 Eric Botcazou * gnat.dg/opt91.ad[sb]: New test. * gnat.dg/opt91_pkg.ad[sb]: New

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

2020-12-04 Thread Eric Botcazou
> I think you need to add an effective-target check, because the new test > fails on aarch64/arm: Done. -- Eric Botcazou

Re: Updating the backend status for h8300 on the wiki

2020-12-07 Thread Eric Botcazou
> Now there are only AVR and CR16 that need to be converted. Great progress! Indeed, but why does CR16 not have the 'c' letter then? -- Eric Botcazou

Re: Updating the backend status for h8300 on the wiki

2020-12-07 Thread Eric Botcazou
> I noticed that as well. OK, now corrected. -- Eric Botcazou

[Ada] Fix problematic conversion to boolean type

2020-12-07 Thread Eric Botcazou
The new ranger exposed a problematic conversion to boolean type done in gigi. Tested on x86-64/Linux, applied on the mainline. 2020-12-07 Eric Botcazou * gcc-interface/utils.c (convert) : Call fold_convert in the cases where convert_to_integer is not called. : Call

[Ada] Fix corner case issue with discriminated record type

2020-12-07 Thread Eric Botcazou
for this size, and the size of the component given by the representation clause is lower than the value of this bound rounded up to the alignment. Tested on x86-64/Linux, applied on the mainline. 2020-12-07 Eric Botcazou * gcc-interface/trans.c (Call_to_gnu): Also create a temporary

Re: [patch] Enhance debug info for fixed-point types

2020-12-07 Thread Eric Botcazou
> 2020-11-11 Eric Botcazou > > * exp_dbug.adb (Is_Handled_Scale_Factor): Delete. > (Get_Encoded_Name): Do not call it. > * gcc-interface/decl.c (gnat_to_gnu_entity) : > Tidy up and always use a meaningful description for arbitrary > scale f

[Ada] Fix assembler name collision

2020-12-07 Thread Eric Botcazou
Gigi uses a dummy global variable to register global types for debug info purposes and its name can now collide with user variables. Tested on x86-64/Linux, applied on the mainline and 10 branch. 2020-12-07 Eric Botcazou * gcc-interface/trans.c (lvalue_for_aggregate_p): Also return

[Ada] Fix internal error on library-level type extended locally

2020-12-07 Thread Eric Botcazou
, applied on the mainline, 10 and 9 branches. 2020-12-07 Eric Botcazou * gcc-interface/trans.c (maybe_make_gnu_thunk): Return false if the target is local and thunk and target do not have the same context. -- Eric Botcazoudiff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada

[patch] Fix PR tree-optimization/96344

2020-12-07 Thread Eric Botcazou
Hi, the very recent addition of the if_to_switch pass has partially disabled the optimization I added back in June: 2020-06-26 Eric Botcazou * tree-ssa-reassoc.c (dump_range_entry): New function. (debug_range_entry): New debug function. (update_range_test): Invoke

Re: [PATCH] phiopt: Fix up two_value_replacement BOOLEAN_TYPE handling for Ada [PR98188]

2020-12-09 Thread Eric Botcazou
t (boolean_type_node, 1)); Richard is correct, this is the RM maximum value, not the GCC maximum value. All Ada integral types have maximum GCC bounds for their precision like in C. -- Eric Botcazou

<    5   6   7   8   9   10   11   12   13   14   >