OSDN Git Service

2010-04-12 Steve Ellcey <sje@cup.hp.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index b66461c..6d0c44c 100644 (file)
@@ -1,3 +1,127 @@
+2010-04-12  Steve Ellcey  <sje@cup.hp.com>
+
+       * config/pa/pa.c (hppa_legitimize_address): Remove unused variable
+       orig_base.
+       * config/pa/pa.md (call, call_value): Remove unused variable call_insn.
+
+2010-04-12  Steve Ellcey  <sje@cup.hp.com>
+
+       * function.c (assign_parms_initialize_all): Add unused attribute
+       to fntype.
+
+2010-04-12  Richard Guenther  <rguenther@suse.de>
+
+       * gsstruct.def (GSS_CALL): New.
+       * gimple.def (GIMPLE_CALL): Change to GSS_CALL.
+       * gimple.h: Include tree-ssa-alias.h.
+       (struct gimple_statement_call): New.
+       (union gimple_statement_struct_d): Add gimple_call member.
+       (gimple_call_reset_alias_info): Declare.
+       (gimple_call_use_set): New function.
+       (gimple_call_clobber_set): Likewise.
+       * Makefile.in (GIMPLE_H): Add tree-ssa-alias.h.
+       * gimple.c (gimple_call_reset_alias_info): New function.
+       (gimple_build_call_1): Call it.
+       * lto-streamer-in.c (input_gimple_stmt): Likewise.
+       * tree-inline.c (remap_gimple_stmt): Likewise.
+       (expand_call_inline): Remove callused handling.
+       * cfgexpand.c (update_alias_info_with_stack_vars): Likewise.
+       * tree-dfa.c (dump_variable): Likewise.
+       * tree-parloops.c (parallelize_loops): Likewise.
+       * tree-ssa.c (init_tree_ssa): Likewise.
+       (delete_tree_ssa): Likewise.
+       * tree-flow-inline.h (is_call_used): Remove.
+       * tree-flow.h (struct gimple_df): Remove callused member.
+       * tree-nrv.c (dest_safe_for_nrv_p): Adjust predicate.
+       * tree-ssa-alias.c (dump_alias_info): Remove callused handling.
+       (ref_maybe_used_by_call_p_1): Simplify.
+       (call_may_clobber_ref_p_1): Likewise.
+       * tree-ssa-structalias.c (compute_points_to_sets): Set
+       the call stmt used and clobbered sets.
+       * tree-tailcall.c (suitable_for_tail_opt_p): Adjust predicate.
+       (find_tail_calls): Verify the tail call.
+
+2010-04-12  Richard Guenther  <rguenther@suse.de>
+
+       * ipa.c (cgraph_postorder): Adjust postorder to guarantee
+       single-iteration always-inline inlining.
+       * ipa-inline.c (cgraph_mark_inline): Do not return anything.
+       (cgraph_decide_inlining): Do not handle always-inline
+       specially.
+       (try_inline): Remove always-inline cycle detection special case.
+       Do not recurse on always-inlines.
+       (cgraph_early_inlining): Do not iterate if not optimizing.
+       (cgraph_gate_early_inlining): remove.
+       (pass_early_inline): Run unconditionally.
+       (gate_cgraph_decide_inlining): New function.
+       (pass_ipa_inline): Use it.  Do not run the IPA inliner if
+       not inlining or optimizing.
+       (cgraph_decide_inlining_of_small_functions): Also consider
+       always-inline functions.
+       (cgraph_default_inline_p): Return true for nodes which should
+       disregard inline limits.
+       (estimate_function_body_sizes): Assume zero size and time for
+       nodes which are marked as disregarding inline limits.
+       (cgraph_decide_recursive_inlining): Do not perform recursive
+       inlining on always-inline nodes.
+
+2010-04-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/43699
+       * c-typeck.c (c_process_expr_stmt): Call mark_exp_read even
+       for exprs satisfying handled_component_p.
+
+2010-04-12  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * expr.c (categorize_ctor_elements_1): Properly count sub-elements of
+       non-constant aggregate elements.
+
+       * gimplify.c (gimplify_init_constructor): Do not pre-evaluate if this
+       is a real initialization.
+
+2010-04-12  Shujing Zhao  <pearly.zhao@oracle.com>
+
+       PR c/36774
+       * c-decl.c (start_function): Move forward check for nested function.
+
+2010-04-11  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh-protos.h (sh_legitimize_reload_address): Declare.
+       * config/sh/sh.c: Include reload.h.
+       (sh_legitimize_reload_address): New.
+       * config/sh/sh.h (LEGITIMIZE_RELOAD_ADDRESS): Use
+       sh_legitimize_reload_address.
+
+2010-04-11  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
+
+       * config/sh/sh.md (*movqi_pop): New insn pattern.
+       * config/sh/predicates.md (sh_no_delay_pop_operand): New predicate.
+
+2010-04-11  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (any_shiftrt): New code iterator.
+       (shiftrt_insn): New code attribute.
+       (shiftrt): Ditto.
+       (<shiftrt_insn><mode>3): Macroize expander from ashr<mode>3 and
+       lshr<mode>3 using any_shiftrt code iterator.
+       (*<shiftrt_insn><mode>3_doubleword): Macroize insn_and_split from
+       *ashr<mode>3_doubleword and *lshr<mode>3_doubleword using
+       any_shiftrt code iterator.
+       (*<shiftrt_insn><mode>3_doubleword peephole2): Macroize peephole2
+       pattern from corresponding peephole2 patterns.
+       (*<shiftrt_insn><mode>3_1): Macroize insn from *ashr<mode>3_1
+       and *lshr<mode>3_1 using any_shiftrt code iterator.
+       (*<shiftrt_insn>si3_1_zext): Ditto from *ashrsi3_1_zext
+       and *lshrsi3_1_zext.
+       (*<shiftrt_insn>qi3_1_slp): Ditto from *ashrqi3_1_slp
+       and *lshrqi3_1_slp.
+       (*<shiftrt_insn><mode>3_cmp): Ditto from *ashr<mode>3_cmp
+       and *lshr<mode>3_cmp.
+       (*<shiftrt_insn><mode>3_cmp_zext): Ditto from *ashr<mode>3_cmp_zext
+       and *lshr<mode>3_cmp_zext.
+       (*<shiftrt_insn><mode>3_cconly): Ditto from *ashr<mode>3_cconly
+       and *lshr<mode>3_cconly.
+
 2010-04-11  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386.md (*ashr<mode>3_cconly): Fix wrong mode of
        (*lshr<mode>3_1): Merge with *lshr{qi,hi,si}3_1_one_bit and
        *lshrdi3_1_one_bit_rex64. Macroize insn from *lshr{qi,hi,si}3_cmp
        and *lshrdi3_cmp_rex64 using SWI mode iterator.
+       (*lshrsi3_1_zext): Merge with *lshrsi3_1_one_bit_zext.
        (*lshrqi3_1_slp): Merge with *lshrqi3_1_one_bit_slp.
        (*lshr<mode>3_cmp): Merge with *lshr{qi,hi,si}3_one_bit_cmp and
        *lshrdi3_one_bit_cmp_rex64. Macroize insn from *lshr{qi,hi,si}3_cmp
        (*ashr<mode>3_1): Merge with *ashr{qi,hi,si}3_1_one_bit and
        *ashrdi3_1_one_bit_rex64. Macroize insn from *ashr{qi,hi,si}3_cmp
        and *ashrdi3_cmp_rex64 using SWI mode iterator.
+       (*ashrsi3_1_zext): Merge with *ashrsi3_1_one_bit_zext.
        (*ashrqi3_1_slp): Merge with *ashrqi3_1_one_bit_slp.
        (*ashr<mode>3_cmp): Merge with *ashr{qi,hi,si}3_one_bit_cmp and
        *ashrdi3_one_bit_cmp_rex64. Macroize insn from *ashr{qi,hi,si}3_cmp