OSDN Git Service

2006-08-17 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 70f04af..240bddb 100644 (file)
@@ -1,3 +1,401 @@
+2006-08-17  Maxim Kuvyrkov  <mkuvyrkov@ispras.ru>
+
+       PR rtl-optimization/28489
+       * sched-ebb.c (begin_schedule_ready): Create basic block
+       at the right place.
+       (advance_target_bb): Skip empty blocks.
+       * haifa-sched.c (bb_note): Make global.
+       * sched-int.h (bb_note): Add prototype.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/27865
+       * tree-vrp.c (adjust_range_with_scev): Do not use TYPE_{MIN,MAX}_VALUE
+       for pointer types.
+       * tree-scalar-evolution.c (fold_used_pointer_cast, pointer_offset_p,
+       fold_used_pointer, pointer_used_p): New functions.
+       (analyze_scalar_evolution_1): Use fold_used_pointer.
+       * tree-chrec.c (convert_affine_scev): Convert no-op casts correctly.
+       * tree-ssa-loop-ivopts.c (generic_type_for): Return integral type
+       for pointers.
+
+2006-08-17  Paolo Bonzini <bonzini@gnu.org>
+
+       PR c++/28573
+       * c-common.c (fold_offsetof_1): Add an argument and recurse down to it
+       or the INTEGER_CST.  Fail on a CALL_EXPR. 
+       (fold_offsetof): Pass new argument to fold_offsetof_1.
+       * c-parser.c (c_parser_postfix_expression): Don't include a NULL
+       operand into an INDIRECT_REF. 
+       * c-typeck.c (build_unary_op): Adjust call to fold_offsetof.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR gcov/profile/26570
+       * value-prof.c (static_values): Removed.
+       (tree_find_values_to_profile): Do not set static_values.
+       (find_values_to_profile): Do not free static_values.
+       * profile.c (instrument_values): Do not free the values.
+       (branch_prob): Free the values.
+
+2006-08-16  Naveen.H.S  <naveenh@kpitcummins.com>
+
+       * config/m32c/m32c_lib1.S (__mulsi3): Use only registers for dest.
+
+2006-08-16  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/27697
+       * c-typeck.c (build_component_ref): Combine qualifiers of
+       structure or union and field.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/28071
+       * basic-block.h (bb_dom_dfs_in, bb_dom_dfs_out): Declare.
+       * dominance.c (bb_dom_dfs_in, bb_dom_dfs_out): New functions.
+       * tree-into-ssa.c (struct dom_dfsnum): New.
+       (cmp_dfsnum, find_dfsnum_interval, prune_unused_phi_nodes): New
+       functions.
+       (insert_phi_nodes_for): Use prune_unused_phi_nodes instead of
+       compute_global_livein.
+       (prepare_block_for_update, prepare_use_sites_for): Mark the uses
+       in phi nodes in the correct blocks.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/28364
+       * tree-ssa-loop-ivopts.c (aff_combination_to_tree): Handle zero
+       correctly.
+       (fold_affine_expr): New function.
+       (may_eliminate_iv): Use fold_affine_expr.
+
+2006-08-16  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c/27489
+       * c-typeck.c (c_start_case): Handle invalid orig_type correctly.
+       Clean up.
+
+2006-08-16  Mike Stump  <mrs@apple.com>
+
+       * doc/invoke.texi (-Wno-deprecated-declarations): Fixup use of pxref.
+       * doc/cppopts.texi (-MD): Likewise.
+
+2006-08-15  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR c/28287
+       * c-common.c (handle_weak_attribute): Ignore and warn if
+       not a FUNCTION_ or VAR_DECL.
+
+2006-07-15  Mike Stump  <mrs@apple.com>
+
+       PR c/28280
+       * c-parser.c (c_parser_typeof_specifier): Don't use
+       c_finish_expr_stmt, open code desired semantics instead.
+
+2006-08-15  Nick Clifton  <nickc@redhat.com>
+
+       * config.gcc (x86-mingw32): Add a gthr-win32.h including makefile
+       fragment to tmake_file only if threads are enabled.
+       * config/i386/t-mingw32 (LIB2FUNCS_EXTRA): Move to...
+       * config/i386/t-gthr-win32: New file. ... here.
+
+2006-08-15  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c/28649
+       * c-parser.c (c_parser_compound_statement_nostart): Reset
+       parser->error after each statement.
+
+2006-08-15  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/28713
+       * omp-low.c (lower_omp_parallel): Convert t to
+       receiver_decl's type.
+       (expand_omp_parallel): STRIP_NOPS from the MODIFY_EXPR
+       source before comparison.
+
+       PR middle-end/28724
+       * gimplify.c (gimplify_omp_atomic_pipeline): Convert oldival
+       to itype in assignment to oldival2.
+
+2006-07-14  Andrew Pinski  <pinksia@physics.uc.edu>
+
+       PR c/27490
+       PR c/27489
+       * c-typeck.c (build_compound_expr): If the second expression
+       is an error mark, then just return an error mark instead of
+       creating a COMPOUND_EXPR.
+
+2006-07-14  Mike Stump  <mrs@apple.com>
+
+       * Makefile.in (LIBGCC_DEPS): Don't depend on LANGUAGES.
+
+2006-08-14  Kazu Hirata  <kazu@codesourcery.com>
+
+       * c-decl.c, var-tracking.c: Fix comment typos.
+
+2006-08-14  Richard Sandiford  <richard@codesourcery.com>
+
+       PR rtl-optimization/28634
+       * reorg.c (fill_slots_from_thread): Do not assume A + X - X == A
+       for floating-point modes unless flag_unsafe_math_optimizations.
+
+2006-08-13  Alexandre Oliva  <aoliva@redhat.com>
+           Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR c/27184
+       * tree.c (build_array_type): Unify array types with
+       unspecified index_type.
+       * c-decl.c (grokdeclarator): Make sure we do not modify a
+       unified incomplete array type.
+       * c-typeck.c (store_init_value): Create distinct type before
+       filling in the index type in an initializer from a compound
+       literal.
+
+       * c-decl.c (grokdeclarator): Remove code where we copy the
+       array type over.
+
+2006-08-13  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * tree-pass.h (TODO_update_ssa): Fix which bit is used to take
+       into account for TODO_dump_cgraph.
+       (TODO_update_ssa_no_phi): Likewise.
+       (TODO_update_ssa_full_phi): Likewise.
+       (TODO_update_ssa_only_virtuals): Likewise.
+       (TODO_remove_unused_locals): Likewise.
+       (TODO_set_props): Likewise.
+       (TODO_update_stmt_usage): Likewise.
+
+2006-08-13  Dirk Mueller  <dmueller@suse.de>
+
+       * c-common.c (strict_aliasing_warning): Fix formatting.
+
+2006-08-13  Matthias Klose  <doko@debian.org>
+
+       * doc/invoke.texi: Fix spelling errors.
+
+2006-08-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/23454
+       * reorg.c (relax_delay_slots): Update comment.
+
+2006-08-11  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28651
+       * simplify-rtx.c (simplify_const_relational_operation):
+       Simplify A CMP B to A - B CMP 0 only for EQ and NE comparison
+       codes.
+
+2006-08-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree.c (build1_stat): Also propagate the TREE_CONSTANT and
+       TREE_INVARIANT flags for a VIEW_CONVERT_EXPR.
+
+2006-08-10  Paul Brook  <paul@codesourcery.com>
+
+       * final.c (final_scan_insn): Clear current_insn_predicate before
+       outputting inline asm.
+
+2006-08-10  Dorit Nuzman  <dorit@il.ibm.com>
+
+       PR tree-optimization/26197
+       * tree-ssa-alias.c (new_type_alias): Takes additional argument. Calls
+       get_ref_base_and_extent and overlap_subvar to add only relevant
+       subvars as may-aliases.
+       (add_may_alias_for_new_tag): New function, factored out of
+       new_type_alias.
+       * tree-vect-transform.c (vect_create_data_ref_ptr): Call new_type_alias
+       with additional argument.
+       * tree-flow.h (new_type_alias): Takes additional argument.
+
+2006-08-09  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * gcov.c (no_data_file): New flag.
+       (read_count_file): Set it if data file not present.  Assume counts
+       zero if not found.
+       (output_lines): Don't name the data file, if there wasn't one.
+
+2006-08-09  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/rs6000/rs6000.c (print_operand) <D>: Fix comment and adjust.
+       (rs6000_generate_compare): Tweak comments.
+       * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): Fix comment.
+
+2006-08-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * var-tracking.c (enum micro_operation_type): Add MO_COPY.
+       (var_debug_decl): New function.
+       (var_reg_set): Follow debug decl link.  Add location even if
+       reg is already known to hold some other variable.
+       (var_mem_set): Follow debug decl link.
+       (var_reg_delete_and_set, var_mem_delete_and_set): Follow debug
+       decl link.  Delete other known locations of the variable part
+       if requested.
+       (var_reg_delete, var_mem_delete): Delete other known locations
+       of the variable part if requested.
+       (same_variable_part_p): New function.
+       (add_stores): Select MO_COPY when appropriate.
+       (vt_initialize): Handle it.
+       (compute_bb_dataflow, emit_notes_in_bb): Likewise.  Delete
+       known locations for MO_SET and MO_CLOBBER.
+       (find_variable_location_part): New function.
+       (set_variable_part, delete_variable_part): Use it.
+       (clobber_variable_part): New function.
+       * dwarf2out.c (dwarf2out_var_location): Do not follow debug
+       decl link.
+
+2006-08-07  Victor Kaplansky <victork@il.ibm.com>
+
+        PR tree-optimization/26969
+        * tree-vect-analyze.c (vect_analyze_loop_form): Add check of latch
+         with an empty list of PHIs.
+
+2006-08-06  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR target/27827
+
+       * conffig/i386/i386.md: Add peephole2 to avoid "fld %st"
+       instructions.
+
+2006-08-06  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/m68k.c (m68k_output_function_epilogue): Fix format
+       string.  Whitespace and comment fixup.
+
+2006-08-05  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c/28502
+       * c-decl.c (validate_proto_after_old_defn): Return false on invalid
+       argument.
+
+       PR c/27721
+       * c-typeck.c (build_modify_expr): Test earlier for non-lvalues.
+
+       PR c/28136
+       * c-parser.c (c_parser_postfix_expression_after_paren_type): Robustify.
+
+2006-08-04  Jan Hubicka  <jh@suse.cz>
+
+       PR target/26655
+       PR target/28270
+       * reload.c (push_reload): Patch out the mismatching instruction;
+       return early.
+       (find_reload): Bail out if the instruction was patched out.
+
+2006-08-04  Jan Hubicka  <jh@suse.cz>
+
+       PR tree-optimization/24888
+       * tree-inline.c (expand_call_inline): Do not re-record variables.
+       (declare_inline_vars): Add variable to unexpanded_var_list.
+
+2006-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+           Roger Sayle  <roger@eyesopen.com>
+
+       PR rtl-optimization/26244
+       * cse.c (fold_rtx): Correctly associate shifts when const_arg1 and/or
+       inner_const are negative or greater than or equal to the bitsize of
+       MODE.  If SHIFT_COUNT_TRUNCATED is false, the values aren't associated.
+       Otherwise, the values are masked using GET_MODE_BITSIZE (mode) - 1.
+       Simplify complicated if statement.  For ASHIFT and LSHIFTRT, return
+       CONST0_RTX (mode) when the new shift count is greater than or equal to
+       to the bitsize of the object being shifted and XEXP (y, 0) has no side
+       effects.
+
+2006-08-04  Kazu Hirata  <kazu@codesourcery.com>
+
+       * tree-cfg.c: Fix a comment typo.
+
+2006-08-03  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/28148
+       * varasm.c (output_constant): Give the front end another chance to
+       expand constants, after stripping NOPs.
+
+2006-08-03  Jan Hubicka  <jh@suse.cz>
+
+       * domwalk.c (walk_dominator_tree): Reorganize to non-recursive
+       implementation.
+
+2006-08-03  Dorit Nuzman  <dorit@il.ibm.com>
+
+        PR tree-optimization/27770
+        * tree-vectorizer.h (get_vectype_for_scalar_type): Function
+        declaration removed (moved to tree-flow.h).
+        (vect_can_force_dr_alignment_p): Likewise.
+        * tree-flow.h (get_vectype_for_scalar_type): New function declaration
+        (moved from tree-vectorizer.h).
+        (vect_can_force_dr_alignment_p): Likewise.
+        * tree-vectorizer.c (vect_print_dump_info): Allow calling this function
+        from outside the vectorizer - in particular from cgraph stage.
+        * tree-vect-analyze.c (vect_compute_data_ref_alignment): Don't increase
+        the alignment of global arrays when -fsection-anchors is enabled.
+        * cgraphunit.c (cgraph_increase_alignment): New function.
+        (cgraph_optimize): Call cgraph_increase_alignment.
+
+2006-08-03  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/27566
+       * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
+       not reload a SPE symbol_ref into a lo_sum address.
+
+2006-08-02  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       PR debug/28063
+       * dwarf2out.c (prune_unused_types_prune): Move call to
+       prune_unused_types_update_strings to cover the parent DIE also.
+
+2006-08-02  Jan Hubicka  <jh@suse.cz>
+
+       PR gcov/profile/28480
+       * tree-cfg.c (change_bb_for_stmt): New function.
+       (tree_merge_blocks, tree_split_blocks): Use it.
+
+2006-08-01  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c++/28250
+       PR c++/28257
+       PR c++/28259
+       PR c++/28267
+       * toplev.c (compile_file): Return early on errorcount or sorrycount.
+       * cgraphunit.c (cgraph_finalize_compilation_unit): Likewise.
+       (cgraph_optimize): Likewise.
+
+2006-08-01  Stuart Hastings  <stuart@apple.com>
+
+       * rtl.h (UINTVAL) New.
+       * config/rs6000/rs6000.c (SMALL_INT) Use it.
+       * testsuite/gcc.dg/20060801-1.c: New.
+       
+2006-08-01  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       PR debug/23336
+       * c-typeck.c (build_external_type): Mark used enum types.
+       * dwarf2out.c (dwarf2out_abstract_function): Save and restore
+       cfun also.
+       (gen_subprogram_die): Whitespace fix.
+
+2006-08-01  Jan Hubicka  <jh@suse.cz>
+
+       * tree-outof-ssa.c (check_replaceable): Do not allocate def_vars
+       bitmap when not needed.
+       * tree-ssa-pre.c (bitmap_set_and, bitmap_set_and_compl): Free temporary
+       bitmaps.
+
+2006-08-01  Dirk Mueller  <dmueller@suse.de>
+
+       * tree-vrp.c (fix_equivalence_set): Avoid bitmap memory leak.
+
+2006-07-31  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * Makefile.in: Revert part of previous patch:
+       Replace $(VARRAY_H) by varray.h in definition of BASIC_BLOCK_H
+       and REGS_H.
+
+2006-07-30  Eric Christopher  <echristo@apple.com>
+
+       PR target/27543
+       * doc/extend.texi (i386 Variable Attributes): Add anchor.
+       (PowerPC Variable Attributes): New section.
+
 2006-07-30  Atsushi Nemoto  <anemo@mba.ocn.ne.jp>
 
        PR target/28126 (partial fix)