X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=ae089d4db1b65d6b0918f09591663b7947f4a676;hb=3c2aae8b66d0a01374f246a85d3e79f2d4648cf9;hp=7538a9f81430c02eaf9cb00932391eeae2a11574;hpb=026d38685a306238520bd2dc743b94e66ecf450f;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7538a9f8143..ae089d4db1b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,741 @@ +2006-03-07 Richard Guenther + + PR tree-optimization/26587 + * tree-ssa-structalias.c (handle_ptr_arith): Handle MINUS_EXPR. + +2006-03-07 Richard Sandiford + + * varasm.c (assemble_variable): Fix setting of DECL_IN_TEXT_SECTION. + +2006-03-07 Richard Sandiford + + * hooks.c (hook_bool_mode_rtx_true): New function. + * hooks.h (hook_bool_mode_rtx_true): Declare. + * toplev.c (compile_file): Call output_shared_constant_pool. + * varasm.c (shared_constant_pool): New variable. + (assemble_start_function, assemble_end_function): Remove arguments + from call to output_constant_pool. + (create_constant_pool): New function, split out from... + (init_varasm_status): ...here. + (force_const_mem): Choose between the shared and per-function constant + pools. Set current_function_uses_const_pool when reusing old entries + as well as when creating new ones. + (mark_constant): Ignore data argument. + (mark_constants): Remove pool argument. + (mark_constant_pool): Likewise. Use current_function_uses_const_pool + to decide whether the function uses a constant pool. + (output_constant_pool_contents): New function, split out from... + (output_constant_pool): ...here. + (output_shared_constant_pool): New function. + (init_varasm_once): Initialize shared_constant_pool. + * output.h (output_constant_pool): Delete. + (output_shared_constant_pool): Declare. + * config/s390/s390-protos.h (s390_output_constant_pool): Delete. + * config/i386/i386.c (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Override. + +2006-03-06 Nick Clifton + + * config/m32r/m32r.h (OPTIMIZATION_OPTIONS): Remove reference to + flag_strength_reduce. + +2006-03-06 Ben Elliston + + * config.gcc: Add t-dfprules to $tmake_file for i*86-*-linux* and + x86_64-*-linux* configurations. + + * config/dfp-bit.h (CMPtype): Typedef to a word mode integer. + (LIBGCC2_WORDS_BIG_ENDIAN): Define. + +2006-03-05 Kazu Hirata + + * tree-ssa-threadupdate.c (rediscover_loops_after_threading): + Remove. + * basic-block.h: Remove the extern for + rediscover_loops_after_threading. + + * cfgloop.c (cancel_loop): Make it static. + * cfgloop.h: Remove the prototype for cancel_loop. + + * flow.c (recompute_reg_usage): Make it static. + * rtl.h: Remove the prototype for recompute_reg_usage. + + * function.c (use_return_register): Make it static. + * function.h: Remove the prototype. + +2006-03-05 Kazu Hirata + + * recog.c (volatile_mem_p, validate_change_maybe_volatile): + Remove. + * recog.h: Remove the prototype for + validate_change_maybe_volatile. + +2006-03-05 Kazu Hirata + + * rtlanal.c (replace_reg): Remove. + * rtl.h: Remove the prototype for replace_reg. + +2006-03-05 Kazu Hirata + + * regclass.c (reg_scan_update): Remove. + (reg_scan_mark_refs): Remove the last argument. + * rtl.h: Remove the prototype for reg_scan_update. + +2006-03-04 Kazu Hirata + + * builtins.c, c-pragma.h, c-typeck.c, cgraph.c, cgraphunit.c, + combine.c, common.opt, config/dfp-bit.c, config/i386/i386.c, + config/m68k/m68k.c, config/m68k/m68k.md, config/mt/mt.c, + config/mt/mt.h, config/s390/s390.md, df-core.c, df-problems.c, + df-scan.c, df.h, diagnostic.c, expr.c, function.h, gimplify.c, + loop-invariant.c, omp-low.c, opts.c, passes.c, + rtl-factoring.c, rtlanal.c, struct-equiv.c, tree-cfgcleanup.c, + tree-ssa-loop-niter.c, tree-ssa-loop-prefetch.c, + tree-ssa-structalias.c, tree-ssa-threadedge.c, + tree-ssa-threadupdate.c, tree-vect-patterns.c, + tree-vect-transform.c, tree-vectorizer.h, tree-vrp.c, + unwind-dw2.c: Fix comment typos. Follow spelling conventions. + +2006-03-04 Kazu Hirata + + * dwarf2out.c (dwarf2out_add_library_unit_info): Remove. + * dwarf2out.h: Remove the prototype for + dwarf2out_add_library_unit_info. + +2006-03-04 Kazu Hirata + + * tree.c (add_var_to_bind_expr): Remove. + * tree.h: Remove the prototype for add_var_to_bind_expr. + +2006-03-04 Kazu Hirata + + * regclass.c (n_non_fixed_regs): Remove. + (init_reg_sets_1, globalize_reg): Remove all uses of + n_non_fixed_regs. + * hard-reg-set.h: Remove the extern for n_non_fixed_regs. + +2006-03-04 Kazu Hirata + + * rtlanal.c (insns_safe_to_move_p): Remove. + * rtl.h: Remove the prototype for insns_safe_to_move_p. + +2006-03-04 Kazu Hirata + + * expmed.c (expand_mult_add): Remove. + * expr.h: Remove the prototype for expand_mult_add. + +2006-03-04 Jakub Jelinek + + * unwind-dw2.h (_Unwind_FrameState): Add REG_SAVED_VAL_OFFSET + and REG_SAVED_VAL_EXP constants. + * unwind-dw2.c (struct _Unwind_Context): Add by_value array. + (_Unwind_GetGR, _Unwind_SetGR, _Unwind_GetGRPtr, _Unwind_SetGRPtr): + Handle regs stored by value. + (_Unwind_SetGRValue, _Unwind_GRByValue): New functions. + (execute_cfa_program): Handle DW_CFA_val_offset, + DW_CFA_val_offset_sf and DW_CFA_val_expression. + (uw_update_context_1): Handle REG_SAVED_REG with regs stored by + value specially. Handle REG_SAVED_VAL_OFFSET and REG_SAVED_VAL_EXP. + (uw_install_context_1): Handle target regs stored by value. + +2006-03-03 Daniel Berlin + + * tree-sra.c (tree_sra): Return todoflags; + (generate_one_element): Set TODO_update_smt_usage if needed. + (pass_sra): Remove TODO_update_smt_usage. + * tree-ssa-forwprop.c (forward_propagate_addr_expr): Add some + parameter. + (tree_ssa_forward_propagate_single_use_vars): Return + TODO_update_smt_usage if we need to update SMT usage. + (pass_forwprop): Remove TODO_update_smt_usage. + +2006-03-03 Diego Novillo + + * tree-ssa-operands.c: Tidy whitespace. Fix spelling. + (correct_use_link): Remove reference to get_stmt_operands. + (update_stmt_operands): Likewise. + (get_modify_expr_operands): New function factored out of + parse_ssa_operands and get_expr_operands. + Try to create V_MUST_DEFs for LHS by default. + (get_expr_operands) : Call + get_modify_expr_operands. + : Handle together with ARRAY_REF. + : Clear opf_kill_def from FLAGS. + (parse_ssa_operands) : Call + get_modify_expr_operands. + +2006-03-03 Kazu Hirata + + * tree-dfa.c (referenced_var_lookup_if_exists): Remove. + * tree-flow.h: Remove the prototype for + referenced_var_lookup_if_exists. + +2006-03-03 Steve Ellcey + + PR rtl-optimization/26345 + PR target/19061 + * config/ia64/predicates.md (basereg_operand): Don't look in subregs. + +2006-03-03 Roger Sayle + + PR tree-optimization/26524 + * tree-scalar-evolution.c (interpret_rhs_modify_expr): Use + fold_convert to create a constant of the appropriate type. + +2006-03-03 Richard Sandiford + + * doc/tm.texi: Refer to SYMBOL_REF_HAS_BLOCK_INFO_P instead of + SYMBOL_REF_IN_BLOCK_P. + * doc/rtl.texi: Likewise. Refer to SYMBOL_FLAG_HAS_BLOCK_INFO instead + of SYMBOL_FLAG_IN_BLOCK. + * gengtype.c (adjust_field_rtx_def): Use SYMBOL_REF_HAS_BLOCK_INFO_P + instead of SYMBOL_REF_IN_BLOCK_P. + * explow.c (use_anchored_address): Likewise. + * rtl.c (rtx_size): Likewise. + * varasm.c (create_block_symbol): Set SYMBOL_FLAG_HAS_BLOCK_INFO + instead of SYMBOL_FLAG_IN_BLOCK. + (make_decl_rtl): Use SYMBOL_REF_HAS_BLOCK_INFO_P instead of + SYMBOL_REF_IN_BLOCK_P. + (assemble_variable): Likewise. + (output_constant_def_contents): Likewise. + (output_constant_pool): Likewise. + (default_encode_section_info): Preserve SYMBOL_FLAG_HAS_BLOCK_INFO + instead of SYMBOL_FLAG_IN_BLOCK. + * rtl.h (block_symbol): Refer to SYMBOL_REF_HAS_BLOCK_INFO_P instead of + SYMBOL_REF_IN_BLOCK_P. + (SYMBOL_REF_BLOCK): Likewise. + (SYMBOL_REF_OFFSET): Likewise. + (BLOCK_SYMBOL_CHECK): Use SYMBOL_REF_HAS_BLOCK_INFO_P instead of + SYMBOL_REF_IN_BLOCK_P. + (SYMBOL_FLAG_IN_BLOCK): Replace with... + (SYMBOL_FLAG_HAS_BLOCK_INFO): ...this. + (SYMBOL_REF_IN_BLOCK_P): Replace with... + (SYMBOL_REF_HAS_BLOCK_INFO_P): ...this. + +2006-03-03 Jakub Jelinek + + * config/arm/unwind-arm.h (_Unwind_GetIPInfo): Fix pasto. + +2006-03-02 Roger Sayle + + * simplify-rtx.c (simplify_unary_operation): When simplifying + (neg (lt X 0)) into (ashiftrt X C) or (lshiftrt X C), make sure + that we perform the right shift in the appropriate mode, and + then extend or truncate the result to requested mode. + +2006-03-03 Zdenek Dvorak + + * gengtype.c (main): Handle double_int type. + * tree.h (struct tree_int_cst): Make type of int_cst double_int. + * double-int.c: New file. + * double-int.h: New file. + * system.h: Include doubleint.h. + * Makefile.in (SYSTEM_H): Include double-int.h. + (double-int.o): Add. + +2006-03-03 Joseph S. Myers + + PR bootstrap/26478 + * Makefile.in (stmp-int-hdrs): Remove include/unwind.h before + copying over it. + +2006-03-02 Zdenek Dvorak + + * tree-vrp.c (remove_range_assertions): Do not update statements + unnecessarily. + +2006-03-02 Zdenek Dvorak + + * cse.c (rest_of_handle_cse): Do not pass CLEANUP_PRE_LOOP to cfg + cleanup. + * gcse.c (rest_of_handle_gcse): Ditto. + * except.c (gate_handle_eh): Ditto. + * cfgcleanup.c (rest_of_handle_jump2): Ditto. + * basic-block.h (CLEANUP_PRE_LOOP): Remove. + +2006-03-02 Eric Christopher + + * config/i386/i386.c (machopic_output_stub): Add indirection to + jump. + +2006-03-02 Zdenek Dvorak + + * loop.c: Removed. + +2006-03-02 David S. Miller + + Sun Niagara specific optimizations. + * config.gcc: Recognize niagara as target. + * config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Mention Niagara. + (TARGET_CPU_niagara): Define. + (CPP_CPU64_DEFAULT_SPEC): Define __sparc_v9__ for Niagara. + (ASM_CPU64_DEFAULT_SPEC): Pass -Av9b for Niagara. + (CPP_CPU_SPEC): Handle -mcpu=niagara. + (ASM_CPU_SPEC): Likewise. + (PROCESSOR_NIAGARA): New enum entry. + (REGISTER_MOVE_COST): Handle Niagara. + (BRANCH_COST, PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): Likewise. + * config/sparc/sparc.c (niagara_costs): New processor_costs entry. + (sparc_override_options): Recognize "niagara", set appropriate + default MASK_* values for it, and align functions to 32-bytes + by default just like ULTRASPARC/ULTRASPARC3. + (sparc_initialize_trampoline): Handle niagara like ultrasparc. + (sparc64_initialize_trampoline): Likewise. + (sparc_use_sched_lookahead): Use zero for niagara. + (sparc_issue_rate): Use one for niagara. + * config/sparc/niagara.md: New file. + * config/sparc/sparc.md: Include it. + * config/sparc/sol2-bi.h (CPP_CPU64_DEFAULT_SPEC, + ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Set appropriately + when default cpu is niagara. + (CPP_CPU_SPEC): Handle -mcpu=niagara. + (ASM_CPU_SPEC): Likewise. + * config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Set appropriately + when default cpu is niagara. + (ASM_CPU_SPEC): Handle -mcpu=niagara. + * config/sparc/linux64.h: Handle a default of TARGET_CPU_niagara + just like v9/ultrasparc/ultrasparc3. + * doc/invoke.texi: Add documentation for "niagara" and improve + existing documentation for ultrasparc variants. + +2006-03-02 Diego Novillo + + * tree-ssa-operands.c (update_stmt_operands): Update documentation. + +2006-03-02 Richard Sandiford + + * doc/tm.texi (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Document. + (ASM_OUTPUT_BSS): Describe the two ways of handling global BSS, + and say that only one is needed. + * doc/rtl.texi (SYMBOL_REF_BLOCK): Say that the block can be null. + * target.h (have_switchable_bss_sections): New hook. + * explow.c (use_anchored_address): Check that the symbol is in a block. + * varasm.c (tls_comm_section, comm_section, lcomm_section) + (bss_noswitch_section): New variables. + (get_unnamed_section): Add SECTION_UNNAMED to the flags. + (get_noswitch_section): New function. + (get_block_for_section): Allow SECT to be null. + (unlikely_text_section_p): Use SECTION_STYLE. + (bss_initializer_p): New function. + (get_variable_section): Move earlier in file. Take a new argument, + prefer_noswitch_p. Move bss checks from assemble_variable to here. + Return one of the new *_sections in such cases. + (get_block_for_decl): New function, extracting some logic from + use_blocks_for_decl_p. + (change_symbol_section): Remove in favor of... + (change_symbol_block): ...this new function. + (use_blocks_for_decl_p): Remove checks now performed by + get_block_for_decl. + (make_decl_rtl): Use change_symbol_block and get_block_for_decl. + (ASM_EMIT_LOCAL, ASM_EMIT_BSS, ASM_EMIT_COMMON): Delete in favor of... + (emit_local, emit_bss, emit_common): ...these new functions. + Return true if the alignment was honored. + (emit_tls_common): New function. + (asm_emit_uninitialised): Delete. + (assemble_variable_noswitch): New function, split out from... + (assemble_variable): ...here. Don't make decisions about common + variables here. Globalize all public decls that go into non-common + sections. Check whether SYMBOL_REF_BLOCK is null. + (output_constant_def_contents): Check whether SYMBOL_REF_BLOCK is null. + (output_constant_pool): Likewise. + (init_varasm_once): Initialize the new section variables. + (have_global_bss_p): New function. + (categorize_decl_for_section): Use bss_initializer_p. + (switch_to_section): Use SECTION_STYLE. Abort for SECTION_NOSWITCH. + (place_block_symbol): Assert that the symbol must be in a block. + * target-def.h (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): New macro. + (TARGET_INITIALIZER): Include it. + * rtl.h (SYMBOL_REF_BLOCK): Document the null alternative. + * output.h (SECTION_STYLE_MASK, SECTION_COMMON): New macros. + (SECTION_MACH_DEP): Bump by two. + (SECTION_UNNAMED, SECTION_NOSWITCH): New macros. + (unnamed_section): Mention SECTION_UNNAMED in comment. + (named_section): Likewise SECTION_NAMED. + (noswitch_section_callback): New type. + (noswitch_section): New structure. + (section): Add a noswitch_section alternative. + (SECTION_STYLE): New macro. + (tls_comm_section, comm_section, lcomm_section): Declare. + (bss_noswitch_section, have_global_bss_p): Declare. + * config/elfos.h (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Override. + * config/iq2000/iq2000.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): + Override. + * config/v850/v850.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Override. + * config/stormy16/stormy16.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): + Override. + +2006-03-02 Daniel Berlin + + * gcc/tree-vrp.c (execute_vrp): Return value. + * gcc/regrename.c (rest_of_handle_regrename): Ditto. + * gcc/tree-into-ssa.c (rewrite_into_ssa): Ditto. + * gcc/tree-complex.c (tree_lower_complex): Ditto. + (tree_lower_complex_O0): Ditto. + * gcc/tracer.c (rest_of_handle_tracer): Ditto. + * gcc/postreload-gcse.c (rest_of_handle_gcse2): Ditto. + * gcc/postreload.c (rest_of_handle_postreload): Ditto. + * gcc/tree-tailcall.c (execute_tail_recursion): Ditto. + (execute_tail_calls): Ditto. + * gcc/tree-ssa-loop-ch.c (copy_loop_headers): Ditto. + * gcc/tree.h (init_function_for_compilation): Ditto. + * gcc/ipa-cp.c (ipcp_driver): Ditto. + * gcc/tree-scalar-evolution.c (scev_const_prop): Ditto. + * gcc/tree-scalar-evolution.h (scev_const_prop): Ditto. + * gcc/final.c (compute_alignments): Ditto. + (rest_of_handle_final): Ditto. + (rest_of_handle_shorten_branches): Ditto. + (rest_of_clean_state): Ditto. + * gcc/omp-low.c (execute_expand_omp): Ditto. + (execute_lower_omp): Ditto. + * gcc/tree-ssa-dse.c (tree_ssa_dse): Ditto. + * gcc/ipa-reference.c (static_execute): Ditto. + * gcc/tree-ssa-uncprop.c (tree_ssa_uncprop): Ditto. + * gcc/reorg.c (rest_of_handle_delay_slots): Ditto. + (rest_of_handle_machine_reorg): Ditto. + * gcc/cgraphunit.c (rebuild_cgraph_edges): Ditto. + * gcc/flow.c (recompute_reg_usage): Ditto. + (rest_of_handle_remove_death_notes): Ditto. + (rest_of_handle_life): Ditto. + (rest_of_handle_flow2): Ditto. + * gcc/tree-ssa-copyrename.c (rename_ssa_copies): Ditto. + * gcc/tree-ssa-ccp.c (do_ssa_ccp): Ditto. + (do_ssa_store_ccp): Ditto. + (execute_fold_all_builtins): Ditto. + * gcc/mode-switching.c (rest_of_handle_mode_switching): Ditto. + * gcc/modulo-sched.c (rest_of_handle_sms): Ditto. + * gcc/ipa-pure-const.c (static_execute): Ditto. + * gcc/cse.c (rest_of_handle_cse): Ditto. + (rest_of_handle_cse2): Ditto. + * gcc/web.c (rest_of_handle_web): Ditto. + * gcc/tree-stdarg.c (execute_optimize_stdarg): Ditto. + * gcc/tree-ssa-math-opts.c (execute_cse_reciprocals): Ditto. + * gcc/tree-ssa-dom.c (tree_ssa_dominator_optimize): Ditto. + * gcc/tree-nrv.c (tree_nrv): Ditto. + (execute_return_slot_opt): Ditto. + * gcc/tree-ssa-alias.c (compute_may_aliases): Ditto. + (create_structure_vars): Ditto. + * gcc/loop-init.c (rtl_loop_init): Ditto. + (rtl_loop_done): Ditto. + (rtl_move_loop_invariants): Ditto. + (rtl_unswitch): Ditto. + (rtl_unroll_and_peel_loops): Ditto. + (rtl_doloop): Ditto. + * gcc/gimple-low.c (lower_function_body): Ditto. + (mark_used_blocks): Ditto. + * gcc/tree-ssa-sink.c (execute_sink_code): Ditto. + * gcc/ipa-inline.c (cgraph_decide_inlining): Ditto. + (cgraph_early_inlining): Ditto. + * gcc/global.c (rest_of_handle_global_alloc): Ditto. + * gcc/jump.c (cleanup_barriers): Ditto. + (purge_line_number_notes): Ditto. + * gcc/ifcvt.c (rest_of_handle_if_conversion): Ditto. + (rest_of_handle_if_after_reload): Ditto. + * gcc/tree-ssa-loop.c (tree_ssa_loop_init): Ditto. + (tree_ssa_loop_im): Ditto. + (tree_ssa_loop_unswitch): Ditto. + (tree_vectorize): Ditto. + (tree_linear_transform): Ditto. + (tree_ssa_loop_ivcanon): Ditto. + (tree_ssa_empty_loop): Ditto. + (tree_ssa_loop_bounds): Ditto. + (tree_complete_unroll): Ditto. + (tree_ssa_loop_prefetch): Ditto. + (tree_ssa_loop_ivopts): Ditto. + (tree_ssa_loop_done): Ditto. + * gcc/predict.c (tree_estimate_probability): Ditto. + * gcc/recog.c (split_all_insns_noflow): Ditto. + (rest_of_handle_peephole2): Ditto. + (rest_of_handle_split_all_insns): Ditto. + * gcc/tree-eh.c (lower_eh_constructs): Ditto. + * gcc/regmove.c (rest_of_handle_regmove): Ditto. + (rest_of_handle_stack_adjustments): Ditto. + * gcc/local-alloc.c (rest_of_handle_local_alloc): Ditto. + * gcc/function.c (instantiate_virtual_regs): Ditto. + (init_function_for_compilation): Ditto. + (rest_of_handle_check_leaf_regs): Ditto. + * gcc/gcse.c (rest_of_handle_jump_bypass): Ditto. + (rest_of_handle_gcse): Ditto. + * gcc/ipa-type-escape.c (type_escape_execute): Ditto. + * gcc/alias.c (rest_of_handle_cfg): Ditto. + * gcc/tree-if-conv.c (main_tree_if_conversion): Ditto. + * gcc/profile.c (rest_of_handle_branch_prob): Ditto. + * gcc/tree-ssa-phiopt.c (tree_ssa_phiopt): Ditto. + * gcc/rtl-factoring.c (rest_of_rtl_seqabstr): Ditto. + * gcc/bt-load.c (rest_of_handle_branch_target_load_optimize): Ditto + * gcc/tree-dfa.c (find_referenced_vars): Ditto. + * gcc/except.c (set_nothrow_function_flags): Ditto. + (convert_to_eh_region_ranges): Ditto. + (rest_of_handle_eh): Ditto. + * gcc/emit-rtl.c (unshare_all_rtl): Ditto. + (remove_unnecessary_notes): Ditto. + * gcc/except.h (set_nothrow_function_flags): Ditto. + (convert_to_eh_region_ranges): Ditto. + * gcc/cfgexpand.c (tree_expand_cfg): Ditto. + * gcc/tree-cfgcleanup.c (merge_phi_nodes): Ditto. + * gcc/tree-ssa-pre.c (do_pre): Ditto. + (execute_fre): Ditto. + * gcc/cfgcleanup.c (rest_of_handle_jump): Ditto. + (rest_of_handle_jump2): Ditto. + * gcc/tree-sra.c (tree_sra): Ditto. + * gcc/tree-mudflap.c (execute_mudflap_function_ops): Ditto. + (execute_mudflap_function_decls): Ditto. + * gcc/tree-ssa-copy.c (do_copy_prop): Ditto. + (do_store_copy_prop): Ditto. + * gcc/ipa-prop.h (ipcp_driver): Ditto. + * gcc/cfglayout.c (insn_locators_initialize): Ditto. + * gcc/tree-ssa-forwprop.c + (tree_ssa_forward_propagate_single_use_vars): Ditto. + * gcc/cfglayout.h (insn_locators_initialize): Ditto. + * gcc/tree-ssa-dce.c (tree_ssa_dce): Ditto. + * gcc/tree-ssa.c (execute_early_warn_uninitialized): Ditto. + (execute_late_warn_uninitialized): Ditto. + * gcc/rtl.h (cleanup_barriers): Ditto. + (split_all_insns_noflow): Ditto. + (purge_line_number_notes): Ditto. + (unshare_all_rtl): Ditto. + (remove_unnecessary_notes): Ditto. + (recompute_reg_usage): Ditto. + (variable_tracking_main): Ditto. + * gcc/integrate.c (emit_initial_value_sets): Ditto. + * gcc/integrate.h (emit_initial_value_sets): Ditto. + * gcc/tree-optimize.c (execute_free_datastructures): Ditto + (execute_free_cfg_annotations): Ditto. + (execute_fixup_cfg): Ditto. + (execute_cleanup_cfg_pre_ipa): Ditto. + (execute_cleanup_cfg_post_optimizing): Ditto. + (execute_init_datastructures): Ditto. + * gcc/tree-object-size.c (compute_object_sizes): Ditto. + * gcc/combine.c (rest_of_handle_combine): Ditto. + * gcc/tree-outof-ssa.c (rewrite_out_of_ssa): Ditto. + * gcc/bb-reorder.c (duplicate_computed_gotos): Ditto. + (rest_of_handle_reorder_blocks): Ditto. + (rest_of_handle_partition_blocks): Ditto. + * gcc/var-tracking.c (variable_tracking_main): Ditto. + * gcc/tree-profile.c (tree_profiling): Ditto. + * gcc/tree-vect-generic.c (expand_vector_operations): Ditto. + * gcc/reg-stack.c (rest_of_handle_stack_regs): Ditto. + * gcc/sched-rgn.c (rest_of_handle_sched): Ditto. + (rest_of_handle_sched2): Ditto. + * gcc/basic-block.h (free_bb_insn): Ditto. + * gcc/tree-ssa-structalias.c (ipa_pta_execute): Ditto. + * gcc/tree-cfg.c (execute_build_cfg): Ditto. + (remove_useless_stmts): Ditto. + (split_critical_edges): Ditto. + (execute_warn_function_return): Ditto. + (execute_warn_function_noreturn): Ditto. + * gcc/tree-ssa-reassoc.c (execute_reassoc): Ditto. + * gcc/cfgrtl.c (free_bb_for_insn): Ditto. + * gcc/passes.c (execute_one_pass): Run additional + todos returned by execute function. + * gcc/tree-pass.h (struct tree_opt_pass): Make execute + return a value. + +2006-03-02 Richard Guenther + + * tree-ssa-alias.c (find_used_portions): Consider taking + the address as making the variable not write-only. + +2006-03-02 Nick Clifton + + * config.gcc (default_use_cxa_atexit): Extend the description of + this configure variable. Set its default value to "yes" for + Linux, NetBSD and ELF targets on the assumption that they will + use C libraries with the __cxa_atexit function. + +2006-03-02 Ben Elliston + + * config/rs6000/linux-unwind.h (frob_update_context): Mark `fs' + parameter as unused to suppress a build warning. + +2006-03-02 Ben Elliston + + * mklibgcc.in: Depend on config/dfp-bit.h in rules that compile + config/dfp-bit.c. + +2006-03-01 Roger Sayle + + PR other/26489 + * gthr-posix.h (__gthrw2): Define to take three parameters, the + declared name, the weak reference name, and the typeof name. + (__gthrw): Avoid expanding the declared name suffix. + (__gthrw3): New Tru64 specific macro to simplify the OSF/1 decls. + +2006-03-01 Jakub Jelinek + + * dwarf2.h (DW_TAG_condition, DW_TAG_shared_type): New constants + from DWARF 3. + (DW_AT_description, DW_AT_binary_scale, DW_AT_decimal_scale, + DW_AT_small, DW_AT_decimal_sign, DW_AT_digit_count, + DW_AT_picture_string, DW_AT_mutable, DW_AT_threads_scaled, + DW_AT_explicit, DW_AT_object_pointer, DW_AT_endianity, + DW_AT_elemental, DW_AT_pure, DW_AT_recursive): New. + (DW_OP_form_tls_address, DW_OP_call_frame_cfa, DW_OP_bit_piece): New. + (DW_ATE_packed_decimal, DW_ATE_numeric_string, DW_ATE_edited, + DW_ATE_signed_fixed, DW_ATE_unsigned_fixed): New. + (DW_DS_unsigned, DW_DS_leading_overpunch, DW_DS_trailing_overpunch, + DW_DS_leading_separate, DW_DS_trailing_separate): New. + (DW_END_default, DW_END_big, DW_END_little): New. + (DW_END_lo_user, DW_END_hi_user): Define. + (DW_LNE_lo_user, DW_LNE_hi_user): Define. + (DW_CFA_val_offset, DW_CFA_val_offset_sf, DW_CFA_val_expression): New. + (DW_LANG_PLI, DW_LANG_ObjC, DW_LANG_ObjC_plus_plus, DW_LANG_UPC, + DW_LANG_D): New. + +2006-03-01 Diego Novillo + + * tree.def (SYMBOL_MEMORY_TAG): Rename from TYPE_MEMORY_TAG. + Update all users. + * tree-pass.h (PROP_smt_usage): Rename from PROP_tmt_usage. + Update all users. + (TODO_update_smt_usage): Rename from TODO_update_tmt_usage. + Update all users. + * tree.h (SMT_USED_ALONE): Rename from TMT_USED_ALONE. + Update all users. + * tree-flow.h (struct var_ann_d): Rename field 'type_mem_tag' + to 'symbol_mem_tag'. + Update all users. + * doc/tree-ssa.texi: Update documentation to reflect TMT->SMT + rename. + +2006-03-01 Roger Sayle + + * builtins.c (fold_builtin_copysign): Delete unreachable code. + +2006-03-01 Andrew Pinski + + PR target/25761 + * config/darwin.h (MACHOPIC_JUST_INDIRECT): Check just + MACHO_DYNAMIC_NO_PIC_P. + (MACHOPIC_PURE): Check flag_pic and not MACHO_DYNAMIC_NO_PIC_P. + +2006-03-01 Andrew Pinski + + PR target/26389 + * config/darwin-protos.h (darwin_asm_output_anchor): + Declare. + * config/darwin-sections.def (cstring_section): + Add SECTION_MERGE to the flags. + (literal4_section): Likewise. + (literal8_section): Likewise. + (objc_selector_refs_section): Likewise. + (objc_cls_refs_section): Likewise. + * config/darwin.c (darwin_asm_output_anchor): New + function. + * config/darwin.h (TARGET_ASM_OUTPUT_ANCHOR): Define. + +2006-03-01 Daniel Berlin + + Fix PR tree-optimization/26443 + * tree-vrp.c (pass_vrp): Add TODO_update_tmt_usage + to todo and PROP_tmt_usage to properties_destroyed. + * tree-ssa-ccp.c (pass_ccp): Ditto. + (pass_store_ccp): Ditto. + * tree-ssa-dom.c (pass_dominator): Ditto. + +2006-03-01 Diego Novillo + + * tree-ssa-operands.c: Cleanup whitespace. + (get_asm_expr_operands): Move before first invocation. + (get_indirect_ref_operands): Likewise. + (get_tmr_operands): Likewise. + (get_call_expr_operands): Likewise. + (append_def): Likewise. + (append_use): Likewise. + (append_v_may_def): Likewise. + (append_v_must_def): Likewise. + (add_call_clobber_ops): Likewise. + (add_call_read_ops): Likewise. + (add_stmt_operand): Likewise. + (add_virtual_operand): Likewise. + (build_ssa_operands): Likewise. + +2006-03-01 Andrew Pinski + + PR middle-end/26022 + Revert: + PR middle-end/24437 + * tree-ssa-ccp.c (fold_stmt): Move folding of OBJ_TYPE_REF + with a call expr to ... + * fold-const.c (fold_ternary) : Here. + +2006-03-01 Diego Novillo + + * tree-vrp.c (extract_range_from_assert): Remove special + handling for types with super-types. + +2006-03-01 Ben Elliston + + * config.gcc: Add t-dfprules to $tmake_file for powerpc-*-linux* + and powerpc64-*-linux* configurations. + * config/t-dfprules: New file. + + * mklibgcc.in: Add logic to handle $DFP_ENABLE and $DFP_CFLAGS. + Compile dfp-bit.c from the source directory using -DWIDTH and + $DFP_CFLAGS to control the compilation of that file, rather than + generating width-specific versions in the build directory. + * Makefile.in (libgcc.mk): Pass down DFP_ENABLE and DFP_CFLAGS. + (LIBGCC_DEPS): Replace $(D32PBIT) et al with config/dfp-bit.[hc]. + +2006-02-28 Zack Weinberg + + * doc/md.texi: Avoid use of @headitem so that makeinfo <4.7 + continues to work. + +2006-02-28 Eric Christopher + + * config/rs6000/darwin.h (ENABLE_STACK_EXECUTE): Define. + Set up IN_LIBGCC definition of TARGET_64BIT. + * config/i386/darwin.h (ENABLE_STACK_EXECUTE): Define. + +2006-02-28 Roger Sayle + + PR middle-end/14752 + * c-common.c (c_common_truthvalue_conversion) : Delete. Let fold optimize these + cases via the construction of "expr != 0". + +2006-02-28 Steven Bosscher + + * alias.c (alias_invariant, alias_invariant_size): Remove. + (record_base_value): Remove. + (memrefs_conflict_p): Don't look at alias_invariant. + (end_alias_analysis): Don't free it. + * alias.h (record_base_value): Remove prototype. + +2006-02-28 Paolo Bonzini + Adam Nemet + + * rtl.h (truncated_to_mode): Declare it. + (struct rtl_hooks): Add reg_truncated_to_mode hook. + * rtlhooks-def.h (RTL_HOOKS_REG_TRUNCATED_TO_MODE): New macro. + (RTL_HOOKS_INITIALIZER): Include it. + * rtlhooks.c (reg_truncated_to_mode_general): New function. + * combine.c (RTL_HOOKS_REG_TRUNCATED_TO_MODE): Override to + reg_truncated_to_mode. + * rtlanal.c (truncated_to_mode): Define it. + * simplify-rtx.c (simplify_unary_operation_1): Use it. + +2006-02-28 Jeff Law + + * tree-chrec.c (chrec_convert_aggressive): Do not eliminate + conversions where TYPE_MIN_VALUE/TYPE_MAX_VALUE do not cover + the range allowed by TYPE_PRECISION. + + * tree.h (strct phi_arg_d): Remove unused NONZERO field. + +2006-02-28 Dorit Nuzman + + PR tree-optimization/26419 + * doc/invoke.texi (ftree-vectorizer-verbose): Add information on + values of n. + +2006-02-27 Zack Weinberg + + * doc/md.texi: Fix typo in previous change. + +2006-02-27 Kenneth Zadeck + + * df.c: Remove. + 2006-02-27 Zack Weinberg * rtl.def (define_constraint, define_register_constraint) @@ -898,7 +1636,7 @@ PR middle-end/25600 * fold-const.c (fold_binary): Fold (X >> C) != 0 into X < 0 when C is one less than the width of X (and related transformations). - * simplify_rtx.c (simplify_unary_operation_1): Transform + * simplify-rtx.c (simplify_unary_operation_1): Transform (neg (lt x 0)) into either (ashiftrt X C) or (lshiftrt X C) depending on STORE_FLAG_VALUE, were C is one less then the width of X.