Re: wide-int, rtl-2

2014-05-23 Thread Eric Botcazou
timed out. FAIL: gnat.dg/outer_agg_bitfield_constructor.adb (test for excess errors) WARNING: gnat.dg/outer_agg_bitfield_constructor.adb compilation failed to produce executable on big-endian platforms. Tested on x86_64-suse-linux and SPARC/Solaris, applied on the mainline. 2014-05-23 Eric

Re: PR 61222: noncanonical constant in simplify_shift_const_1

2014-05-23 Thread Eric Botcazou
/pr61222-2.c: Likewise. OK, thanks (although the ChangeLog could be a little more descriptive). -- Eric Botcazou

[RFC] optimize x - y cmp 0 with undefined overflow

2014-05-26 Thread Eric Botcazou
the original Ada testcase, the C equivalent, a testcase for the folding and another one for the -Wstrict-overflow warning. Tested on x86_64-suse-linux with no regressions. 2014-05-26 Eric Botcazou * fold-const.c (fold_comparison): Clean up and simplify X +- C1 CMP C2 to X CMP

Re: [RFC] optimize x - y cmp 0 with undefined overflow

2014-05-27 Thread Eric Botcazou
the ranges, which is far easier and sufficient here. If you think that the way to go is to handle symbolic ranges for PLUS_EXPR and MINUS_EXPR instead, fine with me, I can try. -- Eric Botcazou

Re: [RFC] optimize x - y cmp 0 with undefined overflow

2014-05-27 Thread Eric Botcazou
, INF] for y and you want to evaluate the range of y - x, so you really don't want to use the range of x... -- Eric Botcazou

Re: [RFC] optimize x - y cmp 0 with undefined overflow

2014-05-27 Thread Eric Botcazou
> I'm asking to merge them (move them to fold_comparison). Done (in the end the patch removes more lines than it adds :-). Tested on x86_64-suse-linux with no regressions. 2014-05-27 Eric Botcazou * fold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2

Fix old bug in div_and_round_double

2014-05-27 Thread Eric Botcazou
_64-suse-linux (of course this probably doesn't mean anything on the mainline, but it was also test with 4.7 and 4.9 compilers) and applied on the mainline as obvious. 2014-05-27 Eric Botcazou * double-int.c (div_and_round_double) : Use the proper predicate to detect a

Robustify gnat.dg/aliasing1.adb

2014-05-27 Thread Eric Botcazou
Almost 4 years ago I installed the following patch: 2010-11-28 Eric Botcazou * gnat.dg/aliasing2.adb (dg-final): Robustify pattern matching. * gnat.dg/pack9.adb (dg-final): Likewise. and somehow missed gnat.dg/aliasing1.adb which needs the same treatment. Tested on x86_64

Re: Fix old bug in div_and_round_double

2014-05-28 Thread Eric Botcazou
> I suppose you also install on branches? No plan to do so since this isn't a regression, unless you insist. :-) -- Eric Botcazou

Re: Fix old bug in div_and_round_double

2014-05-28 Thread Eric Botcazou
> Well, a wrong-code bug plus a very obvious fix certainly qualifies. Fine with me, onto which branch(es) do you want me to put it? -- Eric Botcazou

Re: [DOC PATCH] Rewrite docs for inline asm

2014-05-29 Thread Eric Botcazou
> Yes. We already know that this is better than the current docs. > Let's check it in. As far as I can see you did it, but didn't add a ChangeLog entry (so David isn't properly credited with the rewrite)? -- Eric Botcazou

Re: [DOC PATCH] Rewrite docs for inline asm

2014-05-29 Thread Eric Botcazou
> Fixed. Thanks! -- Eric Botcazou

Re: [RFC] optimize x - y cmp 0 with undefined overflow

2014-05-30 Thread Eric Botcazou
to check it does so with yours. Tested on x86_64-suse-linux with no regressions. 2014-05-30 Eric Botcazou * tree-vrp.c (get_single_symbol): New function. (build_symbolic_expr): Likewise. (symbolic_range_based_on_p): New predicate. (extract_range_from_binary_expr

Re: [RFC] Move ehcleanup pass to before early SRA

2014-01-15 Thread Eric Botcazou
> p.adb.024t.esra > > p.adb.025t.fre1 > > p.adb.026t.copyprop1 > > p.adb.027t.mergephi1 > > p.adb.028t.cddce1 > > p.adb.029t.eipa_sra > > p.adb.030t.tailr1 > > p.adb.031t.switchconv > > p.adb.032t.ehcleanup1 > > p.adb.033t.profile_estimate > > p.adb.034t.local-pure-const1 > > p.adb.035t.fnsplit > > p.adb.036t.release_ssa > > p.adb.037t.inline_param2 > > p.adb.054t.copyrename2 -- Eric Botcazou

Re: [C PATCH] Disallow subtracting pointers to empty structs (PR c/58346)

2014-01-16 Thread Eric Botcazou
E (t) > + && integer_zerop (TYPE_SIZE (t))); > +} That's AGGREGATE_TYPE_P (and the comment seems to be out-of-sync). -- Eric Botcazou

Re: [RFA] [PATCH][PR tree-optimization/59749] Fix recently introduced ree bug

2014-01-16 Thread Eric Botcazou
/svn/gcc/gcc/ree.c:1064 0x146d149 execute /home/eric/svn/gcc/gcc/ree.c:1103 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. make[5]: *** [_negdi2.o] Error 1 -- Eric Botcazou

Re: [RFA] [PATCH][PR tree-optimization/59749] Fix recently introduced ree bug

2014-01-17 Thread Eric Botcazou
> Bootstrapped & regression tested on x86_64-unknown-linux. Also > bootstrapped with --enable-checking=rtl. Note that you can do only one bootstrap with --enable-checking=yes,rtl. > Installed on the trunk. As far as I can see, no, it was not installed. -- Eric Botcazou

Re: [PATCH] Fix crossing jumps in functions with forced_labels (PR rtl-optimization/57763)

2014-01-19 Thread Eric Botcazou
> 2014-01-18 Jakub Jelinek > > PR rtl-optimization/57763 > * bb-reorder.c (fix_crossing_unconditional_branches): Set JUMP_LABEL > on the new indirect jump_insn and increment LABEL_NUSES (label). OK, thanks. -- Eric Botcazou

Re: [PATCH] Don't combine across likely spilled hard reg setters (PR rtl-optimization/59477)

2014-01-20 Thread Eric Botcazou
r it makes sense I think. That being said, while Joern's machinery was IMO acceptable because relatively simple and localized, Jakub's looks more complicated and far-reaching (that's why I suggested to try to extend the existing machinery if possible) so I think that we ought to try something simpler first. -- Eric Botcazou

Re: Resolve pr44194-1.c failure by refining scan-rtl-dump-not pattern

2014-01-20 Thread Eric Botcazou
> I have made the adjustment and test it. Please check the new attachment. Thanks, applied on the mainline as obvious. -- Eric Botcazou

Re: C++ PATCH to deal with trivial but non-callable [cd]tors

2014-01-20 Thread Eric Botcazou
> 2013-10-31 Eric Botcazou > > c-family/ > * c-ada-spec.h (cpp_operation): Add IS_TRIVIAL. > (dump_ada_specs): Adjust prototype of second callback. It turns out that adjusting (constifying) the prototype of the second callback was a gratuitous change and future en

[Ada] Minor code reorganization

2014-01-20 Thread Eric Botcazou
This revamps the E_Component case of gnat_to_gnu_entity and improves comments. No functional changes, tested on x86_64-suse-linux, applied on the mainline. 2014-01-20 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : Remove obsolete code for type_annotate_only mode

[Ada] Fix alignment of array aggregates

2014-01-20 Thread Eric Botcazou
This fixes a long-standing issue in the Ada compiler, whereby the alignment of aggregates whose type is an over-aligned array is lost in translation. Tested on x86_64-suse-linux, applied on the mainline. 2014-01-20 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity

[Ada] Fix latent issues with thin pointers

2014-01-20 Thread Eric Botcazou
This fixes latent issues with thin pointers, which get exposed with -gnatd6. Tested on x86_64-suse-linux, applied on the mainline. 2014-01-20 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : Robustify tests for aliased objects with an unconstrained nominal subtype

Re: RFA: Fix assembler data directives emitted for variable length structures

2014-01-20 Thread Eric Botcazou
4.8.x development. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2014-01-20 Eric Botcazou * output.h (output_constant): Delete. * varasm.c (output_constant): Make private. -- Eric BotcazouIndex: va

Re: [PATCH] Don't combine across likely spilled hard reg setters (PR rtl-optimization/59477)

2014-01-20 Thread Eric Botcazou
Other architectures aren't as sensitive as x86 in this area, and the existing counter-measures in combine.c are usually sufficient for them. -- Eric Botcazou

Re: Resolve pr44194-1.c failure by refining scan-rtl-dump-not pattern

2014-01-21 Thread Eric Botcazou
t didn't fail with the space on x86 (hence false negative) because of the TI marker added by some RTL pass. Feel free to adjust back. -- Eric Botcazou

Re: Resolve pr44194-1.c failure by refining scan-rtl-dump-not pattern

2014-01-22 Thread Eric Botcazou
> Ah, OK. In that case, how about this? Tested on mips64-linux-gnu. Fine with me, thanks! -- Eric Botcazou

Re: Disable accumulate-outgoing-args for Generic and Buldozers

2014-01-23 Thread Eric Botcazou
Very confusing... -- Eric Botcazou

Re: [PATCH] Improve dumping CALL_INSN_FUNCTION_USAGE

2014-01-24 Thread Eric Botcazou
Jelinek > > * print-rtl.c (in_call_function_usage): New var. > (print_rtx): When in CALL_INSN_FUNCTION_USAGE, always print > EXPR_LIST mode as mode and not as reg note name. OK, thanks for fixing this. -- Eric Botcazou

[Ada] Pass in Out param with Default_Value aspect

2014-01-25 Thread Eric Botcazou
In most cases, out parameters are not passed in, but there have always been exceptions, notably access types. Ada 2012 adds a new exception for parameters of a type with a Default_Value. This patch ensures that such parameters are copied in. The following program, compiled with -gnata 1. pro

[Ada] Fix error with pragma Linker_Section

2014-01-25 Thread Eric Botcazou
The compiler may refuse to apply pragma Linker_Section with the same section name to two different variables, if one is considered constant by the compiler but not declared as such. Fixed thusly. Tested on x86_64-suse-linux, applied on the mainline. 2014-01-25 Tristan Gingold * gc

[Ada] Fix slight discrepancy between fat and thin pointers

2014-01-25 Thread Eric Botcazou
Fat and thin pointers are the 2 representations used in GNAT for access-to- unconstrained-array types, i.e. pointers to arrays with bounds, and using the latter instead of the former results in slightly obfuscated code. Tested on x86_64-suse-linux, applied on the mainline. 2014-01-25 Eric

Re: Do not produce empty try-finally statements

2014-01-29 Thread Eric Botcazou
> That sounds reasonable, yeah. But that will badly regress the stack usage, won't it? If so, that's a blocker for Ada where we have big temporaries. -- Eric Botcazou

Re: Do not produce empty try-finally statements

2014-01-29 Thread Eric Botcazou
> But that will badly regress the stack usage, won't it? If so, that's a > blocker for Ada where we have big temporaries. For example this will presumably cause gnat.dg/stack_usage1.adb to fail. -- Eric Botcazou

Re: [PATCH] Fix up __builtin_setjmp_receiver handling (PR c++/60082)

2014-02-08 Thread Eric Botcazou
et neither for __builtin_setjmp/__buitin_longjmp nor for SJLJ EH schemes. -- Eric Botcazou

Re: [RFA][rtl-optimization/52714] Do not allow combine to create invalid RTL

2014-02-08 Thread Eric Botcazou
needs to ensure that I2 and I3 are both INSNs. That seems to be an unnecessary pessimization given that the combination looks perfectly valid if you swap the insns. Can't we enhance the code just below which chooses the order of the insns after splitting? -- Eric Botcazou

Re: [testsuite, committed] Fix effective target for ivdep tests

2014-02-10 Thread Eric Botcazou
x86-64/Linux and SPARC/Solaris, applied on the mainline as obvious. 2014-02-10 Eric Botcazou * g++.dg/vect/pr33426-ivdep-3.cc: Require vect_int_mult as well. * g++.dg/vect/pr33426-ivdep-4.cc: Likewise. -- Eric BotcazouIndex: g++.dg/vect/pr3342

Minor fixes in ipa-devirt.c

2014-02-10 Thread Eric Botcazou
Eric Botcazou * ipa-devirt.c (get_polymorphic_call_info_from_invariant): Return proper constants and fix formatting. (possible_polymorphic_call_targets): Fix formatting. -- Eric BotcazouIndex: ipa-devirt.c

Re: [RFA][rtl-optimization/52714] Do not allow combine to create invalid RTL

2014-02-11 Thread Eric Botcazou
o > contain the simple sets that we have to ensure that they're INSNs, not > CALL_INSNs or JUMP_INSNs. I disagree, nullifying JUMP_INSNs by changing them to (set (pc) (pc)) is a standard method in the combiner. -- Eric Botcazou

[patch] Fix wrong code with VCE to bit-field type at -O

2014-02-11 Thread Eric Botcazou
ll 32-bit read, which thus reads 1 additional byte and doesn't mask it afterwards, thus resulting in a wrong value for the scalarized bit-field. Proposed fix attached, tested on x86-64/Linux, OK for the mainline? 2014-02-11 Eric Botcazou * expr.c (REDUCE_BIT_FIELD): Extend th

Re: [patch] Fix wrong code with VCE to bit-field type at -O

2014-02-11 Thread Eric Botcazou
t's debatable IMO if the 4-byte type has 3-byte precision, but I don't have a strong opinion so I can try to fix it in SRA, although it will be weird to do low-level fiddling because of precision and size at the Tree level. -- Eric Botcazou

Fix PR rtl-optimization/60116

2014-02-12 Thread Eric Botcazou
d 4.8 branch. 2014-02-12 Eric Botcazou PR rtl-optimization/60116 * combine.c (try_combine): Also remove dangling REG_DEAD notes on the other_insn once the combination has been validated. 2014-02-12 Eric Botcazou * gcc.c-torture/execute/20140212-1.c: New

Re: Fix PR rtl-optimization/60116

2014-02-12 Thread Eric Botcazou
> Thanks, just wonder if reg_set_p is the right predicate for the REG_DEAD > notes, don't we want to check if the register in REG_DEAD note isn't used > in undobuf.other_insn rather than set? You're right, the correct predicate is reg_referenced_p, I'll adjust. -- Eric Botcazou

Re: [patch] Fix wrong code with VCE to bit-field type at -O

2014-02-12 Thread Eric Botcazou
24-bit precision integer type. > So there may be a testcase where that happens and we'd even ICE? Probably not in Ada, we only generate a VCE when there is an aggregate type. -- Eric Botcazou

Re: [patch] Fix wrong code with VCE to bit-field type at -O

2014-02-12 Thread Eric Botcazou
that we went that way before (building a COMPONENT_REF for bit-fields instead of fully lowering the access) so doing it again would be a step backwards. Likewise if we refuses to scalarize. So IMO it's either low- level fiddling in SRA or in the expander (my preference too). -- Eric Botcazou

Re: [PATCH] Fix compress_float_constants related ICE (PR target/43546)

2014-02-13 Thread Eric Botcazou
> 2014-02-12 Jakub Jelinek > > PR target/43546 > * expr.c (compress_float_constant): If x is a hard register, > extend into a pseudo and then move to x. > > * gcc.target/i386/pr43546.c: New test. OK, thanks. -- Eric Botcazou

Re: [patch] Fix wrong code with VCE to bit-field type at -O

2014-02-13 Thread Eric Botcazou
eptually > wrong to me. I agree that we need not clear, but we need to prevent the expansion from reading more bits than what is contained in the source type. And this is sufficient to fix the regression. > Not scalarizing a field to a DECL_BIT_FIELD FIELD_DECLs type looks like > the best fix to me. That seems like a big hammer though. -- Eric Botcazou

Fix PR libffi/60073

2014-02-13 Thread Eric Botcazou
This adds proper variadic support to the SPARC port of libffi, thus fixing a regression in the testsuite in 64-bit mode, and fixes a small inaccuracy in the documentation. Tested on SPARC/Solaris and SPARC64/Solaris, applied on the mainline. 2014-02-13 Eric Botcazou PR libffi

Fix PR libffi/60073

2014-02-13 Thread Eric Botcazou
This adds proper variadic support to the SPARC port of libffi, thus fixing a regression in the testsuite in 64-bit mode, and fixes a small inaccuracy in the documentation. Tested on SPARC/Solaris and SPARC64/Solaris, applied on the mainline. 2014-02-13 Eric Botcazou PR libffi

Re: Fix PR libffi/60073

2014-02-14 Thread Eric Botcazou
> I worked around this problem on powerpc by defining new enum ffi_abi > values so that you can recognize an old app. I see, thanks for the heads up and the hint! -- Eric Botcazou

Re: [RFA][rtl-optimization/52714] Do not allow combine to create invalid RTL

2014-02-17 Thread Eric Botcazou
de defeat in this particular case, I don't think we should use the NONJUMP_INSN_P big hammer because we want to eliminate branches if possible. So I'd just add the minimal test to the two existing conditions so as to prevent the invalid RTL from being created, e.g. && (!JUMP_P (i3) || SET_DEST (set[01]) == pc_rtx) -- Eric Botcazou

[patch] Fix assertion failure in compute_complex_ancestor_jump_func

2014-02-17 Thread Eric Botcazou
is -1. It seems to me that this assertion is overzealous: in many other places, the code explicitly tests for the non-negativity of index and returns otherwise. Hence the proposed fix, tested on x86_64-suse-linux, OK for all branches? 2014-02-17 Eric Botcazou * ipa-pro

Re: [patch] Fix wrong code with VCE to bit-field type at -O

2014-02-17 Thread Eric Botcazou
> There is nothing obvious I think, i.e. that's debatable. I agree that a VCE > from a 32-bit object to a 32-bit integer with 24-bit precision should not > clear the upper 8 bits (so the REDUCE_BIT_FIELD part of my patch is wrong). > But here we have a VCE from a 24-bit object to a 32-bit integer

Re: Fix PR libffi/60073

2014-02-17 Thread Eric Botcazou
mainline. 2014-02-17 Eric Botcazou PR libffi/60073 * src/sparc/v8.S: Assemble only if !SPARC64. * src/sparc/v9.S: Remove obsolete comment. * src/sparc/ffitarget.h (enum ffi_abi): Add FFI_COMPAT_V9. (V8_ABI_P): New macro. (V9_ABI_P):

Fix PR tree-optimization/60174

2014-02-18 Thread Eric Botcazou
linux, pre-approved by Jakub and applied on the mainline. 2014-02-18 Eric Botcazou PR tree-optimization/60174 * tree-ssa-reassoc.c (init_range_entry): Do not look into the defining statement of an SSA_NAME that occurs in an abnormal PHI node. -- Eric Botcazou

Re: [patch] Fix wrong code with VCE to bit-field type at -O

2014-02-19 Thread Eric Botcazou
> Woudln't it be better to do this in the series of "conversions", that is > inside the preceeding if-statement? (the integral type case using > convert_modes looks weird enough, so adding this kind-of "less" > weird one there looks sensible) Yes, the integral type case is very strange: it was in

[Ada] bypass more VCEs in build_simple_component_ref

2014-02-23 Thread Eric Botcazou
This is not really a regression but, in the light of the recent discussion about VIEW_CONVERT_EXPRs, I think this is worth having in 4.9: we can fold more VIEW_CONVERT_EXPRs internally generated in gigi. Tested on x86_64-suse-linux, applied on the mainline. 2014-02-23 Eric Botcazou

[RFC] Do not consider volatile asms as optimization barriers #1

2014-03-01 Thread Eric Botcazou
tensa) don't define it and therefore need to be adjusted. Tested on x86_64-suse-linux and by building cc1 and compiling a relevant testcase for the 21 aforementioned architectures. 2014-03-01 Eric Botcazou * doc/md.texi (blockage): Do not allow volatile asms. * rtl.def (

Re: [RFC] Do not consider volatile asms as optimization barriers #1

2014-03-02 Thread Eric Botcazou
ration from being considered equivalent to any other > operation (even if it's structurally identical and has the same inputs) > > but nothing beyond that. Maybe UNSPEC_VOLATILE is a misnomer then and we should allow volatile UNSPECs along the above lines. -- Eric Botcazou

Re: [RFC] Do not consider volatile asms as optimization barriers #1

2014-03-03 Thread Eric Botcazou
ay be valid is because we cannot explicitely > enumerate those. But we should fix that instead (for example with > the special register idea or by adding a middle-end wide "special" > "blockage" that you can use/def/clobber). For the time being this special blockage is UNSPEC_VOLATILE for RTL. -- Eric Botcazou

Re: [RFC] Do not consider volatile asms as optimization barriers #1

2014-03-03 Thread Eric Botcazou
27;t spend much time on the code generated in a loop containing an UNSPEC_VOLATILE. If an instruction or a builtin is supposed to be performance-sensitive, then don't use an UNSPEC_VOLATILE by all means and properly model it instead! -- Eric Botcazou

Re: [RFC] Do not consider volatile asms as optimization barriers #1

2014-03-03 Thread Eric Botcazou
s again a bit vague in terms of > saying what's right and what's wrong. "not spending too much time" is a polite way to say I don't really care. :-) If you do, feel free to post a formal definition, a implementation plan and maybe a patch at some point. -- Eric Botcazou

Re: [patch 1/4] change specific int128 -> generic intN

2014-07-10 Thread Eric Botcazou
e choose PSImode instead of SImode, if the type and the mode have the same precision (20) and size (24)? -- Eric Botcazou

Re: [PATCH] Generate more efficient memory barriers for LEON3

2014-07-10 Thread Eric Botcazou
ain? > The provided patch changes the previously mentioned memory barriers for > TARGET_LEON3. I think that only the membar_storeload_leon3 pattern is necessary. Couple of more nits: the new pattern is not "multi", it's "store" and you need to add: && !TARGET_LEON3 to the original membar_storeload since TARGET_LEON3 is also TARGET_V8. -- Eric Botcazou

Fix PR middle-end/53590 again

2014-07-10 Thread Eric Botcazou
). 2014-07-10 Eric Botcazou PR middle-end/53590 * function.c (allocate_struct_function): Revert r188667 change. 2014-07-10 Eric Botcazou * gnat.dg/opt39.adb: New test. -- Eric BotcazouIndex: function.c

[patch] Hide the caret for -Wstack-usage

2014-07-10 Thread Eric Botcazou
es? 2014-07-10 Eric Botcazou * toplev.c (output_stack_usage): Temporarily hide the caret. -- Eric BotcazouIndex: toplev.c === --- toplev.c (revision 212420) +++ toplev.c (working copy) @@ -1052,6 +1052,10 @@ output_s

Re: [patch 1/4] change specific int128 -> generic intN

2014-07-11 Thread Eric Botcazou
precision? That's the crux of the matter. -- Eric Botcazou

Re: [PATCH] Generate more efficient memory barriers for LEON3

2014-07-11 Thread Eric Botcazou
which means that membar_storeload will match so the full barrier never will. -- Eric Botcazou

Re: [patch 1/4] change specific int128 -> generic intN

2014-07-12 Thread Eric Botcazou
folks have already changed them in a few places but that's probably not sufficient. -- Eric Botcazou

Re: [PATCH] Generate more efficient memory barriers for LEON3

2014-07-12 Thread Eric Botcazou
ry model of the LEON3 is Strong Consistency and not TSO? In which case, the only thing to change is the default setting for LEON3 in sparc_option_override. -- Eric Botcazou

Re: [patch] Hide the caret for -Wstack-usage

2014-07-12 Thread Eric Botcazou
point to the declaration of the > function? After all, this is what -fstack-usage seems to do. Good idea, let's use a consistent location, revised patch attached, thanks. 2014-07-12 Eric Botcazou * toplev.c (output_stack_usage): Adjust the location and temporarily hi

Re: [PATCH] Generate more efficient memory barriers for LEON3

2014-07-19 Thread Eric Botcazou
iated :) OK, that's not Strong Consistency so I'm going to apply your latest patch. -- Eric Botcazou

Re: [PATCH-v3] Generate more efficient memory barriers for LEON3

2014-07-19 Thread Eric Botcazou
3): New insn. (*membar_storeload): Disable for LEON3. -- Eric Botcazou

Re: [DOC Patch] gnat doc fix

2014-07-19 Thread Eric Botcazou
; is not supported" sentence. As discussed privately, it's indeed not 100% compatible with the C compiler, but the syntax is essentially supported, which is good enough. -- Eric Botcazou

Re: [DOC Patch] gnat updates for makeinfo 5.2 - updated

2014-07-19 Thread Eric Botcazou
> I changed more than I should have. A slightly smaller patch. Applied, thanks. -- Eric Botcazou

Re: [patch] Hide the caret for -Wstack-usage

2014-07-19 Thread Eric Botcazou
> I personally don't like much this pattern of saving a variable, doing > something and then restoring it. Right, it's kludgy, so I have only changed the location in the end. Tested on x86_64-suse-linux, applied on all active branches as obvious. 2014-07-19 Eric Botcazou

Fix ICE on unaligned assignment of return value

2014-07-20 Thread Eric Botcazou
and 4.9 branch as obvious. 2014-07-20 Eric Botcazou * expr.c (store_field): Handle VOIDmode for calls that return values in multiple locations. 2014-07-20 Eric Botcazou * gnat.dg/pack20.ad[sb]: New test. * gnat.dg/pack20_pkg.ads: New helper. -- Eric

Fix RTL load motion bug with -fnon-call-exceptions

2014-07-20 Thread Eric Botcazou
code. Tested on x86-64/Linux, applied on the mainline. 2014-07-20 Eric Botcazou * cse.c (exp_equiv_p) : For GCSE, return 0 for expressions with different trapping status if -fnon-call-exceptions is enabled. -- Eric BotcazouIndex:

Fix PR middle-end/61734

2014-07-28 Thread Eric Botcazou
synthetize ABS_EXPR. The transformation had been added as a preliminary work for a specific purpose but was made obsolete in the meantime, so the patch simply disables it with a ??? comment. Tested on x86_64-suse-linux, applied on the mainline. 2014-07-28 Eric Botcazou PR middle-end

[Ada] Fix typo in gcc-interface/Make-lang.in

2014-03-10 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2014-03-10 Eric Botcazou * gcc-interface/Make-lang.in (ADA_DEPFILES): Fix typo. -- Eric BotcazouIndex: gcc-interface/Make-lang.in === --- gcc-interface/Make

Re: [RFC] Do not consider volatile asms as optimization barriers #1

2014-03-12 Thread Eric Botcazou
> Thanks, and to Bernd for the review. I went ahead and applied it to trunk. Thanks. We need something for the 4.8 branch as well, probably the builtins.c hunk and the reversion of the cse.c/cselib.c/dse.c changes to the 4.7 state. -- Eric Botcazou

Re: [PATCH] BZ60501: Add addptr optab

2014-03-13 Thread Eric Botcazou
sn is not documented as being restricted to addresses: /* Emit insn x = y + z. Return NULL if we failed to do it. Otherwise, return the insn. We don't use gen_add3_insn as it might clobber CC. */ static rtx emit_add3_insn (rtx x, rtx y, rtx z) -- Eric Botcazou

[Ada] Fix PR ada/51483

2014-03-13 Thread Eric Botcazou
previously passed as the front-end size and the back-end size was second-guessed by the front-end). No functional changes on already working platforms. Tested on x86_64-suse-linux, applied on the mainline and, for a simplified version, on the 4.8 and 4.7 branches. 2014-03-13 Eric Botcazo

Re: [PATCH] BZ60501: Add addptr optab

2014-03-14 Thread Eric Botcazou
s. (I hope LRA is actually > behaving that way). Hoping isn't sufficient IMO here, you need to rename/rework emit_add3_insn and possibly stop the compiler if the value it is invoked on is not an address. -- Eric Botcazou

Re: [PATCH] BZ60501: Add addptr optab

2014-03-15 Thread Eric Botcazou
much work, just copy (part of) the head comment of lra_emit_add to that of emit_add3_insn and cross your fingers (yes, the latter action adds something over just hoping :-) -- Eric Botcazou

[SPARC] Follow-up to latest LEON3 workaround

2014-03-15 Thread Eric Botcazou
lay so the attached patch prevents integer loads from being put in delay slots with -mfix-ut699. Tested on SPARC/Solaris, applied on the mainline and 4.8 branch. 2014-03-15 Eric Botcazou * config/sparc/sparc-protos.h (tls_call_delay): Delete. (eligible_for_call_delay): New

Re: [PATCH] SPARC: Clarify -mapp-regs option

2014-03-15 Thread Eric Botcazou
e global register 1 the global registers 2 through4 > +are used as volatile registers (may be destroyed across a function > call). I personally don't like the "volatile" wording much, please reuse the wording of the -fcall-used-REG option. -- Eric Botcazou

Re: [PATCH] SPARC: Mention global register 7 usage for TLS

2014-03-15 Thread Eric Botcazou
ink that the comment is fine as-is. -- Eric Botcazou

Re: [SPARC] Follow-up to latest LEON3 workaround

2014-03-18 Thread Eric Botcazou
> This is a follow-up to > http://gcc.gnu.org/ml/gcc-patches/2013-07/msg00959.html > which implemented the workaround for the data cache nullify issues on LEON3. Another fixlet. Tested on SPARC/Solaris, applied on the mainline and 4.8 branch. 2014-03-18 Eric Botcazou

Remove left-overs from RTX_UNCHANGING_P era

2014-03-20 Thread Eric Botcazou
ples are all dead code since TYPE_READONLY isn't used anymore, verified on the compiler proper at -O2 that there is not a single byte changed in the generated code). Tested on x86_64-suse-linux, applied on the mainline as obvious. 2014-03-20 Eric Botcazou * calls.c (store

[SPARC] Implement workaround for new FPU erratum on LEON3

2014-03-20 Thread Eric Botcazou
This implements a workaround for the recently-disclosed FPU erratum on LEON3. Tested on SPARC/Solaris, applied on the mainline and 4.8 branch. 2014-03-20 Eric Botcazou * config/sparc/sparc.c (sparc_do_work_around_errata): Implement work around for store forwarding issue in

Re: Remove left-overs from RTX_UNCHANGING_P era

2014-03-20 Thread Eric Botcazou
> 2014-03-20 Eric Botcazou > > * calls.c (store_one_arg): Remove incorrect const qualification on the > type of the temporary. > * cfgexpand.c (expand_return): Likewise. > * expr.c (expand_constructor): Likewise. > (expand_expr_real_1): Likew

Re: Remove left-overs from RTX_UNCHANGING_P era

2014-03-20 Thread Eric Botcazou
> 2014-03-20 Eric Botcazou > > * calls.c (store_one_arg): Remove incorrect const qualification on the > type of the temporary. > * cfgexpand.c (expand_return): Likewise. > * expr.c (expand_constructor): Likewise. > (expand_expr_real_1): Likew

Re: [PATCH] dwarf2out: Represent bound_info with normal constant values if possible.

2014-03-21 Thread Eric Botcazou
BIT HOST_WIDE_INTs too these days. Right, pure 32-bit hosted compilers are an endangered species and GNAT is probably not fully functional for these architectures. How did you run into the problem? Can't you conduct some minimal testing on 64-bit platforms by using 128-bit integers (not in Ada unfortunately)? -- Eric Botcazou

Fix PR rtl-optimization/60601

2014-03-23 Thread Eric Botcazou
this latter flag is never set during the bbpart pass but only during bbro. The gcc.c hunk silences a fatal -Wmaybe-uninitialized warning on the mainline. Profiledbootstrapped/regtested on x86_64-suse-linux, applied on all active branches, as obvious for the gcc.c hunk. 2014-03-23 Eric

Fix PR rtl-optimization/60452

2014-03-23 Thread Eric Botcazou
never triggers during a bootstrap) so it won't pessimize anything. This might be different if the ??? comment is addressed later but, again, I don't think that we should care at this point. Tested on x86_64-suse-linux, any objections? 2014-03-23 Eric Botcazou PR rtl-opt

[ARM] Fix PR target/60504

2014-03-25 Thread Eric Botcazou
so we would like to have it for 4.9.x. 2014-04-25 Douglas B Rupp PR target/60504 * config/arm/arm.h (ASM_PREFERRED_EH_DATA_FORMAT): Expose from ARM_TARGET2_DWARF_FORMAT. 2014-04-25 Eric Botcazou * gnat.dg/test_raise_from_pure.adb: UnXFAIL for ARM. --

Re: Please revert the patches in bug #54040 and #59346 and special case x32

2014-03-25 Thread Eric Botcazou
itely too much in my opinion. -- Eric Botcazou

Re: RFA: Fix PR rtl-optimization/60651

2014-03-26 Thread Eric Botcazou
s emitted before the insns that need it but, with the change, if an insn right after a NOTE_BASIC_BLOCK note needs it, if will be emitted either before it (if insn_ptr is the insn) or after it (if insn_ptr is the NOTE_BASIC_BLOCK note). -- Eric Botcazou

<    27   28   29   30   31   32   33   34   35   36   >