+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
+ * config/mips/mips.c (mips_fpr_return_fields): Fix SCALAR_TYPE_P
+ check.
+
+2007-10-31 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/rs6000/rs6000.opt: Rename -mdfp option to -mhard-dfp.
+
+ * config/s390/s390.c: (override_options): Replace -mhard-dfp/-msoft-dfp
+ with -mhard-dfp/-mno-hard-dfp.
+ * config/s390/s390.opt: Likewise.
+ * config/s390/s390.h: Add MASK_HARD_DFP to the TARGET_DEFAULT
+ definition.
+
+2007-10-30 Janis Johnson <janis187@us.ibm.com>
+
+ * tree-ssa.c (execute_update_addresses_taken): Initialize update_vops.
+
+2007-10-30 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/invoke.texi (Option Summary): Add -fdce and -fdse to list of
+ optimization options.
+ (Optimize Options): Add -fdce and -fdse to the list of optimizations
+ enabled by -O. Document -fdce and -fdse.
+
+2007-10-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/33709
+ * fold-const.c (fold_binary): If one argument is COMPOUND_EXPR,
+ convert second operand of COMPOUND_EXPR to the original type of
+ that argument.
+
+2007-10-30 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-operands.c (add_vars_for_offset): Fix exit test
+ of loop adding SFTs as virtual operands.
+
+2007-10-30 Richard Guenther <rguenther@suse.de>
+
+ * Makefile.in (dse.o): Add $(OPTABS_H) and $(RECOG_H) dependencies.
+
+2007-10-29 Dorit Nuzman <dorit@il.ibm.com>
+
+ PR tree-optimization/32893
+ * tree-vectorize.c (vect_can_force_dr_alignment_p): Check
+ STACK_BOUNDARY instead of PREFERRED_STACK_BOUNDARY.
+
+2007-10-29 Rask Ingemann Lambertsen <rask@sygehus.dk>
+
+ * longlong.h (add_ssaaaa): Support Intel asm syntax in i386 and
+ x86_64 versions.
+ (sub_ddmmss): Likewise.
+ (umul_ppmm): Likewise.
+ (udiv_qrnnd): Likewise.
+
+2007-10-29 Janis Johnson <janis187@us.ibm.com>
+
+ PR testsuite/24841
+ * doc/sourcebuild.texi (Test Directives): Document that dg-require
+ directives must come before dg-additional-sources.
+
+2007-10-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/33723
+ * c-gimplify.c (c_gimplify_expr): Optimize INIT_EXPR or
+ MODIFY_EXPR with non-addressable COMPOUND_LITERAL_EXPR as source.
+
+2007-10-29 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ PR tree-optimization/33614
+ * gimplify.c (gimplify_init_constructor): Gimplify vector constructors
+ if they can't be reduced to VECTOR_CSTs and aren't legitimate
+ initializer constants.
+
+2007-10-29 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/33870
+ * tree-ssa-operands.c (add_vars_for_offset): Remove mpt_vars parameter.
+ (add_virtual_operand): Do not recurse into MPTs looking for pointed-to
+ SFTs.
+
+2007-10-29 Richard Guenther <rguenther@suse.de>
+
+ * passes.c (init_optimization_passes): Exchange store_copy_prop
+ with copy_prop.
+ * tree-pass.h (pass_store_copy_prop): Remove.
+ * tree-ssa-copy.c (do_store_copy_prop): Remove.
+ (stmt_may_generate-copy): Do not handle store_copy_prop.
+ (get_copy_of_val): Likewise.
+ (set_copy_of_val): Likewise.
+ (copy_prop_visit_assignment): Likewise.
+ (copy_prop_visit_stmt): Likewise.
+ (copy_prop_visit_phi_node): Likewise.
+ (init_copy_prop): Likewise.
+ (execute_copy_prop): Likewise.
+ (do_copy_prop): Remove.
+ (gate_store_copy_prop): Likewise.
+ (store_copy_prop): Likewise.
+ (pass_store_copy_prop): Likewise.
+ (pass_copy_prop): Call execute_copy_prop.
+ * opts.c (decode_options): Do not set flag_tree_store_copy_prop.
+ * common.opt (ftree-store-copy-prop): Mark obsolete.
+ * doc/invoke.texi (ftree-store-copy-prop): Remove documentation.
+
+2007-10-29 Ian Lance Taylor <iant@google.com>
+
+ * ifcvt.c (noce_can_store_speculate_p): New static function.
+ (noce_process_if_block): Call it.
+ (if_convert): Remove recompute_dominance parameter. Change all
+ callers.
+
+2007-10-29 Richard Guenther <rguenther@suse.de>
+
+ * tree-flow-inline.h (get_subvar_at): Use binary search.
+ (get_first_overlapping_subvar): New function to binary search
+ for the first overlapping subvar.
+ * tree-ssa-operands.c (add_vars_for_offset): Strip down to
+ just handle adding subvars for a pointed-to subvar. Optimize
+ and use get_first_overlapping_subvar.
+ (add_vars_for_bitmap): Fold into single caller.
+ (add_virtual_operand): Streamline, inherit add_vars_for_bitmap
+ and non pointed-to bits of add_vars_for_offset.
+
+2007-10-29 Revital Eres <eres@il.ibm.com>
+
+ * modulo-sched.c (sms_schedule): Add DF_UD_CHAIN problem.
+
+2007-10-29 Razya Ladelsky <razya@il.ibm.com>
+ Zdenek Dvorak <ook@ucw.cz>
+
+ OMP_ATOMIC Changes,
+ reduction support for automatic parallelization.
+
+ * expr.c (expand_expr_real_1): Add cases for OMP_ATOMIC_LOAD,
+ OMP_ATOMIC_STORE.
+ * Makefile.in: Add dependencies to expr.o, tree-parloops.o, omp-low.o
+ * tree-pretty-print.c (dump_generic_node): Add OMP_ATOMIC_LOAD
+ and OMP_ATOMIC_STORE.
+ * tree.h (OMP_DIRECTIVE_P): Add OMP_ATOMIC_LOAD, OMP_ATOMIC_STORE.
+ * gimple-low.c (lower_stmt): Same.
+ * gimplify.c (gimplify_expr): Same.
+ (gimplify_omp_atomic_fetch_op, gimplify_omp_atomic_pipeline,
+ gimplify_omp_atomic_mutex): Remove.
+ (gimplify_omp_atomic): Change it to simply gimplify the
+ statement instead of expanding it.
+ * omp-low.c: Add includes to optabs.h, cfgloop.h.
+ (expand_omp_atomic, expand_omp_atomic_pipeline,
+ goa_stabilize_expr, expand_omp_atomic_mutex,
+ expand_omp_atomic_fetch_op): New functions to implement
+ expansion of OMP_ATOMIC.
+ (expand_omp, build_omp_regions_1): Add support for
+ OMP_ATOMIC_LOAD/OMP_ATOMIC_STORE.
+ * tree-cfg.c (make_edges): add case for OMP_ATOMIC_LOAD,
+ OMP_ATOMIC_STORE.
+ * tree-gimple.c (is_gimple_stmt): Add OMP_ATOMIC_LOAD,
+ OMP_ATOMIC_STORE.
+ * tree-parloops.c: add include to tree-vectorizer.h.
+ (reduction_info): New structure for reduction.
+ (reduction_list): New list to represent list of reductions per loop.
+ (struct data_arg): New helper structure for reduction.
+ (reduction_info_hash, reduction_info_eq, reduction_phi,
+ initialize_reductions, create_call_for_reduction,
+ create_phi_for_local_result, create_call_for_reduction_1,
+ create_loads_for_reductions, create_final_loads_for_reduction):
+ New functions.
+ (loop_parallel_p): Identify reductions, add reduction_list parameter.
+ (separate_decls_in_loop_name): Support reduction variables.
+ (separate_decls_in_loop): Add reduction_list and ld_st_data arguments,
+ call create_loads_for_reduction for each reduction.
+ (canonicalize_loop_ivs): Identify reductions, add reduction_list
+ parameter.
+ (transform_to_exit_first_loop): Add reduction support, add
+ reduction_list parameter.
+ (gen_parallel_loop): Add reduction_list parameter. Add call
+ separate_decls_in_loop with
+ the new argument. Traverse reductions and call
+ initialize_reductions, create_call_for_reduction.
+ (parallelize_loops): Create and delete the reduction list.
+ (add_field_for_name): Change use of data parameter. Add fields for
+ reductions.
+ * tree-vectorizer.h (vect_analyze_loop_form): Add declaration.
+ * tree-vect-analyze.c (vect_analyze_loop_form): export it.
+ * tree.def: Add definitions for OMP_ATOMIC_LOAD, OMP_ATOMIC_STORE.
+ * tree-inline.c (estimate_num_insns_1): add cases for
+ OMP_ATOMIC_LOAD, OMP_ATOMIC_STORE.
+ * tree-cfg.c (make_edges): Add OMP_ATOMIC_LOAD, OMP_ATOMIC_STORE.
+ * tree-ssa-operands.c (get_addr_dereference_operands):
+ New function. Subroutine of get_indirect_ref_operands.
+ (get_indirect_ref_operands): Call get_addr_dereference_operands.
+ (get_expr_operands): Support OMP_ATOMIC_LOAD, OMP_ATOMIC_STORE.
+
+
+2007-10-29 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.c: Include df.h.
+ (cris_address_cost): Add gcc_assert for canonicalization
+ assumptions. For PLUS with MULT or register, correct
+ test for register in other arm. Tweak comments.
+
+2007-10-28 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-operands.c (add_vars_for_offset): Add parameter
+ telling if the var is to be treated as points-to location.
+ (add_vars_for_bitmap): Pass true to add_vars_for_offset.
+ (add_virtual_operand): Only recurse into MPTs if aliases
+ is from a NMT.
+
+2007-10-28 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-operands.c (add_vars_for_offset): Clean and speed up.
+ (add_vars_for_bitmap): Do not recurse further. Only add vars
+ for pointed-to SFTs.
+ (add_virtual_operand): Re-instantiate loop to add operands for
+ aliases. Recurse into MPTs.
+ (get_indirect_ref_operands): If we fall back to use a pointers
+ SMT, make sure to not prune based on the access offset and size.
+
+2007-10-28 Andrew Pinski <pinskia@gmail.com>
+
+ PR tree-opt/33589
+ * tree-outof-ssa.c (rewrite_trees): If the statement changed, cleanup
+ the eh information on the statement.
+
+2007-10-28 Richard Guenther <rguenther@suse.de>
+
+ * tree-flow.h (subvar_t): Make it a VEC.
+ (struct subvar): Remove.
+ (struct var_ann_d): Use VEC(tree,gc) to store subvars.
+ * tree-flow-inline.h (get_subvar_at): Adjust iterators over
+ variable subvars.
+ * tree-into-ssa.c (mark_sym_for_renaming): Likewise.
+ * tree-nrv.c (dest_safe_for_nrv_p): Likewise.
+ * tree-ssa-alias.c (mark_aliases_call_clobbered): Likewise.
+ (set_initial_properties): Likewise.
+ (setup_pointers_and_addressables): Likewise.
+ (new_type_alias): Likewise.
+ (create_overlap_variables_for): Likewise.
+ * tree-dfa.c (dump_subvars_for): Likewise.
+ * tree-ssa-operands.c (add_vars_for_offset): Likewise.
+ (get_expr_operands): Likewise.
+ (add_to_addressable_set): Likewise.
+ * tree-ssa-structalias.c (set_uids_in_ptset): Likewise.
+
+2007-10-28 Uros Bizjak <ubizjak@gmail.com>
+
+ PR tree-optimization/33920
+ * tree-if-conv.c (tree_if_conversion): Force predicate of single
+ successor bb to true when predecessor bb has NULL predicate.
+ (find_phi_replacement_condition): Assert that tmp_cond is non-null.
+
+2007-10-28 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * config/mips/mips.md: Add combiner patterns for DImode extensions
+ of HImode and QImode truncations. Reformat HImode <- QImode pattern
+ for consistency.
+
+2007-10-28 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ PR target/33895
+ * config/mips/mips.c (mips_output_dwarf_dtprel): Add ATTRIBUTE_UNUSED.
+
+2007-10-28 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * dce.c (delete_unmarked_insns): Just delete the RETVAL and
+ LIBCALL notes if they are about to be moved to the same insn.
+
+2007-10-27 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/33870
+ * tree-ssa-operands.c (add_vars_for_offset): Reduce code
+ duplication. Remove redundant call to access_can_touch_variable.
+ (add_vars_for_bitmap): New helper for recursing over MPT contents.
+ (add_virtual_operand): Use it.
+
+2007-10-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR fortran/31608
+ * pa.h (ASM_PN_FORMAT): Delete define.
+
+2007-10-26 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/invoke.texi (Option Summary, optimizations): Remove
+ -fbounds-check. Add -fassociative-math, -freciprocal-math,
+ -ftree-vrp and -funit-at-a-time. Change -fno-split-wide-types to
+ -fsplit-wide-types to match later entry. Break up a long line.
+ (Option Summary, code gen options) Add -fno-stack-limit. Add
+ missing @gol to the end of a line.
+ (Optimization Options): Remove -fbounds-check, which is also
+ documented under Code Generation Options. Remove =n from
+ index entry for -ftree-parallelize-loops. Change -fno-cprop-registers
+ to -fcprop-registers to match other options, and say when it is
+ enabled rather than disabled. Remove extra index entry for
+ -fno-cx-limited-range. Add index entries for -fstack-protector
+ and -fstack-protector-all.
+ (Code Gen Options): Add index entry for -ftls-model.
+
+2007-10-26 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.c (avr_OS_task_function_p): Add new function.
+ (avr_regs_to_save): Handle functions with 'OS_task' attribute.
+ (avr_simple_epilogue, expand_prologue, avr_asm_function_end_prologue,
+ expand_epilogue, output_movhi): Don't handle 'main' function.
+ (avr_attribute_table): Add 'OS_task' function attribute.
+ * config/avr/avr.h (machine_function): Remove 'is_main' field, add
+ 'is_OS_task' field.
+ * config/avr/avr.md (return_from_main_epilogue): Remove insn.
+ (return_from_epilogue, return_from_interrupt_epilogue): Don't handle
+ 'main' function.
+ * config/avr/avr.opt (minit-stack): Remove.
+
+2007-10-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree-nested.c (get_trampoline_type): Fix thinko.
+
+2007-10-26 Douglas Gregor <doug.gregor@gmail.com>
+
+ PR c++/33601
+ * tree.c (build_offset_type): Build canonical type based on the
+ TYPE_MAIN_VARIANT of the base type.
+
+2007-10-26 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * reorg.c (emit_delay_sequence): Move insn locator from the
+ first insn to the sequence.
+
+2007-10-26 Samuel Tardieu <sam@rfc1149.net>
+
+ * ipa-pure-const.c (check_decl): Return immediately when
+ pure_const_state has been set to IPA_NEITHER.
+
+2007-10-25 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/33833
+ * tree-vect-analyze.c (vect_analyze_data_refs): Use POINTER_PLUS_EXPR
+ and convert init to sizetype in inner_base construction.
+
+2007-10-25 Richard Guenther <rguenther@suse.de>
+
+ * tree-flow.h (mem_sym_stats): Remove.
+ (dump_mem_sym_stats_for_var): Declare.
+ * tree-dfa.c (dump_variable): Call dump_mem_sym_stats_for_var.
+ (mem_sym_stats): Move ...
+ * tree-ssa-alias.c (mem_sym_stats): ... here and make it static.
+ (mem_sym_score): Rename from ...
+ (pscore): ... this. Remove.
+ (dump_mem_sym_stats_for_var): New function. Dump the score, but
+ not the frequencies.
+ (compare_mp_info_entries): Make sort stable by disambiguating
+ on DECL_UID.
+
+2007-10-25 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/33866
+ * tree-vect-transform.c (vectorizable_store): Check operands of all
+ the stmts in the group of strided accesses. Get def stmt type for each
+ store in the group and pass it to vect_get_vec_def_for_stmt_copy ().
+
+2007-10-25 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/constraints.md (Y0): Rename register constraint to Yz.
+ (Yt): Rename register constraint to Y2.
+ * config/i386/sse.md: Use renamed register constraints.
+ * config/i386/mmx.md: Ditto.
+ * config/i386/i386.md: Ditto.
+
+2007-10-25 Rask Ingemann Lambertsen <rask@sygehus.dk>
+
+ * config/i386/i386.md (*dummy_extendsfdf2): Fix operand 1 constraint.
+
+2007-10-24 Chao-ying Fu <fu@mips.com>
+
+ * dwarf2out.c (base_type_die): Use DW_ATE_unsigned_fixed or
+ DW_ATE_signed_fixed to describe FIXED_POINT_TYPE.
+
+2007-10-24 Samuel Tardieu <sam@rfc1149.net>
+ Olga Golovanevsky <olga@il.ibm.com>
+
+ * ipa-struct-reorg.c (replace_field_acc): Make it clear to
+ the compiler that wr.wrap and wr.domain are initialized in
+ any case.
+
+2007-10-24 Samuel Tardieu <sam@rfc1149.net>
+
+ * ipa-struct-reorg.c (sum_counts): Use HOST_WIDEST_PRINT_DEC
+ to print gcov_type values.
+
+2007-10-24 Eric B. Weddington <eweddington@cso.atmel.com>
+
+ * config/avr/avr.h: Do not include progmem_section definition when
+ building with IN_TARGET_LIBS.
+
+2007-10-24 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ PR target/33755
+ * config/mips/mips.c (mips_lo_sum_offset): New structure.
+ (mips_hash_base, mips_lo_sum_offset_hash, mips_lo_sum_offset_eq)
+ (mips_lo_sum_offset_lookup, mips_record_lo_sum)
+ (mips_orphaned_high_part_p: New functions.
+ (mips_avoid_hazard): Don't check INSN_P here.
+ (mips_avoid_hazards): Rename to...
+ (mips_reorg_process_insns): ...this. Cope with
+ !TARGET_EXPLICIT_RELOCS. Delete orphaned high-part relocations,
+ or turn them into nops.
+ (mips_reorg): Remove TARGET_EXPLICIT_RELOCS check from calls to
+ dbr_schedule and mips_avoid_hazards/mips_reorg_process_insns.
+ (mips_set_mips16_mode): Don't set flag_delayed_branch here.
+ (mips_override_options): Set flag_delayed_branch to 0.
+
+2007-10-24 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * config/mips/mips.h (MOVE_MAX): Use UNITS_PER_WORD and describe
+ MIPS-specific implementation details.
+ (MIPS_MAX_MOVE_BYTES_PER_LOOP_ITER): New macro.
+ (MIPS_MAX_MOVE_BYTES_STRAIGHT): Likewise.
+ (MOVE_RATIO): Define to MIPS_MAX_MOVE_BYTES_STRAIGHT / UNITS_PER_WORD
+ for targets with movmemsi.
+ (MOVE_BY_PIECES_P): Define.
+ * config/mips/mips.c (MAX_MOVE_REGS, MAX_MOVE_BYTES): Delete.
+ (mips_block_move_loop): Add a bytes_per_iter argument.
+ (mips_expand_block_move): Use MIPS_MAX_MOVE_BYTES_STRAIGHT.
+ Update call to mips_block_move_loop.
+
+2007-10-24 Michael Matz <matz@suse.de>
+
+ PR debug/33868
+ * var-tracking.c (variable_union): Don't break after one loop
+ iteration but only when a difference is found.
+ (dump_variable): Also print DECL_UID.
+
+2007-10-24 Olga Golovanevsky <olga@il.ibm.com>
+
+ * ipa-type-escape.h: Expose function
+ is_array_access_through_pointer_and_index.
+ * ipa-type-escape.c
+ (is_array_access_through_pointer_and_index):
+ Add three new parameters. Add support of
+ POINTER_PLUS_EXPR tree code.
+
+2007-10-24 Olga Golovanevsky <olga@il.ibm.com>
+
+ * ipa-struct-reorg.c, ipa-struct-reorg.h: New files.
+ * tree-pass.h: Add pass_ipa_struct_reorg.
+ * common.opt: Add ipa-struct-reorg flag.
+ * Makefile.in: Add ipa-strcut-reorg.o compilation.
+ * passes.c: Add pass pass_ipa_struct_reorg.
+ * params.h: Add STRUCT_REORG_COLD_STRUCT_RATIO.
+ * params.def: Add PARAM_STRUCT_REORG_COLD_STRUCT_RATIO.
+
+2007-10-24 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/33804
+ * tree-vect-transform.c (vectorizable_operation): Remove the
+ checks that the vectorization is worthwhile from the transformation
+ phase.
+
+2007-10-24 Ira Rosen <irar@il.ibm.com>
+
+ * tree-vect-analyze.c (vect_build_slp_tree): Return false if
+ vectype cannot be determined for the scalar type.
+ (vect_analyze_slp_instance): Likewise.
+ * tree-vect-transform.c (vect_model_reduction_cost): Change the
+ return type to bool. Return false if vectype cannot be determined
+ for the scalar type.
+ (vect_get_constant_vectors): Return false if vectype cannot be
+ determined for the scalar type.
+ (get_initial_def_for_induction, vect_get_vec_def_for_operand,
+ get_initial_def_for_reduction, vect_create_epilog_for_reduction,
+ vectorizable_reduction): Likewise.
+
+2007-10-23 Craig Rodrigues <rodrigc@gcc.gnu.org>
+
+ * config.gcc: For a FreeBSD target, parse the value of ${target}
+ to determine the value of FBSD_MAJOR, instead of adding an
+ explicit check for every possible FreeBSD major version.
+
+2007-10-23 Uros Bizjak <ubizjak@gmail.com>
+
+ PR rtl-optimization/33846
+ * combine.c (simplify_shift_const_1) [NOT]: Skip vector modes.
+
+2007-10-23 Dorit Nuzman <dorit@il.ibm.com>
+
+ PR tree-optimization/33860
+ * tree-vect-transform.c (vect_analyze_data_ref_access): Don't allow
+ interleaved accesses in case the dr is inside the inner-loop during
+ outer-loop vectorization.
+
+2007-10-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/rtl.texi (Flags): Fix MEM_SCALAR_P entry.
+ Document MEM_POINTER. Replace mentions of "integrated"
+ field with "return_val". Delete outdated stuff.
+
+2007-10-23 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Set
+ rs6000_altivec_abi on AIX.
+ (conditional_register_usage): Set VR20:31 fixed on AIX.
+
+2007-10-23 Richard Guenther <rguenther@suse.de>
+
+ * alias.c (get_alias_set): For INDIRECT_REFs, deal with
+ SSA_NAME pointers.
+
+2007-10-22 Seongbae Park <seongbae.park@gmail.com>
+ David S. Miller <davem@davemloft.net>
+
+ * df-scan.c (df_get_call_refs): Mark global registers as both a
+ DF_REF_REG_USE and a non-clobber DF_REF_REG_DEF.
+
+2007-10-22 Dorit Nuzman <dorit@il.ibm.com>
+
+ PR tree-optimization/33834
+ PR tree-optimization/33835
+ * tree-vect-analyze.c (vect_analyze_operations): RELEVANT and LIVE
+ stmts need to be checked for success seperately.
+ * tree-vect-transform.c (vectorizable_call, vectorizable_conversion):
+ Remove the check that stmt is not LIVE.
+ (vectorizable_assignment, vectorizable_induction): Likewise.
+ (vectorizable_operation, vectorizable_type_demotion): Likewise.
+ (vectorizable_type_promotion, vectorizable_load, vectorizable_store):
+ Likewise.
+ (vectorizable_live_operation): Check that op is not NULL.
+
+2007-10-22 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/invoke.texi (Optimization Options): In the summary, show
+ that the value for options -falign-jumps, -falign-labels,
+ -falign-loops, -falign-functions, -fsched-stalled-insns, and
+ -fsched-stalled-insns-dep is optional. In the summary, show that
+ -fsched-stalled-insns takes an optional argument and that
+ -fparallelize-loops takes an argument. Add opindex for several
+ optimization options, and fix typos in the opindex commands for
+ several others. In the descriptions for -fsched-stalled-insns
+ and -fsched-stalled-insns-dep, show the options with and without
+ values.
+
+2007-10-22 Eric B. Weddington <eweddington@cso.atmel.com>
+
+ * config/avr/avr.c (avr_mcu_types): Remove ATmega603 which was never
+ produced.
+ * config/avr/avr.h (LINK_SPEC): Likewise.
+ (CRT_BINUTILS_SPECS): Likewsie.
+ * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+
+2007-10-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR rtl-optimization/33644
+ * cfgcleanup.c: Do not include dce.h.
+ * cfgrtl.c (delete_insn_chain_and_edges): Resurrect.
+ * combine.c (distribute_notes): Delete REG_LIBCALL_ID case.
+ * dce.c (something_changed): Delete.
+ (libcall_dead_p): New predicate.
+ (delete_unmarked_insns): Use it to delete dead libcalls.
+ Deal with REG_LIBCALL and REG_RETVAL notes.
+ (prescan_libcall_for_dce): New function.
+ (prescan_insns_for_dce): Use it to deal with libcalls.
+ (mark_reg_dependencies): Do nothing special for libcalls.
+ (dce_process_block): Likewise.
+ (fast_dce): Delete unused local variable.
+ (run_fast_dce): Do not return a value.
+ * dce.h (struct df): Delete.
+ (run_fast_dce): Adjust prototype.
+ * optabs.c (libcall_id): Delete.
+ (maybe_encapsulate_block): Do not emit REG_LIBCALL_ID notes.
+ (emit_no_conflict_block): Do not look for REG_LIBCALL_ID notes.
+ * reload1.c (reload): Delete REG_LIBCALL_ID case.
+ * rtl.h (delete_insn_chain_and_edges): Resurrect prototype.
+ * see.c (see_update_relevancy): Look for REG_LIBCALL and REG_RETVAL
+ notes instead of REG_LIBCALL_ID notes.
+ * reg-notes.def (LIBCALL_ID): Delete.
+ * Makefile.in (see.o): Add dce.h dependency.
+ (cfgcleanup.o): Remove dce.h dependency.
+
+2007-10-22 Michael Matz <matz@suse.de>
+
+ PR tree-optimization/33855
+ * tree-ssa-phiopt.c (cond_store_replacement): Handle COMPLEX_TYPE
+ and VECTOR_TYPE.
+
2007-10-22 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/33854
2007-10-18 Chen Liqin <liqin@sunnorth.com.cn>
- * config.gcc : update score-*-elf(extra_objs).
- * config/score/mac.md : Remove.
- * config/score/misc.md : Remove.
- * config/score/score7.md : Remove.
- * config/score/score-mdaux.h : Remove.
- * config/score/score-mdaux.c : Remove.
- * config/score/score-version.h : Remove.
- * config/score/score-generic.md : New.
- * config/score/score3.h : New.
- * config/score/score3.c : New.
- * config/score/score7.h : New.
- * config/score/score7.c : New.
- * config/score/mul-div.S : add flush_cache score3 support.
- * config/score/elf.h : Fix some typos.
- * config/score/score.md : merge score3 and score7 pattern.
- * config/score/score.c : use to seperate which target it used.
- * config/score/score.h : use to seperate the target macro.
- * config/score/score.opt : remove -mmac option , add -mscore3,
- -mscore3d and -march OPTION support.
+ * config.gcc : update score-*-elf(extra_objs).
+ * config/score/mac.md : Remove.
+ * config/score/misc.md : Remove.
+ * config/score/score7.md : Remove.
+ * config/score/score-mdaux.h : Remove.
+ * config/score/score-mdaux.c : Remove.
+ * config/score/score-version.h : Remove.
+ * config/score/score-generic.md : New.
+ * config/score/score3.h : New.
+ * config/score/score3.c : New.
+ * config/score/score7.h : New.
+ * config/score/score7.c : New.
+ * config/score/mul-div.S : add flush_cache score3 support.
+ * config/score/elf.h : Fix some typos.
+ * config/score/score.md : merge score3 and score7 pattern.
+ * config/score/score.c : use to seperate which target it used.
+ * config/score/score.h : use to seperate the target macro.
+ * config/score/score.opt : remove -mmac option , add -mscore3,
+ -mscore3d and -march OPTION support.
2007-10-17 Andrew Pinski <andrew_pinski@playstation.sony.com>
IX86_BUILTIN_PSRADI128, IX86_BUILTIN_PSRLWI128,
IX86_BUILTIN_PSRLDI128, IX86_BUILTIN_PSRLQI128]: Do not require
immediate shift value.
- config/i386/emmintrin.h (_mm_slli_epi16, _mm_slli_epi32,
+ * config/i386/emmintrin.h (_mm_slli_epi16, _mm_slli_epi32,
_mm_slli_epi64, _mm_srai_epi16, _mm_srai_epi32, _mm_srli_epi16,
_mm_srli_epi32, _mm_srli_epi64): Remove 'const' from count argument.
Remove macros for !__OPTIMIZE__ case.
2007-10-15 Razya Ladelsky <razya@il.ibm.com>
- * matrix-reorg.c (gate_matrix_reorg): Don't comment out whole
- program flag.
+ * matrix-reorg.c (gate_matrix_reorg): Don't comment out whole
+ program flag.
2007-10-15 Jakub Jelinek <jakub@redhat.com>
2007-10-10 Wolfgang Gellerich <gellerich@de.ibm.com>
* opth-gen.awk: Fixed generation of comment stating the origin
- of options.h
+ of options.h
2007-10-10 Kazu Hirata <kazu@codesourcery.com>
* config/m68k/m68k.h (ASSEMBLER_DIALECT): New.
2007-10-06 Eric Botcazou <ebotcazou@adacore.com>
- Nathan Froyd <froydnj@codesourcery.com>
+ Nathan Froyd <froydnj@codesourcery.com>
* dwarf2out.c (dwarf2out_frame_init): Check for DWARF2_FRAME_INFO
when determining whether to record INCOMING_RETURN_ADDR_RTX.
* ra-conflict.c: Include "sparseset.h".
(conflicts): Change to HOST_WIDEST_FAST_INT.
(allocnos_live): Redefine variable as a sparseset.
- (SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE, GET_ALLOCNO_LIVE): Delete macros.
+ (SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE, GET_ALLOCNO_LIVE):
+ Delete macros.
(allocno_row_words): Removed global variable.
(partial_bitnum, max_bitnum, adjacency_pool, adjacency): New variables.
(CONFLICT_BITNUM, CONFLICT_BITNUM_FAST): New defines.
Use the FOR_EACH_CONFLICT macro.
* ra.h: Comments updated.
(conflicts): Update prototype to HOST_WIDEST_FAST_INT.
- (partial_bitnum, max_bitnum, adjacency, adjacency_pool): Add prototypes.
+ (partial_bitnum, max_bitnum, adjacency, adjacency_pool):
+ Add prototypes.
(ADJACENCY_VEC_LENGTH, FOR_EACH_CONFLICT): New defines.
(adjacency_list_d, adjacency_iterator_d): New types.
(add_neighbor, adjacency_iter_init, adjacency_iter_done,
2007-09-25 Bernd Schmidt <bernd.schmidt@analog.com>
* config/bfin/bfin.c (expand_prologue_reg_save,
- expand_epilogue_reg_restore): Code to save and restore I/M/B/L regs and
- ASTAT moved here...
+ expand_epilogue_reg_restore): Code to save and restore I/M/B/L regs
+ and ASTAT moved here...
(expand_interrupt_handler_prologue, expand_interrupt_handler_epilogue):
... from here. New argument ALL; callers changed.
(n_regs_saved_by_prologue): Count ASTAT for plain saveall functions.
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.