OSDN Git Service

PR c/42708
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index db624b9..315ebee 100644 (file)
@@ -1,3 +1,401 @@
+2010-01-12  Joseph Myers  <joseph@codesourcery.com>
+
+       PR c/42708
+       * c-typeck.c (build_c_cast): Fold value cast to union type before
+       wrapping it in a CONSTRUCTOR.
+
+2010-01-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/42699
+       * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
+       involved.
+
+2010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
+       SUBTARGET_WARN_UNUSED_SPEC): Move ...
+       config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
+       SUBTARGET_WARN_UNUSED_SPEC): ... here
+       * config/mips/iris5.h (LIBGCC_SPEC): Define.
+
+2010-01-12  Julian Brown  <julian@codesourcery.com>
+
+        * config/arm/neon-schedgen.ml (Utils): Don't try to
+       open missing module.
+        (find_with_result): New.
+
+2010-01-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/42662
+       * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
+       sharing when canonicalizing ({lt,ge}u (plus a b) b).
+
+       PR tree-optimization/42645
+       * tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
+       (remap_ssa_name): If processing_debug_stmt and name wasn't found in
+       decl_map, set processing_debug_stmt to -1 and return name without
+       any remapping.
+
+2010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
+
+       * doc/install.texi (Specific#x-x-cygwin): Document minimum required
+       binutils version, and reword target configuration description.
+
+2010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
+
+       * config/avr/avr.h (LINKER_NAME): Remove. 
+
+2010-01-11  Janis Johnson  <janis187@us.ibm.com>
+
+       PR target/42416
+       * config/rs6000/rs6000.c (rs6000_override_options): On targets
+       that support VSX, warn for -mno-altivec if vsx is not disabled,
+       and disable vsx.
+
+2010-01-11  Joseph Myers  <joseph@codesourcery.com>
+           Shujing Zhao  <pearly.zhao@oracle.com>
+       
+       PR translation/42469
+       * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
+       fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
+       character between option name and help text.
+       * c.opt (imultilib): Likewise.
+
+2010-01-10  Rafael Avila de Espindola  <espindola@google.com>
+
+       * lto-streamer-out.c (output_unreferenced_globals): Output static
+       variables.
+
+2010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR rtl-optimization/42621
+       * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
+       optimizing for size.
+       (duplicate_computed_gotos): Remove now-redundant check.
+
+2010-01-10  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/37454
+       * configure.ac: Save and restore LDFLAGS and LIBS
+       * configure: Regenerate.
+
+2010-01-10  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/42667
+       * builtins.c (fold_builtin_strlen): Add type argument and
+       convert the resulting length to it.
+       (fold_builtin_1): Adjust.
+
+2010-01-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
+       sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
+       1 insn.
+       (num_insns_constant_wide): Adjust for that change.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42631
+       * web.c (union_defs): Add used argument, to combine uses of
+       uninitialized regs.
+       (entry_register): Adjust type and tests of used argument.
+       (web_main): Widen used for new use.  Pass it to union_defs.
+       * df.h (union_defs): Adjust prototype.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42630
+       * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
+       uses in new incoming argument.  Free body.
+       (reset_debug_uses_in_loop): New.
+       (analyze_insn_to_expand_var): Call the latter if the former found
+       anything.  Fix whitespace.  Reject invalid dest overlaps before
+       going through all insns in the loop.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42629
+       * haifa-sched.c (dying_use_p): Debug insns don't count.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR middle-end/42363
+       * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
+       * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
+       (verify_gimple_call): Reject LHS in noreturn calls.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42604
+       PR debug/42395
+       * tree-vect-loop-manip.c (adjust_info): New type.
+       (adjust_vec): New pointer to vector.
+       (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
+       (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
+       (slpeel_update_phis_for_duplicate_loop): Use them.
+       (slpeel_update_phi_nodes_for_guard1): Likewise.
+       (slpeel_update_phi_nodes_for_guard2): Likewise.
+       (slpeel_tree_peel_loop_to_edge): Likewise.
+       (vect_update_ivs_after_vectorizer): Likewise.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
+       (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
+       bogus uninitialized warning.
+
+2010-01-09  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/42512
+       * tree-scalar-evolution.c (interpret_loop_phi): Make sure
+       the evolution is compatible with the initial condition.
+
+2010-01-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * gcc.c (process_command): Update copyright notice dates.
+       * gcov.c (print_version): Likewise.
+       * gcov-dump.c (print_version): Likewise.
+       * mips-tfile.c (main): Likewise.
+       * mips-tdump.c (main): Likewise.
+
+2010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
+
+       PR target/41885
+       * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
+       (rotlhi3): Delete.
+       (rotlhi3_8): Delete.
+       (rotlsi3): Delete.
+       (rotlsi3_8): Delete.
+       (rotlsi3_16): Delete.
+       (rotlsi3_24): Delete.
+       (rotl<mode>3): New.
+       (*rotw<mode>3): New.
+       (*rotb<mode>3): New.
+       * config/avr/avr.c (avr_rotate_bytes): New function.
+       * config/avr/avr-proto.h (avr_rotate_bytes): New function. 
+
+2010-01-08  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/37454
+       * configure.ac: Modify -rdynamic check.
+       * configure: Regenerate.
+
+2010-01-08  DJ Delorie  <dj@redhat.com>
+
+       * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
+       register popping order.
+
+2010-01-08  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/42528
+       * c.opt (fsigned-char): Also let LTO handle this option.
+       (funsigned-char): Likewise.
+
+2010-01-07  Richard Guenther  <rguenther@suse.de>
+
+       * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
+       (gimple_op): Likewise.
+       (gimple_op_ptr): Likewise.
+       (gimple_assign_set_lhs): Remove gcc_assert.
+       (gimple_assign_set_rhs1): Likewise.
+       (gimple_assign_set_rhs2): Likewise.
+       (gimple_call_set_lhs): Likewise.
+       (gimple_call_set_fn): Likewise.
+       (gimple_call_set_fndecl): Likewise.
+       (gimple_call_fndecl): Likewise.
+       (gimple_call_return_type): Likewise.
+       (gimple_call_set_chain): Likewise.
+       (gimple_call_num_args): Likewise.
+       (gimple_call_set_arg): Likewise.
+       (gimple_cond_set_code): Likewise.
+       (gimple_cond_set_lhs): Likewise.
+       (gimple_cond_set_rhs): Likewise.
+       (gimple_cond_set_true_label): Likewise.
+       (gimple_cond_set_false_label): Likewise.
+       (gimple_label_set_label): Likewise.
+       (gimple_goto_set_dest): Likewise.
+       (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
+       (gimple_debug_bind_get_value): Likewise.
+       (gimple_debug_bind_get_value_ptr): Likewise.
+       (gimple_debug_bind_set_var): Likewise.
+       (gimple_debug_bind_set_value): Likewise.
+       (gimple_debug_bind_reset_value): Likewise.
+       (gimple_debug_bind_has_value_p): Likewise.
+       (gimple_return_retval_ptr): Remove gcc_assert.
+       (gimple_return_retval): Likewise.
+       (gimple_return_set_retval): Likewise.
+       * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
+       (safe_referenced_var_iterator): Remove.
+       (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
+       * tree-flow-inline.h (gimple_nonlocal_all): Remove.
+       (fill_referenced_var_vec): Remove.
+       (first_readonly_imm_use): Remove redundant gcc_assert.
+       (phi_arg_index_from_use): Combine gcc_asserts.
+       (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
+       (first_imm_use_stmt): Remove redundant gcc_assert.
+       * tree-cfg.c (verify_gimple_call): Verify function and chain
+       operands.  Verify arguments.
+       (verify_types_in_gimple_stmt): Verify condition code and labels.
+
+2010-01-07  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/42641
+       * sese.c (rename_map_elt_info): Use the SSA name version, do
+       not hash pointers.
+
+2010-01-07  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/42625
+       * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
+       TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body
+       aliases.
+
+2010-01-07  Duncan Sands  <baldrick@free.fr>
+
+       * Makefile.in (PLUGIN_HEADERS): Add version.h.
+
+2010-01-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/42511
+       * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
+       note itself is not function_invariant_p.
+
+2009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
+       Do not add the DF_NOTE problem.
+       * store-motion.c (execute_rtl_store_motion): Likewise.
+
+2010-01-07  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/42157
+       * tree-sra.c (compare_access_positions): Stabilize sort if both
+       accesses have integer types, return zero immediately if they are the
+       same.
+
+2010-01-06  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/41883
+       * haifa-sched.c (add_to_note_list): Merge into ...
+       (concat_note_lists): ... here, and ...
+       (unlink_other_notes, rm_other_notes): Merge into...
+       (remove_notes): ... here.  Create REG_SAVE_NOTEs for
+       NOTE_INSN_EPILOGUE_BEG.  
+
+2010-01-06  Richard Guenther  <rguenther@suse.de>
+
+       * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
+       not inline regular functions into always-inline functions.
+
+2010-01-06  Nick Clifton  <nickc@redhat.com>
+
+       * config/rx/rx.h (enum rx_cpu_type): Add RX200.
+       (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
+       used together.
+       (OVERRIDE_OPTIONS): Delete.
+       (OPTIMIZATION_OPTIONS): Define.
+       (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
+       * config/rx/rx.c (rx_handle_option): Issue an error message if
+       -mcpu=rx200 and -fpu are used together.
+       (rx_set_optimization_options): New function.  Issue an error
+       message if an optimization attribute attempts to reset the FPU/
+       math optimization pairing.
+       * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
+       * config/rx/rx.opt: Set the default to 32-bit doubles.
+       * config/rx/t-rx: Add multilibs for -nofpu option.
+       * doc/invoke.texi: Update documentation of RX options.
+
+2010-01-06  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-pre.c (name_to_id): New global.
+       (alloc_expression_id): Simplify SSA name handling.
+       (lookup_expression_id): Likewise.
+       (init_pre): Zero name_to_id.
+       (fini_pre): Free it.
+
+2010-01-06  Uros Bizjak  <ubizjak@gmail.com>
+
+       * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
+
+2010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/42542
+       * config/i386/sse.md (smaxv2di3): New.
+       (umaxv2di3): Likewise.
+       (sminv2di3): Likewise.
+       (uminv2di3): Likewise.
+
+2010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR target/42564
+       * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
+       * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
+       (legitimize_tls_address): Likewise.
+       (sparc_tls_referenced_p): Likewise.
+       * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
+       and adjust calls to legitimize_pic_address.
+       (legitimate_constant_p) Use sparc_tls_referenced_p.
+       (legitimate_pic_operand_p): Likewise.
+       (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
+       (sparc_tls_symbol_ref_1): Delete.
+       (sparc_tls_referenced_p): Make static, recognize specific patterns.
+       (legitimize_tls_address): Make static, handle CONST patterns.
+       (legitimize_pic_address): Make static, remove unused parameter and
+       adjust recursive calls.
+       (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
+       and adjust call to legitimize_pic_address.
+       (sparc_output_mi_thunk): Likewise.
+
+2010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
+           H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/42542
+       * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
+       for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
+       operands to make them signed.
+
+       Revert:
+       2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/42542
+       * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
+       GTU to GT for V4SI and V2DI.
+
+       * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
+       (umin<mode>3): Removed.
+       (uminv8hi3): New.
+       (uminv4si3): Likewise.
+
+2010-01-05  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/42462
+       * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
+       current_function_decl to helper functions and macros.
+
+2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR bootstrap/41771
+       * flags.h: Don't include real.h.
+       (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
+       HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
+       * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
+       HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
+       * dominance.c: Update copyright.
+       * gimple.c (walk_gimple_op): Remove inline.
+       * tree-ssa-reassoc.c: Include real.h.
+       * Makefile.in (FLAGS_H): Remove $(REAL_H).
+       (tree-ssa-reassoc.o): Depend on $(REAL_H).
+
+2010-01-05  Nick Clifton  <nickc@redhat.com>
+
+       * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
+       register to push into the stack frame when the accumulator has to
+       be saved during interrupts.
+
 2010-01-05  Eric Fisher  <joefoxreal@gmail.com>
 
        * doc/invoke.texi: Remove the documentation about option