OSDN Git Service

Don't set enable_decimal_float to dpd if DFP is disabled.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 19b86e1..4ae3418 100644 (file)
@@ -1,3 +1,264 @@
+2010-09-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/45524
+       * configure.ac (enable_decimal_float): Set to
+       $default_decimal_float.
+       * configure: Regenerated.
+
+2010-09-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       * combine.c (try_combine): Set subst_low_luid to i0.
+
+2010-09-06  Richard Guenther  <rguenther@suse.de>
+
+       * tree.def (MISALIGNED_INDIRECT_REF): Remove.
+       * tree.h (INDIRECT_REF_P): Only check for INDIRECT_REF.
+       (build_aligned_type): Declare.
+       * tree.c (check_qualified_type): Also compare TYPE_ALIGN.
+       (check_aligned_type): New function.
+       (build_aligned_type): Likewise.
+       * expr.c (expand_assignment): Handle misaligned stores via
+       TARGET_MEM_REF and MEM_REF using movmisalign_optab.
+       (expand_expr_real_1): Likewise.
+       (safe_from_p): Remove MISALIGNED_INDIRECT_REF handling.
+       * tree-vect-stmts.c (vectorizable_store): Do not build
+       MISALIGNED_INDIRECT_REF but initialize alignment information.
+       (vectorizable_load): Likewise.
+       * builtins.c (get_object_alignment): Remove MISALIGNED_INDIRECT_REF
+       handling.
+       * cfgexpand.c (expand_debug_expr): Likewise.
+       * dwarf2out.c (loc_list_from_tree): Likewise.
+       * fold-const.c (maybe_lvalue_p): Likewise.
+       (operand_equal_p): Likewise.
+       (build_fold_addr_expr_with_type_loc): Likewise.
+       * gimplify.c (gimplify_addr_expr): Likewise.
+       (gimplify_expr): Likewise.
+       * tree-cfg.c (verify_types_in_gimple_min_lval): Likewise.
+       (verify_gimple_assign_single): Likewise.
+       * tree-dump.c (dequeue_and_dump): Likewise.
+       (tree_could_trap_p): Likewise.
+       * tree-predcom.c (ref_at_iteration): Likewise.
+       * tree-pretty-print.c (dump_generic_node): Likewise.
+       (op_code_prio): Likewise.
+       (op_symbol_code): Likewise.
+       * tree-ssa-ccp.c (get_value_from_alignment): Likewise.
+       * tree-ssa-loop-im.c (for_each_index): Likewise.
+       (gen_lsm_tmp_name): Likewise.
+       * tree-ssa-loop-ivopts.c (idx_find_step): Likewise.
+       (find_interesting_uses_address): Likewise.
+       * tree-ssa-loop-prefetch.c (idx_analyze_ref): Likewise.
+       * tree-ssa-operands.c (get_expr_operands): Likewise.
+       * tree-ssa-pre.c (create_component_ref_by_pieces_1): Likewise.
+       * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
+       (ao_ref_init_from_vn_reference): Likewise.
+       * tree.c (staticp): Likewise.
+       (build1_stat): Likewise.
+       (reference_alias_ptr_type): Likewise.
+       * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
+       * config/rs6000/rs6000.c (rs6000_check_sdmode): Remove
+       MISALIGNED_INDIRECT_REF handling.
+
+2010-09-06  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/45534
+       * tree-ssa-address.c (create_mem_ref_raw): Add verify parameter.
+       (create_mem_ref): Do verify the created TARGET_MEM_REF is valid
+       on the target.
+       (maybe_fold_tmr): Do not verify the created TARGET_MEM_REF is
+       valid on the target.
+
+2010-09-06  Andreas Schwab  <schwab@redhat.com>
+
+       * configure.ac: Quote argument of AC_MSG_WARN.
+       * configure: Regenerate.
+
+2010-09-06  Alexander Monakov  <amonakov@ispras.ru>
+
+       * sel-sched.c (move_cond_jump): Correct arguments to
+       maybe_tidy_empty_bb.
+       * sel-sched-ir.c (maybe_tidy_empty_bb): Export.
+
+2010-09-06  Andrey Belevantsev  <abel@ispras.ru>
+
+       PR rtl-optimization/44919
+       * sel-sched.c (move_cond_jump): Remove assert, check that
+       the several blocks case can only happen with mutually exclusive
+       insns instead.  Rewrite the movement code to support moving through
+       several basic blocks.
+
+2010-09-06  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (iptrsize): New mode attribute.
+       (tp_seg): Ditto.
+       (*load_tp_<mode>): Macroize insn from *load_tp_{si,di} using P
+       mode iterator.
+       (*add_tp_<mode>): Ditto from *add_tp_{si,di}.
+       (stack_protect_set_<mode>): Ditto from stack_protect_set_{si,di}.
+       (stack_protect_test_<mode>): Ditto from stack_protect_test_{si,di}.
+       (stack_tls_protect_set_<mode>): Ditto from
+       stack_tls_protect_set_{si,di}.  Use %@ to output segment register
+       of thread base pointer load.
+       (stack_tls_protect_test_<mode>): Ditto from
+       stack_tls_protect_test_{si,di}.  Use %@ to output segment register
+       of thread base pointer load.
+       (stack_protect_set): Rewrite using indirect functions.
+       (stack_protect_test): Ditto.
+       * config/i386/i386.c (ix86_print_operand_punct_valid): Add '@'.
+       (ix86_print_operand): Handle '@'.
+
+2010-09-05  Giuseppe Scrivano  <gscrivano@gnu.org>
+
+       * tree-tailcall.c (process_assignment): Handle NEGATE_EXPR and
+       MINUS_EXPR.
+
+2010-09-05  Mark Mitchell  <mark@codesourcery.com>
+
+       * doc/invoke.texi: Document -Wdouble-promotion.
+       * c-typeck.c (convert_arguments): Check for implicit conversions
+       from float to double.
+       (do_warn_double_promotion): New function.
+       (build_conditional_expr): Use it.
+       (build_binary_op): Likewise.
+
+2010-09-05  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/45535
+       * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Properly
+       handle TMR_INDEX2.  Make sure TMR_INDEX is not NULL before
+       dereferencing it.
+       (indirect_refs_may_alias_p): Likewise.
+
+2010-09-05  Naveen H.S  <naveen.S@kpitcummins.com>
+
+       * config/sh/sh.c (sh_option_override): Make static.
+       Adjust comments.  Declare.
+       (sh_function_value_regno_p): Likewise.
+       (sh_register_move_cost): Modify the arguments, make static.
+       Adjust comments.  Declare.
+       (TARGET_OPTION_OVERRIDE, TARGET_REGISTER_MOVE_COST
+       TARGET_FUNCTION_VALUE_REGNO_P): Define.
+       * config/sh/sh.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P
+       REGISTER_MOVE_COST): Delete.
+       * config/sh/sh-protos.h (sh_override_options): Delete.
+       (sh_register_move_cost): Delete.
+       (sh_function_value_regno_p): Delete.
+
+2010-09-04  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/m32r/m32r.c (m32r_function_value, m32r_libcall_value,
+       m32r_function_value_regno_p): New functions.
+       (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
+       TARGET_FUNCTION_VALUE_REGNO_P): Declare.
+       * config/m32r/m32r.h: (FUNCTION_VALUE, LIBCALL_VALUE,
+       FUNCTION_VALUE_REGNO_P): Remove.
+
+2010-09-04  Jan Hubicka  <jh@suse.cz>
+
+       * gimple-fold.c (maybe_fold_reference): Use fold_const_aggregate_ref.
+       * tree-ssa-ccp.c (fold_const_aggregate_ref): Use
+       fold_read_from_constant_string.
+
+       * gimple.h (canonicalize_constructor_val): Declare.
+       * gimple-fold.c (canonicalize_constructor_val): New function.
+       (get_symbol_constant_value):Use it.
+       * tree-ssa-ccp.c (fold_const_aggregate_ref): Likewise.
+
+2010-09-04  Jan Hubicka  <jh@suse.cz>
+
+       * tree-switch-conversion.c (build_one_array): Set constructor to be
+       static.
+       * varpool.c (varpool_finalize_decl): Compute const_value_known.
+
+2010-09-04  Richard Guenther  <rguenther@suse.de>
+
+       PR bootstrap/45519
+       * tree-flow.h (force_gimple_operand_1): Declare.
+       (force_gimple_operand_gsi_1): Likewise.
+       * gimplify.c (force_gimple_operand_1): New worker taking a
+       gimple predicate for ...
+       (force_gimple_operand): ... which now wraps it.
+       (force_gimple_operand_gsi_1, force_gimple_operand_gsi): Likewise.
+       * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Revert
+       last change.
+       * tree-ssa-address.c (gimplify_mem_ref_parts): Use
+       force_gimple_operand_gsi_1 with is_gimple_mem_ref_addr.
+       (create_mem_ref): Likewise.
+
+2010-09-04  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/predicates.md (sse_reg_operand): New predicate.
+       * config/i386/i386.md (TFmode push splitter): Use sse_reg_operand
+       predicate for operand 1.
+       (XFmode push splitter): Use fp_register_operand predicate
+       for operand 1.
+       (*dummy_extendsfdf2, *dummy_extendsfxf2): Remove disabled patterns.
+       (SF-DF float_extend push splitter): Add reload_completed insn
+       predicate.
+       ({SF,DF}-XF float_extend_push splitter): Macroize splitter using
+       MODEF mode macro.  Add reload_completed insn predicate.
+
+2010-09-04  Paolo Bonzini  <bonzini@gnu.org>
+
+       * df.h (enum df_ref_class): Remove DF_REF_EXTRACT.
+       (struct df_extract_ref): Remove.
+       (union df_ref_d): Remove extract_ref member.
+       (df_ref_create): Remove last three arguments.
+       (DF_REF_LOC): Remove DF_REF_EXTRACT case.
+       * df-scan.c (df_ref_record): Remove last three arguments, do not
+       pass them to df_ref_create_structure.
+       (df_uses_record): Remove first and last three arguments.  Replace
+       first argument with DF_REF_REGULAR, adjust calls to remove the
+       width, offset and mode.  Always call recursively on the second
+       and third argument of ZERO_EXTRACT and SIGN_EXTRACT.
+       (df_ref_create_structure): Remove first argument.
+       (struct df_scan_problem_data): Remove ref_extract_pool.
+       (df_scan_free_internal): Do not free it.
+       (df_scan_alloc): Do not allocate it.
+       (df_ref_create): Remove last three arguments, do not pass them to
+       df_ref_create_structure.
+       (df_free_ref): Remove DF_REF_EXTRACT case.
+       (df_notes_rescan): Adjust call to df_uses_record.
+       (df_ref_equal_p, df_ref_compare, df_ref_create_structure):
+       Remove DF_REF_EXTRACT case.
+       (df_def_record_1): Do not special case class for a ZERO_EXTRACT lhs.
+       Adjust calls to df_ref_record, using DF_REF_REGULAR for all REG
+       and SUBREG definitions.
+       (df_get_conditional_uses): Remove references to width/offset/mode,
+       adjust call to df_ref_create_structure.
+       (df_get_call_refs, df_insn_refs_collect, df_bb_refs_collect,
+       df_entry_block_defs_collect, df_exit_block_uses_collect): Adjust
+       calls to df_uses_record and df_ref_record.
+       * fwprop.c (update_df): Remove references to width/offset/mode,
+       adjust call to df_ref_create.
+
+2010-09-03  Jan Hubicka  <jh@suse.cz>
+
+       * ipa.c (build_cdtor): Take VECtor as argument; fix array walk.
+       (build_cdtor_fns): Update use of build_cdtor.
+
+2010-09-03  Joseph Myers  <joseph@codesourcery.com>
+
+       * doc/options.texi (SeparateAlias): Document.
+       * opt-functions.awk (switch_flags): Handle SeparateAlias.
+       * opth-gen.awk: Generate enumeration names for options marked
+       SeparateAlias, but not for those marked Ignore.
+       * opts-common.c (generate_canonical_option): Don't output separate
+       argument for options marked CL_SEPARATE_ALIAS.
+       (decode_cmdline_option): Handle CL_SEPARATE_ALIAS.
+       * opts.h (CL_SEPARATE_ALIAS): New.
+       (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
+       CL_COMMON): Adjust definitions.
+       * config/i386/darwin.opt, config/mips/sde.opt: New.
+       * common.opt (fdump-final-insns): New.
+       * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
+       i386/darwin.opt.
+       (mips*-sde-elf*): Add mips/sde.opt.
+       * config/mips/sde.h (DRIVER_SELF_SPECS): Don't handle
+       -mno-data-in-code and -mcode-xonly here.
+       * defaults.h (DEFAULT_SWITCH_TAKES_ARG): Add 'd'.
+       * gcc.c (option_map): Add "j" to --dump entry.
+       (translate_options): Don't translate -d to -foutput-class-dir= here.
+
 2010-09-03  Sebastian Pop  <sebastian.pop@amd.com>
 
        * tree-data-ref.c (dr_may_alias_p): Replace !DR_IS_READ with