X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=fa98b2eaa221909a59b4049fe04282a50916da29;hp=a489883ef98de5d118a152fe56d2ef0c5ca5d260;hb=fd635a4c529538c1dbc285f1d5f83cc43f171b70;hpb=68817d05993e57260e78c2f260d9d6070e237588 diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a489883ef98..fa98b2eaa22 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,8 +1,246 @@ -2010-04-09 Hariharan Sandanagobalane +2010-04-12 Rainer Orth + + * doc/contrib.texi (Contributors, Rainer Orth): Update. + +2010-04-12 Kai Tietz + + PR/43702 + * config/i386/i386.c (x86_this_parameter): Handle aggregate for + __thiscall convention. + +2010-04-12 Steve Ellcey + + * 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 + + * function.c (assign_parms_initialize_all): Add unused attribute + to fntype. + +2010-04-12 Richard Guenther + + * 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 + + * 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 + + 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 + + * 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 + + PR c/36774 + * c-decl.c (start_function): Move forward check for nested function. + +2010-04-11 Kaz Kojima + + * 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 + + * 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 + + * config/i386/i386.md (any_shiftrt): New code iterator. + (shiftrt_insn): New code attribute. + (shiftrt): Ditto. + (3): Macroize expander from ashr3 and + lshr3 using any_shiftrt code iterator. + (*3_doubleword): Macroize insn_and_split from + *ashr3_doubleword and *lshr3_doubleword using + any_shiftrt code iterator. + (*3_doubleword peephole2): Macroize peephole2 + pattern from corresponding peephole2 patterns. + (*3_1): Macroize insn from *ashr3_1 + and *lshr3_1 using any_shiftrt code iterator. + (*si3_1_zext): Ditto from *ashrsi3_1_zext + and *lshrsi3_1_zext. + (*qi3_1_slp): Ditto from *ashrqi3_1_slp + and *lshrqi3_1_slp. + (*3_cmp): Ditto from *ashr3_cmp + and *lshr3_cmp. + (*3_cmp_zext): Ditto from *ashr3_cmp_zext + and *lshr3_cmp_zext. + (*3_cconly): Ditto from *ashr3_cconly + and *lshr3_cconly. + +2010-04-11 Uros Bizjak + + * config/i386/i386.md (*ashr3_cconly): Fix wrong mode of + scratch register. + (*lshr3_cconly): Ditto. + +2010-04-11 Uros Bizjak + + * config/i386/i386.md (lshr3): Macroize expander from + lshr{qi,hi,si,di,ti}3_1 using SDWIM mode iterator. + (*lshr3_doubleword): New insn_and_split_pattern. Macroize + pattern from *lshr{di,ti}3_1 and corresponding splitters using + DWI mode iterator. + (*lshr3_doubleword peephole2): Macroize peephole2 pattern + from corresponding peephole2 patterns. + (*lshr3_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. + (*lshr3_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 + and *lshrdi3_cmp_rex64 using SWI mode iterator. + (*lshrsi3_cmp_zext): Merge with *lshrsi3_cmp_one_bit_zext. + (*lshr3_cconly): Merge with *lshr{qi,hi,si}3_one_bit_cconly and + *lshrdi3_one_bit_cconly_rex64. Macroize insn from + *lshr{qi,hi,si}3_cconly and *lshrdi3_cconly_rex64 using + SWI mode iterator. + +2010-04-10 Uros Bizjak + + * config/i386/i386.md (ashr3): Macroize expander from + ashr{qi,hi,si,di,ti}3_1 using SDWIM mode iterator. + (*ashr3_doubleword): New insn_and_split_pattern. Macroize + pattern from *ashr{di,ti}3_1 and corresponding splitters using + DWI mode iterator. + (*ashr3_doubleword peephole2): Macroize peephole2 pattern + from corresponding peephole2 patterns. + (ashrdi3_cvt): Rename from ashrdi3_63_rex64. + (ashrsi3_cvt): Rename from ashrsi3_31. + (*ashrsi3_cvt_zext): Rename from *ashrsi3_31_zext. + (x86_shift_adj_3): Macroize expander from x86_shift_adj_3 + and x86_64_shift_adj_3 using SWI48 mode iterator. + (*ashr3_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. + (*ashr3_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 + and *ashrdi3_cmp_rex64 using SWI mode iterator. + (*ashrsi3_cmp_zext): Merge with *ashrsi3_cmp_one_bit_zext. + (*ashr3_cconly): Merge with *ashr{qi,hi,si}3_one_bit_cconly and + *ashrdi3_one_bit_cconly_rex64. Macroize insn from + *ashr{qi,hi,si}3_cconly and *ashrdi3_cconly_rex64 using + SWI mode iterator. + (sign_extend splitters): Update for renamed ashr{di,si}3_cvt patterns. + * config/i386/i386.c (ix86_split_ashr): Update for renamed + x86_shift_adj_3 expanders. + +2010-04-10 Wei Guozhi + + PR target/42601 + * config/arm/arm.c (arm_pic_static_addr): New function. + (legitimize_pic_address): Call arm_pic_static_addr when it detects + a static symbol. + (arm_output_addr_const_extra): Output expression for new pattern. + * config/arm/arm.md (UNSPEC_SYMBOL_OFFSET): New unspec symbol. + +2010-04-10 Bernd Schmidt + + * ira-costs.c (record_reg_classes): Ignore alternatives that are + not enabled. + + * Makefile.in (web.o): Depend on insn-config.h and $(RECOG_H). + * web.c: Include "insn-config.h" and "recog.h". + (union_match_dups): New function. + (web_main): Call it. + (union_defs): Don't try to recognize match_dups. + + * reload1.c (eliminate_regs_in_insn): Don't restore an operand + if doing so would replace the entire pattern. + +2010-04-09 Uros Bizjak + + PR target/43707 + PR target/43709 + * config/i386/i386.md (*ashl3_doubleword): Split to insn + and splitter pattern. Change splitter operand 1 predicate to + nonmemory_operand. + +2010-04-09 Martin Jambor - * config/picochip/picochip.c (picochip_rtx_costs): Use correct function - template. - (picochip_override_options): Enable section anchors only above O1. + * ipa-cp.c (ipcp_lats_are_equal): Return true also if the two + lattices are addresses of CONST_DECLs with the same initial value. + (ipcp_print_all_lattices): Print values of CONST_DECLs. + * ipa-prop.c (ipa_print_node_jump_functions): Likewise. + +2010-04-09 Eric Botcazou + Bernd Schmidt + + * loop-invariant.c (replace_uses): New static function. + (move_invariant_reg): Use it to ensure we can replace the uses. + +2010-04-09 Hariharan Sandanagobalane + + * config/picochip/picochip.c (picochip_rtx_costs): Use correct + function template. + (picochip_override_options): Enable section anchors only above -O1. (picochip_reorg): Fixed a couple of build warnings. 2010-04-09 Rainer Orth @@ -24,8 +262,7 @@ 2010-04-09 Rainer Orth - * config/sparc/sol2-gld.h: Remove SPARC reference. - Rename ... + * config/sparc/sol2-gld.h: Remove SPARC reference. Rename ... * config/sol2-gld.h: ... here. * config.gcc (sparc*-*-solaris2*): Reflect this. (i[34567]86-*-solaris2*): Use it. @@ -62,21 +299,20 @@ 2010-04-09 Richard Guenther - * tree-pretty-print.c (dump_generic_node): Dump - TYPE_VECTOR_SUBPARTS. + * tree-pretty-print.c (dump_generic_node): Dump TYPE_VECTOR_SUBPARTS. 2010-04-09 Iain Sandoe PR bootstrap/43684 - * varasm.c (default_assemble_visibility): Wrap vars that are + * varasm.c (default_assemble_visibility): Wrap vars that are set, but unused, by targets without GAS. - * config/rs6000/rs6000.c: (paired_emit_vector_compare): + * config/rs6000/rs6000.c: (paired_emit_vector_compare): Remove set, but unused, vars. (rs6000_legitimize_tls_address): Likewise. (altivec_expand_dst_builtin): Likewise. * config/darwin.c (machopic_classify_symbol): Likewise. (machopic_indirection_name): Likewise. - + 2010-04-09 Uros Bizjak * config/i386/i386.md (DWI): New mode iterator. @@ -127,7 +363,7 @@ * tree-vectorizer.h (struct _stmt_vec_info): Document that vectype is the type of the LHS. - (supportable_widening_operation, supportable_narrowing_operation): + (supportable_widening_operation, supportable_narrowing_operation): Get both input and output vector types as arguments. (vect_is_simple_use_1): Declare. (get_same_sized_vectype): Likewise. @@ -168,7 +404,7 @@ (ix86_attribute_table): Add description for thiscall attribute. * config/i386/i386.h (ix86_args): Adjust comment for member fastcall. * doc/extend.texi: Add documentation for thiscall. - + 2010-04-09 Manuel López-Ibáñez PR c++/28584 @@ -213,7 +449,7 @@ * gcc.h (DEFAULT_SWITCH_TAKES_ARG): Delete -b and -V. 2010-04-08 Christian Borntraeger - Wolfgang Gellerich + Wolfgang Gellerich Implement target hook for loop unrolling * target.h (loop_unroll_adjust): Add a new target hook function. @@ -380,7 +616,7 @@ inserting GIMPLE_NOPs into the IL. * tree-ssa-structalias.c (get_constraint_for_component_ref): Explicitly strip handled components and indirect references. - + * fold-const.c (fold_unary_loc): Do not strip qualifiers when folding address expressions. * gimple.c (gimple_ior_addresses_taken_1): Use get_base_address.