Re: [GSoC] replacing op in c_expr

2014-08-03 Thread Prathamesh Kulkarni
On Tue, Jul 29, 2014 at 4:29 PM, Richard Biener richard.guent...@gmail.com wrote: On Mon, Jul 28, 2014 at 10:02 PM, Prathamesh Kulkarni bilbotheelffri...@gmail.com wrote: I am having few issues replacing op in c_expr. I thought of following possibilities: a) create a new veccpp_token vector

[GSoC] doubts in writing rotate patterns

2014-08-03 Thread Prathamesh Kulkarni
This patch adds the following rotate pattern: ((T) ((T2) X CNT1)) + ((T) ((T2) X CNT2)) iff CNT1 + CNT2 == B Depends on the following patch (not yet committed): https://gcc.gnu.org/ml/gcc-patches/2014-08/msg00128.html * genmatch.c (dt_simplify::capture_max): Change value to 6. *

Re: writing patterns

2014-08-03 Thread Prathamesh Kulkarni
On Thu, Jul 31, 2014 at 2:49 PM, Prathamesh Kulkarni bilbotheelffri...@gmail.com wrote: On Thu, Jul 31, 2014 at 2:44 PM, Richard Biener richard.guent...@gmail.com wrote: On Thu, Jul 31, 2014 at 11:09 AM, Prathamesh Kulkarni bilbotheelffri...@gmail.com wrote: On Thu, Jul 31, 2014 at 2:15 PM,

gcc-4.10-20140803 is now available

2014-08-03 Thread gccadmin
Snapshot gcc-4.10-20140803 is now available on ftp://gcc.gnu.org/pub/gcc/snapshots/4.10-20140803/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 4.10 SVN branch with the following options: svn://gcc.gnu.org/svn/gcc/trunk

Re: Implementation of Zeta functions in libstdc++

2014-08-03 Thread Florian Goth
Hi! Thanks Ed for the kind reception of this idea. To show what I have done so far I have set up a git repository here: https://github.com/CaptainSifff/zeta Obviously it is not yet in a state where it looks like sth. from the standard library; it still uses my conventions right now. This commit

Re: Implementation of Zeta functions in libstdc++

2014-08-03 Thread Ed Smith-Rowland
On 08/03/2014 08:28 PM, Florian Goth wrote: Hi! Thanks Ed for the kind reception of this idea. To show what I have done so far I have set up a git repository here: https://github.com/CaptainSifff/zeta Obviously it is not yet in a state where it looks like sth. from the standard library; it

[GSoC] Status - 20140804

2014-08-03 Thread Maxim Kuvyrkov
Hi Community, The Google Summer of Code is in its final month, and our students made good progress on their projects. I very much hope that the talented developers who worked on GCC in this year's program will continue to hack on and contribute to GCC outside of the GSoC program! It's has

gcc.gnu.org/simtest-howto.html (was: Question for ARM person re asm_fprintf)(

2014-08-03 Thread Gerald Pfeifer
On Wed, 23 Jul 2014, Hans-Peter Nilsson wrote: The page https://gcc.gnu.org/simtest-howto.html is unfortunately out of date (e.g. binutils+sim now lives in the same git repo) but it gives you the idea. Sooo, any volunteer to update this page? Doesn't have to be perfect, even incremental

[Bug target/55212] [SH] Switch from IRA to LRA

2014-08-03 Thread olegendo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212 --- Comment #1 from Oleg Endo olegendo at gcc dot gnu.org --- Author: olegendo Date: Sun Aug 3 09:47:15 2014 New Revision: 213524 URL: https://gcc.gnu.org/viewcvs?rev=213524root=gccview=rev Log: PR target/55212 Create branch. Added:

[Bug pch/62001] Many tests fail with PCH

2014-08-03 Thread smith_winston_6079 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62001 --- Comment #1 from Winston Smith smith_winston_6079 at hotmail dot com --- The same for g++: Running /home/zoidberg/1/gcc-4.9.1/gcc/testsuite/g++.dg/pch/pch.exp ... FAIL: g++.dg/pch/array-1.C -g -I. -Dwith_PCH (internal compiler error) FAIL:

[Bug pch/62001] New: Many tests fail with PCH

2014-08-03 Thread smith_winston_6079 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62001 Bug ID: 62001 Summary: Many tests fail with PCH Product: gcc Version: 4.9.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: pch Assignee:

[Bug pch/62001] Many tests fail with PCH

2014-08-03 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62001 --- Comment #2 from Dominique d'Humieres dominiq at lps dot ens.fr --- As reported in PR61250, I see also random PCH failures on darwin, but much fewer: g++.dg/pch/pch.C and gcc.dg/pch/save-temps-1.c only.

[Bug fortran/61999] [4.8/4.9/4.10 Regression] `gfc_simplify_dot_product` causes ICE for constant arguments

2014-08-03 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61999 --- Comment #2 from Dominique d'Humieres dominiq at lps dot ens.fr --- The ICE is due to the line gcc_assert (gfc_compare_types (vector_a-ts, vector_b-ts)); i.e., gfc_simplify_dot_product works only if the two vectors have the same type.

[Bug other/62002] New: -fcilkplus switch breaks format attribute.

2014-08-03 Thread astellar at ro dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62002 Bug ID: 62002 Summary: -fcilkplus switch breaks format attribute. Product: gcc Version: 4.9.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other

[Bug other/62002] -fcilkplus switch breaks format attribute.

2014-08-03 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62002 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last

[Bug c/53119] -Wmissing-braces wrongly warns about universal zero initializer {0}

2014-08-03 Thread rose.garcia-eggl2fk at yopmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 Rose Garcia rose.garcia-eggl2fk at yopmail dot com changed: What|Removed |Added CC|

[Bug c/53119] -Wmissing-braces wrongly warns about universal zero initializer {0}

2014-08-03 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 --- Comment #17 from Marek Polacek mpolacek at gcc dot gnu.org --- I'm sorry, GCC 4.7 branch is already closed.

[Bug c/53119] -Wmissing-braces wrongly warns about universal zero initializer {0}

2014-08-03 Thread rose.garcia-eggl2fk at yopmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 --- Comment #18 from Rose Garcia rose.garcia-eggl2fk at yopmail dot com --- Created attachment 33229 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=33229action=edit backported fix for gcc 4.8.3 oh, is that so? that's unfortunate, as gcc

[Bug c++/58704] [c++11] ICE initializing array member of template class

2014-08-03 Thread reichelt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58704 Volker Reichelt reichelt at gcc dot gnu.org changed: What|Removed |Added Target Milestone|4.10.0 |4.9.1

[Bug gcov-profile/61889] [4.10 Regression] gcov-tool.c uses nftw, ftw.h

2014-08-03 Thread rai...@emrich-ebersheim.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61889 --- Comment #3 from Rainer Emrich rai...@emrich-ebersheim.de --- -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Am 23.07.2014 17:17, schrieb ktietz at gcc dot gnu.org: --- Comment #2 from Kai Tietz ktietz at gcc dot gnu.org --- Yes, issue is

[Bug c++/60189] ICE with invalid use of _Cilk_sync

2014-08-03 Thread reichelt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60189 Volker Reichelt reichelt at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED

[Bug fortran/61768] Fortran compiler goes into infinite loop while compiling SPEC2000 applu.f

2014-08-03 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61768 Dominique d'Humieres dominiq at lps dot ens.fr changed: What|Removed |Added Status|UNCONFIRMED |WAITING

[Bug c++/62003] New: Possible bug in std::complex

2014-08-03 Thread wilczak at ii dot uj.edu.pl
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62003 Bug ID: 62003 Summary: Possible bug in std::complex Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++

[Bug rtl-optimization/62004] New: dead type-unsafe load replaces type-safe load

2014-08-03 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62004 Bug ID: 62004 Summary: dead type-unsafe load replaces type-safe load Product: gcc Version: 4.8.4 Status: UNCONFIRMED Severity: normal Priority: P3 Component:

[Bug tree-optimization/61964] [4.8/4.9 regression] krb5 database propagation enters infinite loop; reduced test case

2014-08-03 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61964 --- Comment #18 from vries at gcc dot gnu.org --- (In reply to Richard Biener from comment #13) (In reply to vries from comment #12) Furthermore, I suspect that a similar issue exists for loads, I'll look into that. I don't think so. How

[C PATCH] Better location for check_case_value

2014-08-03 Thread Marek Polacek
Bootstrapped/regtested on x86_64-linux, applying to trunk. 2014-08-02 Marek Polacek pola...@redhat.com * c-common.c (check_case_value): Add location_t parameter. Use it. (c_add_case_label): Pass loc to check_case_value. * gcc.dg/case-bogus-1.c: New test. diff --git

[PATCH 0/50] Faster for_each_rtx-like iterators

2014-08-03 Thread Richard Sandiford
In May I posted an RFC about a worklist-based replacement for for_each_rtx: https://gcc.gnu.org/ml/gcc-patches/2014-05/msg00435.html (see there for rationale). This series is the first part of the process. It adds the new iterators and converts all for_each_rtx users in generic code. If these

[PATCH 01/50] Add rtl-iter.h

2014-08-03 Thread Richard Sandiford
This patch adds the new iterators. gcc/ * rtl-iter.h: New file. * rtlanal.c: Include it. (rtx_all_subrtx_bounds, rtx_nonconst_subrtx_bounds): New variables. (generic_subrtx_iterator T::add_single_to_queue) (generic_subrtx_iterator T::add_subrtxes_to_queue)

[PATCH 02/50] alias.c:refs_newer_value_p

2014-08-03 Thread Richard Sandiford
gcc/ * alias.c: Include rtl-iter.h. (refs_newer_value_cb): Delete. (refs_newer_value_p): Use FOR_EACH_SUBRTX instead of for_each_rtx. Index: gcc/alias.c === --- gcc/alias.c 2014-08-03 11:25:10.551960499 +0100

[PATCH 03/50] bt-load.c:find_btr_use

2014-08-03 Thread Richard Sandiford
With the move away from for_each_rtx and the separate static variable used to communicate the found reference, there's not really any need to keep btr_referenced_p and find_btr_use separate. gcc/ * bt-load.c: Include rtl-iter.h. (btr_reference_found, find_btr_reference,

[PATCH 04/50] caller-save.c:add_used_regs

2014-08-03 Thread Richard Sandiford
As noted in https://gcc.gnu.org/ml/gcc-patches/2014-02/msg01391.html a bitmap-related cleanup turned add_used_regs_1 into a no-op for pseudo registers, because the result of: regno = reg_renumber[regno]; is never used. This patch does as Steven requested and adds an assert that no allocated

[PATCH 05/50] calls.c:internal_arg_pointer_based_exp

2014-08-03 Thread Richard Sandiford
gcc/ * calls.c: Include rtl-iter.h. (internal_arg_pointer_based_exp_1): Delete. (internal_arg_pointer_based_exp): Take a const_rtx. Use FOR_EACH_SUBRTX to iterate over subrtxes. Index: gcc/calls.c ===

[PATCH 06/50] combine.c:unmentioned_reg_p

2014-08-03 Thread Richard Sandiford
gcc/ * combine.c: Include rtl-iter.h. (unmentioned_reg_p_1): Delete. (unmentioned_reg_p): Use FOR_EACH_SUBRTX rather than for_each_rtx. Don't handle null rtxes. Index: gcc/combine.c === ---

[PATCH 07/50] combine.c:record_truncated_values

2014-08-03 Thread Richard Sandiford
gcc/ * combine.c (record_truncated_value): Turn from being a for_each_rtx callback to a function that takes an rtx and returns a bool (record_truncated_values): Use FOR_EACH_SUBRTX_VAR instead of for_each_rtx. Index: gcc/combine.c

[PATCH 08/50] Faster for_each_rtx-like iterators

2014-08-03 Thread Richard Sandiford
gcc/ * combine-stack-adj.c: Include rtl-iter.h. (record_stack_refs_data): Delete. (record_stack_refs): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Take a pointer to the reflist. Invert sense of return value

[PATCH 09/50] cfgcleanup.c:mentions_nonequal_regs

2014-08-03 Thread Richard Sandiford
gcc/ * cfgcleanup.c: Include rtl-iter.h. (mentions_nonequal_regs): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (thread_jump): Update accordingly. Index: gcc/cfgcleanup.c

[PATCH 10/50] cse.c:approx_reg_cost

2014-08-03 Thread Richard Sandiford
gcc/ * cse.c: Include rtl-iter.h. (approx_reg_cost_1): Delete. (approx_reg_cost): Use FOR_EACH_SUBRTX instead of for_each_rtx. Don't handle null rtxes. Index: gcc/cse.c === --- gcc/cse.c 2014-08-03

[PATCH 11/50] Faster for_each_rtx-like iterators

2014-08-03 Thread Richard Sandiford
The order of the arguments matches canon_anti_dependence rather than the order of the old structure fields. gcc/ * cse.c (check_dependence_data): Delete. (check_dependence): Change from being a for_each_rtx callback to being a function that examines all subrtxes itself.

[PATCH 12/50] cse.c:check_for_label_ref

2014-08-03 Thread Richard Sandiford
gcc/ * cse.c (check_for_label_ref): Move earlier in file. Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (cse_extended_basic_block): Update call accordingly. Index: gcc/cse.c

[PATCH 13/50] cse.c:is_dead_debug_insn

2014-08-03 Thread Richard Sandiford
gcc/ * cse.c (is_dead_reg): Change argument to const_rtx. (dead_debug_insn_data): Delete. (is_dead_debug_insn): Expand commentary. Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Take the fields of

[PATCH 14/50] cse.c:cse_change_cc_mode

2014-08-03 Thread Richard Sandiford
gcc/ * cse.c (change_cc_mode_args): Delete. (cse_change_cc_mode): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Take the fields of change_cc_mode_args as argument and return void. (cse_change_cc_mode_insn):

[PATCH 15/50] ddg.c:mark_mem_use

2014-08-03 Thread Richard Sandiford
gcc/ * ddg.c: Include rtl-iter.h. (mark_mem_use_1): Rename to... (mark_mem_use): ...deleting old mark_mem_use. Use FOR_EACH_SUBRTX instead of for_each_rtx. (mem_read_insn_p): Update accordingly. Index: gcc/ddg.c

[PATCH 16/50] ddg.c:insns_may_alias_p

2014-08-03 Thread Richard Sandiford
gcc/ * ddg.c (walk_mems_2, walk_mems_1): Delete. (insns_may_alias_p): Use FOR_EACH_SUBRTX rather than for_each_rtx to iterate over subrtxes. Return a bool rather than an int. Index: gcc/ddg.c === ---

[PATCH 17/50] df-problems.c:find_memory

2014-08-03 Thread Richard Sandiford
This also fixes what I think is a bug: find_memory used to stop at the first MEM it found. If that MEM was nonvolatile and nonconstant, we'd return MEMREF_NORMAL even if there was another volatile MEM. gcc/ * df-problems.c: Include rtl-iter.h. (find_memory): Turn from being a

[PATCH 18/50] dse.c:check_mem_read_use

2014-08-03 Thread Richard Sandiford
gcc/ * dse.c: Include rtl-iter.h. (check_mem_read_rtx): Change void * parameter to real type. Remove return value. (check_mem_read_use): Fix comment. Use FOR_EACH_SUBRTX_PTR instead of for_each_rtx. Don't handle null rtxes. Index: gcc/dse.c

[PATCH 19/50] dwarf2out.c:const_ok_for_output

2014-08-03 Thread Richard Sandiford
gcc/ * dwarf2out.c: Include rtl-iter.h. (const_ok_for_output_1): Take the rtx instead of a pointer to it. Remove unused data parameter. Return a bool, inverting the result so that 0/false means not ok. (const_ok_for_output): Update accordingly. Use

Fix -Wsuggest-final-types warning

2014-08-03 Thread Jan Hubicka
Hi, this patch fixes thinko and makes the type warned about to be output right. Thanks to Trevor for noticing that. Bootstrapped/regtested x86_64-linux, comitted. Honza * ipa-devirt.c (odr_type_warn_count): Add type. (possible_polymorphic_call_targets): Set it.

[PATCH 20/50] dwarf2out.c:resolve_one_addr

2014-08-03 Thread Richard Sandiford
gcc/ * dwarf2out.c (resolve_one_addr): Remove unused data parameter. Return a bool, inverting the result so that 0/false means not ok. Use FOR_EACH_SUBRTX_PTR instead of for_each_rtx to iterate over subrtxes of a CONST. (mem_loc_descriptor,

Re: [GSoC] checking for the loop parallelism

2014-08-03 Thread Roman Gareev
This looks very similar to what we reported to the isl mailing list. It is definitely not the best test case for the parallelism patch. In fact, I doubt this requires the parallelism test at all. I've found out, that Graphite generates the expected code using the separate option for all

[PATCH 21/50] Faster for_each_rtx-like iterators

2014-08-03 Thread Richard Sandiford
The switch statement in the old code seemed overly cautious. It's well established elsewhere that the first operand of an RTX_AUTOINC is the automodified register. If anyone wanted to add a new code for which that wasn't true they should (a) reconsider or (b) go through all RTX_AUTOINCs as a

[PATCH 22/50] final.c:mark_symbol_refs_as_used

2014-08-03 Thread Richard Sandiford
gcc/ * final.c: Include rtl-iter.h. (mark_symbol_ref_as_used): Delete. (mark_symbol_refs_as_used): Use FOR_EACH_SUBRTX instead of for_each_rtx. Index: gcc/final.c === --- gcc/final.c 2014-08-03

[PATCH 23/50] function.c:instantiate_virtual_regs_in_rtx

2014-08-03 Thread Richard Sandiford
gcc/ * function.c: Include rtl-iter.h (instantiate_virtual_regs_in_rtx): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Return the changed flag. (instantiate_virtual_regs_in_insn, instantiate_decl_rtl)

Re: [GSoC] checking for the loop parallelism

2014-08-03 Thread Roman Gareev
Sorry for misprints Graphite successfully passes all the tests from libgomp/testsuite/libgomp.graphite except graphite-isl-ast-to-gimple.c and graphite-poly.h except force-parallel-5.c and force-parallel-8.c -- Cheers, Roman Gareev.

[PATCH 24/50] fwprop.c:varying_mem_p

2014-08-03 Thread Richard Sandiford
gcc/ * fwprop.c: Include rtl-iter.h. (varying_mem_p): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (propagate_rtx): Update accordingly. Index: gcc/fwprop.c

[PATCH 25/50] ira.c:set_paradoxical_subreg

2014-08-03 Thread Richard Sandiford
gcc/ * ira.c: Include rtl-iter.h. (set_paradoxical_subreg): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Remove handling of null rtxes. (update_equiv_regs): Update call accordingly. Index: gcc/ira.c

[PATCH 26/50] jump.c:returnjump_p

2014-08-03 Thread Richard Sandiford
gcc/ * jump.c: Include rtl-iter.h. (returnjump_p_1): Delete. (returnjump_p): Use FOR_EACH_SUBRTX rather than for_each_rtx. Remove handling of null rtxes. Index: gcc/jump.c === --- gcc/jump.c

[PATCH 27/50] jump.c:eh_returnjump_p

2014-08-03 Thread Richard Sandiford
gcc/ * jump.c (eh_returnjump_p_1): Delete. (eh_returnjump_p): Use FOR_EACH_SUBRTX rather than for_each_rtx. Remove handling of null rtxes. Index: gcc/jump.c === --- gcc/jump.c 2014-08-03 11:25:27.442127486

[PATCH 28/50] loop-iv.c:replace_single_def_regs

2014-08-03 Thread Richard Sandiford
gcc/ * loop-iv.c: Include rtl-iter.h. (find_single_def_src): New function. (replace_single_def_regs): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (replace_in_expr, simplify_using_initial_values): Update

[PATCH 29/50] loop-iv.c:altered_reg_used

2014-08-03 Thread Richard Sandiford
gcc/ * loop-iv.c (altered_reg_used): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (simplify_using_condition, simplify_using_initial_values): Update accordingly. Index: gcc/loop-iv.c

[PATCH 31/50] lower-subreg.c:resolve_debug

2014-08-03 Thread Richard Sandiford
gcc/ * lower-subreg.c (adjust_decomposed_uses): Delete. (resolve_debug): Use FOR_EACH_SUBRTX_PTR rather than for_each_rtx. Remove handling of null rtxes. Index: gcc/lower-subreg.c === --- gcc/lower-subreg.c

[PATCH 30/50] lower-subreg.c:resolve_subreg_use

2014-08-03 Thread Richard Sandiford
gcc/ * lower-subreg.c: Include rtl-iter.h. (resolve_subreg_use): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Remove handling of null rtxes. (resolve_reg_notes, resolve_simple_move): Update accordingly.

[PATCH 32/50] lower-subreg.c:find_decomposable_subregs

2014-08-03 Thread Richard Sandiford
Mostly just reindentation. gcc/ * lower-subreg.c (find_decomposable_subregs): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Remove handling of null rtxes. (decompose_multiword_subregs): Update accordingly. Index:

[PATCH 33/50] reg-stack.c:subst_all_stack_regs_in_debug_insn

2014-08-03 Thread Richard Sandiford
gcc/ * reg-stack.c: Include rtl-iter.h. (subst_stack_regs_in_debug_insn): Delete. (subst_all_stack_regs_in_debug_insn): Use FOR_EACH_SUBRTX_PTR instead of for_each_rtx. Index: gcc/reg-stack.c === ---

[PATCH 34/50] regcprop.c:kill_autoinc_value

2014-08-03 Thread Richard Sandiford
gcc/ * regcprop.c: Include rtl-iter.h. (kill_value): Take a const_rtx. (kill_autoinc_value): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (copyprop_hardreg_forward_1): Update accordingly. Index:

[PATCH 35/50] regcprop.c:cprop_find_used_regs

2014-08-03 Thread Richard Sandiford
gcc/ * regcprop.c (cprop_find_used_regs_1): Delete. (cprop_find_used_regs): Use FOR_EACH_SUBRTX instead of for_each_rtx. Index: gcc/regcprop.c === --- gcc/regcprop.c 2014-08-03 11:25:29.603148851 +0100 +++

[PATCH 36/50] reload1.c:note_reg_elim_costly

2014-08-03 Thread Richard Sandiford
gcc/ * reload1.c: Include rtl-iter.h. (note_reg_elim_costly): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (eliminate_regs_1, elimination_costs_in_insn): Update accordingly. Index: gcc/reload1.c

Re: [GSoC] checking for the loop parallelism

2014-08-03 Thread Tobias Grosser
On 03/08/2014 16:05, Roman Gareev wrote: This looks very similar to what we reported to the isl mailing list. It is definitely not the best test case for the parallelism patch. In fact, I doubt this requires the parallelism test at all. I've found out, that Graphite generates the expected code

[PATCH 37/50] rtlanal.c:rtx_referenced_p

2014-08-03 Thread Richard Sandiford
The old function handled constant pool SYMBOL_REFs by going straight to the underlying constant, which meant you couldn't test for the SYMBOL_REF itself. gcc/ * rtl.h (get_pool_constant, rtx_referenced_p): Replace rtx parameters with const_rtx parameters. * varasm.c

[PATCH 38/50] rtlanal.c:replace_label

2014-08-03 Thread Richard Sandiford
The main change here is to handle ADDR_VEC and ADDR_DIFF_VECs specially, since they can have many elements and are a relatively important case for this function. This is for speed rather than correctness. gcc/ * rtl.h (replace_label_data): Delete. (replace_label): Take the old

[PATCH 39/50] rtlanal.c:record_hard_reg_uses

2014-08-03 Thread Richard Sandiford
find_all_hard_regs seems like a useful function so I split it out of the note_uses callback and exposed it in rtl.h. I have (or had) other patches that make use of it. gcc/ * rtl.h (find_all_hard_regs): Declare. * rtlanal.c (find_all_hard_regs): New function.

[PATCH 40/50] rtlanal.c:for_each_inc_dec

2014-08-03 Thread Richard Sandiford
The old for_each_inc_dec callback had a for_each_rtx-like return value, with 0 being returned directly, 0 meaning continue and 0 meaning skip subrtxes. But there's no reason to distinguish the latter two cases since auto-inc/dec expressions aren't allowed to contain other auto-inc/dec

[PATCH 41/50] rtlanal.c:tls_referenced_p

2014-08-03 Thread Richard Sandiford
gcc/ * rtl.h (tls_referenced_p): Take a const_rtx rather than an rtx. * rtlanal.c (tls_referenced_p_1): Delete. (tls_referenced_p): Take a const_rtx rather than an rtx. Use FOR_EACH_SUBRTX rather than for_each_rtx. Index: gcc/rtl.h

[PATCH 42/50] sel-sched.c:count_occurrences_equiv

2014-08-03 Thread Richard Sandiford
gcc/ * sel-sched.c: Include rtl-iter.h (count_occurrences_1): Delete. (count_occurrences_equiv): Turn rtxes into const_rtxes. Use FOR_EACH_SUBRTX rather than for_each_rtx. Index: gcc/sel-sched.c ===

[PATCH 43/50] store-motion.c:extract_mentioned_regs

2014-08-03 Thread Richard Sandiford
gcc/ * store-motion.c: Include rtl-iter.h. (extract_mentioned_regs_1): Delete. (extract_mentioned_regs): Use FOR_EACH_SUBRTX_VAR rather than for_each_rtx to iterate over subrtxes. Index: gcc/store-motion.c

[PATCH 44/50] var-tracking.c:rtx_debug_expr_p

2014-08-03 Thread Richard Sandiford
gcc/ * var-tracking.c: Include rtl-iter.h. (rtx_debug_expr_p): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (use_type): Update accordingly. Index: gcc/var-tracking.c

[PATCH 45/50] var-tracking.c:non_suitable_const

2014-08-03 Thread Richard Sandiford
gcc/ * var-tracking.c (non_suitable_const): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. Remove handling of null rtxes. (add_uses): Update accordingly. Index: gcc/var-tracking.c

[PATCH 46/50] var-tracking.c:use_narrower_mode_test

2014-08-03 Thread Richard Sandiford
gcc/ * var-tracking.c (use_narrower_mode_test): Turn from being a for_each_rtx callback to being a function that examines each subrtx itself. (adjust_mems): Update accordingly. Index: gcc/var-tracking.c

[PATCH 47/50] var-tracking.c:add_uses

2014-08-03 Thread Richard Sandiford
gcc/ * var-tracking.c (add_uses): Take an rtx rather than an rtx *. Give real type of data parameter. Remove return value. (add_uses_1): Use FOR_EACH_SUBRTX_VAR rather than for_each_rtx to iterate over subrtxes. Index: gcc/var-tracking.c

[PATCH 48/50] varasm.c:const_rtx_hash

2014-08-03 Thread Richard Sandiford
const_rtx_hash_1 had code to hash all elements of a CONST_VECTOR, but const_rtx_hash also hashes all subrtxes, so we'd end up hashing the same thing twice. This looked unintentional so I just removed the CONST_VECTOR case. If instead it was a deliberate decision then I think it deserves a

[PATCH 49/50] varasm.c:mark_constants

2014-08-03 Thread Richard Sandiford
gcc/ * varasm.c (mark_constant): Replace this for_each_rtx callback with... (mark_constants_in_pattern): ...this new function to iterate over all the subrtxes. (mark_constants): Update accordingly. Index: gcc/varasm.c

[PATCH 50/50] varasm.c:compute_reloc_for_rtx

2014-08-03 Thread Richard Sandiford
There's no point calling for_each_rtx/FOR_EACH_SUBRTX on a LABEL_REF or SYMBOL_REF. We can just handle them directly instead. gcc/ * varasm.c (compute_reloc_for_rtx_1): Take a const_rtx. Remove the pointer to the cumulative reloc value and return the value for this

[RFA] Introdue warning_n; fix singulars in the final keyword wanrings

2014-08-03 Thread Jan Hubicka
* diagnostic.c (warning_n): New function. * diagnostic-core.h (warning_n): Declare. * ipa-devirt.c (ipa_devirt): Handle singulars correctly; output dynamic counts when available. Index: diagnostic.c ===

[PATCH] Add D demangling support to libiberty

2014-08-03 Thread Iain Buclaw
Hi, This adds a demangler for the D programming language to libiberty, intended to be used in GDB and Binutils. GDB already has a trimmed down implementation of this, but have been advised that here would be a better location to house it. Notes that I think are of interest / questions I have

Aw: RE: RE: Re: [MIPS r5900] libgcc floating point fixes

2014-08-03 Thread Jürgen Urban
Hello, Fixes for high level libraries should also be high level (dmult vs __FLT_MAX_EXP__); i.e. there should be no change in a different package which is specific for MIPS. The type double should stay double and is handled without a problem when the FPU is 32 bit in ABI

Replacement of isl_int by isl_val

2014-08-03 Thread Mircea Namolaru
Hello, In the isl library used by Graphite, isl_val replaces isl_int (that become obsolete). This patch implements the required changes in Graphite. No regressions for c/c++/fortran on x86-64 Linux. Mircea Index: gcc/graphite-poly.c

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

2014-08-03 Thread Kugan
On 02/08/14 02:03, Kugan wrote: if (rhs_uns) return wi::ge_p (min, 0); // if min = 0 then range contains positive values else return wi::le_p (max, wi::max_value (TYPE_PRECISION (TREE_TYPE (ssa)), SIGNED); // if max = signed-max-of-type then range doesn't need sign-extension I

[PATCH 4.9] libstdc++ pretty-printers: Backport Python 3 support from mainline

2014-08-03 Thread Samuel Bronson
Since Jonathan Wakely independantly committed some of the changes I was preparing, I had to backport two commits, r210625 and r212453 (git commits 3a30bda and b0a6074). 2014-08-02 Samuel Bronson naes...@gmail.com Backport r212453 from trunk 2014-07-11 Samuel Bronson

Re: [PATCH] Add statistical printout of rank_for_schedule decisions

2014-08-03 Thread Maxim Kuvyrkov
On Jul 17, 2014, at 5:34 AM, Jeff Law l...@redhat.com wrote: On 07/13/14 22:17, Maxim Kuvyrkov wrote: Hi, This patch adds dump printouts for scheduling heuristics in rank_for_schedule. Rank_for_schedule is one of the cornerstones of haifa scheduler, yet its decisions are hard to track and