[PATCH] Enable -fsanitize-recover for KASan

2014-09-04 Thread Yury Gribov
Hi all, This patch enables -fsanitize-recover for KASan by default. This causes KASan to continue execution after error in case of inline instrumentation. This feature is needed because - reports during early bootstrap won't even be printed - needed to run all tests w/o rebooting machine for e

Re: [PATCH, ira] Miss checks in split_live_ranges_for_shrink_wrap

2014-09-04 Thread Jeff Law
On 09/01/14 02:13, Zhenqiang Chen wrote: To split live-range of register, split_live_ranges_for_shrink_wrap will introduce additional register copies. If such copies can not be optimized by later optimizations, it will lead to code size and performance regression. My tests on ARM THUMB1 code siz

Re: [RFC] Tweak gcc.c-torture/execute/pr39228.c

2014-09-04 Thread Jeff Law
On 09/03/14 18:22, Kaz Kojima wrote: Jeff Law wrote: * gcc.c-torture/execute/pr39228.c: Use dg-additional-options instead of dg-options and remove sh*-*-* from its target list. Add "inline" keyword to test functions. Wouldn't we be better off moving this into execute/ie

Re: [PATCH] Fix PR63148 - two choices

2014-09-04 Thread Jeff Law
On 09/04/14 06:11, Richard Biener wrote: The following two patches each fix PR63148, a wrong-code issue caused by bogus array indices a-la &global_data.b[(sizetype) i + 536870911] which have a correct address when lowered but bogus index. The case in question can be mitigated by disabling foldi

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-04 Thread Jeff Law
On 09/01/14 23:17, Bin.Cheng wrote: For this specific case, I think the reuse of r84 comes from coalescing during expanding, and this is necessary to remove redundant reg-moves. Then we need to fix this in coming passes? Hmmm. Yea, I can see how that might be happening. There's a certain inher

Re: [PATCH PR62151]Fix uninitialized register issue caused by distribute_notes in combine pass

2014-09-04 Thread Jeff Law
On 09/01/14 23:14, Bin.Cheng wrote: On Tue, Sep 2, 2014 at 11:40 AM, Jeff Law wrote: On 08/31/14 22:18, Bin.Cheng wrote: Note that i0..i4 need not be consecutive insns, so you'd have to walk the chain from the location with the death note to the proposed death note site. If between those loc

Re: [patch][plugin] Fix PR59335 - missing plugin headers again

2014-09-04 Thread Jeff Law
On 09/04/14 20:32, Joey Ye wrote: Trunk fails to build plugin again due to missing plugin header files. This patch fixes it. OK to trunk? ChangeLog: PR plugin/59335 * Makefile.in (PLUGIN_HEADERS): Add wide-int.h, signop.h, hash-map.h, OK. jeff

pr43550 - remove unnecessary uxts in bswap

2014-09-04 Thread Kugan
Hi All, For the bswap built-in, there are unnecessary uxts generated as reported in pr43550. Can we rely on the argument being unsigned and set the SUBREG promoted accordingly. At least in ARM ABI, arguments are supposed to be properly zero/sign extended. Any thoughts? Bootstrapped and regressi

Re: [patch] remove picochip

2014-09-04 Thread Jeff Law
On 09/04/14 21:16, Trevor Saunders wrote: Hi, Looks like the patch is to big to send uncompressed, so sorry if this the second mail you get :) Given picochip has been obsolete for several years at this point, and when I asked a while back if anyone wanted to keep it nobody responded I'm going t

Re: Use -fbuilding-libgcc for more target macros used in libgcc

2014-09-04 Thread Ian Lance Taylor
On Thu, Sep 4, 2014 at 6:15 PM, Joseph S. Myers wrote: > > gcc/c-family: > 2014-09-05 Joseph Myers > > * c-cppbuiltin.c (c_cpp_builtins): Also define > __LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__, > __LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__, > __LIB

[patch] remove picochip

2014-09-04 Thread Trevor Saunders
Hi, Looks like the patch is to big to send uncompressed, so sorry if this the second mail you get :) Given picochip has been obsolete for several years at this point, and when I asked a while back if anyone wanted to keep it nobody responded I'm going to claim its time to kill it. bootstrapped +

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread Aldy Hernandez
On 09/04/14 03:42, Richard Biener wrote: On Wed, Sep 3, 2014 at 7:54 PM, Aldy Hernandez wrote: Flow-wise I still want to move hand-off to the cgraph code to toplev.c, out from the FEs final_write_gloabals hook: /* This must also call finalize_compilation_unit. */ lang_hooks.decls.fina

Re: [4.9] PR 62146

2014-09-04 Thread Jeff Law
On 09/04/14 19:27, Easwaran Raman wrote: I've attached the revised patch. Bootstrapped and no test regressions on x86_64/linux with 4.9 branch. Ok for 4.9 branch? While the bug doesn't show up in trunk, seems obvious that this should go to trunk as well. Is it ok for trunk if tests pass? Btw, is

Re: [PATCH 10/10] Use rtx_insn for various jump-handling functions and predicates

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * config/arc/arc.c (arc_print_operand): Use insn method of final_sequence for type-safety. * config/bfin/bfin.c (bfin_hardware_loop): Strengthen param "insn" from rtx to rtx_insn *. * config/frv/frv.c (frv_print_

Re: [PATCH 09/10] Simplification within reorg.c

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * reorg.c (relax_delay_slots): Move declaration of "trial_seq" above the conditional, and convert the check on GET_CODE to a dyn_cast, so that "trial_seq" is available as an rtx_sequence * in the conditional. Simplify t

[patch][plugin] Fix PR59335 - missing plugin headers again

2014-09-04 Thread Joey Ye
Trunk fails to build plugin again due to missing plugin header files. This patch fixes it. OK to trunk? ChangeLog: PR plugin/59335 * Makefile.in (PLUGIN_HEADERS): Add wide-int.h, signop.h, hash-map.h, hash-set.h. diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 63124f8..8e7aada 10064

Re: [PATCH 08/10] Use rtx_insn_list within haifa-sched.c

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * haifa-sched.c (check_clobbered_conditions): Strengthen local "link" from rtx to rtx_insn_list *, and use its methods for clarity and type-safety. (toggle_cancelled_flags): Likewise. (restore_last_backtrack_poin

[PATCH 2/2] make dead_debug_insert_temp take an rtx_insn *

2014-09-04 Thread tsaunders
From: Trevor Saunders just changing argument type so pre approved. bootstrap + regtested on x86_64-linux-gnu. Trev gcc/ChangeLog: 2014-09-04 Trevor Saunders * valtrack.c (dead_debug_insert_temp): Take an rtx_insn * instead of an rtx. * valtrack.h: Adjust. --- gcc/C

[PATCH 1/2] make several emit functions take an rtx_insn *

2014-09-04 Thread tsaunders
From: Trevor Saunders just variable type changes so pre approved committing to trunk. bootstrap + regtest on x86_64-linux-gnu, and config-list.mk Trev gcc/ChangeLog: 2014-09-04 Trevor Saunders * emit-rtl.c (emit_insn_before_noloc): Take an rtx_insn * instead of an rtx.

Re: [PATCH 07/10] Use rtx_insn for more scheduler things, plus CONST_CAST_RTX_INSN

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * sched-deps.c (sched_get_condition_with_rev_uncached): Strengthen param "insn" from const_rtx to const rtx_insn *. (sched_get_reverse_condition_uncached): Likewise. (sched_get_condition_with_rev): Likewise. (sch

Re: [PATCH 06/10] Use rtx_insn more within peep2

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * recog.c (peep2_attempt): Strengthen return type from rtx to rtx_insn *. (peep2_update_life): Likewise for params "last", "prev", removing a checked cast made redundant by this. (peephole2_optimize): Likewise fo

Re: [PATCH 05/10] Convert set_block_for_insn from a macro to an inline function

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * basic-block.h (set_block_for_insn): Eliminate this macro in favor of... * rtl.h (set_block_for_insn): New inline function, imposing the requirement that the "insn" param is an rtx_insn *. OK. jeff

Re: [PATCH 04/10] Eliminate the checked cast from get_call_reg_set_usage

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * caller-save.c (setup_save_areas): Strengthen local "insn" from rtx to rtx_insn *. * final.c (get_call_reg_set_usage): Likewise for first param, eliminating a checked cast. * regs.h (get_call_reg_set_usage): Lik

Re: [PATCH 03/10] for_each_eh_label callbacks take an rtx_code_label

2014-09-04 Thread Jeff Law
On 09/04/14 19:52, David Malcolm wrote: gcc/ * except.c (for_each_eh_label): Within param "callback", strengthen param from rtx to rtx_code_label *. Strengthen local "lab" from rtx to rtx_code_label *. Remove redundant check on LABEL_P (lab), since this is known

Re: [PATCH 02/10] Drop uncast_insn from param 1 of final_scan_insn

2014-09-04 Thread Jeff Law
On 09/04/14 19:51, David Malcolm wrote: gcc/ * output.h (final_scan_insn): Strengthen first param from rtx to rtx_insn *. * final.c (final_scan_insn): Likewise, renaming it back from "uncast_insn" to "insn", eliminating the checked cast. * config/h8300/h

Re: [PATCH 01/10] Use rtx_jump_table_data in jump.c:delete_related_insns

2014-09-04 Thread Jeff Law
On 09/04/14 19:51, David Malcolm wrote: gcc/ * jump.c (delete_related_insns): Introduce a new local "table" by replacing JUMP_TABLE_DATA_P with a dyn_cast, then use the get_labels method of "table" to simplify access to the labels in the jump table. OK. Jeff

[PATCH 08/10] Use rtx_insn_list within haifa-sched.c

2014-09-04 Thread David Malcolm
gcc/ * haifa-sched.c (check_clobbered_conditions): Strengthen local "link" from rtx to rtx_insn_list *, and use its methods for clarity and type-safety. (toggle_cancelled_flags): Likewise. (restore_last_backtrack_point): Likewise. (queue_to_ready): Us

[PATCH 05/10] Convert set_block_for_insn from a macro to an inline function

2014-09-04 Thread David Malcolm
gcc/ * basic-block.h (set_block_for_insn): Eliminate this macro in favor of... * rtl.h (set_block_for_insn): New inline function, imposing the requirement that the "insn" param is an rtx_insn *. --- gcc/basic-block.h | 2 -- gcc/rtl.h | 5 + 2 files chan

[PATCH 04/10] Eliminate the checked cast from get_call_reg_set_usage

2014-09-04 Thread David Malcolm
gcc/ * caller-save.c (setup_save_areas): Strengthen local "insn" from rtx to rtx_insn *. * final.c (get_call_reg_set_usage): Likewise for first param, eliminating a checked cast. * regs.h (get_call_reg_set_usage): Likewise for first param. * resource.

[PATCH 07/10] Use rtx_insn for more scheduler things, plus CONST_CAST_RTX_INSN

2014-09-04 Thread David Malcolm
gcc/ * sched-deps.c (sched_get_condition_with_rev_uncached): Strengthen param "insn" from const_rtx to const rtx_insn *. (sched_get_reverse_condition_uncached): Likewise. (sched_get_condition_with_rev): Likewise. (sched_has_condition_p): Likewise. (sc

[PATCH 06/10] Use rtx_insn more within peep2

2014-09-04 Thread David Malcolm
gcc/ * recog.c (peep2_attempt): Strengthen return type from rtx to rtx_insn *. (peep2_update_life): Likewise for params "last", "prev", removing a checked cast made redundant by this. (peephole2_optimize): Likewise for local "last". --- gcc/recog.c | 9 +

[PATCH 10/10] Use rtx_insn for various jump-handling functions and predicates

2014-09-04 Thread David Malcolm
gcc/ * config/arc/arc.c (arc_print_operand): Use insn method of final_sequence for type-safety. * config/bfin/bfin.c (bfin_hardware_loop): Strengthen param "insn" from rtx to rtx_insn *. * config/frv/frv.c (frv_print_operand_jump_hint): Likewise. * co

[PATCH 09/10] Simplification within reorg.c

2014-09-04 Thread David Malcolm
gcc/ * reorg.c (relax_delay_slots): Move declaration of "trial_seq" above the conditional, and convert the check on GET_CODE to a dyn_cast, so that "trial_seq" is available as an rtx_sequence * in the conditional. Simplify the conditional by using methods of

[PATCH 03/10] for_each_eh_label callbacks take an rtx_code_label

2014-09-04 Thread David Malcolm
gcc/ * except.c (for_each_eh_label): Within param "callback", strengthen param from rtx to rtx_code_label *. Strengthen local "lab" from rtx to rtx_code_label *. Remove redundant check on LABEL_P (lab), since this is known from the type rtx_code_label *. *

[PATCH 01/10] Use rtx_jump_table_data in jump.c:delete_related_insns

2014-09-04 Thread David Malcolm
gcc/ * jump.c (delete_related_insns): Introduce a new local "table" by replacing JUMP_TABLE_DATA_P with a dyn_cast, then use the get_labels method of "table" to simplify access to the labels in the jump table. --- gcc/jump.c | 12 ++-- 1 file changed, 6 inse

[PATCH 02/10] Drop uncast_insn from param 1 of final_scan_insn

2014-09-04 Thread David Malcolm
gcc/ * output.h (final_scan_insn): Strengthen first param from rtx to rtx_insn *. * final.c (final_scan_insn): Likewise, renaming it back from "uncast_insn" to "insn", eliminating the checked cast. * config/h8300/h8300.md (define_insn "jump"): Replace loca

[PATCH 00/10] More use of rtx subclasses

2014-09-04 Thread David Malcolm
The following patches are followups to the 236-patch kit; they use the new classes in more places, in some cases eliminating checked casts, and should enable some bigger cleanups that I'm working towards (e.g. converting the params of single_set and recog_memoized to require rtx_insn * rather than

[PATCH, committed] Remove a cast in cse.c

2014-09-04 Thread David Malcolm
The attached trivial patch strengthens a local variable in cse.c from rtx to rtx_insn *, allowing the elimination of a checked cast, and thus falls under the pre-approval granted by Jeff here: https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html Bootstrapped on x86_64-unknown-linux-gnu (Fedo

Re: [PATCH 2/2] Enable elimination of zext/sext

2014-09-04 Thread Kugan
>> Here is an attempt to do the value range computation in promoted_mode's >> type when it is overflowing. Bootstrapped on x86-84. > > Err - I think you misunderstood this as a suggestion to do this ;) > value-ranges should be computed according to the type not according > to the (promoted) mode.

Re: [PATCH][PR debug/60655] Power/GCC: Reject cross-section symbol subtraction

2014-09-04 Thread Alan Modra
On Thu, Sep 04, 2014 at 10:05:38PM +0100, Maciej W. Rozycki wrote: > On Thu, 4 Sep 2014, Alan Modra wrote: > > > > In fact if you look at the corresponding location expression for > > > -fno-section-anchors code you get something quite screwy too. > > > > > > 018f 0108 0114 (DW_OP_bre

[PATCH, committed] Params to modified_between_p

2014-09-04 Thread David Malcolm
The attached patch strengthens the 2nd and 3rd params of modified_between_p from const_rtx to const rtx_insn * (eliminating a checked cast), and thus falls under the pre-approval granted by Jeff here: https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html Bootstrapped on x86_64-unknown-linux-g

Re: [4.9] PR 62146

2014-09-04 Thread Easwaran Raman
I've attached the revised patch. Bootstrapped and no test regressions on x86_64/linux with 4.9 branch. Ok for 4.9 branch? While the bug doesn't show up in trunk, seems obvious that this should go to trunk as well. Is it ok for trunk if tests pass? Btw, is g++.dg/opt the right directory for the tes

[PATCH, committed] fixup_args_size_notes takes a pair of rtx_insn *

2014-09-04 Thread David Malcolm
The attached patch strengthens both params of fixup_args_size_notes from rtx to rtx_insn * (eliminating a checked cast), and thus falls under the pre-approval granted by Jeff here: https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html Bootstrapped on x86_64-unknown-linux-gnu (Fedora 20), and

Use -fbuilding-libgcc for more target macros used in libgcc

2014-09-04 Thread Joseph S. Myers
It is desirable for various reasons to stop target libraries from using host-side tm.h: making the headers work on both host and target (and on build as well) is fragile (especially when dealing with macros depending on command-line options, which need different definitions when being used for the

[PATCH, committed] Return type of get_ready_element

2014-09-04 Thread David Malcolm
The attached trivial patch strengthens a return type from rtx to rtx_insn *, and thus falls under the pre-approval granted by Jeff here: https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html Bootstrapped on x86_64-unknown-linux-gnu (Fedora 20), and has been rebuilt as part of a config-list.mk

[PR libfortran/62768] Handle filenames with embedded nulls

2014-09-04 Thread Janne Blomqvist
Hi, when opening a file with a name containing an ASCII null character, the name is truncated at the first null since the IO API's take null-terminated C strings. By storing such a C string in gfc_unit instead of the original Fortran string INQUIRE for the file name will return the correct name, a

Re: [patch committed testsuite sh] Tweak gcc.c-torture/execute/pr44683.c

2014-09-04 Thread Mike Stump
On Sep 4, 2014, at 5:22 PM, Kaz Kojima wrote: > BTW, Jeff's comment on pr39228.c makes me think that this test > can be moved into execute/ieee. Thought? I don’t see a down side, specially if we know that the test case is picky about ieee.

[patch committed testsuite sh] Tweak gcc.c-torture/execute/pr44683.c

2014-09-04 Thread Kaz Kojima
The patch below removes a sh*-*-* specific dg-options line from gcc.c-torture/execute/pr44683.c. That line is unnecessary because now -mieee is a default option on sh*. I've applied it as an obvious change specific to sh. Tested on i686-linux and sh-linux. BTW, Jeff's comment on pr39228.c makes m

[PATCH, committed] rs6000: Fix for PR63165

2014-09-04 Thread Segher Boessenkool
My extend* pattern patches exposed a problem elsewhere. I don't build java so I didn't see it. This fixes it. Also handles the zero-extend case, that had the same problem. Pre-approved by David, committed. Segher 2014-09-04 Segher Boessenkool PR target/63165 * config/rs6

[RFA 2/2]: --enable-explicit-exception-frame-registration compatibility option

2014-09-04 Thread Hans-Peter Nilsson
This adds an option to allow programs and libraries built *without* inhibit_libc to stay compatible with system libraries (really: libgcc_s.so.1) built *with* inhibit_libc, at the cost of the registration. As mentioned, that's a one-way compatibility barrier. While it's nice to avoid the overhead

[RFA 1/2]: Don't ignore target_header_dir when deciding inhibit_libc

2014-09-04 Thread Hans-Peter Nilsson
The directory at $target_header_dir is already inspected in gcc/configure, for e.g. glibc version and stack protector support, but not for setting inhibit_libc. This is just inconsistent and the obvious resolution to me is to inhibit inhibit_libc when a target *does* "have its own set of headers",

[RFA 0/2]: inhibit_libc and eh-registry vs. eh-phdrs incompatibility

2014-09-04 Thread Hans-Peter Nilsson
The conditions for inhibit_libc to activate (i.e. for library headers to be absent) are IMO a bit too automatic and the effect is too subtle and serious in some situations. For example, if you pre-install target headers in $target_header_dir, gcc will find them and use them, but still inhibit_libc

Re: [PATCH] Add XINSN macro and use it within NEXT_INSN/PREV_INSN (was Re: [PATCH] Force rtl templates to be inlined)

2014-09-04 Thread David Malcolm
On Thu, 2014-09-04 at 22:22 +0200, Jakub Jelinek wrote: > On Thu, Sep 04, 2014 at 04:04:17PM -0400, David Malcolm wrote: > > --- a/gcc/rtl.h > > +++ b/gcc/rtl.h > > @@ -195,6 +195,7 @@ union rtunion > >unsigned int rt_uint; > >const char *rt_str; > >rtx rt_rtx; > > + rtx_insn *rt_insn;

[PATCH][committed] insn_latency takes a pair of rtx_insn *

2014-09-04 Thread David Malcolm
The attached patch strengthens both params of the generated insn_latency function from rtx to rtx_insn *, and thus falls under the pre-approval granted by Jeff here: https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html Bootstrapped on x86_64-unknown-linux-gnu (Fedora 20), and has been rebuil

Re: [PATCH][PR debug/60655] Power/GCC: Reject cross-section symbol subtraction

2014-09-04 Thread Maciej W. Rozycki
On Thu, 4 Sep 2014, Alan Modra wrote: > > In fact if you look at the corresponding location expression for > > -fno-section-anchors code you get something quite screwy too. > > > > 018f 0108 0114 (DW_OP_breg10 (r10): 0; DW_OP_addr: 144; > > DW_OP_plus; DW_OP_stack_value > > > > whic

Re: [PATCH] Add XINSN macro and use it within NEXT_INSN/PREV_INSN (was Re: [PATCH] Force rtl templates to be inlined)

2014-09-04 Thread Jakub Jelinek
On Thu, Sep 04, 2014 at 04:04:17PM -0400, David Malcolm wrote: > --- a/gcc/rtl.h > +++ b/gcc/rtl.h > @@ -195,6 +195,7 @@ union rtunion >unsigned int rt_uint; >const char *rt_str; >rtx rt_rtx; > + rtx_insn *rt_insn; >rtvec rt_rtvec; >enum machine_mode rt_type; >addr_diff_vec

[PATCH][committed] eh_returnjump_p takes an rtx_insn

2014-09-04 Thread David Malcolm
The attached trivial patch strengthens a param from rtx to rtx_insn *, and thus falls under the pre-approval granted by Jeff here: https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html Bootstrapped on x86_64-unknown-linux-gnu (Fedora 20), and has been rebuilt as part of a config-list.mk build

Re: Vimrc config with GNU formatting

2014-09-04 Thread Bernhard Reutner-Fischer
On Thu, Sep 04, 2014 at 03:22:15PM +0200, Richard Biener wrote: > On Thu, Sep 4, 2014 at 3:06 PM, Yury Gribov wrote: > > Hi all, > > > > This patch adds a Vim config (.local.vimrc) to root folder. This would allow > > automatic setup of GNU formatting for C/C++/Java/Lex files in GCC (similar > > t

[PATCH] Add XINSN macro and use it within NEXT_INSN/PREV_INSN (was Re: [PATCH] Force rtl templates to be inlined)

2014-09-04 Thread David Malcolm
On Tue, 2014-09-02 at 19:50 +0200, Andi Kleen wrote: > > I suspect the bulk of them currently are coming from the safe_as_a > > calls within NEXT_INSN and PREV_INSN; do you happen to have > > information handy on that? > > Yes that's right: > > - 1.03% lto1[.] bool > is_a

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread Jan-Benedict Glaw
On Thu, 2014-09-04 11:34:57 -0700, Aldy Hernandez wrote: > On 09/04/14 11:23, Richard Biener wrote: > > On September 4, 2014 7:54:14 PM CEST, Aldy Hernandez > > wrote: > > > > I think this merge caused bootstrap failure on Linux/i686 > > > > https://gcc.gnu.org/ml/gcc-regression/2014-09/msg00010

Re: [PATCH][MIPS] Do not reload unallocated FP_REGS pseudos via GR_REGS

2014-09-04 Thread Richard Sandiford
Matthew Fortune writes: > Ping! For the record, I agree this is the right fix. Thanks, Richard >> -Original Message- >> From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] >> On Behalf Of Matthew Fortune >> Sent: 18 August 2014 14:25 >> To: 'gcc-patches@gcc.gnu.or

Re: RFA: Merge definitions of get_some_local_dynamic_name

2014-09-04 Thread Richard Sandiford
Gerald Pfeifer writes: > On Thu, 4 Sep 2014, Richard Sandiford wrote: >> Is this stage 1 libgcc or a later libgcc? Seems unlikely if stage 1. > > Stage 1. I kicked off a non-parallel build, which just failed as > follows: > > /scratch2/tmp/gerald/OBJ-0904-1719/./gcc/xgcc > -B/scratch2/tmp/gerald

[patch] [committed] Add TAGS for timevar.def

2014-09-04 Thread Aldy Hernandez
Dunno, if I'm allowed to make calls on what an obvious patch is, considering I completely broke trunk with my last commit to the debug-early branch, but I'll take my chances... Yet another *.def file that needs handling in the TAGS file. Committed to trunk as obvious. Aldy commit be2a57c0df76

Re: RFA: Merge definitions of get_some_local_dynamic_name

2014-09-04 Thread Gerald Pfeifer
On Thu, 4 Sep 2014, Richard Sandiford wrote: > Is this stage 1 libgcc or a later libgcc? Seems unlikely if stage 1. Stage 1. I kicked off a non-parallel build, which just failed as follows: /scratch2/tmp/gerald/OBJ-0904-1719/./gcc/xgcc -B/scratch2/tmp/gerald/OBJ-0904-1719/./gcc/ -B/home/geral

Re: [PATCH] Force rtl templates to be inlined

2014-09-04 Thread Jan Hubicka
> On Thu, Sep 4, 2014 at 5:58 AM, Andi Kleen wrote: > >> > >> Anyway, removing !optimize checks in favor of flag_no_inline checks > >> and initializing that properly is a cleanup as well. > > > > Patch looks good to me. > > Unfortunately it doesn't pass bootstrap (inline-summary re-use > between

Re: [PATCH] PowerPC: Implement TARGET_ATOMIC_ASSIGN_EXPAND_FENV

2014-09-04 Thread Adhemerval Zanella
On 03-09-2014 11:01, Maciej W. Rozycki wrote: > On Tue, 2 Sep 2014, Adhemerval Zanella wrote: > >> Ping. >> >> On 19-08-2014 13:54, Adhemerval Zanella wrote: >>> Ping. >>> >>> On 06-08-2014 17:21, Adhemerval Zanella wrote: On 01-08-2014 12:31, Joseph S. Myers wrote: > On Thu, 31 Jul 2014,

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread Christophe Lyon
Hi, FWIW I saw the same problem on arm* and aarch64 targets. On 4 September 2014 20:34, Aldy Hernandez wrote: > On 09/04/14 11:23, Richard Biener wrote: >> >> On September 4, 2014 7:54:14 PM CEST, Aldy Hernandez >> wrote: >>> >>> I think this merge caused bootstrap failure on Linux/i686 >

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread Aldy Hernandez
On 09/04/14 11:23, Richard Biener wrote: On September 4, 2014 7:54:14 PM CEST, Aldy Hernandez wrote: I think this merge caused bootstrap failure on Linux/i686 https://gcc.gnu.org/ml/gcc-regression/2014-09/msg00010.html I incorrectly pushed my branch onto trunk. It's being reverted. To

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread Richard Biener
On September 4, 2014 7:54:14 PM CEST, Aldy Hernandez wrote: > >> I think this merge caused bootstrap failure on Linux/i686 >> >> https://gcc.gnu.org/ml/gcc-regression/2014-09/msg00010.html >> >> > >I incorrectly pushed my branch onto trunk. It's being reverted. Too bad! ;) Richard.

Re: [PATCH v2 AArch64]: Re: [PATCH AArch64]: Add constraint letter for stack_protect_test pattern.

2014-09-04 Thread Venkataramanan Kumar
Hi James, Yes we can just mark operand 3 as "&r". PFB, the updated patch. Ok for trunk? regards, Venkat. gcc/ChangeLog 2014-09-04 Venkataramanan Kumar * config/aarch64/aarch64.md (stack_protect_test_) Add register constraint for operand 0 and remove write only constraint from o

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread Aldy Hernandez
I think this merge caused bootstrap failure on Linux/i686 https://gcc.gnu.org/ml/gcc-regression/2014-09/msg00010.html I incorrectly pushed my branch onto trunk. It's being reverted.

Re: [debug-early] reuse variable DIEs and fix their context

2014-09-04 Thread H.J. Lu
On Wed, Sep 3, 2014 at 10:54 AM, Aldy Hernandez wrote: > [Jason, Richard]: Is it useful for my patches to contain ChangeLog entries? > I find them mildly annoying for something that will inevitably be rewritten > multiple times, but if it aids in reviewing my WIP, I am more than happy to > continu

Re: RFA: Merge definitions of get_some_local_dynamic_name

2014-09-04 Thread Richard Sandiford
Gerald Pfeifer writes: > On Tue, 2 Sep 2014, Richard Sandiford wrote: >> Also, i386 was robust against uses of %& in inline asm. The patch >> makes sure the other ports are too. Using %& in inline asm would >> often be a mistake, but it should at least trigger a proper error >> rather than an IC

Re: [PATCH] PowerPC: Implement TARGET_ATOMIC_ASSIGN_EXPAND_FENV

2014-09-04 Thread Maciej W. Rozycki
On Wed, 3 Sep 2014, Uros Bizjak wrote: > > So I think the default timeout that's used for really quick tests should > > be extended a bit. I propose a factor of 2, just not to make it too > > excessive, at least for the beginning (maybe it'll have to be higher > > eventually). > > Or you can ju

Re: [PINGv4][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses

2014-09-04 Thread Mike Stump
On Sep 4, 2014, at 4:14 AM, Ramana Radhakrishnan wrote: >> --- a/gcc/testsuite/lib/target-supports.exp >> +++ b/gcc/testsuite/lib/target-supports.exp >> @@ -2293,8 +2293,8 @@ proc check_effective_target_arm_little_endian { } { >> proc check_effective_target_arm_vect_no_misalign { } { >> retur

Re: [Patch AArch64] Add support for crtfastmath.c

2014-09-04 Thread Richard Henderson
On 09/04/2014 07:04 AM, Ramana Radhakrishnan wrote: > gcc/Changelog > > 2014-09-04 Marcus Shawcroft > Ramana Radhakrishnan > >* config/aarch64/aarch64-elf-raw.h (ENDFILE_SPEC): Add > crtfastmath.o. >* config/aarch64/aarch64-linux.h > (GNU_USER_TARGET_MATH

Re: RFA: Merge definitions of get_some_local_dynamic_name

2014-09-04 Thread Gerald Pfeifer
On Tue, 2 Sep 2014, Richard Sandiford wrote: > Also, i386 was robust against uses of %& in inline asm. The patch > makes sure the other ports are too. Using %& in inline asm would > often be a mistake, but it should at least trigger a proper error > rather than an ICE. > > Tested on x86_64-linux

Re: [patch] prevent tree sinking of trapping stmts

2014-09-04 Thread Olivier Hainque
On Sep 4, 2014, at 12:22 , Richard Biener wrote: > So I tend to think that removing / delaying traps is ok unless you > can catch them within the active EH scheme. > Certainly that Oliver excludes loads/stores (but not integer > division!) points at the fact that preserving the order of > traps

Re: [PATCH 4/4] AArch64: Add regmove_costs for Cortex-A57 and A53

2014-09-04 Thread Marcus Shawcroft
On 4 September 2014 15:47, Wilco Dijkstra wrote: > This patch adds regmove_costs for Cortex-A57 and A53, and sets the cost of > GP2FP/FP2GP higher than > memory cost to block the register allocator allocating integer values in FP > registers. > > Overall these patches give 2-3% speedup on SPEC.

Re: [PATCH 2/4] AArch64: Fix cost for Q register moves

2014-09-04 Thread Marcus Shawcroft
On 4 September 2014 16:41, Wilco Dijkstra wrote: >> From: Marcus Shawcroft [mailto:marcus.shawcr...@gmail.com] >> > - NAMED_PARAM (FP2FP, 4) >> > + NAMED_PARAM (FP2FP, 2) >> >> This is not directly related to the change below and it is missing >> from the ChangeLog. Originally this number had

RE: [PATCHv2][MIPS] Implement O32 ABI extensions (GCC)

2014-09-04 Thread Matthew Fortune
Ping! > -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] > On Behalf Of Matthew Fortune > Sent: 22 August 2014 10:43 > To: 'gcc-patches@gcc.gnu.org' (gcc-patches@gcc.gnu.org); Eric Christopher > (echri...@gmail.com) > Cc: Moore, Catherine (cat

RE: [PATCH][MIPS] Do not reload unallocated FP_REGS pseudos via GR_REGS

2014-09-04 Thread Matthew Fortune
Ping! > -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] > On Behalf Of Matthew Fortune > Sent: 18 August 2014 14:25 > To: 'gcc-patches@gcc.gnu.org' (gcc-patches@gcc.gnu.org) > Cc: Richard Sandiford; Eric Christopher (echri...@gmail.com) > Sub

Re: [PATCH 3/4] AArch64: Cleanup inconsistent use of __extension__

2014-09-04 Thread Marcus Shawcroft
On 4 September 2014 16:39, Marcus Shawcroft wrote: > On 4 September 2014 15:45, Wilco Dijkstra wrote: >> Cleanup inconsistent use of __extension__. >> >> ChangeLog: >> 2014-09-04 Wilco Dijkstra >> >> * gcc/config/aarch64/aarch64.c: Cleanup use of __extension__. > > Write a proper Chang

RE: [PATCH 2/4] AArch64: Fix cost for Q register moves

2014-09-04 Thread Wilco Dijkstra
> From: Marcus Shawcroft [mailto:marcus.shawcr...@gmail.com] > > - NAMED_PARAM (FP2FP, 4) > > + NAMED_PARAM (FP2FP, 2) > > This is not directly related to the change below and it is missing > from the ChangeLog. Originally this number had to be > 2 in order > for secondary reload to kick in.

Re: [PATCH 3/4] AArch64: Cleanup inconsistent use of __extension__

2014-09-04 Thread Marcus Shawcroft
On 4 September 2014 15:45, Wilco Dijkstra wrote: > Cleanup inconsistent use of __extension__. > > ChangeLog: > 2014-09-04 Wilco Dijkstra > > * gcc/config/aarch64/aarch64.c: Cleanup use of __extension__. Write a proper ChangeLog entry please. /Marcus

Re: [PATCH 2/4] AArch64: Fix cost for Q register moves

2014-09-04 Thread Marcus Shawcroft
On 4 September 2014 15:45, Wilco Dijkstra wrote: > This patch fixes a bug in aarch64_register_move_cost(): GET_MODE_SIZE is in > bytes not bits. As a > result the FP2FP cost doesn't need to be set to 4 to catch the special case > for Q register moves. > > ChangeLog: > 2014-09-04 Wilco Dijkstra

Re: [PATCH 1/4] AArch64: Fix register_move_cost

2014-09-04 Thread Marcus Shawcroft
On 4 September 2014 15:44, Wilco Dijkstra wrote: > Hi, > > This is a set of patches improving register costs on AArch64. The first fixes > aarch64_register_move_cost() to support CALLER_SAVE_REGS and POINTER_REGS so > costs are calculated > correctly in the register allocator. > > ChangeLog: > 20

Re: [PATCH ARM]memset inlining patch for arm

2014-09-04 Thread Ramana Radhakrishnan
On Thu, Sep 4, 2014 at 7:08 AM, Bin Cheng wrote: > Hi, > This patch is posted/approved before at > https://gcc.gnu.org/ml/gcc-patches/2014-07/msg01398.html > Unfortunately, it was reverted because a latent bug revealed causing glibc > build failure and I didn't have enough time to fix back at that

Re: [PATCH ARM]Use stricter constraint for pattern arm_movqi_insn to avoid constant pool

2014-09-04 Thread Ramana Radhakrishnan
On Thu, Sep 4, 2014 at 6:33 AM, Bin Cheng wrote: > Hi, > This patch is to fix a potential bug in arm pattern "arm_movqi_insn". > > For the pattern, > (define_insn "*arm_movqi_insn" > [(set (match_operand:QI 0 "nonimmediate_operand" "=r,r,r,l,r,l,Uu,r,m") > (match_operand:QI 1 "general_op

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2014-09-04 Thread Vladimir Makarov
On 2014-09-04 3:37 AM, Tom de Vries wrote: On 03-09-14 18:58, Tom de Vries wrote: I've build the patch and ran the fuse-caller-save tests, and I'm currently bootstrapping and reg-testing it on x86_64. Vladimir, This patch fixes a problem (found on s390) in one of the committed fuse-caller-sa

[PATCH 4/4] AArch64: Add regmove_costs for Cortex-A57 and A53

2014-09-04 Thread Wilco Dijkstra
This patch adds regmove_costs for Cortex-A57 and A53, and sets the cost of GP2FP/FP2GP higher than memory cost to block the register allocator allocating integer values in FP registers. Overall these patches give 2-3% speedup on SPEC. This passes all regression tests (with this fix https://gcc.

[PATCH 3/4] AArch64: Cleanup inconsistent use of __extension__

2014-09-04 Thread Wilco Dijkstra
Cleanup inconsistent use of __extension__. ChangeLog: 2014-09-04 Wilco Dijkstra * gcc/config/aarch64/aarch64.c: Cleanup use of __extension__. --- gcc/config/aarch64/aarch64.c | 38 +++--- 1 file changed, 11 insertions(+), 27 deletions(-) diff --git a/

[PATCH 2/4] AArch64: Fix cost for Q register moves

2014-09-04 Thread Wilco Dijkstra
This patch fixes a bug in aarch64_register_move_cost(): GET_MODE_SIZE is in bytes not bits. As a result the FP2FP cost doesn't need to be set to 4 to catch the special case for Q register moves. ChangeLog: 2014-09-04 Wilco Dijkstra * gcc/config/aarch64/aarch64.c (aarch64_register_mov

[PATCH 1/4] AArch64: Fix register_move_cost

2014-09-04 Thread Wilco Dijkstra
Hi, This is a set of patches improving register costs on AArch64. The first fixes aarch64_register_move_cost() to support CALLER_SAVE_REGS and POINTER_REGS so costs are calculated correctly in the register allocator. ChangeLog: 2014-09-04 Wilco Dijkstra * gcc/config/aarch64/aarch64.c

[PATCH] Improve prepare_shrink_wrap to sink more instructions

2014-09-04 Thread Jiong Wang
currently, the instruction sink in "prepare_shrink_wrap" is a bit conservative that some further optimization opportunities have been missed. given the prologue use register A by: (store A, [sp + offset]) then given the entry_basic_block contains a simply register copy like: (move A, B) c

[PATCH, AArch64] Enable shrink wrap

2014-09-04 Thread Jiong Wang
this patch enabled stack shrink-wrap support on AArch64. no regression on aarch64-none-elf bare-metal. aarch64 bootstrap OK. ok to install? 2014-09-04 Renlin Li gcc/ * config/aarch64/aarch64.md (return): New expand. (simple_return): Likewise. * config/aarch64/aarch64.c (aarch64_use_retur

[PATCH] Fix register corruption bug in ree

2014-09-04 Thread Wilco Dijkstra
Hi, While changing register costs for AArch64 (patches to follow), the test gcc.target/aarch64/vect-mult.c fails. This is caused by ree inserting a TI mode copy of a DI register. Since TI mode requires 2 registers, this results in silent corruption of the 2nd register. After split2: (insn 149

Re: RFC: Patch for switch elimination (PR 54742)

2014-09-04 Thread Richard Biener
On Thu, Sep 4, 2014 at 3:06 PM, Jakub Jelinek wrote: > On Thu, Sep 04, 2014 at 02:57:47PM +0200, Richard Biener wrote: >> Note that I think we arrived at the point where the loop structure >> has annotations that are required for correctness :/ (simduid >> for example - if that goes away we do ..

[Patch AArch64] Add support for crtfastmath.c

2014-09-04 Thread Ramana Radhakrishnan
Hi, It's worth setting up the FPCR to flush to zero, round to nearest modes especially under Ofast and ffast-math. This patch attempts to do so and additionally cleans up ENDFILE_SPEC for AArch64 GNU/Linux targets. Built and tested cross with aarch64-none-elf. A native bootstrap and test

Re: [PATCH, rs6000] Handle vec_extract and splat patterns in analyze_swaps

2014-09-04 Thread David Edelsohn
On Thu, Sep 4, 2014 at 12:28 AM, Bill Schmidt wrote: > Hi, > > This patch adds more special handling to analyze_swaps to allow us to > improve more computations. Previously I had disallowed VEC_SELECT in > all cases. This is now changed to allow a select of a single lane, > either for an extract

  1   2   >