OSDN Git Service

enable mdynamic-no-pic bootstrap for x86 Darwin
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 3e44032..712366c 100644 (file)
@@ -1,3 +1,784 @@
+2010-11-04  Iain Sandoe  <iains@gcc.gnu.org>
+
+       * gcc/configure.ac: Filter -mdynamic-no-pic from CFLAGS when testing for
+       plugin capabilities.
+       * gcc/configure: Regenerate.
+
+2010-11-03  Xinliang David Li  <davidxl@google.com>
+
+       PR target/46200
+       * tree-ssa-loop-ivopts.c (get_computation_cost_at):
+       Adjust cbase if the use stmt is after iv update.
+
+2010-11-03  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config.gcc (sh64*) <tm_file>: Add newlib-stdint.h for
+       newlib targets.
+
+2010-11-03  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (sh_expand_prologue): Remove unnecessary
+       comment.  Pass true to the last argument of output_stack_adjust.
+
+2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/46295
+       * config/i386/i386.c (ix86_expand_vector_move): Set use_avx256_p
+       if 256bit AVX register is used.
+
+2010-11-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       * config/rs6000/rs6000.c (rs6000_emit_minmax): Add support to use
+       xsmindp/xsmaxdp on VSX for single precision min/max.
+       * config/rs6000/vsx.md (vsx_smaxsf3): Ditto.
+       (vsx_sminsf3): Ditto.
+
+2010-11-03  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * combine.c (try_combine): Fix formatting issues, improve comments and
+       fix a pasto.
+
+2010-11-03  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-tailcall.c (find_tail_calls): Convert the operands to the type
+       of the result before building binary expressions.
+
+2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR rtl-optimization/45865
+       * Makefile.in (df-problems.o): Revert revision 164552.
+       * basic-block.h (enum bb_flags): Likewise.
+       * cfgcleanup.c (block_was_dirty): Likewise.
+       (try_forward_edges): Likewise.
+       (try_crossjump_bb): Likewise.
+       (try_head_merge_bb): Likewise.
+       (try_optimize_cfg): Likewise.
+       (cleanup_cfg): Likewise.
+       * df-core.c (df_set_bb_dirty): Likewise.
+       * df-problems.c: Likewise.
+       (df_simulate_find_uses): Likewise.
+       (MEMREF_NORMAL, MEMREF_VOLATILE): Likewise.
+       (find_memory, find_memory_store): Likewise.
+       (can_move_insns_across): Likewise.
+       * df.h (can_move_insns_across): Likewise.
+       * ifcvt.c (find_memory): Likewise.
+       (dead_or_predicable): Likewise.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/46288
+       * predict.c (strip_predict_hints): Simply DCE builtin expect if
+       the result is unused.
+
+2010-11-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/46009
+       * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Call
+       cond_if_else_store_replacement if bb1 and bb2 have the same
+       single successor.
+       (cond_store_replacement): Use gimple_assign_single_p, don't
+       check if rhs is SSA_NAME or invariant.  Call release_defs for
+       assign.
+       (cond_if_else_store_replacement): New function.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       * opts.c (finish_options): Properly check for all WHOPR
+       flags before complaining about -flto-partition.
+
+2010-11-04  Alan Modra  <amodra@gmail.com>
+
+       * config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
+       (rs6000_emit_load_toc_table): Don't use rs6000_pic_labelno when
+       TARGET_SECURE_PLT.
+       * config/rs6000/sysv4.h (rs6000_pic_labelno): Don't declare.
+       * config/rs6000/rs6000.md (load_toc_v4_PIC_3b): Use "b" constraint
+       on input, "r" on output.
+
+2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>
+
+       Implemented -fobjc-std=objc1 flag.
+       * doc/invoke.texi (Option Summary): Document -fobjc-std=objc1
+       option.
+       * doc/standards.texi (Standards): Updated the section on
+       Objective-C; mention support for Objective-C 2.0 features and the
+       new -fstd-objc=objc1 flag to disable them.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/46241
+       * dwarf2out.c (scope_die_for): Properly detect global scope.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46190
+       * tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
+       Properly compute peel iterations.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46286
+       * tree-ssa-structalias.c (get_constraint_for_1): Avoid referencing
+       re-allocated vector data.
+
+2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/46285
+       * config/i386/i386.c (ix86_expand_call): Conditionally decorate
+       calls with UNSPEC_CALL_NEEDS_VZEROUPPER unspec before reload
+       is completed.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46217
+       * tree-ssa.c (non_rewritable_mem_ref_base): Check if volatile
+       flag matches.
+       (execute_update_addresses_taken): Likewise.
+
+2010-11-03  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       PR bootstrap/44335
+       * targhooks.c (targhook_words_big_endian): New function.
+       (targhook_float_words_big_endian): Likewise.
+       * targhooks.h (targhook_words_big_endian): Declare.
+       (targhook_float_words_big_endian): Likewise.
+       * target.def (words_big_endian, float_words_big_endian): New hooks.
+
+2010-11-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/46165
+       * tree-ssa-pre.c (eliminate): Return TODO_cleanup_cfg if changing
+       a normal call into noreturn call.
+
+2010-11-03  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/46251
+       * builtins.c (expand_builtin_sincos): Properly build MEM_REFs,
+       not INDIRECT_REFs.
+
+2010-11-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/46107
+       * cfgloopmanip.c (loop_version): Set irred_flag back into entry->flags
+       if cfg_hook_duplicate_loop_to_header_edge failed.
+
+2010-11-03  Ian Lance Taylor  <iant@google.com>
+
+       PR lto/46273
+       * gcc/config.gcc: Don't set lto_binary_reader.
+       * doc/install.texi (Prerequisites): Remove libelf paragraphs.
+       (Configuration): Mention --disable-lto.  Remove --with-libelf
+       paragraph.
+
+2010-11-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/46252
+       * reload1.c (delete_dead_insn): Use prev_active_insn instead of
+       prev_real_insn.
+       * gcse.c (insert_insn_end_basic_block): Likewise.
+
+       PR rtl-optimization/46034
+       PR rtl-optimization/46212
+       PR rtl-optimization/46248
+       * combine.c (try_combine): If added_sets_2 where i0dest_in_i0src
+       and i0 feeds i1 and i1 feeds i2 or i0 feeds i2, make a copy of i1src
+       before i0dest -> i0src substitution and pass 1 instead of 0 as last
+       argument to subst on i2pat.
+
+2010-11-02  Ian Lance Taylor  <iant@google.com>
+
+       * configure.ac: Use AC_SYS_LARGEFILE.
+       * configure: Rebuild.
+       * config.in: Rebuild.
+
+2010-11-02  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * builtins.c (fold_builtin_signbit): Use build_zero_cst instead of
+       fold_convert.
+       * c-typeck.c (build_function_call_vec): Likewise.
+       * cfgexpand.c (expand_debug_expr): Likewise.
+       * cgraphunit.c (assemble_thunk): Likewise.
+       * config/sparc/sparc.c (sparc_fold_builtin): Likewise.
+       * fold-const.c (fold_unary_loc, fold_mult_zconjz): Likewise.
+       (fold_binary_loc, fold_ternary_loc): Likewise.
+       * gimple-fold.c (get_symbol_constant_value): Likewise.
+       * gimple-low.c (lower_builtin_setjmp): Likewise.
+       * gimple.c (gimple_cond_get_ops_from_tree): Likewise.
+       * gimplify.c (gimplify_init_constructor): Likewise.
+       * lambda.h (build_linear_expr): Likewise.
+       * omp-low.c (omp_reduction_init): Likewise.
+       * tree-inline.c (remap_ssa_name): Likewise.
+       * tree-object-size.c (compute_object_sizes): Likewise.
+       * tree-sra.c (init_subtree_with_zero): Likewise.
+       (sra_ipa_modify_assign): Likewise.
+       * tree-ssa-copy.c (propagate_tree_value_into_stmt): Likewise.
+       * tree-ssa-reassoc.c (eliminate_duplicate_pair): Likewise.
+       (eliminate_plus_minus_pair, eliminate_not_pairs): Likewise.
+       (undistribute_ops_list): Likewise.
+       * tree-ssa-sccvn.c (vn_reference_lookup_3): Likewise.
+       * tree-vect-stmts.c (vectorizable_call): Likewise.
+       * tree.c (build_vector_from_ctor, build_one_cst): Likewise.
+       (build_zero_cst): Handle more cases directly.  Update comment.
+
+2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386-protos.h (ix86_split_call_pop_vzeroupper):
+       Removed.
+       * config/i386/i386.c (ix86_split_call_pop_vzeroupper): Likewise.
+
+       * config/i386/i386.md (*call_pop_0_vzeroupper): Use parallel
+       and call ix86_split_call_vzeroupper instead of
+       ix86_split_call_pop_vzeroupper.
+       (*call_pop_1_vzeroupper): Likewise.
+       (*sibcall_pop_1_vzeroupper): Likewise.
+       (*call_value_pop_0_vzeroupper): Likewise.
+       (*call_value_pop_1_vzeroupper): Likewise.
+       (*sibcall_value_pop_1_vzeroupper): Likewise.
+
+2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386.md (*sibcall_1_rex64_vzeroupper): Fix a
+       typo.
+
+2010-11-02  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * basic-block.h (insert_insn_end_bb_new): Delete.
+       * cfgrtl.c (insert_insn_end_bb_new): Likewise.
+
+2010-11-02  Uros Bizjak  <ubizjak@gmail.com>
+           H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386-protos.h (ix86_split_call_vzeroupper): New.
+       (ix86_split_call_pop_vzeroupper): Likewise.
+
+       * config/i386/i386.c (move_or_delete_vzeroupper_2): Rewrite the loop.
+       (ix86_expand_call): Conditionally decorate calls with
+       UNSPEC_CALL_NEEDS_VZEROUPPER unspec.
+       (ix86_split_call_vzeroupper): New.
+       (ix86_split_call_pop_vzeroupper): Likewise.
+
+       * config/i386/i386.md (UNSPEC_CALL_NEEDS_VZEROUPPER): New.
+       (*call_pop_0_vzeroupper): New insn_and_split pattern.
+       (*call_pop_1_vzeroupper): Likewise.
+       (*sibcall_pop_1_vzeroupper): Likewise.
+       (*call_0_vzeroupper): Likewise.
+       (*call_1_vzeroupper): Likewise.
+       (*sibcall_1_vzeroupper): Likewise.
+       (*call_1_rex64_vzeroupper): Likewise.
+       (*call_1_rex64_ms_sysv_vzeroupper): Likewise.
+       (*call_1_rex64_large_vzeroupper): Likewise.
+       (*sibcall_1_rex64_vzeroupper): Likewise.
+       (*call_value_pop_0_vzeroupper): Likewise.
+       (*call_value_pop_1_vzeroupper): Likewise.
+       (*sibcall_value_pop_1_vzeroupper): Likewise.
+       (*call_value_0_vzeroupper): Likewise.
+       (*call_value_0_rex64_vzeroupper): Likewise.
+       (*call_value_0_rex64_ms_sysv_vzeroupper): Likewise.
+       (*call_value_1_vzeroupper): Likewise.
+       (*sibcall_value_1_vzeroupper): Likewise.
+       (*call_value_1_rex64_vzeroupper): Likewise.
+       (*call_value_1_rex64_ms_sysv_vzeroupper): Likewise.
+       (*call_value_1_rex64_large_vzeroupper): Likewise.
+       (*sibcall_value_1_rex64_vzeroupper): Likewise.
+
+2010-11-02  Ian Lance Taylor  <iant@google.com>
+
+       PR lto/46273
+       * config.gcc: Revert last patch: set lto_binary_reader.
+
+2010-11-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46149
+       * tree-ssa-structalias.c (get_constraint_for_1): Properly handle
+       non-indirect MEM_REF variants.
+
+2010-11-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46216
+       * tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
+       Check if we can propagate from a POINTER_PLUS_EXPR before doing so.
+
+2010-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac (*-*-irix6*): Disable set_have_as_tls.
+       (*-*-osf*): Likewise.
+       * configure: Regenerate.
+
+2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/driver-i386.c (host_detect_local_cpu): Updated
+       for Intel Core 2 and Core i7.
+
+2010-11-02  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       Model decoder of Core 2/i7 for multipass scheduling.
+
+       * config/i386/i386-protos.h (struct ix86_first_cycle_multipass_data_):
+       New type to hold target-specific data for multipass scheduling.
+       (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
+       * config/i386/i386.c (ia32_multipass_dfa_lookahead): Update for
+       Core 2/i7.
+       (core2i7_secondary_decoder_max_insn_size,)
+       (core2i7_secondary_ifetch_block_size, core2i7_ifetch_block_max_insns):
+       New static variables.
+       ([const_]ix86_first_cycle_multipass_data_t): New typedefs.
+       ([_]ix86_first_cycle_multipass_data): New static variable.
+       (core2i7_first_cycle_multipass_init, core2i7_dfa_poast_advance_cycle):
+       Implement targetm.sched hooks.
+       (core2i7_first_cycle_multipass_filter_ready_try): New static subroutine
+       of ...
+       (core2i7_first_cycle_multipass_{begin, issue, backtrack, end, fini}):
+       Implement new targetm.sched hooks.
+       (ix86_sched_init_global, TARGET_SCHED_INIT_GLOBAL): Define
+       targetm.sched hook to install multipass scheduling hooks on demand.
+
+       * doc/tm.texi.in: Document new targetm.sched hooks.
+       * doc/tm.texi: Regenerate.
+
+       * haifa-sched.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
+       (first_cycle_multipass_data_t): New typedef.
+       (struct choice_entry: target_data): New field.
+       (max_issue): Add first_cycle_insn_p parameter.  Call new target hooks
+       to allow target model restrictions not represented in DFA.
+       (choose_ready, schedule_block): Update.
+       (sched_extend_ready_list, sched_finish_ready_list): Call new target
+       hooks to initialize target-specific data for multipass scheduling.
+       * sched-int.h (max_issue): Update declaration.
+       * sel-sched.c (choose_best_insn): Update.
+       * target.def (first_cycle_multipass_{begin, issue, backtrack},)
+       (first_cycle_multipass_{init, fini}): Define and document new
+       targetm.sched hooks.
+
+2010-11-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46184
+       * tree-vect-loop.c (vectorizable_reduction): Try to obtain the
+       input vector type from the reduction operand as well.
+
+2010-11-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46177
+       * tree-loop-distribution.c (prop_phis): Use
+       mark_virtual_phi_result_for_renaming.
+
+2010-11-02  Martin Jambor  <mjambor@suse.cz>
+
+       PR middle-end/46120
+       * tree.c (get_binfo_at_offset): Bail out on artificial
+       fields.  Identify primary bases according to their offsets.
+
+2010-11-02  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/45875
+       * gimple-fold.c (get_first_base_binfo_with_virtuals): Removed.
+       (gimple_get_relevant_ref_binfo): Detect primary bases according to
+       their field offset.
+
+2010-11-02  Ian Lance Taylor  <iant@google.com>
+
+       * doc/install.texi (Configuration): Note in two places that Java
+       is not enabled by default.
+
+2010-11-02  Ian Lance Taylor  <iant@google.com>
+
+       * doc/install.texi (Prerequisites): Remove libelf paragraphs.
+       (Configuration): Mention --disable-lto.  Remove --with-libelf
+       paragraph.
+
+2010-11-02  Ian Lance Taylor  <iant@google.com>
+
+       * configure.ac: Remove elf_getshdrstrndx test.  Don't substitute
+       LTO_BINARY_READER or LTO_USE_LIBELF.  Remove LIBELFLIBS and
+       LIBELFINC.  Remove HAVE_libelf.
+       * config.gcc: Don't set lto_binary_reader.
+       * Makefile.in (LIBELFLIBS, LIBELFINC): Remove variables.
+       (LTO_BINARY_READER, LTO_USE_LIBELF): Remove variables.
+       (LIBS): Remove $(LIBELFLIBS).
+       (INCLUDES): Remove $(LIBELFINC).
+       * configure: Rebuild.
+       * config.in: Rebuild.
+
+2010-11-02  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * config/microblaze/microblaze-protos.h (function_arg): Delete.
+       (function_arg_advance): Delete.
+       * config/microblaze/microblaze.h (FUNCTION_ARG_ADVANCE): Delete.
+       (FUNCTION_ARG): Delete.
+       * config/microblaze/microblaze.c (function_arg_advance): Rename to...
+       (microblaze_function_arg_advance): ...this.  Make static.  Take a
+       const_tree and a bool.
+       (function-arg): Rename to...
+       (microblaze_function_arg): ...this.  Make static.  Take a const_tree
+       and a bool.
+       (microblaze_expand_prologue): Call targetm.calls.function_arg and
+       targetm.calls.function_arg_advance.
+       (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
+
+2010-11-02  Iain Sandoe  <iains@gcc.gnu.org>
+
+       Merge from FSF "apple/trunk" branch.
+
+       * config/rs6000/darwin.opt (mdynamic-no-pic): move from here ...
+       * config/darwin.opt: .. to here.
+       (matt-stubs): New option.
+       * config/i386/darwin.opt: Delete.
+       * config/i386/i386.h (MACHOPIC_ATT_STUB): New.
+       (MACHO_DYNAMIC_NO_PIC_P): New.
+       (MACHOPIC_INDIRECT): New.
+       (MACHOPIC_PURE): New.
+       * config/i386/darwin.h (DARWIN_X86) Define to 1.
+       (MACHOPIC_ATT_STUB): New.
+       (CC1_SPEC): Do not remove mdynamic-no-pic.
+       Move HOT_TEXT_SECTION_NAME: move to config/darwin.h
+       UNLIKELY_EXECUTED_TEXT_SECTION_NAME: Likewise.
+       (FUNCTION_PROFILER): Correct over-length line.
+       (SUBTARGET_OVERRIDE_OPTIONS): New.
+       (MACHOPIC_NL_SYMBOL_PTR_SECTION): New.
+       * config/i386/i386.c (config/i386/i386.c): Darwin has no PLT.
+       (legitimate_constant_p): Handle mdynamic-no-pic.
+       (ix86_legitimate_address_p): Likewise.
+       (ix86_legitimize_address): Likewise.
+       (ix86_expand_move): Likewise.
+       (machopic_output_stub): Update for ATT-style stubs and
+       mdynamic-no-pic.
+       * config/darwin-protos.h (machopic_symbol_defined_p): New.
+       * config/rs6000/darwin.h (DARWIN_PPC): Define to 1.
+       TARGET_DYNAMIC_NO_PIC: Remove.
+       Move HOT_TEXT_SECTION_NAME: move to config/darwin.h
+       UNLIKELY_EXECUTED_TEXT_SECTION_NAME: Likewise.
+       * config/rs6000/rs6000.c (darwin_rs6000_override_options):
+       Remove handling of mdynamic-no-pic.
+       * config/darwin.c (HAVE_lo_sum, gen_macho_high, gen_macho_low):
+       Define if required.
+       (machopic_symbol_defined_p): Do not try to use current_function_decl
+       when generating _get_pc thunks within stubs.
+       (machopic_indirect_data_reference): Rework for direct conditionals
+       rather than #ifdefs, add x86 mdynamic-no-pic
+       (machopic_legitimize_pic_address): Update to use HAVE_lo_sum with a
+       defined value.
+       (darwin_override_options): Handle mdynamic-no-pic here.
+       * config/darwin-sections.def (machopic_lazy_symbol_ptr2_section): New.
+       (machopic_lazy_symbol_ptr3_section): New.
+       (machopic_picsymbol_stub2_section): New.
+       (machopic_picsymbol_stub3_section): New.
+       * config/darwin.h (DARWIN_X86, DARWIN_PPC): Define to 0.
+       (MACHOPIC_NL_SYMBOL_PTR_SECTION): New.
+       (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME):
+       Moved common definition from x86 and rs6000.
+       (MACHO_DYNAMIC_NO_PIC_P): Override value.
+       (MACHOPIC_INDIRECT): Likewise.
+       (MACHOPIC_PURE): Likewise.
+       * config.gcc (x86-darwin-*): Remove darwin.opt.
+
+2010-11-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/46255
+       * tree-cfg.c (gimple_flow_call_edges_add): Use gsi_last_nondebug_bb
+       instead of gsi_last_bb.
+
+2010-11-02  Bernd Schmidt  <bernds@codesourcery.com>
+           Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       * config/i386/i386.c (cpu_names): Add "corei7".
+       * config/i386/i386.h (enum target_cpu_default): Add entry for Core i7.
+
+2010-11-02  Bernd Schmidt  <bernds@codesourcery.com>
+           Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       Tune alignment for Intel Core i7
+
+       * config/i386.h (TARGET_COREI7{_32,_64,}): New macros.
+       (enum processor_type): Update comment.  Add entries for Core i7.
+       * config/i386-c.c (ix86_target_macros_internal): Update.
+       * config/i386.c (m_COREI7{_32,_64}): New macros.
+       (m_GENERIC32, m_GENERIC64): Use generic tuning for Core i7.
+       (processor_target_table): Tune alignment for Core i7.
+       (ix86_option_override_internal): Use PROCESSOR_COREI7_*.
+
+       * doc/invoke.texi: Document "corei7" option value.
+
+2010-11-02  Bernd Schmidt  <bernds@codesourcery.com>
+           Maxim Kuvyrkov  <maxim@codesourcery.com>
+           H.J. Lu  <hjl.tools@gmail.com>
+
+       Basic support for Intel Core i7
+
+       * i386.c (ix86_option_override_internal): Add entry for corei7, use
+       generic tuning.  Use generic32 when compiling for 32-bit ABI.
+
+2010-11-02  Iain Sandoe  <iains@gcc.gnu.org>
+
+       * config/darwin.c (darwin_asm_named_section): Check for __DWARF
+       sections and call darwin_asm_dwarf_section() to handle them.
+       (darwin_asm_dwarf_section): New.
+       (darwin_file_start): Remove code emitting dwarf section symbols.
+
+2010-11-02  Chung-Lin Tang <cltang@codesourcery.com>
+
+       * Makefile.in (LIBGCC2_CFLAGS): Add -fno-stack-protector, to
+       explicitly disable stack protection when building libgcc.
+       (CRTSTUFF_CFLAGS): Same, for crtbegin/end.
+
+2010-11-01  Jason Merrill  <jason@redhat.com>
+
+       * fold-const.c (fold_indirect_ref_1): Handle folding
+       POINTER_PLUS_EXPR to ARRAY_REF.
+
+2010-11-01  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
+       (sh_delegitimize_address): New function.
+
+2010-11-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/alpha/alpha.h (WORD_SWITCH_TAKES_ARG): Remove.
+       * config/cris/cris.h (WORD_SWITCH_TAKES_ARG): Remove.
+       (CC1_SPEC): Don't handle -target.
+       * config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove single-argument
+       options.
+       * config/darwin.opt (Zallowable_client, Zbundle_loader,
+       Zdylib_file, Zexported_symbols_list, Zfn_seg_addr_table_filename,
+       Zimage_base, Zinit, Zinstall_name, Zmultiply_defined,
+       Zmultiplydefinedunused, Zseg_addr_table, Zsegs_read_only_addr,
+       Zsegs_read_write_addr, Zumbrella, Zunexported_symbols_list,
+       Zweak_reference_mismatches, client_name, compatibility_version,
+       current_version, dylinker_install_name, pagezero_size,
+       read_only_relocs, seg1addr, segs_read_only_addr,
+       segs_read_write_addr, sub_library, sub_umbrella): New.
+       * config/freebsd-spec.h (BSD_WORD_SWITCH_TAKES_ARG): Remove.
+       * config/freebsd.h (WORD_SWITCH_TAKES_ARG): Remove.
+       * config/freebsd.opt: New.
+       * config/interix.h (WORD_SWITCH_TAKES_ARG): Remove.
+       * config/mips/iris6.h (WORD_SWITCH_TAKES_ARG): Remove.
+       * config/rpath.opt: New.
+       * config.gcc (*-*-freebsd*): Use rpath.opt and freebsd.opt.
+       (alpha*-dec-osf5.1*, i[34567]86-*-interix3*, mips-sgi-irix6.5*):
+       Use rpath.opt.
+
+2010-11-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * common.opt (R, T, Tbss, Tdata, Ttext, h, z): New.
+       * defaults.h (DEFAULT_SWITCH_TAKES_ARG, SWITCH_TAKES_ARG): Remove.
+       (DEFAULT_WORD_SWITCH_TAKES_ARG): Define to 0.
+       * doc/tm.texi.in (SWITCH_TAKES_ARG): Remove.
+       (WORD_SWITCH_TAKES_ARG): Don't refer to SWITCH_TAKES_ARG.
+       Document that options in .opt files do not need to be included.
+       * doc/tm.texi: Regenerate.
+       * gcc.c (LINK_COMMAND_SPEC): Don't include %{x}.
+       * opts-common.c: Update comment on tm.h include.
+       (decode_cmdline_option): Don't use SWITCH_TAKES_ARG.
+       * system.h (SWITCH_TAKES_ARG): Poison.
+       * config/alpha/alpha.h (SWITCH_TAKES_ARG): Remove.
+       * config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove options included
+       in darwin.opt.
+       (LINK_COMMAND_SPEC_A): Don't include %{x}.
+       * config/fr30/fr30.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
+       * config/freebsd-spec.h (FBSD_SWITCH_TAKES_ARG): Remove.
+       * config/freebsd.h (SWITCH_TAKES_ARG): Remove.
+       * config/frv/frv.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
+       * config/i386/djgpp.h (LINK_COMMAND_SPEC): Don't include %{x}.
+       * config/ia64/ia64.h (SWITCH_TAKES_ARG): Remove.
+       * config/interix.h (WORD_SWITCH_TAKES_ARG): Don't handle -T options.
+       * config/lm32/lm32.h (SWITCH_TAKES_ARG): Remove.
+       * config/m32r/m32r.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
+       * config/microblaze/microblaze.h (SWITCH_TAKES_ARG): Remove.
+       * config/mips/mips.h (SWITCH_TAKES_ARG): Remove.
+       * config/mips/netbsd.h (SWITCH_TAKES_ARG): Remove.
+       * config/mips/vxworks.h (SWITCH_TAKES_ARG): Remove.
+       * config/netbsd-aout.h (SWITCH_TAKES_ARG): Remove.
+       * config/netbsd-elf.h (SWITCH_TAKES_ARG): Remove.
+       * config/openbsd.h (SWITCH_TAKES_ARG): Remove.
+       * config/rs6000/sysv4.h (SWITCH_TAKES_ARG): Remove.
+       * config/score/score.h (SWITCH_TAKES_ARG): Remove.
+       * config/sol2.h (SWITCH_TAKES_ARG): Remove.
+       * config/sparc/sp-elf.h (SWITCH_TAKES_ARG): Remove.
+       * config/sparc/sp64-elf.h (SWITCH_TAKES_ARG): Remove.
+       * config/sparc/sparc.h (ASM_SPEC): Don't include %{R}.
+       * config/svr4.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
+
+2010-11-01  Paul Koning  <ni1d@arrl.net>
+
+       * config/pdp11/pdp11.md: Use iterators.
+       (addqi3, subqi3, iorsi3, xorsi3): Delete.
+
+2010-11-01  Steve Ellcey  <sje@cup.hp.com>
+
+       * defaults.h (TARGET_VTABLE_USES_DESCRIPTORS): Move under ifdef
+       GCC_INSN_FLAGS_H.
+       * libgcov.c (__gcov_indirect_call_profiler): Set
+       VTABLE_USES_DESCRIPTORS if TARGET_VTABLE_USES_DESCRIPTORS is
+       defined and use in place of TARGET_VTABLE_USES_DESCRIPTORS.
+
+2010-11-01  Nathan Froyd  <froydnj@codesourcery.com>
+
+       PR tree-optimization/46259
+
+       Revert:
+       2010-10-30  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * tree-vect-stmts.c (vect_get_vec_def_for_operand): Use
+       build_vector_from_val.
+
+2010-11-01  DJ Delorie  <dj@redhat.com>
+
+       * config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Add define for RX610
+       as well as an assertion.
+
+2010-11-01  Paul Koning  <ni1d@arrl.net>
+
+       * config/pdp11/pdp11.c (pdp11_return_in_memory): Return vector and
+       complex modes in memory.
+
+2010-11-01  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * tree.c (build_vector_from_val): Use useless_type_conversion_p.
+
+2010-11-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/45250
+       * var-tracking.c (cfa_base_rtx): Move definition earlier in the file.
+       (cfa_base_offset): New variable.
+       (compute_cfa_pointer): Use cfa_base_rtx and cfa_base_offset.
+       (adjust_mems): Don't do any sp or hfp replacements if cfa_base_rtx
+       is NULL.
+       (vt_init_cfa_base): Initialize cfa_base_offset.
+
+2010-11-01  Alan Modra  <amodra@gmail.com>
+
+       PR target/46030
+       * config/rs6000/rs6000.c (struct rs6000_stack): Add reload_completed
+       and savres_strategy.
+       (stack_info): New file scope var.
+       (rs6000_init_machine_status): Init stack_info.
+       (SAVRES_INLINE_FPRS, SAVRES_INLINE_GPRS,
+       SAVRES_NOINLINE_GPRS_SAVES_LR, SAVRES_NOINLINE_FPRS_SAVES_LR,
+       SAVRES_NOINLINE_FPRS_DOESNT_RESTORE_LR): Replace with..
+       (SAVE_INLINE_FPRS, SAVE_INLINE_GPRS, REST_INLINE_FPRS, REST_INLINE_GPRS,
+       SAVE_NOINLINE_GPRS_SAVES_LR, SAVE_NOINLINE_FPRS_SAVES_LR
+       REST_NOINLINE_FPRS_DOESNT_RESTORE_LR): ..this.  Update all refs.
+       (rs6000_savres_strategy): Rewrite.
+       (rs6000_stack_info): Use "stack_info" in place of local "info".
+       Return cached stack info when reload_completed unless ENABLE_CHECKING
+       in which case confirm newly calculated stack info matches old info.
+       Delay calculation of lr_save_p, set it for out of line gp save/restore
+       as well as fp.  Call rs6000_savres_strategy from here..
+       (rs6000_emit_prologue, rs6000_emit_epilogue): ..rather than here.
+       (rs6000_output_function_prologue): Use info->savres_strategy to
+       determine whether fp save/restore externs need to be emitted.
+
+2010-10-31  Jason Merrill  <jason@redhat.com>
+
+       * tree.h (EXPR_LOC_OR_HERE): New macro.
+       * builtins.c (c_strlen): Use it.
+       * c-decl.c (build_enumerator): Likewise.
+       * gimplify.c (internal_get_tmp_var): Likewise.
+       (shortcut_cond_expr): Likewise.
+       (gimplify_one_sizepos): Likewise.
+
+2010-10-31  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/cygming.h (TARGET_SEH): New.
+       (MAX_STACK_ALIGNMENT): New.  Disable alignment for SEH.
+       (TARGET_ASM_UNWIND_EMIT, TARGET_ASM_UNWIND_EMIT_BEFORE_INSN,
+       TARGET_ASM_FUNCTION_END_PROLOGUE, SUBTARGET_ASM_UNWIND_INIT): New.
+       (TARGET_OS_CPP_BUILTINS): Define __SEH__ as needed.
+       (ASM_DECLARE_FUNCTION_NAME): Use i386_pe_start_function.
+       (ASM_DECLARE_FUNCTION_SIZE): New.
+       * config/i386/i386-protos.h: Update.
+       * config/i386/i386.c (ix86_option_override_internal): Enable
+       flag_unwind_tables with flag_asynchronous_unwind_tables immediately;
+       restrict -mpreferred-stack-boundary for SEH; enable flag_fentry.
+       (ix86_asm_output_function_label): Use SUBTARGET_ASM_UNWIND_INIT.
+       (ix86_compute_frame_layout): For SEH, disable
+       use_fast_prologue_epilogue, move frame pointer to the end of
+       the frame.  Initialize hfp_save_offset.
+       (ix86_expand_prologue): Honor hfp_save_offset.  Emit blockage
+       at end of prologue for SEH.
+       (ix86_expand_epilogue): For SEH, use pops, emit a nop if needed,
+       emit blockage at beginning of epilogue.
+       (ix86_expand_binary_operator): After reload, emit LEA if needed.
+       (ix86_output_call_insn): New.
+       * config/i386/i386.h (TARGET_SEH): New.
+       (struct machine_function): Add member seh.
+       * config/i386/i386.md (all call patterns): Use ix86_output_call_insn.
+       * config/i386/winnt.c (struct seh_frame_state): New.
+       (i386_pe_seh_init, i386_pe_seh_end_prologue, i386_pe_seh_fini,
+       seh_emit_push, seh_emit_save, seh_emit_stackalloc, seh_cfa_adjust_cfa,
+       seh_cfa_offset, seh_frame_related_expr, i386_pe_seh_unwind_emit,
+       i386_pe_start_function, i386_pe_end_function): New.
+
+       * dwarf2out.c (dwarf2out_frame_debug_expr): Accept CFA as well
+       as CFA_STORE in rules 12 and 13.
+
+2010-10-31  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR tree-optimization/46142
+       * tree-vect-stmts.c (vectorizable_call): Enlarge dt array to
+       accommodate third function argument.
+
+2010-10-30  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * tree-ssa-loop-im.c (rewrite_reciprocal): Use build_one_cst.
+
+2010-10-30  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * fold-const.c (build_zero_vector): Use build_vector_from_val.
+       * tree-vect-loop.c (get_initial_def_for_induction): Likewise.
+       (get_initial_def_for_reduction): Likewise.
+       * tree-vect-slp.c (vect_get_constant_vectors): Likewise.
+       * tree-vect-stmts.c (vect_get_vec_def_for_operand): Likewise.
+       * tree.c (build_one_cst): Likewise.
+       (build_vector_from_val): Use types_compatible_p for assert.
+
+2010-10-30  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * emit-rtl.c (mark_used_flags): New function.
+       (set_used_flags, reset_used_flags): Call it.
+
+2010-10-30  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR middle-end/44569
+       * lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
+       determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
+
+2010-10-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/46195
+       * config/i386/i386.c (contains_aligned_value_p): Renamed to ...
+       (ix86_compat_aligned_value_p): This.
+       (ix86_old_function_arg_boundary): Renamed to ...
+       (ix86_compat_function_arg_boundary): This.  Updated.
+       (ix86_contains_aligned_value_p): New.
+       (ix86_function_arg_boundary): Align long double parameters on
+       stack to 4byte in 32bit.
+
+2010-10-30  Nicola Pero  <nicola.pero@meta-innovation.com>
+
+       Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
+       * c-parser.c (c_parser_objc_at_property_declaration): Removed
+       parsing of RID_COPIES and RID_IVAR.  Updated call to
+       objc_add_property_declaration.
+       * c-typecheck.c (build_component_ref): Call
+       objc_maybe_build_component_ref instead of objc_build_setter_call.
+       Use objc_is_property_ref to improve Objective-C checks.
+       (cp_build_modify_expr): Call objc_maybe_build_modify_expr instead
+       of objc_build_getter_call.
+
+2010-10-29  Paul Koning  <ni1d@arrl.net>
+
+       * doc/tm.texi.in (REGNO_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_BASE_P,
+       REGNO_MODE_OK_FOR_REG_BASE, REGNO_MODE_CODE_OK_FOR_BASE_P,
+       REGNO_OK_FOR_INDEX_P): Delete non-strict variant.
+       (REG_OK_STRICT): Move description.
+
+2010-10-29  Paul Koning  <ni1d@arrl.net>
+
+       * config/pdp11/pdp11.md (*and<mode>): Rename to *bic<mode>.
+
+2010-10-29  Paul Koning  <ni1d@arrl.net>
+
+       * config/pdp11/pdp11.md (divhi3, modhi3, divmodhi3): Fix ICE.
+
 2010-10-29  Paul Koning  <ni1d@arrl.net>
 
        PR/41822
        instruction encoding.
 
 2010-10-29  Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
-       Andrew Pinski <pinskia@gmail.com>
+           Andrew Pinski <pinskia@gmail.com>
 
        * tree.h (build_vector_from_val): Declare.
        * tree.c (build_vector_from_val): New function.
        pdp11_preferred_output_reload_class, pdp11_secondary_reload,
        pdp11_secondary_memory_needed): New function.
        (pdp11_return_in_memory): Add other float types.
-       * config/pdp11/pdp11.h (HARD_REGNO_MODE_OK): Add other float
-       types. 
+       * config/pdp11/pdp11.h (HARD_REGNO_MODE_OK): Add other float types.
        (SECONDARY_MEMORY_NEEDED, CANNOT_CHANGE_MODE_CLASS): Define.
        (PREFERRED_RELOAD_CLASS, SECONDARY_RELOAD_CLASS,
        REGISTER_MOVE_COST): Delete.
        * config/mn10300/mn10300.c (mn10300_tune_string): New variable.
        (mn10300_tune_cpu): New variable.
        (mn10300_handle_option): Handle -mam34 and -mtune options.
-       (mn10300_option_override): Convert tune string into tune cpu
-       variable.
+       (mn10300_option_override): Convert tune string into tune cpu variable.
        (mn10300_legitimate_constant_p): Delete unused local variable.
        (is_load_insn): New function.
        (is_store_insn): New function.
        (TARGET_SCHED_ADJUST_COST): Define.
        * config/mn10300/mn10300.opt (mam34): New option.
        (mtune): New option.
-       * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Add AM34
-       support.
+       * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Add AM34 support.
        (enum processor_type): Add AM34.
        (TARGET_AM34): Define.
        * config/mn10300/mn10300.md (attr cpu): Add am34.
        Add pipeline description.
-       (movqi, movhi, movsi, movsf, movdf, movdi): Fix predicates. Remove unneeded
-       alternatives.  Add timing attribute.
+       (movqi, movhi, movsi, movsf, movdf, movdi): Fix predicates.
+       Remove unneeded alternatives.  Add timing attribute.
        (pop_pic_reg, am33_addsi3, mn10300_addsi3, am33_subsi3,
        mn10300_subsi3, mulsidi3, umulsidi3, am33_mulsi3,
        mn10300_mulsi3, udivmodsi4_am33, divmodsi4, am33_andsi3,
        (FUNCTION_ARG_ADVANCE): Delete.
        * config/cris/cris.c (cris_function_arg_1, cris_function_arg): New
        functions.
-       (cris_function_incoming_arg, cris_function_arg_advance): New
-       functions.
+       (cris_function_incoming_arg, cris_function_arg_advance): New functions.
        (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
        (TARGET_FUNCTION_ARG_ADVANCE): Define.
 
        * config/crx/crx.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
        * config/crx/crx.c (crx_function_arg): Make static.  Take a
        const_tree and a bool.
-       (crx_function_arg_advance): Make static.  Take a const_tree and
-       a bool.
+       (crx_function_arg_advance): Make static.  Take a const_tree and a bool.
        (enough_regs_for_param): Take a const_tree.
        (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
 
        (frv_function_arg_advance): Delete.
        * config/frv/frv.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
        * config/frv/frv.c (frv_function_arg): Rename to...
-       (frv_function_arg_1): Make static.  Take const_tree and bool
-       arguments.
+       (frv_function_arg_1): Make static.  Take const_tree and bool arguments.
        (frv_function_arg, frv_function_incoming_arg): New functions.
-       (frv_function_arg_advance): Make static.  Take a const_tree and
-       a bool.
+       (frv_function_arg_advance): Make static.  Take a const_tree and a bool.
        (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
        (TARGET_FUNCTION_ARG_ADVANCE): Define.
 
 
 2010-10-27  Nicola Pero  <nicola.pero@meta-innovation.com>
 
+       * c-parser.c (cp_parser_objc_at_property_declaration): Removed
+       parsing of RID_COPIES and RID_IVAR.
+
+2010-10-27  Nicola Pero  <nicola.pero@meta-innovation.com>
+
        * c-parser.c (c_parser_objc_at_property_declaration): Recognize
        RID_ASSIGN, RID_COPY, RID_RETAIN, RID_READWRITE and RID_NONATOMIC.
        Do not use objc_set_property_attr, but use local variables