OSDN Git Service

2010-03-18 Martin Jambor <mjambor@suse.cz>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index d80793f..9b5211c 100644 (file)
@@ -1,3 +1,960 @@
+2010-03-18  Martin Jambor  <mjambor@suse.cz>
+
+       PR middle-end/42450
+       * cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
+       * cgraphunit.c (cgraph_materialize_all_clones): Update calls in
+       all non-clones.  Moved call redirection...
+       (cgraph_redirect_edge_call_stmt_to_callee): ...to this new
+       function.
+       (cgraph_materialize_all_clones): Dispose of all
+       combined_args_to_skip bitmaps.
+       (verify_cgraph_node): Do not check for edges pointing to wrong
+       nodes in inline clones.
+       * tree-inline.c (copy_bb): Call
+       cgraph_redirect_edge_call_stmt_to_callee.
+       * ipa.c (cgraph_remove_unreachable_nodes): Call
+       cgraph_node_remove_callees even when there are used clones.
+
+2010-03-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
+
+2010-03-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/43383
+       * config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
+       for 32bit.
+
+2010-03-18  Michael Matz  <matz@suse.de>
+
+       PR middle-end/43419
+       * builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
+       into sqrt(x) if we need to preserve signed zeros.
+
+2010-03-18  Steven Bosscher  <steven@gcc.gnu.org>
+           Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR rtl-optimization/43360
+       * loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
+       note if we don't know its invariant status.
+
+2010-03-18  Michael Matz  <matz@suse.de>
+
+       PR tree-optimization/43402
+       * tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
+       PHI chains of ssa names registered for update.
+
+2010-03-17  Peter Bergner  <bergner@vnet.ibm.com>
+
+       PR target/42427
+       * config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
+       non-offsettable and pre_modify update addressing.
+       * config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
+       and "2" alternatives "#".
+       (*movdd_softfloat32): Make all alternatives "#";
+       * config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
+       (*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
+       (*movdf_softfloat32): Make all alternatives "#";
+       (movdi): Use the new DIFD mode iterator to create a common splitter
+       for movdi, movdf and movdd patterns.
+
+2010-03-18  Shujing Zhao  <pearly.zhao@oracle.com>
+
+       * common.opt (dumpdir): Remove redundant tab.
+
+2010-03-17  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/43347
+       * tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
+       original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
+
+2010-03-17  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       PR rtl-optimization/42216
+       * regrename.c (create_new_chain): New function, broken out from...
+       (scan_rtx_reg): ... here.  Call it.  Handle the case where we are
+       appending a use to an empty chain.
+       (build_def_use): Remove previous changes that convert OP_INOUT to
+       OP_OUT operands; instead detect the case where an OP_INOUT operand
+       uses a previously untracked register and create an empty chain for
+       it.
+
+2010-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/extend.texi (Function Attributes): Rewrite unfinished
+       sentence in ms_abi documentation.
+
+2010-03-17  Alan Modra  <amodra@gmail.com>
+
+       * config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
+       * config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
+       (SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
+       * config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
+
+2010-03-16  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/43365
+       * tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
+       (lower_try_finally): Save and restore eh_seq around the expansion
+       of the try-finally.
+
+2010-03-16  Aldy Hernandez  <aldyh@redhat.com>
+
+       * graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
+       statements before splitting block.
+
+2010-03-16  Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * doc/sourcebuild.texi (Testsuites): Fix markup.
+       Use pathnames relative to gcc/testsuite.
+       (Test Directives): Move description of how timeout is determined.
+       (Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
+       (C Tests): Correct gcc.misc-tests directory.
+       Framework tests now live in gcc.test-framework.
+
+2010-03-16  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/43379
+       * tree-cfg.c (gimple_merge_blocks): When propagating virtual
+       PHI operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI
+       properly.
+
+2010-03-16  Aldy Hernandez  <aldyh@redhat.com>
+           Alexandre Oliva  <aoliva@redhat.com>
+
+       PR tree-optimization/42917
+       * lambda-code.c (remove_iv): Skip debug statements.
+       (lambda_loopnest_to_gcc_loopnest): Likewise.
+       (not_interesting_stmt): Debug statements are not interesting.
+
+2010-03-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/43051
+       PR debug/43092
+       * cselib.c (cselib_preserve_constants,
+       cfa_base_preserved_val): New static variables.
+       (preserve_only_constants): New function.
+       (cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
+       clear its REG_VALUES.  If cselib_preserve_constants, don't 
+       empty the whole hash table, but preserve there VALUEs with constants,
+       cfa_base_preserved_val and cfa_base_preserved_val plus constant.
+       (cselib_preserve_cfa_base_value): New function.
+       (cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
+       (cselib_init): Change argument to int bitfield.  Set
+       cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
+       is in it.
+       (cselib_finish): Clear cselib_preserve_constants and
+       cfa_base_preserved_val.
+       * cselib.h (enum cselib_record_what): New enum.
+       (cselib_init): Change argument to int.
+       (cselib_preserve_cfa_base_value): New prototype.
+       * postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
+       * dse.c (dse_step1): Likewise.
+       * cfgcleanup.c (thread_jump): Likewise.
+       * sched-deps.c (sched_analyze): Likewise.
+       * gcse.c (local_cprop_pass): Likewise.
+       * simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
+       If FN is non-NULL, call the callback always and whenever it returns
+       non-NULL just return that.  Only do rtx_equal_p if FN is NULL.
+       * rtl.h (simplify_replace_fn_rtx): Add argument to callback.
+       * combine.c (propagate_for_debug_subst): Add old_rtx argument,
+       compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
+       * Makefile.in (var-tracking.o): Depend on $(RECOG_H).
+       * var-tracking.c: Include recog.h.
+       (bb_stack_adjust_offset): Remove.
+       (vt_stack_adjustments): Don't call it, instead just gather the
+       adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
+       (adjust_stack_reference): Remove.
+       (compute_cfa_pointer): New function.
+       (hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
+       (struct adjust_mem_data): New type.
+       (adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
+       functions.
+       (get_address_mode): New function.
+       (replace_expr_with_values): Use it.
+       (use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
+       Use get_address_mode.  For cfa_base_rtx return MO_CLOBBER.
+       (adjust_sets): Remove.
+       (add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
+       Use get_address_mode.
+       (get_adjusted_src): Remove.
+       (add_stores): Don't call it.  Never reuse expr SET.  Don't add extra
+       MO_VAL_USE for cfa_base_rtx plus constant.  Use get_address_mode.
+       (add_with_sets): Don't call adjust_sets.
+       (fp_setter, vt_init_cfa_base): New functions.
+       (vt_initialize): Change return type to bool.  Move most of pool etc.
+       initialization to the beginning of the function from end.  Pass
+       CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
+       If !frame_pointer_needed, call vt_stack_adjustment before mos
+       vector is filled, call vt_init_cfa_base if argp/framep has been
+       eliminated to sp.  If frame_pointer_needed and argp/framep has
+       been eliminated to hard frame pointer, set
+       hard_frame_pointer_adjustment and call vt_init_cfa_base after
+       encountering fp setter in the prologue.  For MO_ADJUST, call
+       log_op_type before pusing the op into mos vector, not afterwards.
+       Call adjust_insn before cselib_process_insn/add_with_sets,
+       call cancel_changes (0) afterwards.
+       (variable_tracking_main_1): Adjust for vt_initialize calling
+       vt_stack_adjustments and returning whether it succeeded or not.
+
+2010-03-15  Aldy Hernandez  <aldyh@redhat.com>
+
+       * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
+       debug statements.
+
+2010-03-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
+       has been set.
+       (based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
+       drap_reg has not been set.
+
+2010-03-15  Michael Matz  <matz@suse.de>
+
+       PR middle-end/43300
+       * tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
+       use it to expand block copies.
+       (insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
+       insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
+       (insert_value_copy_on_edge): Use store_expr for BLKmode values.
+
+2010-03-15  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/43367
+       * tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
+       elimination check.
+
+2010-03-15  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/43317
+       * ipa-struct-reorg.c (create_new_general_access): Update stmt.
+
+2010-03-15  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/43141
+       * tree-sra.c (create_abstract_origin): New function.
+       (modify_function): Call create_abstract_origin.
+
+2010-03-15  Chris Demetriou  <cgd@google.com>
+
+       * Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
+       wasn't copied.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43354
+       * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
+       call insert_out_of_ssa_copy for default definitions.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (my_long_long): Defined.
+       (gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
+       * graphite-sese-to-poly.c (my_long_long): Defined.
+       (scop_ivs_can_be_represented): Use it.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
+       graphite-max-bbs-per-function, and loop-block-tile-size.
+       * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
+       with "maximum".
+       (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
+       forward declaration.
+       * graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
+       (add_upper_bounds_from_estimated_nit): New.
+       (build_loop_iteration_domains): Use it.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43306
+       * tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
+       should be an INTEGER_CST.  Also handle CASE_CONVERT.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite.c (graphite_initialize): To bound the number of bbs per
+       function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
+       * params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
+       * doc/invoke.texi: Document it.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
+       * graphite-sese-to-poly.h (build_poly_scop): Same.
+
+2010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (build_poly_scop): Limit scops following
+       the number of parameters in the scop.  Use as an upper bound
+       PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
+       * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
+       * doc/invoke.texi: Document it.
+
+2010-03-13  Jerry Quinn  <jlquinn@optonline.net>
+
+       * Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
+       * doc/c-tree.texi: Remove.
+       * doc/generic.texi: Merge c-tree.texi here.
+       * doc/gccint.texi (Trees): Remove menu entry.
+       (c-tree.texi): Remove @include.
+       * doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
+       * doc/languages.texi (Reading RTL): Ditto.
+
+2010-03-12  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/42869
+       * config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
+
+2010-03-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       PR middle-end/42431
+       * gcc/config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
+       code added to work around reload clobbering CONST insns.
+
+2010-03-12  Jakub Jelinek  <jakub@redhat.com>
+
+       * cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
+       (cselib_preserve_definitely, cselib_clear_preserve): Remove.
+       (cselib_preserve_only_values): Remove retain argument, don't
+       traverse hash table with cselib_{preserve_definitely,clear_preserve}.
+       * cselib.h (cselib_preserve_only_values): Remove retain argument.
+       * var-tracking.c (micro_operation): Move insn field before union.
+       Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
+       (struct variable_tracking_info_def): Remove n_mos field, change
+       mos into a vector of micro_operations.
+       (count_uses, count_uses_1, count_stores, count_with_sets): Remove.
+       (bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
+       compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
+       changing into a vector.
+       (add_with_sets): Likewise.  Ensure MO_VAL_USE uops from add_stores
+       come before all other uops generated by add_stores.
+       (vt_add_function_parameters): Adjust for cselib_preserve_only_values
+       argument removal.
+       (vt_initialize): Likewise.  Adjust for VTI (bb)->mos changing into
+       a vector.  Run just one pass over the bbs instead of separate counting
+       and computation phase.
+       (vt_finalize): Free VTI (bb)->mos vector instead of array.
+
+       PR debug/43329
+       * tree-inline.c (remap_decls): Put old_var rather than origin_var
+       into *nonlocalized_list vector.
+       * dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
+       even if origin is non-NULL.
+       (gen_variable_die): Likewise.
+       (process_scope_var): Don't change origin.
+       (gen_decl_die): Likewise.
+       * tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
+       before adding new edges instead of after it, fix moving over
+       debug stmts.
+
+2010-03-11  David S. Miller  <davem@davemloft.net>
+
+       * configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
+       of four.
+       * configure: Rebuild.
+
+2010-03-11  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/43257
+       * tree.c (assign_assembler_name_if_neeeded): New function.
+       (free_lang_data_in_cgraph): Assembler name assignment moved to the
+       above new function.
+       * tree.h (assign_assembler_name_if_neeeded): Declare.
+       * cgraphunit.c (cgraph_analyze_function): Create an assembler name for
+       the function if needed.
+
+2010-03-11  Chris Demetriou  <cgd@google.com>
+
+       * Makefile.in (stmp-int-hdrs): Make include/unwind.h,
+       include/stdint-gcc.h, and include/stdint.h world-readable.
+
+2010-03-11  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/43255
+       * tree-vrp.c (process_assert_insertions_for): Do not insert
+       asserts for trivial conditions.
+
+2010-03-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       PR tree-optimization/43280
+       * tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
+       generation.  Move calculation of size out of the if branch.
+       (find_bswap): Modify compare number generation.
+
+2010-03-11  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/43200
+       * lto-streamer-in.c (maybe_fixup_decls): Simplify.
+       (input_gimple_stmt): Fixup handled component types during
+       operand read.  Also fix up decls in ADDR_EXPRs.
+
+2010-03-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
+       * config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
+
+2010-03-10  Jan Hubicka  <jh@suse.cz>
+
+       PR c/43288
+       * ipa.c (function_and_variable_visibility) Normalize COMMON bits.
+       * varasm.c (get_variable_section): Don't do that here...
+       (make_decl_rtl): ... and here.
+       (do_assemble_alias): Produce decl RTL.
+       (assemble_alias): Likewise.
+
+2010-03-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/43290
+       * reg-notes.def (REG_CFA_SET_VDRAP): New note.
+       * dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
+       of fde->vdrap_reg.
+       (dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
+       (based_loc_descr): Only express drap or vdrap regno based expressions
+       using DW_OP_fbreg when not optimizing.
+       * config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
+       make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
+       REG_CFA_SET_VDRAP note.
+
+2010-03-10  Alexander Monakov  <amonakov@ispras.ru>
+
+       PR tree-optimization/43236
+       * tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
+       error in calculation of base address in reverse iteration case.
+       (generate_builtin): Take number of latch executions if the statement
+       is in the latch.
+
+2010-03-10  Andrey Belevantsev  <abel@ispras.ru>
+
+       PR middle-end/42859
+       * tree-eh.c: Include pointer-set.h.
+       (lower_eh_dispatch): Filter out duplicate case labels and
+       remove the unneeded edge when the label is unused.  Return
+       true when some edges are removed.
+       (execute_lower_eh_dispatch): When any lowering resulted in
+       removing an edge, also delete unreachable blocks.
+
+2010-03-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/43287
+       * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
+       UNSPEC_MACHOPIC_OFFSET.
+
+2010-03-09  Andreas Schwab  <schwab@linux-m68k.org>
+
+       PR target/43294
+       * config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
+       (m68k_delegitimize_address): New function.
+
+2010-03-09  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/43299
+       * dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
+
+       PR debug/43299
+       * var-tracking.c (adjust_sets): New function.
+       (count_with_sets, add_with_sets): Use it.
+       (get_adjusted_src): New inline function.
+       (add_stores): Use it.
+
+       PR debug/43304
+       * var-tracking.c (vt_expand_loc_callback) <case SUBREG>: If dummy,
+       call cselib_dummy_expand_value_rtx_cb instead of
+       cselib_expand_value_rtx_cb.
+
+       PR debug/43293
+       * config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
+       * config/i386/i386.c: Include debug.h and dwarf2out.h.
+       (ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
+       and .cfi_endproc around the pic thunks.
+       (output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
+       all queued unwind info register saves are saved before the call.
+       For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
+       considered as sp-=4 for unwind info and the pop as sp+=4 which
+       also clobbers dest, but doesn't actually restore it.
+
+       PR debug/43290
+       * config/i386/i386.c (ix86_get_drap_rtx): Don't set
+       RTX_FRAME_RELATED_P.
+
+2010-03-09  Jie Zhang  <jie@codesourcery.com>
+
+       * config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
+       whitespaces in output template.
+
+2010-03-09  Jie Zhang  <jie@codesourcery.com>
+
+       * ira-lives.c (check_and_make_def_use_conflict): Don't fall
+       out array boundary.
+
+2010-03-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
+       builtins.exp in a separate job.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (add_param_constraints): Use
+       lower_bound_in_type and upper_bound_in_type.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (add_param_constraints): Use sizetype
+       instead of unsigned_type_node.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+           Reza Yazdani  <reza.yazdani@amd.com>
+
+       PR middle-end/43065
+       * graphite-sese-to-poly.c (add_param_constraints): Insert bounds
+       on pointer type parameters.
+
+2010-03-08  Tobias Grosser  <grosser@fim.uni-passau.de>
+
+       PR middle-end/42644
+       PR middle-end/42130
+       * graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
+       handle conversions from pointer to integers.
+       (gcc_type_for_cloog_iv): Choose the smalles signed integer as an
+       induction variable, to be able to work with code generated by CLooG.
+       * graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
+       (build_poly_scop): Bail out if we cannot codegen a loop.
+
+2010-03-08  Tobias Grosser  <grosser@fim.uni-passau.de>
+
+       * graphite-clast-to-gimple.c (translate_clast): Do not short-cut
+       code generation with gloog_error.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
+       Call fold_convert on all the returned values.
+       (expand_scalar_variables_expr): Pass to
+       expand_scalar_variables_ssa_name the type of the resulting expression.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
+       ppl_min_for_le_pointset.
+       Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
+       * graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-dependences.c (map_into_dep_poly): Removed.
+       (dependence_polyhedron_1): Use combine_context_id_scat.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.h (struct poly_scattering): Add layout documentation.
+       (struct poly_bb): Same.
+       (combine_context_id_scat): New.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/42326
+       * sese.c (name_defined_in_loop_p): Return false for default
+       definitions.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
+       and clean up the logic.
+
+2010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
+       early return.
+
+2010-03-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * var-tracking.c (remove_cselib_value_chains): Define only for
+       ENABLE_CHECKING.
+       (dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
+       delete_slot_part, emit_notes_for_differences_1): Don't call
+       remove_cselib_value_chains here.
+       (set_slot_part, emit_notes_for_differences_2): Don't call
+       add_cselib_value_chains here.
+       (preserved_values): New vector.
+       (preserve_value): New function.
+       (add_uses, add_stores, vt_add_function_parameters): Use it
+       instead of cselib_preserve_value.
+       (changed_values_stack): New vector.
+       (check_changed_vars_0): New function.
+       (check_changed_vars_1, check_changed_vars_2): Use it.
+       (emit_notes_for_changes): Call set_dv_changed (*, false) on all
+       changed_values_stack VALUEs.
+       (vt_emit_notes): For all preserved_values call
+       add_cselib_value_chains.  If ENABLE_CHECKING call
+       remove_cselib_value_chains before verifying value_chains is empty.
+       Initialize and free changed_values_stack.
+       (vt_initialize): Initialize preserved_values.
+       (vt_finalize): Free preserved_values.
+
+2010-03-08  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/43269
+       * tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
+       region detection.
+
+2010-03-08  Martin Jambor  <mjambor@suse.cz>
+
+       * ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
+       (ipa_is_param_called): Removed.
+       * ipa-prop.c (ipa_note_param_call): Do not set the called flag.
+       (ipa_print_node_params): Do not print the called flag.
+       (ipa_write_node_info): Do not stream the called flag.
+       (ipa_read_node_info): Likewise.
+
+2010-03-07  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/43176
+       * Makefile.in (var-tracking.o): Depend on pointer-set.h.
+       * cselib.c (struct expand_value_data): Add dummy field.
+       (cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
+       dummy to false.
+       (cselib_dummy_expand_value_rtx_cb): New function.
+       (cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
+       any rtl.
+       * cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
+       * var-tracking.c: Include pointer-set.h.
+       (variable): Change n_var_parts to char from int.  Add
+       cur_loc_changed and in_changed_variables fields.
+       (variable_canonicalize): Remove.
+       (shared_var_p): New inline function.
+       (unshare_variable): Maintain cur_loc_changed and
+       in_changed_variables fields.  If var was in changed_variables,
+       replace it there with new_var.  Just copy cur_loc instead of
+       resetting it to something else.
+       (variable_union): Don't recompute cur_loc.  Use shared_var_p.
+       (dataflow_set_union): Don't call variable_canonicalize.
+       (loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
+       of their DEBUG_EXPR_TREE_DECLs.
+       (canonicalize_loc_order_check): Verify that cur_loc is NULL
+       and in_changed_variables and cur_loc_changed is false.
+       (variable_merge_over_cur): Clear cur_loc, in_changed_variables
+       and cur_loc_changed.  Don't update cur_loc here.
+       (variable_merge_over_src): Don't call variable_canonicalize.
+       (dataflow_set_preserve_mem_locs): Use shared_var_p.  When
+       removing loc that is equal to cur_loc, clear cur_loc,
+       set cur_loc_changed and ensure variable_was_changed is called.
+       (dataflow_set_remove_mem_locs): Use shared_var_p.  Only
+       compare pointers in cur_loc check, if it is equal to loc,
+       clear cur_loc and set cur_loc_changed.  Don't recompute cur_loc here.
+       (variable_different_p): Remove compare_current_location argument,
+       don't compare cur_loc.
+       (dataflow_set_different_1): Adjust variable_different_p caller.
+       (variable_was_changed): If dv had some var in changed_variables
+       already, reset in_changed_variables flag for it and propagate
+       cur_loc_changed over to the new variable.  On empty var
+       always set cur_loc_changed.  Set in_changed_variables on whatever
+       var is added to changed_variables.
+       (set_slot_part): Clear cur_loc_changed and in_changed_variables.
+       Use shared_var_p.  When removing loc that is equal to cur_loc,
+       clear cur_loc and set cur_loc_changed.  If cur_loc is NULL at the
+       end, don't set it to something else, just call variable_was_changed.
+       (delete_slot_part): Use shared_var_p.  When cur_loc equals to
+       loc being removed, clear cur_loc and set cur_loc_changed.
+       Set cur_loc_changed if all locations have been removed.
+       (struct expand_loc_callback_data): New type.
+       (vt_expand_loc_callback): Add dummy mode in which no rtxes are
+       allocated.  Always create SUBREGs if simplify_subreg failed.
+       Prefer to use cur_loc, when that fails and still in
+       changed_variables (and seen first time) recompute it.  Set
+       cur_loc_changed of variables which had to change cur_loc and
+       compute elcd->cur_loc_changed if any of the subexpressions used
+       had to change cur_loc.
+       (vt_expand_loc): Adjust to pass arguments in
+       expand_loc_callback_data structure.
+       (vt_expand_loc_dummy): New function.
+       (emitted_notes): New variable.
+       (emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
+       that weren't used for any other decl in current
+       emit_notes_for_changes call call vt_expand_loc_dummy to update
+       cur_loc.  For -fno-var-tracking-assignments, set cur_loc to
+       first loc_chain location if NULL before.  Always use just
+       cur_loc instead of first loc_chain location.  When cur_loc_changed
+       is false, when not --enable-checking=rtl just don't emit any note.
+       When rtl checking, compute the note and assert it is the same
+       as previous note.  Clear cur_loc_changed and in_changed_variables
+       at the end before removing from changed_variables.
+       (check_changed_vars_3): New function.
+       (emit_notes_for_changes): Traverse changed_vars to call
+       check_changed_vars_3 on each changed var.
+       (emit_notes_for_differences_1): Clear cur_loc_changed and
+       in_changed_variables.  Recompute cur_loc of new_var.
+       (emit_notes_for_differences_2): Clear cur_loc if new variable appears.
+       (vt_emit_notes): Initialize and destroy emitted_notes.
+
+2010-03-07  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       PR rtl-optimization/42220
+       * regrename.c (scan_rtx) <case STRICT_LOW_PART, ZERO_EXTRACT>:
+       Use verify_reg_tracked to determine if we should use OP_OUT rather
+       than OP_INOUT.
+       (build_def_use): If we see an in-out operand for a register that we
+       know nothing about, treat is an output if possible, fail the block if
+       not.
+
+2010-03-06  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42897
+       * gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
+       permanently.
+
+2010-03-06  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42897
+       * tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
+       uses of relevant DEFs that are dead outside the loop too.
+
+2010-03-06  Alexandre Oliva <aoliva@redhat.com>
+
+       * var-tracking.c (dataflow_set_merge): Swap src and src2.
+       Reverted:
+       2010-01-13  Jakub Jelinek  <jakub@redhat.com>
+       PR debug/41371
+       * var-tracking.c (values_to_unmark): New variable.
+       (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
+       values_to_unmark vector.  Moved body to...
+       (find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
+       instead queue it into values_to_unmark vector.
+       (vt_find_locations): Free values_to_unmark vector.
+
+2010-03-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
+       (site.exp): Export them when plugins are enabled.
+
+2010-03-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/42326
+       * tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
+       that contain scevs.
+       (chrec_fold_multiply): Same.
+
+2010-03-04  Andrew Pinski  <andrew_pinski@caviumnetworks.com>
+
+       PR c/43248
+       * c-decl.c (build_compound_literal): Return early if init is
+       an error_mark_node.
+
+2010-03-04  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/43164
+       PR tree-optimization/43191
+       * tree-sra.c (type_consists_of_records_p): Reject records with
+       zero-size bit-fields at the end.
+
+2010-03-04  Mike Stump  <mikestump@comcast.net>
+
+       * Makefile.in (TAGS): Remove *.y.
+
+2010-03-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/40761
+       * tree-ssa-pre.c (compute_antic): Walk reverse postorder
+       in reverse order.
+       (my_rev_post_order_compute): New function.
+       (init_pre): Call it.
+
+2010-03-04  Changpeng Fang  <changpeng.fang@amd.com>
+
+       PR middle-end/43209
+       * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
+       decrease the cost of an IV candidate when the cost is infinite.
+
+2010-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/extend.texi (Vector Extensions, X86 Built-in Functions):
+       Use '3DNow!' for the extension of that name, ensure normal space
+       after the string.
+       * doc/invoke.texi (i386 and x86-64 Options): Likewise.
+
+2010-03-03  Jeff Law  <law@redhat.com>
+
+       * PR middle-end/32693
+       * expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
+       than gen_rtx_SUBREG.
+       (extract_bit_field_1): Likewise.
+
+2010-03-03  Janis Johnson  <janis187@us.ibm.com>
+
+       * doc/sourcebuild.texi (Test directives): Document that arguments
+       include-opts and exclude-opts are now optional for dg-skip-if,
+       dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
+
+2010-03-03  Jason Merrill  <jason@redhat.com>
+
+       PR c++/12909
+       * cgraph.h (varpool_node): Add extra_name field.
+       * varpool.c (varpool_extra_name_alias): New.
+       (varpool_assemble_decl): Emit extra name aliases.
+       (varpool_mark_needed_node): Look past an extra name alias.
+       * lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
+       * lto-streamer-in.c (lto_input_tree): Read it.
+       * lto-streamer-out.c (output_unreferenced_globals): Write it.
+
+2010-03-03  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
+       (sparc*-*-solaris2*): ...this.
+
+2010-03-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/43229
+       * cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
+       WIDEN_MULT_EXPR and WIDEN_SUM_EXPR.  Return NULL without
+       ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
+       FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
+
+       PR debug/43237
+       * dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
+       fallthrough to default handling, just with want_address 0 instead of 2.
+       For single element lists, add_AT_loc directly, otherwise create an
+       artificial variable DIE and stick location list to it.
+
+       PR debug/43177
+       * var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
+       (VAL_EXPR_HAS_REVERSE): Define.
+       (reverse_op): New function.
+       (add_stores): For reversible operations add an extra MO_VAL_USE.
+
+2010-03-02  Jason Merrill  <jason@redhat.com>
+
+       * c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
+
+2010-03-02  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
+       (sparc64-*-linux*): Likewise.
+       (sparc64-*-solaris2*): Include assembler files before linker ones.
+       (sparc-*-solaris2*): Simplify and reorder to match previous case.
+       * config/sparc/gas.h: Delete.
+       * config/sparc/sol2-64.h: Add copyright notice.
+       * config/sparc/sol2-gas-bi.h: Likewise.
+       * config/sparc/sol2-gld.h: Likewise.
+       * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
+       * config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
+       * config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
+       * config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
+       (sparc_elf_asm_named_section): Rename into...
+       (sparc_solaris_elf_asm_named_section): ...this.  Always define.
+
+2010-03-02  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/alpha/alpha.c (override_options): Fix -mtune error message.
+
+2010-03-02  Jeff Law  <law@redhat.com>
+
+       PR middle-end/42431
+       * reload1.c (rtx_p, substitute_stack): Declare.
+       (substitute): Record addresses of changed rtxs.
+       (gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
+       Restore the original rtx when complete.
+       (reload): Free subsitute_stack when complete.
+
+2010-03-02  Janis Johnson  <janis187@us.ibm.com>
+
+       * doc/gccint.texi (menu): Add Testsuites as a chapter.
+       * doc/sourcebuild.texi (Testsuites): Move up a level to be a
+       new chapter.
+       (Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
+       LTO Testing, gcov Testing, profopt Testing, compat Testing,
+       Torture Tests): Change from subsection to section.
+
+2010-03-02  Jakub Jelinek  <jakub@redhat.com>
+           Steven Bosscher  <steven@gcc.gnu.org>
+
+       * var-tracking.c (vt_initialize): Scan insns in ebb chunks
+       instead of bb.
+
+2010-03-02  Reza Yazdani  <reza.yazdani@amd.com>
+
+       PR middle-end/42640
+       * tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
+       the assignment from the new induction variable to the assignment
+       of the value from the original loop PHI function.
+
+2010-03-01  Janis Johnson  <janis187@us.ibm.com>
+           Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * doc/sourcebuild.texi (Test directives): Clarify options to
+       dg-skip-if.
+
+2010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
+       Disable cfi directives unless GCC and gas agree on using read-only
+       .eh_frame sections for 64-bit.
+       * configure: Regenerate.
+
+2010-03-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/43220
+       * tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
+       BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
+
+2010-03-01  Richard Guenther  <rguenther@suse.de>
+           Martin Jambor  <mjambor@suse.cz>
+
+       PR middle-end/41250
+       * gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
+       gimplified parameters.
+
+2010-03-01  Christian Bruel  <christian.bruel@st.com>
+
+       * except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
+
+2010-03-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
+
+2010-03-01  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/43213
+       * expr.c (expand_assignment): Use the alias-oracle to tell
+       if the rhs aliases the result decl.
+
+2010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR pch/14940
+       * config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
+       to sol_gt_pch_get_address.
+       (TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
+       64-bit, SPARC and x86.
+       (sol_gt_pch_get_address): New function.
+
+2010-03-01  Marco Poletti  <poletti.marco@gmail.com>
+
+       * toplev.h (inform_n, error_n): Declare.
+       * diagnostic.c (inform_n, error_n): New function.
+
+2010-03-01  Jakub Jelinek  <jakub@redhat.com>
+
+       * cfgexpand.c (expand_used_vars): If an artificial non-ignored var
+       has no rtl yet when processing local_decls, queue it and recheck
+       if deferred stack allocation hasn't assigned it rtl.
+
+2010-02-28  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (unspec_bbr_uid): New.
+       (gen_block_redirect): Use it instead of INSN_UID.
+       (gen_far_branch): Likewise.
+
+2010-02-28  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
+       it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
+
 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * doc/invoke.texi (Warning Options, RX Options): Fix typos.
        * doc/standards.texi: Likewise.
        * doc/extend.texi: Likewise.
        * doc/trouble.texi: Likewise.
-       * doc/cppopts.texi: Likewise. 
+       * doc/cppopts.texi: Likewise.
        * doc/install.texi: Likewise.
        * c.opt (std=c90,std=gnu90): New options.
        * c-opts.c (c_common_handle_option): Handle them.
 
        PR target/43175
        * config/i386/i386.c (expand_vec_perm_blend): Use correct
-       operands in V8HImode subregs.  Fix operand order in VEC_MERGE
-       rtx.
+       operands in V8HImode subregs.  Fix operand order in VEC_MERGE rtx.
 
 2010-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
        * optc-gen.awk: Handle -ftemplate-depth=.
        * opth-gen.awk: Likewise.
        * c-opts.c (c_common_handle_option): Likewise.
-       * doc/invoke.texi (-ftemplate-depth-): Replace with
-       -ftemplate-depth=.
+       * doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
 
 2010-02-24  Jason Merrill  <jason@redhat.com>
 
        (movdi_pic_gotdata_op): Likewise.
        * config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
        emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
-       
+
 2010-02-20  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/43067
 2010-02-03  Alexandre Oliva  <aoliva@redhat.com>
 
        PR debug/42896
-       * cselib.h (struct cselib_val_struct): Add uid.  Rename value to
-       hash.
+       * cselib.h (struct cselib_val_struct): Add uid.  Rename value to hash.
        (cselib_reset_table): Renamed from...
        (cselib_reset_table_with_next_value): ... this.
        (cselib_get_next_uid): Renamed from...