OSDN Git Service

2010-12-02 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 44883d0..1b942af 100644 (file)
@@ -1,3 +1,754 @@
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+
+       * value-prof.c (gimple_ic): Use stmt_ends_bb_p to detect
+       the case we need to split the edge and not the block.
+
+2010-12-02  Bernd Schmidt  <bernds@codesourcery.com>
+
+       DFA model for Core 2 and Core i7 scheduling.
+
+       * config/i386/core2.md: New DFA model for Core 2 and Core i7.
+       * config/i386/i386.c (ix86_option_override_internal): Update entries
+       for Core 2 and Core i7.
+       (ix86_issue_rate): Set issue rate to 3 [be realistic].
+       * config/i386/i386.md: Include "core2.md".
+       (define_attr cpu): Add "corei7".
+
+2010-12-02  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       Define tuning for Core 2 and Core i7.
+
+       * config/i386/i386-c.c (ix86_target_macros_internal): Update.
+       * config/i386/i386.c (core2_cost): Delete, use generic costs instead.
+       (m_CORE2): Replace with m_CORE2_{32,64}.
+       (m_CORE2I7{,_32,_64}): New macros.
+       (m_GENERIC32, m_GENERIC64): Update.
+       (initial_ix86_tune_features, x86_accumulate_outgoing_args,)
+       (x86_arch_always_fancy_math_387): Set m_CORE2I7_32 iff m_GENERIC32 and
+       set m_CORE2I7_64 iff m_GENERIC64.
+       (processor_target_table): Use generic costs for Core 2 and Core i7.
+       (ix86_option_override_internal): Update entries for Core 2 and Core i7.
+       (ix86_issue_rate): Remove entry for Core 2.
+       (ia32_multipass_dfa_lookahead, ix86_sched_init_global): Update.
+       * config/i386/i386.h (TARGET_CORE2_32, TARGET_CORE2_64): New macros.
+       (TARGET_CORE2): Update.
+       (PROCESSOR_CORE2_32, PROCESSOR_CORE2_64): New constants.
+       (PROCESSOR_CORE2): Remove.
+
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+
+       * lto-streamer.h (LTO_major_version): Bump to 2.
+
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/44871
+       * gimple.c (canonical_type_hash_cache): New hashtable.
+       (gimple_type_hash): Make a wrapper around ...
+       (gimple_type_hash_1): ... this.  Take gtc_mode argument.
+       (gimple_canonical_type_hash): Likewise.
+       (gtc_visit): Take a gtc_mode argument.
+       (gimple_types_compatible_p_1): Likewise. Do not compare struct
+       tag names or field names when computing canonical types.
+       (gimple_types_compatible_p): Adjust.
+       (visit): Take a gtc_mode argument.
+       (iterative_hash_gimple_type): Likewise.  Do not hash struct tag
+       names or field names when computing hashes of canonical types.
+       (gimple_register_canonical_type): Use gimple_canonical_type_hash
+       for the hash.
+       (print_gimple_types_stats): Dump stats of canonical_type_hash_cache.
+       (free_gimple_type_tables): Free canonical_type_hash_cache.
+
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+           Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/46663
+       * tree-vect-patterns.c (vect_recog_pow_pattern): Check that
+       FUNCTION_DECL exists and that it's a builtin.
+
+2010-12-02  Jie Zhang  <jie@codesourcery.com>
+
+       PR middle-end/46674
+       * varasm.c (compute_visible_aliases): Handle user set
+       assembler name.
+
+2010-12-01  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       * config/rs6000/rs6000.c (rs6000_option_override_internal): Fix
+       thinko regarding setting -mno-<xxx> debug switches.
+       (rs6000_rtx_costs): Add FMA.  Delete old rtl based FMA costs.
+
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * intl.c: Don't include tm.h.
+       * Makefile.in (intl.o): Don't depend on $(TM_H).
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (analyze_drs_in_stmts): Fix set but
+       unused warning.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (analyze_drs): Removed.
+       (build_scop_drs): Do not call analyze_drs.
+       (analyze_drs_in_stmts): New.
+       (insert_stmts): New.
+       (insert_out_of_ssa_copy): Call analyze_drs_in_stmts.
+       (insert_out_of_ssa_copy_on_edge): Same.
+       (rewrite_close_phi_out_of_ssa): Call insert_stmts.
+       (rewrite_phi_out_of_ssa): Same.
+       (rewrite_cross_bb_scalar_dependence): Same.
+       (split_reduction_stmt): Move data references in the new basic blocks.
+       (translate_scalar_reduction_to_array_for_stmt): Call insert_stmts.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (rename_uses): Do not handle ADDR_EXPR in LHS of assignments.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/45297
+       * graphite-poly.c (new_poly_bb): Returns a poly_bb_p.  Do not take
+       the reduction bool in parameter.  Clear PBB_IS_REDUCTION.  Set GBB_PBB.
+       * graphite-poly.h (new_poly_bb): Update declaration.
+       (gbb_from_bb): Moved here...
+       (pbb_from_bb): New.
+       * graphite-sese-to-poly.c (var_used_in_not_loop_header_phi_node):
+       Removed.
+       (graphite_stmt_p): Removed.
+       (try_generate_gimple_bb): Returns a gimple_bb_p.  Do not pass in
+       sbitmap reductions.  Always build a gimple_bb_p.  Do not call
+       new_poly_bb.
+       (build_scop_bbs_1): Do not pass in sbitmap reductions.
+       (build_scop_bbs): Same.
+       (gbb_from_bb): ... from here.
+       (add_conditions_to_constraints): Moved up.
+       (analyze_drs): New.
+       (build_scop_drs): Call analyze_drs.  Remove all the PBBs that do
+       not contain data references.
+       (new_pbb_from_pbb): New.
+       (insert_out_of_ssa_copy_on_edge): Call new_pbb_from_pbb after a
+       block is split.
+       (rewrite_close_phi_out_of_ssa): Update call to
+       insert_out_of_ssa_copy_on_edge.
+       (rewrite_reductions_out_of_ssa): Now static.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+       (split_pbb): New.
+       (split_reduction_stmt): Call split_pbb.
+       (translate_scalar_reduction_to_array): Pass in the scop, do not
+       pass in the sbitmap reductions.
+       (rewrite_commutative_reductions_out_of_ssa_close_phi): Same.
+       (rewrite_commutative_reductions_out_of_ssa_loop): Same.
+       (rewrite_commutative_reductions_out_of_ssa): Same.
+       (build_poly_scop): Call build_scop_bbs,
+       rewrite_commutative_reductions_out_of_ssa,
+       rewrite_reductions_out_of_ssa, and
+       rewrite_cross_bb_scalar_deps_out_of_ssa.  Move build_scop_drs
+       before scop_to_lst.
+       * graphite-sese-to-poly.h (rewrite_commutative_reductions_out_of_ssa):
+       Removed declaration.
+       (rewrite_reductions_out_of_ssa): Same.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+       (build_scop_bbs): Same.
+       * graphite.c (graphite_transform_loops): Do not initialize reductions.
+       Do not call build_scop_bbs,
+       rewrite_commutative_reductions_out_of_ssa,
+       rewrite_reductions_out_of_ssa, and
+       rewrite_cross_bb_scalar_deps_out_of_ssa.
+       * sese.h (struct gimple_bb): Add field pbb.
+       (GBB_PBB): New.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (handle_scalar_deps_crossing_scop_limits):
+       New.
+       (rewrite_cross_bb_scalar_deps): Pass in the scop.  Call
+       handle_scalar_deps_crossing_scop_limits.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Create an empty BB
+       after the scop.  Update call to rewrite_cross_bb_scalar_deps.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (rename_uses): Call recompute_tree_invariant_for_addr_expr
+       when replacing a constant in an ADDR_EXPR.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-blocking.c (lst_do_strip_mine_loop): Extra parameter
+       for the stride.
+       (lst_do_strip_mine): Same.
+       (scop_do_strip_mine): Same.
+       * graphite-poly.c (apply_poly_transforms): Update call to
+       scop_do_strip_mine.
+       * graphite-poly.h (scop_do_strip_mine): Update declaration.
+
+2010-12-01  Jan Hubicka  <jh@suse.cz>
+
+       * tree.c (build_common_builtin_nodes): Do not initialize
+       BUILT_IN_PROFILE_FUNC_ENTER and BUILT_IN_PROFILE_FUNC_EXIT.
+       * builtins.c (expand_builtin_profile_func): Remove.
+       (expand_builtin): Do not handle BUILT_IN_PROFILE_FUNC_ENTER and
+       BUILT_IN_PROFILE_FUNC_EXIT.
+       * builtins.def (profile_func_enter, profile_func_exit): Remove stubs.
+       (__cyg_profile_func_enter, __cyg_profile_func_exit): New.
+       * gimplify.c (gimplify_function_tree): Reorganize code calling
+       profiling functions.
+
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * opts.c: Expand comment on tm.h include.
+
+2010-12-01  Yao Qi  <yao@codesourcery.com>
+
+       * config/arm/predicates.md ("vfp_register_operand"): Return true for
+       VFP_D0_D7_REGS classes.
+
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * common.opt (flag_stack_check): New Variable entry.
+       (fcompare-debug-second): Use Var.
+       * flags.h (flag_compare_debug, flag_stack_check): Remove.
+       * opts.c (flag_compare_debug): Remove.
+       (common_handle_option): Don't handle OPT_fcompare_debug_second.
+       Set opts->x_flag_stack_check for OPT_fstack_check_.
+       * toplev.c (flag_stack_check): Remove.
+
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * common.opt (main_input_filename, main_input_basename,
+       main_input_baselength): New Variable entries.  From toplev.c.
+       * final.c (output_quoted_string): Move from toplev.c.
+       * output.h (output_quoted_string): Move from toplev.h.
+       * opts-global.c (read_cmdline_options): Use gcc_options pointer to
+       access main_input_filename, main_input_baselength and
+       main_input_basename.
+       * targhooks.c: Include intl.h and opts.h.
+       (option_affects_pch_p, default_get_pch_validity): Move from
+       toplev.c.
+       * targhooks.h (option_affects_pch_p, default_get_pch_validity):
+       Move from toplev.h.
+       * toplev.c (main_input_filename, main_input_basename,
+       main_input_baselength): Move to common.opt.
+       (output_quoted_string): Move to final.c.
+       (warn_deprecated_use): Move to tree.c.
+       (option_affects_pch_p, default_get_pch_validity,
+       pch_option_mismatch, default_pch_valid_p): Move to targhooks.c.
+       * toplev.h (skip_leading_substring): Move to tree-dump.c.
+       (warn_deprecated_use): Move to tree.h.
+       (output_quoted_string): Move to output.h.
+       (main_input_filename, main_input_basename, main_input_baselength):
+       Move to common.opt.
+       (default_get_pch_validity, default_pch_valid_p): Move to
+       targhooks.c.
+       * tree-dump.c (skip_leading_substring): Move from toplev.h.
+       * tree.c (warn_deprecated_use): Move from toplev.c.
+       * tree.h (warn_deprecated_use): Move from toplev.h.
+       * c-typeck.c, config/alpha/alpha.c, config/arc/arc.c,
+       config/arm/arm.c, config/avr/avr.c, config/bfin/bfin.c,
+       config/cris/cris.c, config/crx/crx.c, config/fr30/fr30.c,
+       config/frv/frv.c, config/h8300/h8300.c, config/ia64/ia64.c,
+       config/iq2000/iq2000.c, config/lm32/lm32.c, config/m32c/m32c.c,
+       config/m32r/m32r.c, config/m68hc11/m68hc11.c, config/m68k/m68k.c,
+       config/mcore/mcore.c, config/mep/mep.c,
+       config/microblaze/microblaze.c, config/mips/mips.c,
+       config/mmix/mmix.c, config/mn10300/mn10300.c,
+       config/moxie/moxie.c, config/pa/pa.c, config/pdp11/pdp11.c,
+       config/picochip/picochip.c, config/s390/s390.c,
+       config/score/score.c, config/sh/sh.c, config/sparc/sparc.c,
+       config/spu/spu.c, config/stormy16/stormy16.c, config/v850/v850.c,
+       config/vax/vax.c, config/xtensa/xtensa.c, gimple-low.c,
+       graphite-sese-to-poly.c, plugin.c, tree-cfg.c, tree-inline.c,
+       varasm.c, xcoffout.c: Don't include toplev.h.
+       * Makefile.in (c-typeck.o, tree-inline.o, tree-cfg.o,
+       gimple-low.o, graphite-sese-to-poly.o, targhooks.o, plugin.o,
+       varasm.o, xcoffout.o): Update dependencies.
+       * config/arm/t-arm (arm.o): Update dependencies.
+       * config/spu/t-spu-elf (spu.o): Update dependencies.
+
+2010-12-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46730
+       * value-prof.c (gimple_ic): Always generate a separate merge BB.
+
+2010-11-30  Ian Lance Taylor  <iant@google.com>
+
+       * config/i386/linux.h (ASM_SPEC): Pass -v as -v, not -V.  Remove
+       all of %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}.
+       * config/i386/linux64.h (ASM_SPEC): Likewise.
+       * config/i386/mingw-w64.h (ASM_SPEC): Likewise.
+       * config/i386/sol2-10.h (ASM_SPEC) [USE_GAS]: Likewise.
+       * config/i386/vxworks.h (ASM_SPEC): Likewise.
+       * config/i386/x86-64.h (ASM_SPEC): Likewise.
+       * config/i386/sol2.h (ASM_SPEC): Remove %{Wa,*:%*}.
+       * config/i386/sol2-10.h (ASM_SPEC) [!USE_GAS]: Likewise.
+
+2010-11-30  Nicola Pero  <nicola.pero@meta-innovation.com>
+
+       * c-decl.c (finish_function): Call objc_finish_function in
+       Objective-C.
+       * c-typeck.c (convert_for_assignment): Do not call
+       objc_type_quals_match().
+
+2010-11-30  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46722
+       * tree-ssa-math-opts.c (convert_mult_to_fma): Get multiplication
+       operands as arguments.
+       (execute_optimize_widening_mul): Also handle power of two as
+       multiplication.
+
+2010-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>
+
+       PR middle-end/46709
+       * cgraphunit.c (process_function_and_variable_attributes): Fix
+       cut'n'pasteo.
+
+2010-11-30  Joseph Myers  <joseph@codesourcery.com>
+
+       * hwint.c:  New.  Extracted from toplev.c.
+       * hwint.h (clz_hwi, ctz_hwi, ffs_hwi, exact_log2, floor_log2):
+       Move from toplev.h.
+       * toplev.c (clz_hwi, ctz_hwi, ffs_hwi, exact_log2, floor_log2):
+       Move to hwint.c.
+       * toplev.h (clz_hwi, ctz_hwi, ffs_hwi, exact_log2, floor_log2):
+       Move to hwint.h.
+       * builtins.c, combine.c, config/i386/winnt.c, double-int.c,
+       explow.c, expmed.c, fold-const.c, ggc-page.c, ggc-zone.c, ifcvt.c,
+       ipa-struct-reorg.c, ira-color.c, matrix-reorg.c, omp-low.c,
+       real.c, recog.c, reload.c, rtlanal.c, simplify-rtx.c,
+       stor-layout.c, tree-dfa.c, tree-ssa-alias.c,
+       tree-ssa-loop-niter.c, tree-vect-data-refs.c,
+       tree-vect-loop-manip.c, tree-vect-loop.c, tree-vect-stmts.c,
+       tree-vrp.c: Don't include toplev.h.
+       * genattrtab.c, genconditions.c, genemit.c, genextract.c,
+       genoutput.c, genpeep.c, genpreds.c, genrecog.c: Don't include
+       toplev.h in generated output.
+       * Makefile.in (OBJS-common): Add hwint.o.
+       Dependencies for above files changed to remove toplev.h.
+       (hwint.o): New.
+       (insn-attrtab.o, insn-emit.o, insn-extract.o, insn-output.o,
+       insn-peep.o, insn-preds.o, insn-recog.o): Don't depend on
+       toplev.h.
+       * config/i386/t-cygming (winnt.o): Don't depend on toplev.h.
+       * config/i386/t-interix (winnt.o): Don't depend on toplev.h.
+
+2010-11-30  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46717
+       * value-prof.c (gimple_ic): Preserve EH edges of the indirect
+       call.  Manually create EH edges for the direct call and update
+       target PHI nodes.
+
+2010-11-30  Joseph Myers  <joseph@codesourcery.com>
+
+       * diagnostic-core.h: Include bversion.h.
+       * toplev.h: Don't include input.h or bversion.h.
+       (parse_optimize_options): Don't declare here.
+       * alias.c, auto-inc-dec.c, c-aux-info.c, c-convert.c, c-parser.c,
+       caller-save.c, cfg.c, cfganal.c, cfgbuild.c, cfgcleanup.c,
+       combine-stack-adj.c, config/arm/pe.c, config/darwin-c.c,
+       config/host-darwin.c, config/i386/host-cygwin.c,
+       config/i386/host-mingw32.c, config/i386/msformat-c.c,
+       config/i386/netware.c, config/i386/nwld.c,
+       config/i386/winnt-cxx.c, config/i386/winnt-stubs.c,
+       config/ia64/ia64-c.c, config/m32c/m32c-pragma.c,
+       config/mep/mep-pragma.c, config/microblaze/microblaze-c.c,
+       config/rs6000/host-darwin.c, config/rs6000/rs6000-c.c,
+       config/score/score3.c, config/score/score7.c,
+       config/sh/symbian-base.c, config/sh/symbian-c.c,
+       config/sh/symbian-cxx.c, config/sol2-c.c, config/sol2.c,
+       config/v850/v850-c.c, config/vxworks.c, convert.c, cppbuiltin.c,
+       cselib.c, dbgcnt.c, ddg.c, dfp.c, dominance.c, emit-rtl.c,
+       fixed-value.c, fwprop.c, ggc-common.c, gimple.c, gimplify.c,
+       graphite-blocking.c, graphite-clast-to-gimple.c,
+       graphite-dependences.c, graphite-flattening.c,
+       graphite-interchange.c, graphite-poly.c,
+       graphite-scop-detection.c, graphite.c, haifa-sched.c,
+       implicit-zee.c, integrate.c, ipa-pure-const.c, ipa-reference.c,
+       ira-build.c, ira-conflicts.c, ira-costs.c, ira-lives.c, jump.c,
+       lists.c, loop-doloop.c, loop-iv.c, lto-cgraph.c, lto-compress.c,
+       lto-opts.c, lto-section-in.c, lto-section-out.c,
+       lto-streamer-out.c, lto-symtab.c, modulo-sched.c, optabs.c,
+       params.c, postreload-gcse.c, postreload.c, predict.c, profile.c,
+       regcprop.c, reginfo.c, regmove.c, reorg.c, resource.c,
+       sched-deps.c, sched-ebb.c, sched-rgn.c, sdbout.c,
+       sel-sched-dump.c, sel-sched-ir.c, sese.c, stmt.c, targhooks.c,
+       tree-cfgcleanup.c, tree-mudflap.c, tree-nomudflap.c,
+       tree-object-size.c, tree-outof-ssa.c, tree-phinodes.c,
+       tree-profile.c, tree-sra.c, tree-ssa-ccp.c, tree-ssa-coalesce.c,
+       tree-ssa-live.c, tree-ssa-loop-prefetch.c, tree-ssa-loop.c,
+       tree-ssa-operands.c, tree-ssa-structalias.c, tree-ssa-uninit.c,
+       tree-vect-patterns.c, value-prof.c, var-tracking.c, web.c: Don't
+       include toplev.h.
+       * Makefile.in (TOPLEV_H): Remove.  All uses changed to use
+       toplev.h.  Dependencies for above files and c-family files changed
+       to remove $(TOPLEV_H) or toplev.h.
+       (C_TREE_H): Don't include $(TOPLEV_H).
+       (DIAGNOSTIC_CORE_H): Use $(INPUT_H) instead of input.h.  Add
+       bversion.h.
+       * config/arm/t-pe, config/arm/t-wince-pe, config/i386/t-cygming,
+       config/ia64/t-ia64, config/mep/t-mep, config/score/t-score-elf,
+       config/t-darwin, config/t-sol2,
+       config/t-vxworks, config/v850/t-v850, config/v850/t-v850e:
+       Dependencies for above files changed to remove $(TOPLEV_H) or
+       toplev.h.
+
+2010-11-30  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/44986
+       * gcc.c (main): Use the first input with a compiler as infile
+       for link spec processing.
+
+2010-11-30  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/45949
+       * cgraphunit.c (ipa_passes): Stop after errors from
+       small IPA passes.
+
+2010-11-30  Mingjie Xing  <mingjie.xing@gmail.com>
+
+       * gcc-plugin.h: Include coretypes.h.
+       * Makefile.in (FUNCTION_H): Add hard-reg-set.h.
+
+2010-11-30  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
+
+       * ggc-zone.c (ggc_pch_read): Fix conditional compilation.
+       * ggc-none.c (ggc_internal_alloc_zone_stat)
+       (ggc_internal_cleared_alloc_zone_stat): New.
+
+2010-11-29  Joakim Tjernlund  <Joakim.Tjernlund@transmode.se>
+
+       * config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p): Check
+       TARGET_SINGLE_PIC_BASE for RS6000_PIC_OFFSET_TABLE_REGNUM.
+       (rs6000_emit_prologue): Don't set PIC register if
+       TARGET_SINGLE_PIC_BASE.
+       * config/rs6000/rs6000.opt (msingle-pic-base): New option.
+       * doc/invoke.texi (msingle-pic-base): Document.
+
+2010-11-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR driver/46712
+       * exec-tool.in (id): New.
+       Check and export LT_RCU_$id instead of LT_RCU.
+
+2010-11-29  Zdenek Dvorak  <rakdver@kam.uniff.cz>
+
+       PR tree-optimization/46675
+       * tree-ssa-loop-niter.c (split_to_var_and_offset): Avoid overflow
+       in offset calculation.
+
+2010-11-29  Jan Hubicka  <jh@suse.cz>
+
+       * collect2.c (main): Do not imply verbose output with
+       LTO and linker plugin.
+
+2010-11-29  Dodji Seketeli  <dodji@redhat.com>
+
+       * dwarf2out.c (print_die): Print the address of the current DIE or
+       of any DIE referenced by the current one.
+
+2010-11-29  Dodji Seketeli  <dodji@redhat.com>
+
+       PR debug/46101
+       * dwarf2out.c (lookup_type_die_strip_naming_typedef): New
+       function.
+       (scope_die_for, gen_type_die_for_member): Replace uses of
+       lookup_type_die with use of lookup_type_die_strip_naming_typedef.
+
+2010-11-29  Iain Sandoe  <iains@gcc.gnu.org>
+
+       * config/darwin.c (darwin_mergeable_string_section): Remove blank line.
+       (darwin_asm_declare_object_name): Correct spelling.
+       (darwin_output_aligned_bss): Likewise.
+
+2010-11-29  Iain Sandoe  <iains@gcc.gnu.org>
+           Mike Stump  <mrs@gcc.gnu.org>
+
+       PR target/26427
+       PR target/33120
+       PR testsuite/35710
+       * config/i386/darwin.h (ASM_OUTPUT_COMMON): Remove
+       (ASM_OUTPUT_LOCAL): Likewise.
+       * config/darwin-protos.h (darwin_asm_declare_object_name): New.
+       (darwin_output_aligned_bss): Likewise.
+       (darwin_asm_output_aligned_decl_local): Likewise.
+       (darwin_asm_output_aligned_decl_common): Likewise.
+       (darwin_use_anchors_for_symbol_p): Likewise.
+       * config/rs6000/darwin.h (ASM_OUTPUT_COMMON): Remove.
+       (TARGET_ASM_OUTPUT_ANCHOR): Define.
+       (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Define.
+       (DARWIN_SECTION_ANCHORS): Set to 1.
+       * config/darwin.c (emit_aligned_common): New var.
+       (darwin_init_sections): Check that the Darwin private zero-size section
+       marker is in range.
+       (darwin_text_section): Check for zero-sized objects.
+       (darwin_mergeable_string_section): Likewise.
+       (darwin_mergeable_constant_section): Likewise.
+       (machopic_select_section): Adjust to check for zero-sized objects.
+       Assert that OBJC meta data are non-zero sized.
+       (darwin_asm_declare_object_name): New.
+       (darwin_asm_declare_constant_name): Adjust for zero-sized
+       object sections.
+       (BYTES_ZFILL): Define.
+       (darwin_emit_weak_or_comdat): New.
+       (darwin_emit_local_bss): New.
+       (darwin_emit_common): New.
+       (darwin_output_aligned_bss): New.
+       (darwin_asm_output_aligned_decl_common): New.
+       (darwin_asm_output_aligned_decl_local): New.
+       (darwin_file_end): Disable subsections_via_symbols when section
+       anchoring is active.
+       (darwin_asm_output_anchor): Re-enable.
+       (darwin_use_anchors_for_symbol_p): New.
+       (darwin_override_options): Check for versions that can emit
+       aligned common.  Update usage of flags to current.
+       * config/darwin-sections.def: Update comments and flags for
+       non-anchor sections.  zobj_const_section, zobj_data_section,
+       zobj_bss_section, zobj_const_data_section: New.
+       * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Redefine.
+       (ASM_OUTPUT_ALIGN): Make whitespace output consistent.
+       (L2_MAX_OFILE_ALIGNMENT): Define.
+       (ASM_OUTPUT_ALIGNED_BSS): Define.
+       (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Define.
+       (ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
+       (SECTION_NO_ANCHOR): Define.
+       (TARGET_ASM_OUTPUT_ANCHOR) Define with a default of NULL.
+       (DARWIN_SECTION_ANCHORS): Define with a default of 0.
+
+2010-11-29  Joseph Myers  <joseph@codesourcery.com>
+
+       * system.h: Include "safe-ctype.h" instead of <safe-ctype.h>.
+       Include <signal.h>, <sys/mman.h>, <sys/resource.h> and <sys/times.h>.
+       (O_BINARY, SIGCHLD, MAP_FAILED, MAP_ANONYMOUS, kill):
+       Conditionally define.
+       (GET_ENVIRONMENT): Poison.
+       * configure.ac: Don't test for mincore.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+       * collect2-aix.c: Don't include <sys/mman.h>.
+       * collect2.c: Don't include <signal.h>.
+       (SIGCHLD): Don't define.
+       (prefix_from_env): Use getenv instead of GET_ENVIRONMENT.
+       * config/alpha/alpha.c: Include "splay-tree.h" instead of
+       <splay-tree.h>.
+       * config/arm/arm.c (arm_target_help): Use getenv instead of
+       GET_ENVIRONMENT.
+       * config/avr/driver-avr.c: Don't include <stdlib.h>.
+       * config/frv/frv.c: Don't include <ctype.h>.
+       * config/host-darwin.c: Don't include <sys/mman.h>.
+       * config/host-hpux.c: Don't include <sys/mman.h> or <unistd.h>.
+       (MAP_FAILED): Don't define.
+       * config/host-linux.c: Don't include <sys/mman.h> or <limits.h>.
+       * config/host-solaris.c: Don't include <sys/mman.h>.
+       * config/i386/cygming.h: Don't include <stdio.h>.
+       * config/i386/driver-i386.c: Don't include <stdlib.h>.
+       * config/i386/host-cygwin.c: Don't include <sys/mman.h>.
+       * config/iq2000/iq2000.c: Don't include <signal.h>.
+       * config/m32c/m32c-pragma.c: Don't include <stdio.h>.
+       * config/m68hc11/m68hc11.c: Don't include <stdio.h>.
+       * config/mep/mep-pragma.c: Don't include <stdio.h>.
+       * config/microblaze/microblaze.c: Don't include <signal.h>.
+       * config/mips/mips.c: Don't include <signal.h>.
+       * config/rs6000/host-darwin.c: Don't include <signal.h>.
+       * cppdefault.c (cpp_relocated): Use getenv instead of GET_ENVIRONMENT.
+       * defaults.h (GET_ENVIRONMENT): Don't define.
+       * et-forest.h: Don't include <ansidecl.h> or <stddef.h>.
+       * gcc.c: Don't include <signal.h>, <sys/mman.h> or <sys/types.h>.
+       (SIGCHLD, MAP_FAILED, kill): Don't define.
+       (process_command): Use getenv instead of GET_ENVIRONMENT.
+       * genhooks.c: Don't include <string.h>.
+       * ggc-common.c: Don't include <sys/resource.h>, <sys/mman.h> or
+       <sys/types.h>.
+       (MAP_FAILED): Don't define.
+       * ggc-page.c Don't include <sys/mman.h>.
+       (MAP_ANONYMOUS, MAP_FAILED): Don't define.
+       * ggc-zone.c: Don't include <sys/mman.h>.
+       (MAP_ANONYMOUS, MAP_FAILED): Don't define.
+       * graph.c: Include "config.h" instead of <config.h>.
+       * incpath.c (add_env_var_paths): Use getenv instead of GET_ENVIRONMENT.
+       * lto-wrapper.c: Don't include <errno.h>, <signal.h> or "libiberty.h".
+       (SIGCHLD, kill): Don't define.
+       * mips-tfile.c: Don't include <signal.h>.
+       * opts.c: Don't include <signal.h> or <sys/resource.h>.
+       (print_specific_help): Use getenv instead of GET_ENVIRONMENT.
+       * passes.c: Don't include <signal.h>, <sys/resource.h> or
+       <sys/times.h>.
+       * sparseset.h: Don't include <assert.h>.
+       * timevar.c: Don't include <sys/times.h> or <sys/resource.h>.
+       * tlink.c: Don't include "libiberty.h".
+       * toplev.c: Don't include <signal.h> or <sys/times.h>.
+       * tree-mudflap.c: Include "demangle.h" instead of <demangle.h>.
+       * tree-switch-conversion.c: Don't include <signal.h>.
+       * vmsdbgout.c: Don't include <errno.h> or <string.h>.
+
+2010-11-29  Nicola Pero  <nicola.pero@meta-innovation.com>
+
+       * c-parser.c (c_parser_objc_try_catch_statement): Renamed to
+       c_parser_objc_try_catch_finally_statement for consistency with the
+       C++ parser.  Parse @catch(...) and pass NULL_TREE to
+       objc_begin_catch_clause() in that case.  Improved error recovery.
+       Reorganized code to be almost identical to
+       cp_parser_objc_try_catch_finally_statement.
+
+2010-11-29  Joern Rennecke  <amylaar@spamcop.net>
+
+       PR tree-optimization/46621
+       * gimple.h: Don't include tm.h or hard-reg-set.h .
+       * Makefile.in (GIMPLE_H): Remove $(TM_H).
+
+       PR bootstrap/44756
+       * cppbuiltin.c: Include target.h .
+       (define_builtin_macros_for_type_sizes):
+       Use targetm.float_words_big_endian.
+
+2010-11-27  Jan Hubicka  <jh@suse.cz>
+
+       * dwarf2out.c (dwarf2out_begin_function): Set cold_text_section
+       and output cold_text_section_label.
+       (dwarf2out_init): Don't do that there.
+       (dwarf2out_finish): Handle cold section end label only if cold
+       section was used.
+
+2010-11-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-nested.c (remap_vla_decls): Fully expand value expressions of
+       VLA variables.
+
+2010-11-27  Richard Guenther  <rguenther@suse.de>
+
+       * gimple.c (gimple_assign_copy_p): Use gimple_assign_single_p.
+       (gimple_assign_ssa_name_copy_p): Likewise.
+       (gimple_assign_unary_nop_p): Use is_gimple_assign.
+       (is_gimple_cast): Remove.
+       (gimple_assign_single_p): Move ...
+       * gimple.h (gimple_assign_single_p): ... here.
+       (is_gimple_cast): Remove.
+       (gimple_assign_rhs_code): Simplify.
+       * gimple-fold.c (gimple_fold_builtin): Use CONVERT_EXPR_P
+       instead of is_gimple_cast.
+       * ipa-type-escape.c (look_for_casts): Likewise.
+
+2010-11-26  Joseph Myers  <joseph@codesourcery.com>
+
+       * doc/options.texi (Enum, EnumValue): Document new record types.
+       (Enum): Document new option flag.
+       * opt-functions.awk
+       * optc-gen.awk: Handle enumerated option arguments.
+       * opth-gen.awk: Handle enumerated option arguments.
+       * opts-common.c (enum_arg_ok_for_language, enum_arg_to_value,
+       enum_value_to_arg): New.
+       (decode_cmdline_option): Handle enumerated arguments.
+       (read_cmdline_option): Handle CL_ERR_ENUM_ARG.
+       (set_option, option_enabled, get_option_state): Handle CLVC_ENUM.
+       * opts.c (print_filtered_help, print_specific_help): Take
+       lang_mask arguments.
+       (print_filtered_help): Handle printing values of enumerated
+       options.  Print possible arguments for enumerated options.
+       (print_specific_help): Update call to print_filtered_help.
+       (common_handle_option): Update calls to print_specific_help.  Use
+       value rather than arg for OPT_fdiagnostics_show_location_.  Don't
+       handle OPT_ffp_contract_, OPT_fexcess_precision_,
+       OPT_fvisibility_, OPT_ftls_model_, OPT_fira_algorithm_ or
+       OPT_fira_region_ here.
+       * opts.h (enum cl_var_type): Add CLVC_ENUM.
+       (struct cl_option): Add var_enum.
+       (CL_ENUM_CANONICAL, CL_ENUM_DRIVER_ONLY, struct cl_enum_arg,
+       struct cl_enum, cl_enums, cl_enums_count): New.
+       (CL_ERR_ENUM_ARG): Define.
+       (CL_ERR_NEGATIVE): Update value.
+       (enum_value_to_arg): Declare.
+       * common.opt (flag_ira_algorithm, flag_ira_region,
+       flag_fp_contract_mode, flag_excess_precision_cmdline,
+       default_visibility, flag_tls_default): Remove Variable entries.
+       (help_enum_printed): New Variable.
+       (fdiagnostics-show-location=): Use Enum.  Add associated
+       SourceInclude, Enum and EnumValue entries.
+       (fexcess-precision=, ffp-contract=, fira-algorithm=, fira-region=,
+       ftls-model=, fvisibility=): Use Enum, Var and Init.  Add
+       associated Enum and EnumValue entries.
+
+2010-11-26  Joern Rennecke  <amylaar@spamcop.net>
+
+       PR target/46623
+       * config/microblaze/microblaze.c (microblaze_block_move_straight):
+       Use XALLOCAVEC.
+       (microblaze_option_override): Don't use C++ style comments.
+       (save_restore_insns): Remove unused variable base_offset.
+       (microblaze_expand_prologue): Remove unused variable insn.
+       (microblaze_secondary_reload): Adjust type to match target.h .
+       (microblaze_elf_in_small_data_p): Move declarations to start of block.
+       (microblaze_expand_move): Likewise.
+       * config/microblaze/microblaze.h (LARGE_INT):
+       Avoid signed / unsigned comparisons.
+       (ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
+       (ASM_FORMAT_PRIVATE_NAME): Make format specifier match printed data.
+       (ASM_FINISH_DECLARE_OBJECT): Likewise.  Constify name.
+
+2010-11-26  Michael Matz  <matz@suse.de>
+
+       * tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.
+
+       * passes.c (init_optimization_passes): Remove superfluous
+       copy-prop pass.
+
+2010-11-26  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/46648
+       * gimple.c (gtc_visit): Do not return true for members of an
+       SCC still being processed but the current lattice value of
+       the member.  Treat SCC members comparison state as lattice,
+       starting at equal, eventually dropping to unequal.
+       (gimple_types_compatible_p_1): Likewise.
+
+2010-11-26  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/46559
+       * dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root
+       for location list processing.
+
+2010-11-26  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/46560
+       * cgraph.c (cgraph_clone_edge): Clone call_stmt dependent
+       flags manually.
+
+2010-11-26  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       * config/s390/s390.c (print_operand_address): Replace assert with
+       error message.
+       (print_operand): Replace assertions, gcc_unreachable and
+       fatal_insn with error messages.
+
+2010-11-26  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46665
+       * tree-ssa-structalias.c (pt_solution_set_var): Use DECL_PT_UID.
+
+2010-11-26  Ian Bolton  <ian.bolton@arm.com>
+
+       * config/arm/arm.c (arm_option_override): enable loop array
+       prefetching at -O3 for suitable targets, and configure params.
+       * config/arm/arm-protos.h (struct tune_params): Add fields for
+       configuring loop array prefetching.
+
+2010-11-26  Christian Borntraeger  <borntraeger@de.ibm.com>
+
+       * config/s390/2817.md (z196_crack): Add z196_g3 as possible slot.
+
+2010-11-26  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/46664
+       * tree-affine.c (aff_combination_to_tree): Add rest last.
+
+2010-11-26  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
+
+       PR target/33637
+       * configure.ac: Accept extra arguments for AS_FOR_TARGET,
+       LD_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET.
+       * configure: Regenerated.
+       * exec-tool.in: Not quoting command, may have extra arguments.
+
 2010-11-26  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/46528