OSDN Git Service

2008-08-14 Dorit Nuzman <dorit@il.ibm.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 7b50bdf..77796d5 100644 (file)
+2008-08-14  Dorit Nuzman  <dorit@il.ibm.com>
+
+       * tree-vect-transform.c (vect_create_epilog_for_reduction): Takes an
+       additional argument. Support reduction when duplication is needed due
+       to data-types of different sizes in the loop.
+       (get_initial_def_for_induction): Fix printout.
+       (vect_get_vec_def_for_stmt_copy): Support case where the
+       vec_stmt_for_operand is a phi node.
+       (vectorizable_reduction): Support reduction when duplication is needed 
+       due to data-types of different sizes in the loop.
+       (vectorizable_call): Remove restriction to not vectorize in case we 
+       have data-types of different sizes in the loop.
+       (vectorizable_conversion): Likewise.
+       (vectorizable_operation): Likewise.
+       (vectorizable_type_demotion): Likewise.
+       (vectorizable_type_promotion): Likewise.
+       (vectorizable_induction): Add restriction to not vectorize in case 
+       we have data-types of different sizes in the loop.
+
+2008-08-14  Christophe Saout  <christophe@saout.de>
+           Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/37101
+       * config/i386/sse.md (vec_concatv2di): Remove movlps alternative.
+       (*vec_concatv2di_rex64_sse4_1): Ditto.
+       (*vec_concatv2di_rex64_sse): Ditto.
+
+2008-08-14  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/37103
+       * fold-const.c (fold_widened_comparison): Do not allow
+       sign changes that change the result even if shorter type
+       is wider than arg1_unw's type.
+
+2008-08-13  Kazu Hirata  <kazu@codesourcery.com>
+
+       * gcc.dg/arm-g2.c, gcc.dg/arm-mmx-1.c, gcc.dg/arm-scd42-2.c:
+       Skip if the multilib testing specifies -march that does not
+       agree with the one specified in the testcase.
+
+2008-08-13  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/sparc/sparc.c (emit_soft_tfmode_cvt): Explicitly sign or
+       zero extend SImode values being converted to TFmode before passing
+       to libcalls.
+
+2008-08-13  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Predefine
+       __PPU__ when targeting the Cell/B.E. PPU processor.
+
+2008-08-13  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gimple.h (gimple_call_set_chain): Accept SSA variables.
+       * tree-ssa-pre.c (create_component_ref_by_pieces_1) <CALL_EXPR>:
+       Rematerialize the static chain, if any.
+       * tree-ssa-sccvn.c (copy_reference_ops_from_call): Also copy the
+       static chain.
+
+2008-08-13  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * dwarf2out.c (dwarf_stack_op_name): Remove prototype.
+       (new_loc_descr): Likewise.
+       (add_loc_descr): Likewise.
+       (size_of_loc_descr): Likewise.
+       (size_of_locs): Likewise.
+       (output_loc_operands): Likewise.
+       (output_loc_sequence): Likewise.
+       (new_reg_loc_descr): New.
+       (build_cfa_loc): Use it.
+       (build_cfa_aligned_loc): Likewise.
+       (one_reg_loc_descriptor): Likewise.
+       (based_loc_descr): Likewise.
+
+2008-08-13  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 30551
+       * doc/invoke.texi (Wmain): Update.
+       * c-decl.c (start_decl): warn_main is only 0 or 1.
+       (start_function): Likewise. Fix formatting.
+       (finish_function): Delete redundant warning.
+       * c.opt (Wmain): Add Var(warn_main) and Init(-1).
+       * c-opts (c_common_handle_option): -Wall only has effect if
+       warn_main is uninitialized. OPT_Wmain is automatically
+       handled. -pedantic also enables Wmain.
+       (c_common_post_options): Handle all logic for Wmain here.
+       * c-common.c (warn_main): Delete.
+       (check_main_parameter_types): Make pedwarns conditional on
+       OPT_Wmain.
+       * c-common.h (warn_main): Delete.
+
+2008-08-13  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR middle-end/36701
+       * expr.c (emit_group_store): Allocate stack temp with the
+       largest alignment when copying from register to stack.
+
+2008-08-13  Richard Guenther  <rguenther@suse.de>
+
+       * tree.h (maybe_fold_offset_to_address): Declare.
+       * tree-ssa-ccp.c (surely_varying_stmt_p): Fix typo in last commit.
+       (ccp_fold): Handle pointer conversions the same as fold_stmt.
+       Likewise for POINTER_PLUS_EXPR.
+       (maybe_fold_offset_to_reference): Enable disabled code.
+       (maybe_fold_offset_to_address): New function.
+       (fold_stmt_r): Use it.
+       (fold_gimple_assign): Likewise.
+       * gimplify.c (gimplify_conversion): Use maybe_fold_offset_to_address.
+       (gimplify_expr): Likewise.
+
+2008-08-13  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       * toplev.h (pedwarn_at): Fix declaration.
+       
+2008-08-13  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
+       LINK_SPEC): Use %R in -Y P argument.
+
+2008-08-13  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c/15236
+       * diagnostic.c (pedwarn_at): New.
+       * toplev.h (pedwarn_at): Declare.
+       * c-tree.h (build_enumerator): Update declaration.
+       * c-decl.c (finish_enum): Update comment.
+       (build_enumerator): Take a location parameter. Give a pedwarn but do
+       not perform any conversion.
+       * c-parser.c (c_parser_enum_specifier): Set correct location for
+       enumerator.
+
+2008-08-13  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 35635
+       * c-common.c (conversion_warning): Use a switch. Ignore boolean
+       expressions except for conversions to signed:1 bitfields. Handle
+       COND_EXPR with constant operands.
+       
+2008-08-13  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/15255
+       * tree-ssa-reassoc.c (linearize_expr_tree): Declare.
+       (struct oecount_s): New struct and VEC types.
+       (cvec): New global.
+       (oecount_hash): New function.
+       (oecount_eq): Likewise.
+       (oecount_cmp): Likewise.
+       (zero_one_operation): New function.
+       (build_and_add_sum): Likewise.
+       (undistribute_ops_list): Perform un-distribution of multiplication
+       and division on the chain of summands.
+       (should_break_up_subtract): Also break up subtracts for factors.
+       (reassociate_bb): Delete dead visited statements.
+       Call undistribute_ops_list.  Re-sort and optimize if it did something.
+       * passes.c (init_optimization_passes): Move DSE before
+       reassociation.
+       * tree-ssa-loop-niter.c (stmt_dominates_stmt_p): Correctly handle
+       PHI nodes.
+
+2008-08-12  Janis Johnson  <janis187@us.ibm.com>
+
+       * doc/invoke.texi (-fipa-pta): Say the option is experimental.
+
+       * doc/invoke.texi: Revert unintended checkin.
+
+2008-08-12  Nathan Froyd  <froydnj@codesourcery.com>
+
+       PR libgomp/26165
+       * gcc.c (include_spec_function): Tweak call to find_a_file.
+
+2008-08-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/37014
+       * expr.c (expand_expr_real_1): Handle TRUTH_ANDIF_EXPR
+       and TRUTH_ORIF_EXPR.
+       * dojump.c (do_jump): Likewise.
+
+       PR tree-optimization/37084
+       * tree-inline.c (copy_bb): Call gimple_regimplify_operands
+       if id->regimplify, don't assume stmt is a cast assignment.
+
+2008-08-12  Anatoly Sokolov  <aesok@post.ru>
+
+       * final.c (final_scan_insn): Use app_enable/app_disable functions.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       PR bootstrap/37097
+       * builtins.c (do_mpfr_bessel_n): Fix copy-and-paste bug introduced
+       by last change.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * defaults.h (TARGET_FLOAT_FORMAT): Remove.
+       (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT): Remove.
+
+       * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Remove.
+       * config/iq2000/iq2000.h (TARGET_FLOAT_FORMAT): Remove.
+       * config/pdp11/pdp11.h (TARGET_FLOAT_FORMAT): Remove.
+       * config/score/score.h (TARGET_FLOAT_FORMAT): Remove.
+       * config/vax/vax.h (TARGET_FLOAT_FORMAT): Remove.
+
+       * doc/tm.texi (Storage Layout): Remove documentation for
+       TARGET_FLOAT_FORMAT.
+
+       * simplify-rtx.c (simplify_binary_operation_1): Replace
+       TARGET_FLOAT_FORMAT check by appropriate HONOR_... checks.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * real.h (struct real_format): New member has_sign_dependent_rounding.
+       * real.c (ieee_single_format, mips_single_format, motorola_single_format,
+       spu_single_format, ieee_double_format, mips_double_format,
+       motorola_double_format, ieee_extended_motorola_format,
+       ieee_extended_intel_96_format, ieee_extended_intel_128_format,
+       ieee_extended_intel_96_round_53_format, ibm_extended_format,
+       mips_extended_format, ieee_quad_format, mips_quad_format,
+       vax_f_format, vax_d_format, vax_g_format): Initialize it.
+       * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Likewise.
+
+       * defaults.h (MODE_HAS_NANS, MODE_HAS_INFINITIES,
+       MODE_HAS_SIGNED_ZEROS, MODE_HAS_SIGN_DEPENDENT_ROUNDING): Remove.
+       * config/spu/spu.h (MODE_HAS_NANS, MODE_HAS_INFINITIES,
+       MODE_HAS_SIGN_DEPENDENT_ROUNDING): Remove.
+       (ROUND_TOWARDS_ZERO): Likewise.
+
+       * real.h (REAL_MODE_FORMAT): Protect MODE against macro expansion.
+       (FLOAT_MODE_FORMAT): New macro.
+       (REAL_MODE_FORMAT_COMPOSITE_P): Remove, replace by ...
+       (MODE_COMPOSITE_P): ... this new macro.
+       (MODE_HAS_NANS, MODE_HAS_INFINITIES, MODE_HAS_SIGNED_ZEROS,
+       MODE_HAS_SIGN_DEPENDENT_ROUNDING): New macros.
+       * machmode.h (GET_MODE_INNER): Cast result to enum machine_mode.
+
+       * flags.h: Include "real.h".
+
+       * fold-const.c (const_binop): Use MODE_COMPOSITE_P instead of
+       REAL_MODE_FORMAT_COMPOSITE_P.
+       * simplify-rtx.c (simplify_const_binary_operation): Likewise.
+
+       * doc/tm.texi (Storage Layout): Remove documentation of
+       MODE_HAS_NANS, MODE_HAS_INFINITIES, MODE_HAS_SIGNED_ZEROS,
+       MODE_HAS_SIGN_DEPENDENT_ROUNDING.  Update documentation of
+       ROUND_TOWARDS_ZERO and LARGEST_EXPONENT_IS_NORMAL to clarify
+       they only apply to libgcc2.a.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/float_disf.c: New file.
+       * config/spu/float_unsdisf.c: New file.
+       * config/spu/t-elf (LIB2FUNCS_STATIC_EXTRA): Add them.
+       (LIB2FUNCS_EXCLUDE): Define.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+           Trevor Smigiel  <trevor_smigiel@playstation.sony.com>
+
+       * real.h (struct real_format): New member round_towards_zero.
+       * real.c (round_for_format): Respect fmt->round_towards_zero.
+       (ieee_single_format, mips_single_format, motorola_single_format,
+       spu_single_format, ieee_double_format, mips_double_format,
+       motorola_double_format, ieee_extended_motorola_format,
+       ieee_extended_intel_96_format, ieee_extended_intel_128_format,
+       ieee_extended_intel_96_round_53_format, ibm_extended_format,
+       mips_extended_format, ieee_quad_format, mips_quad_format,
+       vax_f_format, vax_d_format, vax_g_format): Initialize it.
+       * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Likewise.
+
+       * builtins.s (do_mpfr_arg1): Consider round_towards_zero member of
+       real_format to choose rounding mode when calling MPFR functions.
+       (do_mpfr_arg2, do_mpfr_arg3, do_mpfr_sincos): Likewise.
+       (do_mpfr_bessel_n, do_mpfr_remquo, do_mpfr_lgamma_r): Likewise.
+
+       * real.h (real_to_decimal_for_mode): Add prototype.
+       * real.c (real_to_decimal_for_mode): Renames old real_to_decimal.
+       Respect target rounding mode when generating decimal representation.
+       (real_to_decimal): New stub for backwards compatibility.
+       * c-cppbuiltin.c (builtin_define_with_hex_fp_value): Use
+       real_to_decimal_for_mode instead of real_to_decimal.
+
+       * config/spu/spu.md ("floatdisf2", "floatunsdisf2"): New.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+           Trevor Smigiel  <trevor_smigiel@playstation.sony.com>
+
+       * real.c (spu_single_format): New variable.
+       * real.h (spu_single_format): Declare.
+
+       * config/spu/spu.c (spu_override_options): Install SFmode format.
+       (spu_split_immediate): Use integer mode to operate on pieces of
+       floating-point values in all cases.
+
+       * config/spu/spu.md (UNSPEC_FLOAT_EXTEND, UNSPEC_FLOAT_TRUNCATE): New.
+       ("extendsfdf2"): Use UNSPEC_FLOAT_EXTEND instead of FLOAT_EXTEND.
+       ("truncdfsf2"): Use UNSPEC_FLOAT_TRUNCATE instead of FLOAT_TRUNCATE.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/spu.c (spu_safe_dma): Respect TARGET_SAFE_DMA.
+
+2008-08-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/spu.h (DWARF_FRAME_RETURN_COLUMN): Define.
+
+2008-08-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/36688
+       * gimplify.c (gimplify_modify_expr_rhs): Test TREE_READONLY
+       on the VAR_DECL instead of TYPE_READONLY on its type.
+
+2008-08-12  Ira Rosen  <irar@il.ibm.com>
+
+       * tree-vectorizer.c: Depend on langhooks.h.
+       (supportable_widening_operation): Add two arguments. Support double
+       type conversions.
+       (supportable_narrowing_operation): Likewise.
+       * tree-vectorizer.h (supportable_widening_operation): Add two 
+       arguments.
+       (supportable_narrowing_operation): Likewise.
+       * tree-vect-patterns.c (vect_recog_widen_mult_pattern) : Call
+       supportable_widening_operation with correct arguments.
+       * tree-vect-transform.c (vectorizable_conversion): Likewise.
+       (vectorizable_type_demotion): Support double type conversions.
+       (vectorizable_type_promotion): Likewise.
+       * Makefile.in (tree-vectorizer.o): Depend on langhooks.h.
+
+2008-08-11  Michael Matz  <matz@suse.de>
+
+       * i386/i386.c (override_options): Move initialisation from
+       flag_schedule_insns_after_reload to here from ...
+       (optimization_options): ... here.
+
+2008-08-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/36998
+       * dwarf2out.c (compute_barrier_args_size_1,
+       compute_barrier_args_size): Temporarily remove assertions.
+
+2008-08-10  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR middle-end/20644
+       * tree-ssa.c (struct walk_data): Add new flag
+       warn_possibly_uninitialized.
+       (warn_uninitialized_var): Use it.
+       (warn_uninitialized_vars): New.
+       (execute_early_warn_uninitialized): Call it.
+       (execute_late_warn_uninitialized): Likewise.
+
+2008-08-09  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR middle-end/36238
+       * reload1.c (gen_reload): Guard calls to get_secondary_mem
+       for memory subregs.
+
+2008-08-09  Jan Hubicka  <jh@suse.cz>
+
+       PR target/37055
+       * optabs.c (maybe_emit_unop_insn): Remove produced code if
+       expansion failed.
+       (expand_fix): Be prepared for expansion to fail.
+       (expand_sfix_optab): Remove instructions if expansion failed.
+
+2008-08-09  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/avr/avr.c (avr_mcu_types): Move the AT43USB320 device to
+       avr31 architecture.
+       * config/avr/avr.h (CRT_BINUTILS_SPECS): (Ditto.).
+       * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).
+
+2008-08-09  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config.gcc (mips*-*-linux*, mips64*-*-linux*): Add
+       mips/t-libgcc-mips16 to tmake_file.
+       * config/mips/mips-protos.h (mips_call_type): New enum.
+       (mips_pic_base_register, mips_got_load): Declare.
+       (mips_restore_gp): Take an rtx argument.
+       (mips_use_pic_fn_addr_reg_p): Declare.
+       (mips_expand_call): Replace the sibcall_p argument with
+       a mips_call_type argument.  Add a lazy_p parameter.
+       (mips_split_call): Declare.
+       * config/mips/mips.h (MIPS16_PIC_TEMP_REGNUM): New macro.
+       (MIPS16_PIC_TEMP): Likewise.
+       (reg_class): Delete M16_NA_REGS.
+       (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update accordingly.
+       (SYMBOL_FLAG_BIND_NOW, SYMBOL_REF_BIND_NOW_P): New macros.
+       (mips_split_hi_p): Declare.
+       * config/mips/mips.c (mips_split_hi_p): New array.
+       (mips_regno_to_class): Change M16_NA_REGS entries to M16_REGS.
+       (mips_got_symbol_type_p): New function.
+       (mips_global_symbol_p): Check SYMBOL_REF_EXTERNAL_P.
+       (mips16_stub_function_p): New function.
+       (mips16_local_function_p): Likewise.
+       (mips_use_pic_fn_addr_reg_p): Likewise.
+       (mips_cannot_force_const_mem): Return false for HIGHs.
+       Extend CONST_INT and symbolic handling to MIPS16, using
+       mips_symbol_insns to check that the base symbol type is a
+       legitimate constant.  Reject GOT-based constants if
+       TARGET_MIPS16_PCREL_LOADS.
+       (mips_const_insns): Check targetm.cannot_force_const_mem when
+       decomposing a symbolic base and a large offset.
+       (mips_emit_call_insn): Add ORIG_ADDR and ADDR parameters.
+       When calling a function that needs $25 from MIPS16 code,
+       move the target address into $25 separately and add a USE
+       to the call insn.
+       (mips16_gp_pseudo_reg): Insert the initializer immediately
+       before the first real insn.
+       (mips_pic_base_register, mips_got_load): New functions.
+       (mips_split_symbol): Generalize the name of the LO_SUM_OUT
+       parameter to LOW_OUT.  Say that it can be any valid SET_SRC
+       when splitting a load-address operation.  Split SYMBOL_GOT_DISP
+       constants and highs of SYMBOL_GOT_PAGE_OFST constants.
+       (mips_call_tls_get_addr): Update the call to mips_expand_call,
+       also passing NULL_RTX rather than const0_rtx as the aux argument.
+       (mips_rewrite_small_data_p): Check mips_lo_relocs and mips_split_p
+       instead of TARGET_EXPLICIT_RELOCS.
+       (mips_ok_for_lazy_binding_p): Check SYMBOL_REF_BIND_NOW_P.
+       (mips_load_call_address): Replace the sibcall_p argument with
+       a mips_call_type argument.  Use mips_got_load.
+       (mips16_local_alias): New structure.
+       (mips16_local_aliases): New variable.
+       (mips16_local_aliases_hash): New function.
+       (mips16_local_aliases_eq): Likewise.
+       (mips16_local_alias): Likewise.
+       (mips16_stub_function): Likewise.
+       (mips16_build_function_stub): Create a local alias for the target
+       function.  Handle TARGET_ABICALLS.  For PIC abicalls, emit a
+       .cpload directive and an R_MIPS_NONE relocation for the target
+       function, then load the alias rather than the function itself.
+       Wrap the non-PIC abicalls version in ".option pic0/.option pic2".
+       (mips16_copy_fpr_return_value): Use mips16_stub_function and
+       mips_expand_call.  Set SYMBOL_REF_BIND_NOW on the symbol.
+       (mips16_build_call_stub): Replace the FN parameter with an
+       FN_PTR parameter.  Force the address into a register if it
+       isn't a call_insn_operand; don't rely on the caller to do this.
+       If a call to a locally-defined and locally-binding MIPS16
+       function must be made indirectly, redirect the call to the
+       function's local alias.  Use mips16_stub_function_p,
+       mips16_stub_function, mips_expand_call and use_reg.
+       Set SYMBOL_FLAG_BIND_NOW on __mips_call_* symbols.
+       Use explicit %hi and %lo accesses where possible.
+       Use MIPS_CALL to generate the correct code form of a
+       jal instruction.  Add clobbers of $18 instead of uses.
+       Update the call to mips_emit_call_insn.
+       (mips_expand_call): Replace the SIBCALL_P argument with a
+       mips_call_type argument and handle the new MIPS_CALL_EPILOGUE value.
+       Take a LAZY_P parameter.  Call mips16_build_call_stub first,
+       allowing it to modify the call address.  Update the calls to
+       mips_load_call_address and mips_emit_call_insn.
+       (mips_split_call): New function.
+       (mips_init_relocs): Clear mips_split_hi_p.  Only use %gp_rel if
+       !TARGET_MIPS16.  Split SYMBOL_GOT_DISP, and the high parts of
+       SYMBOL_GOT_PAGE_OFST, for MIPS16 code.
+       (mips_global_pointer): Check mips16_cfun_returns_in_fpr_p.
+       (mips_extra_live_on_entry): Include MIPS16_PIC_TEMP_REGNUM
+       if TARGET_MIPS16.
+       (mips_cprestore_slot): New function.
+       (mips_restore_gp): Take a TEMP parameter.  Handle TARGET_MIPS16
+       and use mips_cprestore_slot.
+       (mips_output_function_prologue): Handle TARGET_MIPS16 for
+       LOADGP_OLDABI.
+       (mips_emit_loadgp): Move into MIPS16_PIC_TEMP for MIPS16,
+       then use a copygp_mips16 instruction to set up $28.
+       (mips_expand_prologue): Initialize the cprestore slot for MIPS16 too.
+       (mips16_lay_out_constants): Call split_all_insns_noflow.
+       (mips_reorg_process_insns): Explicitly set all_noreorder_p to
+       false if TARGET_MIPS16.
+       (mips_reorg): Don't call vr4130_align_insns if TARGET_MIPS16.
+       (mips_output_mi_thunk): Use mips_got_symbol_type_p.  Use the
+       mips_dangerous_for_la25_p approach for MIPS16 PIC calls too.
+       (mips_set_mips16_mode): Always set MASK_EXPLICIT_RELOCS for
+       MIPS16 code.  Allow MIPS16 o32 PIC.
+       (mips_override_options): Allow MIPS16 o32 PIC.
+       * config/mips/mips.md: Lower CONST_GP_P moves into register moves
+       after reload if TARGET_USE_GOT.
+       (UNSPEC_COPYGP): New constant.
+       (length): Use a default length of 8 for MIPS16 GOT loads.
+       (*got_disp<mode>): Check mips_split_p instead of TARGET_XGOT.
+       (*got_page<mode>): Check mips_split_hi_p.
+       (*got_disp<mode>, *got_page<mode>): Use mips_got_load.
+       (unspec_got<mode>, unspec_call<mode>): New expanders.
+       (load_got<mode>, load_call<mode>): Remove the length attributes.
+       Use a got attribute instead of a type attribute.
+       (copygp_mips16): New insn.
+       (restore_gp): Add a scratch clobber and pass it to mips_restore_gp.
+       (load_call<mode>): Use a "d" constraint instead of an "r" constraint.
+       (sibcall, sibcall_value, call, call_value): Update the calls
+       to mips_expand_call.
+       (call_internal, call_value_internal): Use mips_split_call.
+       (call_value_multiple_internal): Likewise.
+       (call_split): Move after call_internal (the insn it is split from).
+       (call_internal_direct, call_value_internal_direct): Turn into
+       define_insn_and_splits.  Split if TARGET_SPLIT_CALLS.
+       (call_direct_split, call_value_direct_split): New patterns.
+       * config/mips/constraints.md (c): Handle TARGET_MIPS16 first
+       and use M16_REGS instead of M16_NA_REGS.
+       * config/mips/predicates.md (const_call_insn_operand): Replace
+       the TARGET_ABSOLUTE_ABICALLS-based check with a more general
+       mips_use_pic_fn_addr_reg_p check.
+       (move_operand): Reject HIGHs if mips_split_hi_p.
+       * config/mips/mips16.S: Assembly as empty if the ABI is not suitable.
+       (__mips16_floatunsisf): Inline __mips16_floatsisf.
+       (CALL_STUB_NO_RET, CALL_STUB_REG): Copy the target register to $25.
+       * config/mips/libgcc-mips16.ver: New file.
+       * config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Add
+       $(srcdir)/config/mips/libgcc-mips16.ver.
+
+2008-08-09  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.c (mips_unspec_address_offset): Move earlier in file.
+       (mips_unspec_address, mips_unspec_offset_high): Likewise.
+       (mips_ok_for_lazy_binding_p, mips_load_call_address): Likewise.
+       (mips16_cfun_returns_in_fpr_p): Likewise.
+
+2008-08-09  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.h (MASK_RETURN_ADDR): Expand commentary.
+       * config/mips/linux-unwind.h (mips_fallback_frame_state): Add 2
+       rather than 4 to PC.
+
+2008-08-09  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.h (STATIC_CHAIN_REGNUM): Remap to $15.
+       (FUNCTION_PROFILER): Save the static chain pointer into $2
+       beforehand and restore it aftewards.
+       (TRAMPOLINE_TEMPLATE): Adjust accordingly.  Load the target
+       address directly into $25 and call the function through $25;
+       do not clobber $3.  Pad the DImode version to cover the space
+       left by the deleted $25 <- $3 move.
+       (TRAMPOLINE_SIZE): Adjust the size of the SImode version after
+       the removal of the $25 <- $3 move.
+       (INITIALIZE_TRAMPOLINE): Update offsets accordingly.
+       * config/mips/sdemtk.h (FUNCTION_PROFILER): As for mips.h.
+
+2008-08-09  Richard Sandiford  <rdsandiford@googlemail.com>
+           Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config/mips/mips.h (FUNCTION_NAME_ALREADY_DECLARED): Delete.
+       * config/mips/linux.h (ASM_DECLARE_FUNCTION_NAME): Delete.
+       (ASM_DECLARE_FUNCTION_SIZE, FUNCTION_NAME_ALREADY_DECLARED): Delete.
+       * config/mips/mips.c (mips_start_function_definition): New function.
+       (mips_end_function_definition): Likewise.
+       (mips_output_function_prologue): Use mips_start_function_definition.
+       (mips_output_function_epilogue): Use mips_end_function_definition.
+       (build_mips16_function_stub): Use mips_start_function_definition
+       and mips_end_function_definition.
+       (build_mips16_call_stub): Likewise.
+
+2008-08-09  Richard Guenther  <rguenther@suse.de>
+
+       * gimple.c (gimple_build_call_1): Deal with FUNCTION_DECL fn.
+       * gimple.h (gimple_call_fn): Adjust comment.
+       (gimple_call_set_fndecl): New function.
+       (gimple_call_fndecl): Adjust for GIMPLE_CALL no
+       longer having bare FUNCTION_DECL operand.
+       (gimple_call_return_type): Likewise.
+       * tree-cfg.c (verify_stmt): Verify function operand of a GIMPLE_CALL.
+
+       * value-prof.c (gimple_divmod_fixed_value): Do not emit labels.
+       (gimple_mod_pow2): Likewise.
+       (gimple_mod_subtract): Likewise.
+       (gimple_ic): Likewise.
+       (gimple_stringop_fixed_value): Likewise.
+       (gimple_indirect_call_to_profile): Fix for GIMPLE_CALL no
+       longer having bare FUNCTION_DECL operand.
+       * ipa-cp.c (ipcp_update_callgraph): Use gimple_call_set_fndecl.
+       * omp-low.c (optimize_omp_library_calls): Likewise.
+       * cgraphunit.c (update_call_expr): Likewise.
+       * tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise.
+       (execute_convert_to_rsqrt): Likewise.
+       * cfgexpand.c (gimple_to_tree): Simplify.
+       (release_stmt_tree): Fix for GIMPLE_CALL no longer having
+       bare FUNCTION_DECL operand.
+       * tree-nested.c (init_tmp_var_with_call): Use gimple_call_return_type.
+       (convert_gimple_call): Use gimple_call_fndecl.
+       * c-common.c (c_warn_unused_result): Likewise.
+
+2008-08-09  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c/17880
+       * c-typeck.c (digest_init): Call verify_sequence_points from here.
+       (c_finish_return): Likewise.
+       (c_start_case): Likewise.
+       * c-common.c (warn_for_collisions_1): Use explicit location in
+       warning.
+       * c-parser.c (c_parser_condition): New. Call
+       verify_sequence_points.
+       (c_parser_paren_condition): Call c_parser_condition.
+       (c_parser_for_statement): Call c_parser_condition.
+
+2008-08-09  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 36901
+       * diagnostic.def (DK_PEDWARN, DK_PERMERROR): New.  
+       * diagnostic.c (pedantic_warning_kind, permissive_error_kind):
+       Moved from diagnostic.h
+       (diagnostic_report_diagnostic): Return bool. Handle DK_PEDWARN and
+       DK_PERMERROR.
+       (emit_diagnostic): New.
+       (warning0, pedwarn0): Delete.
+       (warning, warning_at, pedwarn, permerror): Return bool.  
+       * diagnostic.h (pedantic_warning_kind, permissive_error_kind):
+       Moved to diagnostic.c.
+       (struct diagnostic_context): Use correct type for
+       classify_diagnostic.
+       (diagnostic_report_diagnostic): Update declaration.
+       (emit_diagnostic): Declare.
+       * errors.c (warning): Return bool.  
+       * errors.h (warning): Update declaration.
+       * toplev.h (warning0, pedwarn0): Delete.
+       (warning, warning_at, pedwarn, permerror): Return bool.
+       * c-errors.c (pedwarn_c99, pedwarn_c90): Use DK_PEDWARN.
+       * c-decl.c (locate_old_decl): Delete 'diag' argument. Always use
+       inform. Update all calls.
+       (diagnose_mismatched_decls): Check return value of warning/pedwarn
+       before giving informative note.
+       (implicit_decl_warning): Likewise.  
+       * c-typeck.c (build_function_call): Likewise.  
+       * tree-sssa.c (warn_uninit): Likewise.  
+       * builtins.c (gimplify_va_arg_expr): Likewise.
+
+2008-08-09  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 7651
+       * doc/invoke.texi (-Wextra): Move warning from here...
+       (-Wuninitialized): ... to here.
+       
+2008-08-08  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 28875
+       * flags.h (set_Wunused): Delete
+       * toplev.c (process_options): Handle Wunused flags here.
+       * opts.c (maybe_warn_unused_parameter): Delete.
+       (common_handle_option): Replace set_Wunused by warn_unused.
+       (set_Wextra): Do not handle Wunused-parameter here.
+       (set_Wunused): Delete.
+       * c-opts.c (c_common_handle_option): Replace set_Wunused by
+       warn_unused.
+       * common.opt (Wunused): Add Var and Init.
+       (Wunused-function): Likewise.
+       (Wunused-label): Likewise.
+       (Wunused-parameter): Likewise.
+       (Wunused-value): Likewise.
+       (Wunused-variable): Likewise.
+       
+2008-08-08  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * doc/invoke.texi: Add cpu_type power7.
+       * config.in (HAVE_AS_VSX): New.
+       * config.gcc: Add cpu_type power7.
+       * configure.ac (HAVE_AS_VSX): Check for assembler support of the
+       VSX instructions.
+       * configure: Regenerate.
+       * config/rs6000/rs6000.c (rs6000_override_options): Alias power7 to
+       power5.
+       * config/rs6000/rs6000.h (ASM_CPU_POWER7_SPEC): Define.
+       (ASM_CPU_SPEC): Pass %(asm_cpu_power7) for -mcpu=power7.
+       (EXTRA_SPECS): Add asm_cpu_power7 spec string.
+
+2008-08-08  Dorit Nuzman  <dorit@il.ibm.com>
+
+       * tree-vect-transform.c (vectorizable_conversion): Pass the integral
+       type to vectorize.builtin_conversion.
+       (vectorizable_conversion): Likewise.
+       * config/i386/i386.c (ix86_vectorize_builtin_conversion): Always takes
+       integral type as input.
+       * config/rs6000/rs6000.c (rs6000_builtin_conversion): Add case for
+       FIX_TRUNC_EXPR.
+       (rs6000_expand_builtin): Add case for ALTIVEC_BUILTIN_VCTUXS
+       and ALTIVEC_BUILTIN_VCTSXS.
+       (rs6000_builtin_mul_widen_even. rs6000_builtin_mul_widen_odd): Fix
+       formatting. 
+
+2008-08-08  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-ccp.c (likely_value): Calls are not all varying.
+       (surely_varying_stmt_p): Calls are varying only if they are
+       non-builtin and not indirect or have no result.
+       (ccp_fold): Re-instantiate code before the tuples merge.
+
+2008-08-08  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/37056
+       * gimple.h (gimple_assign_rhs_class): New helper function.
+       * tree-ssa-loop-niter.c (get_val_for): Fix tuplification, handle
+       unary operations properly.
+
+2008-08-07  Jan Hubicka  <jh@suse.cz>
+
+       * i386.h (ix86_size_cost): Declare.
+       (ix86_cur_cost): New function macro.
+       * i386.md (peepholes expanding size and splitters): Predicate by
+       optimize_insn_for_speed_p.
+       (peepholes reduce size and splitters): Predicate by
+       optimize_insn_for_size_p.
+       * i386.c (ix86_size_cost): Rename from ...
+       (size_cost): This one.
+       (override_options): Update.
+       (decide_alg): Likewise.
+       (ix86_expand_clear): Use RTL profile.
+       (ix86_pad_returns): Use RTL profile.
+
+2008-08-07  Jan Hubicka  <jh@suse.cz>
+
+       * recog.c (split_all_insns): Set RTL profile
+       (peephole2_optimize): Likewise.
+       * function.c (thread_prologue_and_epilogue_insns): Likewise.
+       * combine.c (combine_instructions): Likewise.
+
+2008-08-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * c-common.c (c_common_reswords): Also warn about keyword "bool".
+
+2008-08-07  Bob Wilson  <bob.wilson@acm.org>
+       
+       * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Copy incoming
+       value in a6 after the set_frame_ptr insn.
+       
+2008-08-07  Richard Henderson  <rth@redhat.com>
+
+       PR debug/37033
+       * gcc.c (cpp_options): Pass along -g*.
+
+2008-08-07  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/arm/arm.c (output_move_neon): Update comment describing
+       big-endian vector layout.
+       (arm_assemble_integer): Do not handle big-endian NEON vectors
+       specially.
+       * config/arm/neon.md (vec_set<mode>_internal, vec_extract<mode>,
+       neon_vget_lane<mode>_sext_internal,
+       neon_vget_lane<mode>_zext_internal, neon_vget_lane<mode>): Adjust
+       element indices for big-endian.
+
+2008-08-07  Richard Henderson  <rth@redhat.com>
+
+       * configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): New.
+       * configure, config.in: Rebuild.
+       * debug.h (dwarf2out_do_cfi_asm): Declare.
+       * c-cppbuiltin.c (c_cpp_builtins): Use it.
+       * dwarf2out.c (dwarf2out_do_cfi_asm): New.
+       (dwarf2out_cfi_label, add_fde_cfi, output_call_frame_info,
+       dwarf2out_begin_prologue, dwarf2out_end_epilogue): Use it.
+
+2008-08-07  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/arm/iwmmxt.md (movv8qi_internal, movv4hi_internal,
+       movv2si_internal): Combine into mov<mode>_internal.
+       (movv2si_internal_2): Remove.
+
+2008-08-07  Jan Hubicka  <jh@suse.cz>
+
+       PR target/37048
+       * i386.md (single stringop patterns): Enable unconditionally. 
+
+2008-08-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/36992
+       * config/i386/emmintrin.h (_mm_move_epi64): Use
+       __builtin_ia32_movq128.
+
+       * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVQ128.
+       (bdesc_args): Add IX86_BUILTIN_MOVQ128.
+
+       * config/i386/sse.md (sse2_movq128): New.
+
+       * doc/extend.texi: Document __builtin_ia32_movq128.
+
+2008-08-07  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/37042
+       * tree-ssa-alias-warnings.c (nonstandard_alias_p): Ref-all
+       pointers can access anything.
+
+2008-08-06  Jan Hubicka  <jh@suse.cz>
+
+       * optabs.c (emit_unop_insn): Break out to ...
+       (maybe_emit_unop_insn): ... this one.
+       (expand_sfix_optab): Use maybe variant.
+       * optabs.h (maybe_emit_unop_insn): Declare.
+
+       * i386.md (mov0 patterns): Enable by default.
+       (FP conversion expanders): Disable expansion of code expanding
+       sequences when instruction should be optimized for size.
+       (single strinop patterns): Enable when optimizing for size.
+       (string expanders): Disable expanding of code expanding sequences
+       when optimizning instruction for size.
+       * i386.c (ix86_expand_vector_move_misalign): Do code size optimization
+       per BB basis.
+       (ix86_fp_comparison_sahf_cost): Likewise.
+       (ix86_expand_branch): Likewise.
+       (ix86_expand_ashl_const): Likewise.
+       (ix86_split_ashl): Likewise.
+       (ix86_expand_strlen): Likewise.
+       (ix86_emit_fp_unordered_jump): Likewie.
+
+2008-08-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * c-common.c: Fix typo.
+       (c_common_reswords): Activate more C++ keyword warnings.
+
+       * matrix-reorg.c (compute_offset): Avoid C++ keywords.
+
+2008-08-06  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 26785
+       * diagnostic.c (permerror_at): New.
+       * toplev.h (permerror_at): Declare.
+       
+2008-08-06  Victor Kaplansky  <victork@il.ibm.com>
+           Ira Rosen  <irar@il.ibm.com>
+
+       * tree-vect-transform.c (vect_model_simple_cost): Return
+       immediately if stmt is pure SLP.
+       (vect_model_store_cost): Ditto.
+       (vect_model_load_cost): Ditto.
+       (vectorizable_store): Remove PURE_SLP check before call
+       to vect_model_store_cost.
+       (vect_model_store_cost): When checking whether stmt describe
+       strided access, add a check that it is not slp_node.
+
+2008-08-06  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 8715
+       * c-common.c (warn_for_sign_compare): New. Handle separately the
+       case that 'constant' is zero.
+       * c-typeck.c (build_binary_op): Move code to c-common.c
+       
+2008-08-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * config/alpha/alpha.c (alpha_preferred_reload_class,
+       alpha_secondary_reload, alpha_emit_set_const_1, function_value,
+       alpha_output_mi_thunk_osf): Avoid C++ keywords.
+       * config/arm/arm.c (output_move_vfp, output_move_neon): Likewise.
+       * config/arm/arm.md: Likewise.
+       * config/avr/avr-protos.h (preferred_reload_class,
+       test_hard_reg_class, avr_simplify_comparison_p,
+       out_shift_with_cnt, class_max_nregs): Likewise.
+       * config/avr/avr.c (class_max_nregs, avr_simplify_comparison_p,
+       output_movqi, output_movhi, output_movsisf, out_shift_with_cnt,
+       preferred_reload_class, test_hard_reg_class): Likewise.
+       * config/bfin/bfin.c (legitimize_pic_address, hard_regno_mode_ok,
+       bfin_memory_move_cost, bfin_secondary_reload,
+       bfin_output_mi_thunk): Likewise.
+       * config/crx/crx.c (crx_secondary_reload_class,
+       crx_memory_move_cost): Likewise.
+       * config/frv/frv-protos.h (frv_secondary_reload_class,
+       frv_class_likely_spilled_p, frv_class_max_nregs): Likewise.
+       * config/frv/frv.c (frv_override_options, frv_alloc_temp_reg,
+       frv_secondary_reload_class, frv_class_likely_spilled_p,
+       frv_class_max_nregs): Likewise.
+       * config/h8300/h8300.c (h8300_classify_operand,
+       h8300_unary_length, h8300_bitfield_length, h8300_asm_insn_count):
+       Likewise.
+       * config/i386/winnt.c (i386_pe_declare_function_type): Likewise.
+       * config/ia64/ia64.c (ia64_preferred_reload_class,
+       ia64_secondary_reload_class, ia64_output_mi_thunk): Likewise.
+       * config/iq2000/iq2000.c (gen_int_relational): Likewise.
+       * config/m32c/m32c.c (class_can_hold_mode, m32c_output_compare):
+       Likewise.
+       * config/m68hc11/m68hc11.c (preferred_reload_class,
+       m68hc11_memory_move_cost): Likewise.
+       * config/mcore/mcore.c (mcore_secondary_reload_class,
+       mcore_reload_class): Likewise.
+       * config/mips/mips.c (mips_hard_regno_mode_ok_p,
+       mips_class_max_nregs, mips_cannot_change_mode_class,
+       mips_preferred_reload_class, mips_secondary_reload_class,
+       mips_output_mi_thunk): Likewise.
+       * config/mmix/mmix.c (mmix_preferred_reload_class,
+       mmix_preferred_output_reload_class, mmix_secondary_reload_class):
+       Likewise.
+       * config/mn10300/mn10300.c (mn10300_secondary_reload_class):
+       Likewise.
+       * config/pa/pa.c (pa_secondary_reload, pa_combine_instructions,
+       pa_can_combine_p, pa_cannot_change_mode_class): Likewise.
+       * config/pa/pa.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
+       * config/rs6000/rs6000.c (paired_expand_vector_init,
+       rs6000_secondary_reload_class, rs6000_output_mi_thunk,
+       compare_section_name, rs6000_memory_move_cost): Likewise.
+       * config/s390/s390.c (s390_emit_compare_and_swap,
+       s390_preferred_reload_class, s390_secondary_reload,
+       legitimize_pic_address, legitimize_tls_address,
+       legitimize_reload_address, s390_expand_cs_hqi, s390_expand_atomic,
+       s390_class_max_nregs): Likewise.
+       * config/s390/s390.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
+       * config/s390/s390.md: Likewise.
+       * config/score/score-protos.h (score_secondary_reload_class,
+       score_preferred_reload_class): Likewise.
+       * config/score/score.c (score_preferred_reload_class,
+       score_secondary_reload_class): Likewise.
+       * config/score/score3.c (score3_output_mi_thunk,
+       score3_preferred_reload_class, score3_secondary_reload_class,
+       score3_hard_regno_mode_ok): Likewise.
+       * config/score/score3.h (score3_preferred_reload_class,
+       score3_secondary_reload_class): Likewise.
+       * config/score/score7.c (score7_output_mi_thunk,
+       score7_preferred_reload_class, score7_secondary_reload_class,
+       score7_hard_regno_mode_ok): Likewise.
+       * config/score/score7.h (score7_preferred_reload_class,
+       score7_secondary_reload_class): Likewise.
+       * config/sh/sh.c (prepare_move_operands, output_far_jump,
+       output_branchy_insn, add_constant, gen_block_redirect,
+       sh_insn_length_adjustment, sh_cannot_change_mode_class,
+       sh_output_mi_thunk, replace_n_hard_rtx, sh_secondary_reload):
+       Likewise.
+       * config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
+       * config/stormy16/stormy16.c (xstormy16_output_cbranch_hi,
+       xstormy16_output_cbranch_si, xstormy16_secondary_reload_class,
+       xstormy16_preferred_reload_class): Likewise.
+       * config/xtensa/xtensa.c (xtensa_expand_compare_and_swap,
+       xtensa_expand_atomic, override_options,
+       xtensa_preferred_reload_class, xtensa_secondary_reload_class):
+       Likewise.
+       * reorg.c (try_merge_delay_insns): Likewise.
+       * tree.c (merge_dllimport_decl_attributes): Likewise.
+
+       * config/frv/frv.c (frv_print_operand): Change isalpha to ISALPHA.
+
+2008-08-06  Michael Matz  <matz@suse.de>
+
+       * Makefile.in (write_entries_to_file): Quote words.
+       * gengtype.c: (read_input_line): Skip over leading white-space.
+
+2008-08-06  Marc Gauthier  <marc@tensilica.com>
+
+       * config.gcc: Match more processor names for Xtensa.
+       * configure.ac: Likewise.
+       * doc/install.texi (Specific): Likewise.
+       * configure: Regenerate.
+
+2008-08-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (expand_builtin_profile_func): Avoid C++ keywords.
+       * calls.c (avoid_likely_spilled_reg): Likewise.
+       * cfgexpand.c (gimple_assign_rhs_to_tree): Likewise.
+       * cgraph.c (cgraph_clone_edge, cgraph_clone_node): Likewise.
+       * config/i386/i386.c (ix86_expand_special_args_builtin,
+       ix86_secondary_reload): Likewise.
+       * except.c (struct eh_region, gen_eh_region_catch,
+       remove_unreachable_regions, duplicate_eh_regions,
+       assign_filter_values, build_post_landing_pads,
+       sjlj_find_directly_reachable_regions, remove_eh_handler,
+       reachable_next_level, foreach_reachable_handler,
+       can_throw_internal_1, can_throw_external_1,
+       collect_one_action_chain): Likewise.
+       * expr.c (expand_expr_real_1, vector_mode_valid_p): Likewise.
+       * fold-const.c (twoval_comparison_p, eval_subst): Likewise.
+       * function.c (update_temp_slot_address, instantiate_new_reg,
+       instantiate_virtual_regs_in_rtx,
+       instantiate_virtual_regs_in_insn): Likewise.
+       * gimple.c (extract_ops_from_tree, gimple_seq_copy): Likewise.
+       * gimplify.c (gimplify_call_expr, gimplify_init_constructor,
+       gimplify_cleanup_point_expr): Likewise.
+       * ipa-cp.c (ipcp_lattice_changed): Likewise.
+       * passes.c (next_pass_1): Likewise.
+       * print-tree.c (print_node_brief, print_node): Likewise.
+       * profile.c (branch_prob): Likewise.
+       * tree-dump.c (dump_register): Likewise.
+       * tree-eh.c (replace_goto_queue_cond_clause, lower_catch):
+       Likewise.
+       * tree-inline.c (remap_ssa_name, remap_type_1, remap_blocks,
+       copy_statement_list, remap_gimple_op_r, copy_tree_body_r,
+       copy_edges_for_bb, copy_cfg_body, copy_tree_r,
+       copy_arguments_for_versioning, copy_static_chain): Likewise.
+       * tree-into-ssa.c (names_replaced_by, add_to_repl_tbl,
+       add_new_name_mapping, register_new_name_mapping): Likewise.
+       * tree-mudflap.c (mf_xform_derefs): Likewise.
+       * tree-predcom.c (struct chain, dump_chain, replace_ref_with,
+       get_init_expr, combine_chains): Likewise.
+       * tree-pretty-print.c (dump_generic_node): Likewise.
+       * tree-ssa-structalias.c (create_variable_info_for): Likewise.
+       * tree-vrp.c (simplify_cond_using_ranges): Likewise.
+       * tree.c (substitute_in_expr, iterative_hash_expr): Likewise.
+       * value-prof.c (gimple_duplicate_stmt_histograms): Likewise.
+
+2008-08-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR middle-end/37010
+       * calls.c (expand_call): Use the biggest preferred stack
+       boundary.
+
+2008-08-06  Michael Matz  <matz@suse.de>
+
+       PR target/36613
+       * reload.c (push_reload): Merge in,out,in_reg,out_reg members
+       for reused reload, instead of overwriting them.
+
+2008-08-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR middle-end/37009
+       * cfgexpand.c (expand_stack_alignment): Check parm_stack_boundary
+       for incoming stack boundary.
+
+       * function.c (assign_parm_find_entry_rtl): Update
+       parm_stack_boundary.
+
+       * function.h (rtl_data): Add parm_stack_boundary.
+
+       * config/i386/i386.c (ix86_finalize_stack_realign_flags): Check
+       parm_stack_boundary for incoming stack boundary.
+
+2008-08-06  Joseph Myers  <joseph@codesourcery.com>
+
+       * jump.c (rtx_renumbered_equal_p): Do not call subreg_regno_offset
+       for unrepresentable subregs or treat them as equal to other regs
+       or subregs with the same register number.
+
+2008-08-06  Aldy Hernandez  <aldyh@redhat.com>
+
+       PR middle-end/35432
+       * gimplify.c (gimplify_modify_expr): Do not optimize zero-sized types
+       if want_value.
+
+2008-08-06  Jan Hubicka  <jh@suse.cz>
+
+       * predict.c (maybe_hot_frequency_p): When profile is absent, all
+       frequencies might be hot.
+
+2008-08-06  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * reload.c (find_reloads): Force constants into literal pool
+       also if they are wrapped in a SUBREG.
+
 2008-08-06  Maxim Kuvyrkov  <maxim@codesourcery.com>
 
        PR target/35659