OSDN Git Service

2007-11-14 Sebastian Pop <sebastian.pop@amd.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 2808ae7..cf9b33e 100644 (file)
@@ -1,3 +1,773 @@
+2007-11-14  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Remove
+       unused edges after loop duplication.
+
+2007-11-14  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.h (TARGET_CPU_DEFAULT_*): Substitute with ...
+       (enum target_cpu_default): ... this enum.
+       (TARGET_CPU_DEFAULT_NAMES): Remove macro.  Move initializer to ...
+       * config/i386/i386.c (override_options): ... here.
+       * config/i386/i386-interix.h (TARGET_CPU_DEFAULT): Use
+       TARGET_CPU_DEFAULT_i486.
+
+2007-11-14  Rask Ingemann Lambertsen  <rask@sygehus.dk>
+
+       * global.c (rest_of_handle_global_alloc): Fix comment typos.
+       * config/sh/sh.c (sh_rtx_costs): Likewise.
+       * ChangeLog: Likewise.
+
+2007-11-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * tree-chrec.h (build_polynomial_chrec): RHS of a chrec
+       should not be of pointer type.
+
+2007-11-13  Michael Meissner  <michael.meissner@amd.com>
+
+       * config/i386/i386.c (ix86_sse5_valid_op_p): Put type on separate
+       line.
+
+2007-11-13  Sterling Augustine  <sterling@tensilica.com>
+           Bob Wilson  <bob.wilson@acm.org>
+       
+       * config/xtensa/unwind-dw2-xtensa.c: New.
+       * config/xtensa/unwind-dw2-xtensa.h: New.
+       * config/xtensa/xtensa.h (MUST_USE_SJLJ_EXCEPTIONS): Remove.
+       (DWARF2_UNWIND_INFO): Remove.
+       (DWARF_FRAME_REGISTERS): Define.
+       (EH_RETURN_DATA_REGNO): Define.
+       * config/xtensa/xtensa.md (UNSPECV_EH_RETURN): Define.
+       (eh_return): New.
+       * config/xtensa/t-xtensa (LIB2ADDEH): Define.
+       
+2007-11-13  Jakub Jelinek  <jakub@redhat.com>
+
+       * doc/invoke.texi: Fix description of -fsched-stalled-insns=0,
+       -fsched-stalled-insns.
+
+       PR tree-optimization/34063
+       * tree-chrec.c (chrec_evaluate): Put CHREC_LEFT based argument
+       as first chrec_fold_plus operand rather than second.
+
+2007-11-13  Diego Novillo  <dnovillo@google.com>
+
+       PR tree-optimization/33870
+       * tree.h (strcut tree_memory_tag): add field unpartitionable.
+       remove field in_nested_struct.
+       (struct tree_struct_field_tag): add field nesting_level.
+       (sft_in_nested_struct): remove.
+       (sft_nesting_level): define.
+       (sft_unpartitionable_p): define.
+       * tree-ssa-alias.c (mem_sym_score): if mp->var is not
+       partitionable, return long_max.
+       (compute_memory_partitions): do not partition sfts marked
+       unpartitionable.
+       (create_sft): add argument nesting_level.  set
+       sft_nesting_level with it.  update all users.
+       (create_overlap_variables_for): show nesting level.
+       * tree-dfa.c (dump_subvars_for): likewise.
+       (dump_variable): likewise.
+       show whether the sft is partitionable or not.
+       * tree-flow.h (struct fieldoff): remove field
+       in_nested_struct.
+       add field nesting_level.
+       * tree-ssa-structalias.c (struct variable_info): remove
+       field in_nested_struct.
+       (push_fields_onto_fieldstack): add argument
+       nesting_level.  update all users.
+       update documentation.
+       update pair->nesting_level with nesting_level.
+       make recursive calls with nesting_level + 1.
+       (set_uids_in_ptset): if an sft is added to the points-to
+       set, mark it as unpartitionable.
+       * tree-ssa-operands.c (ref_nesting_level): new.
+       (add_vars_for_offset): call it.
+       add argument full_ref.  update
+       callers.
+       if var is inside a nested structure and the nesting level
+       of full_ref is lower than the nesting level of var,
+       adjust offset by the offset of var.
+
+2007-11-13  Victor Kaplansky  <victork@il.ibm.com>
+
+       PR tree-optimization/32582
+       * Makefile.in (CRTSTUFF_CFLAGS): Add -fno-tree-vectorize
+
+2007-11-12  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       * doc/extend.texi (dllimport): Document that pointers to dllimport'd
+       functions can be used as constant.
+
+2007-11-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/34035
+       * cse.c (cse_cfg_altered): New global variable.
+       (cse_jumps_altered): Make boolean.
+       (recorded_label_ref): Likewise.
+       (cse_insn): Adjust for above changes.
+       (cse_extended_basic_block): Likewise.  Set cse_cfg_altered
+       if dead edges have been purged.
+       (cse_main): Change return value specification and adjust code.
+       (rest_of_handle_cse): Adjust for above change.
+       (rest_of_handle_cse2): Likewise.
+       * gcse.c (rest_of_handle_gcse): Likewise.
+
+2007-11-12  Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>
+           Michael Meissner  <michael.meissner@amd.com>
+
+       * config/i386/i386.md (sse5_setcc<mode>): Use <ssemodefsuffix> to
+       get the appropriate suffix for the coms* instruction.
+       (sse5_pcmov_<mode>): Restrict operands of pcmov
+       for scalar case to be only xmm registers and not memory.
+
+       * config/i386/sse.md (sse5_pcmov_<mode>): Correct the operand
+       constraints to follow the mnemonics for the pcmov instruction   
+
+2007-11-12  Richard Sandiford  <rsandifo@nildram.co.uk>
+
+       PR target/34042
+       * config/mips/mips.c (mips_return_fpr_single): New function.
+       (mips_function_value): Use it when returning single-field
+       aggregates in FPRs.
+       (mips_expand_call): Handle the PARALLELs created by
+       mips_return_fpr_single.
+
+2007-11-12  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/34070
+       * fold-const.c (fold_binary): If testing for non-negative
+       operands with tree_expr_nonnegative_warnv_p make sure to
+       use op0 which has all (sign) conversions retained.
+
+2007-11-12  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/34027
+       * fold-const.c (fold_binary): Fold n - (n / m) * m to n % m.
+       (fold_binary): Fold unsinged FLOOR_DIV_EXPR to TRUNC_DIV_EXPR.
+
+2007-11-12  Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/33953
+       * tree-vect-transform.c (vectorizable_operation): In case of SLP,
+       allocate vec_oprnds1 according to the number of created vector
+       statements. In case of shift with scalar argument, store scalar operand
+       for every vector statement to be created for the SLP node. Fix a
+       comment.
+
+2007-11-10  Steven Bosscher  <stevenb.gcc@gmail.com>
+
+       * gcse.c (CUID_INSN): Remove.
+       (cuid_insn): Ditto.
+       (alloc_gcse_mem): Don't allocate cuid_insn.
+       (free_gcse_mem): Don't free cuid_insn.
+
+2007-11-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/34020
+       * gimplify.c (goa_lhs_expr_p): Inside INDIRECT_REF handle unshared
+       nops.
+
+       PR middle-end/34018
+       * tree-inline.h (copy_body_data): Add regimplify field.
+       * tree-inline.c (copy_body_r): Set id->regimplify to true
+       if an TREE_INVARIANT ADDR_EXPR is no longer invariant after
+       substitutions.
+       (copy_bb): Clear id->regimplify before walk_tree, if it is
+       set afterwards, regimplify the whole statement.
+
+       PR tree-optimization/33680
+       * tree-data-ref.c (split_constant_offset) <case ADDR_EXPR>: Punt
+       if the added cast involves variable length types.
+
+2007-11-09  Alexander Monakov  <amonakov@ispras.ru>
+           Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       * sched-deps.c (sched_analyze_insn): Use MOVE_BARRIER
+       instead of TRUE_BARRIER for jumps.  Add register dependencies
+       even when reg_pending_barrier is set.
+
+2007-11-09  Alexander Monakov  <amonakov@ispras.ru>
+
+       * haifa-sched.c (haifa_classify_insn): Rename to ...
+       (haifa_classify_rtx): ...  this.  Improve handling of COND_EXECs,
+       handle PARALLELs by recursing.  Use it ...  
+       (haifa_classify_insn): ...  here.  Reimplement.
+
+2007-11-09  Richard Guenther  <rguenther@suse.de>
+
+       * bitmap.h (bitmap_single_bit_set_p): Declare.
+       * bitmap.c (bitmap_single_bit_set_p): New function.
+       * tree-ssa-alias.c (add_may_alias_for_new_tag): Use it.
+       (maybe_create_global_var): Use bitmap_empty_p.
+
+2007-11-09  Paolo Bonzini  <bonzini@gnu.org>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/34012
+       * fwprop.c (try_fwprop_subst): Do not replace if the new
+       SET_SRC has a higher cost than the old one.
+
+2007-11-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/33732
+       * reload.c (push_reload): Check that the REG_DEAD note was referring
+       to a hardreg or to a pseudo that has been assigned exactly one hardreg
+       before considering it in order to select the reload register.
+       (combine_reloads): Likewise.
+       (find_dummy_reload): Likewise.
+
+2007-11-09  Richard Guenther  <rguenther@suse.de>
+
+       * tree-flow.h (struct ptr_info_def): Make escape_mask a
+       ENUM_BITFIELD.
+       (struct ptr_info_def): Likewise.
+       (enum escape_type): Also use bit zero.
+
+2007-11-09  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/33604
+       * tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
+       Disregard changes in CV qualifiers of pointed to types for
+       forward propagating ADDR_EXPRs.
+       * tree-ssa-ccp.c (fold_stmt_r): Preserve volatileness of the original
+       expression.
+
+2007-11-09  Richard Sandiford  <rsandifo@nildram.co.uk>
+
+       * dse.c (find_shift_sequence): Always choose an integer mode for
+       new_mode.
+       (replace_read): Require both the read and store mode to be
+       integer ones.  Remove a then-redundant FLOAT_P check.
+
+2007-11-08  Richard Guenther  <rguenther@suse.de>
+
+       * tree-dfa.c (remove_referenced_var): If removing a
+       variable which has subvars, also remove those from
+       the referenced vars.  Do not create a variable annotation.
+
+2007-11-08  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.c (xtensa_expand_prologue): Remove first
+       argument for gen_entry calls.
+       * config/xtensa/xtensa.md: Add new "entry" value to "type" attribute.
+       (entry): Use the new attribute value.  Remove unused first operand.
+
+2007-11-08  Tom Tromey  <tromey@redhat.com>
+
+       * c-parser.c (c_parser_translation_unit): Use location in error.
+       (c_parser_external_declaration): Likewise.
+       (c_parser_declaration_or_fndef): Likewise.
+       (c_parser_enum_specifier): Likewise.
+       (c_parser_struct_or_union_specifier): Likewise.
+       (c_parser_struct_declaration): Likewise.
+       (c_parser_typeof_specifier): Likewise.
+       (c_parser_parms_list_declarator): Likewise.
+       (c_parser_asm_string_literal): Likewise.
+       (c_parser_braced_init): Likewise.
+       (c_parser_initelt): Likewise.
+       (c_parser_compound_statement_nostart): Likewise.
+       (c_parser_statement_after_labels): Likewise.
+       (c_parser_do_statement): Likewise.
+       (c_parser_asm_statement): Likewise.
+       (c_parser_conditional_expression): Likewise.
+       (c_parser_unary_expression): Likewise.
+       (c_parser_sizeof_expression): Likewise.
+       (c_parser_postfix_expression): Likewise.
+       (c_parser_postfix_expression_after_paren_type): Likewise.
+       (c_parser_objc_class_instance_variables): Likewise.
+       (c_parser_objc_method_definition): Likewise.
+       (c_parser_objc_methodprotolist): Likewise.
+       (c_parser_pragma): Likewise.
+       (c_parser_omp_clause_num_threads): Likewise.
+       (c_parser_omp_clause_schedule): Likewise.
+       (c_parser_omp_all_clauses): Likewise.
+       (c_parser_omp_sections_scope): Likewise.
+       (c_parser_label): Use location of label, not colon.
+
+2007-11-08  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/33774
+       * config/i386/cygming.h (BIGGEST_FIELD_ALIGNMENT): Define only if
+       IN_TARGET_LIBS.
+
+2007-11-07  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       PR middle-end/33826
+       * ipa-pure-const.c (static_execute): Added code to keep recursive
+       functions from being marked as pure or const.
+       * ipa-utils.c (searchc): Fixed comment.
+               
+2007-11-08  Tom Tromey  <tromey@redhat.com>
+
+       * common.opt (fshow-column): Default to 0.
+       * configure: Rebuilt.
+       * configure.ac (--enable-mapped-location): Default to 'yes'.
+
+2007-11-07  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * common.opt: Add pointer to doc/options.texi.
+       * doc/invoke.texi (-fdse, -fdce, -fauto-inc-dec, -fipa-pure-const,
+       -fipa-reference): Add or correct doc.  Sorted options list for -Os
+       -O, -O2.
+
+2007-11-07  Bernhard Fischer  <aldot@gcc.gnu.org>
+
+       PR target/16350
+       * config.gcc: For arm*b-* define TARGET_BIG_ENDIAN_DEFAULT.
+       * config/arm/linux-elf.h (TARGET_ENDIAN_DEFAULT): Define based on
+       TARGET_BIG_ENDIAN_DEFAULT.  Use for MULTILIB_DEFAULTS.
+       (TARGET_DEFAULT): Set according to TARGET_ENDIAN_DEFAULT.
+       (LINUX_TARGET_LINK_SPEC): Pass -mlittle-endian on to the assembler.
+       * config/arm/linux-eabi.h (TARGET_LINKER_EMULATION): Set according
+       to TARGET_BIG_ENDIAN_DEFAULT.
+       (SUBTARGET_EXTRA_LINK_SPEC): Likewise.
+       * config/arm/bpabi.h (TARGET_DEFAULT_MASK): Set according
+       to TARGET_BIG_ENDIAN_DEFAULT.
+
+2007-11-07  Diego Novillo  <dnovillo@google.com>
+
+       * tree.h (struct tree_struct_field_tag): Move field
+       in_nested_struct ...
+       (struct tree_memory_tag): ... here.
+
+2007-11-07  Diego Novillo  <dnovillo@google.com>
+
+       PR 33870
+       * tree.h (struct tree_struct_field_tag): Add field in_nested_struct.
+       (SFT_IN_NESTED_STRUCT): Define.
+       * tree-dfa.c (dump_subvars_for): Show offset of each
+       sub-var.
+       * tree-flow.h (struct fieldoff): Add field in_nested_struct.
+       * tree-ssa-structalias.c (struct variable_info): Likewise.
+       (push_fields_onto_fieldstack): If OFFSET is positive,
+       set in_nested_struct.
+       (create_variable_info_for): Copy setting of
+       in_nested_struct from the field offset object.
+       (set_uids_in_ptset): Set SFT_IN_NESTED_STRUCT from the
+       variable info object.
+       * tree-ssa-operands.c (add_vars_for_offset): If VAR
+       belongs to a nested structure, adjust OFFSET by
+       SFT_OFFSET(VAR).
+
+2007-11-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/33737
+       * cfgcleanup.c (try_crossjump_to_edge): Add count and frequency of
+       target block after computing the probabilities of outgoing edges.
+       Cap the frequency to BB_FREQ_MAX.
+       * tree-ssa-threadupdate.c (redirect_edges): Also adjust count and
+       frequency of the basic block if it has been reused.
+
+2007-11-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/33822
+       * rtl.h (REG_OFFSET): Fix comment.
+       * var-tracking.c (INT_MEM_OFFSET): New macro.
+       (var_mem_set): Use it.
+       (var_mem_delete_and_set): Likewise.
+       (var_mem_delete): Likewise.
+       (same_variable_part_p): Likewise.
+       (vt_get_decl_and_offset): Likewise.
+       (offset_valid_for_tracked_p): New predicate.
+       (count_uses): Do not track locations with invalid offsets.
+       (add_uses): Likewise.
+       (add_stores): Likewise.
+
+2007-11-07  Tom Tromey  <tromey@redhat.com>
+
+       * Makefile.in (tree-ssa-structalias.o): Depend on $(FUNCTION_H)
+       (BASIC_BLOCK_H): Add vec.h, $(FUNCTION_H).
+
+2007-11-07  Dmitry Zhurikhin  <zhur@ispras.ru>
+           Andrey Belevantsev  <abel@ispras.ru>
+
+       * modulo-sched.c (sms_order_nodes, permute_partial_schedule,
+       generate_prolog_epilog, duplicate_insns_of_cycles): Fix prototypes.
+       (calculate_order_params, sms_order_nodes): New parameter pmax_asap.
+       Save calculated max_asap in it.         
+       (sms_schedule): Calculate maxii using max_asap.
+
+2007-11-07  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * doc/invoke.texi: Replace rs6000 dfp switches -mdfp/-mno-dfp
+       with -mhard-dfp/-mno-hard-dfp.
+
+2007-11-07  Maxim Kuvyrkov  <maxim@codesourcery.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/33670
+       * haifa-sched.c (check_sched_flags): Remove.
+       (sched_init): Don't call it.
+
+2007-11-06  Diego Novillo  <dnovillo@google.com>
+
+       * tree-flow.h (struct fieldoff): Reformat comment.
+       Document fields.
+       * tree-ssa-operands.c: Tidy top-level comments.
+       (add_vop): Likewise.
+       (add_vars_for_offset): Tidy parameter formatting..
+       (get_addr_dereference_operands): Likewise.
+       (get_indirect_ref_operands): Likewise.
+       (get_expr_operands) <OMP_ATOMIC_LOAD>: Reformat.
+       <OMP_ATOMIC_STORE>: Likewise.
+
+2007-11-06  Rask Ingemann Lambertsen  <rask@sygehus.dk>
+
+       PR target/32787
+       * config/i386/driver-i386.c: Test for __GNUC__ instead of
+       GCC_VERSION which is always defined.
+
+2007-11-06  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       PR target/30961
+       * reload1.c (find_reloads): Also check in_reg when handling a
+       simple move with an input reload and a destination of a hard
+       register.
+
+2007-11-06  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       * config/m68k/m68k.c (sched-int.h, insn-codes.h): New includes.
+       (TARGET_SCHED_ADJUST_COST, TARGET_SCHED_VARIABLE_ISSUE,
+       TARGET_SCHED_INIT_GLOBAL, TARGET_SCHED_FINISH_GLOBAL,
+       TARGET_SCHED_INIT, TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE,
+       TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Redefine.
+       (m68k_sched_attr_type2): New function.
+       (sched_adjust_cost_state): New static variable.
+       (m68k_sched_adjust_cost): New static function implementing
+       scheduler hook.
+       (sched_ib_size, sched_ib_filled, sched_ib_insn, sched_mem_unit_code):
+       New static variables.
+       (m68k_sched_variable_issue): New static function implementing
+       scheduler hook.
+       (sched_dump_class_def, sched_dump_class_func_t): New typedefs.
+       (sched_dump_split_class): New static function.
+       (sched_dump_dfa_guess_unit_code, sched_dump_dfa_state): New static
+       variables.
+       (sched_dump_dfa_class, m68k_sched_dump): New static function.
+       (m68k_sched_md_init_global, m68k_sched_md_finish_global,
+       m68k_sched_md_init, m68k_sched_dfa_pre_advance_cycle,
+       m68k_sched_dfa_post_advance_cycle): New static functions implementing
+       scheduler hooks.
+
+       * config/m68k/m68k.h (m68k_sched_attr_type2): Declare.
+       (CPU_UNITS_QUERY): Define.
+
+       * config/m68k/cf.md: New file.
+       * config/m68k/m68.md (cf.md): New include.
+
+2007-11-06  Tom Tromey  <tromey@redhat.com>
+
+       PR c++/32256, PR c++/32368:
+       * function.c (saved_in_system_header): New global.
+       (push_cfun): Save in_system_header.
+       (pop_cfun): Restore in_system_header.
+       (push_struct_function): Save in_system_header.
+
+2007-11-06  Douglas Gregor  <doug.gregor@gmail.com>
+
+       PR c++/33977
+       PR c++/33886
+       * c-common.c (c_build_qualified_type): Moved to c-typeck.c.
+       (complete_array_type): Set canonical type appropriately.
+       * c-typeck.c (c_build_qualified_type): Moved from c-common.c. The
+       C and C++ front ends now have different versions of this function,
+       because the C++ version needs to maintain canonical types here.
+
+2007-11-04  Razya Ladelsky  <razya@il.ibm.com>
+       
+       * tree-parloops.c (reduction_info): Remove reduction_init field.
+       (initialize_reductions): Remove creation of the reduction_init variable.
+       (struct data_arg): Remove.
+       (add_field_for_reduction, create_stores_for_reduction): New functions.
+       (add_field_for_name): Remove reduction handling.
+       (separate_decls_in_loop): Call add_field_for_reduction,
+       create_stores_for_reduction.
+
+2007-11-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/33458
+       * tree-inline.c (copy_phis_for_bb): If PHI arg substitution creates
+       !is_gimple_val PHI argument, gimplify it and insert it on edge.
+
+       PR tree-optimization/33993
+       * tree-vect-transform.c (vect_get_constant_vectors): Use build_vector
+       rather than build_constructor_from_list if all list values are
+       constants.
+       (get_initial_def_for_induction): Use build_vector instead of
+       build_constructor_from_list.
+
+2007-11-05  Mark Mitchell  <mark@codesourcery.com>
+
+       PR target/33579
+       * tree.h (DECL_INIT_PRIORITY): Do not require
+       DECL_HAS_INIT_PRIORITY_P.
+       (DECL_FINI_PRIORITY): Likewise.
+       * tree.c (decl_init_priority_lookup): Remove assert.
+       (decl_fini_priority_insert): Likewise.
+       * cgraphunit.c (static_ctors): Make it a VEC.
+       (static_dtors): Likewise.
+       (record_cdtor_fn): Adjust accordingly.
+       (build_cdtor): Generate multiple functions for each initialization
+       priority.
+       (compare_ctor): New function.
+       (compare_dtor): Likewise.
+       (cgraph_build_cdtor_fns): Sort the functions by priority before
+       calling build_cdtor.
+       (cgraph_build_static_cdtor): Put the priority in the function's
+       name.
+
+2007-11-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR driver/32632
+       * common.opt: Add shared and pie.
+
+2007-11-05  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.c (xtensa_expand_nonlocal_goto): Do not
+       replace references to virtual_stack_vars_rtx in goto_handler.
+
+2007-11-05  Paul Brook  <paul@codesourcery.com>
+
+       * config.gcc (arm*-*-*): Set c_target_objs and cxx_target_objs.
+       * config/arm/arm.c (arm_lang_output_object_attributes_hook): New.
+       (arm_file_start): Don't set Tag_ABI_PCS_wchar_t.  Call
+       arm_lang_output_object_attributes_hook.
+       * config/arm/arm.h (arm_lang_output_object_attributes_hook): Declare.
+       (REGISTER_TARGET_PRAGMAS): Call arm_lang_object_attributes_init.
+       * config/arm/arm-protos.h (arm_lang_object_attributes_init): Add
+       prototype.
+       * config/arm/t-arm.c (arm.o): New rule.
+       * config/arm/arm-c.c: New file.
+
+2007-11-05  Nick Clifton  <nickc@redhat.com>
+           Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/32540
+       PR tree-optimization/33922
+       * doc/invoke.texi: Document PARAM_MAX_PARTIAL_ANTIC_LENGTH.
+       * tree-ssa-pre.c: Include params.h.
+       (compute_partial_antic_aux): Use PARAM_MAX_PARTIAL_ANTIC_LENGTH
+       to limit the maximum length of the PA set for a given block.
+       * Makefile.in: Add a dependency upon params.h for tree-ssa-pre.c
+       * params.def (PARAM_MAX_PARTIAL_ANTIC_LENGTH): New parameter.
+
+2007-11-05  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * libgcc2.c (__fixunstfDI, __fixunsxfDI, __fixunsdfDI,
+       __fixunssfDI): Make return type unsigned.
+       * libgcc2.h (__fixunstfDI, __fixunsxfDI, __fixunsdfDI,
+       __fixunssfDI): Make return type unsigned.
+
+2007-11-05  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/33856
+       * tree-data-ref.c (get_references_in_stmt): Don't add
+       REFERENCE_CLASS_P trees to references vector if get_base_address
+       returns NULL on them.
+
+2007-11-05  Alexandre Oliva  <aoliva@redhat.com>
+
+       * cfg.c (dump_cfg_bb_info): Update bb_bitnames to match enum.
+
+2007-11-04  Andrew Pinski  <pinskia@gmail.com>
+
+       PR middle-end/32931
+       * fold-const.c (fold_binary <case EQ_EXPR>): Convert the inner type
+       for TRUTH_NOT_EXPR to type.
+
+2007-11-04  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/contrib.texi (Contributors): Add Manuel Lopez-Ibanez.
+
+2007-11-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/10220
+       * dwarf2out.c (add_calling_convention_attribute): Change
+       second argument. Set calling convention to DW_CC_program for
+       Fortran main program.
+       (gen_subprogram_die): Adjust to new prototype for
+       add_calling_convention_attribute.
+
+2007-11-03  Dorit Nuzman  <dorit@il.ibm.com>
+
+       PR tree-optimization/33987
+       * tree-vect-transform.c (get_initial_def_for_reduction): Fix assert.
+       Fix indentation.
+       (vectorizable_reduction): Add type check.
+
+2007-11-03  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c/29062
+       * c-parser.c (c_parser_statement_after_labels): Error if a
+       declaration is parsed after a label.
+       
+2007-11-03  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       PR debug/33921
+       * reorg.c (emit_delay_sequence): Do not clear the locator on
+       the jump instruction.
+
+2007-11-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/33670
+       * haifa-sched.c (ok_for_early_queue_removal): Don't walk out of the
+       current sched region.
+
+2007-11-02  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/ia64/ia64.c (struct reg_write_state): Change into
+       unsigned short bitfields rather than unsigned int, decrease
+       first_pred to just 10 bits.
+       (rws_insn): Change into a bitmap or if not ENABLE_CHECKING
+       into two char array.
+       (rws_insn_set, rws_insn_test): New functions.
+       (in_safe_group_barrier): New variable.
+       (rws_update): Remove first argument, always set rws_sum array.
+       (rws_access_regno): Use rws_insn_set macro.  Only call rws_update
+       or update rws_sum if !in_safe_group_barrier, adjust rws_update
+       args.
+       (rtx_needs_barrier): Use rws_insn_test macro.
+       (safe_group_barrier_needed): Don't save/restore rws_sum array,
+       instead set/clear in_safe_group_barrier flag.
+
+2007-11-02  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.c (xtensa_expand_prologue): Put a
+       REG_FRAME_RELATED_EXPR note on the last insn that sets up the stack
+       pointer or frame pointer.
+       * config/xtensa/xtensa.h (DWARF_UNWIND_INFO): Delete.
+       (MUST_USE_SJLJ_EXCEPTIONS): Define.
+       (DWARF2_UNWIND_INFO): Define.
+       (INCOMING_RETURN_ADDR_RTX): Define.
+       (DWARF_FRAME_RETURN_COLUMN): Define.
+
+2007-11-02  Tom Tromey  <tromey@redhat.com>
+
+       * varpool.c (dump_varpool): Use 'next', not 'next_needed' when
+       traversing pool.
+
+2007-11-02  Diego Novillo  <dnovillo@google.com>
+
+       * langhooks.h (struct lang_hooks_for_callgraph): Remove third
+       argument from function pointer ANALYZE_EXPR.  Update all
+       users.
+       * cgraph.c (debug_cgraph_node): New.
+       (debug_cgraph): New.
+
+2007-11-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/33648
+       * cfgrtl.c (cfg_layout_split_edge): Initialize BB_PARTITION of
+       the newly created basic block.
+
+2007-11-01  Richard Guenther  <rguenther@suse.de>
+
+       * ggc-page.c (extra_order_size_tab): Add bitmap_head size.
+
+2007-11-01  Steven Bosscher  <stevenb.gcc@gmail.com>
+
+       PR rtl-optimization/33828
+       * gcse.c (compute_code_hoist_vbeinout): Fix order of computation
+       of VBEIN and VBEOUT.
+
+2007-11-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * optabs.c (prepare_cmp_insn): Merge a couple of conditional blocks.
+       * sched-rgn.c (compute_trg_info): Zero 'el' local variable.
+       * tree-if-conv.c (process_phi_nodes): Zero 'cond' local variable.
+
+2007-11-01  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * gcc.c (getenv_spec_function): Escape the environment variable's
+       value.
+
+2007-11-01  Janis Johnson  <janis187@us.ibm.com>
+
+       * doc/invoke.texi (Optimize Options): Under -fcse-follow-jumps,
+       show that CSE means common subexpression elimination.  Change wording
+       for -fsee and define LCM.  Remove capitalization of optimizations
+       for -ftree-reassoc, -ftree-pre, and -ftree-fre.
+
+2007-11-01  Janis Johnson  <janis187@us.ibm.com>
+
+       PR testsuite/25352
+       * doc/sourcebuild.texi (Test Directives): Document that xfail
+       has no effect for dg-do except when dg-do-what is "run".
+
+2007-11-01  Tom Tromey  <tromey@redhat.com>
+
+       * c-decl.c (grokdeclarator): Set decl source locations.
+       * c-parser.c (c_parser_enum_specifier): Set location.
+       (c_parser_struct_or_union_specifier): Likewise.
+
+2007-11-01  Tom Tromey  <tromey@redhat.com>
+
+       * print-tree.c (print_node): Print column number.
+
+2007-11-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/33537
+       * dwarf2out.c (gen_formal_parameter_die, gen_variable_die,
+       gen_decl_die): Use TREE_TYPE (TREE_TYPE (decl)) as type
+       rather than TREE_TYPE (decl) if DECL_BY_REFERENCE (decl).
+
+       PR rtl-optimization/33673
+       * gcse.c (cprop_jump): If a conditional jump has been optimized
+       into unconditional jump, make the remaining normal edge fallthru
+       and delete the jump insn.
+
+2007-11-01  Ben Elliston  <bje@au.ibm.com>
+
+       * emit-rtl.c (set_reg_attrs_from_mem): Clarify function comment.
+       (set_mem_attrs_from_reg): Likewise.
+
+2007-11-01  Michael Matz  <matz@suse.de>
+
+       PR tree-optimization/33961
+       * tree-ssa-phiopt.c (struct name_to_bb.store): New member.
+       (name_to_bb_hash, name_to_bb_eq): Consider and check it.
+       (add_or_mark_expr): New argument 'store', using it to search
+       the hash table.
+       (nt_init_block): Adjust calls to add_or_mark_expr.
+
+2007-10-31  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/31507
+       * config/i386/i386.md (pushsf_rex64): Use X instead of < constraints
+       for the first push_operand.
+
+2007-10-31  Revital Eres  <eres@il.ibm.com>
+
+       * config/rs6000/paired.md (sminv2sf3, smaxv2sf3, reduc_smax_v2sf,
+       reduc_smin_v2sf vec_interleave_highv2sf, vec_interleave_lowv2sf,
+       vec_extract_evenv2sf, vec_extract_oddv2sf, reduc_splus_v2sf,
+       movmisalignv2sf, vcondv2sf): New.
+       (UNSPEC_INTERHI_V2SF, UNSPEC_INTERLO_V2SF, UNSPEC_EXTEVEN_V2SF,
+       UNSPEC_EXTODD_V2SF): Define new constants.
+       * config/rs6000/rs6000-protos.h (paired_expand_vector_move,
+       paired_emit_vector_cond_expr): New.
+       * config/rs6000/rs6000-c.c (__PAIRED__): Add new builtin_define.
+       * config/rs6000/rs6000.c (paired_expand_vector_move,
+       paired_emit_vector_cond_expr, paired_emit_vector_compare):
+       New functions.
+       * config/rs6000/750cl.h (ASM_CPU_SPEC): Pass down -m750cl option.
+
+2007-10-31  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/32377
+       * tree-data-ref.c (compute_overlap_steps_for_affine_univar): Make it
+       work also for unknown number of iterations.
+       (analyze_subscript_affine_affine): Clean up.  Don't fail when the 
+       number of iterations is not known.
+
+2007-10-31  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/33779
+       * fold-const.c (extract_muldiv_1): Make sure to not introduce
+       new undefined integer overflow.
+       (fold_binary): Avoid useless conversion.
+
 2007-10-31  Richard Sandiford  <rsandifo@nildram.co.uk>
 
        PR target/33948
        * modulo-sched.c (sms_schedule): Add DF_UD_CHAIN problem.
 
 2007-10-29  Razya Ladelsky  <razya@il.ibm.com>
-            Zdenek Dvorak  <ook@ucw.cz>
+           Zdenek Dvorak  <ook@ucw.cz>
 
        OMP_ATOMIC Changes,
        reduction support for automatic parallelization.
        * config/m68k/m68k.md (cmp<mode>, cmp<mode>_68881, cmp<mode>_cf):
        Cleanup predicates to relieve reload.
        (conditional_trap): Reject conditional trap with fp condition.
-       * gcc/config/m68k/predicates.md (fp_src_operand): New, reject
+       * config/m68k/predicates.md (fp_src_operand): New, reject
        certain constants early.
 
 2007-09-24  Roman Zippel <zippel@linux-m68k.org>
 
-       * gcc/final.c (final_scan_insn): Remove accidentally duplicated code.
+       * final.c (final_scan_insn): Remove accidentally duplicated code.
 
 2007-09-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>
 
 
 2007-09-19  Michael Meissner  <michael.meissner@amd.com>
 
-       * gcc/config/i386/i386.c: Delete trailing whitespace.
-       * gcc/config/i386/i386.h: Ditto.
-       * gcc/config/i386/bmmintrin.h: Ditto.
-       * gcc/config/i386/sync.md: Ditto.
-       * gcc/config/i386/ppro.md: Ditto.
-       * gcc/config/i386/mmx.md: Ditto.
-       * gcc/config/i386/constraints.md: Ditto.
-       * gcc/config/i386/sse.md: Ditto.
-       * gcc/config/i386/athlon.md: Ditto.
-       * gcc/config/i386/i386.md: Ditto.
+       * config/i386/i386.c: Delete trailing whitespace.
+       * config/i386/i386.h: Ditto.
+       * config/i386/bmmintrin.h: Ditto.
+       * config/i386/sync.md: Ditto.
+       * config/i386/ppro.md: Ditto.
+       * config/i386/mmx.md: Ditto.
+       * config/i386/constraints.md: Ditto.
+       * config/i386/sse.md: Ditto.
+       * config/i386/athlon.md: Ditto.
+       * config/i386/i386.md: Ditto.
 
 2007-09-21  Richard Guenther  <rguenther@suse.de>
 
 2007-09-10  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/33369
-       * gcc/config/i386/sse.md (ashr<mode>3): Change op2 mode to SImode.
+       * config/i386/sse.md (ashr<mode>3): Change op2 mode to SImode.
        Use 'N' operand constraint for op2.
        (lshr<mode>3): Ditto.
        (ashl<mode>3): Ditto.
        (vec_shl_<mode>): Use const_0_to_255_mul_8_operand predicate for op2.
        (vec_shr_<mode>): Ditto.
-       * gcc/config/i386/i386.c (ix86_expand_builtin) [IX86_BUILTIN_PSLL?128,
+       * config/i386/i386.c (ix86_expand_builtin) [IX86_BUILTIN_PSLL?128,
        IX86_BUILTIN_PSRA*?128, IX86_BUILTIN_PSRL?128]: Convert op1 to SImode.
 
 2007-09-10  Andreas Krebbel  <krebbel1@de.ibm.com>
 
 2007-09-05  Uros Bizjak  <ubizjak@gmail.com>
 
-       * gcc/config/i386/cpuid.h: New file.
-       * gcc/config/i386/driver-i386.c: Include cpuid.h.
+       * config/i386/cpuid.h: New file.
+       * config/i386/driver-i386.c: Include cpuid.h.
        (describe_cache): Shrink size and line strings to 100 bytes.
        (detect_caches_amd): Return "" for unsupported max_ext_level.
        Use __cpuid function.
        [PROCESSOR_K8]: Add k8-sse3 architecture.
        [PROCESSOR_NOCONA]: Remove.
        [PROCESSOR_GENERIC64]: Ditto.
-       * gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h.
-       * gcc/config/i386/crtfastmath.c: Include cpuid.h.  Use __get_cpuid
+       * config/i386/x-i386 (driver-i386.o): Depend on cpuid.h.
+       * config/i386/crtfastmath.c: Include cpuid.h.  Use __get_cpuid
        to check for SSE and FXSAVE support.
-       * gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h.
+       * config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h.
        Add -minline-all-stringops.
-       * gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers.
+       * config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers.
        (x86_64-*-*): Ditto.
 
 2007-09-05  Jie Zhang  <jie.zhang@analog.com>
 
 2007-09-02  Joseph Myers  <joseph@codesourcery.com>
 
+       PR c/29237
        PR middle-end/33272
        * c-decl.c (grokdeclarator): Apply qualifiers to type of parameter
        decayed from array.
 
 2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
-       * gcc/builtin-types.def (BT_FN_PTR_PTR_SIZE): New type.
-       * gcc/builtins.def (BUILT_IN_REALLOC): New builtin.
+       * builtin-types.def (BT_FN_PTR_PTR_SIZE): New type.
+       * builtins.def (BUILT_IN_REALLOC): New builtin.
 
 2007-08-29  Douglas Gregor  <doug.gregor@gmail.com>
 
 2007-08-28  Nathan Sidwell  <nathan@codesourcery.com>
            Kazu Hirata  <kazu@codesourcery.com>
 
-       * gcc/config/m68k/linux.h
+       * config/m68k/linux.h
        (M68K_HONOR_TARGET_STRICT_ALIGNMENT): Redefine as 0.
        * config/m68k/m68k.c (TARGET_RETURN_IN_MEMORY): New.
        (m68k_return_in_memory): New.
-       * gcc/config/m68k/m68k.h (M68K_HONOR_TARGET_STRICT_ALIGNMENT):
+       * config/m68k/m68k.h (M68K_HONOR_TARGET_STRICT_ALIGNMENT):
        New.
 
 2007-08-28  Uros Bizjak  <ubizjak@gmail.com>
        * params.def (PARAM_VECT_MAX_VERSION_FOR_ALIGNMENT_CHECKS):
        Rename.
        (PARAM_VECT_MAX_VERSION_FOR_ALIAS_CHECKS): Define.
-       * gcc/doc/invoke.texi
+       * doc/invoke.texi
        (vect-max-version-for-alignment-checks): Document.
        (vect-max-version-for-alias-checks): Document.
        (vect-max-version-checks): Remove.
-     
+
 2007-08-16  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386.md (*rep_movdi_rex64): Emit "rep" prefix on
 
 2007-07-27  Douglas Gregor  <doug.gregor@gmail.com>
        
-       * c-common.h (enum rid): Add RID_DECLTYPE, update RID_LAST_CXX0X.
+       * c-common.h (enum rid): Add RID_DECLTYPE, update RID_LAST_CXX0X.
 
 2007-07-26  Kenneth Zadeck <zadeck@naturalbridge.com>
 
        and adjust recursive call accordingly.
        (prescan_insns_for_dce): Update call to delete_insn_p.
 
-2007-06-30  Rask Ingemann Lambertsen <rask@sygehus.dk>
+2007-06-30  Rask Ingemann Lambertsen  <rask@sygehus.dk>
 
        * combine.c (combine_validate_cost): New parameter NEWOTHERPAT.
        (try_combine): Move potential calls to undo_all() so they happen
        before we commit to using the combined insns.
 
-2006-06-30  Jan Hubicka  <jh@suse.cz>
+2007-06-30  Jan Hubicka  <jh@suse.cz>
 
        * loop-unroll.c (unroll_loop_runtime_iterations): Unshare newly emit
        code.
 
-2006-06-30  Thomas Neumann  <tneumann@users.sourceforge.net>
+2007-06-30  Thomas Neumann  <tneumann@users.sourceforge.net>
 
        * ipa.c (cgraph_postorder): Cast according to the coding conventions.
        (cgraph_remove_unreachable_nodes): Likewise.
 
 2007-06-13  Dave Korn  <dave.korn@artimi.com>
 
-       * config/i386/i386.c (ix86_eax_live_at_start_p): Use
-       df_get_live_out.
+       * config/i386/i386.c (ix86_eax_live_at_start_p): Use df_get_live_out.
 
 2007-06-13  Kazu Hirata  <kazu@codesourcery.com>
 
 
 2007-06-12  Seongbae Park  <seongbae.park@gmail.com>
 
-       * df-scan.c (df_get_exit-block_use_set): Always add the stack pointer
-       to the exit block use set.
-       (df_insn_delete, df_insn_rescan): Fixed spelling of "deferring". 
-       * gcse.c (cpro_jump): Don't emit barrier in cfglayout mode.
-       * config/sparc/sparc.c (sparc_check_64): Check df != NULL.
+       * df-scan.c (df_get_exit-block_use_set): Always add the stack pointer
+       to the exit block use set.
+       (df_insn_delete, df_insn_rescan): Fixed spelling of "deferring". 
+       * gcse.c (cpro_jump): Don't emit barrier in cfglayout mode.
+       * config/sparc/sparc.c (sparc_check_64): Check df != NULL.
 
 2007-06-12  Seongbae Park  <seongbae.park@gmail.com>