OSDN Git Service

Commited for Martin Reinecke <martin@mpa-garching.mpg.de>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 59e5c83..c4665db 100644 (file)
@@ -1,3 +1,227 @@
+2005-08-02  Martin Reinecke  <martin@mpa-garching.mpg.de>
+
+       * doc/invoke.texi: document file extensions .F90 and .F95
+
+2005-08-02  Richard Guenther  <rguenther@suse.de>
+
+       * fold-const.c (tree_expr_nonnegative_p): frexp(x, &e) is
+       positive if its first argument is positive.
+
+2005-08-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23177
+       * tree-ssa-operands.c (get_tmr_operands): Use get_expr_operands
+       on TMR_TAG.
+
+2005-08-02  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR tree-optimization/23129
+       * tree-vrp.c (extract_range_from_binary_expr): Set value range to
+       varying for divisions with anti-ranges.
+
+2005-08-02  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssa-dom.c (thread_across_edge): Remove updating here.
+       * tree-ssa-threadupdate.c (thread_block): Add it here.
+
+2005-08-01  James E Wilson  <wilson@specifix.com>
+
+       * config/mips/mips.c (mips_encode_section_info, mips_attribute_table,
+       TARGET_ENCODE_SECTION_INFO, TARGET_ATTRIBUTE_TABLE): New.
+       * config/mips/mips.h (SYMBOL_FLAG_LONG_CALL, SYMBOL_REF_LONG_CALL_P):
+       New.
+       * config/mips/predicates.md (const_call_insn_operand): Add check for
+       SYMBOL_REF_LONG_CALL_P.
+       * doc/extend.texi (long_call): Document the new attribute.
+
+2005-08-01  Ian Lance Taylor  <ian@airs.com>
+           Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (RTL_BASE_H): Add real.h.
+       * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Use structure copy
+       instead of memcpy.
+       * emit-rtl.c (const_double_from_real_value): Likewise; use rtx.u.rv
+       directly.
+       * rtl.c (rtl_check_failed_code_mode): New.
+       * rtl.h (struct rtx_def): Add u.rv.
+       (XCMWINT, XCNMPRV): New.
+       (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH): Use XCMWINT.
+       (CONST_DOUBLE_REAL_VALUE): Use XCNMPRV; constify.
+
+2005-08-01  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2out.c (mem_loc_descriptor): Use XEXP, not SUBREG_REG,
+       with auto-inc codes.
+
+       * config/alpha/predicates.md (and_operand): Test mode of CONST_DOUBLE.
+
+2005-08-01  Jan Hubicka  <jh@suse.cz>
+
+       * i386-protos.h (asm_preferred_eh_data_format): Declare.
+       * i386.c: Include dwarf2.h
+       (asm_preferred_eh_data_format): New.
+       * i386.h (ASM_PREFERRED_EH_DATA_FORMAT): Move offline.
+
+2005-08-01  Ian Lance Taylor  <ian@airs.com>
+
+       * config/host-linux.c (linux_gt_pch_get_address): Add new name
+       randomize_va_space for virtual address randomization control.
+
+2005-08-01  Steven Bosscher  <stevenb@suse.de>
+
+       * common.opt (flag_ipa_cp): Put in right place to maintain
+       alphabetic sort.
+
+2005-08-01  Jan Hubicka  <jh@suse.cz>
+
+       * profile.c (compute_value_histograms): Fix thinko.
+       * value-prof.c: Include toplev.h
+       (check_counter): New function.
+       (tree_divmod_fixed_value_transform, tree_mod_pow2_value_transform,
+       tree_mod_subtract_transform): Add sanity check.
+
+2005-08-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23133
+       * tree-ssa-math-opts.c (execute_cse_reciprocals): Walk
+       current functions parameter decls to find defs to cse
+       reciprocals of.
+
+2005-08-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23109
+       * tree-ssa-math-opts.c (execute_cse_reciprocals_1):
+       If trapping math is in effect, use post-dominator information
+       to check if we'd in any case reach a trapping point before
+       doing the reciprocal insertion.
+       (execute_cse_reciprocals): Compute post-dominators, if necessary.
+       * tree-ssa-loop-im.c (determine_invariantness_stmt): RDIV
+       expressions are invariant only if trapping math is not in effect.
+
+2005-08-01  Razya Ladelsky  <razya@il.ibm.com>
+
+       * cgraph.h (update_call_expr, cgraph_copy_node_for_versioning,
+       cgraph_function_versioning): New declarations.
+       * cgraphunit.c: Add include to ipa-prop.h.
+       (update_call_expr, cgraph_copy_node_for_versioning,
+       cgraph_function_versioning): New functions.
+       * integrate.c (copy_decl_for_inlining): Remove.
+       * ipa-prop.h (ipa_replace_map): New struct.
+       (struct ipa_node): Add ipcp_orig_node, count_scale, new fields.
+       * ipa-cp.c (ipcp_method_orig_node, ipcp_method_is_cloned,
+       ipcp_method_set_orig_node, ipcp_cloned_create, ipcp_method_get_scale,
+       ipcp_method_set_scale, ipcp_method_compute_scale, ipcp_after_propagate,
+       ipcp_iterate_stage, ipcp_method_scale_print,
+       ipcp_profile_mt_count_print, ipcp_profile_cs_count_print,
+       ipcp_profile_edge_print, ipcp_profile_bb_print , ipcp_profile_print,
+       ipcp_replace_map_create, ipcp_redirect, ipcp_update_callgraph,
+       ipcp_update_bb_counts, ipcp_update_profiling,
+       ipcp_update_edges_counts): New functions.
+       (ipcp_method_cval_init): Remove restriction regarding local methods.
+       (ipcp_init_stage): Add ipcp_method_compute_scale.
+       (ipcp_insert_stage): Add versioning.
+       (ipcp_structures_print): Add ipcp_method_scale_print.
+       (ipcp_driver): Dump profiling info.
+       * Makefile.in: Remove integrate.h dependency from tree-inline.o.
+       Add ipa-prop.h dependency to tree-inline.o and cgraphunit.o.
+       * tree-inline.c: Remove include to integrate.h, Add include ipa-prop.h.
+       (struct inline_data): Add versioning_p, ipa_info, new fields.
+       (remap_decl, mark_local_for_remap_r, setup_one_parameter,
+       declare_return_variable): Replace calls to copy_decl_for_inlining with
+       copy_decl_for_dup.
+       (copy_body_r, copy_bb, copy_cfg_body, copy_tree_r, inlining_p): Add
+       versioning support.
+       (copy_decl_for_dup): Rename from copy_decl_for_inlining.
+       Add argument VERSIONING.
+       (copy_arguments_for_versioning, copy_static_chain,
+       function_versionable_p, tree_versionable_function_p,
+       tree_function_versioning, replace_ref_tree): New functions.
+       * tree-inline.h: Include varray.h.
+       (tree_versionable_function_p,  tree_function_versioning,
+       tree copy_decl_for_dup): New declarations.
+
+2005-08-01  Razya Ladelsky  <razya@il.ibm.com>
+
+       * ipa-cp.c: New file. Contains IPCP specific functionality.
+       * ipa-prop.h: New file. Contains structures/definitions that can be
+       used by several interprocedural data flow optimizations (and also IPCP).
+       * ipa-prop.c: New file.
+       * Makefile.in: Add ipa-cp.c, ipa-prop.h, ipa-prop.c.
+       * common.opt: Add ipa-cp flag.
+       * timevar.def: Add IPCP optimization.
+       * tree-optimize.c (init_tree_optimization_passes): Schedule
+       pass_ipa_cp.
+       * tree-pass.h (pass_ipa_cp): Declare.
+
+2005-08-01  Kazu Hirata  <kazu@codesourcery.com>
+
+       * dwarf2out.c, fold-const.c, ipa-type-escape.c,
+       loop-invariant.c, predict.c, predict.def, reload1.c, reorg.c,
+       tree-sra.c, config/arm/arm.c, config/crx/crx.c,
+       config/i386/i386.c, config/mips/mips.h,
+       config/rs6000/rs6000.h, config/sh/sh.c,
+       config/stormy16/stormy16.c: Fix comment typos.
+
+2005-08-01  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/22311
+       * c-typeck.c (build_binary_op): Use common_type wrapper on
+       shortened types.
+       (common_type): Update comment.
+
+2005-07-31  Steven Bosscher  <stevenb@suse.de>
+
+       PR target/23095
+       * common.opt (flag_gcse_after_reload): Don't initialize to 2.
+       (flag_rerun_cse_after_loop): Initialize this to 2 instead.
+       * postreload-gcse.c (hash_scan_set): Do not consider stack regs.
+
+2005-07-31  Jan Hubicka  <jh@suse.cz>
+
+       * pretty-print.h (pp_widest_integer): New macro.
+       * tree-pretty-print.c (dump_bb_header): Print BB frequencies and
+       counts.
+
+2005-07-31  Jan Hubicka  <jh@suse.cz>
+
+       * output.h (enum section_category): Export from varasm.c
+       (categorize_decl_for_section): Likewise.
+       * varasm.c (enum section_category): Kill.
+       (categorize_decl_for_section): Make global.
+       * i386-protos.h (x86_output_aligned_bss, x86_elf_aligned_common):
+       Declare.
+       * i386.c (ix86_section_threshold): New static variable.
+       (ix86_in_large_data_p, ix86_encode_section_info,
+       x86_64_elf_unique_section,
+       x86_64_elf_select_section): New functions.
+       (TARGET_ENCODE_SECTION_INFO): Define
+       (override_options): Enable medium model for PIC.
+       (ix86_expand_prologue): Expand gen_set_got_rex64.
+       (legitimate_constant_p): Handle new UNSPECs.
+       (legitimate_pic_address_disp_p): Likewise.
+       (legitimize_pic_address): Lower MEDIUM model addressing.
+       * i386.h (PIC_OFFSET_TABLE_REGNUM): Set for medium model PIC.
+       (enum cmodel): Add MEDIUM_PIC.
+       (SYMBOL_REF_FAR_ADDR_P): New macro.
+       (SYMBOL_FLAG_FAR_ADDR): New flag.
+       * i386.md (movdi): Support medium model.
+       (set_got_rex64): New pattern.
+       * i386.opt (mlarge-data-threshold): New flag.
+       * predicates.md (zext_operand/sext_operand): Deal with medium model.
+       * x86-64.h (ASM_OUTPUT_ALIGNED_BSS): Use x86_output_aligned_bss.
+       (ASM_OUTPUT_ALIGNED_COMMON, TARGET_ASM_SELECT_SECTION,
+       TARGET_ASM_UNIQUE_SECTION): New.
+
+       * invoke.texi (-mlarge_data_threshold): Document
+
+2005-07-31  Jan Hubicka  <jh@suse.cz>
+
+       * tree-outof-ssa.c (coalesce_ssa_name): Use coalesce_cost.
+       (coalesce_vars): Likewise.
+       * tree-ssa-live.c (coalesce_cost): New.
+       (build_tree_conflict_graph): Use coalesce_cost.
+       * tree-ssa-live.h (coalesce_cost): Declare.
+
 2005-07-30  Richard Earnshaw  <richard.earnshaw@arm.com>
 
        * arm.md (all peepholes for post-increment operations): Delete.
        non-integral types.
 
 2005-07-29  Wolfgang Bangerth <bangerth@dealii.org>
+
        PR target/22582
        * doc/invoke.texi: Document -rdynamic.
+
 2005-07-30  Joseph S. Myers  <joseph@codesourcery.com>
 
        PR c/23143
 2005-07-28  Richard Henderson  <rth@redhat.com>
 
        PR target/17692
-        * config/i386/i386.c (ix86_split_sse_movcc): Emit DELETED note
-        when expanding to nothing.
+       * config/i386/i386.c (ix86_split_sse_movcc): Emit DELETED note
+       when expanding to nothing.
 
 2005-07-28  Josh Conner  <jconner@apple.com>
 
 
 2005-07-28  Jeff Law  <law@redhat.com>
 
-        * tree-vrp.c (test_for_singularity): Extracted from  ...
-        (simplify_cond_using_ranges): Attempt to simplify a relational
-        test to NE_EXPR.  Dump information when a COND_EXPR is simplified.
+       * tree-vrp.c (test_for_singularity): Extracted from  ...
+       (simplify_cond_using_ranges): Attempt to simplify a relational
+       test to NE_EXPR.  Dump information when a COND_EXPR is simplified.
 
 2005-07-28  Dorit Nuzman  <dorit@il.ibm.com>
 
 
        * config/frv/frv.h: Remove machine_function definition.
 
-        * config/frv/frv.c (struct frv_io): New.
-        (struct machine_function): Moved from frv.h.  Add has_membar_p.
-        (frv_same_doubleword_p, frv_io_fixed_order_p, frv_io_union)
-        (frv_extract_membar, frv_io_check_address, frv_io_handle_set)
-        (frv_io_handle_use_1, frv_io_handle_use, frv_optimize_membar_local)
-        (frv_optimize_membar_global, frv_optimize_membar): New functions.
-        (frv_reorg): Call frv_optimize_membar when appropriate.
-        (bdesc_loads, bdesc_stores): Use the membar code as the icode field.
-        (frv_expand_builtin): Adjust calls accordingly.
-        (frv_io_address_cookie): New function.
-        (frv_expand_load_builtin, frv_expand_store_builtin): Emit a normal
-        load or store rather than a special insn.  Add ccnstant address and
-        io-type operands to the membar.
+       * config/frv/frv.c (struct frv_io): New.
+       (struct machine_function): Moved from frv.h.  Add has_membar_p.
+       (frv_same_doubleword_p, frv_io_fixed_order_p, frv_io_union)
+       (frv_extract_membar, frv_io_check_address, frv_io_handle_set)
+       (frv_io_handle_use_1, frv_io_handle_use, frv_optimize_membar_local)
+       (frv_optimize_membar_global, frv_optimize_membar): New functions.
+       (frv_reorg): Call frv_optimize_membar when appropriate.
+       (bdesc_loads, bdesc_stores): Use the membar code as the icode field.
+       (frv_expand_builtin): Adjust calls accordingly.
+       (frv_io_address_cookie): New function.
+       (frv_expand_load_builtin, frv_expand_store_builtin): Emit a normal
+       load or store rather than a special insn.  Add ccnstant address and
+       io-type operands to the membar.
        (frv_ifcvt_modify_tests): Unsign regno.
        (frv_ifcvt_modify_tests): Same.