OSDN Git Service

2004-10-05 Andrew Pinski <pinskia@physics.uc.edu>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 90235dd..90f94f2 100644 (file)
@@ -1,3 +1,249 @@
+2004-10-06  Eric Christopher  <echristo@redhat.com>
+
+       * dwarf2.h: Sync with include/elf/dwarf2.h
+
+2004-10-06  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-pretty-print.c (dump_generic_node): Fix printing of BINFO
+       and TREE_VEC nodes.
+
+2004-10-06  Daniel Berlin  <dberlin@dberlin.org>
+
+       * lambda-code.c (lambda_loopnest_to_gcc_loopnest): Convert
+       to use FOR_EACH_SSA_USE_OPERAND iterator, and propagate_value.
+
+2004-10-06  Daniel Berlin  <dberlin@dberlin.org>
+
+       * lambda-code.c (compute_nest_using_fourier_motzkin): New
+       function.
+       (lambda_compute_auxillary_space): Split from here.
+
+2004-10-06  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-ssa-loop-ivopts.c (expr_invariant_in_loop): Make non-static.
+       * tree-flow.h: Add prototype.
+       * lambda-code.c (invariant_in_loop_and_outer_loops): Use
+       expr_invariant_in_loop.
+
+2004-10-06  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (thread_jumps): Remove a duplicate check for
+       EXIT_BLOCK_PTR.
+
+2004-10-06  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390-protos.h (s_imm_operand): Remove.
+       (s390_pool_operand): Add prototype.
+       * config/s390/s390.c (general_s_operand): Remove.
+       (s_imm_operand): Remove.
+       (s_operand): Merge contents of general_s_operand.
+       (s390_pool_operand): New function.
+       * config/s390/s390.h (PREDICATE_CODES): Remove s_imm_operand.
+       * config/s390/s390.md ("*cmpdi_cct", "*cmpsi_cct"): New insns.
+       ("*cmpdi_ccu"): Merge Q->Q alternative.
+       ("*cmpsi_ccu", "*cmphi_ccu"): Likewise.
+       ("*cmpqi_ccu"): Merge Q->Q, n->Q, n->S alternatives.
+       ("*cli"): Remove.
+       ("*cmpdi_ccu_mem", "*cmpsi_ccu_mem"): Likewise.
+       ("*cmphi_ccu_mem", "*cmpqi_ccu_mem"): Likewise.
+       ("*movstricthi"): Use memory_operand instead of s_imm_operand.
+
+2004-10-06  Steve Ellcey  <sje@cup.hp.com>
+
+       * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Change macro to
+       call ia64_function_arg_boundary.
+       * config/ia64/ia64-protos.h (ia64_function_arg_boundary): New.
+       * config/ia64/ia64.c (ia64_function_arg_boundary): New.
+       (ia64_function_arg_advance): Do not put 128 bit floats into
+       FP registers.
+
+2004-10-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (expand_builtin_strcpy): Delete duplicate code.
+       Accept an expression instead of an arglist.
+       (expand_builtin_stpcpy): Accept an expression instead of an
+       arglist.
+
+2004-10-06  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR target/16007
+       * doc/install.texi (*-*-solaris2*): Mention potential problem
+       with Sun assembler + GNU linker and C++ programs.
+       Document status of binutils 2.15 release.
+
+2004-10-06  Jan Hubicka  <jh@suse.cz>
+
+       * cse.c (cse_main): Kill push/pop context.
+
+2004-10-05  Zack Weinberg  <zack@codesourcery.com>
+
+       * pretty-print.c: Include tree.h.
+       (pp_base_prepare_to_format): New function, logic from
+       text_specifies_location.
+       (pp_base_format_text): Use gcc_assert.
+       * pretty-print.h (pp_prepare_to_format): New macro.
+       (pp_base_prepare_to_format): Prototype.
+       * diagnostic.c (text_specifies_location): Delete.
+       (bug_report_request): Delete.
+       (diagnostic_set_info): Don't call text_specifies_location.
+       (diagnostic_action_after_output): Put text from
+       bug_report_request inline here.  Use gcc_unreachable.
+       (diagnostic_report_current_function): Fix comment.
+       (diagnostic_report_diagnostic): Clarify logic for error recursion.
+       Call pp_prepare_to_format before diagnostic_starter.
+       (trim_filename): Use IS_DIR_SEPARATOR.
+       (fatal_error, internal_error): Use gcc_unreachable.
+       (error_recursion): Call diagnostic_action_after_output to
+       issue the bug_report_request message and exit.
+       * Makefile.in (diagnostic.o, pretty-print.o): Update dependencies.
+
+       * c-parse.in: Add list of diagnostic messages to insulate
+       translation template from version of yacc/bison used to
+       compile the grammar.
+
+2004-10-06  Alan Modra  <amodra@bigpond.net.au>
+
+       PR 16406
+       * doc/tm.texi (USE_LD_AS_NEEDED, LINK_EH_SPEC): Document.
+
+2004-10-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * basic-block.h: Remove the prototype for
+       flow_preorder_transversal_compute.
+       * cfganal.c (dfst_node): Remove.
+       (flow_preorder_transversal_compute): Likewise.
+       * rtl.h: Remove the prototype for get_jump_table_offset.
+       * rtlanal.c (get_jump_table_offset): Remove.
+
+2004-10-05  Richard Henderson  <rth@redhat.com>
+
+       PR 17756
+       * tree-ssa-operands.c (get_expr_operands): Handle CONST_DECL.
+
+2004-10-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       PR bootstrap/17817
+       * Makefile.in: Stage the build directory too.
+
+2004-10-05  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/frv/frv.h (LEGITIMIZE_ADDRESS): New.
+
+       * config/frv/frv-protos.h (frv_legitimize_address): Protoize.
+       (frv_emit_move): Same.
+
+       * config/frv/frv.c (frv_emit_move): New.
+       (frv_legitimize_address): New.
+
+       * config/frv/frv.md ("movsi"): Call frv_emit_move.
+       ("movqi"): Same.
+       ("movhi"): Same.
+       ("movdi"): Same.
+       ("movsf"): Same.
+       ("movdf"): Same.
+
+2004-10-05  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-decl.c (declspecs_add_type): Don't pedwarn for _Complex in
+       system headers.
+
+2004-10-05  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-decl.c (pushdecl): When an extern declaration at block scope
+       refers to a visible entity with internal linkage, use the old DECL
+       rather than the new one.
+
+2004-10-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (cleanup_tree_cfg): Remove extra parentheses in
+       comments.
+
+2004-10-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (thread_jumps): Remove a duplicate check for
+       an infinite loop.
+
+2004-10-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (thread_jumps): Iterate with FOR_EACH_BB instead
+       of FOR_BB_BETWEEN.  Remove a useless check for unreachable
+       blocks.
+
+2004-10-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (cleanup_tree_cfg): Don't call
+       delete_unreachable_blosk() after thread_jumps().
+       (thread_jumps): Always remove basic blocks as they become
+       unreachable.
+
+2004-10-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (cleanup_tree_cfg): Remove variable
+       something_changed.  Simplify the while loop.
+
+2004-10-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (expand_builtin_memmove): Delete duplicate code
+       and accept a tree type for the result.
+       (expand_builtin_bcopy): Accept a tree type for the result.
+       (fold_builtin_memmove): Accept an arglist and tree type for
+       the result.
+
+2004-10-05  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (s390_dump_pool): Remove return value.
+       Use gen_pool_align, gen_pool_section_start/end instead of
+       gen_pool_start/end_31/64.
+       * config/s390/s390.md (UNSPECV_POOL_START, UNSPECV_POOL_END): Remove.
+       (UNSPECV_POOL_SECTION, UNSPECV_POOL_ALIGN): New constants.
+       ("pool_start_31", "pool_end_31"): Remove.
+       ("pool_start_64", "pool_end_64"): Likewise.
+       ("pool_align", "pool_section_start", "pool_section_end": New insns.
+
+       * config/s390/s390.c (s390_cannot_copy_insn_p): New function.
+       (TARGET_CANNOT_COPY_INSN_P): Define.
+       (s390_cannot_force_const_mem): Handle UNSPEC_INSN.
+       (struct constant_pool): New member 'execute'.
+       (s390_add_execute, s390_find_execute): New functions.
+       (s390_execute_label, s390_execute_target): Likewise.
+       (s390_dump_pool): Output in-pool execute target templates.
+       (s390_dump_execute): New function.
+       (s390_alloc_pool, s390_free_pool): Handle execute templates.
+       (s390_mainpool_start, s390_mainpool_finish): Likewise.
+       (s390_chunkify_start, s390_chunkify_finish): Likewise.
+       * config/s390/s390.md (UNSPEC_INSN, UNSPEC_EXECUTE): New constants.
+       ("*execute"): New insn pattern.
+       ("movmem_short", "*movmem_short"): Use splitters to generate
+       explicit execute pattern, remove embedded execute.
+       ("clrmem_short", "*clrmem_short"): Likewise.
+       ("cmpmem_short", "*cmpmem_short"): Likewise.
+
+2004-10-05  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-ssa.c (verify_ssa): Verify phi arguments only
+       contain renamed names.
+
+2004-10-05  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/linux.h: Formatting, whitespace.
+       * config/rs6000/linux64.h: Likewise.
+       * config/rs6000/rs6000-protos.h: Likewise.
+       * config/rs6000/rs6000.c: Likewise.
+       (easy_vector_splat_const): Add fall thru comments.
+       (output_vec_const_move): Likewise.
+
+2004-10-05  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * Makefile.in: Update -Wno-error exceptions for move to build dir.
+
+2004-10-05  Chao-Ying Fu  <fu@mips.com>
+           Richard Sandiford  <rsandifo@redhat.com>
+
+       * doc/invoke.texi (-mpaired-single): Link to the new description of the
+       built-in functions.  Document dependencies.
+       (-mips3d): Add link here too.
+       * doc/extend.texi (MIPS Paired-Single Support): New section.
+
 2004-10-04  Chao-ying Fu  <fu@mips.com>
 
        * config/mips/mips.h (UNITS_PER_SIMD_WORD): Define.
 
 2004-10-04  Sebastian Pop  <pop@cri.ensmp.fr>
 
+       * Makefile.in (tree-ssa-loop-niter.o): Depends on tree-data-ref.h.
+       * cfgloop.c (initialize_loops_parallel_p): New.
+       (flow_loops_find): Initialize the parallel_p field to true for all
+       the loops.
+       * tree-ssa-loop-niter.c: Include "tree-data-ref.h".
+       (estimate_numbers_of_iterations_loop): Infers the loop bounds from
+       the size of the data accessed in the loop.
+       (struct nb_iter_bound): Moved...
+       * cfgloop.h (struct nb_iter_bound): ... here.
+       (estimated_nb_iterations, parallel_p): New fields in struct loop.
+       (record_estimate): Declare extern here.
+       * tree-chrec.c: Fix comments.
+       (nb_vars_in_chrec): New function.
+       * tree-chrec.h (nb_vars_in_chrec): Declared here.
+       * tree-data-ref.c: Don't include lambda.h, that is already included
+       in tree-data-ref.h.
+       (tree_fold_divides_p): Don't check for integer_onep.
+       (tree_fold_bezout): Removed.
+       (gcd): New static duplicated function.
+       (int_divides_p, dump_subscript): New.
+       (dump_data_dependence_relation): Use dump_subscript.
+       (dump_dist_dir_vectors, dump_ddrs, compute_estimated_nb_iterations,
+       estimate_niter_from_size_of_data): New.
+       (analyze_array_indexes, analyze_array): Call
+       estimate_niter_from_size_of_data during the detection of array
+       references.  Pass in a pointer to the statement that contains the
+       array reference.
+       (all_chrecs_equal_p): New.
+       (compute_distance_vector): Renamed compute_subscript_distance.
+       Deal with multivariate conflict functions.
+       (initialize_data_dependence_relation): Initialize DDR_AFFINE_P,
+       DDR_SIZE_VECT, DDR_DIST_VECT, and DDR_DIR_VECT.
+       (non_affine_dependence_relation): New.
+       (analyze_ziv_subscript, analyze_siv_subscript_cst_affine,
+       analyze_siv_subscript, analyze_miv_subscript,
+       analyze_overlapping_iterations, subscript_dependence_tester):
+       Initialize and return last_conflicts function.
+       (initialize_matrix_A, FLOOR, compute_overlap_steps_for_affine_univar,
+       compute_overlap_steps_for_affine_1_2): New.
+       (analyze_siv_subscript_affine_cst): Removed.
+       (analyze_subscript_affine_affine): Disprove dependences based on the
+       iteration domains.  Solve the univariate dependence case as before,
+       but use lambda_matrix_right_hermite instead of tree_fold_bezout.
+       Implement the multivariate case of 2 versus 1 variables.
+       (undetermined_conflicts_p, no_conflicts_p): New.
+       (build_classic_dist_vector, build_classic_dir_vector): Implement some
+       unhandled cases.
+       (find_data_references_in_loop): Compute and initialize
+       loop->estimated_nb_iterations and loop->parallel_p.
+       (analyze_all_data_dependences): Modify the debug dump order.
+       * tree-data-ref.h (SUB_LAST_CONFLICT_IN_A, SUB_LAST_CONFLICT_IN_B,
+       subscript->last_conflict_in_a, subscript->last_conflict_in_b): Removed.
+       (SUB_LAST_CONFLICT, subscript->last_conflict,
+       data_dependence_relation->affine_p, data_dependence_relation->size_vect,
+       DDR_AFFINE_P, DDR_SIZE_VECT): New.
+       (find_data_references_in_loop, initialize_data_dependence_relation,
+       dump_subscript, dump_ddrs, dump_dist_dir_vectors): Declared here.
+
+
+2004-10-04  Sebastian Pop  <pop@cri.ensmp.fr>
+
        * tree-data-ref.c (array_base_name_differ_p): Fix comments.  When
        the predicate cannot be computed, don't initialize the result to
        false.