OSDN Git Service

gcc/ada/
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index a795a40..01d5804 100644 (file)
@@ -1,3 +1,692 @@
+2008-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/cpp.texi: Update to GFDL 1.2.
+       * doc/gcc.texi: Do not list GPL as Invariant Section.
+       * doc/gccint.texi: Likewise.  Update copyright years.
+       * doc/install.texi: Update copyright years.
+
+2008-07-30  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/36955
+       * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Add
+       a use of pic_offset_table_rtx for -msecure-plt __tls_get_addr calls.
+
+2008-07-29  Jan Hubicka  <jh@suse.cz>
+
+       * c-decl.c (merge_decls): Do not handle DECL_INLINE.
+       (grokdeclarator): Likewise.
+       * langhooks.c (lhd_warn_unused_global_decl): Use
+       DECL_DECLARED_INLINE_P.
+       * print-tree.c (print_node): Remove DECL_INLINE check.
+
+2008-07-29  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/36945
+       * tree-ssa-sccvn.h (copy_reference_ops_from_ref): Declare.
+       * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Export.
+       Record invariant addresses un-decomposed.
+       (copy_reference_ops_from_call): Record reference call
+       arguments properly.  Simplify.
+       * tree-ssa-pre.c (create_component_ref_by_pieces_1): New
+       helper split out from ...
+       (create_component_ref_by_pieces): ... here.  Simplify.
+       Prepare for recursive invocation for call arguments.
+       (create_expression_by_pieces): Adjust call to
+       create_component_ref_by_pieces.
+       (compute_avail): Process operand 2 of reference ops.
+
+2008-07-29  Richard Guenther  <rguenther@suse.de>
+
+       * gimplify.c (gimplify_expr): Clear TREE_SIDE_EFFECTS for
+       OBJ_TYPE_REF.
+
+2008-07-29  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-format.c (check_format_types): Revert unwanted checkin.
+
+2008-07-29  Jan Hubicka  <jh@suse.cz>
+
+       * flags.h (flag_really_no_inline): Remove.
+       * cgraph.c (cgraph_function_possibly_inlined_p): Simplify.
+       * toplev.c (flag_really_no_inline): Remove.
+       * c-cppbuiltin.c (c_cpp_builtins): Use flag_no_inline.
+       * ipa-inline.c (cgraph_decide_inlining): Do not check flag_no_inline.
+       (cgraph_decide_inlining_incrementally): Likewise.
+       (compute_inline_parameters): Likewise.
+       * opts.c (decode_options): Simplify.
+       * c-opts.c (c_common_post_options): Do not set flag_no_inline.
+       * common.opt (finline): Initialize to 1.
+       * tree-inline.c (inlinable_function_p): Check flag_no_inline.
+
+2008-07-29  Jan Hubicka  <jh@suse.cz>
+
+       * predict.c (always_optimize_for_size_p): New function.
+       (optimize_bb_for_size_p, optimize_bb_for_speed_p,
+       optimize_edge_for_size_p, optimize_edge_for_speed_p,
+       optimize_insn_for_size_p, optimize_insn_for_speed_p): New global
+       functions.
+       (rtl_profile_for_bb, rtl_profile_for_edge, rtl_default_profile): New.
+       * function.c (prepare_function_start): Set default profile.
+       * function.h (rtl_data): Add maybe_hot_insn_p.
+       * cfgexpand.c (expand_gimple_basic_block): Set RTL profile.
+       (construct_exit_block): Likewise.
+       (tree_expand_cfg): Likewise.
+       * basic-block.h
+       (optimize_bb_for_size_p, optimize_bb_for_speed_p,
+       optimize_edge_for_size_p, optimize_edge_for_speed_p,
+       optimize_insn_for_size_p, optimize_insn_for_speed_p): Declare.
+       (rtl_profile_for_bb, rtl_profile_for_edge, default_rtl_profile):
+       Declare.
+
+2008-07-29  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 34985
+       * c-decl.c (merge_decls): Merge USED flags.
+       
+2008-07-29  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (sh_gimplify_va_arg_expr): Unshare the addr,
+       valist, next_fp, next_fp_tmp, next_fp_limit, next_o, next_o_limit,
+       next_stack, lab_false and lab_over trees.
+
+2008-07-28  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/36957
+       * tree-flow.h (tree_ssa_useless_type_conversion): Remove.
+       (useless_type_conversion_p): Remove.
+       (types_compatible_p): Remove.
+       * gimple.h (tree_ssa_useless_type_conversion): Declare.
+       (useless_type_conversion_p): Declare.
+       (types_compatible_p): Declare.
+       (gimple_expr_type): Return the base type only if it is
+       trivially convertible to the subtype.
+
+2008-07-28  Andreas Tobler  <a.tobler@schweiz.org>
+
+       * configure.ac: Use the m4_do macro to concatenate the warnings into
+       one string in ACX_PROG_CC_WARNING_OPTS,
+       ACX_PROG_CC_WARNING_ALMOST_PEDANTIC and ACX_PROG_CC_WARNINGS_ARE_ERRORS.
+       * configure: Regenerate.
+
+2008-07-28  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-pre.c (insert_into_preds_of_block): Remove dead code.
+       (insert_fake_stores): Remove.
+       (realify_fake_stores): Likewise.
+       (execute_pre): Remove dead code.
+       * tree-ssa-structalias.c (get_constraint_for_1): Remove tcc_unary
+       case.
+       (find_func_aliases): Deal with it here instead.
+       Re-enable gcc_unreachable call.
+
+2008-07-28  Richard Guenther  <rguenther@suse.de>
+
+       Merge from gimple-tuples-branch.
+
+       * ChangeLog.tuples: ChangeLog from gimple-tuples-branch.
+       * gimple.def: New file.
+       * gsstruct.def: Likewise.
+       * gimple-iterator.c: Likewise.
+       * gimple-pretty-print.c: Likewise.
+       * tree-gimple.c: Removed.  Merged into ...
+       * gimple.c: ... here.  New file.
+       * tree-gimple.h: Removed.  Merged into ...
+       * gimple.h: ... here.  New file.
+
+       * Makefile.in: Add dependencies on GIMPLE_H and tree-iterator.h.
+       * configure.ac: Added support for ENABLE_GIMPLE_CHECKING and the
+       --enable-checking=gimple flag.
+       * config.in: Likewise.
+       * configure: Regenerated.
+
+       * tree-ssa-operands.h: Tuplified.
+       * tree-vrp.c: Likewise.
+       * tree-loop-linear.c: Likewise.
+       * tree-into-ssa.c: Likewise.
+       * tree-ssa-loop-im.c: Likewise.
+       * tree-dump.c: Likewise.
+       * tree-complex.c: Likewise.
+       * cgraphbuild.c: Likewise.
+       * tree-ssa-threadupdate.c: Likewise.
+       * tree-ssa-loop-niter.c: Likewise.
+       * tree-pretty-print.c: Likewise.
+       * tracer.c: Likewise.
+       * gengtype.c: Likewise.
+       * tree-loop-distribution.c: Likewise.
+       * tree-ssa-loop-unswitch.c: Likewise.
+       * cgraph.c: Likewise.
+       * cgraph.h: Likewise.
+       * tree-ssa-loop-manip.c: Likewise.
+       * value-prof.c: Likewise.
+       * tree-ssa-loop-ch.c: Likewise.
+       * tree-tailcall.c: Likewise.
+       * value-prof.h: Likewise.
+       * tree.c: Likewise.
+       * tree.h: Likewise.
+       * tree-pass.h: Likewise.
+       * ipa-cp.c: Likewise.
+       * tree-scalar-evolution.c: Likewise.
+       * tree-scalar-evolution.h: Likewise.
+       * target.h: Likewise.
+       * lambda-mat.c: Likewise.
+       * tree-phinodes.c: Likewise.
+       * diagnostic.h: Likewise.
+       * builtins.c: Likewise.
+       * tree-ssa-alias-warnings.c: Likewise.
+       * cfghooks.c: Likewise.
+       * fold-const.c: Likewise.
+       * cfghooks.h: Likewise.
+       * omp-low.c: Likewise.
+       * tree-ssa-dse.c: Likewise.
+       * ipa-reference.c: Likewise.
+       * tree-ssa-uncprop.c: Likewise.
+       * toplev.c: Likewise.
+       * tree-gimple.c: Likewise.
+       * tree-gimple.h: Likewise.
+       * tree-chrec.c: Likewise.
+       * tree-chrec.h: Likewise.
+       * tree-ssa-sccvn.c: Likewise.
+       * tree-ssa-sccvn.h: Likewise.
+       * cgraphunit.c: Likewise.
+       * tree-ssa-copyrename.c: Likewise.
+       * tree-ssa-ccp.c: Likewise.
+       * tree-ssa-loop-ivopts.c: Likewise.
+       * tree-nomudflap.c: Likewise.
+       * tree-call-cdce.c: Likewise.
+       * ipa-pure-const.c: Likewise.
+       * c-format.c: Likewise.
+       * tree-stdarg.c: Likewise.
+       * tree-ssa-math-opts.c: Likewise.
+       * tree-ssa-dom.c: Likewise.
+       * tree-nrv.c: Likewise.
+       * tree-ssa-propagate.c: Likewise.
+       * ipa-utils.c: Likewise.
+       * tree-ssa-propagate.h: Likewise.
+       * tree-ssa-alias.c: Likewise.
+       * gimple-low.c: Likewise.
+       * tree-ssa-sink.c: Likewise.
+       * ipa-inline.c: Likewise.
+       * c-semantics.c: Likewise.
+       * dwarf2out.c: Likewise.
+       * expr.c: Likewise.
+       * tree-ssa-loop-ivcanon.c: Likewise.
+       * predict.c: Likewise.
+       * tree-ssa-loop.c: Likewise.
+       * tree-parloops.c: Likewise.
+       * tree-ssa-address.c: Likewise.
+       * tree-ssa-ifcombine.c: Likewise.
+       * matrix-reorg.c: Likewise.
+       * c-decl.c: Likewise.
+       * tree-eh.c: Likewise.
+       * c-pretty-print.c: Likewise.
+       * lambda-trans.c: Likewise.
+       * function.c: Likewise.
+       * langhooks.c: Likewise.
+       * ebitmap.h: Likewise.
+       * tree-vectorizer.c: Likewise.
+       * function.h: Likewise.
+       * langhooks.h: Likewise.
+       * tree-vectorizer.h: Likewise.
+       * ipa-type-escape.c: Likewise.
+       * ipa-type-escape.h: Likewise.
+       * domwalk.c: Likewise.
+       * tree-if-conv.c: Likewise.
+       * profile.c: Likewise.
+       * domwalk.h: Likewise.
+       * tree-data-ref.c: Likewise.
+       * tree-data-ref.h: Likewise.
+       * tree-flow-inline.h: Likewise.
+       * tree-affine.c: Likewise.
+       * tree-vect-analyze.c: Likewise.
+       * c-typeck.c: Likewise.
+       * gimplify.c: Likewise.
+       * coretypes.h: Likewise.
+       * tree-ssa-phiopt.c: Likewise.
+       * calls.c: Likewise.
+       * tree-ssa-coalesce.c: Likewise.
+       * tree.def: Likewise.
+       * tree-dfa.c: Likewise.
+       * except.c: Likewise.
+       * except.h: Likewise.
+       * cfgexpand.c: Likewise.
+       * tree-cfgcleanup.c: Likewise.
+       * tree-ssa-pre.c: Likewise.
+       * tree-ssa-live.c: Likewise.
+       * tree-sra.c: Likewise.
+       * tree-ssa-live.h: Likewise.
+       * tree-predcom.c: Likewise.
+       * lambda.h: Likewise.
+       * tree-mudflap.c: Likewise.
+       * ipa-prop.c: Likewise.
+       * print-tree.c: Likewise.
+       * tree-ssa-copy.c: Likewise.
+       * ipa-prop.h: Likewise.
+       * tree-ssa-forwprop.c: Likewise.
+       * ggc-page.c: Likewise.
+       * c-omp.c: Likewise.
+       * tree-ssa-dce.c: Likewise.
+       * tree-vect-patterns.c: Likewise.
+       * tree-ssa-ter.c: Likewise.
+       * tree-nested.c: Likewise.
+       * tree-ssa.c: Likewise.
+       * lambda-code.c: Likewise.
+       * tree-ssa-loop-prefetch.c: Likewise.
+       * tree-inline.c: Likewise.
+       * tree-inline.h: Likewise.
+       * tree-iterator.c: Likewise.
+       * tree-optimize.c: Likewise.
+       * tree-ssa-phiprop.c: Likewise.
+       * tree-vect-transform.c: Likewise.
+       * tree-object-size.c: Likewise.
+       * tree-outof-ssa.c: Likewise.
+       * cfgloop.c: Likewise.
+       * system.h: Likewise.
+       * tree-profile.c: Likewise.
+       * cfgloop.h: Likewise.
+       * c-gimplify.c: Likewise.
+       * c-common.c: Likewise.
+       * tree-vect-generic.c: Likewise.
+       * tree-flow.h: Likewise.
+       * c-common.h: Likewise.
+       * basic-block.h: Likewise.
+       * tree-ssa-structalias.c: Likewise.
+       * tree-switch-conversion.c: Likewise.
+       * tree-ssa-structalias.h: Likewise.
+       * tree-cfg.c: Likewise.
+       * passes.c: Likewise.
+       * ipa-struct-reorg.c: Likewise.
+       * ipa-struct-reorg.h: Likewise.
+       * tree-ssa-reassoc.c: Likewise.
+       * cfgrtl.c: Likewise.
+       * varpool.c: Likewise.
+       * stmt.c: Likewise.
+       * tree-ssanames.c: Likewise.
+       * tree-ssa-threadedge.c: Likewise.
+       * langhooks-def.h: Likewise.
+       * tree-ssa-operands.c: Likewise.
+       * config/alpha/alpha.c: Likewise.
+       * config/frv/frv.c: Likewise.
+       * config/s390/s390.c: Likewise.
+       * config/m32c/m32c.c: Likewise.
+       * config/m32c/m32c-protos.h: Likewise.
+       * config/spu/spu.c: Likewise.
+       * config/sparc/sparc.c: Likewise.
+       * config/i386/i386.c: Likewise.
+       * config/sh/sh.c: Likewise.
+       * config/xtensa/xtensa.c: Likewise.
+       * config/stormy16/stormy16.c: Likewise.
+       * config/ia64/ia64.c: Likewise.
+       * config/rs6000/rs6000.c: Likewise.
+       * config/pa/pa.c: Likewise.
+       * config/mips/mips.c: Likewise.
+
+2008-07-28  Simon Baldwin  <simonb@google.com>
+
+       * c-pragma.c (handle_pragma_message): New function.
+       (init_pragma): Register handle_pragma_message.
+       * doc/extend.texi (Diagnostic Pragmas): Added #pragma message
+       documentation.
+
+2008-07-27  Victor Kaplansky  <victork@il.ibm.com>
+
+       PR tree-optimization/35252
+       * tree-vect-analyze.c (vect_build_slp_tree): Make IMAGPART_EXPR and
+       REALPART_EXPR to be considered as same load operation.
+
+2008-07-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR tree-optimization/36830
+       * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Hash operand #2.
+       (expressions_equal_p): Return false if only one operand is null.
+
+2008-07-26  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/install.texi (powerpc-*-netbsd*): Remove redundant texinfo
+       version requirements.
+
+2008-07-26  Olivier Hainque  <hainque@adacore.com>
+
+       * collect2.c (symkind): New enum.  Symbol kinds we care about.
+       (is_ctor_dtor): Return symkind instead of int.  Adjust prototype,
+       code and head comment accordingly.
+       (scan_prog_file): Use symkind names instead of bare integers.
+       
+2008-07-25  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE.
+       * cgraphunit.c (record_cdtor_fn): Do not initialize DECL_INLINE
+       (cgraph_preserve_function_body_p): Do not rely on DECL_INLINE.
+       * dojump.c (clear_pending_stack_adjust): Likewise.
+       * print-tree.c (print_node): Ignore DECL_INLINE.
+       * tree-inline.c (inlinable_function_p): Likewise.
+       
+2008-07-25  Michael Meissner  <gnu@the-meissners.org>
+
+       * doc/extend.texi (hot attribute): Document that the hot attribute
+       turns on -O3 for some ports.
+       (cold attribute): Document that the cold attribute turns on -Os
+       for some ports
+
+       * doc/tm.texi (OPTIMIZATION_OPTIONS): Update documentation to
+       reflect function specific option support.
+
+       * target.h (struct target_option_hooks): Add fields to say whether
+       the cold attribute implies -Os and the hot attribute implies -O3.
+
+       * target-def.h (TARGET_OPTION_COLD_ATTRIBUTE_SETS_OPTIMIZATION):
+       By default, do not turn on -Os for cold functions.
+       (TARGET_OPTION_COLD_ATTRIBUTE_SETS_OPTIMIZATION): By default, do
+       not turn on -O3 for hot functions.
+
+       * c-common.c (handle_hot_attribute): Use target hook to determine
+       if hot functions should enable -O3.
+       (handle_cold_attribute): Use target hook to determine if cold
+       functions should enable -Os.
+
+       * config/i386/i386.c (ix86_target_string): Add -m3dnowa support.
+       (override_options): Move disable scheduling to
+       optimization_options.
+       (optimization_options): Disable scheduling here, not
+       override_options.
+       (TARGET_OPTION_COLD_ATTRIBUTE_SETS_OPTIMIZATION): Define.
+       (TARGET_OPTION_HOT_ATTRIBUTE_SETS_OPTIMIZATION): Define.
+
+       * config/ia64/ia64.c (ia64_override_options): Move setting
+       scheduling flags to ia64_optimization_options.
+       (ia64_optimization_options): Disable scheduling options here, and
+       not in ia64_override_options.
+       (TARGET_OPTION_COLD_ATTRIBUTE_SETS_OPTIMIZATION): Define.
+       (TARGET_OPTION_HOT_ATTRIBUTE_SETS_OPTIMIZATION): Define.
+
+2008-07-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/36936
+       * config/i386/i386.c (override_options): Don't clear TARGET_CMOVE.
+
+2008-07-25  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/36926
+       * ipa-prop.c (ipa_analyze_call_uses): Call
+       ipa_is_ssa_with_stmt_def instead of SSA_NAME_IS_DEFAULT_DEF.
+
+2008-07-25  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/arm/iwmmxt.md (movv8qi_internal, movv4hi_internal,
+       movv2si_internal): Add mem = reg alternative.
+
+2008-07-25  Andreas Tobler  <a.tobler@schweiz.org>
+
+       PR bootstrap/36918
+       * config/sparc/sparc.h (DEFAULT_PCC_STRUCT_RETURN): Define
+       DEFAULT_PCC_STRUCT_RETURN to 127.
+
+2008-07-24  Jan Hubicka  <jh@suse.cz>
+
+       * cgraphbuild.c (record_reference): Drop non-unit-at-a-time code.
+       (build_cgraph_edges): Likewise.
+       * cgraph.c (cgraph_node): Do not update assembler hash.
+       (cgraph_remove_node): Drop non-unit-at-a-time code.
+       * tree-pass.h (pass_O0_always_inline): Remove.
+       * ipa-reference.c (gate_reference): Remove unit-at-a-time check.
+       * toplev.c (process_options): Flag unit-at-a-time does not imply
+       no section anchors.
+       * cgraphunit.c: Update comments.
+       (decide_is_function_needed): Drop non-unit-at-a-time mode.
+       (cgraph_assemble_pending_functions): Remove.
+       (cgraph_reset_node): Drop non-unit-at-a-time code.
+       (cgraph_finalize_function): Likewise.
+       (cgraph_analyze_function): Likewise.
+       (cgraph_finalize_compilation_unit): Likewise.
+       (cgraph_expand_function): Likewise.
+       (cgraph_optimize): Likesise.
+       (save_inline_function_body): Likewise.
+       * ipa-pure-const.c (gate_pure_const): Drop flag_unit_at_a_time check.
+       * tree-ssa-alias.c (maybe_be_aliased): Likewise.
+       * ipa-inline.c: Update comments.
+       (enum inlining_mode): remove INLINE_SPEED.
+       (cgraph_clone_inlined_nodes): Drop unit-at-a-time check.
+       (cgraph_mark_inline_edge): Likewise.
+       (try_inline): Likewise.
+       (cgraph_decide_inlining_incrementally): Likewise.
+       (cgraph_gate_inlining): Remove.
+       (cgraph_early_inlining): Remove flag_unit_at_a_time checks.
+       (cgraph_gate_early_inlining): Likewise.
+       (gate_inline_passes): Remove.
+       (pass_inline_parameters, pass_ipa_inline): Remove gates.
+       (cgraph_gate_O0_always_inline, cgraph_O0_always_inline, 
+       pass_O0_always_inline): Remove.
+       * c-pch.c (c_pch_matching): Remove -funit-at-a-time.
+       * dwarf2out.c (reference_to_unused): Remove flag_unit_at_a_time check.
+       * opts.c (no_unit_at_a_time_default): Remove.
+       (decode_options): Remove flag_unit_at_a_time reset and warning.
+       * opts.h (no_unit_at_a_time_default): Remove.
+       * c-decl.c (diagnose_mismatched_decls): Do not require inline keyword
+       early in GNU dialect.
+       (merge_decls): Update comment; drop unit-at-a-time check.
+       (finish_decl): Likewise.
+       (grok_declaration): Remove flag_inline_trees code.
+       (finish_functions): Return on function returning non-void on all
+       statics.
+       * ipa-tye-escape.c (gate_type_escape_vars): Remove.
+       * cfgexpand.c (expand_one_static_var): Remove.
+       (expand_one_var): Remove expand_one_static_var call.
+       (expand_used_vars_for_block): Remove flag_unit_a_time check.
+       * c-opts.c (c_common_post_options): Remove flag_inline_trees code
+       and flag_unit_at_a-time compatibility checks.
+       * varasm.c (assemble_alias): Remove flag_unit_at_a_time check.
+       * tree-inline.c (flag_inline_trees): Remove.
+       (inlinable_function_p): Don't check it.
+       (expand_call_inline): Remove non-unit-at-a-time code.
+       * tree-inline.h (flag_inline_trees): Remove.
+       * tree-optimize.c (execute_early_local_optimizations): Remove
+       unit-at-a-time checks.
+       (tree_rest_of_compilation): Likewise.
+       * combine.c (setup_incoming_promotions): Likewise.
+       * tree-profile.c (tree_gen_ic_func_profiler): Likewise.
+       * tree-ssa-structalias.c (delete_points_to_sets): Likewise.
+       * passes.c (pass_inline_parameters): Update comments; remove
+       O0_alwaysinline pass.
+       (execute_one_ipa_transform_pass): Do not reset in_gimple_form.
+       (execute_one_pass): Likewise.
+       * i386.c (ix86_function_regparm): Remove unit-at-a-time check.
+       (ix86_function_sseregparm): Likewise.
+       * arm.c (arm_function_in_section_p): Likewise.
+       * bfin.c (bfin_load_pic_reg, bfin_function_ok_for_sibcall): Likewise.
+       * varpool.c: Update comments.
+       (decide_is_variable_needed): Remove unit-at-a-time checks.
+       (varpool_finalize_decl): Likewise.
+
+2008-07-24  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.h (OPTIMIZATION_OPTIONS): Set flag_omit_frame_pointer
+       to 2 instead of -1.
+       (OVERRIDE_OPTIONS): Check if flag_omit_frame_pointer is equal
+       to 2.
+
+2008-07-24  Kai Tietz  <kai.tietz@onevision.com>
+
+       * config/i386/i386.c (get_dllimport_decl): Treat user_label_prefix for
+       imp symbol extension.
+
+        2008-07-23  Ian Lance Taylor  <iant@google.com>
+
+       * tree-vrp.c (infer_value_range): Ignore asm statements when
+       looking for memory accesses for -fdelete-null-pointer-checks.
+
+2008-07-24  Ben Elliston  <bje@au.ibm.com>
+
+       * config/spu/spu-c.c (__vector_keyword): New variable.
+       (vector_keyword): Likewise.
+       (spu_categorize_keyword): New function.
+       (spu_macro_to_expand): Likewise.
+       (spu_cpu_cpp_builtins): Enable context-sensitive macros if not
+       compiling an ISO C dialect.
+
+2008-07-24  Ben Elliston  <bje@au.ibm.com>
+
+       * config/rs6000/rs6000-c.c: Move GTY(()) markers to match
+       conventional usage.
+
+2008-07-23  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
+
+       * configure: Regenerate.
+       * configure.ac: Require texinfo 4.7.
+       * doc/install.texi: Document texinfo 4.7 requirement.
+
+2008-07-23  Martin Jambor  <mjambor@suse.cz>
+
+        * ipa-cp.c (ipcp_print_edge_profiles): Test for node->analyzed
+       rather than for DECL_SAVED_TREE.
+       * ipa-prop.c: Include diagnostic.h.
+        (ipa_check_stmt_modifications): Check LHS of GIMPLE_MODIFY_EXPRs
+       thoroughly.
+       (ipa_detect_param_modifications): Function rewritten from scratch.
+       (ipa_compute_jump_functions): Changed accesses to modification flags.
+       (ipa_free_node_params_substructures): Update flags destruction.
+       (ipa_node_duplication_hook): Update flags duplication.
+       (ipa_print_all_params_modified): Updated flag access.
+       * ipa-prop.h (struct ipa_param_flags): New structure.
+        (struct ipa_node_params): New field modification_analysis_done,
+        modified_flags changed into param_flags.
+        (ipa_is_ith_param_modified): Changed to use new flags.
+       * Makefile.in (ipa-prop.o): Add $(DIAGNOSTIC_H) to dependencies.
+
+       * ipa-prop.c (ipa_print_all_jump_functions): Moved here from
+       ipa-cp.c and split into two functions.
+       (ipa_print_node_jump_functions): New function.
+       (compute_scalar_jump_functions): New function.
+       (type_like_member_ptr_p): New function.
+       (compute_pass_through_member_ptrs): New function.
+       (fill_member_ptr_cst_jump_function): New function.
+       (determine_cst_member_ptr): New function.
+       (compute_cst_member_ptr_arguments): New function.
+       (ipa_compute_jump_functions): Complete rewrite.
+       * ipa-prop.h (enum jump_func_type): Make explicit that we depend
+       on IPA_UNKNOWN being zero. Added value IPA_CONST_MEMBER_PTR.
+       (struct ipa_member_ptr_cst): New structure.
+       (union jump_func_value): New field member_cst.
+       * ipa-cp.c (ipcp_lat_is_insertable): New function.
+       (ipcp_lattice_from_jfunc): Produces bottom lattices for unhandled
+       jump function types.
+       (ipcp_print_all_lattices): Slight fprintf rearrangement.
+       (ipcp_print_all_structures): Call ipa_print_all_jump_functions
+       instead of ipcp_print_all_jump_functions.
+       (ipcp_insert_stage): Use ipcp_lat_is_insertable, create replace maps
+       only for replacable scalars.
+
+       * doc/invoke.texi (Optimize options): Add description of
+       -findirect-inlining.
+       * common.opt (flag_indirect_inlining): New flag.
+       * opts.c (decode_options): Set flag_indirect_inlining when 
+       optimize >= 3.
+
+       * ipa-inline.c: Include ipa-prop.h.
+       (inline_indirect_intraprocedural_analysis): New function.
+       (inline_generate_summary): Allocate parameter and argument info
+       structures, call inline_indirect_intraprocedural_analysis on each
+       node when doing indirect inlining and deallocate indirect inlining 
+       data structures in the end.
+       * ipa-prop.c (ipa_create_param_decls_array): Return if already done.
+       (free_all_ipa_structures_after_iinln): New function.
+       (free_all_ipa_structures_after_ipa_cp): Checks whether iinln will be 
+       done.
+       * Makefile.in (ipa-inline.o): Added $(IPA_PROP_H) to dependencies.
+
+       * cgraphbuild.c (compute_call_stmt_bb_frequency): New function.
+       (build_cgraph_edges): Call compute_call_stmt_bb_frequency instead
+       of computing the frequency separately.
+       (rebuild_cgraph_edges): Call compute_call_stmt_bb_frequency instead
+       of computing the frequency separately.
+       * ipa-cp.c (ipcp_print_all_structures): Replace a call to 
+       ipa_print_all_param_modified with a call to ipa_print_all_param_flags.
+       * ipa-prop.c (ipa_get_member_ptr_load_param): New function.
+       (ipa_get_stmt_member_ptr_load_param): New function.
+       (ipa_is_ssa_with_stmt_def): New function.
+       (ipa_note_param_call): New function.
+       (ipa_analyze_call_uses): New function.
+       (ipa_analyze_stmt_uses): New function.
+       (ipa_analyze_params_uses): New function.
+       (ipa_free_node_params_substructures): Also free the param_calls linked
+       list.
+       (ipa_node_duplication_hook): Also duplicate the param_calls linked list.
+       (ipa_print_node_param_flags): New function.
+       (ipa_print_all_params_modified): Renamed to ipa_print_all_param_flags.
+       (ipa_print_all_param_flags): Calls ipa_print_node_param_flags.
+       * ipa-prop.h (struct ipa_param_flags): New field called.
+       (struct ipa_param_call_note): New structure.
+       (struct ipa_node_params): New fields param_calls and
+       uses_analysis_done.
+       (ipa_is_ith_param_called): New function.
+       * ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
+       ipa_analyze_params_uses and dump parameter flags.
+
+       * ipa-inline.c (cgraph_decide_recursive_inlining): Call
+       ipa_propagate_indirect_call_infos if performing indirect inlining,
+       pass a new parameter new_edges to it.
+       (add_new_edges_to_heap): New fucntion.
+       (cgraph_decide_inlining_of_small_functions): New vector
+       new_indirect_edges for newly found indirect edges , call
+       ipa_propagate_indirect_call_infos after inlining.
+       (cgraph_decide_inlining): Call ipa_propagate_indirect_call_infos after
+       inlining if performing indirect inlining.  Call
+       free_all_ipa_structures_after_iinln when doing so too.
+       (inline_generate_summary): Do not call
+       free_all_ipa_structures_after_iinln here.
+       * ipa-prop.c (update_jump_functions_after_inlining): New function.
+       (print_edge_addition_message): New function.
+       (update_call_notes_after_inlining): New function.
+       (propagate_info_to_inlined_callees): New function.
+       (ipa_propagate_indirect_call_infos): New function.
+       * ipa-prop.h: Include cgraph.h
+       (struct ipa_param_call_note): Fields reordered, new field processed.
+       * cgraph.h (cgraph_edge): Shrink loop_nest field to 31 bits, add a new
+       flag indirect_call.
+       * cgraphunit.c (verify_cgraph_node): Allow indirect edges not to have
+       rediscovered call statements.
+       * cgraph.c (cgraph_create_edge): Initialize indirect_call to zero.
+       (dump_cgraph_node): Dump also the indirect_call flag.
+       (cgraph_clone_edge): Copy also the indirect_call flag.
+       * tree-inline.c (copy_bb): Do not check for fndecls from call
+       expressions, check for edge availability when moving clones.
+       (get_indirect_callee_fndecl): New function.
+       (expand_call_inline): If callee declaration is not apprent from
+       the statement, try calling get_indirect_callee_fndecl.  Do not
+       issue warnings or call sorry when not inlinings an indirect edge.
+       * Makefile.in (IPA_PROP_H): Added $(CGRAPH_H) to dependencies.
+
+       * ipa-prop.c (ipa_print_node_param_flags): Make the dump format a
+       bit more frandly to matching.
+       * testsuite/g++.dg/ipa/iinline-1.C: New testcase.
+       * testsuite/gcc.dg/ipa/iinline-1.c: New testcase.
+       * testsuite/gcc.dg/ipa/modif-1.c: New testcase.
+       
+2008-07-23  Michael Meissner  <gnu@the-meissners.org>
+
+       PR 36907
+       * opth-gen.awk: Suppress function specific features when building
+       target libraries.
+       * optc-gen.awk: Ditto.
+
+2008-07-23  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 35058
+       * diagnostic.c (pedwarn): Add opt parameter.
+       (pedwarn0): New.
+       * c-tree.h (pedwarn_init): Add opt parameter.
+       (pedwarn_c90): Likewise.
+       (pedwarn_c99): Likewise.
+       * c-errors.c (pedwarn_c99): Likewise.
+       (pedwarn_c90): Likewise.
+       * toplev.h (pedwarn): Update declaration.
+       (pedwarn0): Declare.
+       * c-lex.c: All calls to pedwarn changed.
+       * builtins.c: All calls to pedwarn changed.
+       * toplev.c: All calls to pedwarn changed.
+       * c-decl.c: All calls to pedwarn changed.
+       * c-typeck.c: All calls to pedwarn changed.
+       * c-common.c: All calls to pedwarn changed.
+       * c-parser.c: All calls to pedwarn changed.
+       
 2008-07-23  Michael Meissner  <gnu@the-meissners.org>
            Karthik Kumar  <karthikkumar@gmail.com>