X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=5f36a0cac8d71eb842c90c3a5747bc6daa3e0618;hp=3050683875635d1955cfd720eceead9e9c16c2cf;hb=85f3d834128261f21fcae4b47c70d8eff569e569;hpb=71ba86a1f5ad6fb009ffde8b076e163133414206 diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 30506838756..5f36a0cac8d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,622 @@ +2011-12-05 Richard Guenther + + * tree-ssa.c (verify_ssa): Verify SSA names in the loop + over all SSA names. Remove SSA operand checking, call + verify_ssa_operands. + * tree-ssa-operands.h (verify_ssa_operands): Declare. + * tree-ssa-operands.c (verify_ssa_operands): New function. + +2011-12-05 Ramana Radhakrishnan + + * config/arm/arm.c (vfp3_const_double_for_fract_bits): Define. + * config/arm/arm-protos.h (vfp3_const_double_for_fract_bits): Declare. + * config/arm/constraints.md ("Dt"): New constraint. + * config/arm/predicates.md + (const_double_vcvt_power_of_two_reciprocal): New. + * config/arm/vfp.md (*arm_combine_vcvt_f32_s32): New. + (*arm_combine_vcvt_f32_u32): New. + +2011-12-05 Richard Guenther + + * cgraph.c (cgraph_create_edge_1): Initialize + call_stmt_cannot_inline_p from the stmt if possible. + (cgraph_make_edge_direct): Likewise. + * gimple-streamer-in.c (input_gimple_stmt): Do not + call gimple_call_set_cannot_inline. + * gimple.h (enum gf_mask): Remove GF_CALL_CANNOT_INLINE, shift + values. + (gimple_call_set_cannot_inline): Remove. + (gimple_call_cannot_inline_p): Likewise. + * ipa-inline-analysis.c (initialize_inline_failed): Look + at the edge call_stmt_cannot_inline_p flag. + * ipa-inline.c (can_inline_edge_p): Likewise. + (early_inliner): Only update the edge flag. + * ipa-prop.c (update_indirect_edges_after_inlining): Likewise. + (ipa_modify_call_arguments): Do not call gimple_call_set_cannot_inline. + * cgraphunit.c (assemble_thunk): Likewise. + * gimple-fold.c (gimple_fold_call): Likewise. + + * tree.h (CALL_CANNOT_INLINE_P): Remove. + * tree-mudflap.c (mf_xform_statements): Do not modify alloca calls. + * builtins.c (expand_builtin_alloca): With -fmudflap do not expand + alloca calls inline. + * cfgexpand.c (expand_call_stmt): Do not set CALL_CANNOT_INLINE_P. + * gimple.c (gimple_build_call_from_tree): Do not read + CALL_CANNOT_INLINE_P. + * gimplify.c (gimplify_call_expr): Do not copy CALL_CANNOT_INLINE_P. + +2011-12-05 Jakub Jelinek + Eric Botcazou + + PR middle-end/51323 + PR middle-end/50074 + * calls.c (internal_arg_pointer_exp_state): New variable. + (internal_arg_pointer_based_exp_1, + internal_arg_pointer_exp_scan): New functions. + (internal_arg_pointer_based_exp): New function. + (mem_overlaps_already_clobbered_arg_p): Use it. + (expand_call): Free internal_arg_pointer_exp_state.cache vector + and clear internal_arg_pointer_exp_state.scan_start. + +2011-12-04 Kaz Kojima + + * config/sh/linux.h (TARGET_DEFAULT): Add MASK_SOFT_ATOMIC. + * config/sh/sync.md: New file. + * config/sh/sh.md: Include sync.md. + * config/sh/sh.opt (msoft-atomic): New option. + * doc/invoke.texi (SH Options): Document it. + +2011-12-04 Nathan Sidwell + + * gcov-io.h (struct gcov_info): Replace trailing array with + pointer to array. + * profile.c (branch_prob): Only call renamed + coverage_begin_function once. + * coverage.h (coverage_begin_output): Rename to ... + (coverage_begin_function): ... here. + * coverage.c (struct function_list): Rename to ... + (struct coverage_data): ... this. Update all uses. + (gcov_info_var, gcov_fn_info_type, gcov_fn_info_ptr_type): New + globals. + (bbg_file_opened, bbg_function_announced): Remove. + (get_coverage_counts): Adjust message. + (coverage_begin_ouput): Rename to ... + (coverage_begin_function): ... here. Move file opening to + coverage_init. Adjust for being called only once. + (coverage_end_function): Remove bbg file and inhibit further + output here on error. + (build_info_type): Adjust for change to pointer to array. + (build_info): Receive array of function pointers and adjust. + (create_coverage): Break into ... + (coverage_obj_init, coverage_obj_fn, coverage_obj_finish): + ... these, and adjust. + (coverage_init): Open the notes file here. Tidy. + (coverage_finish): Call coverage_obj_init etc. + +2011-12-04 Ira Rosen + + PR middle-end/51285 + * tree-vect-loop.c (vect_create_epilog_for_reduction): Create exit + phi nodes for outer loop in case of double reduction. + +2011-12-04 Jérémie Detrey + + PR target/51393 + * config/i386/avxintrin.h (_mm256_insert_epi64): Declare second + parameter as long long. + +2011-12-04 Richard Sandiford + + PR middle-end/51351 + * optabs.c (init_sync_libfuncs): Use "or" rather than "ior" + in the external names. + +2011-12-03 Jack Howarth + + * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Pass -no_pie for + non-PIC code when targeting 10.7 or later. + +2011-12-03 Iain Sandoe + + * config/darwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when + Darwin >= 10. + (DARWIN_DYLIB1_SPEC): Do not use -ldylib1.10.5.o when Darwin >= 10. + (DARWIN_CRT1_SPEC): Use -lcrt1.10.6.o when Darwin >= 10. + +2011-12-03 Jakub Jelinek + + * fold-const.c (fold_unary_loc): Fold VEC_UNPACK_LO_EXPR, + VEC_UNPACK_HI_EXPR, VEC_UNPACK_FLOAT_LO_EXPR and + VEC_UNPACK_FLOAT_HI_EXPR with VECTOR_CST argument. + (fold_binary_loc): Fold VEC_PACK_TRUNC_EXPR, + VEC_PACK_FIX_TRUNC_EXPR, VEC_WIDEN_MULT_LO_EXPR + and VEC_WIDEN_MULT_HI_EXPR with VECTOR_CST arguments. + + PR debug/50317 + * tree-ssa.c (target_for_debug_bind): Also allow is_gimple_reg_type + vars that aren't referenced. + (tree-ssa-live.c (remove_unused_locals): Don't clear TREE_ADDRESSABLE + of unreferenced local vars. + * cfgexpand.c (expand_debug_expr): For DEBUG_IMPLICIT_PTR allow also + TREE_ADDRESSABLE vars that satisfy target_for_debug_bind. + +2011-12-03 Anatoly Sokolov + + * config/arm/arm.h (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove. + * config/arm/arm-protos.h (aapcs_libcall_value): Remove. + * config/arm/arm.c (TARGET_FUNCTION_VALUE_REGNO_P): Define. + (arm_libcall_value_1, arm_function_value_regno_p): New function. + (arm_function_value, arm_libcall_value): Use arm_libcall_value_1. + (aapcs_libcall_value): Make static. + (arm_libcall_value): Add static qualifier. + +2011-12-02 Jakub Jelinek + + PR target/51387 + * config/i386/sse.md (mul3 with VI1_AVX2 iterator): For + V32QImode use { 0,2,..,14,32,34,..,46,16,18,..,30,48,50,..,62 } + permutation instead of extract even permutation. + +2011-12-02 Nathan Sidwell + + * gcov.c (struct arc_info): Add is_throw field. + (struct (block_info): Add exceptional field, reduce flags size to + account for it. + (struct function_info): Add has_catch field. + (struct line_info): Add unexceptional field. + (process_file): Call find_exception_blocks if necessary. + (read_graph_file): Adjust. Note if an exceptional edge is seen. + (find_exception_blocks): New. + (add_line_counts): Set line's unexceptional flag if not + exceptional. + (output_branch_count): Note exceptional arcs, lines and blocks. + * gcov-dump.c (tag_arcs): Decode arc flags. + * doc/gcov.texi: Document '=====' lines. + +2011-12-02 Anatoly Sokolov + + * config/ia64/ia64.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS, + PRINT_OPERAND_PUNCT_VALID_P): Remove macros. + * config/ia64/ia64-protos.h (ia64_print_operand, + ia64_print_operand_address): Remove. + * config/ia64/ia64.c (TARGET_PRINT_OPERAND, + TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P): + Define. + (ia64_print_operand_punct_valid_p): New function. + (ia64_print_operand, ia64_print_operand_address): Make static. + +2011-12-02 Michael Meissner + + PR target/51390 + * config/rs6000/rs6000.c (def_builtin): Use the correct field to + figure out the function's attributes. + (struct builtin_description): Mark mask field as const since we no + longer need to modify it for SPE and PAIRED builtins. + +2011-12-02 Joseph Myers + + Revert: + + 2008-09-18 Andrew Pinski + + PR rtl-opt/37451 + * loop-doloop.c (doloop_modify): New argument zero_extend_p and + zero extend count after the correction to it is done. + (doloop_optimize): Update call to doloop_modify, don't zero extend + count before call. + + 2008-11-03 Andrew Pinski + + PR rtl-opt/37782 + * loop-doloop.c (doloop_modify): Add from_mode argument that says what + mode count is in. + (doloop_optimize): Update call to doloop_modify. + +2011-12-02 Richard Guenther + + PR lto/47259 + * ipa.c (varpool_externally_visible_p): Register variables + are always externally visible. + +2011-12-02 Sameera Deshpande + + * gimple-pretty-print.c (dump_gimple_call): Dereference fn only if + non-NULL. + +2011-12-02 Martin Jambor + + PR tree-optimization/50622 + * tree-sra.c (load_assign_lhs_subreplacements): Force gimple operand + if both lacc and racc are grp_partial_lhs. + +2011-12-01 Kaz Kojima + + PR target/50814. + * config/sh/sh.c (expand_ashiftrt): Handle TARGET_SH2A same as + TARGET_SH3. + (shl_sext_kind): Likewise. + * config/sh/sh.h (SH_DYNAMIC_SHIFT_COST): Likewise. + * config/sh/sh.md (ashlsi3_sh2a, ashrsi3_sh2a, lshrsi3_sh2a): Remove. + (ashlsi3_std): Handle TARGET_SH2A same as TARGET_SH3. + (ashlsi3): Likewise. + (ashrsi3_d): Likewise. + (lshrsi3_d): Likewise. + (lshrsi3): Likewise. + +2011-12-01 Diego Novillo + + PR bootstrap/51346 + * ipa-inline.c (can_inline_edge_p): If the edge E has a statement, + use the statement's inline indicator instead of E's. + Remove consistency check. + +2011-12-01 Diego Novillo + + PR bootstrap/51346 + Revert + + 2011-11-29 Diego Novillo + + * gimple.c (gimple_call_set_cannot_inline): Move from gimple.h. + Update field call_stmt_cannot_inline_p from call + graph edge, if needed. + * gimple.h (gimple_call_set_cannot_inline): Move to gimple.c. + +2011-12-01 Nathan Sidwell + + PR gcov-profile/51113 + * coverage.c (build_var): Keep coverage variables static. + +2011-12-01 Jakub Jelinek + + PR tree-optimization/51356 + * tree-vect-patterns.c (vect_recog_bool_pattern): Give up if + vectype doesn't have VECTOR_MODE_P. + + PR debug/50317 + * tree-ssa-dce.c (remove_dead_stmt): Add a debug stmt when removing + as unnecessary a store to a variable with gimple reg type. + * tree-ssa-live.c (remove_unused_locals): Clear TREE_ADDRESSABLE bit + on local unreferenced variables. + * cfgexpand.c (expand_gimple_basic_block): Don't emit DEBUG_INSNs + for !target_for_debug_bind variables. + +2011-12-01 Patrick Marlier + + PR middle-end/51273 + * cgraph.h (cgraph_call_node_duplication_hooks): Declare. + * cgraph.c (cgraph_call_node_duplication_hooks): Make global. + * cgraphunit.c (cgraph_copy_node_for_versioning): Call it. + +2011-12-01 Andrew Pinski + + PR lto/51198 + * tree.c (free_lang_data_in_decl): Clear FIELD_DECL's + DECL_INITIAL also. + +2011-12-01 Jakub Jelinek + + PR tree-optimization/51246 + * tree-predcom.c (replace_ref_with): Handle also clobber on the rhs. + + PR rtl-optimization/51014 + * loop-unroll.c (apply_opt_in_copies): Ignore label DEBUG_INSNs + both from bb and orig_bb. + +2011-12-01 Joern Rennecke + + PR tree-optimization/50802 + * tree-vrp.c (simplify_conversion_using_ranges): Rewrite test + considering what happens to ranges during sign changes and/or + intermediate narrowing conversions. + +2011-11-30 John David Anglin + + PR middle-end/50283 + * config/pa/pa.md (in_branch_delay): Disallow frame related insns. + (in_nullified_branch_delay): Likewise. + (in_call_delay): Likewise. + +2011-11-30 Richard Henderson + + * predict.c (expr_expected_value_1): Assume compare-and-swap builtin + boolean return is true. + +2011-11-30 Jakub Jelinek + + PR rtl-optimization/51044 + * dse.c (emit_inc_dec_insn_before): Ensure new_insn is an instruction + rather than just insn body. + + PR target/50725 + * function.c (thread_prologue_and_epilogue_insns): If + stack_realign_drap, add drap_reg to SET_UP_BY_PROLOGUE + regset. + + PR middle-end/51089 + * tree-eh.c (cleanup_empty_eh_merge_phis): Add check to + avoid creating duplicate edges here. + (cleanup_empty_eh_unsplit): And remove it in the caller. + +2011-11-30 Andrew Pinski + + PR c/51321 + * c-parser.c (c_parser_postfix_expression): Check groktypename results + before looking at the main variant. + +2011-11-30 Jakub Jelinek + + PR rtl-optimization/48721 + * sched-deps.c (sched_analyze_insn): For SIBLING_CALL_P set + reg_pending_barrier to TRUE_BARRIER. + + PR rtl-optimization/48721 + * sched-ebb.c (begin_move_insn): Insert empty unreachable + block after BARRIER if insn is followed by it. + +2011-11-30 Richard Henderson + + * config/sparc/sparc-opts.h (enum sparc_memory_model_type): New. + * config/sparc/sparc.opt (mmemory-model=): New option. + * doc/invoke.texi (Sparc Options): Document it. + * config/sparc/sparc.c (sparc_option_override): Provide default + for sparc_memory_model. + (sparc_emit_membar_for_model): Omit barrier combinations that are + implied by the memory model. + +2011-11-30 Richard Henderson + + * config/sparc/sync.md (I124MODE): New mode iterator. + (memory_barrier): Remove. + (atomic_exchangesi): New. + (swapsi): Rename from *swapsi. + (atomic_test_and_set): New. + (ldstubqi): Rename from *ldstubqi, merge with expander. + (ldstub): Rename from *ldstub, merge with expander. + (sync_lock_test_and_setsi): Remove. + (sync_lock_test_and_set): Remove. + +2011-11-30 Richard Henderson + + * config/sparc/constraints.md ("w"): New. + * config/sparc/predicates.md (mem_noofs_operand): New. + * config/sparc/sparc.c (sparc_expand_compare_and_swap_12): Make static. + Generate the boolean result of the atomic_compare_exchange. + (sparc_expand_compare_and_swap): New. + * config/sparc/sync.md (atomic_compare_and_swap): New. + (atomic_compare_and_swap_1): Rename from + *sync_compare_and_swap, use mem_noofs_operand. + (*atomic_compare_and_swapdi_v8plus): Rename from + *sync_compare_and_swapdi_v8plus, use mem_noofs_operand. + (sync_compare_and_swap): Remove. + (sync_compare_and_swap): Remove. + +2011-11-30 Richard Henderson + + * config/sparc/predicates.md (register_or_v9_zero_operand): New. + * config/sparc/sparc.md (UNSPEC_ATOMIC): New. + * config/sparc/sync.md (atomic_load): New. + (atomic_loaddi_1, atomic_store, atomic_storedi_1): New. + +2011-11-30 Richard Henderson + + * config/sparc/predicates.md (zero_or_v7_operand): New. + * config/sparc/sparc.c (sparc_emit_membar_for_model): New. + * config/sparc/sparc-protos.h: Update. + * config/sparc/sync.md (mem_thread_fence): New. + (memory_barrier): Use sparc_emit_membar_for_model. + (membar, *membar_empty, *membar_storestore, *membar_storeload): New. + (*membar_v8): Accept and ignore the membar mask. + (*membar): Accept and print the membar mask. + +2011-11-30 Matthew Gretton-Dann + + * config/arm/arm.c (arm_issue_rate): Cortex-A15 can triple issue. + * config/arm/arm.md (mul64): New attribute. + (generic_sched): Cortex-A15 is not scheduled generically. + (cortex-a15.md): Include. + * config/arm/cortex-a15.md: New machine description. + * config/arm/t-arm (MD_INCLUDES): Add cortex-a15.md. + +2011-11-30 Matthew Gretton-Dann + + * config/arm/t-arm (MD_INCLUDES): Ensure all md files are listed. + +2011-11-30 Iain Sandoe + + * doc/tm.texi.in (NEXT_OBJC_RUNTIME): Update macro description. + * doc/tm.texi: Regenerate. + * flags.h (flag_next_runtime): Remove references. + * toplev.c: Likewise. + * defaults.h (NEXT_OBJC_RUNTIME): Provide default. + * gccspec.c (lang_specific_driver): Adjust use of NEXT_OBJC_RUNTIME. + * config/darwin.c (darwin_override_options): Provide default + Objective-C abi settings and target conflict checks. + * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Remove unused + code. Adjust indenting. + +2011-11-29 Joseph Myers + + * config/sh/sh.h (enum reg_class, REG_CLASS_NAMES) + (REG_CLASS_CONTENTS): Add NON_SP_REGS. + (REGCLASS_HAS_GENERAL_REG): Handle NON_SP_REGS. + * config/sh/constraints.md (u): New constraint. + +2011-11-29 Oleg Endo + + PR target/51337 + * config/sh/sh.c (sh_secondary_reload): Add case when FPUL + register is being loaded from a pseudo in memory. + +2011-11-29 DJ Delorie + + * config.gcc (rl78-*-elf): New case. + * doc/extend.texi: Add RL78 documentation. + * doc/invoke.texi: Likewise. + * doc/md.texi: Likewise. + * doc/contrib.texi: Add RL78. + * doc/install.texi: Add rl78-*-elf. + * config/rl78: New directory for the Renesas RL78. + +2011-11-29 Jakub Jelinek + + PR tree-optimization/51247 + * tree-vrp.c (extract_range_from_assert): For signed 1-bit precision + types instead of adding 1 subtract -1 and instead of subtracting 1 + add -1 to avoid overflows. + +2011-11-29 Andrew MacLeod + + PR target/50123 + * optabs.c (maybe_optimize_fetch_op): New. Look for more optimal + instructions for a FECTH_OP or OP_FECTH sequence. + (expand_atomic_fetch_op): Call maybe_optimize_fetch_op. + +2011-11-29 Uros Bizjak + + * config/i386/sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs. + (movdi_via_fpu): Remove. + (loaddi_via_fpu): New insn pattern. + (storedi_via_fpu): Ditto. + (atomic_loaddi_fpu): Use loaddi_via_fpu and storedi_via_fpu. + (atomic_storedi_fpu): Ditto. + * reg-stack.c (get_true_reg): Handle UNSPEC_LDA. + (subst_stack_regs_pat): Handle UNSPEC_STA. + +2011-11-29 Uros Bizjak + + * config/i386/i386.md (*floathi2_i387_with_temp): Do not + allocate scratch memory for alternative 0. + +2011-11-29 Michael Meissner + + * config/rs6000/rs6000-builtins.def: Completely rewrite builtin + handling to centralize more of the builtins in this file. Change + some builtin enumerations to be more consistant. Use a new mask + to hold the current builtins, including SPE and PAIRED builtins + which no longer are set via target_flags masks. Add + -mdebug=builtin debug support. For power machines, define all + Altivec and VSX buitins when the compiler starts, but don't allow + the use of a builtin unless the appropriate switch is used, or + #pragma GCC target is used to change the options. If the user + uses #pragma GCC target, update the appropriate hardware macros. + * common/config/rs6000/rs6000-common.c (rs6000_handle_option): Ditto. + * config/rs6000/rs6000.opt (rs6000_builtin_mask): Ditto. + * config/rs6000/rs6000-c.c (rs6000_macro_to_expand): Ditto. + (rs6000_define_or_undefine_macro): Ditto. + (rs6000_target_modify_macros): Ditto. + (rs6000_cpu_cpp_builtins): Ditto. + (altivec_overloaded_builtins): Ditto. + (altivec_build_resolved_builtin): Ditto. + * config/rs6000/rs6000.c (rs6000_target_modify_macros_ptr): Ditto. + (rs6000_builtin_info): Ditto. + (def_builtin): Ditto. + (enable_mask_for_builtins): Ditto. + (DEBUG_FMT_X): Ditto. + (rs6000_debug_reg_global): Ditto. + (rs6000_builtin_mask_calculate): Ditto. + (rs6000_option_override_internal): Ditto. + (rs6000_builtin_conversion): Ditto. + (rs6000_builtin_vectorized_function): Ditto. + (bdesc_3arg): Ditto. + (bdesc_dst): Ditto. + (bdesc_2arg): Ditto. + (builtin_description_predicates): Ditto. + (bdesc_altivec_preds): Ditto. + (bdesc_spe_predicates): Ditto. + (bdesc_spe_evsel): Ditto. + (bdesc_paired_preds): Ditto. + (bdesc_abs): Ditto. + (bdesc_1arg): Ditto. + (rs6000_overloaded_builtin_p): Ditto. + (rs6000_expand_unop_builtin): Ditto. + (bdesc_2arg_spe): Ditto. + (spe_expand_builtin): Ditto. + (rs6000_invalid_builtin): Ditto. + (rs6000_expand_builtin): Ditto. + (rs6000_init_builtins): Ditto. + (spe_init_builtins): Ditto. + (paired_init_builtins): Ditto. + (altivec_init_builtins): Ditto. + (builtin_function_type): Ditto. + (rs6000_common_init_builtins): Ditto. + (rs6000_builtin_reciprocal): Ditto. + (rs6000_builtin_mask_names): Ditto. + (rs6000_pragma_target_parse): Ditto. + (rs6000_function_specific_print): Ditto. + * config/rs6000/rs6000.h (MASK_DEBUG_BUILTIN): Ditto. + (MASK_DEBUG_ALL): Ditto. + (TARGET_DEBUG_BUILTIN): Ditto. + (TARGET_EXTRA_BUILTINS): Ditto. + (REGISTER_TARGET_PRAGMAS): Ditto. + (enum rs6000_btc): Ditto. + (RS6000_BTC_*): Ditto. + (RS6000_BTM_*): Ditto. + (enum rs6000_builtins): Ditto. + * config/rs6000/rs6000-protos.h (rs6000_overloaded_builtin_p): Ditto. + (rs6000_target_modify_macros): Ditto. + (rs6000_target_modify_macros_ptr): Ditto. + + * config/rs6000/vector.md (unsfloat2): Use the + standard name for converting vector unsigned values to floating + point. Delete the TARGET_VECTORIZE_BUILTIN_CONVERSION hook, which + is handled by machine independent code. + * config/rs6000/rs6000.c (TARGET_VECTORIZE_BUILTIN_CONVERSION): Ditto. + (rs6000_builtin_conversion): Ditto. + +2011-11-29 Dodji Seketeli + + * tree-diagnostic (struct loc_t): Rename into struct loc_map_pair. + (maybe_unwind_expanded_macro_loc): Adjust. + +2011-11-29 David Edelsohn + Aldy Hernandez + + * trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl + if DECL_ONE_ONLY. + (ipa_tm_create_version): Same. + +2011-11-29 Bernd Schmidt + + * haifa-sched.c (recompute_todo_spec): Simplify and correct the + code checking for a clobber of a condition register when deciding + whether to predicate. + +2011-11-29 Diego Novillo + + * gimple.c (gimple_call_set_cannot_inline): Move from gimple.h. + Update field call_stmt_cannot_inline_p from call graph edge, if needed. + * gimple.h (gimple_call_set_cannot_inline): Move to gimple.c. + +2011-11-29 Sameera Deshpande + + * config/arm/arm.md (arm_movdi): Update NEG_POOL_RANGE. + (movdf_soft_insn): Likewise. + * config/arm/fpa.md (thumb2_movdf_fpa): Likewise. + * config/arm/neon.md (neon_mov): Likewise. + * config/arm/vfp.md (movdi_vfp): Likewise. + (movdi_vfp_cortexa8): Likewise. + (movdf_vfp): Likewise. + +2011-11-29 Jakub Jelinek + + PR middle-end/50074 + * expr.c (expand_expr_addr_expr_1): Don't call force_operand for + EXPAND_SUM modifier. + +2011-11-29 Ira Rosen + + PR tree-optimization/51301 + * tree-vect-patterns.c (vect_recog_over_widening_pattern): Check that + the last statement doesn't convert to a bigger type than the original + type of the computation. + +2011-11-28 Richard Henderson + + * config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap): + Handle overlap between retval and oldval. Always compute boolval + from CR0 EQ value. + 2011-11-28 Jakub Jelinek PR debug/50317 @@ -110,8 +729,7 @@ (init_reg_sets_1): Limit operand_reg_set to accessible_reg_set. Remove NO_REGS registers from operand_reg_set. Treat members of operand_reg_set as fixed. - * recog.c (general_operand): Check operand_reg_set rather than - NO_REGS. + * recog.c (general_operand): Check operand_reg_set rather than NO_REGS. (register_operand, nonmemory_operand): Likewise. * varasm.c (make_decl_rtl): Always use DECL_MODE as the mode of register variables. Check accessible_reg_set and operand_reg_set. @@ -6896,7 +7514,7 @@ (duplicate_insns_of_cycles): Use register indices directly, rather than finding instructions using PREV_INSN. Use ps_reg_move. (sms_schedule): Call schedule_reg_moves before committing to - a partial schedule. Try the next ii if the schedule fails. + a partial schedule. Try the next ii if the schedule fails. Use apply_reg_moves instead of generate_reg_moves. Adjust call to print_node_sched_params. Free node_sched_param_vec instead of node_sched_params. @@ -8052,18 +8670,18 @@ (remove_duplicate_close_phi): Detect and repair creation of duplicate close-phis for a containing loop. -2011-09-27 Andi Kleen +2011-09-27 Andi Kleen * gcc.c (get_local_tick). Rename to get_random_number. Read from /dev/urandom. Add getpid call. (compare_debug_dump_opt_spec_function): Drop getpid call. -2011-09-26 Andi Kleen +2011-09-26 Andi Kleen * toplev.c (init_local_tick): Try reading random seed from /dev/urandom. -2011-09-26 Andi Kleen +2011-09-26 Andi Kleen * hwint.h (HOST_WIDE_INT_PRINT_HEX_PURE): Add. * lto-streamer.c (lto_get_section_name): Remove crc32_string. @@ -9171,13 +9789,13 @@ HImode by 1 in the case of multiplying with a CONST_INT. Record cost of *ashiftqihi2.signx.1 in case ASHIFT:QI. -2011-09-15 Jan Hubicka +2011-09-15 Jan Hubicka PR lto/50430 * gimple-fold.c (gimple_get_virt_method_for_binfo): Do not ICE on error_mark_node in the DECL_INITIAL of vtable. -2011-09-15 Diego Novillo +2011-09-15 Diego Novillo * Makefile.in (SYSROOT_CFLAGS_FOR_TARGET): Define from @SYSROOT_CFLAGS_FOR_TARGET@. @@ -12392,7 +13010,7 @@ separately. * tree-ssa-uninit.c (warn_uninitialized_phi): Adjust. -2011-08-11 Kazuhiro Inaoka +2011-08-11 Kazuhiro Inaoka * config/rx/rx.md (movsicc): Allow register to register transfers. (*movsicc): Likewise. @@ -12400,7 +13018,7 @@ (*stcc_reg): New pattern. Works for any comparison but only for register transfers. -2011-08-11 Diego Novillo +2011-08-11 Diego Novillo * tree-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers): Call stream_write_tree instead of output_record_start. @@ -12738,7 +13356,7 @@ * tree-sra.c (access_precludes_ipa_sra_p): Also check access memory alignment. -2011-08-08 Diego Novillo +2011-08-08 Diego Novillo * Makefile.in (LTO_STREAMER_H): Add DIAGNOSTIC_H. (DATA_STREAMER_H): New. @@ -13065,7 +13683,7 @@ (TARGET_INSTANTIATE_DECLS): New define. 2011-08-06 Paolo Bonzini - Mikael Morin + Mikael Morin * Makefile.in (INCLUDES_FOR_TARGET): New. (LIBGCC2_CFLAGS): Use it. @@ -13499,12 +14117,12 @@ * config/arm/arm.c (arm_set_fixed_optab_libfunc): Constify maybe_suffix. -2011-08-03 David Li +2011-08-03 David Li * tree-optimize.c (execute_fixup_cfg): Fix up entry outgoing edge counts after inlining. -2011-08-03 David Li +2011-08-03 David Li * profile.c (compute_branch_probabilities): Compute function frequency after profile annotation. @@ -20045,8 +20663,8 @@ * config/arm/neon.md (vec_pack_trunc): Set the lengths correctly for the case with Quad vectors. -2011-06-13 Jakub Jelinek - Ira Rosen +2011-06-13 Jakub Jelinek + Ira Rosen PR tree-optimization/49352 * tree-vect-loop.c (vect_is_slp_reduction): Don't count debug uses at @@ -21018,7 +21636,7 @@ * calls.c (emit_call_1): Prefer the __builtin declaration of builtin functions. -2011-06-03 Diego Novillo +2011-06-03 Diego Novillo * lto-streamer-in.c (unpack_value_fields): Remove unneeded asserts. (lto_input_tree_pointers): Likewise. @@ -25016,7 +25634,7 @@ * config/m68k/m68k.c (m68k_expand_prologue): Set current_function_static_stack_size. -2011-05-02 Jan Hubicka +2011-05-02 Jan Hubicka * lto-streamer.c (lto_streamer_cache_insert_1, lto_streamer_cache_lookup, lto_streamer_cache_create,