[Aarch64] Enable descriptors for nested functions in Ada

2016-11-13 Thread Eric Botcazou
Similarly to x86, PowerPC and SPARC, this enables the use of custom run-time descriptors in Ada, thus eliminating the need for trampolines and executable stack in presence of pointers to nested functions. Tested on Aarch64/Linux, OK for the mainline? 2016-11-13 Eric Botcazou PR

[MIPS] Enable descriptors for nested functions in Ada

2016-11-13 Thread Eric Botcazou
ed on the architecture at some point. OK for the mainline? 2016-11-13 Eric Botcazou PR ada/67205 * config/mips/mips.c (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Define. -- Eric BotcazouIndex: config/mips/m

[ARM] Enable descriptors for nested functions in Ada

2016-11-13 Thread Eric Botcazou
alignment to 64 bits seems undesirable in Thumb mode. Tested on ARM/Linux, OK for the mainline? 2016-11-13 Eric Botcazou PR ada/67205 * config/arm/arm.c (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Define. (arm_function_ok_for_sibcall): Return false for an indirect call by

[patch] Disable LTO note about strict aliasing

2016-11-13 Thread Eric Botcazou
c (A : Arr) is begin null; end; ^ q.adb:7:3: note: code may be misoptimized unless -fno-strict-aliasing is used and it's a bit surprising that -fno-strict-aliasing cannot silence it. Tested on x86_64-suse-linux, OK for the mainline and 6 branch? 2016-11-13 Eric Botcazou

Re: [MIPS] Enable descriptors for nested functions in Ada

2016-11-15 Thread Eric Botcazou
ined in defaults.h. > If so then I don't see a problem with this. We will have to account for > that when GCC allows 2-byte aligned microMIPS functions. OK, thanks. -- Eric Botcazou

Re: [patch] Disable LTO note about strict aliasing

2016-11-15 Thread Eric Botcazou
trans0.s # -fno-strict-aliasing -fverbose-asm -fltrans t.ltrans0.o > That said, -Wno-lto-type-mismatch can be used to disable the warning as > well. Right, but the wording ("code may be misoptimized") is a bit scaring so I'd rather avoid it when possible. -- Eric Botcazou

Re: Move misplaced assignment in num_sign_bit_copies1

2016-11-15 Thread Eric Botcazou
ot; would be less confusing. -- Eric Botcazou

Re: [patch] Disable LTO note about strict aliasing

2016-11-15 Thread Eric Botcazou
n effect? Do you mean with the "optimize" attribute or somesuch? If so, I suppose not, if the attributes are properly saved and restored; otherwise, I don't really understand the question because I don't think that LTO saves the entire option state on a per-function basis. -- Eric Botcazou

Re: Add a load_extend_op wrapper

2016-11-15 Thread Eric Botcazou
> 2016-11-15 Richard Sandiford > Alan Hayward > David Sherwood > > * rtl.h (load_extend_op): Declare. > * rtlanal.c (load_extend_op): New function. I'd make it an inline function. -- Eric Botcazou

Re: Add a mem_alias_size helper class

2016-11-15 Thread Eric Botcazou
to be an example of counter-productive C++ization: the class doesn't provide any useful abstraction and the code gets obfuscated by all the wrapper methods. Moreover it's mixed with real changes so very hard to review. Can't you just fix what needs to be fixed first? -- Eric Botcazou

Re: Optimise CONCAT handling in emit_group_load

2016-11-15 Thread Eric Botcazou
e does span the whole operand. OK, thanks. -- Eric Botcazou

Re: Add more subreg offset helpers

2016-11-16 Thread Eric Botcazou
(subreg_size_highpart_offset): New function. > (subreg_highpart_offset): Use it. > * rtlanal.c (subreg_size_offset_from_lsb): New function. > (subreg_offset_from_lsb): Likewise. Please make the 3 wrappers inline functions. -- Eric Botcazou

Re: Rework subreg_get_info

2016-11-16 Thread Eric Botcazou
otherwise we don't know how to verify the constraint. > + These conditions may be relaxed but subreg_regno_offset would > + need to be redesigned. */ > + gcc_assert ((xsize % num_blocks) == 0); > + unsigned int bytes_per_block = xsize / num_blocks; > + > + /* Get the number of the first block that contains the subreg and the > byte + offset of the subreg from the start of that block. */ > + unsigned int block_number = offset / bytes_per_block; > + unsigned int subblock_offset = offset % bytes_per_block; > >if (!rknown) > { > - info->representable_p = (!(y_offset_adj % (mode_multiple / > nregs_multiple))); + /* Only the lowpart of each block is > representable. */ > + info->representable_p > + = (subblock_offset > +== subreg_size_lowpart_offset (ysize, bytes_per_block)); >rknown = true; > } > - info->offset = (y_offset / (mode_multiple / nregs_multiple)) * > nregs_ymode; + This part is OK. > + if (WORDS_BIG_ENDIAN != REG_WORDS_BIG_ENDIAN) > +info->offset = (num_blocks - block_number - 1) * nregs_ymode; > + else > +info->offset = block_number * nregs_ymode; >info->nregs = nregs_ymode; > } Why was the test on the mode size dropped? -- Eric Botcazou

Re: Add more subreg offset helpers

2016-11-16 Thread Eric Botcazou
tion that the new one is the inverse of the old one in the comment. -- Eric Botcazou

Re: Rework subreg_get_info

2016-11-16 Thread Eric Botcazou
ss" is always word endianness for these targets. Since you tested on c6x-elf, that's OK, but I think that a comment before the if (WORDS_BIG_ENDIAN != REG_WORDS_BIG_ENDIAN) test would be in order, stating the implicit assumption made at this point. -- Eric Botcazou

Fix PR rtl-optimization/78355

2016-11-17 Thread Eric Botcazou
missing guard on the alignment before invoking SLOW_UNALIGNED_ACCESS (as in every other use of SLOW_UNALIGNED_ACCESS in the compiler). Tested on arm-eabi, approved by Vladimir, applied on the mainline. 2016-11-17 Pip Cet Eric Botcazou PR rtl-optimization/78355 * doc

Re: Add a load_extend_op wrapper

2016-11-18 Thread Eric Botcazou
> Tested on aarch64-linux-gnu and x86_64-linux-gnu. OK to install? > > Thanks, > Richard > > > gcc/ > * rtlanal.c (load_extend_op): Move to... > * rtl.h: ...here and make inline. OK, thanks. -- Eric Botcazou

Re: Add more subreg offset helpers

2016-11-22 Thread Eric Botcazou
eg_size_offset_from_lsb): Likewise. OK, thanks. -- Eric Botcazou

Re: Rework subreg_get_info

2016-11-22 Thread Eric Botcazou
iously-duplicated if block. > Rework the main handling so that it operates on independently- > addressable YMODE-sized blocks. Use subreg_size_lowpart_offset > to check lowpart offsets, without trying to find an equivalent > integer mode first. Handle WORDS_BIG_ENDIAN != REG_WORDS_BIG_ENDIAN > as a final register-endianness correction. OK, thanks. -- Eric Botcazou

[patch] Fix PR rtl-optimization/78437

2016-11-23 Thread Eric Botcazou
Hi, this is a wrong code regression at -O2 on the mainline for Alpha coming from the REE pass (Alpha is one of the 3 architectures enabling REE at -O2 but I'm probably going to enable it for 64-bit SPARC too). The problem arises when a copy is needed in combine_reaching_defs: /* If the dest

[patch] Fix PR middle-end/78429

2016-11-23 Thread Eric Botcazou
on x86_64-suse-linux, OK for the mainline and 6 branch? 2016-11-23 Eric Botcazou PR middle-end/78429 * tree.h (wi::fits_to_boolean_p): New predicate. (wi::fits_to_tree_p): Use it for boolean types. * tree.c (int_fits_type_p): Likewise. 2016-11-23 Eric Botcazou

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

2016-11-23 Thread Eric Botcazou
> Does it really do that with a (set (reg1:QI)), as opposed to a > (set (strict_low_part (subreg:QI (reg1:DI)))? That's the question (note that REE runs after register allocation). -- Eric Botcazou

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

2016-11-23 Thread Eric Botcazou
> vs. *addqi_1_slp, where QImode ADDQ insn is always emitted. > > So, the assumption in your last sentece is invalid, as far as x86 is > concerned. OK, thanks, if that's the consensus, I'll stick to version #1. -- Eric Botcazou

[SPARC] Small tweaks to 32-bit shift patterns in 64-bit mode

2016-11-23 Thread Eric Botcazou
For example, a couple of them were rejecting constant integers, leading to suboptimal code before function returns in some cases. Tested on SPARC/Solaris, applied on the mainline. 2016-11-23 Eric Botcazou * config/sparc/sparc.md (*ashrsi3_extend): Rename to

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

2016-11-23 Thread Eric Botcazou
with LOAD_EXTEND_OP of course). -- Eric Botcazou

Re: fix scheduling antideps

2015-12-11 Thread Eric Botcazou
> This patch allows a target to increase the cost of anti-deps to better > reflect the actual cost on the machine. But it can already do it via the TARGET_SCHED_ADJUST_COST hook, can't it? -- Eric Botcazou

[patch] Fix PR middle-end/68215

2015-12-11 Thread Eric Botcazou
te in the former case too; this is sufficient to fix the regression. Tested on x86-64/Linux and SPARC/Solaris, OK for the mainline? 2015-12-11 Eric Botcazou PR middle-end/68215 * tree-vect-generic.c (tree_vec_extract): Remove GSI parameter. Do not gimplify the result.

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

2015-12-11 Thread Eric Botcazou
> Presumably we know the code we're generating here is always gimple. In fact all the callers of tree_vec_extract pass the result to gimplify_build routines, so everything is gimplified if need be; it was over-gimplification. > OK for the trunk. Thanks. -- Eric Botcazou

Re: [PATCH v2] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-12 Thread Eric Botcazou
> gcc: > PR sanitizer/68418 > * c-family/c-ubsan.c (ubsan_instrument_shift): Disable > sanitization of left shifts for wrapping signed types as well. That's incorrect, it should be put into c-family/ChangeLog without prefix. -- Eric Botcazou

[SPARC] Enable wide-int support

2015-12-12 Thread Eric Botcazou
On the heels of s390, this enables wide-int support in the SPARC back-end and removes all the obsolete code conditionalized on HOST_BITS_PER_WIDE_INT == 32. Boostrapped/regtested on SPARC/Solaris, applied on the mainline. 2015-12-12 Eric Botcazou * config/sparc/sparc.h

[testsuite] Tweak gcc.dg/torture/pr68264.c for Solaris

2015-12-14 Thread Eric Botcazou
The testcase was already tweaked for Glibc but it needs to be further tweaked because of bugs in Solaris' libm. With the attached patch the test now passes on my SPARC/Solaris 10 and my x86/Solaris 10 test machines. OK for the mainline? 2015-12-14 Eric Botcazou * gcc.dg/to

[i386] Enable -mstackrealign with SSE on 32-bit Windows

2015-12-15 Thread Eric Botcazou
ld presumably not be modified. Tested on i686-pc-mingw32, OK for the mainline? 2015-12-15 Eric Botcazou * config/i386/cygming.h (STACK_REALIGN_DEFAULT): Define. 2015-12-15 Eric Botcazou * gcc.target/i386/stack-realign-win.c: New test. -- Eric BotcazouIndex: c

Re: [PATCH] Fix -fcompare-debug issue in cross-jumping (PR rtl-optimization/65980)

2015-12-15 Thread Eric Botcazou
ote_nondebug_insn instead > (which stops at CODE_LABEL) and keeps iterating if CODE_LABELs are found. next_active_insn would have done the job, modulo the BARRIER thing, but do we really need to care about BARRIER here? -- Eric Botcazou

Re: [PATCH] Fix -fcompare-debug issue in cross-jumping (PR rtl-optimization/65980)

2015-12-16 Thread Eric Botcazou
h the head comment explaining this and invoked from rtx_renumbered_equal_p. -- Eric Botcazou

Re: [PATCHES, PING*5] Enhance standard DWARF for Ada

2015-12-18 Thread Eric Botcazou
> I'm also seeing > +FAIL: gnat.dg/specs/debug1.ads scan-assembler-times DW_AT_artificial 17 > and from what I can see in gcc-testresults, I'm not alone. Minor oversight, adjusted like so: * gnat.dg/specs/debug1.ads: Bump final count to 18. -- Eric Botcazou Index: g

Re: Fix PR66206

2015-12-19 Thread Eric Botcazou
> This is a small problem found by a static analyzer, a function in > bt-load can in theory return the address of a local variable. > > Bootstrapped and tested on x86_64-linux, ok? OK, thanks. -- Eric Botcazou

Fix PR rtl-optimization/68910

2015-12-19 Thread Eric Botcazou
erns in the SPARC back-end, which serve no useful purpose but pessimize register allocation in 32-bit mode by preventing DImode logical operations from being split early. Bootstrapped/regtested on SPARC/Solaris, applied on mainline and 5 branch. 2015-12-19 Eric Botcazou PR rtl-optimizati

Re: Fix lto-symtab ICE during Ada LTO bootstrap

2015-12-20 Thread Eric Botcazou
> I finally got around comitting the DCE patch so mainline lto bootstrap works > up to this point. Thanks! > It would be great if you could take a look so we can get it finally fixed. Let me commit a couple of Ada patches first and then I'll look into it. -- Eric Botcazou

[Ada] Fix spurious warning in ASIS mode

2015-12-20 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2015-12-20 Eric Botcazou * gcc-interface/utils.c (maybe_pad_type): In type_annotate_only mode, retrieve the component type if this is an array and do not issue the warning for concurrent types. -- Eric

[Ada] Fix layout inconsistency in ASIS mode

2015-12-20 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2015-12-20 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : During layout in type_annotate_only mode, skip discriminants of derived tagged types renaming those of the parent type. In

[Ada] Fix ICE on component of complex as Out parameter

2015-12-20 Thread Eric Botcazou
This is a regression present on the mainline only, a small oversight in the overhaul of the implementation of renaming. Tested on x86_64-suse-linux, applied on the mainline. 2015-12-20 Eric Botcazou * gcc-interface/utils2.c (gnat_rewrite_reference) : New case identical to

Re: Fix lto-symtab ICE during Ada LTO bootstrap

2015-12-20 Thread Eric Botcazou
); if (add_to_worklist) worklist.safe_push (stmt); - if (bb_contains_live_stmts && !is_gimple_debug (stmt)) + if (add_to_worklist && bb_contains_live_stmts && !is_gimple_debug (stmt)) bitmap_set_bit (bb_contains_live_stmts, gimple_bb (stmt)->index); } which is not documented in the installed ChangeLog either. -- Eric Botcazou

Re: Fix lto-symtab ICE during Ada LTO bootstrap

2015-12-21 Thread Eric Botcazou
liminations++; continue; } is apparently sufficient. Testing... -- Eric Botcazou

Re: Fix lto-symtab ICE during Ada LTO bootstrap

2015-12-21 Thread Eric Botcazou
> I suppose the CFG verifier should also catch this. I wonder how this can > lead to wrong code as opossed to infinite loop? > I can imagine DCE being confused about non-control-flow stmt and conclude > the abnormal path as the path leaving the loop. I will look into the > testcase more. :

[patch] Fix PR debug/60756

2015-12-21 Thread Eric Botcazou
on of aarch64 is special here. Tested on x86-64/Linux and Aarch64/Linux, OK for the mainline? 2015-12-20 Eric Botcazou PR debug/60756 * var-tracking.c (tracked_record_parameter_p): New predicate. (track_expr_p): Invoke it. (add_stores): Likewise. --

[ARM] Fix ICE on Ada code with -mbig-endian -mhard-float

2015-12-21 Thread Eric Botcazou
that this works for TImode because, in this case, the back-end returns a PARALLEL instead of a bare REG for the return value register. Hence the attached patch, which extends this treatment to all integer modes larger than TImode. Tested on arm-none-eabi, OK for the mainline

Re: [ARM] Fix ICE on Ada code with -mbig-endian -mhard-float

2015-12-21 Thread Eric Botcazou
> the attached Ada testcase triggers an ICE with -mbig-endian -mhard-float: And here it is. -- Eric Botcazoupackage body P is procedure Split (R : Rec; A, B, C, D : out Long_Float) is begin A := R.A; B := R.B; C := R.C; D := R.D; end; end P; package P is type Rec is re

Re: [PATCH] Avoid ifcvt ICE on conditional return followed by trap (PR target/69015)

2015-12-25 Thread Eric Botcazou
gt; 2015-12-23 Jakub Jelinek > > PR target/69015 > * ifcvt.c (find_cond_trap): Give up if returnjump_p (jump). > > * gcc.dg/pr69015.c: New test. OK, thanks. -- Eric Botcazou

Re: [PATCH] ia64: don't use dynamic relocations for local symbols

2016-01-02 Thread Eric Botcazou
> Normally we'd require a bootstrap & regression test. We're more lenient > with patches to dead architectures. I can do it if Sergei or others cannot though. -- Eric Botcazou

Re: [PATCHES, PING*5] Enhance standard DWARF for Ada

2016-01-02 Thread Eric Botcazou
> On powerpc64: > > FAIL: gnat.dg/specs/debug1.ads scan-assembler-times DW_AT_artificial 18 > > $ grep -c DW_AT_artificial debug1.s > 17 Test removed. -- Eric Botcazou

[SPARC] Fix PR target/69072

2016-01-04 Thread Eric Botcazou
failure. Tested (incl. binary compatibility) on SPARC/Solaris, applied on the mainline. 2016-01-04 Eric Botcazou PR target/69072 * config/sparc/sparc.c (scan_record_type): Take into account subfields to compute the PACKED_P predicate. (function_arg_record_value

[SPARC] Fix PR target/69100

2016-01-04 Thread Eric Botcazou
This fixes another ICE on SPARC 64-bit in a corner case where __builtin_apply is compiled with -mno-fpu/-msoft-float. Tested (incl. binary compatibility) on SPARC/Solaris, applied on the mainline. 2016-01-04 Eric Botcazou PR target/69100 * config/sparc/sparc.h

[ping] Enable -mstackrealign with SSE on 32-bit Windows

2016-01-04 Thread Eric Botcazou
https://gcc.gnu.org/ml/gcc-patches/2015-12/msg01458.html Thanks in advance. -- Eric Botcazou

Re: [ping] Enable -mstackrealign with SSE on 32-bit Windows

2016-01-04 Thread Eric Botcazou
> This is really Windows specific setting, so Windows maintainer should > OK the patch. Makes sense, both maintainers now CCed. https://gcc.gnu.org/ml/gcc-patches/2015-12/msg01458.html -- Eric Botcazou

Re: [ping] pending patches

2016-01-05 Thread Eric Botcazou
die): Likewise. (gen_subroutine_type_die): Likewise. (gen_typedef_die): Likewise. (force_type_die): Adjust call to modified_type_die. 2016-01-05 Eric Botcazou * gcc.dg/debug/dwarf2/sso.c: New test. -- Eric BotcazouInde

Re: [PATCH v2] ia64: don't use dynamic relocations for local symbols

2016-01-05 Thread Eric Botcazou
> 'make bootstrap' works fine on ia64 but I've failed to run 'make check'. > Testsuite's LD_LIBRARY_PATHs are not correct and can run tests. You need to run 'make -k check' from the top level build directory. -- Eric Botcazou

Re: [PATCH 2/2] Ada: add XVE/XVU parallel types to lexical scopes

2016-01-05 Thread Eric Botcazou
> This change adds TYPE_DECL nodes for XVE/XVU parallel types to lexical > scopes so that these types are properly scoped in the debug information. OK, thanks. -- Eric Botcazou

Re: [PATCH, i386]: Fix PR69140, stack alignment + O1 breaks with Microsoft ABI

2016-01-06 Thread Eric Botcazou
gt; many different code paths. I guess committing the one-liner in the > hope that it won't break some target is the best approach one can do. Thanks for devising the fix! -- Eric Botcazou

[testsuite] Skip gcc.target/sparc/20151219-1.c in 64-bit mode

2016-01-06 Thread Eric Botcazou
The test doesn't really make sense in 64-bit mode. Applied on the mainline. 2016-01-06 Eric Botcazou * gcc.target/sparc/20151219-1.c: Skip in 64-bit mode. -- Eric BotcazouIndex: gcc.target/sparc/2015121

Re: RFA (tree-cfg): PATCH for 68983 (ICE in copy constructor)

2016-01-07 Thread Eric Botcazou
cc_assert (!TREE_ADDRESSABLE (type) && COMPLETE_TYPE_P (type)); -- Eric Botcazou

Re: [PATCH] DWARF: add abstract origin links on lexical blocks DIEs

2016-01-17 Thread Eric Botcazou
> Sounds like a good excuse to add a guality for Ada (which has unique > needs for dwarf). Well, the guality testsuite is a pain to maintain so I'd rather not. The GDB testsuite is clearly the right place for this kind of testcases. -- Eric Botcazou

Re: [PATCH] Fix RTL DSE (PR rtl-optimization/68955)

2016-01-18 Thread Eric Botcazou
mem_addr = plus_constant (get_address_mode (mem), mem_addr, offset); both in record_store and check_mem_read_rtx, so I wonder if we shouldn't bite the bullet and try enhancing get_addr since it's a mainline-only regression. -- Eric Botcazou

Re: [PATCH] DWARF: add abstract origin links on lexical blocks DIEs

2016-01-18 Thread Eric Botcazou
as far as I'm concerned). -- Eric Botcazou

Fix PR ada/69219

2016-01-18 Thread Eric Botcazou
01-18 Eric Botcazou PR ada/69219 * gcc-interface/trans.c (check_inlining_for_nested_subprog): Consider the parent function instead of the current function in order to issue the warning or the error. Add guard for ignored functions. 2016-01-18 Eric Bot

Re: [PATCH] Fix RTL DSE (PR rtl-optimization/68955)

2016-01-18 Thread Eric Botcazou
easily changed. -- Eric Botcazou

[Ada] Housekeeping work in gigi

2016-01-18 Thread Eric Botcazou
In preparation for the implementation of the 'char' compatibility fix. Tested on x86_64-suse-linux, applied on the mainline. 2016-01-18 Eric Botcazou * gcc-interface/ada-tree.h (TYPE_IMPLEMENTS_PACKED_ARRAY_P): Rename to (TYPE_IMPL_PACKED_ARRAY_P

[Ada] Housekeeping work in gigi (bis)

2016-01-18 Thread Eric Botcazou
In preparation for the implementation of the 'char' compatibility fix. Tested on x86_64-suse-linux, applied on the mainline. 2016-01-18 Eric Botcazou * gcc-interface/gigi.h (build_call_raise_column): Adjust prototype. (build_call_raise_range)

Re: [PATCH 0/2][AArch64] Implement AAPCS64 updates for alignment attribute

2016-01-18 Thread Eric Botcazou
ing testing with make -k check. Or else could this be a parallel compilation bug? Could you post the list of files that differ? How do they differ exactly? -- Eric Botcazou

Re: [ping] pending patches

2016-01-19 Thread Eric Botcazou
> 2016-01-05 Eric Botcazou > > * dwarf2out.c (need_endianity_attribute_p): New inline predicate. > (base_type_die): Add REVERSE parameter and attach DW_AT_endianity to > the DIE accordingly. > (modified_type_die): Add REVERSE parameter and p

Re: [PATCH] Fix RTL DSE (PR rtl-optimization/68955, take 2)

2016-01-19 Thread Eric Botcazou
INUS since it's non-canonical but we'd probably better be forgiving for this one). -- Eric Botcazou

Re: [PATCH] Fix RTL DSE (PR rtl-optimization/68955, take 2)

2016-01-19 Thread Eric Botcazou
; DSE will only care about CONST_INT and +. For minus, I thought it can be > canonical for the minimum signed value, if it is originally subtracted (not > the case for DSE). OK. And var-tracking also manipulates MINUS - CONST_INTs coming from stack decrements. -- Eric Botcazou

[patch] Restore cross-language inlining into Ada

2016-01-20 Thread Eric Botcazou
initial state. Tested on x86_64-suse-linux, OK for the mainline? 2016-01-20 Eric Botcazou * ipa-inline.c (can_inline_edge_p): Back out overzealous check on flag_non_call_exceptions compatibility. -- Eric BotcazouIndex: ipa-inline.c

[Ada] Fix 'char' compatibility with C

2016-01-20 Thread Eric Botcazou
As promised earlier, this fixes the signedness compatibility issue between Character/Interfaces.C.char in Ada and 'char' in the C family of languages. Tested on x86_64-suse-linux, applied on the mainline. 2016-01-20 Eric Botcazou * exp_ch2.adb (Expand_Current_Value

Re: [patch v2, aarch64] additional bics patterns

2014-12-04 Thread Eric Botcazou
e trailing spaces in the patch. -- Eric Botcazou

Re: [PATCH] Add force option to find_best_rename_reg in regrename pass

2014-12-05 Thread Eric Botcazou
above renaming. OK for mainline, but investigate whether you can better format the config/c6x/c6x.c line, for example: + best_reg + = find_rename_reg (this_head, super_class, &unavailable, old_reg, true); -- Eric Botcazou

Re: Compare-elim pass (was: Re: [PATCH] Fix PR 61225)

2014-12-05 Thread Eric Botcazou
targets. > Having this pass enabled on a wildly popular target would help > catching eventual bugs in the pass. FWIW we're about to submit a port that makes a heavy use of it. -- Eric Botcazou

Re: [PATCH 04/10] rs6000: Remove addic from the normal add pattern

2014-12-09 Thread Eric Botcazou
> It's unfortunate that GCC does not have separate patterns for a safe > ADD used by reload. It does, the addptrM3 pattern, but it works only with LRA at the moment. -- Eric Botcazou

Re: [patch] Fix ICE on unaligned record field

2014-12-10 Thread Eric Botcazou
se it. If Richard and you think it's the way to go, then fine by me. -- Eric Botcazou

Re: [patch] Fix ICE on unaligned record field

2014-12-11 Thread Eric Botcazou
of couse). > > Thus similar to Erics fix but avoiding the aggregate copy. Yes, that should be doable, but I'm not sure it's worth the hassle. -- Eric Botcazou

Fix builtin-arith-overflow-1.c with unsigned char

2014-12-11 Thread Eric Botcazou
The char's in gcc.dg/builtin-arith-overflow-1.c are almost all explicitly signed or unsigned, except for 2 of them, but that's enough to make it fail for targets whose char is unsigned. Tested on x86-64 and a private port, applied on mainline as obvious. 2014-12-11 Eri

Fix doc about meaning of (pc) in length calculation

2014-12-11 Thread Eric Botcazou
se-linux, applied on all active branches. 2014-12-11 Eric Botcazou * doc/md.texi (Insn Lengths): Fix description of (pc). -- Eric BotcazouIndex: doc/md.texi === --- doc/md.texi (revision 218617) +++ doc/md.texi (work

[PATCH 0/4] GCC port for the Visium

2014-12-11 Thread Eric Botcazou
linux host). I think that the failures are common to all newlib targets and very likely related to: https://gcc.gnu.org/ml/gcc-patches/2014-12/msg00357.html OK for the mainline? -- Eric Botcazou

[PATCH 1/4] Add Visium support to toplevel

2014-12-11 Thread Eric Botcazou
ChangeLog 2014-12-11 Eric Botcazou * config.sub: Update from upstream config repo. * configure.ac: Add Visium support. * configure: Regenerate. -- Eric BotcazouIndex: config.sub === --- config.sub

[PATCH 2/4] Add Visium support to libgcc

2014-12-11 Thread Eric Botcazou
libgcc/ChangeLog 2014-12-11 Eric Botcazou * config.host: Add Visium support. * config/visium: New directory. -- Eric BotcazouIndex: config.host === --- config.host (revision 218617) +++ config.host

[PATCH 3/4] Add Visium support to gcc

2014-12-11 Thread Eric Botcazou
gcc/ChangeLog 2014-12-11 Eric Botcazou * config.gcc: Add Visium support. * configure.ac: Likewise. * configure: Regenerate. * doc/invoke.texi: Document Visium options. * doc/md.texi: Document Visium constraints. * common/config/visium: New

[PATCH 4/4] Add Visium support to gcc/testsuite

2014-12-11 Thread Eric Botcazou
gcc/testsuite/ChangeLog: 2014-12-11 Eric Botcazou * lib/target-supports.exp (check_profiling_available): Return 0 for Visium. (check_effective_target_tls_runtime): Likewise. (check_effective_target_logical_op_short_circuit): Return 1 for Visium

Re: [patch] Fix ICE on unaligned record field

2014-12-12 Thread Eric Botcazou
disabling it: the aggregate is passed directly so it's probably small and, in the case at hand, the optimized caller would do 2 extractions instead of only 1 so the gain is not obvious. -- Eric Botcazou

Re: [PATCH][rtlanal.c][BE][1/2] Fix vector load/stores to not use ld1/st1

2014-12-13 Thread Eric Botcazou
ode) % GET_MODE_SIZE (ymode)) == 0); gcc_assert ((nregs_xmode % nregs_ymode) == 0); So what would it take to do things properly here, i.e. relax the conditions and adjust downstream? -- Eric Botcazou

Re: [hsa] HSA: support for direct function call is introduced.

2014-12-13 Thread Eric Botcazou
(emit_function_directives): Add emitted function to map with offsets. Entries must (generally) start with either "New", "Likewise" or a verb. -- Eric Botcazou

Re: [PATCH, combine] Try REG_EQUAL for nonzero_bits

2014-12-15 Thread Eric Botcazou
om_reg_equal (rsp, insn, src, x); Can't we improve on this? rsp->sign_bit_copies is modified both here and in update_rsp_from_reg_equal, but rsp->nonzero_bits is modified only in the latter function. There is no reason for this discrepancy, so they ought to be handled the same way, either entirely here or entirely in the function. -- Eric Botcazou

Re: [PATCH 2/4] Add Visium support to libgcc

2014-12-15 Thread Eric Botcazou
guess I can reuse the copyright notice of soft-fp for them. -- Eric Botcazou

Re: [PATCH 3/4] Add Visium support to gcc

2014-12-15 Thread Eric Botcazou
nd you should verify that the port builds cleanly with --enable-werror > -always, for both 32-bit and 64-bit hosts, when building using current trunk > GCC). Do you mean a bootstrap of the cross-compiler with --enable-werror-always on a 32-bit and a 64-bit host? OK, I'll do that. Thanks for the review. -- Eric Botcazou

Re: [PATCH] Fix simplify_relational_operation_1 (PR rtl-optimization/64316)

2014-12-15 Thread Eric Botcazou
c: New test. OK, thanks. -- Eric Botcazou

Re: [PATCH][rtlanal.c][BE][1/2] Fix vector load/stores to not use ld1/st1

2014-12-15 Thread Eric Botcazou
d gain much. > We already have early-outs for the simple cases, such as: Right, but they are more of special cases and this one is not. -- Eric Botcazou

Re: [PATCH][SPARC] default with_cpu to ultrasparc in sparc64-*-linux* targets

2014-12-15 Thread Eric Botcazou
ts building upstream glibc with a gcc configured with not > --with-cpu option, for example. Certainly annoying. > I think it would be reasonable to have gcc targetting ultrasparc > extensions by default in sparc64-*-linux*. WDYT? No strong opinion. FreeBSD and OpenBSD already do it so why not? DaveM, any opinion? -- Eric Botcazou

Re: [Patch, regcprop] Tentative fix for PR 64331

2014-12-16 Thread Eric Botcazou
ed REG_DEAD fixes the immediate problem. > Is that the right approach? What do you guys think? Nope, consumers of REG_DEAD notes must instead explicitly ask the DF framework to recompute them. -- Eric Botcazou

Re: [PATCH 2/4] Add Visium support to libgcc

2014-12-17 Thread Eric Botcazou
, because it goes > against the standard message about building your program with GCC not > imposing restrictions on distribution of the resulting binary.) OK, I'm going to reimplement it based on libgcc2.c then. -- Eric Botcazou

Re: [PATCH] PR 62173, re-shuffle insns for RTL loop invariant hoisting

2014-12-19 Thread Eric Botcazou
oid using them in fwprop.c if possible. -- Eric Botcazou

Re: [PATCH 2/4] Add Visium support to libgcc

2014-12-19 Thread Eric Botcazou
Revision version, the divmod and the parity routines have been reimplemented based on libgcc2.c and all the new files are now under GPL+exception. libgcc/ChangeLog 2014-12-19 Eric Botcazou * config.host: Add Visium support. * config/visium: New directory. -- Eric

Re: [PATCH][rtlanal.c][BE][1/2] Fix vector load/stores to not use ld1/st1

2014-12-19 Thread Eric Botcazou
ZE (ymode); > gcc_assert (mode_multiple != 0); > > which clearly isn't a useful value if the division isn't exact. > Do you mean that, since mode_multiple isn't correct for the > DI-of-a-CI case, we should reformulate the end of the function > to avoid using mode_multiple at all? Yes. -- Eric Botcazou

<    22   23   24   25   26   27   28   29   30   31   >