OSDN Git Service

* config/interix.opt: New.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index b4efa6f..20fc90d 100644 (file)
@@ -1,5 +1,431 @@
+2010-12-17  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/interix.opt: New.
+       * config/interix.h (LINK_SPEC): Don't handle -soname*.
+       * config.gcc (i[34567]86-*-interix3*): Use interix.opt.
+
+2010-12-17  Andrew Stubbs  <ams@codesourcery.com>
+
+       * config/arm/arm.md (maddhisi4, *maddhidi4): Use the canonical
+       operand order for plus.
+       Drop redundant % from constraints.
+
+2010-12-17  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/t-spu-elf (LIB2FUNCS_EXCLUDE): Add _floattisf and
+       _floatunstisf.
+       * config/spu/spu.md ("floattisf2"): New expander.
+       ("floatunstisf2"): New insn pattern and splitter.
+       ("cgt_ti_m1"): New insn pattern.
+
+2010-12-17  Bernd Schmidt  <bernds@codesourcery.com>
+
+       * config/arm/arm.c (arm_select_cc_mode): Before calling
+       arm_select_dominance_cc_mode for AND or IOR operations, ensure
+       that op is NE or EQ.
+
+2010-12-17  Alexander Monakov  <amonakov@ispras.ru>
+
+       PR middle-end/46761
+       * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Prefer
+       to use unadjusted UB.
+
+2010-12-17  Dodji Seketeli  <dodji@redhat.com>
+
+       * dwarf2out.c (gen_type_die_with_usage): Do not try to emit debug
+       info for a redundant typedef that has DECL_ORIGINAL_TYPE set. Use
+       that underlying type instead.
+
+2010-12-16  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/44563 
+       * ipa-inline.c: Update doplevel comment. 
+       (cgraph_estimate_size_after_inlining): Remove times attribute. 
+       (cgraph_mark_inline_edge): Update. 
+       (cgraph_mark_inline): Remove. 
+       (cgraph_estimate_growth): Update. 
+       (cgraph_check_inline_limits): Remove one only argument. 
+       (cgraph_edge_badness): Update. 
+       (cgraph_decide_recursive_inlining): Update. 
+       (cgraph_decide_inlining_of_small_function): Fix handling of tree_can_inline_p 
+       and call_stmt_cannot_inline_p. 
+       (cgraph_flatten): Likewise. 
+       (cgraph_decide_inlining): Update. 
+       (cgraph_decide_inlining_incrementally): Fix handling of call_stmt_cannot_inline_p. 
+
+2010-12-16  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/darwin.opt (dylinker, headerpad_max_install_names,
+       keep_private_externs, nofixprebinding, nomultidefs, noprebind,
+       noseglinkedit, object, prebind, prebind_all_twolevel_modules,
+       preload, private_bundle, pthread, seglinkedit, twolevel_namespace,
+       twolevel_namespace_hints, whatsloaded, whyload, y, Mach, X): New
+       Driver options.
+       * config/darwin.h (LINK_SPEC): Remove '*' after
+       headerpad_max_install_names.
+
+2010-12-16  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/46924
+       * graphite-sese-to-poly.c (detect_commutative_reduction): Do not
+       detect reductions outside the current SESE region.
+       * sese.h (stmt_in_sese_p): New.
+       (defined_in_sese_p): Call stmt_in_sese_p.
+
+2010-12-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/46966
+       * graphite-sese-to-poly.c (build_scop_drs): Call free_gimple_bb for
+       for bbs that are removed from SCOP_BBS vector.
+
+2010-12-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-ssa-sccvn.c (vn_reference_lookup_3): Always punt if the call to
+       get_ref_base_and_extent returns -1 as the max size.
+
+2010-12-16  Konrad Eisele  <konrad@gaisler.com>
+            Eric Botcazou  <ebotcazou@adacore.com>
+
+       Support for LEON processor
+       * config.gcc (sparc-*-elf*): Deal with sparc-leon specifically.
+       (sparc-*-linux*): Likewise.
+       (sparc-*-rtems*): Remove Solaris left-overs.
+       (sparc*-*-*): Remove obsolete sparc86x setting.
+       (sparc-leon*): Default to --with-cpu=v8 and --with-tune=leon.
+       * doc/invoke.texi (SPARC Options): Document -mcpu/-mtune=leon.
+       * config/sparc/sparc.h (TARGET_CPU_leon): Define.
+       (TARGET_CPU_sparc86x): Delete.
+       (TARGET_CPU_cypress): Define as alias to TARGET_CPU_v7.
+       (TARGET_CPU_f930): Define as alias to TARGET_CPU_sparclite.
+       (TARGET_CPU_f934): Likewise.
+       (TARGET_CPU_tsc701): Define as alias to TARGET_CPU_sparclet.
+       (CPP_CPU_SPEC): Add entry for -mcpu=leon.
+       (enum processor_type): Add PROCESSOR_LEON.  Reorganize.
+       * config/sparc/sparc.c (leon_costs): New cost array.
+       (sparc_option_override): Add entry for TARGET_CPU_leon and -mcpu=leon.
+       Initialize cost array to leon_costs if -mtune=leon.
+       * config/sparc/sparc.md (cpu attribute): Add leon.  Reorganize.
+       Include leon.md scheduling description.
+       * config/sparc/leon.md: New file.
+       * config/sparc/t-elf: Do not assemble Solaris startup files.
+       * config/sparc/t-leon: New file.
+       * config/sparc/t-leon3: Likewise.
+
+2010-12-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/43655
+       * tree-ssa-ter.c (is_replaceable_p): Don't use
+       gimple_references_memory_p for -O0, instead check for load
+       by looking at rhs.
+
+2010-12-16  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/46404
+       * graphite-clast-to-gimple.c (gloog): Call scev_reset.
+
+2010-12-16  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
+       * config/sh/sh.c (sh_asm_output_addr_const_extra): New function.
+       (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
+
+2010-12-16  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/t-spu-elf (LIB2_SIDITI_CONV_FUNC): Define.
+       * config/spu/spu.h (MIN_UNITS_PER_WORD): Do not define.
+       (LIBGCC2_UNITS_PER_WORD): Define if not already defined.
+
+2010-12-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/46893
+       * cfgexpand.c (expand_debug_expr): If GET_MODE (op0) is VOIDmode,
+       use TYPE_MODE (TREE_TYPE (tem)) instead of mode1.
+
+2010-12-16  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       PR target/46883
+       * config/arm/arm.md
+       (zero_extendhisi2 for register input splitter): Change
+       "register_operand" to "s_register_operand".
+       (zero_extendqisi2 for register input splitter): Same.
+
+2010-12-16  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/46939
+       * predic.c (predict_paths_leading_to_edge): New function.
+       (apply_return_prediction): Use it.
+       (predict_paths_for_bb): Do not special case abnormals.
+
+2010-12-16  Joseph Myers  <joseph@codesourcery.com>
+
+       * config.gcc (powerpc-*-lynxos*): Don't add lynx.opt to
+       extra_options twice.
+
+2010-12-15  Joseph Myers  <joseph@codesourcery.com>
+
+       * doc/tm.texi.in (US_SOFTWARE_GOFAST): Don't document.
+       * doc/tm.texi: Regenerate.
+       * system.h (US_SOFTWARE_GOFAST): Poison.
+       * config.gcc (enable_gofast): Don't handle.
+       * config/gofast.h: Remove.
+       * config/mips/t-gofast: Remove.
+       * config/fp-bit.c (US_SOFTWARE_GOFAST): Don't handle.
+       * config/fp-bit.h (US_SOFTWARE_GOFAST): Don't handle.
+       * config/mips/elforion.h: Don't mention GOFAST in comment.
+       * config/mips/mips.c: Don't include gofast.h.
+       (mips_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
+       * config/mips/t-sr71k (dp-bit.c, fp-bit.c): Don't define
+       US_SOFTWARE_GOFAST.
+       * config/sparc/sparc.c: Don't include gofast.h.
+       (sparc_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
+       * config/spu/t-spu-elf (dp-bit.c, fp-bit.c): Don't undefine
+       US_SOFTWARE_GOFAST.
+
+2010-12-14  Jan Hubicka  <jh@suse.cz>
+
+       * config/darwin.opt (dylinker, headerpad_max_install_names,
+       keep_private_externs, nofixprebinding, nomultidefs, noprebind,
+       noseglinkedit, object, prebind, prebind_all_twolevel_modules,
+       preload, private_bundle, pthread, seglinkedit, twolevel_namespace,
+       twolevel_namespace_hints, whatsloaded, whyload, y, Mach, X): New
+       Driver options.
+       * config/darwin.h (LINK_SPEC): Remove '*' after
+       headerpad_max_install_names.
+
+2010-12-16  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/46924
+       * graphite-sese-to-poly.c (detect_commutative_reduction): Do not
+       detect reductions outside the current SESE region.
+       * sese.h (stmt_in_sese_p): New.
+       (defined_in_sese_p): Call stmt_in_sese_p.
+
+2010-12-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/46966
+       * graphite-sese-to-poly.c (build_scop_drs): Call free_gimple_bb for
+       for bbs that are removed from SCOP_BBS vector.
+
+2010-12-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-ssa-sccvn.c (vn_reference_lookup_3): Always punt if the call to
+       get_ref_base_and_extent returns -1 as the max size.
+
+2010-12-16  Konrad Eisele  <konrad@gaisler.com>
+            Eric Botcazou  <ebotcazou@adacore.com>
+
+       Support for LEON processor
+       * config.gcc (sparc-*-elf*): Deal with sparc-leon specifically.
+       (sparc-*-linux*): Likewise.
+       (sparc-*-rtems*): Remove Solaris left-overs.
+       (sparc*-*-*): Remove obsolete sparc86x setting.
+       (sparc-leon*): Default to --with-cpu=v8 and --with-tune=leon.
+       * doc/invoke.texi (SPARC Options): Document -mcpu/-mtune=leon.
+       * config/sparc/sparc.h (TARGET_CPU_leon): Define.
+       (TARGET_CPU_sparc86x): Delete.
+       (TARGET_CPU_cypress): Define as alias to TARGET_CPU_v7.
+       (TARGET_CPU_f930): Define as alias to TARGET_CPU_sparclite.
+       (TARGET_CPU_f934): Likewise.
+       (TARGET_CPU_tsc701): Define as alias to TARGET_CPU_sparclet.
+       (CPP_CPU_SPEC): Add entry for -mcpu=leon.
+       (enum processor_type): Add PROCESSOR_LEON.  Reorganize.
+       * config/sparc/sparc.c (leon_costs): New cost array.
+       (sparc_option_override): Add entry for TARGET_CPU_leon and -mcpu=leon.
+       Initialize cost array to leon_costs if -mtune=leon.
+       * config/sparc/sparc.md (cpu attribute): Add leon.  Reorganize.
+       Include leon.md scheduling description.
+       * config/sparc/leon.md: New file.
+       * config/sparc/t-elf: Do not assemble Solaris startup files.
+       * config/sparc/t-leon: New file.
+       * config/sparc/t-leon3: Likewise.
+
+2010-12-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/43655
+       * tree-ssa-ter.c (is_replaceable_p): Don't use
+       gimple_references_memory_p for -O0, instead check for load
+       by looking at rhs.
+
+2010-12-16  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/46404
+       * graphite-clast-to-gimple.c (gloog): Call scev_reset.
+
+2010-12-16  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
+       * config/sh/sh.c (sh_asm_output_addr_const_extra): New function.
+       (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
+
+2010-12-16  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/t-spu-elf (LIB2_SIDITI_CONV_FUNC): Define.
+       * config/spu/spu.h (MIN_UNITS_PER_WORD): Do not define.
+       (LIBGCC2_UNITS_PER_WORD): Define if not already defined.
+
+2010-12-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/46893
+       * cfgexpand.c (expand_debug_expr): If GET_MODE (op0) is VOIDmode,
+       use TYPE_MODE (TREE_TYPE (tem)) instead of mode1.
+
+2010-12-16  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       PR target/46883
+       * config/arm/arm.md
+       (zero_extendhisi2 for register input splitter): Change
+       "register_operand" to "s_register_operand".
+       (zero_extendqisi2 for register input splitter): Same.
+
+2010-12-16  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/46939
+       * predic.c (predict_paths_leading_to_edge): New function.
+       (apply_return_prediction): Use it.
+       (predict_paths_for_bb): Do not special case abnormals.
+
+2010-12-16  Joseph Myers  <joseph@codesourcery.com>
+
+       * config.gcc (powerpc-*-lynxos*): Don't add lynx.opt to
+       extra_options twice.
+
+2010-12-15  Joseph Myers  <joseph@codesourcery.com>
+
+       * doc/tm.texi.in (US_SOFTWARE_GOFAST): Don't document.
+       * doc/tm.texi: Regenerate.
+       * system.h (US_SOFTWARE_GOFAST): Poison.
+       * config.gcc (enable_gofast): Don't handle.
+       * config/gofast.h: Remove.
+       * config/mips/t-gofast: Remove.
+       * config/fp-bit.c (US_SOFTWARE_GOFAST): Don't handle.
+       * config/fp-bit.h (US_SOFTWARE_GOFAST): Don't handle.
+       * config/mips/elforion.h: Don't mention GOFAST in comment.
+       * config/mips/mips.c: Don't include gofast.h.
+       (mips_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
+       * config/mips/t-sr71k (dp-bit.c, fp-bit.c): Don't define
+       US_SOFTWARE_GOFAST.
+       * config/sparc/sparc.c: Don't include gofast.h.
+       (sparc_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
+       * config/spu/t-spu-elf (dp-bit.c, fp-bit.c): Don't undefine
+       US_SOFTWARE_GOFAST.
+
+2010-12-14  Jan Hubicka  <jh@suse.cz>
+
+       * tree.c (get_file_function_name): Avoid using random seed on GLOBAL_sub_I
+       and GLOBAL_sub_D.
+
+2010-12-15  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/46053
+       PR middle-end/46287
+       PR middle-end/46242
+       * cgraph.h (cgraph_indirect_call_info): New field thunk_delta.
+       * gimple.h (gimple_fold_obj_type_ref): Declaration removed.
+       (gimple_fold_call): Declare.
+       (gimple_adjust_this_by_delta): Likewise.
+       * cgraph.c (cgraph_make_edge_direct): New parameter delta.  Updated
+       all users.
+       (cgraph_clone_edge): Create a copy of indirect_info also for direct
+       edges.
+       * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Adjust this
+       parameters.
+       * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Renamed to
+       gimple_get_virt_mehtod_for_binfo, new parameter delta.  Do not search
+       through thunks, in fact bail out if we encounter one, check that
+       BINFO_VIRTUALS is not NULL.
+       (gimple_adjust_this_by_delta): New function.
+       (gimple_fold_obj_type_ref): Removed.
+       (gimple_fold_obj_type_ref_call): New function.
+       (fold_gimple_call): Renamed to gimple_fold_call, made external.
+       Updated users.  Call gimple_fold_obj_type_ref_call instead of
+       gimple_fold_obj_type_ref.
+       * ipa-cp.c (ipcp_process_devirtualization_opportunities): Process
+       thunk deltas.
+       (ipcp_discover_new_direct_edges): Likewise.
+       * ipa-prop.c (ipa_make_edge_direct_to_target): New parameter delta.
+       Updated callers.
+       (ipa_write_indirect_edge_info): Stream thunk_delta.
+       (ipa_read_indirect_edge_info): Likewise.
+       * tree-ssa-ccp.c (ccp_fold_stmt): Use gimple_fold_call instead of
+       gimple_fold_obj_type_ref.
+
+2010-12-15  Alexander Monakov  <amonakov@ispras.ru>
+
+       PR rtl-optimization/46649
+       * sel-sched-ir.c (purge_empty_blocks): Unconditionally skip the first
+       basic block in the region.
+
+2010-12-15  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/stormy16/stormy16.h (LINK_SPEC, WCHAR_TYPE): Define.
+       * config.gcc (xstormy16-*-elf): Don't use svr4.h.
+
+2010-12-15  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/rx/rx.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
+       * config.gcc (rx-*-elf*): Don't use svr4.h.
+
+2010-12-14  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/46845
+       * sese.c (scalar_evolution_in_region): Handle scop parameters
+       before scev analysis.
+
+2010-12-14  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/46928
+       * tree-data-ref.c (analyze_overlapping_iterations): Handle "A[p] == A[p]"
+       in data dependence analysis with p a parameter of the loop.
+
+2010-12-14  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/45948
+       * tree-loop-distribution.c (ssa_name_has_uses_outside_loop_p): New.
+       (stmt_has_scalar_dependences_outside_loop): New.
+       (stmt_generated_in_another_partition): New.
+       (add_scalar_computations_to_partition): New.
+       (rdg_build_partitions): Call add_scalar_computations_to_partition.
+
+2010-12-14  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/arc/arc.h (LIB_SPEC): Define.
+       * config.gcc (arc-*-elf*): Don't use svr4.h.
+
+2010-12-14  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/sh/elf.h (LIB_SPEC): Define.
+       * config.gcc (sh-*-elf* | sh[12346l]*-*-elf* | sh-*-symbianelf* |
+       sh[12346l]*-*-symbianelf* | sh-*-linux* | sh[2346lbe]*-*-linux* |
+       sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* |
+       sh5l*-*-netbsd* | sh64-*-netbsd* | sh64l*-*-netbsd*, sh-*-rtems*,
+       sh-wrs-vxworks): Don't use svr4.h.
+
+2010-12-14  Jan Hubicka  <jh@suse.cz>
+
+       PR lto/46940
+       PR lto/44463
+       * lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Construct nodes
+       for aliases when they are used.
+
+2010-12-14  Joseph Myers  <joseph@codesourcery.com>
+
+       * config.gcc (sparc-*-elf*, sparc-*-rtems*, sparc-*-linux*,
+       sparc-*-netbsdelf*, sparc*-*-solaris2*, sparc-wrs-vxworks,
+       sparc64-*-elf*, sparc64-*-rtems*, sparc64-*-linux*,
+       sparc64-*-netbsd*, sparc64-*-openbsd*): Don't use svr4.h.
+
+2010-12-14  Thomas Klein  <th.r.klein@web.de>
+
+       * config/arm/arm.c (arm_expand_prologue): Report the static stack
+       size if -fstack-usage is used.
+       (thumb1_expand_prologue): Likewise.
+
 2010-12-14  Jakub Jelinek  <jakub@redhat.com>
 
+       PR debug/46885
+       * tree-ssa-loop-manip.c (canonicalize_loop_ivs): Use gsi_last_bb
+       instead of gsi_last_nondebug_bb if bump_in_latch.
+
        PR tree-optimization/46909
        * gimple-fold.c (and_var_with_comparison_1): Save partial
        result even in the is_and case, if both partial results
 
 2010-12-13  Alexandre Oliva  <aoliva@redhat.com>
 
-       PR debug/46576
+       PR debug/46756
        * jump.c (mark_all_labels): Skip debug insns.
 
 2010-12-13  Alexandre Oliva  <aoliva@redhat.com>