[Ada] Fix alignment warning on aliased formal parameter

2015-02-08 Thread Eric Botcazou
This eliminates the alignment warning wrongly issued on an address clause applied to a formal parameter, even though the type of the parameter has the appropriate alignment clause. Tested on x86_64-suse-linux, applied on the mainline. 2015-02-08 Eric Botcazou * gcc-interface

Re: patch to fix rtl documentation for new floating point comparisons

2015-02-10 Thread Eric Botcazou
treats everything but LT/LE/GT/GE as quiet. -- Eric Botcazou

[Visium] Minor options tweak

2015-02-12 Thread Eric Botcazou
Tested on visium-elf, applied on the mainline. 2015-02-12 Eric Botcazou * config/visium/visium.opt (msv-mode): Add RejectNegative and Report. (muser-mode): Likewise. -- Eric BotcazouIndex: config/visium/visium.opt

Re: [PATCH] Fix PR63665

2014-10-29 Thread Eric Botcazou
> 2014-10-28 Richard Biener > > PR tree-optimization/63665 > * tree-vect-slp.c (vect_get_mask_element): Properly handle > accessing out-of-bound elements. Does fix it the assertion failure on the attached testcase? If so, would you mind committing the testcase with the patc

Re: [PATCH x86] Increase PARAM_MAX_COMPLETELY_PEELED_INSNS when branch is costly

2014-10-31 Thread Eric Botcazou
e have experienced performance regressions because of this arbitrary change and bumped it back to 200 unconditionally. -- Eric Botcazou

Minor tweaks in ipa-inline.c

2014-10-31 Thread Eric Botcazou
ges. Tested on x86_64-suse-linux, applied on mainline as obvious. 2014-10-31 Eric Botcazou * ipa-inline.c (want_inline_small_function_p): Fix typo and formatting. (want_inline_function_to_all_callers_p): Fix formatting and simplify. -- Eric BotcazouIndex: ipa-inlin

Re: [PARCH 1/2, x86, PR63534] Fix darwin bootstrap

2014-11-05 Thread Eric Botcazou
sure than just assume. See ira-lives.c:1217 and below. -- Eric Botcazou

Re: [RTL, Patch] Int div by constant compilation enhancement

2014-11-05 Thread Eric Botcazou
consecutive right shifts in combination with a low-part operation. Can't the 'c1 == size (M2) - size (M1)' condition be relaxed? -- Eric Botcazou

Re: [Ada] Changes related to back-end inlining

2014-11-05 Thread Eric Botcazou
> 2014-10-31 Eric Botcazou > > * inline.adb (Has_Excluded_Declaration): With back-end inlining, > only return true for nested packages. > (Cannot_Inline): Issue errors/warnings whatever the optimization level > for back-end inlining and remove ass

[Ada] Fix location information of exception block

2014-11-05 Thread Eric Botcazou
This makes it so that an exception block doesn't inherit a bogus location information in SJLJ mode. Tested on x86_64-suse-linux, applied on the mainline. 2014-11-05 Eric Botcazou * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): Set the SLOC of the no

[Ada] Fix ICE on type derived from private discriminated type

2014-11-05 Thread Eric Botcazou
Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : For a derived untagged type that renames discriminants, be prepared for a type derived from a private discriminated type when changing the type of the stored discriminants. 2014-11-05 Eric Botcazou

[Ada] Fix crash on function with In-Out param returning discriminated type

2014-11-05 Thread Eric Botcazou
The compiler crashes on a function with an In-Out parameter which returns a discriminated record type with default discriminant. Tested on x86_64-suse-linux, applied on the mainline. 2014-11-05 Eric Botcazou * gcc-interface/trans.c (Subprogram_Body_to_gnu): For a function with

Re: [PATCH] PR36312

2014-11-05 Thread Eric Botcazou
ke[1]: Leaving directory `/home/eric/build/gcc/native/x86_64-suse- linux/libada' make: *** [all-target-libada] Error 2 -- Eric Botcazou

Re: [PATCH] PR36312

2014-11-05 Thread Eric Botcazou
tch > for now. Thanks. I'm under the impression that --enable-languages=all will really build all the languages now. -- Eric Botcazou

Re: [PATCH, Pointer Bounds Checker 19/x] Support bounds in expand

2014-11-05 Thread Eric Botcazou
gh... Can't we use a parameter with a default value? -- Eric Botcazou

[patch] Fix ACATS c65003a

2014-11-06 Thread Eric Botcazou
ted on x86_64-suse-linux, OK for the mainline? 2014-11-06 Eric Botcazou * tree-cfgcleanup. (fixup_noreturn_call): Do not perform DCE here. 2014-11-06 Eric Botcazou * gnat.dg/opt43.adb: New test. -- Eric BotcazouIndex: tree

Re: [patch] Fix ACATS c65003a

2014-11-06 Thread Eric Botcazou
rtable about fiddling with the SSA_NAME_VAR of LHS. Now this appears to work fine, so I'll install the modified version if a full testing cycle successfully finishes. > Ok with that change. Thanks. -- Eric Botcazou

Re: [PATCH] RTEMS: select SPARC multilibs

2014-11-07 Thread Eric Botcazou
MS folks have the final say. -- Eric Botcazou

[patch] Fix handling of inlining and nested functions in dwarf2out.c

2014-11-07 Thread Eric Botcazou
and regtested on x86_64-suse-linux, OK for the mainline? 2014-11-07 Eric Botcazou * dwarf2out.c (set_block_origin_self): Skip nested functions. [*] There is an important factor coming into play, which is the order in which the functions are sent to dwarf2out.c. That's decided by

Re: [PARCH 1/2, x86, PR63534] Fix darwin bootstrap

2014-11-08 Thread Eric Botcazou
Vlad is > working on right now). > > Does that sound right to either of you? Yes, that's also my understanding of the code and the behavior required by builtin setjmp/longjmp. I can add that the Ada compiler would fall apart if this didn't work correctly in the compiler,

Fix coverage inaccuracy with return in C/C++

2014-11-10 Thread Eric Botcazou
t in incorrect results for coverage analysis. */ gimple_set_location (tmp_rs.stmt, UNKNOWN_LOCATION); Hence the attached patch, which does the same when a representative return is reused for the fallthru. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2014-11-10 Eric Bo

Re: [PATCH] Fix PR 63748

2014-11-10 Thread Eric Botcazou
rmal edges in GIMPLE on Linux platforms. -- Eric Botcazou

Re: [gimple-classes, committed 4/6] tree-ssa-tail-merge.c: Use gassign

2014-11-11 Thread Eric Botcazou
But perhaps I'm alone with this. IMO that's the sort of things some of us were afraid of when the C++ switch was being discussed and IIRC we were told this would not happen... -- Eric Botcazou

Fix PR ada/42978

2014-11-11 Thread Eric Botcazou
This makes it so that gnatmake echoes the full command line passed to ranlib. Tested on x86_64-suse-linux, applied on the mainline. 2014-11-11 Simon Wright PR ada/42978 * mlib-utl.adb (ar): Output the options passed to ranlib. -- Eric BotcazouIndex: mlib-utl.adb ==

Re: [PATCH x86] Increase PARAM_MAX_COMPLETELY_PEELED_INSNS when branch is costly

2014-11-11 Thread Eric Botcazou
ike 200 as well as 120 and 150, but can confirm performance > gains only for x86. IMO it's either 150 or 200. We chose 200 for our 4.9-based compiler because this gave the performance boost without affecting the code size (on x86-64) and because this was previously 400, but it's your call. -- Eric Botcazou

[SPARC] Fix PR target/61535

2014-11-11 Thread Eric Botcazou
This is the RTL checking failure triggered by gcc.dg/vect/vect-singleton_1.c on SPARC 64-bit: the back-end gets confused passing 1-element float vectors. As documented in the code, we pass all FP vectors like aggregate types. Tested on SPARC64/Solaris, applied on the mainline. 2014-11-11 Eric

Follow-up to PR51471

2014-11-11 Thread Eric Botcazou
mainline. 2014-11-11 Eric Botcazou * reorg.c (fill_slots_from_thread): Do not copy frame-related insns. -- Eric BotcazouIndex: reorg.c === --- reorg.c (revision 217259) +++ reorg.c (working copy) @@ -2501,9 +2501,11

Backport fix for PR c++/85400

2019-05-22 Thread Eric Botcazou
Jakub asked me to backport the fix for PR c++/85400 initially intended for SPARC/Solaris but which also helps on x86-64/Linux apparently. Tested on the latter platform, applied on the 8 branch. 2019-05-22 Eric Botcazou c-family/ Backport from mainline 2018-05-10 Eric

Re: Backport fix for PR c++/85400

2019-05-22 Thread Eric Botcazou
> Probably also required for GCC 7 then? The problem is (probably) present there too, but that's not my call. -- Eric Botcazou

[testsuite] Add testcase to gnat.dg testsuite

2019-05-23 Thread Eric Botcazou
This adds the Ada testcase that detected a since then fixed regression on the 8 branch introduced by a backport. Tested on x86_64-suse-linux, applied on mainline, 9 and 8 branches. 2019-05-23 Eric Botcazou * gnat.dg/opt78.ad[sb]: New test. -- Eric Botcazou-- { dg-do compile

[Ada] Stabilize sort for -fdump-ada-spec

2019-05-23 Thread Eric Botcazou
Self-explanatory. Tested on x86-64/Lnux, applied on mainline and 9 branch. 2019-05-23 Eric Botcazou * c-ada-spec.c (compare_node): Compare the DECL_UIDs as a last resort. -- Eric BotcazouIndex: c-ada-spec.c === --- c

[patch] Fix ICE in resolve_args_picking_1 with -gsplit-dwarf

2019-05-27 Thread Eric Botcazou
5-27 Eric Botcazou * dwarf2out.c (resolve_args_picking_1): Deal with DW_OP_GNU_addr_index and DW_OP_GNU_const_index opcodes. 2019-05-27 Eric Botcazou * gnat.dg/specs/array4.ads: New test. -- Eric BotcazouIndex: d

[Ada] Improve code generated for Left_Rotate from Interfaces

2019-05-27 Thread Eric Botcazou
This tweaks the GENERIC code emitted by gigi for the Left_Rotate routine from the Interfaces package so as to expose more optimization opportunities. Tested on x86_64-suse-linux, applied on the mainline. 2019-05-27 Eric Botcazou * gcc-interface/trans.c (gnat_to_gnu) : Convert the

[Ada] Fix spurious error on unchecked conversion to misaligned type

2019-05-27 Thread Eric Botcazou
the natural one. Tested on x86_64-suse-linux, applied on the mainline, 9 and 8 branches. 2019-05-27 Eric Botcazou * gcc-interface/trans.c (Call_to_gnu): Use the unpadded type when putting back an intermediate conversion the type of the actuals. 2019-05-27 Eric Botcazou

[Ada] Fix internal error on limited view of incomplete type

2019-05-27 Thread Eric Botcazou
-05-27 Eric Botcazou * gcc-interface/trans.c (Gigi_Types_Compatible): New predicate. (Identifier_to_gnu): Use it to assert that the type of the identifier and that of its entity are compatible for gigi. Rename a couple of local variables and separate the processing

[Ada] Do not generate dangling references to bounds

2019-05-27 Thread Eric Botcazou
19-05-27 Eric Botcazou * gcc-interface/trans.c (Identifier_to_gnu): Minor tweaks. (gnat_to_gnu): Do not convert the result if it is a reference to an unconstrained array used as the prefix of an attribute reference that requires an lvalue. 2019-05-27 Eric Bot

[Ada] Fix minor warning issue

2019-05-27 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline, 9 and 8 branches. 2019-05-27 Eric Botcazou * gcc-interface/utils.c (maybe_pad_type): Issue the warning for the specific case of component types preferably. -- Eric Botcazou Index: gcc-interface/utils.c

[Ada] Add support for __builtin_expect and friends

2019-05-27 Thread Eric Botcazou
This adds support for __builtin_expect as well as __builtin_[un]likely in Ada. Tested on x86_64-suse-linux, applied on the mainline. 2019-05-27 Eric Botcazou * gcc-interface/ada-builtin-types.def: New file. * gcc-interface/ada-builtins.def: Likewise. * gcc-interface

[Ada] Silence useless -Wuninitialized warning

2019-05-27 Thread Eric Botcazou
This silences a warning issued for the call to the initialization procedure of a record type on a misaligned component of another record type. Tested on x86_64-suse-linux, applied on the mainline and 9 branch. 2019-05-27 Eric Botcazou * gcc-interface/trans.c (Call_to_gnu): Do not

[Ada] Add support for __builtin_prefetch

2019-05-28 Thread Eric Botcazou
This adds support for __builtin_prefetch in Ada. Tested on x86_64-suse-linux, applied on the mainline. 2019-05-28 Eric Botcazou * gcc-interface/decl.c (intrin_arglists_compatible_p): Do not return false if the internal builtin uses a variable list. 2019-05-28 Eric

[Ada] Fix crash on extension with variable size and representation clause

2019-05-28 Thread Eric Botcazou
The compiler segfaults on the extension of a tagged record type with variable size subject to a partial representation clause, which is quite pathological. Tested on x86_64-suse-linux, applied on the mainline and 9 branch. 2019-05-28 Eric Botcazou * gcc-interface/decl.c

[Ada] Fix compiler crash on function returning array at -O

2019-05-28 Thread Eric Botcazou
branches. 2019-05-28 Eric Botcazou * gcc-interface/trans.c (walk_nesting_tree): New static function. (finalize_nrv): Use it to walk the entire nesting tree. 2019-05-28 Eric Botcazou * gnat.dg/opt79.ad[sb]: New test. -- Eric Botcazoupackage Opt79 is type Arr

[Ada] Fix minor issue with unconstrained packed arrays

2019-05-28 Thread Eric Botcazou
The compiler allocates the non-packed size for a function returning a parameter of an unconstrained packed array type. Tested on x86_64-suse-linux, applied on the mainline and 9 branch. 2019-05-28 Eric Botcazou * gcc-interface/trans.c (lvalue_required_for_attribute_p): Return 0

[Ada] Add support for selected generic function attributes in Ada

2019-05-28 Thread Eric Botcazou
x86_64-suse-linux, applied on the mainline. 2019-05-28 Eric Botcazou * doc/gnat_rm/implementation_defined_pragmas.rst (Machine_Attribute): Document additional optional parameters. * sem_prag.adb (Analyze_Pragma) : Accept more than one optional parameter

[patch] Fix segfault caused by spurious constant overflow

2019-05-31 Thread Eric Botcazou
branch? 2019-05-31 Eric Botcazou * fold-const.c (extract_muldiv_1) : Do not distribute a multiplication by a power-of-two value. 2019-05-31 Eric Botcazou * gnat.dg/specs/discr6.ads: New test. -- Eric Botcazo

Re: [patch] Fix segfault caused by spurious constant overflow

2019-05-31 Thread Eric Botcazou
xact_log2 (wi::to_wide (c)) > 0 > > not sure why the sizetype constant for you fits in a signed HWI > or you need to compute its absolute value. Eventually you > need to use wi::abs(wide_int::from (wi::to_wide (c), TYPE_PRECISION > (TREE_TYPE (c)), SIGNED)) > or so. This is just mirrored on what fold_plusminus_mult_expr does. -- Eric Botcazou

Re: [patch] Fix segfault caused by spurious constant overflow

2019-06-03 Thread Eric Botcazou
> Hmm, ISTR we had such mitigations in place (or have) elsewhere keying > on the most significant bit set instead of power-of-two. But your case > likely recurses and runs into the extract_multiv limiting to eventually > stop, even for (N + 4) * 8, right? If so shouldn't we prevent this > even fo

Re: Patch: don't cap TYPE_PRECISION of bitsizetype at MAX_FIXED_MODE_SIZE

2019-06-05 Thread Eric Botcazou
other targets though. Are we sure that we want to do bitsizetype calculations in a larger mode on very embedded targets? -- Eric Botcazou

Re: [PATCH 0/5] Tweak IRA handling of tying and earlyclobbers

2019-06-24 Thread Eric Botcazou
xtensa-elf Thanks for the note, I was about to ask what happened for SPARC. :-) Btw, where does this sparc-wrs-vxworks target come from? It's quite obsolete so should be replaced with sparc-elf at this point. -- Eric Botcazou

Re: [SPARC] Fix PR target/87807

2018-12-05 Thread Eric Botcazou
ations and code > [-Wdeclaration-after-statement] > > The following patch fixes this by building as C99. Alternatively, it > would work just as well to split the x declaration and initialization. Thanks for fixing this. -- Eric Botcazou

Fix PR rtl-optimization/88390

2018-12-08 Thread Eric Botcazou
27;s fixed by adding a flag to dw_cfi_row to record whether the operation has been seen. Tested on SPARC/Solaris 11, applied on the mainline. 2018-12-08 Eric Botcazou PR rtl-optimization/88390 * dwarf2cfi.c (struct dw_cfi_row): Add window_save field. (cfi_row_equal_p

[testsuite] Small tweak for Visium

2018-12-10 Thread Eric Botcazou
Tested on visium-elf and x86_64-suse-linux, applied on mainline and 8 branch. 2018-12-10 Eric Botcazou * c-c++-common/patchable_function_entry-decl.c: Pass -mcpu=gr6 for Visium and remove other specific handling. * c-c++-common/patchable_function_entry-default.c

Fix PR ada/88429

2018-12-11 Thread Eric Botcazou
2018-12-11 Eric Botcazou PR ada/88429 * configure.ac (default_gnatlib_target): Set to gnatlib instead of gnatlib-plain if --disable-shared. * configure: Regenerate. * Makefile.in (all): Replace gnatlib prerequisite with libada. (ADA_RTS_SUBDI

[SPARC] Fix PR target/86806

2018-12-12 Thread Eric Botcazou
This adds the speculation barrier on SPARC-V9 in the form of membar #Sync. 2018-12-12 Eric Botcazou PR target/86806 * config/sparc/sparc.md (unspecv): Add UNSPECV_SPECULATION_BARRIER. (speculation_barrier): New instruction for V9. -- Eric BotcazouIndex: config/sparc

Re: [PATCH][PR84877]Dynamically align the address for local parameter copy on the stack when required alignment is larger than MAX_SUPPORTED_STACK_ALIGNMENT

2018-12-13 Thread Eric Botcazou
PR bootstrap/88450. More generally, the patch totally disregards the SUPPORTS_STACK_ALIGNMENT machinery of the middle-end, which is quite surprising given that this machinery was precisely designed for this purpose. Why is it so? -- Eric Botcazou

[Ada] Small fix for records with boolean discriminants

2018-12-14 Thread Eric Botcazou
s the Ada compiler. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2018-12-14 Eric Botcazou * dwarf2out.c (analyze_discr_in_predicate): Simplify. (analyze_variants_discr): Deal with naked boolean discriminants. ada/ * gcc-interface/decl.c (choices

[Ada] Fix Max_Size_In_Storage_Elements for unconstrained array types

2018-12-14 Thread Eric Botcazou
mment. 2018-12-14 Eric Botcazou * gnat.dg/max_size.adb: New test. * gnat.dg/max_size_pkg.ads: Likewise. -- Eric BotcazouIndex: gcc-interface/decl.c === --- gcc-interface/decl.c (revision 267130) +++ gcc-inte

[patch] Fix PR rtl-optimization/87727

2018-12-20 Thread Eric Botcazou
tive for a LEAF_REGISTERS target like SPARC so the proposed fix is to re-enable hard register combining for leaf registers. Tested on SPARC/Solaris 11, OK for the mainline? 2018-12-20 Eric Botcazou PR rtl-optimization/87727 * combine.c (cant_combine_insn_p): On a LEAF_REGIST

Re: [patch] Fix PR rtl-optimization/87727

2018-12-20 Thread Eric Botcazou
> Does this solve most of the pessimizations? Yes, it does. > Please add a testcase if it doesn't solve existing FAILs. It fixes gcc.target/sparc/overflow-2.c. -- Eric Botcazou

Re: [patch] Fix PR rtl-optimization/87727

2018-12-20 Thread Eric Botcazou
> It's not a terrible workaround, no. It looks like it will make some asm > once again fail though? If argument registers are forwarded to in the asm. The combiner change looks like a big hammer for such a corner case though. -- Eric Botcazou

Re: [PATCH] Fix Ada bootstrap for Darwin9 and earlier.

2018-12-23 Thread Eric Botcazou
p_self): Ensure that the system interface used is available on the target. > +#else > +return (void *)pthread_mach_thread_np (pthread_self ()); > +#endif Wrong indentation. -- Eric Botcazou

Re: [1/2] PR88598: Optimise x * { 0 or 1, 0 or 1, ... }

2019-01-04 Thread Eric Botcazou
turn false; > + > + return true; > + } > + > +default: > + return false; > +} > + > +#undef RECURSE Can we avoid the gratuitous use of template here? We were told that C++ would be used only when it makes things more straightforward and it's the contrary in this case, to wit the need for the ugly RECURSE macro in the middle. -- Eric Botcazou

Re: [1/2] PR88598: Optimise x * { 0 or 1, 0 or 1, ... }

2019-01-04 Thread Eric Botcazou
umber of 2 values in the template, I'm sure one can imagine the need in some distant future for initializer_each_minus_one_or_zero_or_onep. ;-) -- Eric Botcazou

Re: [patch] More precise message with -Winline

2019-07-25 Thread Eric Botcazou
> That seems misleading, unless the exception is really never thrown. See my earlier answer to Richard. -- Eric Botcazou

[patch] Extend GIMPLE store merging to throwing stores

2019-07-26 Thread Eric Botcazou
07-26 Eric Botcazou * tree-eh.h (unsplit_all_eh): Declare. * tree-eh.c (maybe_remove_unreachable_handlers): Detect more cases. (unsplit_all_eh): Make public. * gimple-ssa-store-merging.c: Include cfganal.h cfgcleanup.h except.h. (struct store_immediate_info)

Re: [Mingw-w64-public] Fwd: [patch] Reimplement GNU threads library on native Windows

2019-07-30 Thread Eric Botcazou
;s pure FUD. > 2) makes `__gthread_self()` return invalid handles in detached threads. Admittedly, but this can be fixed if this is deemed necessary by clearing the thread descriptor when detaching the thread. -- Eric Botcazou

[patch] Fix tree-optimization/91169

2019-08-01 Thread Eric Botcazou
nline? 2019-08-01 Eric Botcazou PR tree-optimization/91169 * fold-const.c (get_array_ctor_element_at_index): Remove early exit and do not return a bogus ctor_idx when the index wraps around. -- Eric BotcazouIndex: fold-co

Re: [patch] Fix tree-optimization/91169

2019-08-01 Thread Eric Botcazou
index wraps around, that's the bug. > So I'd appreciate more explanation on how the index "wraps". See above. I can rewind the entire chain of events if need be, but this is a long one starting a long time ago with the initial blunder with PLUS_EXPR and sizetype. -- Eric Botcazou

Fix minor issues in branch prediction code

2019-08-01 Thread Eric Botcazou
It's an assorted list of things, mainly in comments, that weren't updated when something else was changed + a few consistency fixes. No functional changes. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2019-08-01 Eric Botcazou * cgraph.h (c

Add line returns in RTL dump file

2019-08-01 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2019-08-01 Eric Botcazou * cfgrtl.c (relink_block_chain): Add line returns in dump file. -- Eric BotcazouIndex: cfgrtl.c === --- cfgrtl.c (revision 273907

Re: [patch] Set TREE_THIS_NOTRAP throughout tree-nested.c

2019-08-02 Thread Eric Botcazou
> Note that the revision caused size increase of 548.exchange2_r SPEC 2017 > benchmark: > https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=35.398.4 Are you sure? This should only change anything for nested functions. -- Eric Botcazou

[patch] Small tweaks to profile parameters

2019-08-02 Thread Eric Botcazou
gracefully handles a hot-bb-count-fraction of 0, 2. it sets the range of unlikely-bb-count-fraction to (0, 0) like the others. Tested on x86_64-suse-linux, OK for the mainline? 2019-08-02 Eric Botcazou * doc/invoke.texi (hot-bb-count-fraction): Rework description. (hot-bb

Re: [patch] Set TREE_THIS_NOTRAP throughout tree-nested.c

2019-08-02 Thread Eric Botcazou
e they no longer trap. -- Eric Botcazou

[patch] Fix minor SLSR pessimization

2019-08-02 Thread Eric Botcazou
7;t seem to break anything. Tested on x86_64-suse-linux, OK for the mainline? 2019-08-02 Eric Botcazou * gimple-ssa-strength-reduction.c (valid_mem_ref_cand_p): New function. (replace_ref): Do not replace a chain of only two candidates which are valid memory references.

Re: [PATCH, Ada] Push -shared-libgcc where needed.

2019-08-04 Thread Eric Botcazou
> This patch has now been on mainline for some time without any apparent > issue, the problem is also present on the open branches, may I backport it? OK, thanks. -- Eric Botcazou

Re: [PATCH, Ada, Darwin, PPC] PPC Darwin has stack check probes.

2019-08-04 Thread Eric Botcazou
> This (PPC)Darwin-specific patch has been on mainline for some time now > without issues, the problem is present on open branches, may I backport it? Yes, thanks. -- Eric Botcazou

Re: [patch] Fix tree-optimization/91169

2019-08-05 Thread Eric Botcazou
is because I forgot to adjust cfield handling of setting index. > > So I'm testing the adjusted patch attached which fixes the IL > and for testing have patched gcc/testsuite/ada/acats/run_all.sh > to add -m32. Thanks! -- Eric Botcazou-- { dg-do run } -- { dg-options "-O&

Re: Canonicalization of compares performed as side-effect operations

2019-08-06 Thread Eric Botcazou
:CCC (not:I (match_operand:I 0 "register_operand" "r")) (const_int -1)))] and recognizing the -1 in SELECT_CC_MODE. Obviously cumbersome though. -- Eric Botcazou

Re: Canonicalization of compares performed as side-effect operations

2019-08-14 Thread Eric Botcazou
[Sorry for the delay, I missed your question...] > Interesting. Does it work for the general case of a reverse subtract, > which I need to handle as wel? Not clear, Visium only uses it for SNE and combined NEG/SNE. -- Eric Botcazou

[patch] Add guard to build_reconstructed_reference

2019-08-16 Thread Eric Botcazou
-16 Eric Botcazou * tree-sra.c (build_reconstructed_reference): Return NULL_TREE instead of NULL. Add guard for broken VIEW_CONVERT_EXPRs. 2019-08-16 Eric Botcazou * gnat.dg/opt81.ad[sb]: New test. -- Eric BotcazouIndex: tree-sra.c

Fix PR rtl-optimization/91347

2019-08-20 Thread Eric Botcazou
applied to some tail calls before reload to all tail calls if HARD_FRAME_POINTER_IS_ARG_POINTER. Tested by Dave on HPPA/Linux, applied on all active branches. 2019-08-20 Eric Botcazou PR rtl-optimization/91347 * dse.c (scan_insn): Call add_wild_read for non-const/memset tail calls

Fix crash with -fdump-ada-spec

2019-08-21 Thread Eric Botcazou
which itself has got only 1 argument (DECL_ARGUMENTS list) corresponding to the anonymous (int) at the end. The C++ parser doesn't have the issue. Joseph, is that a known issue of the C parser? The attached patch changes -fdump-ada-spec to using TYPE_ARG_TYPES for it. 2019-08-21 Eric Bot

Re: Fix crash with -fdump-ada-spec

2019-08-21 Thread Eric Botcazou
> The problem is that the logic in c_parser_declaration_or_fndef for setting > DECL_ARGUMENTS (not previously meaningful in non-definition declarations > at all), as introduced by > > r253411 | dmalcolm | 2017-10-04 14:10:59 + (Wed, 04 Oct 2017) | 85 lines > > C: underline parameters in misma

[Ada] Remove range check generation code in gigi

2019-08-30 Thread Eric Botcazou
-08-30 Eric Botcazou * gcc-interface/gigi.h (gigi_checking_assert): New macro. * gcc-interface/decl.c (gnat_to_gnu_entity) : Remove redundant test and adjust comments. Minor tweaks. * gcc-interface/trans.c (Call_to_gnu): Do not generate range checks

[Ada] Add assertion for Size attribute et al.

2019-08-30 Thread Eric Botcazou
The type to which, or the type of the object to which, it is applied must be frozen when the Size attribute, or a variant thereof, is processed. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/trans.c (Attribute_to_gnu) : Add assertion

[Ada] Fix infinite recursion on dynamic record type with -gnatR4

2019-08-30 Thread Eric Botcazou
An oversight when -gnatR4 was invented. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/decl.c (annotate_value) : Inline the call also if List_Representation_Info is greater than 3. -- Eric BotcazouIndex: gcc-interface/decl.c

[Ada] Fix crash on unconstrained array with convention C

2019-08-30 Thread Eric Botcazou
This happens when the array has multiple dimensions. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/utils.c (build_template): Deal with parameters passed by pointer to component of multi-dimensional arrays. -- Eric

[Ada] Fix minor inaccuracy in lvalue_required_p

2019-08-30 Thread Eric Botcazou
It can only result in a missed early optimization. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/trans.c (lvalue_required_p) : Adjust GNU_TYPE in the recursive call. : Likewise. -- Eric BotcazouIndex: gcc-interface

[Ada] Allow tighter packing for component with variant part

2019-08-30 Thread Eric Botcazou
This lifts an old restriction pertaining to the layout of components of record types whose nominal subtype contains a variant part: they couldn't be packed. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/g

[Ada] Minor tweak for coverage

2019-08-30 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/trans.c (gnat_to_gnu): Do not set the location on an expression used for a tag. -- Eric BotcazouIndex: gcc-interface/trans.c

[Ada] Add warning for explicit by-reference mechanism

2019-08-30 Thread Eric Botcazou
This instructs gigi to issue a warning when an explicit by-reference mechanism specified by means of pragma Export_Function cannot be honored. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/ada-tree.h (DECL_FORCED_BY_REF_P): New macro

[Ada] Saturate the sizes for the target in -gnatR output

2019-08-30 Thread Eric Botcazou
This changes the saturation from the host to the target for the large sizes displayed in the the -gnatR output. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/decl.c (maybe_saturate_size): New function. (gnat_to_gnu_entity

[SPARC] Fix PR target/91472

2019-09-01 Thread Eric Botcazou
pseudo-register. Bootstrapped/regtested on SPARC64/Linux, applied on mainline and 9/8 branches. 2019-09-01 Eric Botcazou PR target/91472 * config/sparc/sparc.c (sparc_cannot_force_const_mem): Return true during LRA/reload in PIC mode if the PIC register hasn't

[SPARC] Fix PR target/91323

2019-09-02 Thread Eric Botcazou
Eric Botcazou PR target/91323 * doc/generic.texi (LTGT_EXPR): Merge with other comparison operators. * rtl.def (LTGT): Likewise. Add note about floating-point exceptions. * tree.def (LTGT_EXPR): Likewise. * config/sparc/sparc.c (select_cc_mode): Return

Fix PR rtl-optimization/89795

2019-09-11 Thread Eric Botcazou
, applied on all active branches. 2019-09-11 Eric Botcazou PR rtl-optimization/89795 * rtlanal.c (nonzero_bits1) : Do not propagate results from inner REGs to paradoxical SUBREGs if WORD_REGISTER_OPERATIONS is set. 2019-09-11 Eric Botcazou * gcc.target/sparc

Re: Fix PR rtl-optimization/89795

2019-09-11 Thread Eric Botcazou
can work at all, but those aren't > documented. The problematic issue is more basic and pertains to mere SUBREGs. -- Eric Botcazou

Fix PR c/91815

2019-09-20 Thread Eric Botcazou
x86-64/Linux, approved by Joseph in the audit trail and applied on the mainline. 2019-09-20 Eric Botcazou PR c/91815 * c-decl.c (pushdecl): In C detect duplicate declarations across scopes of identifiers in the external scope only for variables and functions. 2019-09

[SPARC] Fix PR target/91269

2019-09-20 Thread Eric Botcazou
/regtested on SPARC/Solaris and SPARC64/Linux, applied on the mainline and 9 branch. 2019-09-20 Eric Botcazou PR target/91269 * config/sparc/sparc.h (HARD_REGNO_CALLER_SAVE_MODE): Define. 2019-09-20 Eric Botcazou * gcc.dg/pr91269.c: New test. -- Eric BotcazouIndex

[Ada] Fix size increase for packed record with aliased component

2019-09-23 Thread Eric Botcazou
mainline. 2019-09-23 Eric Botcazou * gcc-interface/decl.c (components_to_record): Do not reorder fields in packed record types if they contain fixed-size fields that cannot be laid out in a packed manner. -- Eric BotcazouIndex: gcc-interface/decl.c

[Ada] Fix run-time segfault with private access-to-subprogram type

2019-09-23 Thread Eric Botcazou
Eric Botcazou * gcc-interface/trans.c (Attribute_to_gnu): Test Can_Use_Internal_Rep on the underlying type of the node. (Call_to_gnu): Likewise with the type of the prefix. -- Eric BotcazouIndex: gcc-interface/trans.c

<    13   14   15   16   17   18   19   20   21   22   >